添加下发水印

ds1.0
fanluyan 2 years ago
parent f811f71663
commit df6f2ceb3f

@ -0,0 +1,248 @@
<template>
<el-dialog
class="photoSetDialog"
title="设置"
:visible.sync="isShow"
:close-on-click-modal="false"
width="1020px"
@close="handleclose"
>
<div class="setTimeTd" v-loading="timeboxLoading">
<div class="headTitle">
<div class="rulesInfo">
<h3>时间表规则</h3>
<div
class="timeBox"
v-for="(val, index) in rulesTimeList.listTime"
:key="index"
>
<div class="timeSlot">
{{
new Date(val.startTime).getHours() < 10
? "0" + new Date(val.startTime).getHours()
: new Date(val.startTime).getHours()
}}:
{{
new Date(val.startTime).getMinutes() < 10
? "0" + new Date(val.startTime).getMinutes()
: new Date(val.startTime).getMinutes()
}}
~
{{
new Date(val.endTime).getHours() < 10
? "0" + new Date(val.endTime).getHours()
: new Date(val.endTime).getHours()
}}:
{{
new Date(val.endTime).getMinutes() < 10
? "0" + new Date(val.endTime).getMinutes()
: new Date(val.endTime).getMinutes()
}}
</div>
<div class="timespan">
间隔<b>{{ val.span }}分钟</b>
</div>
</div>
</div>
</div>
<div class="mathFloor">
<span class="mathTitle">设置偏移量(max:10)</span>
<el-input-number v-model="mathMam" :min="0" :max="10"></el-input-number>
<el-button type="primary" @click="setMathFloor()"></el-button>
</div>
<div class="channelBox">
<span class="channelTitle">选择通道</span>
<div class="checkBox" v-if="channelList.length !== 0">
<el-radio-group v-model="checkedAisle" @change="handleChange">
<el-radio
:label="val.id"
border
v-for="val in channelList"
:key="val.id"
>{{ val.name }}</el-radio
>
</el-radio-group>
</div>
</div>
<div class="treebox" v-loading="treeloading">
<el-tree
:data="treeList"
:props="defaultProps"
show-checkbox
node-key="id"
default-expand-all
:expand-on-click-node="false"
:check-on-click-node="true"
>
<span class="custom-tree-node" slot-scope="{ node, data }">
<span>{{ data.name == null ? data.cmdid : data.name }}</span
>-- <span>{{ data.id }}</span
>-- <span>{{ data.onlinestatus == 0 ? "离线" : "在线" }}</span
>--
<span>{{ data.protocol }}</span>
</span>
</el-tree>
</div>
</div>
<div slot="footer" class="dialog-footer">
<!-- <el-button @click="getCheckedNodes"></el-button> -->
<el-button @click="handleclose"> </el-button>
<el-button type="primary" @click="submitForm()"> </el-button>
</div>
</el-dialog>
</template>
<script>
import {
// setScheduleRulel,
getScheduleRulelAccessList,
getTermListByChannelJoggle,
// getCmaSchelduleUpload,
} from "@/utils/api/index";
// import moment from "moment";
export default {
data() {
return {
isShow: false,
timeboxLoading: false,
rulesTimeList: "", //
mathMam: 0, //0
checkedAisle: 1, //
channelList: [], //
treeloading: false,
treeList: [], //
defaultProps: {
children: "list",
label: "name",
disabled: this.disabledFn,
},
};
},
mounted() {},
methods: {
//
getdataform(val) {
console.log(val);
this.rulesTimeList = val;
this.timeboxLoading = true;
this.getChannelList();
},
//
submitForm() {},
//
getChannelList() {
getScheduleRulelAccessList({})
.then((res) => {
console.log(res);
this.channelList = res.data.channellist;
this.handleChange();
})
.catch((err) => {});
},
//
handleChange() {
console.log(this.checkedAisle);
this.treeloading = true;
getTermListByChannelJoggle({
id: this.checkedAisle,
})
.then((res) => {
console.log(res);
this.timeboxLoading = false;
this.treeList = res.data.list;
this.treeloading = false;
})
.catch((err) => {});
},
display() {
this.isShow = true;
},
clearfn() {},
handleclose() {
this.isShow = false;
},
},
};
</script>
<style lang="less">
.photoSetDialog {
.setTimeTd {
//background-color: #fcc;
.headTitle {
.rulesInfo {
display: flex;
align-items: center;
line-height: 32px;
h3 {
font-size: 14px;
font-weight: normal;
}
.timeBox {
display: flex;
align-items: center;
font-size: 14px;
margin-right: 8px;
.timeSlot {
font-size: 14px;
margin-right: 8px;
}
.timespan {
b {
font-size: 14px;
font-weight: normal;
color: #169e8c;
}
}
}
}
}
.mathFloor {
margin-top: 8px;
.mathTitle {
font-size: 14px;
font-weight: normal;
}
.el-button {
margin-left: 8px;
}
}
.channelBox {
display: flex;
align-items: center;
line-height: 32px;
margin-top: 8px;
.channelTitle {
font-size: 14px;
}
.el-radio {
margin-right: 8px;
}
}
.treebox {
margin-top: 8px;
background-color: #169e8c;
height: 360px;
// overflow: auto;
display: flex;
align-items: flex-start;
border: 1px solid #eee;
padding: 8px;
border-radius: 4px;
position: relative;
.el-tree {
width: 100%;
height: 100%;
overflow: auto;
.el-tree-node {
.el-tree-node__content {
height: 32px;
border-bottom: 1px solid #eee;
}
}
}
}
}
}
</style>

@ -275,7 +275,113 @@
<videoCapture ref="videoCaptureref" :rowdata="rowData"></videoCapture>
</div>
</el-tab-pane>
<el-tab-pane label="装置运行状态报" name="7">
<el-tab-pane label="水印(安徽)" name="7">
<div class="tabsBox">
<el-tabs
v-model="tabsActive"
type="card"
@tab-click="waterhandleClick"
>
<el-tab-pane label="查询水印" name="first">
<div class="queryParam">
<el-form :model="waterForm" label-width="150px">
<el-form-item label="通道" prop="channelId">
<el-select
v-model="waterForm.channelId"
placeholder="请选择"
class="mr20"
>
<el-option
v-for="item in accesslist"
:key="item.channelid"
:label="
item.alias !== null && item.alias !== ''
? item.alias
: item.channelname
"
:value="item.channelid"
>
{{
item.alias !== null && item.alias !== ""
? item.alias
: item.channelname
}}
</el-option>
</el-select>
</el-form-item>
<el-form-item label="左下角水印">
<el-input
v-model="waterForm.leftBottom"
:disabled="true"
></el-input>
</el-form-item>
<el-form-item label="右下角水印">
<el-input
v-model="waterForm.rightBottom"
:disabled="true"
></el-input>
</el-form-item>
<el-form-item class="runformbtn">
<el-button
type="primary"
@click="waterSearch"
:loading="waterLoading"
>查询</el-button
>
</el-form-item>
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="设置水印" name="second">
<div class="queryParam">
<el-form :model="waterForm" label-width="150px">
<el-form-item label="通道" prop="channelId">
<el-select
v-model="waterForm.channelId"
placeholder="请选择"
class="mr20"
>
<el-option
v-for="item in accesslist"
:key="item.channelid"
:label="
item.alias !== null && item.alias !== ''
? item.alias
: item.channelname
"
:value="item.channelid"
>
{{
item.alias !== null && item.alias !== ""
? item.alias
: item.channelname
}}
</el-option>
</el-select>
</el-form-item>
<el-form-item label="左下角水印">
<el-input v-model="waterForm.leftBottom"></el-input>
</el-form-item>
<el-form-item label="右下角水印">
<el-input v-model="waterForm.rightBottom"></el-input>
</el-form-item>
<el-form-item class="runformbtn">
<el-button
type="primary"
@click="waterSet"
:loading="waterSetLoading"
>设置</el-button
>
</el-form-item>
</el-form>
</div>
</el-tab-pane>
</el-tabs>
</div>
</el-tab-pane>
<el-tab-pane label="装置运行状态报" name="8">
<div class="runform">
<el-form :model="runStatusForm" :inline="true" label-width="150px">
<el-form-item label="4G信号强度">
@ -325,7 +431,7 @@
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="GPS位置" name="8">
<el-tab-pane label="GPS位置" name="9">
<div class="runform">
<el-form :model="gpsForm" :inline="true" label-width="150px">
<!-- <el-form-item label="坐标类型">
@ -360,7 +466,7 @@
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="基本操作" name="9">
<el-tab-pane label="基本操作" name="10">
<div class="resetDevice">
<h3>装置复位</h3>
<el-button type="primary" @click.native.stop="handleDeviceReset"
@ -380,6 +486,7 @@ import {
getTermLastGPSPosition,
setTermCamera,
getTermCameraRequest,
getChannelListJoggle,
} from "@/utils/api/index";
import imageCapture from "./imageCapture.vue";
@ -455,6 +562,11 @@ export default {
},
idLoading: false,
idSetLoading: false,
//
waterForm: {},
accesslist: [], //
waterLoading: false,
waterSetLoading: false,
runStatusForm: {},
statusLoading: false,
gpsForm: {}, //gps
@ -490,6 +602,17 @@ export default {
this.$refs.videoCaptureref.getRatio(this.rowData);
}
},
//
getSingleAccess() {
console.log(this.rowData);
getChannelListJoggle({ termid: this.rowData.id })
.then((res) => {
this.accesslist = res.data.list;
// this.waterForm.channelId = res.data.list[0].channelid;
this.$set(this.waterForm, "channelId", res.data.list[0].channelid);
})
.catch((err) => {});
},
//
searchTime() {},
//
@ -783,6 +906,92 @@ export default {
});
}
},
//
waterSearch() {
if (this.rowData.isonline || this.rowData.onlinestatus === 1) {
this.waterLoading = true;
let params = [
{
name: "act",
value: "osd",
},
{
name: "flag",
value: 0,
},
{
name: "channel",
value: this.waterForm.channelId,
},
{
name: "leftBottom",
value: "",
},
{
name: "rightBottom",
value: "",
},
];
this.setTermFn(params);
} else {
this.$message({
duration: 1500,
showClose: true,
message: "装置下线,发送指令失败",
type: "error",
});
}
},
waterSet() {
if (this.rowData.isonline || this.rowData.onlinestatus === 1) {
this.waterSetLoading = true;
let params = [
{
name: "act",
value: "osd",
},
{
name: "flag",
value: 1,
},
{
name: "channel",
value: this.waterForm.channelId,
},
{
name: "leftBottom",
value: this.waterForm.leftBottom,
},
{
name: "rightBottom",
value: this.waterForm.rightBottom,
},
];
this.setTermFn(params);
} else {
this.$message({
duration: 1500,
showClose: true,
message: "装置下线,发送指令失败",
type: "error",
});
}
},
waterhandleClick() {
this.waterForm = {};
this.$set(this.waterForm, "channelId", this.accesslist[0].channelid);
this.i = 0;
this.timer = null;
clearInterval(this.timer);
},
clearform() {
console.log("清除其他数据");
this.waterForm = {};
this.waterLoading = false;
this.waterSetLoading = false;
},
//
//--act=runningstatus [0xEA] --cmdid=[CMD_ID]
runstatusSearch() {
@ -833,6 +1042,8 @@ export default {
this.idLoading = false;
this.idSetLoading = false;
this.statusLoading = false;
this.waterLoading = false;
this.waterSetLoading = false;
console.log("终止轮询");
// && res.data.result == 255
console.log(JSON.parse(res.data.data));
@ -879,6 +1090,8 @@ export default {
this.idLoading = false;
this.idSetLoading = false;
this.statusLoading = false;
this.waterLoading = false;
this.waterSetLoading = false;
}
})
.catch((err) => {});
@ -944,6 +1157,7 @@ export default {
this.isShow = true;
this.rowData = val;
console.log(this.rowData);
this.getSingleAccess();
},
hide() {
this.isShow = false;
@ -956,6 +1170,7 @@ export default {
this.upperComputer = {};
this.idParameter = {};
this.gpsForm = {};
this.waterForm = {};
this.i = 0;
clearInterval(this.timer);
this.timer = null;
@ -967,6 +1182,8 @@ export default {
this.idLoading = false;
this.idSetLoading = false;
this.statusLoading = false;
this.waterLoading = false;
this.waterSetLoading = false;
},
},
destroyed() {

Loading…
Cancel
Save