Commit c7a64edb authored by zhanglw's avatar zhanglw

边坡数据

parent 1e085c45
...@@ -2824,6 +2824,83 @@ var HttpReq = function(){ ...@@ -2824,6 +2824,83 @@ var HttpReq = function(){
data:data, data:data,
}) })
}, },
slopeGetDeviceList: function(param){
return request({
url: '/api/monitoringEquipment',
method: 'get',
params:param,
})
},
slopeGetDevice: function(param){
return request({
url: '/api/monitoringEquipment/details',
method: 'get',
params:param,
})
},
slopePostDevice: function(data){
return request({
url: '/api/monitoringEquipment',
method: 'POST',
data:data,
})
},
slopePutDevice: function(data){
return request({
url: '/api/monitoringEquipment',
method: 'PUT',
data:data,
})
},
slopeDeleteDevice: function(data){
return request({
url: '/api/monitoringEquipment',
method: 'Delete',
data:data,
})
},
slopeGetMP: function(param){
return request({
url: '/api/mpdata',
method: 'get',
params:param,
})
},
slopeGetMPdevList: function(param){
return request({
url: '/api/mpdata/allMpEquipment',
method: 'get',
params:param,
})
},
slopeGetMPdevData: function(param){
return request({
url: '/api/mpdata/mpChartDataByTime',
method: 'get',
params:param,
})
},
slopeGetRG: function(param){
return request({
url: '/api/rgdata',
method: 'get',
params:param,
})
},
slopeGetRGdevList: function(param){
return request({
url: '/api/rgdata/allRgEquipment',
method: 'get',
params:param,
})
},
slopeGetRGdevData: function(param){
return request({
url: '/api/rgdata/rgChartDataByTime',
method: 'get',
params:param,
})
},
}, },
......
...@@ -19,7 +19,6 @@ ...@@ -19,7 +19,6 @@
<video id="videoRealtime" class="video-js vjs-default-skin vjs-big-play-centered" controls preload="auto" data-setup="{}" style="width: 100%;height: 100%;"> <video id="videoRealtime" class="video-js vjs-default-skin vjs-big-play-centered" controls preload="auto" data-setup="{}" style="width: 100%;height: 100%;">
您的浏览器不支持:HTML5 video. 您的浏览器不支持:HTML5 video.
</video> </video>
noPtzCameraList
<el-select v-model="cameraSrc" class="noPtzCameraList" @change="videoPlay()"> <el-select v-model="cameraSrc" class="noPtzCameraList" @change="videoPlay()">
<el-option v-for="item in cameraList" :key="item.id" :label="item.monitorName" :value="item.monitorUrl" style="font-size:16px;font-weight:400"></el-option> <el-option v-for="item in cameraList" :key="item.id" :label="item.monitorName" :value="item.monitorUrl" style="font-size:16px;font-weight:400"></el-option>
</el-select> </el-select>
...@@ -182,9 +181,6 @@ export default { ...@@ -182,9 +181,6 @@ export default {
}, function () { }, function () {
console.log('video ready!') console.log('video ready!')
}) })
setTimeout(()=>{
},3000);
}, },
methods: { methods: {
filterNode(value, data) { filterNode(value, data) {
......
...@@ -130,7 +130,7 @@ ...@@ -130,7 +130,7 @@
} }
.mars3d-container { .mars3d-container {
height: 100%; height: 100%;
width: 100vw; width: 100%;
overflow: hidden; overflow: hidden;
} }
......
...@@ -32,12 +32,14 @@ import router from './router/routers' ...@@ -32,12 +32,14 @@ import router from './router/routers'
import './assets/icons' // icon import './assets/icons' // icon
import './router/index' // permission control import './router/index' // permission control
import 'echarts-gl' import 'echarts-gl'
import print from 'vue-print-nb'
Vue.use(checkPer) Vue.use(checkPer)
Vue.use(VueHighlightJS) Vue.use(VueHighlightJS)
Vue.use(mavonEditor) Vue.use(mavonEditor)
Vue.use(permission) Vue.use(permission)
Vue.use(dict) Vue.use(dict)
Vue.use(print);
Vue.use(Element, { Vue.use(Element, {
size: Cookies.get('size') || 'small' // set element-ui default size size: Cookies.get('size') || 'small' // set element-ui default size
}) })
......
...@@ -466,6 +466,7 @@ export default { ...@@ -466,6 +466,7 @@ export default {
}, },
selectedCar(item) { selectedCar(item) {
this.selectedCarid = item.id; this.selectedCarid = item.id;
this.$parent.locateCarByNumber(item.carNumber);
}, },
checkedCarByList(item) { checkedCarByList(item) {
item.flag = !item.flag; item.flag = !item.flag;
......
...@@ -41,11 +41,15 @@ ...@@ -41,11 +41,15 @@
</div> </div>
<!-- 嵌入三维地图页面 --> <!-- 嵌入三维地图页面 -->
<!-- <iframe :src="url" frameborder="0" class="mapcontainer1"></iframe>--> <!-- <iframe :src="url" frameborder="0" class="mapcontainer1"></iframe>-->
<iframe src="http://192.168.3.60:18041//#/Index" frameborder="0" class="mapcontainer1"></iframe> <!-- <iframe ref="iframe" src="http://192.168.3.60:18041//#/Index" frameborder="0" class="mapcontainer1"></iframe>-->
<!-- <iframe ref="iframe" src="http://192.168.3.38:3002/#/Index" frameborder="0" class="mapcontainer1"></iframe>-->
<!-- 单个车辆视频监控 --> <!-- 单个车辆视频监控 -->
<div class="monitorCover1" v-if="monitorCover1Show">
<div class="monitorCover1" v-show="monitorCover1Show">
<div class="monitorCover1_closePic" @click="closeMonitorCoverFn"></div> <div class="monitorCover1_closePic" @click="closeMonitorCoverFn"></div>
<iframe :src="iframeSrc" class="monitorCover1_Video"></iframe> <video id="videoRealtime" class="video-js vjs-default-skin vjs-big-play-centered monitorCover1_Video" controls preload="auto" data-setup="{}">
您的浏览器不支持:HTML5 video.
</video>
</div> </div>
<img src="../../assets/images/cutGraph/maplogo1.jpg" class="maplogo1Img"> <img src="../../assets/images/cutGraph/maplogo1.jpg" class="maplogo1Img">
</div> </div>
...@@ -83,6 +87,9 @@ import DPcomputer25 from './components/smallComponents/DPcomputer25.vue' ...@@ -83,6 +87,9 @@ import DPcomputer25 from './components/smallComponents/DPcomputer25.vue'
import DPcomputer26 from './components/smallComponents/DPcomputer26.vue' import DPcomputer26 from './components/smallComponents/DPcomputer26.vue'
import DPcomputer27 from './components/smallComponents/DPcomputer27.vue' import DPcomputer27 from './components/smallComponents/DPcomputer27.vue'
import DPcomputer28 from './components/smallComponents/DPcomputer28.vue' import DPcomputer28 from './components/smallComponents/DPcomputer28.vue'
import 'video.js/dist/video-js.css'
import videojs from 'video.js'
import 'videojs-contrib-hls'
export default { export default {
components: { components: {
...@@ -172,8 +179,24 @@ export default { ...@@ -172,8 +179,24 @@ export default {
}, 20000) }, 20000)
//与嵌入的地图页面进行交互 //与嵌入的地图页面进行交互
window.addEventListener('message', this.handleMessage); window.addEventListener('message', this.handleMessage);
this.videoPlayer = videojs('videoRealtime', {
bigPlayButton: false,
textTrackDisplay: false,
posterImage: true,
errorDisplay: false,
controlBar: true
}, function () {
console.log('video ready!')
})
}, },
methods: { methods: {
locateCarByNumber(number){
this.iframeWin = this.$refs.iframe.contentWindow;
this.iframeWin.postMessage({
fnName: 'locateCarByNumber',
parameter: number
}, '*')
},
loadData() { loadData() {
let leftTemporaryData = []; let leftTemporaryData = [];
let rightTemporaryData = []; let rightTemporaryData = [];
...@@ -409,25 +432,45 @@ export default { ...@@ -409,25 +432,45 @@ export default {
this.videoSelectStyle = 2; this.videoSelectStyle = 2;
}, },
//获取当前时间 //获取当前时间
setNowTimes () { setNowTimes() {
let myDate = new Date(); let myDate = new Date();
let wk = myDate.getDay(); let wk = myDate.getDay();
let yy = String(myDate.getFullYear()); let yy = String(myDate.getFullYear());
let mm = String((myDate.getMonth() + 1) < 10 ? '0' + (myDate.getMonth() + 1) : (myDate.getMonth() + 1)); let mm = String((myDate.getMonth() + 1) < 10 ? '0' + (myDate.getMonth() + 1) : (myDate.getMonth() + 1));
let dd = String(myDate.getDate() < 10 ? '0' + myDate.getDate() : myDate.getDate()); let dd = String(myDate.getDate() < 10 ? '0' + myDate.getDate() : myDate.getDate());
let hou = String(myDate.getHours() < 10 ? '0' + myDate.getHours() : myDate.getHours()); let hou = String(myDate.getHours() < 10 ? '0' + myDate.getHours() : myDate.getHours());
let min = String(myDate.getMinutes() < 10 ? '0' + myDate.getMinutes() : myDate.getMinutes()); let min = String(myDate.getMinutes() < 10 ? '0' + myDate.getMinutes() : myDate.getMinutes());
let sec = String(myDate.getSeconds() < 10 ? '0' + myDate.getSeconds() : myDate.getSeconds()); let sec = String(myDate.getSeconds() < 10 ? '0' + myDate.getSeconds() : myDate.getSeconds());
let weeks = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']; let weeks = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
let week = weeks[wk]; let week = weeks[wk];
this.currentTime = yy + '/' + mm + '/' + dd + ' ' + hou + ':' + min; this.currentTime = yy + '/' + mm + '/' + dd + ' ' + hou + ':' + min;
}, },
videoPlay() {
this.videoPlayer.src({src: this.cameraSrc, type: 'application/x-mpegURL'});
this.videoPlayer.play();
},
//与iframe的页面进行数据交互 //与iframe的页面进行数据交互
handleMessage(event){//event.data为传递的参数 handleMessage(event){//event.data为传递的参数
//这里的判断是因为此方法会多次触发,通过参数是否存在可以判断是否为子页面传递的参数,再做出相应的操作 //这里的判断是因为此方法会多次触发,通过参数是否存在可以判断是否为子页面传递的参数,再做出相应的操作
if(event.data.data.hasOwnProperty("url")){ if(event.data.data.hasOwnProperty("url")){
if(event.data.data.url == '监控'){ if(event.data.data.url == '监控'){
this.iframeSrc = this.defaultIframeSrc + event.data.data.data; let number = event.data.data.data;
HttpReq.truckDispatching.jkcarMonitorFind({carNumber: number}).then((res) => {
if (res.code == 200) {
if(res.data && res.data.length){
this.noPtz = true;
this.cameraList = res.data;
this.cameraSrc = this.cameraList[0].monitorUrl;
this.videoPlay();
}else{
this.$notify({
title: '该车无视频监控!',
type: 'warning',
duration: 2500
});
}
}
})
this.monitorCover1Show = true; this.monitorCover1Show = true;
} }
} }
...@@ -690,6 +733,6 @@ export default { ...@@ -690,6 +733,6 @@ export default {
left: 50vw; left: 50vw;
transform: translateX(-50%); transform: translateX(-50%);
width: 80vw; width: 80vw;
height: 90vh; height: 90vh;
} }
</style> </style>
...@@ -6,14 +6,14 @@ ...@@ -6,14 +6,14 @@
<div class="head-container"> <div class="head-container">
<!-- 搜索 --> <!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">设备号</label> <label class="el-form-item-label" style="font-weight: 500;">设备号</label>
<el-input v-model="query.formId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/> <el-input v-model="query.sensorId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/>
<label class="el-form-item-label" style="font-weight: 500;">报警状态</label> <label class="el-form-item-label" style="font-weight: 500;">报警状态</label>
<el-select v-model="query.stu" placeholder="请选择"> <el-select v-model="query.alarmStatus" placeholder="请选择">
<el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label> <label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker <el-date-picker
v-model="query.createTime" v-model="query.timeList"
type="datetimerange" type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS" value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至" range-separator="至"
...@@ -32,11 +32,11 @@ ...@@ -32,11 +32,11 @@
<div class="content-fix"> <div class="content-fix">
<div class="toolbar" style="text-align:right"> <div class="toolbar" style="text-align:right">
<el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button> <el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button>
<el-button size="mini" type="success" icon="el-icon-s-data" @click="toAdd">图表</el-button>
<el-button size="mini" type="warning" icon="el-icon-document" @click="toAdd">导出</el-button> <el-button size="mini" type="warning" icon="el-icon-document" @click="toAdd">导出</el-button>
<el-button size="mini" icon="el-icon-printer" v-print="printObj" @click="printeTable">打印</el-button>
</div> </div>
<div class="content"> <div class="content">
<el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName"> <el-table id="printContainer" :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName">
<el-table-column prop="formId" label="设备名称" align="center"></el-table-column> <el-table-column prop="formId" label="设备名称" align="center"></el-table-column>
<el-table-column prop="username" label="设备编号" align="center"></el-table-column> <el-table-column prop="username" label="设备编号" align="center"></el-table-column>
<el-table-column prop="carNo" label="状态" align="center"></el-table-column> <el-table-column prop="carNo" label="状态" align="center"></el-table-column>
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
<el-table-column prop="createTime" label="报警时间" align="center"></el-table-column> <el-table-column prop="createTime" label="报警时间" align="center"></el-table-column>
<el-table-column prop="carNo" label="解除报警原因" align="center"></el-table-column> <el-table-column prop="carNo" label="解除报警原因" align="center"></el-table-column>
<el-table-column prop="createTime" label="解除报警时间" align="center"></el-table-column> <el-table-column prop="createTime" label="解除报警时间" align="center"></el-table-column>
<el-table-column label="操作" align="center" fixed="right"> <el-table-column label="操作" align="center" v-if="!isPrint">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="primary" icon="el-icon-close-notification" @click="toEdit(scope.row)"></el-button> <el-button size="mini" type="primary" icon="el-icon-close-notification" @click="toEdit(scope.row)"></el-button>
</template> </template>
...@@ -62,13 +62,6 @@ ...@@ -62,13 +62,6 @@
</div> </div>
</div> </div>
<!-- 表单渲染 --> <!-- 表单渲染 -->
<el-dialog append-to-body :close-on-click-modal="true" :before-close="cancelForm" :visible.sync="visible" :title="title" width="800px">
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="cancelForm">取消</el-button>
<el-button type="primary" @click="submitForm('formViewRef', formData)">确认</el-button>
</div>
</el-dialog>
<!-- 表单渲染 -->
<el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="editVisible" title="解除报警" width="500px"> <el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="editVisible" title="解除报警" width="500px">
<el-form :model="formData" :rules="rules" ref="formViewRef" :inline="true" label-width="180px"> <el-form :model="formData" :rules="rules" ref="formViewRef" :inline="true" label-width="180px">
<el-form-item label="解除时长:" class="form-cell" prop="name" style="width:100%"> <el-form-item label="解除时长:" class="form-cell" prop="name" style="width:100%">
...@@ -98,16 +91,9 @@ ...@@ -98,16 +91,9 @@
<script> <script>
import {Tools, HttpReq, Dates} from '@/assets/js/common.js'; import {Tools, HttpReq, Dates} from '@/assets/js/common.js';
import mars3dViewerMap from "../../../components/mars3d/Map5.vue";
import * as mars3d from "mars3d";
import * as Cesium from "mars3d-cesium";
import kongzhidiantubiao from "../../../assets/images/cutGraph/kongzhidian1.png";
export default { export default {
name: 'alarmManagement', name: 'alarmManagement',
components: {
mars3dViewerMap,
},
data() { data() {
const basePathUrl = window.basePathUrl || '' const basePathUrl = window.basePathUrl || ''
return { return {
...@@ -116,13 +102,15 @@ export default { ...@@ -116,13 +102,15 @@ export default {
visible: false, visible: false,
editVisible: false, editVisible: false,
loading: false, loading: false,
isPrint: false,
page: 1, page: 1,
size: 10, size: 10,
total: 0, total: 0,
query: {}, query: {},
stuOpts: [ stuOpts: [
{label: '离线', value: 0}, {label: '全部', value: undefined},
{label: '在线', value: 1}, {label: '报警', value: 1},
{label: '正常', value: 0},
], ],
tableData: [], tableData: [],
formData: { formData: {
...@@ -133,6 +121,13 @@ export default { ...@@ -133,6 +121,13 @@ export default {
rules: { rules: {
devNo: {required: true, message: '请填写解除报警原因', trigger: 'blur'}, devNo: {required: true, message: '请填写解除报警原因', trigger: 'blur'},
}, },
printObj: {
id: "printContainer",
popTitle: '打印',
extraHead: '',
targetStyles: ["*"],
closeCallback:()=>{this.isPrint=false},
}
} }
}, },
mounted() { mounted() {
...@@ -158,13 +153,12 @@ export default { ...@@ -158,13 +153,12 @@ export default {
}) })
}) })
}, },
toAdd() {
this.title = '新增';
this.visible = true;
},
toEdit() { toEdit() {
this.editVisible = true; this.editVisible = true;
}, },
printeTable() {
this.isPrint=true;
},
cancelForm() { cancelForm() {
this.visible = false; this.visible = false;
this.editVisible = false; this.editVisible = false;
......
...@@ -6,14 +6,14 @@ ...@@ -6,14 +6,14 @@
<div class="head-container"> <div class="head-container">
<!-- 搜索 --> <!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">设备号</label> <label class="el-form-item-label" style="font-weight: 500;">设备号</label>
<el-input v-model="query.formId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/> <el-input v-model="query.sensorId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/>
<label class="el-form-item-label" style="font-weight: 500;">报警状态</label> <label class="el-form-item-label" style="font-weight: 500;">报警状态</label>
<el-select v-model="query.stu" placeholder="请选择"> <el-select v-model="query.alarmStatus" placeholder="请选择">
<el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label> <label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker <el-date-picker
v-model="query.createTime" v-model="query.timeList"
type="datetimerange" type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS" value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至" range-separator="至"
...@@ -73,16 +73,8 @@ ...@@ -73,16 +73,8 @@
<script> <script>
import {Tools, HttpReq, Dates} from '@/assets/js/common.js'; import {Tools, HttpReq, Dates} from '@/assets/js/common.js';
import mars3dViewerMap from "../../../components/mars3d/Map5.vue";
import * as mars3d from "mars3d";
import * as Cesium from "mars3d-cesium";
import kongzhidiantubiao from "../../../assets/images/cutGraph/kongzhidian1.png";
export default { export default {
name: 'environmentalMonitoring', name: 'environmentalMonitoring',
components: {
mars3dViewerMap,
},
data() { data() {
const basePathUrl = window.basePathUrl || '' const basePathUrl = window.basePathUrl || ''
return { return {
...@@ -91,8 +83,9 @@ export default { ...@@ -91,8 +83,9 @@ export default {
visible: false, visible: false,
loading: false, loading: false,
stuOpts: [ stuOpts: [
{label: '离线', value: 0}, {label: '全部', value: undefined},
{label: '在线', value: 1}, {label: '报警', value: 1},
{label: '正常', value: 0},
], ],
page: 1, page: 1,
size: 10, size: 10,
......
...@@ -6,14 +6,14 @@ ...@@ -6,14 +6,14 @@
<div class="head-container"> <div class="head-container">
<!-- 搜索 --> <!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">设备号</label> <label class="el-form-item-label" style="font-weight: 500;">设备号</label>
<el-input v-model="query.formId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/> <el-input v-model="query.sensorId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/>
<label class="el-form-item-label" style="font-weight: 500;">报警状态</label> <label class="el-form-item-label" style="font-weight: 500;">报警状态</label>
<el-select v-model="query.stu" placeholder="请选择"> <el-select v-model="query.alarmStatus" placeholder="请选择">
<el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label> <label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker <el-date-picker
v-model="query.createTime" v-model="query.timeList"
type="datetimerange" type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS" value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至" range-separator="至"
...@@ -32,17 +32,25 @@ ...@@ -32,17 +32,25 @@
<div class="content-fix"> <div class="content-fix">
<div class="toolbar" style="text-align:right"> <div class="toolbar" style="text-align:right">
<el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button> <el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button>
<el-button size="mini" type="success" icon="el-icon-s-data" @click="toAdd">图表</el-button> <el-button size="mini" type="success" icon="el-icon-s-data" @click="charstView">图表</el-button>
<el-button size="mini" type="warning" icon="el-icon-document" @click="toAdd">导出</el-button> <el-button size="mini" type="warning" icon="el-icon-document" @click="downloadFile">导出</el-button>
</div> </div>
<div class="content"> <div class="content">
<el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName"> <el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName">
<el-table-column prop="formId" label="设备名称" align="center"></el-table-column> <el-table-column prop="sensorname" label="设备名称" align="center"></el-table-column>
<el-table-column prop="username" label="设备编号" align="center"></el-table-column> <el-table-column prop="sensorid" label="设备编号" align="center"></el-table-column>
<el-table-column prop="carNo" label="检测值" align="center"></el-table-column> <el-table-column prop="zongliang" label="检测值" align="center"></el-table-column>
<el-table-column prop="carClass" label="单位" align="center"></el-table-column> <el-table-column label="单位" align="center">
<el-table-column prop="createTime" label="是否报警" align="center"></el-table-column> <template slot-scope="scope">
<el-table-column prop="createTime" label="监测时间" align="center"></el-table-column> mm
</template>
</el-table-column>
<el-table-column prop="state" label="是否报警" align="center">
<template slot-scope="scope">
<span>{{ scope.row.state?'报警':'正常'}}</span>
</template>
</el-table-column>
<el-table-column prop="time" label="监测时间" align="center"></el-table-column>
</el-table> </el-table>
<!--分页组件--> <!--分页组件-->
<el-pagination :total="total" :current-page="page" style="margin-top: 8px;" <el-pagination :total="total" :current-page="page" style="margin-top: 8px;"
...@@ -54,11 +62,27 @@ ...@@ -54,11 +62,27 @@
</div> </div>
</div> </div>
<!-- 表单渲染 --> <!-- 表单渲染 -->
<el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="visible" :title="title" width="800px"> <el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible="visible" :title="title" width="1200px">
<div class="head-container">
<!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">当前设备:</label>
<el-select v-model="search.sensorId" placeholder="请选择">
<el-option v-for="item in devList" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker
v-model="search.timeList"
type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
<el-button size="mini" type="success" icon="el-icon-search" @click="toSearchDev">搜索</el-button>
</div>
<div id="chartPanel" style="width:100%;height: 600px;"></div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="cancelForm">取消</el-button> <el-button @click="cancelForm">关闭</el-button>
<el-button type="primary" @click="submitForm('formViewRef', formData)">确认</el-button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -67,16 +91,10 @@ ...@@ -67,16 +91,10 @@
<script> <script>
import {Tools, HttpReq, Dates} from '@/assets/js/common.js'; import {Tools, HttpReq, Dates} from '@/assets/js/common.js';
import mars3dViewerMap from "../../../components/mars3d/Map5.vue"; import * as echarts from 'echarts';
import * as mars3d from "mars3d";
import * as Cesium from "mars3d-cesium";
import kongzhidiantubiao from "../../../assets/images/cutGraph/kongzhidian1.png";
export default { export default {
name: 'precipitationLog', name: 'surfaceDisplacementLog',
components: {
mars3dViewerMap,
},
data() { data() {
const basePathUrl = window.basePathUrl || '' const basePathUrl = window.basePathUrl || ''
return { return {
...@@ -85,14 +103,21 @@ export default { ...@@ -85,14 +103,21 @@ export default {
visible: false, visible: false,
loading: false, loading: false,
stuOpts: [ stuOpts: [
{label: '离线', value: 0}, {label: '全部', value: undefined},
{label: '在线', value: 1}, {label: '报警', value: 1},
{label: '正常', value: 0},
], ],
page: 1, page: 1,
size: 10, size: 10,
total: 0, total: 0,
query: {}, query: {},
tableData: [], tableData: [],
search: {
sensorId: '',
timeList: '',
},
devList: [],
myChart: null,
} }
}, },
mounted() { mounted() {
...@@ -107,9 +132,12 @@ export default { ...@@ -107,9 +132,12 @@ export default {
param.page = this.page - 1; param.page = this.page - 1;
param.pageSize = this.size; param.pageSize = this.size;
param.sort = sort; param.sort = sort;
if(param.timeList && param.timeList.length){
param.startTime = param.timeList[0];
param.endTime = param.timeList[1];
}
this.$nextTick(() => { this.$nextTick(() => {
//获取安检信息 HttpReq.truckDispatching.slopeGetRG(param).then((res) => {
HttpReq.truckDispatching.ajReportListFind(param).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.loading = false; this.loading = false;
this.tableData = res.data.records; this.tableData = res.data.records;
...@@ -118,24 +146,103 @@ export default { ...@@ -118,24 +146,103 @@ export default {
}) })
}) })
}, },
toAdd() { charstView() {
this.title = '新增'; this.devList=[];
this.title = '图表';
this.visible = true; this.visible = true;
HttpReq.truckDispatching.slopeGetRGdevList().then((res) => {
if (res.code == 200 && res.data) {
res.data.forEach((item)=>{
this.devList.push({
lable: item.equipno,
value: item.equipno,
});
});
this.search.sensorId = this.devList[0].value;
this.toSearchDev();
}
})
}, },
toEdit() { toSearchDev(){
var param = this.search;
if(param.timeList && param.timeList.length){
param.startTime = param.timeList[0];
param.endTime = param.timeList[1];
}
this.$nextTick(() => {
HttpReq.truckDispatching.slopeGetRGdevData(param).then((res) => {
if (res.code == 200 && res.data) {
let option = {
color: [
'#ff3c3c',
'#ffd700',
'#00bfff',
],
tooltip: {
trigger: 'axis',
position: function (pt) {
return [pt[0], '10%'];
}
},
toolbox: {
show: true,
feature: {
dataView: { show: false },
magicType: { type: ['line', 'bar'] },
restore: { show: false },
saveAsImage: { show: false },
dataZoom: { show: false },
}
},
legend: {
data: ['X', 'Y', 'Z']
},
xAxis: {
type: 'time',
boundaryGap: false,
splitLine:{
show:false,
}
},
yAxis: {
type: 'value',
boundaryGap: [0, '100%'],
axisLine:{
show:false,
}
},
dataZoom: [
{
show: true,
realtime: true,
start: 0,
end: 100,
moveOnMouseMove: false,
},
{
type: 'inside',
realtime: true,
start: 0,
end: 100,
moveOnMouseMove: false,
}
],
series: [
{
name: '检测值',
type: 'line',
data: res.data.x
}
]
};
let myChart = echarts.init(document.getElementById('chartPanel'));
myChart.setOption(option);
}
})
})
}, },
downloadFile() {
toDelete(item) {
var id = item.id;
this.$confirm('确认删除该条数据吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then((e) => {
}).catch((e) => {
})
}, },
cancelForm() { cancelForm() {
this.visible = false; this.visible = false;
...@@ -161,18 +268,6 @@ export default { ...@@ -161,18 +268,6 @@ export default {
this.size = e this.size = e
this.loadData() this.loadData()
}, },
submitForm(validateName, item) {
this.$refs[validateName].validate(valid => {
if (valid) {
// if (this.title === '新增') {
// this.reqAddItem(this.form, item)
// } else {
// this.reqUpdateItem(this.form, item)
// }
alert(9999);
}
});
},
}, },
} }
</script> </script>
......
...@@ -6,20 +6,11 @@ ...@@ -6,20 +6,11 @@
<div class="head-container"> <div class="head-container">
<!-- 搜索 --> <!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">设备号</label> <label class="el-form-item-label" style="font-weight: 500;">设备号</label>
<el-input v-model="query.formId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/> <el-input v-model="query.equipno" clearable size="small" placeholder="请输入设备号" style="width:180px;"/>
<label class="el-form-item-label" style="font-weight: 500;">在线状态</label> <label class="el-form-item-label" style="font-weight: 500;">在线状态</label>
<el-select v-model="query.stu" placeholder="请选择"> <el-select v-model="query.onlineStatus" placeholder="请选择">
<el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker
v-model="query.createTime"
type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
<el-button size="mini" type="success" icon="el-icon-search" @click="toSearch">搜索</el-button> <el-button size="mini" type="success" icon="el-icon-search" @click="toSearch">搜索</el-button>
<el-button size="mini" icon="el-icon-refresh" @click="clearLimit">重置</el-button> <el-button size="mini" icon="el-icon-refresh" @click="clearLimit">重置</el-button>
</div> </div>
...@@ -35,14 +26,18 @@ ...@@ -35,14 +26,18 @@
</div> </div>
<div class="content"> <div class="content">
<el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName"> <el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName">
<el-table-column prop="formId" label="设备名称" align="center"></el-table-column> <el-table-column prop="equipname" label="设备名称" align="center"></el-table-column>
<el-table-column prop="username" label="设备类型" align="center"></el-table-column> <el-table-column prop="devicetype" label="设备类型" align="center">
<el-table-column prop="carNo" label="设备编号" align="center"></el-table-column> <template slot-scope="scope">
<el-table-column prop="carClass" label="数值单位" align="center"></el-table-column> <span>{{formatOpt(devOpts, scope.row.devicetype)}}</span>
<el-table-column prop="createTime" label="安装日期" align="center"></el-table-column> </template>
<el-table-column prop="createTime" label="生产厂家" align="center"></el-table-column> </el-table-column>
<el-table-column prop="createTime" label="最后更新时间" align="center"></el-table-column> <el-table-column prop="equipno" label="设备编号" align="center"></el-table-column>
<el-table-column prop="carClass" label="状态" align="center"></el-table-column> <el-table-column prop="eqdanwei" label="数值单位" align="center"></el-table-column>
<el-table-column prop="installationdata" label="安装日期" align="center"></el-table-column>
<el-table-column prop="manufacture" label="生产厂家" align="center"></el-table-column>
<el-table-column prop="datarealtime" label="最后更新时间" align="center"></el-table-column>
<el-table-column prop="onlineStatus" label="状态" align="center"></el-table-column>
<el-table-column label="操作" align="center" fixed="right"> <el-table-column label="操作" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="primary" icon="el-icon-edit" @click="toEdit(scope.row)"></el-button> <el-button size="mini" type="primary" icon="el-icon-edit" @click="toEdit(scope.row)"></el-button>
...@@ -65,19 +60,19 @@ ...@@ -65,19 +60,19 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备名称:" prop="name" class="form-cell"> <el-form-item label="设备名称:" prop="equipname" class="form-cell">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.name" class="cell-input"></el-input> <el-input v-model="formData.equipname" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备类型:" class="form-cell" prop="devType"> <el-form-item label="设备类型:" class="form-cell" prop="devicetype">
<div class="cell-box"> <div class="cell-box">
<el-select v-model="formData.devType" placeholder="无" class="cell-input"> <el-select v-model="formData.devicetype" placeholder="无" class="cell-input">
<el-option v-for="item in sdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in devOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</div> </div>
</el-form-item> </el-form-item>
...@@ -87,18 +82,18 @@ ...@@ -87,18 +82,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备编号:" class="form-cell" prop="devNo"> <el-form-item label="设备编号:" class="form-cell" prop="equipno">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.devNo" class="cell-input"></el-input> <el-input v-model="formData.equipno" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="数值单位:" class="form-cell" prop="devUnit"> <el-form-item label="数值单位:" class="form-cell" prop="eqdanwei">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.devUnit" class="cell-input"></el-input> <el-input v-model="formData.eqdanwei" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -107,30 +102,40 @@ ...@@ -107,30 +102,40 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="安装日期:" class="form-cell" prop="installDate"> <el-form-item label="安装日期:" class="form-cell" prop="installationdata">
<div class="cell-box"> <div class="cell-box">
<el-date-picker v-model="formData.installDate" type="date" placeholder="选择日期"></el-date-picker> <el-date-picker v-model="formData.installationdata" type="date" placeholder="选择日期"></el-date-picker>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="生产厂家:" class="form-cell" prop="manufactor"> <el-form-item label="生产厂家:" class="form-cell" prop="manufacture">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.manufactor" class="cell-input"></el-input> <el-input v-model="formData.manufacture" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="grid-content">
<el-form-item label="安装位置:" class="form-cell" prop="longitude" style="height: 36px">
<div class="cell-box">
<div v-show="formData.longitude">{{ formData.longitude }},{{ formData.latitude }}</div>
</div>
</el-form-item>
</div>
</el-col>
<el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="安装位置:" class="form-cell" prop="lng" style="height: 36px"> <el-form-item label="是否是基准点:" class="form-cell" prop="datumpoint">
<div class="cell-box" style="display: flex"> <div class="cell-box">
<div style="width: 200px">经度: {{ formData.lng }}</div> <el-select v-model="formData.datumpoint" placeholder="无" class="cell-input">
<div style="width: 200px">纬度: {{ formData.lat }}</div> <el-option v-for="item in datOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -140,8 +145,7 @@ ...@@ -140,8 +145,7 @@
<el-col :span="24"> <el-col :span="24">
<div class="grid-content"> <div class="grid-content">
<div id="centerDiv" class="mapcontainer"> <div id="centerDiv" class="mapcontainer">
<mars3dViewerMap :url="configUrl" @onload="onMapload" ref="mars3dViewerMapMethod" <mars3dViewerMap :url="configUrl" @onload="onMapload" ref="mars3dViewerMapMethod" mapKey="mapPointView"/>
mapKey="mapPointView"/>
</div> </div>
</div> </div>
</el-col> </el-col>
...@@ -149,18 +153,18 @@ ...@@ -149,18 +153,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="安装高度:" class="form-cell"> <el-form-item label="安装高度:" class="form-cell" prop="installheight">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.installheight" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="供电和通信方式:" class="form-cell"> <el-form-item label="供电和通信方式:" class="form-cell" prop="electricitysupply">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.electricitysupply" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -169,18 +173,18 @@ ...@@ -169,18 +173,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备精度:" class="form-cell"> <el-form-item label="设备精度:" class="form-cell" prop="accuracy">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.accuracy" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="海拔(米):" class="form-cell"> <el-form-item label="海拔(米):" class="form-cell" prop="altitude">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.altitude" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -189,18 +193,18 @@ ...@@ -189,18 +193,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="一级预警阈值:" class="form-cell"> <el-form-item label="一级预警阈值:" class="form-cell" prop="onelevelalarm">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.onelevelalarm" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="二级预警阈值:" class="form-cell"> <el-form-item label="二级预警阈值:" class="form-cell" prop="twolevelalarm">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.twolevelalarm" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -209,18 +213,18 @@ ...@@ -209,18 +213,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="三级预警阈值:" class="form-cell"> <el-form-item label="三级预警阈值:" class="form-cell" prop="threelevelalarm">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.threelevelalarm" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="四级预警阈值:" class="form-cell"> <el-form-item label="四级预警阈值:" class="form-cell" prop="fourlevelalarm">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.fourlevelalarm" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -229,10 +233,10 @@ ...@@ -229,10 +233,10 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="在用状态:" class="form-cell"> <el-form-item label="在用状态:" class="form-cell" prop="isUsed">
<div class="cell-box"> <div class="cell-box">
<el-select v-model="formData.xxxxx" placeholder="无" class="cell-input"> <el-select v-model="formData.isUsed" placeholder="无" class="cell-input">
<el-option v-for="item in sdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in usedOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</div> </div>
</el-form-item> </el-form-item>
...@@ -242,9 +246,7 @@ ...@@ -242,9 +246,7 @@
<div class="grid-content"> <div class="grid-content">
<el-form-item label="同步状态:" class="form-cell"> <el-form-item label="同步状态:" class="form-cell">
<div class="cell-box"> <div class="cell-box">
<el-select v-model="formData.xxxxx" placeholder="无" class="cell-input">
<el-option v-for="item in sdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -253,19 +255,19 @@ ...@@ -253,19 +255,19 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备ip地址:" class="form-cell"> <el-form-item label="设备ip地址:" class="form-cell" prop="ipaddress">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.ipaddress" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="网络类型:" class="form-cell"> <el-form-item label="网络类型:" class="form-cell" prop="eqtype">
<div class="cell-box"> <div class="cell-box">
<el-select v-model="formData.xxxxx" placeholder="无" class="cell-input"> <el-select v-model="formData.eqtype" placeholder="无" class="cell-input">
<el-option v-for="item in sdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in eqtOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</div> </div>
</el-form-item> </el-form-item>
...@@ -275,18 +277,18 @@ ...@@ -275,18 +277,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="传感器初始值:" class="form-cell"> <el-form-item label="传感器初始值:" class="form-cell" prop="initial">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.initial" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="初始值x方向:" class="form-cell"> <el-form-item label="初始值x方向:" class="form-cell" prop="initialx">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.initialx" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -295,18 +297,18 @@ ...@@ -295,18 +297,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="初始值y方向:" class="form-cell"> <el-form-item label="初始值y方向:" class="form-cell" prop="initialy">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.initialy" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="初始值z方向:" class="form-cell"> <el-form-item label="初始值z方向:" class="form-cell" prop="initialz">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.initialz" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -315,10 +317,10 @@ ...@@ -315,10 +317,10 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="报警状态:" class="form-cell"> <el-form-item label="报警状态:" class="form-cell" prop="state">
<div class="cell-box"> <div class="cell-box">
<el-select v-model="formData.xxxxx" placeholder="无" class="cell-input"> <el-select v-model="formData.state" placeholder="无" class="cell-input">
<el-option v-for="item in sdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in bjOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</div> </div>
</el-form-item> </el-form-item>
...@@ -326,9 +328,9 @@ ...@@ -326,9 +328,9 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="浸润线埋深(米):" class="form-cell"> <el-form-item label="浸润线埋深(米):" class="form-cell" prop="burialDepth">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.burialDepth" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -337,18 +339,20 @@ ...@@ -337,18 +339,20 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="检验周期:" class="form-cell"> <el-form-item label="检验周期:" class="form-cell" prop="checkperiod">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.checkperiod" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="库水位设备类型:" class="form-cell"> <el-form-item label="库水位设备类型:" class="form-cell" prop="sensortype">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-select v-model="formData.sensortype" placeholder="无" class="cell-input">
<el-option v-for="item in ssOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -357,18 +361,18 @@ ...@@ -357,18 +361,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="X位移:" class="form-cell"> <el-form-item label="X位移:" class="form-cell" prop="bmwyX">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.bmwyX" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="Y位移:" class="form-cell"> <el-form-item label="Y位移:" class="form-cell" prop="bmwyY">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.bmwyY" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -377,18 +381,18 @@ ...@@ -377,18 +381,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="Z位移:" class="form-cell"> <el-form-item label="Z位移:" class="form-cell" prop="bmwyZ">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.bmwyZ" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="孔深(浸润线):" class="form-cell"> <el-form-item label="孔深(浸润线):" class="form-cell" prop="jrxTrepanning">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.jrxTrepanning" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -397,18 +401,18 @@ ...@@ -397,18 +401,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="设备深度(浸润线):" class="form-cell"> <el-form-item label="设备深度(浸润线):" class="form-cell" prop="jrxBurial">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.jrxBurial" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="距剖面起始点距离:" class="form-cell"> <el-form-item label="距剖面起始点距离:" class="form-cell" prop="jrxCoordX">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.jrxCoordX" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -417,18 +421,18 @@ ...@@ -417,18 +421,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="库水位设备编号:" class="form-cell"> <el-form-item label="干滩库水位设备编号:" class="form-cell" prop="kswequipno">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.kswequipno" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="干滩坡度角:" class="form-cell"> <el-form-item label="干滩坡度角:" class="form-cell" prop="gtwangle">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.gtwangle" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -437,18 +441,18 @@ ...@@ -437,18 +441,18 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="干滩安全超高:" class="form-cell"> <el-form-item label="干滩安全超高:" class="form-cell" prop="gtsafeheight">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.gtsafeheight" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="grid-content"> <div class="grid-content">
<el-form-item label="排水量流速:" class="form-cell"> <el-form-item label="排水量流速:" class="form-cell" prop="pslspeed">
<div class="cell-box"> <div class="cell-box">
<el-input v-model="formData.xxxxx" class="cell-input"></el-input> <el-input v-model="formData.pslspeed" class="cell-input"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
...@@ -488,33 +492,100 @@ export default { ...@@ -488,33 +492,100 @@ export default {
size: 10, size: 10,
total: 0, total: 0,
query: {}, query: {},
map: null,
graphicLayer: null,
stuOpts: [ stuOpts: [
{label: '离线', value: 0}, {label: '全部', value: undefined},
{label: '在线', value: 1}, {label: '离线', value: '离线'},
{label: '在线', value: '在线'},
],
devOpts: [
{label: '干滩', value: 1},
{label: '库水位', value: 2},
{label: '表面位移', value: 3},
{label: '内部位移', value: 4},
{label: '浸润线', value: 5},
{label: '降雨量', value: 6},
{label: '排流量', value: 7},
{label: '水质', value: 8},
{label: '渗流量', value: 9},
{label: '外坡比', value: 16},
],
datOpts:[
{label: '', value: 1},
{label: '', value: 0},
], ],
sdOptions: [ usedOpts:[
{label: '一类设备', value: 1}, {label: '在用', value: 1},
{label: '二类设备', value: 2}, {label: '不在用', value: 0},
],
eqtOpts:[
{label: '4G设备', value: 0},
{label: 'IP设备', value: 1},
{label: 'mqtt设备', value: 2},
],
bjOpts:[
{label: '报警', value: 1},
{label: '不报警', value: 0},
],
ssOpts: [
{label: 'gnss', value: 0},
{label: '超声', value: 1},
{label: '投入式水位计或渗压计', value: 2},
{label: '沉降', value: 3},
{label: '雨量', value: 5},
{label: '测斜', value: 7},
], ],
tableData: [], tableData: [],
formData: { formData: {
lng: '', longitude: '',
lat: '', latitude: '',
name: '', equipname: '',
devType: '', equipno: '',
devNo: '', devicetype: '',
devUnit: '', eqdanwei: '',
installDate: '', installationdata: '',
manufactor: '', manufacture: '',
datumpoint: 0,
installheight: '',
electricitysupply: '',
accuracy: '',
altitude: '',
onelevelalarm: '',
twolevelalarm: '',
threelevelalarm: '',
fourlevelalarm: '',
isUsed: '',
ipaddress: '',
eqtype: '',
initial: '',
initialx: '',
initialy: '',
initialz: '',
state: '',
burialDepth: '',
checkperiod: '',
sensortype: '',
bmwyX: '',
bmwyY: '',
bmwyZ: '',
jrxTrepanning: '',
jrxBurial: '',
jrxCoordX: '',
kswequipno: '',
gtwangle: '',
gtsafeheight: '',
pslspeed: '',
}, },
rules: { rules: {
lng: {required: true, message: '请在地图上放置设备', trigger: 'blur'}, longitude: {required: true, message: '请在地图上放置设备', trigger: 'blur'},
name: {required: true, message: ' ', trigger: 'blur'}, equipname: {required: true, message: ' ', trigger: 'blur'},
devType: {required: true, message: ' ', trigger: 'blur'}, equipno: {required: true, message: ' ', trigger: 'blur'},
devNo: {required: true, message: ' ', trigger: 'blur'}, devicetype: {required: true, message: ' ', trigger: 'blur'},
devUnit: {required: true, message: ' ', trigger: 'blur'}, eqdanwei: {required: true, message: ' ', trigger: 'blur'},
installDate: {required: true, message: ' ', trigger: 'blur'}, installationdata: {required: true, message: ' ', trigger: 'blur'},
manufactor: {required: true, message: ' ', trigger: 'blur'}, manufacture: {required: true, message: ' ', trigger: 'blur'},
datumpoint: {required: true, message: ' ', trigger: 'blur'},
}, },
} }
}, },
...@@ -524,6 +595,15 @@ export default { ...@@ -524,6 +595,15 @@ export default {
}) })
}, },
methods: { methods: {
formatOpt(arr,val){
let str='';
arr.forEach((item)=>{
if(item.value==val){
str = item.label;
}
});
return str;
},
onMapload(map) { onMapload(map) {
map.unbindContextMenu(); map.unbindContextMenu();
var graphicLayer = new mars3d.layer.GraphicLayer(); var graphicLayer = new mars3d.layer.GraphicLayer();
...@@ -551,12 +631,14 @@ export default { ...@@ -551,12 +631,14 @@ export default {
graphicLayer.addGraphic(graphic); graphicLayer.addGraphic(graphic);
map.on(mars3d.EventType.click, (event) => { map.on(mars3d.EventType.click, (event) => {
let p = mars3d.LngLatPoint.fromCartesian(event.cartesian); let p = mars3d.LngLatPoint.fromCartesian(event.cartesian);
this.formData.lng = p.lng; this.formData.longitude = p.lng;
this.formData.lat = p.lat; this.formData.latitude = p.lat;
graphicLayer.eachGraphic((graphic) => { graphicLayer.eachGraphic((graphic) => {
graphic.addDynamicPosition(Cesium.Cartesian3.fromDegrees(p.lng, p.lat, 0), 0) graphic.addDynamicPosition(Cesium.Cartesian3.fromDegrees(p.lng, p.lat, 0), 0)
}) })
}); });
this.map = map;
this.graphicLayer = graphicLayer;
}, },
loadData() { loadData() {
var sort = 'id,desc'; var sort = 'id,desc';
...@@ -566,7 +648,7 @@ export default { ...@@ -566,7 +648,7 @@ export default {
param.sort = sort; param.sort = sort;
this.$nextTick(() => { this.$nextTick(() => {
//获取安检信息 //获取安检信息
HttpReq.truckDispatching.ajReportListFind(param).then((res) => { HttpReq.truckDispatching.slopeGetDeviceList(param).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.loading = false; this.loading = false;
this.tableData = res.data.records; this.tableData = res.data.records;
...@@ -579,10 +661,21 @@ export default { ...@@ -579,10 +661,21 @@ export default {
this.title = '新增'; this.title = '新增';
this.visible = true; this.visible = true;
}, },
toEdit() { toEdit(item) {
HttpReq.truckDispatching.slopeGetDevice({id:item.id}).then((res) => {
if (res.code == 200) {
this.title = '编辑';
this.visible = true;
this.formData = res.data;
setTimeout(() => {
this.graphicLayer.eachGraphic((graphic) => {
graphic.addDynamicPosition(Cesium.Cartesian3.fromDegrees(this.formData.longitude, this.formData.latitude, 0), 0)
})
this.map.setCameraView({ lat: this.formData.latitude, lng: this.formData.longitude });
},5000)
}
})
}, },
toDelete(item) { toDelete(item) {
var id = item.id; var id = item.id;
this.$confirm('确认删除该条数据吗?', '提示', { this.$confirm('确认删除该条数据吗?', '提示', {
...@@ -590,8 +683,15 @@ export default { ...@@ -590,8 +683,15 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then((e) => { }).then((e) => {
HttpReq.truckDispatching.slopeDeleteDevice({id}).then((res) => {
}).catch((e) => { if (res.code == 200) {
this.$message({
message: res.msg,
type: 'success'
});
this.loadData();
}
})
}) })
}, },
cancelForm() { cancelForm() {
...@@ -622,12 +722,29 @@ export default { ...@@ -622,12 +722,29 @@ export default {
submitForm(validateName, item) { submitForm(validateName, item) {
this.$refs[validateName].validate(valid => { this.$refs[validateName].validate(valid => {
if (valid) { if (valid) {
// if (this.title === '新增') { if (this.title === '新增') {
// this.reqAddItem(this.form, item) HttpReq.truckDispatching.slopePostDevice(item).then((res) => {
// } else { if (res.code == 200) {
// this.reqUpdateItem(this.form, item) this.$message({
// } message: res.msg,
alert(9999); type: 'success'
});
this.cancelForm();
this.loadData()
}
})
} else {
HttpReq.truckDispatching.slopePutDevice(item).then((res) => {
if (res.code == 200) {
this.$message({
message: res.msg,
type: 'success'
});
this.cancelForm();
this.loadData()
}
})
}
} }
}); });
}, },
...@@ -657,7 +774,9 @@ export default { ...@@ -657,7 +774,9 @@ export default {
//border: 1px solid rgba(100, 100, 100, 0.1); //border: 1px solid rgba(100, 100, 100, 0.1);
padding: 5px 30px; padding: 5px 30px;
} }
.cell-box {
min-width: 120px;
}
.cell-box .el-input__inner { .cell-box .el-input__inner {
border: 1px solid rgba(100, 100, 100, 0.1); border: 1px solid rgba(100, 100, 100, 0.1);
} }
......
...@@ -6,14 +6,14 @@ ...@@ -6,14 +6,14 @@
<div class="head-container"> <div class="head-container">
<!-- 搜索 --> <!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">设备号</label> <label class="el-form-item-label" style="font-weight: 500;">设备号</label>
<el-input v-model="query.formId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/> <el-input v-model="query.sensorId" clearable size="small" placeholder="请输入设备号" style="width:180px;"/>
<label class="el-form-item-label" style="font-weight: 500;">报警状态</label> <label class="el-form-item-label" style="font-weight: 500;">报警状态</label>
<el-select v-model="query.stu" placeholder="请选择"> <el-select v-model="query.alarmStatus" placeholder="请选择">
<el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option> <el-option v-for="item in stuOpts" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label> <label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker <el-date-picker
v-model="query.createTime" v-model="query.timeList"
type="datetimerange" type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS" value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至" range-separator="至"
...@@ -32,18 +32,22 @@ ...@@ -32,18 +32,22 @@
<div class="content-fix"> <div class="content-fix">
<div class="toolbar" style="text-align:right"> <div class="toolbar" style="text-align:right">
<el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button> <el-button size="mini" type="primary" icon="el-icon-refresh" @click="loadData">刷新</el-button>
<el-button size="mini" type="success" icon="el-icon-s-data" @click="toAdd">图表</el-button> <el-button size="mini" type="success" icon="el-icon-s-data" @click="charstView">图表</el-button>
<el-button size="mini" type="warning" icon="el-icon-document" @click="toAdd">导出</el-button> <el-button size="mini" type="warning" icon="el-icon-document" @click="downloadFile">导出</el-button>
</div> </div>
<div class="content"> <div class="content">
<el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName"> <el-table :data="tableData" v-loading="loading" border style="width:auto" :row-class-name="tableRowClassName">
<el-table-column prop="formId" label="设备名称" align="center"></el-table-column> <el-table-column prop="sensorname" label="设备名称" align="center"></el-table-column>
<el-table-column prop="username" label="设备编号" align="center"></el-table-column> <el-table-column prop="sensorid" label="设备编号" align="center"></el-table-column>
<el-table-column prop="carNo" label="x变化量" align="center"></el-table-column> <el-table-column prop="dispX" label="x变化量" align="center"></el-table-column>
<el-table-column prop="carClass" label="y变化量" align="center"></el-table-column> <el-table-column prop="dispY" label="y变化量" align="center"></el-table-column>
<el-table-column prop="createTime" label="z变化量" align="center"></el-table-column> <el-table-column prop="dispH" label="z变化量" align="center"></el-table-column>
<el-table-column prop="createTime" label="是否报警" align="center"></el-table-column> <el-table-column prop="state" label="是否报警" align="center">
<el-table-column prop="createTime" label="监测时间" align="center"></el-table-column> <template slot-scope="scope">
<span>{{ scope.row.state?'报警':'正常'}}</span>
</template>
</el-table-column>
<el-table-column prop="time" label="监测时间" align="center"></el-table-column>
</el-table> </el-table>
<!--分页组件--> <!--分页组件-->
<el-pagination :total="total" :current-page="page" style="margin-top: 8px;" <el-pagination :total="total" :current-page="page" style="margin-top: 8px;"
...@@ -55,10 +59,27 @@ ...@@ -55,10 +59,27 @@
</div> </div>
</div> </div>
<!-- 表单渲染 --> <!-- 表单渲染 -->
<el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="visible" :title="title" width="800px"> <el-dialog append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible="visible" :title="title" width="1200px">
<div class="head-container">
<!-- 搜索 -->
<label class="el-form-item-label" style="font-weight: 500;">当前设备:</label>
<el-select v-model="search.sensorId" placeholder="请选择">
<el-option v-for="item in devList" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
<label class="el-form-item-label" style="font-weight: 500;">日期范围</label>
<el-date-picker
v-model="search.timeList"
type="datetimerange"
value-format="yyyy-MM-dd HH:MM:SS"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
<el-button size="mini" type="success" icon="el-icon-search" @click="toSearchDev">搜索</el-button>
</div>
<div id="chartPanel" style="width:100%;height: 600px;"></div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="cancelForm">取消</el-button> <el-button @click="cancelForm">关闭</el-button>
<el-button type="primary" @click="submitForm('formViewRef', formData)">确认</el-button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -67,16 +88,10 @@ ...@@ -67,16 +88,10 @@
<script> <script>
import {Tools, HttpReq, Dates} from '@/assets/js/common.js'; import {Tools, HttpReq, Dates} from '@/assets/js/common.js';
import mars3dViewerMap from "../../../components/mars3d/Map5.vue"; import * as echarts from 'echarts';
import * as mars3d from "mars3d";
import * as Cesium from "mars3d-cesium";
import kongzhidiantubiao from "../../../assets/images/cutGraph/kongzhidian1.png";
export default { export default {
name: 'surfaceDisplacementLog', name: 'surfaceDisplacementLog',
components: {
mars3dViewerMap,
},
data() { data() {
const basePathUrl = window.basePathUrl || '' const basePathUrl = window.basePathUrl || ''
return { return {
...@@ -85,14 +100,21 @@ export default { ...@@ -85,14 +100,21 @@ export default {
visible: false, visible: false,
loading: false, loading: false,
stuOpts: [ stuOpts: [
{label: '离线', value: 0}, {label: '全部', value: undefined},
{label: '在线', value: 1}, {label: '报警', value: 1},
{label: '正常', value: 0},
], ],
page: 1, page: 1,
size: 10, size: 10,
total: 0, total: 0,
query: {}, query: {},
tableData: [], tableData: [],
search: {
sensorId: '',
timeList: '',
},
devList: [],
myChart: null,
} }
}, },
mounted() { mounted() {
...@@ -107,9 +129,12 @@ export default { ...@@ -107,9 +129,12 @@ export default {
param.page = this.page - 1; param.page = this.page - 1;
param.pageSize = this.size; param.pageSize = this.size;
param.sort = sort; param.sort = sort;
if(param.timeList && param.timeList.length){
param.startTime = param.timeList[0];
param.endTime = param.timeList[1];
}
this.$nextTick(() => { this.$nextTick(() => {
//获取安检信息 HttpReq.truckDispatching.slopeGetMP(param).then((res) => {
HttpReq.truckDispatching.ajReportListFind(param).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.loading = false; this.loading = false;
this.tableData = res.data.records; this.tableData = res.data.records;
...@@ -118,24 +143,116 @@ export default { ...@@ -118,24 +143,116 @@ export default {
}) })
}) })
}, },
toAdd() { charstView() {
this.title = '新增'; this.devList=[];
this.title = '图表';
this.visible = true; this.visible = true;
HttpReq.truckDispatching.slopeGetMPdevList().then((res) => {
if (res.code == 200 && res.data) {
res.data.forEach((item)=>{
this.devList.push({
lable: item.equipno,
value: item.equipno,
});
});
this.search.sensorId = this.devList[0].value;
// let d = new Date();
// d.setDate(new Date().getDate() - 30);
// this.search.timeList = [d,new Date()]
this.toSearchDev();
}
})
}, },
toEdit() { toSearchDev(){
var param = this.search;
if(param.timeList && param.timeList.length){
param.startTime = param.timeList[0];
param.endTime = param.timeList[1];
}
this.$nextTick(() => {
HttpReq.truckDispatching.slopeGetMPdevData(param).then((res) => {
if (res.code == 200 && res.data) {
let option = {
color: [
'#ff3c3c',
'#ffd700',
'#00bfff',
],
tooltip: {
trigger: 'axis',
position: function (pt) {
return [pt[0], '10%'];
}
},
toolbox: {
show: true,
feature: {
dataView: { show: false },
magicType: { type: ['line', 'bar'] },
restore: { show: false },
saveAsImage: { show: false },
dataZoom: { show: false },
}
},
legend: {
data: ['X', 'Y', 'Z']
},
xAxis: {
type: 'time',
boundaryGap: false,
splitLine:{
show:false,
}
},
yAxis: {
type: 'value',
boundaryGap: [0, '100%'],
axisLine:{
show:false,
}
},
dataZoom: [
{
show: true,
realtime: true,
start: 0,
end: 100,
moveOnMouseMove: false,
},
{
type: 'inside',
realtime: true,
start: 0,
end: 100,
moveOnMouseMove: false,
}
],
series: [
{
name: 'X',
type: 'line',
data: res.data.x
},
{
name: 'Y',
type: 'line',
data: res.data.y
},
{
name: 'Z',
type: 'line',
data: res.data.z
}
]
};
let myChart = echarts.init(document.getElementById('chartPanel'));
myChart.setOption(option);
}
})
})
}, },
downloadFile() {
toDelete(item) {
var id = item.id;
this.$confirm('确认删除该条数据吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then((e) => {
}).catch((e) => {
})
}, },
cancelForm() { cancelForm() {
this.visible = false; this.visible = false;
...@@ -161,18 +278,6 @@ export default { ...@@ -161,18 +278,6 @@ export default {
this.size = e this.size = e
this.loadData() this.loadData()
}, },
submitForm(validateName, item) {
this.$refs[validateName].validate(valid => {
if (valid) {
// if (this.title === '新增') {
// this.reqAddItem(this.form, item)
// } else {
// this.reqUpdateItem(this.form, item)
// }
alert(9999);
}
});
},
}, },
} }
</script> </script>
......
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