|
@@ -4,7 +4,7 @@
|
|
|
<form action="" class="funcAdd">
|
|
|
<view class="form-item selectBox">
|
|
|
<view class="title"><text class="necessary">*</text>报备类型:</view>
|
|
|
- <select name="" id="" placeholder=""clearable v-model="repType">
|
|
|
+ <select name="" id="" placeholder=""clearable v-model="report_type">
|
|
|
<option value="">请选择</option>
|
|
|
<option value="1">单位</option>
|
|
|
<option value="2">类型</option>
|
|
@@ -12,9 +12,9 @@
|
|
|
</select>
|
|
|
<text class="icon iconfont margin-right-sm margin-left"></text>
|
|
|
</view>
|
|
|
- <view class="form-item selectBox" v-if="repType==2||repType==3">
|
|
|
+ <view class="form-item selectBox" v-if="report_type==2||report_type==3">
|
|
|
<view class="title"><text class="necessary">*</text>设备类型:</view>
|
|
|
- <select name="" id="" placeholder=""clearable v-model="deviceType">
|
|
|
+ <select name="" id="" placeholder=""clearable v-model="device_type">
|
|
|
<option value="">请选择</option>
|
|
|
<option value="1">火系统</option>
|
|
|
<option value="2">水系统</option>
|
|
@@ -33,36 +33,36 @@
|
|
|
<text class="icon iconfont margin-right-sm margin-left"></text>
|
|
|
</view>
|
|
|
|
|
|
- <view class="form-item" v-if="repType">
|
|
|
+ <view class="form-item" v-if="report_type">
|
|
|
<view class="title">
|
|
|
<text class="necessary">*</text>
|
|
|
开始时间:
|
|
|
</view>
|
|
|
<view class="example-body">
|
|
|
- <uni-datetime-picker v-model="startTime" :start="now"/>
|
|
|
+ <uni-datetime-picker v-model="start_time" :start="this.id?'':now"/>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="form-item" v-if="repType">
|
|
|
+ <view class="form-item" v-if="report_type">
|
|
|
<view class="title">
|
|
|
<text class="necessary">*</text>
|
|
|
结束时间:
|
|
|
</view>
|
|
|
<view class="example-body">
|
|
|
- <uni-datetime-picker v-model="endTime" :start="startTime" />
|
|
|
+ <uni-datetime-picker v-model="end_time" :start="start_time" />
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <view class="form-item " v-if="repType==3&&deviceType==6">
|
|
|
+ <view class="form-item " v-if="report_type==3&&device_type==6">
|
|
|
<view class="title"><text class="necessary">*</text>端口号:</view>
|
|
|
- <input name="input" v-model="portId"></input>
|
|
|
+ <input name="input" v-model="device_port"></input>
|
|
|
</view>
|
|
|
|
|
|
- <view class="form-item selectBox" v-if="repType==3&&deviceType==6">
|
|
|
+ <view class="form-item selectBox" v-if="report_type==3&&device_type==6">
|
|
|
<view class="title"><text class="necessary">*</text>端口类型:</view>
|
|
|
- <select name="" id="" placeholder=""clearable v-model="portType">
|
|
|
+ <select name="" id="" placeholder=""clearable v-model="port_type">
|
|
|
<option value="">请选择</option>
|
|
|
<option value="1">数字量</option>
|
|
|
<option value="2">模拟量</option>
|
|
@@ -70,19 +70,20 @@
|
|
|
<text class="icon iconfont margin-right-sm margin-left"></text>
|
|
|
</view>
|
|
|
|
|
|
- <view class="form-item selectBox" v-if="repType==3&&deviceType">
|
|
|
+ <view class="form-item selectBox" v-if="report_type==3&&device_type">
|
|
|
<view class="title"><text class="necessary">*</text>报备设备:</view>
|
|
|
- <select name="" id="" placeholder=""clearable v-model="deviceNo">
|
|
|
+ <select name="" id="" placeholder=""clearable v-model="device_code">
|
|
|
<option value="">请选择</option>
|
|
|
- <option value="1">编号1</option>
|
|
|
- <option value="2">编号2</option>
|
|
|
+ <option :value="item.owner_code" v-for="(item,index) in deviceListData" :key="index">{{item.owner_name}}
|
|
|
+ </option>
|
|
|
+
|
|
|
</select>
|
|
|
<text class="icon iconfont margin-right-sm margin-left"></text>
|
|
|
</view>
|
|
|
|
|
|
- <view class="form-item " v-if="repType">
|
|
|
+ <view class="form-item " v-if="report_type">
|
|
|
<view class="title"><text class="necessary"></text>备注:</view>
|
|
|
- <input name="input" v-model="remark"></input>
|
|
|
+ <input name="input" v-model="remarks"></input>
|
|
|
</view>
|
|
|
|
|
|
<view class="btn-area submitBottomBtn padding-lr-sm">
|
|
@@ -111,61 +112,100 @@
|
|
|
return {
|
|
|
id:'',
|
|
|
|
|
|
- repType:'',
|
|
|
- deviceType:'',
|
|
|
- startTime:'',
|
|
|
- endTime:'',
|
|
|
- remark:'',
|
|
|
- portId:'',
|
|
|
- portType:'',
|
|
|
- deviceNo:'',
|
|
|
- now:''
|
|
|
+ report_type:'',
|
|
|
+ device_type:'',
|
|
|
+ start_time:'',
|
|
|
+ end_time:'',
|
|
|
+ remarks:'',
|
|
|
+ device_port:'',
|
|
|
+ port_type:'',
|
|
|
+ device_code:'',
|
|
|
+ now:'',
|
|
|
+
|
|
|
+ deviceListData:[],
|
|
|
+ detailsData:''
|
|
|
|
|
|
}
|
|
|
},
|
|
|
onLoad: function(option) {
|
|
|
|
|
|
this.id=option.id;
|
|
|
- this.getSiteList();
|
|
|
-
|
|
|
uni.setNavigationBarTitle({
|
|
|
title: option.id?"编辑":"新增",
|
|
|
});
|
|
|
|
|
|
+
|
|
|
+
|
|
|
var nowTemp = new Date();
|
|
|
this.now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
+ if(option.id){
|
|
|
+ this.getDetailsData({'id':option.id})
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
},
|
|
|
watch: {
|
|
|
- startTime:function(){
|
|
|
- alert(this.startTime)
|
|
|
+ start_time:function(){
|
|
|
+ // alert(this.start_time)
|
|
|
+ },
|
|
|
+ device_type:function(newVal){
|
|
|
+
|
|
|
+ if(newVal){
|
|
|
+
|
|
|
+ this.deviceList({'company_code':uni.getStorageSync('selectedCode'),'device_type' :this.device_type });
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
},
|
|
|
methods: {
|
|
|
+
|
|
|
+ // 回显信息请求
|
|
|
+ async getDetailsData(params = {}) {
|
|
|
+ const res = await this.$myRequest({
|
|
|
+ url: 'AlarmReport/editData',
|
|
|
+ data:params,
|
|
|
+ showLoading: true
|
|
|
+ })
|
|
|
+
|
|
|
+ this.detailsData=res.data.data[0];
|
|
|
+ console.log(this.detailsData)
|
|
|
+ this.report_type=this.detailsData.report_type;
|
|
|
+ this.device_type=this.detailsData.device_type;
|
|
|
+ this.start_time=this.detailsData.start_time;
|
|
|
+ this.end_time=this.detailsData.end_time;
|
|
|
+ this.remarks=this.detailsData.remarks;
|
|
|
+ this.port_type=this.detailsData.port_type;
|
|
|
+ this.device_port=this.detailsData.device_port;
|
|
|
+ this.device_code=this.detailsData.device_code;
|
|
|
+
|
|
|
+ },
|
|
|
|
|
|
async submit() {
|
|
|
|
|
|
//提交验证
|
|
|
|
|
|
- if (!this.repType) {
|
|
|
+ if (!this.report_type) {
|
|
|
uni.showToast({
|
|
|
title: "请输入报备类型",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if(this.repType==1){
|
|
|
- if (!this.startTime.replace(/^\s*/g,'')) {
|
|
|
+ if(this.report_type==1){
|
|
|
+ if (!this.start_time.replace(/^\s*/g,'')) {
|
|
|
uni.showToast({
|
|
|
title: "请选择开始时间",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if (!this.endTime.replace(/^\s*/g,'')) {
|
|
|
+ if (!this.end_time.replace(/^\s*/g,'')) {
|
|
|
uni.showToast({
|
|
|
title: "请选择结束时间",
|
|
|
icon: "none"
|
|
@@ -173,22 +213,22 @@
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- if(this.repType==2||this.repType==3){
|
|
|
- if (!this.deviceType) {
|
|
|
+ if(this.report_type==2||this.report_type==3){
|
|
|
+ if (!this.device_type) {
|
|
|
uni.showToast({
|
|
|
title: "请选择设备类型",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if (!this.startTime.replace(/^\s*/g,'')) {
|
|
|
+ if (!this.start_time.replace(/^\s*/g,'')) {
|
|
|
uni.showToast({
|
|
|
title: "请输入开始时间",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if (!this.endTime.replace(/^\s*/g,'')) {
|
|
|
+ if (!this.end_time.replace(/^\s*/g,'')) {
|
|
|
uni.showToast({
|
|
|
title: "请输入结束时间",
|
|
|
icon: "none"
|
|
@@ -197,24 +237,24 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if(this.repType==3&&this.deviceType){
|
|
|
+ if(this.report_type==3&&this.device_type){
|
|
|
|
|
|
- if (this.deviceType==6) {
|
|
|
- if (!this.portId.replace(/^\s*/g,'')) {
|
|
|
+ if (this.device_type==6) {
|
|
|
+ if (!this.device_port.replace(/^\s*/g,'')) {
|
|
|
uni.showToast({
|
|
|
title: "请输入端口号",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if (!this.portType) {
|
|
|
+ if (!this.port_type) {
|
|
|
uni.showToast({
|
|
|
title: "请选择端口类型",
|
|
|
icon: "none"
|
|
|
});
|
|
|
return
|
|
|
}
|
|
|
- if (!this.deviceNo) {
|
|
|
+ if (!this.device_code) {
|
|
|
uni.showToast({
|
|
|
title: "请选择报备设备",
|
|
|
icon: "none"
|
|
@@ -222,7 +262,7 @@
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- if (!this.deviceNo) {
|
|
|
+ if (!this.device_code) {
|
|
|
uni.showToast({
|
|
|
title: "请选择报备设备",
|
|
|
icon: "none"
|
|
@@ -236,28 +276,32 @@
|
|
|
if(this.id){
|
|
|
queryParam.id=this.id
|
|
|
}
|
|
|
- queryParam.repType = this.repType;
|
|
|
- queryParam.companyCode='10012';
|
|
|
- queryParam.remark = this.remark;
|
|
|
- queryParam.startTime = this.startTime;
|
|
|
- queryParam.endTime = this.endTime;
|
|
|
+ queryParam.report_type = this.report_type;
|
|
|
+ queryParam.company_code=uni.getStorageSync('selectedCode');
|
|
|
+ queryParam.remarks = this.remarks;
|
|
|
+ queryParam.start_time = this.start_time;
|
|
|
+ queryParam.end_time = this.end_time;
|
|
|
|
|
|
- if (this.repType==1) {
|
|
|
+ if(this.id){
|
|
|
+ queryParam.id = this.id;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (this.report_type==1) {
|
|
|
this.addDevice(queryParam)
|
|
|
return;
|
|
|
}
|
|
|
- if (this.repType==2) {
|
|
|
- queryParam.deviceType = this.deviceType;
|
|
|
+ if (this.report_type==2) {
|
|
|
+ queryParam.device_type = this.device_type;
|
|
|
this.addDevice(queryParam)
|
|
|
return;
|
|
|
}
|
|
|
- if (this.repType==3) {
|
|
|
- queryParam.deviceType = this.deviceType;
|
|
|
- if(this.deviceType==6){
|
|
|
- queryParam.portType = this.portType;
|
|
|
- queryParam.portId = this.portId;
|
|
|
+ if (this.report_type==3) {
|
|
|
+ queryParam.device_type = this.device_type;
|
|
|
+ if(this.device_type==6){
|
|
|
+ queryParam.port_type = this.port_type;
|
|
|
+ queryParam.device_port = this.device_port;
|
|
|
}
|
|
|
- queryParam.deviceNo = this.deviceNo;
|
|
|
+ queryParam.device_code = this.device_code;
|
|
|
this.addDevice(queryParam)
|
|
|
return;
|
|
|
}
|
|
@@ -268,18 +312,13 @@
|
|
|
|
|
|
async addDevice(params = {}) {
|
|
|
const res = await this.$myRequest({
|
|
|
- url: 'DeviceConfig/setDevice',
|
|
|
+ url: this.id?'AlarmReport/edit':'AlarmReport/add',
|
|
|
data: params
|
|
|
})
|
|
|
if (res.data.flag) {
|
|
|
- // uni.showToast({
|
|
|
- // title: "提交成功",
|
|
|
- // });
|
|
|
- // setTimeout(() => {
|
|
|
- // uni.navigateTo({
|
|
|
- // url: '/pages/deviceManage/deviceManage',
|
|
|
- // });
|
|
|
- // }, 1000);
|
|
|
+ uni.showToast({
|
|
|
+ title: "提交成功",
|
|
|
+ });
|
|
|
setTimeout(() => {
|
|
|
uni.navigateTo({
|
|
|
url: '/pages/accountManage/success/success',
|
|
@@ -295,12 +334,23 @@
|
|
|
this.radioOne = e.detail.value;
|
|
|
},
|
|
|
|
|
|
- //单位下拉请求数据
|
|
|
- async getSiteList() {
|
|
|
+ //报备设备下拉请求数据
|
|
|
+ async deviceList(params = {}) {
|
|
|
+
|
|
|
const res = await this.$myRequest({
|
|
|
- url: 'Index/getCompanyList',
|
|
|
+ url: 'AlarmReport/deviceList',
|
|
|
+ data:params,
|
|
|
})
|
|
|
- this.companyListData = res.data.data;
|
|
|
+ this.deviceListData = res.data.data;
|
|
|
+
|
|
|
+ var arr=[]
|
|
|
+ this.deviceListData.forEach(function(item){
|
|
|
+ arr.push(item.owner_code)
|
|
|
+ })
|
|
|
+ if(arr.indexOf(this.device_code)==-1){
|
|
|
+ this.device_code=''
|
|
|
+ }
|
|
|
+
|
|
|
},
|
|
|
|
|
|
|