Commit 91fd1658 authored by 纪泽龙's avatar 纪泽龙

Merge branch 'develop_jzl'

parents 5e71e661 1ed1ce44
......@@ -83,6 +83,11 @@
<div>
详细信息:<span>{{ alarmValue ? alarmValue : "-" }}</span>
</div>
<div v-if="!orderId">
工单编号:<span>{{
obj.polyline.getExtData().lineData.orderId
}}</span>
</div>
</div>
<div @click.stop="stopPropatation" class="btn">
<span @mousedown.stop="deviceMore">
......@@ -91,6 +96,9 @@
<span v-if="orderId" @mousedown.stop="createWork">
<el-button class="elbtn" type="primary">生成工单</el-button>
</span>
<span v-else @mousedown.stop="checkWork">
<el-button class="elbtn" type="primary">查看工单</el-button>
</span>
</div>
</div>
</div>
......@@ -151,29 +159,35 @@ export default {
this.obj.polyline.getExtData().lineData.alarmId;
this.obj.polyline.getExtData().lineData.view.$refs.CreateWork.open = true;
// 改变外层回调
this.obj.polyline.getExtData().lineData.view.CreateWorkCallBack =
this.CreateWorkCallBack;
},
close() {
this.obj.polyline.infoWindow.close();
this.obj.polyline.getExtData().lineData.view.alarmObjChange({
alarmId: this.obj.polyline.getExtData().lineData.alarmId,
type: "pipe",
});
// this.obj.polyline.getExtData().lineData.view.CreateWorkCallBack(this.CreateWorkCallBack)
},
CreateWorkCallBack() {
console.log("polylineCallBack");
const polyline = this.obj.polyline
.getExtData()
.lineData.view.gaoMap.polyLines.filter((item) => {
return (
item.getExtData().lineData.alarmId ==
this.obj.polyline.getExtData().lineData.alarmId
);
})[0];
console.log("polyline.getExtData()", polyline.getExtData().lineData);
let options = polyline.getExtData();
// 暂时传值,到时候回重新刷新
options.lineData.orderId = "1";
polyline.setExtData(options);
checkWork() {
this.obj.polyline.getExtData().class.view.$router.push({
path: "/basicsInfo/detail",
query: {
orderId: this.obj.polyline.getExtData().lineData.orderId,
},
});
},
// // CreateWorkCallBack(e) {
// // console.log("生成工单后传过来的参数", e);
// // const polyline = this.obj.polyline
// // .getExtData()
// // .lineData.view.gaoMap.polyLines.filter((item) => {
// // return (
// // item.getExtData().lineData.alarmId ==
// // this.obj.polyline.getExtData().lineData.alarmId
// // );
// // })[0];
// // let options = polyline.getExtData();
// // // 暂时传值,到时候回重新刷新
// // options.lineData.orderId = e;
// // polyline.setExtData(options);
// },
deviceMore() {
console.log(this.obj.polyline.getExtData().lineData);
this.obj.polyline.getExtData().class.view.$router.push({
......@@ -183,6 +197,9 @@ export default {
},
});
},
close() {
this.obj.polyline.infoWindow.close();
},
},
};
</script>
......
......@@ -70,6 +70,9 @@
<div>
详细信息:<span>{{ data.alarmValue ? data.alarmValue : "-" }}</span>
</div>
<div v-if="!orderId">
工单编号:<span>{{ data.orderId }}</span>
</div>
</div>
<div class="btn">
<span @mousedown.stop="deviceMore">
......@@ -83,6 +86,9 @@
>生成工单</el-button
>
</span>
<span v-else @mousedown.stop="checkWork">
<el-button class="elbtn" type="primary">查看工单</el-button>
</span>
</div>
</div>
</div>
......@@ -115,19 +121,24 @@ export default {
this.data.view.$refs.CreateWork.open = true;
this.data.view.$refs.CreateWork.gaoMap = this.data.view.gaoMap;
// 改变外层回调
this.data.view.CreateWorkCallBack = this.CreateWorkCallBack;
},
CreateWorkCallBack() {
// console.log("markerCallBack")
const marker = this.data.view.gaoMap.markers.filter((item) => {
return item.getExtData().alarmId == this.data.alarmId;
})[0];
// console.log("marer.getExtData()", marker.getExtData());
let options = marker.getExtData();
// 暂时传值,到时候回重新刷新
options.orderId = "1";
marker.setExtData(options);
// this.data.view.CreateWorkCallBack = this.CreateWorkCallBack;
this.data.view.alarmObjChange({
alarmId: this.data.alarmId,
type: "device",
});
},
// CreateWorkCallBack(e) {
// // console.log("生成工单后传过来的参数", e);
// // console.log("markerCallBack");
// const marker = this.data.view.gaoMap.markers.filter((item) => {
// return item.getExtData().alarmId == this.data.alarmId;
// })[0];
// console.log("marer.getExtData()", marker.getExtData());
// let options = marker.getExtData();
// // 暂时传值,到时候回重新刷新
// options.orderId = e;
// marker.setExtData(options);
// },
deviceMore() {
this.data.view.$router.push({
path: "/deviceAlarm/alarmdetail",
......@@ -136,6 +147,15 @@ export default {
},
});
},
// 查看工单
checkWork() {
this.data.view.$router.push({
path: "/basicsInfo/detail",
query: {
orderId: this.data.orderId,
},
});
},
},
beforeDestroy() {
// this.data.view.createWorkOpen = false;
......
......@@ -334,7 +334,7 @@ class gaodeMap {
map.setZoom("11");
}
//map.setFitView();
function infoClose(e) {
let options = map.getStatus();
options.scrollWheel = true;
......@@ -351,6 +351,7 @@ class gaodeMap {
e.target.content = this.getMarketContent( e.target.data);
e.target.infoWindow.setContent(e.target.content);
e.target.infoWindow.open(map, e.target.getPosition());
console.log("e.target.getPosition()",e.target.getExtData())
this.boxCollision(e.target.infoWindow.dom);
// that.addCloneDome(e.target, infoWindow);
// infoWindow.close();
......
......@@ -48,11 +48,10 @@
>确 定</el-button
>
<!-- <el-button @click="cancel">取 消</el-button> -->
<el-button>取 消</el-button>
<el-button @click.stop="close">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { inspectorList } from "@/api/system/user";
import { addBasicsInfo } from "@/api/workOrder/basicsInfo";
......@@ -76,12 +75,12 @@ export default {
appointInspector: "",
remarks: "",
},
gaoMap:"",
gaoMap: "",
open: false,
title: "",
inspector: [],
loading: false,
alarmId:"",
alarmId: "",
rules: {
orderName: [
{ required: true, message: "工单名称不能为空", trigger: "blur" },
......@@ -100,7 +99,7 @@ export default {
open(value, oldValue) {
if (value) {
console.log(this.alarmId);
this.handleIssue(this.alarmId)
this.handleIssue(this.alarmId);
}
},
},
......@@ -130,14 +129,18 @@ export default {
this.form.resourceId = this.form.alarmId;
this.form.orderType = "3";
addBasicsInfo(this.form).then((response) => {
this.msgSuccess("生成工单成功");
this.open = false;
this.$emit("callback");
if (response.code == 200) {
console.log(response.msg);
this.msgSuccess("生成工单成功");
this.open = false;
}
this.$emit("callback", 999);
});
}
});
},
close() {
console.log("关闭");
this.open = false;
},
},
......
......@@ -77,12 +77,14 @@
<div ref="drawer" class="drawer" :class="{ back: backFlag }">
<div class="switch" @click="backFlag = !backFlag">
<i
<!-- <i
:class="{
'el-icon-arrow-left': !backFlag,
'el-icon-arrow-right': backFlag,
}"
></i>
></i> -->
<img v-if="!backFlag" src="@/assets/images/l.png" alt="" />
<img v-else src="@/assets/images/r.png" alt="" />
<!-- <i class="el-icon-arrow-right"></i> -->
</div>
<!-- 只能动态传入内嵌盒子的高 -->
......@@ -132,73 +134,86 @@
class="animate"
v-show="arrowRightNum.indexOf(item.value) >= 0"
>
<!-- 设备以及管道 展示内容是一样的 -->
<template v-if="item.value != 9">
<div>
<div class="thead">
<div class="no">序号</div>
<div class="code">设备编号</div>
<div class="name">设备名称</div>
<!-- 有数据 -->
<template v-if="item.list.length > 0">
<!-- 设备以及管道 展示内容是一样的 -->
<template v-if="item.value != 9">
<div>
<div class="thead">
<div class="no">序号</div>
<div class="code">设备编号</div>
<div class="name">设备名称</div>
</div>
<div
class="deviceList"
:class="{ topActive: index == 0 }"
v-for="(iten, index) in item.list"
:key="iten.deviceId + `` + index"
@mousedown.stop="panToo(iten, item)"
>
<div class="no">{{ iten.no + 1 }}</div>
<div :title="iten.code" class="code">
{{ iten.code }}
</div>
<div :title="iten.deviceName" class="name">
{{ iten.deviceName }}
</div>
</div>
</div>
<div
class="deviceList"
:class="{ topActive: index == 0 }"
v-for="(iten, index) in item.list"
:key="iten.deviceId + `` + index"
@mousedown.stop="panToo(iten, item)"
>
<div class="no">{{ iten.no + 1 }}</div>
<div :title="iten.code" class="code">{{ iten.code }}</div>
<div :title="iten.deviceName" class="name">
{{ iten.deviceName }}
</template>
<!-- 值班人员 展示不太一样-->
<template v-else-if="item.value == 9">
<div>
<div class="thead">
<div class="no">序号</div>
<div class="code">人员姓名</div>
<div class="name">联系电话</div>
</div>
<div
class="deviceList"
:class="{ topActive: index == 0 }"
v-for="(iten, index) in item.list"
:key="iten.deviceId + `` + index"
@click.stop="panToo(iten, item)"
>
<div class="no">{{ iten.no + 1 }}</div>
<div :title="iten.userName" class="code">
{{ iten.userName }}
</div>
<div :title="iten.userPhone" class="name">
{{ iten.userPhone ? iten.userPhone : "-" }}
</div>
</div>
</div>
</div>
</template>
<!-- 值班人员 展示不太一样-->
<template v-else-if="item.value == 9">
<div>
<div class="thead">
<div class="no">序号</div>
<div class="code">人员姓名</div>
</template>
<div class="goback">
<div class="minMax">
页数
{{ item.nowPage }}/{{ item.maxPage }}
</div>
<div
class="deviceList"
:class="{ topActive: index == 0 }"
v-for="(iten, index) in item.list"
:key="iten.deviceId + `` + index"
@click.stop="panToo(iten, item)"
>
<div class="no">{{ iten.no + 1 }}</div>
<div :title="iten.userName" class="code">
{{ iten.userName }}
</div>
<div class="btn">
<el-button
class="backPage"
type="mini"
:disabled="item.nowPage == 1"
@click.stop="pageBack(item, index)"
>上一页</el-button
>
<el-button
class="goPage"
type="mini"
:disabled="item.nowPage == item.maxPage"
@click.stop="pageGo(item, index)"
>下一页</el-button
>
</div>
</div>
</template>
<div class="goback">
<div class="minMax">
页数
{{ item.nowPage }}/{{ item.maxPage }}
</div>
<div class="btn">
<el-button
class="backPage"
type="mini"
:disabled="item.nowPage == 1"
@click.stop="pageBack(item, index)"
>上一页</el-button
>
<el-button
class="goPage"
type="mini"
:disabled="item.nowPage == item.maxPage"
@click.stop="pageGo(item, index)"
>下一页</el-button
>
</div>
</div>
<!-- 无数据 -->
<template v-else>
<div style="padding-left: 5px">暂无数据</div>
</template>
</div>
</el-collapse-transition>
</div>
......@@ -317,7 +332,7 @@ export default {
// 是否显示生成工单弹框
createWorkOpen: false,
// 查询用的
alarmId: "",
alarmObj: { alarmId: "", type: "" },
// 左边抽屉 内嵌scroll盒子的高
boxHeight: "",
//抽屉是否收回
......@@ -422,8 +437,8 @@ export default {
});
},
//值班人员
getInspectorLocations() {
return getInspectorLocations().then((res) => {
getInspectorLocations(queryParams) {
return getInspectorLocations(queryParams).then((res) => {
if (res.code == 200) {
console.log(" 值班人员", res);
// 把值班人员传进类里
......@@ -469,31 +484,33 @@ export default {
const pipeId = item.getExtData().lineData.pipeId;
return deviceId == pipeId;
})[0];
let options = polyline.getExtData();
// 增加一个报警状态
// 如果有endtime说明状态已经不是报警状态了,要归位,所有东西都要变回来
options.lineData.view = this;
options.lineData.alarmId = alarmId;
options.lineData.orderId = orderId;
if (endTime) {
polyline.setOptions({ strokeColor: "#F7FE38" });
options.lineData.alarmState = 0;
// 报警类型
options.lineData.alarmType = null;
// 报警信息
options.lineData.alarmValue = null;
console.log("管道回复");
} else {
polyline.setOptions({ strokeColor: "#ff0000" });
options.lineData.alarmState = 1;
// 报警类型
options.lineData.alarmType = alarmType;
// 报警信息
options.lineData.alarmValue = alarmValue;
if (polyline) {
let options = polyline.getExtData();
// 增加一个报警状态
// 如果有endtime说明状态已经不是报警状态了,要归位,所有东西都要变回来
options.lineData.view = this;
options.lineData.alarmId = alarmId;
options.lineData.orderId = orderId;
if (endTime) {
polyline.setOptions({ strokeColor: "#F7FE38" });
options.lineData.alarmState = 0;
// 报警类型
options.lineData.alarmType = null;
// 报警信息
options.lineData.alarmValue = null;
console.log("管道回复");
} else {
polyline.setOptions({ strokeColor: "#ff0000" });
options.lineData.alarmState = 1;
// 报警类型
options.lineData.alarmType = alarmType;
// 报警信息
options.lineData.alarmValue = alarmValue;
console.log("管道报警");
console.log("管道报警");
}
polyline.setExtData(options);
}
polyline.setExtData(options);
});
}
......@@ -508,55 +525,56 @@ export default {
const id = item.getExtData().deviceId;
return deviceId == id;
})[0];
const options = device.getExtData();
// 增加一个报警状态
// 如果有endtime说明状态已经不是报警状态了,要归位,所有东西都要变回来
options.view = this;
options.alarmId = alarmId;
options.orderId = orderId;
if (endTime) {
options.alarmState = 0;
// 报警类型
options.alarmType = null;
// 报警信息
options.alarmValue = null;
} else {
options.alarmState = 1;
// 报警类型
options.alarmType = alarmType;
// 报警信息
options.alarmValue = alarmValue;
}
device.setExtData(options);
// const imageName = device.getExtData()
// console.log(imageName)
// 3是流量计 4是压力表
if (device.getExtData().deviceType == 3) {
// 如果有endtime说明已经维护好了
if (device) {
const options = device.getExtData();
// 增加一个报警状态
// 如果有endtime说明状态已经不是报警状态了,要归位,所有东西都要变回来
options.view = this;
options.alarmId = alarmId;
options.orderId = orderId;
if (endTime) {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/liuliangji.png`)
);
options.alarmState = 0;
// 报警类型
options.alarmType = null;
// 报警信息
options.alarmValue = null;
} else {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/llj.gif`)
);
options.alarmState = 1;
// 报警类型
options.alarmType = alarmType;
// 报警信息
options.alarmValue = alarmValue;
}
} else if (device.getExtData().deviceType == 4) {
if (endTime) {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/yalibiao.png`)
);
} else {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/ylb.gif`)
);
device.setExtData(options);
// const imageName = device.getExtData()
// console.log(imageName)
// 3是流量计 4是压力表
if (device.getExtData().deviceType == 3) {
// 如果有endtime说明已经维护好了
if (endTime) {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/liuliangji.png`)
);
} else {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/llj.gif`)
);
}
} else if (device.getExtData().deviceType == 4) {
if (endTime) {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/yalibiao.png`)
);
} else {
this.gaoMap.changeMarkIcon(
device,
require(`@/assets/images/ylb.gif`)
);
}
}
}
});
......@@ -707,7 +725,7 @@ export default {
},
panToo(iten, item) {
// 如果没打对勾,就啥也不干
if(!this.leftBarNum.includes(item.value) ) return
if (!this.leftBarNum.includes(item.value)) return;
// 如果地图太大了就吸纳是不出来infowindow了,所以要固定缩放比例
this.gaoMap.myMap.setZoom(11);
......@@ -793,7 +811,6 @@ export default {
};
},
// 向右的箭头的动画
arrowRightChange(item) {
const index = this.arrowRightNum.indexOf(item.value);
......@@ -897,6 +914,7 @@ export default {
no: index,
userId: item.userId,
userName: item.userName,
userPhone: item.phone,
};
});
console.log("值班人员", workManArr);
......@@ -919,7 +937,11 @@ export default {
);
});
item.maxPage = Math.ceil(this.allList[index].length / num);
}else{
// 如果为空,就直接把item.list写成[];
item.list=[];
}
});
},
pageBack(item) {
......@@ -1057,7 +1079,7 @@ export default {
// map.remove(this.gaodeMap.markerOverlays);
},
// 搜索
search() {
async search() {
this.searchClear();
map.clearMap();
this.gaoMap.placeSearch.clear();
......@@ -1070,14 +1092,36 @@ export default {
this.gaoMap.searchSelectAdcode = undefined;
this.gaoMap.searchSelectName = undefined;
} else {
this.gaoMap.placeSearch.search(this.keyWord);
this.getDeviceInfo({ deviceName: this.keyWord });
// 左边全选
this.leftBarNum = [1, 2, 3, 4, 7, 8, 9];
// 右转箭头的样式active判定
this.arrowRightNum = [];
// 清空左边列表
// this.changeBtnDataClear();
// this.gaoMap.placeSearch.search(this.keyWord);
await this.getDeviceInfo({ deviceName: this.keyWord });
this.gaoMap.polyLines = [];
this.getPipeList({ pipeName: this.keyWord });
await this.getPipeList({ pipeName: this.keyWord });
// 值班人员
this.getInspectorLocations();
await this.getInspectorLocations({ userName: this.keyWord });
// 设备报警
this.getSelectAlarmDevice();
this.pipeList();
console.log(this.changeBtnData);
console.log(this.allList)
}
},
// 清空左边列表
changeBtnDataClear() {
this.allList = [];
this.changeBtnData.forEach((item) => {
// 清空list
item.list = [];
item.maxPage = 99;
item.nowPage = 1;
});
},
// 新建下拉列表关闭 window点击事件
barClose() {
// 一点windowbottomData显示
......@@ -1110,21 +1154,32 @@ export default {
openChange(bool) {
this.createWorkOpen = bool;
},
CreateWorkCallBack() {
if (!this.alarmId) return;
// 生成工单的回调
CreateWorkCallBack(e) {
if (!this.alarmObj.alarmId) return;
console.log("alarmObj", this.alarmObj);
if (this.alarmObj.type == "pipe") {
const polyline = this.gaoMap.polyLines.filter((item) => {
return item.getExtData().lineData.alarmId == this.alarmObj.alarmId;
})[0];
let options = polyline.getExtData();
// 暂时传值,到时候回重新刷新
options.lineData.orderId = e;
polyline.setExtData(options);
} else {
const marker = this.gaoMap.markers.filter((item) => {
return item.getExtData().alarmId == this.alarmObj.alarmId;
})[0];
let options = marker.getExtData();
// 暂时传值,到时候回重新刷新
options.orderId = e;
marker.setExtData(options);
}
// 工单弹框生成之后执行的方法
const marker = this.gaoMap.markers.filter((item) => {
return item.getExtData().alarmId == this.alarmId;
})[0];
console.log("marer.getExtData()", marker.getExtData());
let options = marker.getExtData();
// 暂时传值,到时候回重新刷新
options.orderId = "1";
marker.setExtData(options);
},
alarmIdChange(alarmId) {
this.alarmId = alarmId;
console.log(alarmId);
alarmObjChange(obj) {
this.alarmObj = obj;
console.log(this.alarmObj);
},
},
......@@ -1323,10 +1378,10 @@ input[type="radio"] {
.switch {
position: absolute;
font-size: 30px;
right: -15px;
right: -27px;
top: 50%;
margin-top: -30px;
width: 25px;
width: 40px;
border-radius: 40%;
overflow: hidden;
cursor: pointer;
......
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