Commit 9a38e9f1 authored by 纪泽龙's avatar 纪泽龙

优化页面逻辑

parent b0f0ffea
......@@ -9,7 +9,11 @@
<el-row>
<el-col :span="11">
<el-form-item label="所属管道" prop="pipeCode">
<el-select v-model="form.pipeCode" placeholder="请选择所属管道" style="width: 100%">
<el-select
v-model="form.pipeCode"
placeholder="请选择所属管道"
style="width: 100%"
>
<el-option
v-for="item in pipeList"
:key="item.pipeCode"
......@@ -75,7 +79,12 @@
<el-col :span="11">
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
<el-input
type="number"
maxlength="11"
v-model="form.phone"
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
......@@ -171,7 +180,10 @@ export default {
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [{ required: true, message: "请输入联系人", trigger: "blur" }],
phone: [{ required: true, message: "请输入联系电话", trigger: "blur" }],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{ min: 11, max: 11, message: "长度11个数字", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
......@@ -232,19 +244,19 @@ export default {
this.form.url = "";
this.fileArr = [];
},
getPipeInfos(){
getPipeInfos() {
pipeAllInfoList({}).then((response) => {
this.pipeList = response.data;
});
}
},
},
watch:{
dialogVisible(val){
if(val){
watch: {
dialogVisible(val) {
if (val) {
this.getPipeInfos();
}
}
}
},
},
};
</script>
......
......@@ -2,13 +2,18 @@
<el-dialog
:title="title"
:visible.sync="dialogVisible"
:before-close="handleClose">
:before-close="handleClose"
>
<el-row>
<el-form ref="form" :model="form" :rules="rules" label-width="135px">
<el-row>
<el-col :span="11">
<el-form-item label="所属管道" prop="pipeCode">
<el-select v-model="form.pipeCode" placeholder="请选择所属管道" style="width: 100%">
<el-select
v-model="form.pipeCode"
placeholder="请选择所属管道"
style="width: 100%"
>
<el-option
v-for="item in pipeList"
:key="item.pipeCode"
......@@ -24,13 +29,19 @@
<el-row>
<el-col :span="11">
<el-form-item label="设备名称" prop="deviceName">
<el-input v-model="form.deviceName" placeholder="请输入设备名称" />
<el-input
v-model="form.deviceName"
placeholder="请输入设备名称"
/>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="设备型号" prop="deviceModel">
<el-input v-model="form.deviceModel" placeholder="请输入设备型号" />
<el-input
v-model="form.deviceModel"
placeholder="请输入设备型号"
/>
</el-form-item>
</el-col>
</el-row>
......@@ -69,7 +80,12 @@
<el-col :span="11">
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
<el-input
type="number"
maxlength="11"
v-model="form.phone"
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
......@@ -157,7 +173,10 @@ export default {
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [{ required: true, message: "请输入联系人", trigger: "blur" }],
phone: [{ required: true, message: "请输入联系电话", trigger: "blur" }],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{ min: 11, max: 11, message: "长度11个数字", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
......
......@@ -2,13 +2,18 @@
<el-dialog
:title="title"
:visible.sync="dialogVisible"
:before-close="handleClose">
:before-close="handleClose"
>
<el-row>
<el-form ref="form" :model="form" :rules="rules" label-width="135px">
<el-row>
<el-col :span="11">
<el-form-item label="所属管道" prop="pipeCode">
<el-select v-model="form.pipeCode" placeholder="请选择所属管道" style="width: 100%">
<el-select
v-model="form.pipeCode"
placeholder="请选择所属管道"
style="width: 100%"
>
<el-option
v-for="item in pipeList"
:key="item.pipeCode"
......@@ -24,13 +29,19 @@
<el-row>
<el-col :span="11">
<el-form-item label="设备名称" prop="deviceName">
<el-input v-model="form.deviceName" placeholder="请输入设备名称" />
<el-input
v-model="form.deviceName"
placeholder="请输入设备名称"
/>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="设备型号" prop="deviceModel">
<el-input v-model="form.deviceModel" placeholder="请输入设备型号" />
<el-input
v-model="form.deviceModel"
placeholder="请输入设备型号"
/>
</el-form-item>
</el-col>
</el-row>
......@@ -69,7 +80,12 @@
<el-col :span="11">
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
<el-input
type="number"
maxlength="11"
v-model="form.phone"
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
......@@ -118,126 +134,128 @@
</template>
<script>
import {
getAllDeviceInfo,
addDeviceInfo,
updateDeviceInfo,
} from "@/api/device/deviceInfo";
import { pipeAllInfoList } from "@/api/device/pipe";
import MyFileUpload from "@/components/MyFileUpload";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
import { getAllDeviceInfo ,addDeviceInfo, updateDeviceInfo } from "@/api/device/deviceInfo";
import { pipeAllInfoList } from "@/api/device/pipe";
import MyFileUpload from "@/components/MyFileUpload";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
export default {
props: {
title: { type: String }
export default {
props: {
title: { type: String },
},
data() {
return {
form: {
deviceType: "1",
},
dialogVisible: false,
fileList: [],
map: null,
obj: null,
gaoMap: null,
fileArr: [],
pipeList: [],
rules: {
pipeCode: [
{ required: true, message: "请选择所属管道", trigger: "blur" },
// { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" },
],
deviceName: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
],
deviceModel: [
{ required: true, message: "请输入设备型号", trigger: "blur" },
],
deviceAddr: [
{ required: true, message: "请输入所在地址", trigger: "blur" },
],
iotNo: [
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [{ required: true, message: "请输入联系人", trigger: "blur" }],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{ min: 11, max: 11, message: "长度11个数字", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
// type: "date",
required: true,
message: "请选择日期",
trigger: "change",
},
],
},
};
},
components: {
MyFileUpload,
},
methods: {
show() {
this.dialogVisible = true;
//this.getPipeInfo();
},
data () {
return {
form : {
deviceType : "1"
},
dialogVisible : false,
fileList: [],
map : null,
obj : null,
gaoMap : null,
fileArr: [],
pipeList: [],
rules: {
pipeCode: [
{ required: true, message: "请选择所属管道", trigger: "blur" },
// { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" },
],
deviceName: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
],
deviceModel: [
{ required: true, message: "请输入设备型号", trigger: "blur" },
],
deviceAddr: [
{ required: true, message: "请输入所在地址", trigger: "blur" },
],
iotNo: [
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [
{ required: true, message: "请输入联系人", trigger: "blur" },
],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
// type: "date",
required: true,
message: "请选择日期",
trigger: "change",
},
],
},
}
hide() {
this.remove();
},
components: {
MyFileUpload
getFileInfo(res) {
this.form.iconUrl = res.url;
},
methods: {
show () {
this.dialogVisible = true;
//this.getPipeInfo();
},
hide () {
this.remove()
},
getFileInfo(res){
this.form.iconUrl = res.url;
},
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.deviceId != null) {
updateDeviceInfo(this.form).then(response => {
this.dialogVisible = false;
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.deviceId != null) {
updateDeviceInfo(this.form).then((response) => {
this.dialogVisible = false;
this.map.remove(this.obj);
this.gaoMap.addMarker(this.gaoMap.deviceType, this.form);
this.msgSuccess("修改成功");
});
} else {
addDeviceInfo(this.form).then((response) => {
if (response.code == 200) {
this.remove();
this.map.remove(this.obj);
this.gaoMap.addMarker(this.gaoMap.deviceType,this.form);
this.msgSuccess("修改成功");
});
} else {
addDeviceInfo(this.form).then(response => {
if(response.code == 200){
this.remove();
this.map.remove(this.obj);
this.form.deviceId = response.data;
this.gaoMap.addMarker(this.gaoMap.deviceType,this.form);
//this.gaoMap.placeSearch.clear();
this.gaoMap.closeAddMarker();
this.msgSuccess("新增成功");
}else{
this.msgSuccess("新增失败");
}
});
}
this.form.deviceId = response.data;
this.gaoMap.addMarker(this.gaoMap.deviceType, this.form);
//this.gaoMap.placeSearch.clear();
this.gaoMap.closeAddMarker();
this.msgSuccess("新增成功");
} else {
this.msgSuccess("新增失败");
}
});
}
});
},
listRemove(e) {
this.form.url = "";
this.fileArr = [];
},
handleClose(done) {
done();
},
getPipeInfos(){
pipeAllInfoList({}).then((response) => {
this.pipeList = response.data;
});
}
},
watch:{
dialogVisible(val){
if(val){
this.getPipeInfos();
}
});
},
listRemove(e) {
this.form.url = "";
this.fileArr = [];
},
handleClose(done) {
done();
},
getPipeInfos() {
pipeAllInfoList({}).then((response) => {
this.pipeList = response.data;
});
},
},
watch: {
dialogVisible(val) {
if (val) {
this.getPipeInfos();
}
}
}
},
},
};
</script>
......@@ -2,13 +2,18 @@
<el-dialog
:title="title"
:visible.sync="dialogVisible"
:before-close="handleClose">
:before-close="handleClose"
>
<el-row>
<el-form ref="form" :model="form" :rules="rules" label-width="135px">
<el-row>
<el-col :span="11">
<el-form-item label="所属管道" prop="pipeCode">
<el-select v-model="form.pipeCode" placeholder="请选择所属管道" style="width: 100%">
<el-select
v-model="form.pipeCode"
placeholder="请选择所属管道"
style="width: 100%"
>
<el-option
v-for="item in pipeList"
:key="item.pipeCode"
......@@ -24,13 +29,19 @@
<el-row>
<el-col :span="11">
<el-form-item label="设备名称" prop="deviceName">
<el-input v-model="form.deviceName" placeholder="请输入设备名称" />
<el-input
v-model="form.deviceName"
placeholder="请输入设备名称"
/>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="设备型号" prop="deviceModel">
<el-input v-model="form.deviceModel" placeholder="请输入设备型号" />
<el-input
v-model="form.deviceModel"
placeholder="请输入设备型号"
/>
</el-form-item>
</el-col>
</el-row>
......@@ -68,7 +79,12 @@
<el-col :span="11">
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
<el-input
type="number"
maxlength="11"
v-model="form.phone"
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
......@@ -117,125 +133,127 @@
</template>
<script>
import {
getAllDeviceInfo,
addDeviceInfo,
updateDeviceInfo,
} from "@/api/device/deviceInfo";
import { pipeAllInfoList } from "@/api/device/pipe";
import MyFileUpload from "@/components/MyFileUpload";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
import { getAllDeviceInfo ,addDeviceInfo, updateDeviceInfo } from "@/api/device/deviceInfo";
import { pipeAllInfoList } from "@/api/device/pipe";
import MyFileUpload from "@/components/MyFileUpload";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
export default {
props: {
title: { type: String }
export default {
props: {
title: { type: String },
},
data() {
return {
form: {
deviceType: "2",
},
dialogVisible: false,
fileList: [],
map: null,
obj: null,
gaoMap: null,
fileArr: [],
pipeList: [],
rules: {
pipeCode: [
{ required: true, message: "请选择所属管道", trigger: "blur" },
// { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" },
],
deviceName: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
],
deviceModel: [
{ required: true, message: "请输入设备型号", trigger: "blur" },
],
deviceAddr: [
{ required: true, message: "请输入所在地址", trigger: "blur" },
],
iotNo: [
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [{ required: true, message: "请输入联系人", trigger: "blur" }],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{ min: 11, max: 11, message: "长度11个数字", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
// type: "date",
required: true,
message: "请选择日期",
trigger: "change",
},
],
},
};
},
components: {
MyFileUpload,
},
methods: {
show() {
this.dialogVisible = true;
},
data () {
return {
form : {
deviceType : "2"
},
dialogVisible : false,
fileList: [],
map : null,
obj : null,
gaoMap : null,
fileArr: [],
pipeList: [],
rules: {
pipeCode: [
{ required: true, message: "请选择所属管道", trigger: "blur" },
// { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" },
],
deviceName: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
],
deviceModel: [
{ required: true, message: "请输入设备型号", trigger: "blur" },
],
deviceAddr: [
{ required: true, message: "请输入所在地址", trigger: "blur" },
],
iotNo: [
{ required: true, message: "请输入物联网编号", trigger: "blur" },
],
linkman: [
{ required: true, message: "请输入联系人", trigger: "blur" },
],
phone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
],
iconUrl: [{ required: true, message: "请上传图片", trigger: "change" }],
installationTime: [
{
// type: "date",
required: true,
message: "请选择日期",
trigger: "change",
},
],
},
}
hide() {
this.remove();
},
components: {
MyFileUpload,
getFileInfo(res) {
this.form.iconUrl = res.url;
},
methods: {
show () {
this.dialogVisible = true;
},
hide () {
this.remove()
},
getFileInfo(res){
this.form.iconUrl = res.url;
},
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.deviceId != null) {
updateDeviceInfo(this.form).then(response => {
this.dialogVisible = false;
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.deviceId != null) {
updateDeviceInfo(this.form).then((response) => {
this.dialogVisible = false;
this.map.remove(this.obj);
this.gaoMap.addMarker(this.gaoMap.deviceType, this.form);
this.msgSuccess("修改成功");
});
} else {
addDeviceInfo(this.form).then((response) => {
if (response.code == 200) {
this.remove();
this.map.remove(this.obj);
this.gaoMap.addMarker(this.gaoMap.deviceType,this.form);
this.msgSuccess("修改成功");
});
} else {
addDeviceInfo(this.form).then(response => {
if(response.code == 200){
this.remove();
this.map.remove(this.obj);
this.form.deviceId = response.data;
this.gaoMap.addMarker(this.gaoMap.deviceType,this.form);
//this.gaoMap.placeSearch.clear();
this.gaoMap.closeAddMarker();
this.msgSuccess("新增成功");
}else{
this.msgSuccess("新增失败");
}
});
}
this.form.deviceId = response.data;
this.gaoMap.addMarker(this.gaoMap.deviceType, this.form);
//this.gaoMap.placeSearch.clear();
this.gaoMap.closeAddMarker();
this.msgSuccess("新增成功");
} else {
this.msgSuccess("新增失败");
}
});
}
});
},
handleClose(done) {
done();
},
listRemove(e) {
this.form.url = "";
this.fileArr = [];
},
getPipeInfos(){
pipeAllInfoList({}).then((response) => {
this.pipeList = response.data;
});
}
},
watch:{
dialogVisible(val){
if(val){
this.getPipeInfos();
}
});
},
handleClose(done) {
done();
},
listRemove(e) {
this.form.url = "";
this.fileArr = [];
},
getPipeInfos() {
pipeAllInfoList({}).then((response) => {
this.pipeList = response.data;
});
},
},
watch: {
dialogVisible(val) {
if (val) {
this.getPipeInfos();
}
}
}
},
},
};
</script>
......@@ -131,6 +131,18 @@ export default {
ok() {
this.$refs.formData.validate((valid) => {
if (valid) {
if (
moment(this.formData.beginTime).valueOf() >
moment(this.formData.endTime).valueOf()
) {
this.msgError(
"开始时间不能大于结束时间"
);
this.formData.endTime = "";
return;
}
this.okLoading = true;
this.formData.beginTime = moment(this.formData.beginTime).format(
"YYYY-MM-DD HH:mm:ss"
......@@ -138,6 +150,7 @@ export default {
this.formData.endTime = moment(this.formData.endTime).format(
"YYYY-MM-DD HH:mm:ss"
);
console.log(this.formData);
// 找到哪个值班人员
......@@ -176,7 +189,7 @@ export default {
message: res.msg,
});
this.dialogVisible = false;
this.gaodeMap.trackBack(target, arr,data)
this.gaodeMap.trackBack(target, arr, data);
}
});
}
......
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100">
<div v-if="fromGisMap">
<div
style="width: 5%; height: 45px; margin-left: 20px"
@click="$router.go(-1)"
>
<el-button
size="medium"
type="text"
style="font-size: 18px; color: rgb(7, 63, 112); float: left"
>返回</el-button
>
<div style="float: left; margin-top: 8px; margin-left: 5px">
<img
src="../../../assets/logo/fanhui.png"
style="width: 25px"
alt=""
/>
</div>
</div>
</div>
<el-form
:model="queryParams"
ref="queryForm"
:inline="true"
v-show="showSearch"
label-width="100"
>
<el-form-item label="设备编号" prop="deviceCode">
<el-input
v-model="queryParams.deviceCode"
......@@ -20,7 +47,12 @@
/>
</el-form-item>
<el-form-item label="报警类型" prop="alarmType">
<el-select v-model="queryParams.alarmType" placeholder="请选择报警类型" clearable size="small">
<el-select
v-model="queryParams.alarmType"
placeholder="请选择报警类型"
clearable
size="small"
>
<el-option
v-for="dict in typeOptions"
:key="dict.dictValue"
......@@ -31,70 +63,108 @@
</el-form-item>
<el-form-item label="报警开始时间" prop="startTime1">
<el-date-picker
clearable size="small"
clearable
size="small"
v-model="queryParams.startTime1"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetime"
placeholder="请选择起始时间"
align="right">
align="right"
>
</el-date-picker>
<font color="#C0C4CC"></font>
</el-form-item>
<el-form-item label="" prop="endTime1">
<el-date-picker
clearable size="small"
clearable
size="small"
v-model="queryParams.endTime1"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetime"
placeholder="请选择截止时间"
align="right">
align="right"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="deviceAlarmList" @selection-change="handleSelectionChange">
<el-table
v-loading="loading"
:data="deviceAlarmList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="设备名称" align="center" >
<el-table-column label="设备名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.deviceName }}</span>
</template>
</el-table-column>
<el-table-column label="设备编号" align="center" >
<el-table-column label="设备编号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.deviceCode }}</span>
</template>
</el-table-column>
<el-table-column label="报警类型" align="center" prop="alarmType" >
<el-table-column label="报警类型" align="center" prop="alarmType">
<template slot-scope="scope">
<span>{{ scope.row.alarmType }}</span>
</template>
</el-table-column>
<el-table-column label="报警值" align="center" prop="alarmValue" />
<el-table-column label="报警开始时间" align="center" prop="startTime" width="180">
<el-table-column
label="报警开始时间"
align="center"
prop="startTime"
width="180"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.startTime) }}</span>
</template>
</el-table-column>
<el-table-column label="报警结束时间" align="center" prop="endTime" width="180">
<el-table-column
label="报警结束时间"
align="center"
prop="endTime"
width="180"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.endTime) }}</span>
</template>
</el-table-column>
<el-table-column label="处理状态" align="center" prop="dealStatus" >
<el-table-column label="处理状态" align="center" prop="dealStatus">
<template slot-scope="scope">
<span v-if="scope.row.orderId == null || scope.row.orderId == ''">未生成工单</span>
<span v-if="(scope.row.dealStatus == null || scope.row.dealStatus == '')
&& scope.row.orderId != null && scope.row.orderId != ''">未处理</span>
<span v-if="scope.row.orderId == null || scope.row.orderId == ''"
>未生成工单</span
>
<span
v-if="
(scope.row.dealStatus == null || scope.row.dealStatus == '') &&
scope.row.orderId != null &&
scope.row.orderId != ''
"
>未处理</span
>
<span v-if="scope.row.dealStatus == 1">不需处理</span>
<span v-if="scope.row.dealStatus == 2">已处理完成</span>
<span v-if="scope.row.dealStatus == 3">未处理完成</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="normal"
......@@ -103,19 +173,21 @@
@click="handleIssue(scope.row)"
v-hasPermi="['workOrder:basicsInfo:add']"
v-if="scope.row.orderId == '' || scope.row.orderId == null"
>生成工单</el-button>
>生成工单</el-button
>
<el-button
size="normal"
type="text"
icon="el-icon-edit"
@click="showDetail(scope.row)"
>详情</el-button>
>详情</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
......@@ -126,19 +198,25 @@
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-form-item label="报警设备" prop="deviceName">
<font>{{form.deviceName}}</font>
<font>{{ form.deviceName }}</font>
</el-form-item>
<el-form-item label="报警类型" prop="alarmType">
<font>{{form.alarmType}}</font>
<font>{{ form.alarmType }}</font>
</el-form-item>
<el-form-item label="报警值" prop="alarmValue">
<font>{{form.alarmValue}}</font>
<font>{{ form.alarmValue }}</font>
</el-form-item>
<el-form-item label="工单名称" prop="orderName">
<el-input v-model="form.orderName" placeholder="请输入工单名称" />
</el-form-item>
<el-form-item label="指定执行人员" prop="appointInspector">
<el-select v-model="form.appointInspector" placeholder="请选择执行人员" clearable size="small" @change="setUserId">
<el-select
v-model="form.appointInspector"
placeholder="请选择执行人员"
clearable
size="small"
@change="setUserId"
>
<el-option
v-for="item in inspector"
:key="item.userId"
......@@ -148,7 +226,11 @@
</el-select>
</el-form-item>
<el-form-item label="工单描述" prop="remarks">
<el-input type="textarea" v-model="form.remarks" placeholder="请输入工单描述" />
<el-input
type="textarea"
v-model="form.remarks"
placeholder="请输入工单描述"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
......@@ -160,16 +242,20 @@
</template>
<script>
import { listDeviceAlarm, getDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import {
listDeviceAlarm,
getDeviceAlarm,
} from "@/api/dataMonitoring/deviceAlarm";
import { addBasicsInfo } from "@/api/workOrder/basicsInfo";
import { inspectorList } from "@/api/system/user";
export default {
name: "DeviceAlarm",
components: {
},
components: {},
data() {
return {
// 判断是从哪里来的,如果是地图里来的,则可以返回
fromGisMap:false,
// 遮罩层
loading: true,
// 导出遮罩层
......@@ -214,46 +300,58 @@ export default {
alarmType: null,
startTime1: null,
endTime1: null,
dealStatus: null
dealStatus: null,
},
// 表单参数
form: { },
form: {},
// 表单校验
rules: {
orderName: [
{ required: true, message: "工单名称不能为空", trigger: "blur" }
{ required: true, message: "工单名称不能为空", trigger: "blur" },
],
appointInspector: [
{ required: true, message: "请选择巡检人员", trigger: "blur" }
{ required: true, message: "请选择巡检人员", trigger: "blur" },
],
}
},
};
},
created() {
this.getList();
this.getDicts("t_alarm_type").then(response => {
this.getDicts("t_alarm_type").then((response) => {
this.typeOptions = response.data;
});
},
beforeRouteEnter: (to, from, next) => {
next((vm) => {
// 如果是从地图里来的
if(from.path=="/enterprise/mapView"){
// console.log(123)
vm.fromGisMap=true;
}else{
vm.fromGisMap=false;
}
});
},
methods: {
/** 查询报警信息列表 */
getList() {
this.loading = true;
listDeviceAlarm(this.queryParams).then(response => {
listDeviceAlarm(this.queryParams).then((response) => {
this.deviceAlarmList = response.rows;
this.total = response.total;
this.loading = false;
console.log("this.deviceAlarmList",this.deviceAlarmList)
console.log("this.deviceAlarmList", this.deviceAlarmList);
});
},
getInspectorList(){
getInspectorList() {
this.loading = true;
inspectorList().then(response => {
inspectorList().then((response) => {
this.inspector = response.data;
this.loading = false;
});
},
setUserId(val){
setUserId(val) {
this.form.appointInspector = val;
},
// 取消按钮
......@@ -273,7 +371,7 @@ export default {
allotTime: null,
actualInspector: null,
actualTime: null,
remarks: null
remarks: null,
};
this.resetForm("form");
},
......@@ -289,16 +387,16 @@ export default {
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.alarmId)
this.single = selection.length!==1
this.multiple = !selection.length
this.ids = selection.map((item) => item.alarmId);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 下发按钮操作 */
handleIssue(row) {
this.reset();
this.getInspectorList();
const alarmId = row.alarmId || this.ids
getDeviceAlarm(alarmId).then(response => {
const alarmId = row.alarmId || this.ids;
getDeviceAlarm(alarmId).then((response) => {
this.form = response.data;
this.open = true;
this.title = "填写工单信息";
......@@ -306,12 +404,12 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (valid) {
console.log(this.form)
console.log(this.form);
this.form.resourceId = this.form.alarmId;
this.form.orderType = "3";
addBasicsInfo(this.form).then(response => {
addBasicsInfo(this.form).then((response) => {
this.msgSuccess("生成工单成功");
this.open = false;
this.getList();
......@@ -322,12 +420,12 @@ export default {
/** 工单详细信息跳转 */
showDetail(row) {
this.$router.push({
path: '/deviceAlarm/alarmdetail',
query:{
orderId : row.orderId
}
}) //带参跳转
path: "/deviceAlarm/alarmdetail",
query: {
orderId: row.orderId,
},
}); //带参跳转
},
}
},
};
</script>
......@@ -758,7 +758,7 @@ export default {
// 左边的bar
.leftBar-wrapper {
position: fixed;
left: 100px;
left: 10px;
top: 150px;
.box {
width: 180px;
......@@ -976,13 +976,13 @@ input[type="radio"] {
.search-input {
position: fixed;
top: 100px;
left: 7%;
left: 10px;
width: 240px;
}
.search-but {
position: fixed;
top: 100px;
left: 23%;
left: 260px;
width: 85px;
color: white;
background-color: #053b6a;
......@@ -991,7 +991,7 @@ input[type="radio"] {
.refresh-but {
position: fixed;
top: 100px;
left: 28%;
left: 345px;
width: 85px;
color: white;
background-color: #053b6a;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment