Commit dafae2ab authored by 王晓倩's avatar 王晓倩

管道详情,设备信息详情

parent fbef3d99
......@@ -107,6 +107,12 @@
@click="handleUpdate(scope.row)"
v-hasPermi="['device:deviceInfo:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="showDetail(scope.row)"
>详情</el-button>
<el-button
size="mini"
type="text"
......@@ -208,6 +214,7 @@
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- <Mapdialog v-if="loadmap" :dialogTableVisible="dialogTableVisible" @dialogcancelFun="dialogcancelFun" :slat="form.latitude" :slng="form.longitude" @confirm="qrFun" />-->
</div>
</template>
......@@ -215,6 +222,7 @@
import { listDeviceInfo, getDeviceInfo, addDeviceInfo, updateDeviceInfo, exportDeviceInfo } from "@/api/device/deviceInfo";
import { pipeAllInfoList } from "@/api/device/pipe";
import MyFileUpload from '@/components/MyFileUpload';
// import Mapdialog from "@/components/maplnglat.vue";
export default {
name: "DeviceInfo",
......@@ -247,6 +255,9 @@ export default {
options: [],
// 上传文件列表
fileList: [],
// 地图
loadmap: false,
dialogTableVisible: false,
// 设备类型字典
typeOptions: [],
// 查询参数
......@@ -299,6 +310,19 @@ export default {
this.form.url = "";
this.fileList = [];
},
// qrFun(res) {
// //确认选择经纬度
// this.form.longitude = res.lng;
// this.form.latitude = res.lat;
// },
// MapdialogFun() {
// this.loadmap = true;
// this.dialogTableVisible = true;
// },
// dialogcancelFun() {
// this.loadmap = false;
// this.dialogTableVisible = false;
// },
// 取消按钮
cancel() {
this.open = false;
......@@ -419,7 +443,16 @@ export default {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
},
/** 详细信息跳转 */
showDetail(row) {
this.$router.push({
path: '/device/deviceInfoDetail',
query: {
deviceId: row.deviceId
}
})
},
}
};
</script>
......
<template>
<div class="app-container detail" style="background-color: rgb(238, 241, 245);">
<div style="padding-top: 10px;background: #fff;height: 100%;">
<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 style="width: 100%;height: 440px;">
<el-divider></el-divider>
<div style="color: #31EAEA;width: 30%;height: 30px;">
<ul><li>详细信息</li></ul>
</div>
<div style="float: left;width: 50%;">
<el-form ref="form" v-model="form" :rules="rules" label-width="100px" style="float: left;margin-left: 50px;width: 50%;margin-bottom: 25px;">
<el-form-item label="设备名称:" prop="deviceName">
<font>{{form.deviceName}}</font>
</el-form-item>
<el-form-item label="设备编号:" prop="deviceCode">
<font>{{form.deviceCode}}</font>
</el-form-item>
<el-form-item label="设备类型:" prop="deviceType">
<font v-if="form.deviceType == 1">调压阀</font>
<font v-if="form.deviceType == 2">阀门井</font>
<font v-if="form.deviceType == 3">流量计</font>
<font v-if="form.deviceType == 4">压力表</font>
</el-form-item>
<el-form-item label="设备型号:" prop="deviceModel">
<font>{{form.deviceModel}}</font>
</el-form-item>
<el-form-item label="物联网编号:" prop="iotNo" v-if="form.iotNo != null || form.iotNo != ''">
<font>{{form.iotNo}}</font>
</el-form-item>
<el-form-item label="联系人:" prop="linkman">
<font>{{form.linkman}}</font>
</el-form-item>
<el-form-item label="联系电话:" prop="phone">
<font>{{form.phone}}</font>
</el-form-item>
<el-form-item label="备注信息:" prop="remarks">
<font>{{form.remarks}}</font>
</el-form-item>
</el-form>
<el-form ref="form" v-model="form" :rules="rules" label-width="100px" style="float: left;width: 40%;">
<el-form-item label="所属管道:" prop="pipeName">
<font>{{form.pipeName}}</font>
</el-form-item>
<el-form-item label="所在地址:" prop="deviceAddr">
<font>{{form.deviceAddr}}</font>
</el-form-item>
<el-form-item label="经度:" prop="longitude">
<font>{{form.longitude}}</font>
</el-form-item>
<el-form-item label="经度:" prop="latitude">
<font>{{form.latitude}}</font>
</el-form-item>
<el-form-item label="安装时间:" prop="installationTime">
<font>{{form.installationTime}}</font>
</el-form-item>
<el-form-item label="最后巡检时间:" prop="inspectionTime">
<font>{{form.inspectionTime}}</font>
</el-form-item>
<el-form-item label="设备图片:" prop="inspectionTime">
<el-image :src="form.iconUrl" :preview-src-list="[form.iconUrl]" style="width: 90px;"></el-image>
</el-form-item>
</el-form>
</div>
<div id="marbox" style="width: 700px;height: 400px;float: left;margin-top: -25px; border: 1px solid rgb(218, 213, 213);">
<div style="width: 100%;height: 100%" id="container"></div>
</div>
</div>
</div>
</div>
</template>
<script>
import { getDeviceInfo } from "@/api/device/deviceInfo";
import gaodeMap from "utils/gaodeMap.js";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
export default {
name: "DeviceInfoDetail",
components: {
},
data() {
return {
// 表单参数
form: { },
// 表单校验
rules: { }
};
},
created() {
// 如果是跳转来的,则接受初始化参数
this.deviceId = this.$route.query.deviceId;
this.getDetail();
},
mounted(){
let gaoMap = new gaodeMap("石家庄");
this.gaoMap = gaoMap;
},
methods: {
/** 获取巡检计划详情 */
getDetail (){
getDeviceInfo(this.deviceId).then(response =>{
this.form = response.data;
console.log("this.form",this.form)
this.gaoMap.resetMapCenter([this.form.longitude, this.form.latitude]);
this.gaoMap.addMarker(DEVICE_TYPE.WORKORDER, this.form)
});
},
}
}
</script>
<style>
.el-divider--horizontal {
display: block;
height: 1px;
width: 100%;
margin: 20px 0;
}
.feedbackTime-div{
float: left;margin-left: 150px;margin-top: 10px;
}
.feedbackTime{
height: 120px;
width: 120px;
float: left;
margin-left: 15px;
margin-top: 5px;
margin-bottom: 15px;
display: flex;
justify-content: center;
align-items: center;
}
.el-card__body {
padding: 5px 20px 20px 20px;
}
.detail .el-form{
width: 20%;
}
.detail .el-form-item{
margin-bottom: 0px;
}
.avatar-uploader{
width: 25%;
float: left;
}
.avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
border-color: #409EFF;
}
.avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 178px;
height: 178px;
line-height: 178px;
text-align: center;
}
.avatar {
width: 178px;
height: 178px;
display: block;
}
li{
font-size: 15px;
font-weight: 900;
}
</style>
......@@ -112,6 +112,12 @@
@click="handleUpdate(scope.row)"
v-hasPermi="['device:pipe:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="showDetail(scope.row)"
>详情</el-button>
<el-button
size="mini"
type="text"
......@@ -404,7 +410,16 @@ export default {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
},
/** 详细信息跳转 */
showDetail(row) {
this.$router.push({
path: '/device/pipeDetail',
query: {
pipeId: row.pipeId
}
})
},
}
};
</script>
<template>
<div class="app-container detail" style="background-color: rgb(238, 241, 245);">
<div style="padding-top: 10px;background: #fff;height: 100%;">
<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 style="width: 100%;height: 440px;">
<el-divider></el-divider>
<div style="color: #31EAEA;width: 30%;height: 30px;">
<ul><li>详细信息</li></ul>
</div>
<div style="float: left;width: 50%;">
<el-form ref="form" v-model="form" :rules="rules" label-width="100px" style="float: left;margin-left: 50px;width: 50%;margin-bottom: 25px;">
<el-form-item label="管道名称:" prop="pipeName">
<font>{{form.pipeName}}</font>
</el-form-item>
<el-form-item label="管道编号:" prop="pipeCode">
<font>{{form.pipeCode}}</font>
</el-form-item>
<el-form-item label="管道类型:" prop="pipeType">
<font v-if="form.pipeType == 1">地埋管线</font>
<font v-if="form.pipeType == 2">地表管线</font>
</el-form-item>
<el-form-item label="管道压力:" prop="pipePressure">
<font v-if="form.pipePressure == 1">低压</font>
<font v-if="form.pipePressure == 2">中压</font>
<font v-if="form.pipePressure == 3">次高压</font>
<font v-if="form.pipePressure == 4">高压</font>
</el-form-item>
<el-form-item label="管道长度:" prop="pipeLength">
<font>{{form.pipeLength}}</font>
</el-form-item>
<el-form-item label="备注信息:" prop="remarks">
<font>{{form.remarks}}</font>
</el-form-item>
</el-form>
<el-form ref="form" v-model="form" :rules="rules" label-width="100px" style="float: left;width: 40%;">
<el-form-item label="管道地址:" prop="pipeAddr">
<font>{{form.pipeAddr}}</font>
</el-form-item>
<el-form-item label="安装时间:" prop="installationTime">
<font>{{form.installationTime}}</font>
</el-form-item>
<el-form-item label="最后巡检时间:" prop="inspectionTime">
<font>{{form.inspectionTime}}</font>
</el-form-item>
<el-form-item label="管道图片:" prop="inspectionTime">
<el-image :src="form.iconUrl" :preview-src-list="[form.iconUrl]" style="width: 90px;"></el-image>
</el-form-item>
</el-form>
</div>
<div id="marbox" style="width: 700px;height: 400px;float: left;margin-top: -25px; border: 1px solid rgb(218, 213, 213);">
<div style="width: 100%;height: 100%" id="container"></div>
</div>
</div>
</div>
</div>
</template>
<script>
import { getPipe } from "@/api/device/pipe";
import gaodeMap from "utils/gaodeMap.js";
import { DEVICE_TYPE } from "utils/gaodeMap.js";
export default {
name: "PipeDetail",
components: {
},
data() {
return {
// 表单参数
form: { },
// 表单校验
rules: { }
};
},
created() {
// 如果是跳转来的,则接受初始化参数
this.pipeId = this.$route.query.pipeId;
this.getDetail();
},
mounted(){
let gaoMap = new gaodeMap("石家庄");
this.gaoMap = gaoMap;
},
methods: {
/** 获取巡检计划详情 */
getDetail (){
getPipe(this.pipeId).then(response =>{
this.form = response.data;
console.log("this.form",this.form)
this.gaoMap.resetMapCenter([this.form.longitude, this.form.latitude]);
this.gaoMap.addMarker(DEVICE_TYPE.WORKORDER, this.form)
});
},
}
}
</script>
<style>
.el-divider--horizontal {
display: block;
height: 1px;
width: 100%;
margin: 20px 0;
}
.feedbackTime-div{
float: left;margin-left: 150px;margin-top: 10px;
}
.feedbackTime{
height: 120px;
width: 120px;
float: left;
margin-left: 15px;
margin-top: 5px;
margin-bottom: 15px;
display: flex;
justify-content: center;
align-items: center;
}
.el-card__body {
padding: 5px 20px 20px 20px;
}
.detail .el-form{
width: 20%;
}
.detail .el-form-item{
margin-bottom: 0px;
}
.avatar-uploader{
width: 25%;
float: left;
}
.avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
border-color: #409EFF;
}
.avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 178px;
height: 178px;
line-height: 178px;
text-align: center;
}
.avatar {
width: 178px;
height: 178px;
display: block;
}
li{
font-size: 15px;
font-weight: 900;
}
</style>
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