feat():首页开发

master
李神峰 2025-12-18 17:53:20 +08:00
parent 56a9d1b312
commit 955ac1d27f
58 changed files with 1062 additions and 821 deletions

View File

@ -19,7 +19,7 @@ $http.beforeRequest = function (options) {
'Authorization': 'Bearer ' + uni.getStorageSync('Gs-Token'), 'Authorization': 'Bearer ' + uni.getStorageSync('Gs-Token'),
loginType: 1 loginType: 1
} }
// if (options.url.indexOf('/gunshiApp/tsg/visitMenuLog/insert') !== -1) { // if (options.url.indexOf('/gunshiApp/hsz/visitMenuLog/insert') !== -1) {
// options.header = { // options.header = {
// ...options.header, // ...options.header,
// loginType: 1 // loginType: 1
@ -45,7 +45,7 @@ uni.$showMsg = function (title, duration = 1500) {
icon: 'none' icon: 'none'
}) })
} }
uni.$stcd = '61610700' uni.$stcd = '232'
Vue.config.productionTip = false Vue.config.productionTip = false
App.mpType = 'app' App.mpType = 'app'

View File

@ -1,8 +1,8 @@
{ {
"name" : "檀树岗水库", "name" : "黑石咀水库",
"appid" : "__UNI__33ED56F", "appid" : "__UNI__DB7153B",
"description" : "", "description" : "",
"versionName" : "1.0.5", "versionName" : "1.0.0",
"versionCode" : 1, "versionCode" : 1,
"transformPx" : false, "transformPx" : false,
"app-plus" : { "app-plus" : {
@ -29,7 +29,7 @@
/* */ /* */
"android" : { "android" : {
/* android */ /* android */
"packagename" : "com.gunshi.tsg", "packagename" : "com.gunshi.hsz",
"permissions" : [ "permissions" : [
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>", "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>", "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",

2
package-lock.json generated
View File

@ -1,5 +1,5 @@
{ {
"name": "tsg-app", "name": "hsz-app",
"version": "1.0.1", "version": "1.0.1",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,

View File

@ -200,6 +200,18 @@
"style": { "style": {
"navigationBarTitleText": "" "navigationBarTitleText": ""
} }
},
{
"path": "pages/yj/detail/skDetail",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/yj/detail/riverDetail",
"style": {
"navigationBarTitleText": ""
}
}, },
{ {
"path": "pages/yj/detail/byTable", "path": "pages/yj/detail/byTable",
@ -305,4 +317,4 @@
"background": "#efeff4" "background": "#efeff4"
} }
} }
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -71,15 +71,10 @@ const etm = moment().add(1, 'hour').set({
second: 0 second: 0
}).format("YYYY-MM-DD HH:mm"); }).format("YYYY-MM-DD HH:mm");
const typeName = { const typeName = {
'ZB0+130': '1', 'K0+070': '1',
'ZB0+132': '2', 'K0+110': '2',
'ZB0+250': '3', 'K0+145': '3',
'ZB0+252': '4', }
'ZB0+370': '5',
'ZB0+372': '6',
'FB0+010': '7',
'FB0+030': '8',
}
export default { export default {
data() { data() {
@ -154,10 +149,9 @@ export default {
handler(newVal, oldVal) { handler(newVal, oldVal) {
if (newVal) { if (newVal) {
let name = this.array.find(item => item.profileCode == newVal).profileName; let name = this.array.find(item => item.profileCode == newVal).profileName;
this.dbType = (name == "ZB0+130" || name == "ZB0+132") ? "1" : this.dbType =(name == "K0+070" ) ? "1" :
(name == "ZB0+250" || name == "ZB0+252") ? "2" : (name == "K0+110") ? "2" :
(name == "ZB0+370" || name == "ZB0+372") ? "3" : (name == "K0+145") ? "3" : '1';
(name == "FB0+010" || name == "FB0+030") ? '4' : '';
this.type1 = typeName[name]; this.type1 = typeName[name];
this.getDmTree(); this.getDmTree();
} }
@ -261,12 +255,11 @@ export default {
const { const {
data data
} = await uni.$http.post( } = await uni.$http.post(
`/gunshiApp/tsg/attDamProfile/list`,) `/gunshiApp/hsz/attDamProfile/list`,)
if (data.code == 200) { if (data.code == 200) {
uni.hideLoading(); uni.hideLoading();
const filterData = data.data.filter(item => (item?.profileName?.split('+')[0] == 'ZB0' || item?.profileName?.split('+')[0] == 'FB0')) // const filterData = data.data.filter(item => (item?.profileName?.split('+')[0] == 'ZB0' || item?.profileName?.split('+')[0] == 'FB0'))
console.log("filterData", filterData); const sortedData = data.data.sort((a, b) => {
const sortedData = filterData.sort((a, b) => {
// abZB0 // abZB0
const isAZB0 = a.profileCode.startsWith('ZB0'); const isAZB0 = a.profileCode.startsWith('ZB0');
const isBZB0 = b.profileCode.startsWith('ZB0'); const isBZB0 = b.profileCode.startsWith('ZB0');
@ -277,6 +270,8 @@ export default {
return 0; // return 0; //
}); });
this.array = sortedData this.array = sortedData
console.log("this.array",this.array);
this.profileCode = sortedData[0].profileCode; this.profileCode = sortedData[0].profileCode;
} }
} catch (e) { } catch (e) {
@ -294,7 +289,7 @@ export default {
const { const {
data data
} = await uni.$http.post( } = await uni.$http.post(
"/gunshiApp/tsg/osmoticPressR/infiltra/line", { "/gunshiApp/hsz/osmoticPressR/infiltra/line", {
stationCodes: this.trData, stationCodes: this.trData,
dateTimeRangeSo: { dateTimeRangeSo: {
start: moment(this.stm).format("YYYY-MM-DD HH:mm:00"), start: moment(this.stm).format("YYYY-MM-DD HH:mm:00"),
@ -347,7 +342,7 @@ export default {
try { try {
const { const {
data data
} = await uni.$http.post("/gunshiApp/tsg/attDamProfile/tree") } = await uni.$http.post("/gunshiApp/hsz/attDamProfile/tree")
if (data.code == 200) { if (data.code == 200) {
console.log("data", data); console.log("data", data);

View File

@ -1,31 +1,33 @@
<template> <template>
<div class="table_div"> <div class="table_div">
<div class="table_cur"> <div class="table_cur">
<table style="display:block;width:700px;overflow-x:auto"> <div class="scroll-table">
<tr> <table class="aqjc-table">
<th v-for="(cols,i) in columns" :key="i" :style="getStyle(cols)"> <thead>
{{ cols.title }} <tr>
</th> <th v-for="(cols,i) in columns" :key="i" :style="getStyle(cols)">
</tr> {{ cols.title }}
<!-- style="max-height: 480px; overflow-y: auto" --> </th>
<div class="scroll-table"> </tr>
<tr v-for="(item, index) in data" :key="index"> </thead>
<td style="width:100px;text-align:center">{{ index + 1 }}</td> <tbody>
<td style="width:200px;text-align:center">{{ item.tm }}</td> <tr v-for="(item, index) in data" :key="index">
<td style="width:100px;text-align:center">{{ item.rz }}</td> <td style="width:100px;text-align:center">{{ index + 1 }}</td>
<td v-for="(col,i) in newCol" :key="i" style="width:100px;text-align:center;"> <td style="width:200px;text-align:center">{{ item.tm }}</td>
{{item[col.key] }} <td style="width:100px;text-align:center">{{ item.rz}}</td>
</td> <td v-for="(col,i) in newCol" :key="i" style="width:100px;text-align:center;">
<td style="width:100px;"> {{ item[col.key] }}
{{item.status == 1 ? "正常" : rec == 0 ? "异常" : ''}} </td>
</td> <td style="width:100px;text-align:center">
</tr> {{ item.status == 1 ? "正常" : item.status == 0 ? "异常" : '' }}
</div> </td>
<div style="height:180px"></div> </tr>
</table> </tbody>
</div> </table>
</div> </div>
</div>
</div>
</template> </template>
@ -84,16 +86,18 @@
border-collapse: collapse; border-collapse: collapse;
font-size: 14px; font-size: 14px;
} }
.scroll-table{ .scroll-table{
height: calc(100vh - 180px); height: calc(100vh - 180px);
overflow-y: auto; overflow-y: auto;
overflow-x: auto; overflow-x: auto;
width:'100%' width: 100%
} }
.table_cur tr { .aqjc-table {
display: flex; table-layout: fixed;
width: max-content;
}
.aqjc-table tr {
line-height: 90rpx; line-height: 90rpx;
// overflow-x: auto;
} }
.table_cur th { .table_cur th {
height: 85rpx; height: 85rpx;
@ -118,4 +122,4 @@
text-align: center !important; text-align: center !important;
} }
/*table样式 end*/ /*table样式 end*/
</style> </style>

View File

@ -1,18 +1,18 @@
import { imageUrl060,imageUrl090,rule } from './dataUrl' import { rule } from './dataUrl'
import imageUrl130 from './dataUrl1/zb130'; import imageUrl070 from './dataUrl/zb070.js';
import imageUrl250 from './dataUrl1/zb250'; import imageUrl110 from './dataUrl/zb110.js';
import imageUrl370 from './dataUrl1/zb370'; import imageUrl145 from './dataUrl/zb145.js';
import imageUrl010 from './dataUrl1/fb010'; // import imageUrl010 from './dataUrl1/fb010';
import pieMonth from "./pieMonth"; import pieMonth from "./pieMonth";
export default function jrxOptions(data = {}, type = "1", typeName = '1') { export default function jrxOptions(data = {}, type = "1", typeName = '1') {
const yMin = type == "3" ? 70 : type == "2" ? 67 : const yMin = type == "3" ? 69 : type == "2" ? 54 :
type == '1' ? 58 : 99; type == '1' ? 54 : 70;
const yMax = type == "3" ? 129 : type == "2" ? 117 const yMax = type == "3" ? 105.5 : type == "2" ? 106
: type == "1" ? 118 : 116; : type == "1" ? 106 : 150;
const type1 = ["UPD1", "UPD4", "UPD7", "UPD16"]; const type1 = ["UPD1", "UPD4", "UPD7", "UPD16"];
const type2 = ["UPD10", "UPD13"]; const type2 = ["UPD10", "UPD13"];
const type3 = ["UPD2", "UPD5", "UPD8", "UPD17"]; const type3 = ["UPD2", "UPD5", "UPD8", "UPD17"];
@ -34,12 +34,10 @@ export default function jrxOptions(data = {}, type = "1", typeName = '1') {
// 字体颜色 // 字体颜色
const textColor = '#666' const textColor = '#666'
// const imageUrl370 = `${process.env.PUBLIC_URL}/assets/images/zb370.png `
// const imageUrl250 = `${process.env.PUBLIC_URL}/assets/images/zb250.png ` const imageUrl = type == "1" ? imageUrl070 :
// const imageUrl130 = `${process.env.PUBLIC_URL}/assets/images/zb130.png ` type == "2" ? imageUrl110 :
const imageUrl = type == "1" ? imageUrl130 : type == "3" ? imageUrl145 : imageUrl145;
type == "2" ? imageUrl250 :
type == "3" ? imageUrl370 : imageUrl010;
// const rule = `${process.env.PUBLIC_URL}/assets/images/ruler.png ` // const rule = `${process.env.PUBLIC_URL}/assets/images/ruler.png `
// rz 是最上面那条线 rz1是那条贴近坝面的线 xValue求解的是最上面那条线的末尾横坐标 // rz 是最上面那条线 rz1是那条贴近坝面的线 xValue求解的是最上面那条线的末尾横坐标

View File

@ -157,7 +157,7 @@ export default {
const endDate1 = moment(this.etm).format("YYYY-MM-DD"); const endDate1 = moment(this.etm).format("YYYY-MM-DD");
uni.$http uni.$http
.get( .get(
`/gunshiApp/tsg/resBrief/getResBriefList?startDate=${startDate1}&endDate=${endDate1}` `/gunshiApp/hsz/resBrief/getResBriefList?startDate=${startDate1}&endDate=${endDate1}`
) )
.then((res) => { .then((res) => {
if (res.data.code == 200) { if (res.data.code == 200) {

View File

@ -79,7 +79,7 @@
</view> </view>
<view class="textContent"> <view class="textContent">
<span style="margin-left: 30px;">{{briefTime}}</span>8过去24小时最大累计降雨量 <span style="margin-left: 30px;">{{briefTime}}</span>8过去24小时最大累计降雨量
<span class="xqjb-redColor" >{{resBriefObj.drp24Sum}}mm</span>(<span class="xqjb-redColor">{{resBriefObj.sumStnm}}</span>)最大点雨量 <span class="xqjb-redColor" >{{resBriefObj.drp24Sum}}mm</span>(<span class="xqjb-redColor">{{resBriefObj.sumStnm}}</span>)最大(1h)点雨量
<span class="xqjb-redColor">{{resBriefObj.drp24Max}}mm</span>(<span class="xqjb-redColor">{{resBriefObj.maxStnm}}{{raimTime}}</span>)当前水库水位 <span class="xqjb-redColor">{{resBriefObj.drp24Max}}mm</span>(<span class="xqjb-redColor">{{resBriefObj.maxStnm}}{{raimTime}}</span>)当前水库水位
<span class="xqjb-redColor">{{resBriefObj.rz8}}m</span>汛限水位(<span>{{resBriefObj.flLowLimLev}}m</span>)较昨日 <span class="xqjb-redColor">{{resBriefObj.rz8}}m</span>汛限水位(<span>{{resBriefObj.flLowLimLev}}m</span>)较昨日
<span class="xqjb-redColor">{{increaseWater}}m</span>库容达 <span class="xqjb-redColor">{{increaseWater}}m</span>库容达
@ -221,7 +221,7 @@ export default {
}, },
methods: { methods: {
getYlzList() { getYlzList() {
uni.$http.post("/gunshiApp/tsg/stPptnRReal/list").then((res) => { uni.$http.post("/gunshiApp/hsz/stPptnRReal/list").then((res) => {
if (res.data.code == 200) { if (res.data.code == 200) {
this.Ylzlist = res.data.data; this.Ylzlist = res.data.data;
} }
@ -229,7 +229,7 @@ export default {
}, },
// //
getresBriefList() { getresBriefList() {
uni.$http.get(`/gunshiApp/tsg/resBrief/getResBriefList?startDate=${startDate}&endDate=${endDate}`).then((res) => { uni.$http.get(`/gunshiApp/hsz/resBrief/getResBriefList?startDate=${startDate}&endDate=${endDate}`).then((res) => {
if (res.data.code == 200) { if (res.data.code == 200) {
this.resBriefObj = res.data.data[0]; this.resBriefObj = res.data.data[0];
} }
@ -237,7 +237,7 @@ export default {
}, },
getList() { getList() {
uni.$http uni.$http
.post("/gunshiApp/tsg/messageCenter/list", { .post("/gunshiApp/hsz/messageCenter/list", {
start: "", start: "",
end: "", end: "",
}) })
@ -249,7 +249,7 @@ export default {
}, },
getSwList() { getSwList() {
uni.$http uni.$http
.post("/gunshiApp/tsg/reservoir/water/listV2", { .post("/gunshiApp/hsz/reservoir/water/listV2", {
sources: ["SW", "SK"], sources: ["SW", "SK"],
}) })
.then((res) => { .then((res) => {
@ -275,7 +275,7 @@ export default {
menu2: menu2 || "首页", menu2: menu2 || "首页",
}; };
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/visitMenuLog/insert", "/gunshiApp/hsz/visitMenuLog/insert",
params params
); );
} catch (error) {} } catch (error) {}
@ -303,7 +303,7 @@ export default {
}; };
try { try {
const res = await uni.$http.post( const res = await uni.$http.post(
"/gunshiApp/tsg/inspect/detail/page", "/gunshiApp/hsz/inspect/detail/page",
params params
); );
if (res.data.data.records?.length > 0) { if (res.data.data.records?.length > 0) {
@ -321,7 +321,7 @@ export default {
}; };
try { try {
const res = await uni.$http.post( const res = await uni.$http.post(
"/gunshiApp/tsg/stQxWarnR/home/warn", "/gunshiApp/hsz/stQxWarnR/home/warn",
params params
); );
const { flowWarn, pressWarn, qxWarn, shiftWarn } = res.data.data; const { flowWarn, pressWarn, qxWarn, shiftWarn } = res.data.data;
@ -346,7 +346,7 @@ export default {
}; };
try { try {
const res = await uni.$http.post( const res = await uni.$http.post(
"/gunshiApp/tsg/inspect/task/list", "/gunshiApp/hsz/inspect/task/list",
params params
); );
if (res.data.data?.length > 0) { if (res.data.data?.length > 0) {

View File

@ -55,7 +55,7 @@
try { try {
const { const {
data data
} = await uni.$http.get("/gunshiApp/tsg/appVersionRecord/latest"); } = await uni.$http.get("/gunshiApp/hsz/appVersionRecord/latest");
if (data.code == 200) { if (data.code == 200) {
const selfVersionCode = uni.getSystemInfoSync().appWgtVersion //App const selfVersionCode = uni.getSystemInfoSync().appWgtVersion //App
const newVersionCode = data.data.version; //线 const newVersionCode = data.data.version; //线
@ -120,7 +120,7 @@
} }
// //
uni.$http.post('/gunshiApp/tsg/login', postForm).then(res => { uni.$http.post('/gunshiApp/hsz/login', postForm).then(res => {
uni.showLoading({ uni.showLoading({
title: '努力登录中...', title: '努力登录中...',
mask: true mask: true
@ -130,7 +130,7 @@
if (res.data.token) { if (res.data.token) {
uni.setStorageSync('Gs-Token', res.data.token) uni.setStorageSync('Gs-Token', res.data.token)
uni.$http.get('/gunshiApp/tsg/getInfo').then(res => { uni.$http.get('/gunshiApp/hsz/getInfo').then(res => {
this.getImgFlow(res.data.user.avatar) this.getImgFlow(res.data.user.avatar)
uni.setStorageSync('value', res.data.user) uni.setStorageSync('value', res.data.user)
setTimeout(function () { setTimeout(function () {
@ -158,7 +158,7 @@
if (imgUrl) { if (imgUrl) {
uni.request({ uni.request({
url: uni.$http.baseUrl + url: uni.$http.baseUrl +
`/gunshiApp/tsg/common/download/resource?resource=${imgUrl}`, `/gunshiApp/hsz/common/download/resource?resource=${imgUrl}`,
responseType: 'arraybuffer', responseType: 'arraybuffer',
success: (res) => { success: (res) => {
// arraybufferBase64 // arraybufferBase64

View File

@ -59,7 +59,7 @@
}, },
methods: { methods: {
yd(item){ yd(item){
uni.$http.post('/gunshiApp/tsg/messageCenter/update',{...item,status:1}) uni.$http.post('/gunshiApp/hsz/messageCenter/update',{...item,status:1})
}, },
confirm(e) { confirm(e) {
console.log(e); console.log(e);

View File

@ -97,7 +97,7 @@
}, },
methods: { methods: {
rightClick() { rightClick() {
uni.$http.get('/gunshiApp/tsg/messageCenter/all/read', { uni.$http.get('/gunshiApp/hsz/messageCenter/all/read', {
receiveUserId: uni.getStorageSync('value').userId receiveUserId: uni.getStorageSync('value').userId
}).then(res => { }).then(res => {
@ -112,7 +112,7 @@
}, },
getList() { getList() {
console.log(111); console.log(111);
uni.$http.post('/gunshiApp/tsg/messageCenter/list', { uni.$http.post('/gunshiApp/hsz/messageCenter/list', {
start:this.stm?moment(this.stm).format('YYYY-MM-DD HH:mm:ss'):'', start:this.stm?moment(this.stm).format('YYYY-MM-DD HH:mm:ss'):'',
end:this.etm?moment(this.etm).format('YYYY-MM-DD HH:mm:ss'):'' end:this.etm?moment(this.etm).format('YYYY-MM-DD HH:mm:ss'):''
}).then(res => { }).then(res => {

View File

@ -64,7 +64,7 @@
// new_params.userId = uni.getStorageSync('value').userId // new_params.userId = uni.getStorageSync('value').userId
// console.log(formData) // console.log(formData)
uni.$http.put(`/gunshiApp/tsg/system/user/profile/updatePwd?oldPassword=${formData.oldPassword}&newPassword=${formData.newPassword}`).then(res=>{ uni.$http.put(`/gunshiApp/hsz/system/user/profile/updatePwd?oldPassword=${formData.oldPassword}&newPassword=${formData.newPassword}`).then(res=>{
console.log(res); console.log(res);
if (res.data.code === 200) { if (res.data.code === 200) {
uni.showToast({ uni.showToast({

View File

@ -116,7 +116,7 @@
"isHandle": 1, "isHandle": 1,
"handleUserId": uni.getStorageSync('value').userId "handleUserId": uni.getStorageSync('value').userId
} }
uni.$http.post('/gunshiApp/tsg/inspect/detail/page', params).then(res => { uni.$http.post('/gunshiApp/hsz/inspect/detail/page', params).then(res => {
this.list = res.data.data.records this.list = res.data.data.records
}) })
}, },

View File

@ -49,7 +49,7 @@ export default {
submitForm(params) { submitForm(params) {
// //
console.log({...params,...this.formData}); console.log({...params,...this.formData});
uni.$http.post('/gunshiApp/tsg/maintain/service/insert',{...params,...this.formData}).then(res=>{ uni.$http.post('/gunshiApp/hsz/maintain/service/insert',{...params,...this.formData}).then(res=>{
if(res.data.code == 200){ if(res.data.code == 200){
uni.$u.toast('新增成功') uni.$u.toast('新增成功')
uni.navigateBack() uni.navigateBack()

View File

@ -116,7 +116,7 @@
end:this.etm?moment(this.etm).format('YYYY-MM-DD 23:59:59'):'' end:this.etm?moment(this.etm).format('YYYY-MM-DD 23:59:59'):''
} }
} }
uni.$http.post('/gunshiApp/tsg/maintain/service/page', params).then(res => { uni.$http.post('/gunshiApp/hsz/maintain/service/page', params).then(res => {
this.dataList = res.data.data.records this.dataList = res.data.data.records
}) })
}, },
@ -126,7 +126,7 @@
...params, ...params,
...this.formData ...this.formData
}); });
uni.$http.post('/gunshiApp/tsg/maintain/service/insert', { uni.$http.post('/gunshiApp/hsz/maintain/service/insert', {
...params, ...params,
...this.formData ...this.formData
}).then(res => { }).then(res => {

View File

@ -107,7 +107,7 @@ export default {
uploadFilePromise(url,name) { uploadFilePromise(url,name) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let a = uni.uploadFile({ let a = uni.uploadFile({
url: uni.$http.baseUrl +'/gunshiApp/tsg/maintain/service/file/upload/singleSimple', // url: uni.$http.baseUrl +'/gunshiApp/hsz/maintain/service/file/upload/singleSimple', //
filePath: url, filePath: url,
name: 'file', name: 'file',
formData: { formData: {

View File

@ -94,7 +94,7 @@
try { try {
const { const {
data data
} = await uni.$http.get(`/gunshiApp/tsg/inspect/detail/info?taskId=${this.id}`) } = await uni.$http.get(`/gunshiApp/hsz/inspect/detail/info?taskId=${this.id}`)
if (data.code == 200) { if (data.code == 200) {
this.xjItem = data.data this.xjItem = data.data
} }

View File

@ -123,7 +123,7 @@
statusList:[2] statusList:[2]
} }
try { try {
const res = await uni.$http.post("/gunshiApp/tsg/inspect/task/list",params) const res = await uni.$http.post("/gunshiApp/hsz/inspect/task/list",params)
this.list = [...res.data.data]; this.list = [...res.data.data];
} catch (error) { } catch (error) {
uni.$showMsg(); uni.$showMsg();

View File

@ -23,9 +23,9 @@
<view class="zrtx" @click="activeOne = 2" :class="{ 'active': activeOne == 2 }"> <view class="zrtx" @click="activeOne = 2" :class="{ 'active': activeOne == 2 }">
渗流监测 渗流监测
</view> </view>
<view class="txjc" @click="activeOne = 3" :class="{ 'active': activeOne == 3 }" style="margin-left:4%"> <!-- <view class="txjc" @click="activeOne = 3" :class="{ 'active': activeOne == 3 }" style="margin-left:4%">
白蚁监测 白蚁监测
</view> </view> -->
</view> </view>
</swiper-item> </swiper-item>
</swiper> </swiper>
@ -77,7 +77,7 @@ export default {
async getSlData() { async getSlData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
"/gunshiApp/tsg/osmoticPressR/list/value?type=2" "/gunshiApp/hsz/osmoticPressR/list/value?type=2"
); );
if (data.code == 200) { if (data.code == 200) {
this.slData = data.data; this.slData = data.data;
@ -89,7 +89,7 @@ export default {
async getZwyData() { async getZwyData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
"/gunshiApp/tsg/osmoticShiftR/list/value" "/gunshiApp/hsz/osmoticShiftR/list/value"
); );
if (data.code == 200) { if (data.code == 200) {
this.zwyData = data.data; this.zwyData = data.data;
@ -101,7 +101,7 @@ export default {
async getByData() { async getByData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
`/gunshiApp/tsg/termite/survey/listNewData` `/gunshiApp/hsz/termite/survey/listNewData`
); );
if (data.code == 200) { if (data.code == 200) {
this.byData = data.data; this.byData = data.data;

View File

@ -72,7 +72,7 @@
console.log('--------拍照上传照片--------', res); console.log('--------拍照上传照片--------', res);
this.default_src = tempFilePaths[0] this.default_src = tempFilePaths[0]
uni.uploadFile({ uni.uploadFile({
url: uni.$http.baseUrl + '/gunshiApp/tsg/system/user/profile/avatar', url: uni.$http.baseUrl + '/gunshiApp/hsz/system/user/profile/avatar',
fileType: 'image', fileType: 'image',
filePath: tempFilePaths[0], filePath: tempFilePaths[0],
name: 'avatarfile', name: 'avatarfile',
@ -100,7 +100,7 @@
getImgFlow(imgUrl) { getImgFlow(imgUrl) {
uni.request({ uni.request({
url: uni.$http.baseUrl + url: uni.$http.baseUrl +
`/gunshiApp/tsg/common/download/resource?resource=${imgUrl}`, `/gunshiApp/hsz/common/download/resource?resource=${imgUrl}`,
responseType: 'arraybuffer', responseType: 'arraybuffer',
success: (res) => { success: (res) => {
// arraybufferBase64 // arraybufferBase64
@ -153,7 +153,7 @@
new_userList.phonenumber = this.phone; new_userList.phonenumber = this.phone;
const const
{data} {data}
=await uni.$http.put('/gunshiApp/tsg/system/user/profile', new_userList); =await uni.$http.put('/gunshiApp/hsz/system/user/profile', new_userList);
if (data.code == 200) { if (data.code == 200) {
uni.setStorageSync('value', new_userList) uni.setStorageSync('value', new_userList)
uni.reLaunch({ uni.reLaunch({

View File

@ -12,36 +12,20 @@
leftIconColor="rgb(153, 153, 153)" leftIconColor="rgb(153, 153, 153)"
> >
</u-navbar> </u-navbar>
<view style="margin-top: 70px; padding: 10px"> <view style="margin-top: 80px; padding: 10px">
<SlTable :tableData="slData" v-if="name == '渗流监测'"></SlTable> <SlTable :tableData="slData" v-if="name == '渗流监测'"></SlTable>
<ZwyTable <ZwyTable
:tableData="zwyData" :tableData="zwyData"
v-else-if="name == '主坝位移监测'" v-else-if="name == '位移监测'"
></ZwyTable>
<ZwyTable
:tableData="zwyData"
v-else-if="name == '溢洪道位移监测'"
></ZwyTable>
<ZwyTable
:tableData="zwyData"
v-else-if="name == '副坝位移监测'"
></ZwyTable> ></ZwyTable>
<ZsyTable <ZsyTable
:tableData="zsyData" :tableData="zsyData"
v-else-if="name == '主坝渗压监测'" v-else-if="name == '渗压监测'"
></ZsyTable> ></ZsyTable>
<ZsyTable
:tableData="sdData"
v-else-if="name == '灌溉发电洞渗压监测'"
></ZsyTable>
<ZsyTable
:tableData="fbData"
v-else-if="name == '副坝渗压监测'"
></ZsyTable>
<ZwyTable
:tableData="zwyData"
v-else-if="name == '灌溉发电洞变形监测'"
></ZwyTable>
<ByTable <ByTable
:tableData="byData" :tableData="byData"
v-else-if="name == '白蚁监测'" v-else-if="name == '白蚁监测'"
@ -96,9 +80,10 @@ export default {
async getSlData() { async getSlData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
"/gunshiApp/tsg/osmoticPressR/list/value?type=2" "/gunshiApp/hsz/osmoticPressR/list/value?type=2"
); );
if (data.code == 200) { if (data.code == 200) {
console.log("data.data",data.data);
this.slData = data.data; this.slData = data.data;
} }
} catch (error) { } catch (error) {
@ -109,7 +94,7 @@ export default {
async getByData() { async getByData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
`/gunshiApp/tsg/termite/survey/listNewData?deviceId=${this.deviceId}` `/gunshiApp/hsz/termite/survey/listNewData?deviceId=${this.deviceId}`
); );
if (data.code == 200) { if (data.code == 200) {
this.byData = data.data; this.byData = data.data;
@ -121,12 +106,12 @@ export default {
async getZwyData() { async getZwyData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
"/gunshiApp/tsg/osmoticShiftR/list/value" "/gunshiApp/hsz/osmoticShiftR/list/value"
); );
if (data.code == 200) { if (data.code == 200) {
let resData = []; let resData = [];
if (this.name == "主坝位移监测") { if (this.name == "位移监测") {
resData = this.filterStationsByCode(data.data, { resData = this.filterStationsByCode(data.data, {
prefix: "WY-", prefix: "WY-",
start: 1, start: 1,
@ -167,21 +152,10 @@ export default {
async getzsyData() { async getzsyData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
"/gunshiApp/tsg/osmoticPressR/list/value?type=1" "/gunshiApp/hsz/osmoticPressR/list/value?type=1"
); );
if (data.code == 200) { if (data.code == 200) {
const zb = data.data.filter( this.zsyData = data.data;
(item) => item?.profileName?.split("+")[0] == "ZB0"
);
const fb = data.data.filter(
(item) => item?.profileName?.split("+")[0] == "FB0"
);
const sd = data.data.filter(
(item) => item?.profileName?.split("+")[0] == "SD0"
);
this.zsyData = zb;
this.fbData = fb;
this.sdData = sd;
} }
} catch (error) { } catch (error) {
uni.$showMsg(); uni.$showMsg();

View File

@ -37,7 +37,7 @@
}, },
methods: { methods: {
simpleData(tm){ simpleData(tm){
return moment(tm).format("MM-DD HH:mm") return tm ?moment(tm).format("MM-DD HH:mm"):''
} }
}, },
} }

View File

@ -17,8 +17,10 @@
<tr v-for="(item, index) in tableData" :key="index"> <tr v-for="(item, index) in tableData" :key="index">
<td style="width: 19%;">{{item.stationCode}}</td> <td style="width: 19%;">{{item.stationCode}}</td>
<td style="width:30%;">{{ item.profileName }}</td> <td style="width:30%;">{{ item.profileName }}</td>
<td style="width: 26%;text-align: center;">{{simpleData(item.tm)}}</td> <!-- <td style="width: 26%;text-align: center;">{{simpleData(item.tm)}}</td> -->
<td style="width:25%;">{{ item.value }}</td> <td style="width: 26%;text-align: center;">-</td>
<!-- <td style="width:25%;">{{ item.value }}</td> -->
<td style="width:25%;">-</td>
</tr> </tr>
<div style="height:180px"></div> <div style="height:180px"></div>
</div> </div>

View File

@ -112,7 +112,7 @@
async getTableData(){ async getTableData(){
try{ try{
const {data} = await uni.$http.get( const {data} = await uni.$http.get(
`/gunshiApp/tsg/reservoir/water/detail?stcd=${uni.$stcd}`) `/gunshiApp/hsz/reservoir/water/detail?stcd=${uni.$stcd}`)
if(data.code == 200){ if(data.code == 200){
this.tableData = {...data.data}; this.tableData = {...data.data};
} }

View File

@ -45,7 +45,7 @@ export default {
mask: true, mask: true,
}); });
try { try {
const { data } = await uni.$http.post("/gunshiApp/tsg/resPerson/page", { const { data } = await uni.$http.post("/gunshiApp/hsz/resPerson/page", {
pageSo: { pageSo: {
pageSize: 999, pageSize: 999,
pageNumber: 1, pageNumber: 1,

View File

@ -32,10 +32,10 @@
}, },
data() { data() {
return { return {
lnglat: [114.76, 31.52], lnglat: [115.07040048775868, 31.00000230435452],
markers: [{ markers: [{
latitude: 31.52, latitude: 30.99600000435452,
longitude: 114.76, longitude: 115.07040048775868,
iconPath: '../../../static/tabs/add.png', iconPath: '../../../static/tabs/add.png',
width: 25, width: 25,
height: 25 height: 25

View File

@ -4,7 +4,7 @@
fontSize:'18px' fontSize:'18px'
}" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'> }" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'>
</u-navbar> </u-navbar>
<view style="height:70px"></view> <view style="height:80px"></view>
<u-tabs :list="list1" @click="click" :current="tabs" style="background-color: #fff;"></u-tabs> <u-tabs :list="list1" @click="click" :current="tabs" style="background-color: #fff;"></u-tabs>
<Skjj v-if="tabs == 0" :skInfo="skInfo"></Skjj> <Skjj v-if="tabs == 0" :skInfo="skInfo"></Skjj>
<Jcxx v-if="tabs == 1"></Jcxx> <Jcxx v-if="tabs == 1"></Jcxx>
@ -65,7 +65,7 @@
this.tabs = item.index; this.tabs = item.index;
}, },
getList(){ getList(){
uni.$http.post('/gunshiApp/tsg/attResBase/list',this.model).then(res=>{ uni.$http.post('/gunshiApp/hsz/attResBase/list',this.model).then(res=>{
console.log(res,'res'); console.log(res,'res');
this.skInfo = res.data.data[0]; this.skInfo = res.data.data[0];
}) })

View File

@ -151,7 +151,7 @@
const { const {
data data
} = await uni.$http.post( } = await uni.$http.post(
"/gunshiApp/tsg/reservoir/water/real/img", { "/gunshiApp/hsz/reservoir/water/real/img", {
resCode: "42112230001" resCode: "42112230001"
}) })
if (data.code == 200) { if (data.code == 200) {
@ -175,9 +175,9 @@
const { const {
data data
} = await uni.$http.post( } = await uni.$http.post(
"/gunshiApp/tsg/reservoir/water/listV2",{sources:['SW','SK']}) "/gunshiApp/hsz/reservoir/water/listV2",{sources:['SW','SK']})
if (data.code == 200) { if (data.code == 200) {
const filterObj = data.data.filter(item => item.stcd == '61610700') const filterObj = data.data.filter(item => item.stcd == '232')
this.info = filterObj[0] this.info = filterObj[0]
} }
} catch (error) { } catch (error) {
@ -190,7 +190,7 @@
const { const {
data data
} = await uni.$http.get( } = await uni.$http.get(
`/gunshiApp/tsg/reservoir/water/detail?stcd=${uni.$stcd}`) `/gunshiApp/hsz/reservoir/water/detail?stcd=${uni.$stcd}`)
if (data.code == 200) { if (data.code == 200) {
this.rainInfo = data.data; this.rainInfo = data.data;
} }
@ -209,7 +209,7 @@
const { const {
data data
} = await uni.$http.post( } = await uni.$http.post(
"/gunshiApp/tsg/reservoir/water/monitor/data", { "/gunshiApp/hsz/reservoir/water/monitor/data", {
stcd: uni.$stcd, stcd: uni.$stcd,
stm: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), stm: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),
etm: moment(this.etm).format("YYYY-MM-DD HH:mm:ss"), etm: moment(this.etm).format("YYYY-MM-DD HH:mm:ss"),

View File

@ -48,7 +48,7 @@ export default {
mask: true, mask: true,
}); });
try { try {
const { data } = await uni.$http.post("/gunshiApp/tsg/stZvarlB/list"); const { data } = await uni.$http.post("/gunshiApp/hsz/stZvarlB/list");
if (data.code == 200) { if (data.code == 200) {
this.tableData = [...data.data]; this.tableData = [...data.data];
} }

View File

@ -18,14 +18,15 @@
</view> </view>
</template> </template>
<script> <script>
import selectData from "../../staticData" import selectData from "../../staticData"
import moment from "moment"
const gmObj = { const gmObj = {
"1": "大 (1)型", 1: "大 (1)型",
"2": "大 (2)型", 2: "大 (2)型",
"3": "中型", 3: "中型",
"4": "小 (1)型", 4: "小 (1)型",
"5": "小 (2)型", 5: "小 (2)型",
"9": "其他", 6: "其他",
} }
const qdObj = { const qdObj = {
@ -34,6 +35,11 @@
3: "Ⅲ", 3: "Ⅲ",
4: "Ⅳ", 4: "Ⅳ",
5: "VI ", 5: "VI ",
}
const statusObj = {
1: '是',
0:'否'
} }
export default { export default {
props: { props: {
@ -56,32 +62,32 @@
}, },
{ {
value: 1, value: 1,
text: "坝" text: "坝"
}, },
{ {
value: 2, value: 2,
text: "副坝"
},
{
value: 3,
text: "溢洪道" text: "溢洪道"
}, },
{ {
value: 4, value: 3,
text: "灌溉发电洞" text: "输水建筑物"
}, },
{ // {
value: 5, // value: 4,
text: "放空洞" // text: ""
}, // },
{ // {
value: 6, // value: 5,
text: "拦洪坝" // text: ""
}, // },
{ // {
value: 7, // value: 6,
text: "防汛道路" // text: ""
} // },
// {
// value: 7,
// text: ""
// }
], ],
selectValue: 0, selectValue: 0,
keyObj: {} keyObj: {}
@ -113,7 +119,7 @@
try { try {
const { const {
data data
} = await uni.$http.get('/gunshiApp/tsg/attResBuilding/info') } = await uni.$http.get('/gunshiApp/hsz/attResBuilding/info')
if (data.code == 200) { if (data.code == 200) {
this.keyObj = data.data this.keyObj = data.data
} }
@ -127,7 +133,7 @@
try { try {
const { const {
data data
} = await uni.$http.post('/gunshiApp/tsg/attDamBase/list') } = await uni.$http.post('/gunshiApp/hsz/attDamBase/list')
if (data.code == 200) { if (data.code == 200) {
if (e == 1) { if (e == 1) {
this.keyObj = data.data.find(item => item.isMain == 1) this.keyObj = data.data.find(item => item.isMain == 1)
@ -146,7 +152,7 @@
try { try {
const { const {
data data
} = await uni.$http.post('/gunshiApp/tsg/attSpillwayBase/list') } = await uni.$http.post('/gunshiApp/hsz/attSpillwayBase/list')
if (data.code == 200) { if (data.code == 200) {
this.keyObj = data.data[0] this.keyObj = data.data[0]
} }
@ -160,7 +166,7 @@
const params = e == 5 ? 1 : 2; const params = e == 5 ? 1 : 2;
const { const {
data data
} = await uni.$http.get('/gunshiApp/tsg/resTunnel/list',{type:params}) } = await uni.$http.get('/gunshiApp/hsz/resTunnel/list',{type:params})
if (data.code == 200) { if (data.code == 200) {
this.keyObj = data.data[0] this.keyObj = data.data[0]
} }
@ -173,7 +179,7 @@
try { try {
const { const {
data data
} = await uni.$http.post('/gunshiApp/tsg/resFloodRoad/list') } = await uni.$http.post('/gunshiApp/hsz/resFloodRoad/list')
if (data.code == 200) { if (data.code == 200) {
this.keyObj = data.data[0] this.keyObj = data.data[0]
} }
@ -191,6 +197,12 @@
if (item.key == "seismicIntensity") { if (item.key == "seismicIntensity") {
this.keyObj[item.key] = qdObj[this.skInfo[item.key]] this.keyObj[item.key] = qdObj[this.skInfo[item.key]]
} }
if (item.key == "isDanger" || item.key == "spillwayGate") {
this.keyObj[item.key] = statusObj[this.skInfo[item.key]]
}
if (item.key == "startDate" || item.key == "compDate") {
this.keyObj[item.key] = this.skInfo[item.key] ?moment(this.skInfo[item.key]).format('YYYY-MM-DD'):''
}
return { return {
name: item.name, name: item.name,
value: this.keyObj[item.key] value: this.keyObj[item.key]

View File

@ -22,14 +22,18 @@
</view> </view>
<view class="bottom"> <view class="bottom">
<view class="bottomItem"> <view class="bottomItem">
<view class="withd-2" @click="toWaterDetail('灌溉供水',shStcd)"> <!-- <view class="withd-2" @click="toWaterDetail('灌溉供水',shStcd)">
<text>灌溉供水m³/s</text>: <text>灌溉供水m³/s</text>:
<text>{{shgs}}</text> <text>{{shgs}}</text>
</view> </view>
<view class="withd-2" @click="toWaterDetail('水厂取水',stStcd)"> <view class="withd-2" @click="toWaterDetail('水厂取水',stStcd)">
<text>水厂取水m³/s</text>: <text>水厂取水m³/s</text>:
<text>{{stgs}}</text> <text>{{stgs}}</text>
</view> </view> -->
<view class="withd-2" v-for="item in stList" @click="toWaterDetail(item.stnm,item.stcd)">
<text>{{item.stnm }}</text>:
<text>{{item.q || '-'}}/s</text>
</view>
</view> </view>
</view> </view>
</view> </view>
@ -62,8 +66,8 @@
shStcd:'', shStcd:'',
imageList:[], imageList:[],
baseUrl:uni.$http.baseUrl, baseUrl:uni.$http.baseUrl,
showImg:'../../static/skimg.png' showImg:'../../static/skimg.jpg',
stList:[]
} }
}, },
mounted() { mounted() {
@ -86,27 +90,28 @@
}); });
}, },
getDrp(){ getDrp(){
uni.$http.get(`/gunshiApp/tsg/reservoir/water/detail?stcd=${uni.$stcd}&_=1731028927554`).then(res=>{ uni.$http.get(`/gunshiApp/hsz/reservoir/water/detail?stcd=${uni.$stcd}&_=1731028927554`).then(res=>{
this.dataform={...this.dataform,...res.data.data} this.dataform={...this.dataform,...res.data.data}
}) })
uni.$http.post('/gunshiApp/tsg/reservoir/water/listV2',{sources:['SW','SK']}).then(res=>{ uni.$http.post('/gunshiApp/hsz/reservoir/water/listV2',{sources:['SW','SK']}).then(res=>{
const filterObj = res.data.data.filter(item => item.stcd == uni.$stcd) const filterObj = res.data.data.filter(item => item.stcd == uni.$stcd)
this.dataform={...this.dataform,...filterObj[0]} this.dataform={...this.dataform,...filterObj[0]}
this.tm = filterObj[0].tm this.tm = filterObj[0].tm
}) })
uni.$http.post('/gunshiApp/tsg/stFlowR/list').then(res=>{ uni.$http.post('/gunshiApp/hsz/stWaterRReal/list').then(res => {
res.data.data.forEach(item=>{ this.stList = res.data.data;
if(item.stcd == '2222222'){ // res.data.data.forEach(item=>{
this.stgs=item.q // if(item.stcd == '2222222'){
this.stStcd=item.stcd // this.stgs=item.q
} // this.stStcd=item.stcd
if(item.stcd == '10498'){ // }
this.shgs=item.q // if(item.stcd == '10498'){
this.shStcd=item.stcd // this.shgs=item.q
} // this.shStcd=item.stcd
}) // }
// })
}) })
uni.$http.post('/gunshiApp/tsg/resProjectImg/list',{resCode:"42112230001"}).then(res=>{ uni.$http.post('/gunshiApp/hsz/resProjectImg/list',{resCode:"42112230001"}).then(res=>{
res.data.data.forEach(item=>{ res.data.data.forEach(item=>{
if(item.projType == 1){ if(item.projType == 1){
this.imageList = item.files.map((item,index)=> this.imageList = item.files.map((item,index)=>
@ -133,7 +138,7 @@
}) })
}, },
getList(){ getList(){
uni.$http.post('/gunshiApp/tsg/attResBase/list').then(res=>{ uni.$http.post('/gunshiApp/hsz/attResBase/list').then(res=>{
this.dataform=res.data.data[0] this.dataform=res.data.data[0]
}) })
}, },
@ -175,13 +180,15 @@
border-top: 1px solid #f0f0f0; border-top: 1px solid #f0f0f0;
padding: 10px 0 0 0; padding: 10px 0 0 0;
font-size: 14px; font-size: 14px;
flex-wrap: wrap;
} }
} }
.withd-2{ .withd-2{
width: 50%; width: 45%;
text-align: center; text-align: center;
background-color: #caf982; background-color: #caf982;
margin-right: 5px; margin-right: 5px;
margin-bottom: 5px;
padding: 5px; padding: 5px;
} }
</style> </style>

View File

@ -127,7 +127,7 @@ export default {
}); });
try { try {
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/stWaterRReorganize/list", "/gunshiApp/hsz/stWaterRReorganize/list",
{ {
searchType: 1, searchType: 1,
startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),
@ -140,17 +140,23 @@ export default {
if (data.code == 200) { if (data.code == 200) {
uni.hideLoading(); uni.hideLoading();
let newData = []; let newData = [];
if (this.name == "灌溉供水") { if (this.name == "灌溉渠首流量站1") {
newData = data.data.map((item) => ({ newData = data.data.map((item) => ({
...item, ...item,
v: item.ecologyV, v: item.mci1V,
q: item.ecologyQ, q: item.mci1Q,
}));
} else if(this.name == "灌溉渠首流量站2") {
newData = data.data.map((item) => ({
...item,
v: item.mci2V,
q: item.mci2Q,
})); }));
} else { } else {
newData = data.data.map((item) => ({ newData = data.data.map((item) => ({
...item, ...item,
v: item.lifeV, v: item.ecologyV,
q: item.lifeQ, q: item.ecologyQ,
})); }));
} }
this.tableData = [...newData]; this.tableData = [...newData];

View File

@ -58,7 +58,7 @@
}, },
async getVideoList(){ async getVideoList(){
try { try {
const {data} = await uni.$http.post("/gunshiApp/tsg/attCctvBase/list") const {data} = await uni.$http.post("/gunshiApp/hsz/attCctvBase/list")
if(data.code == 200){ if(data.code == 200){
this.videoList = data.data this.videoList = data.data
} }

View File

@ -74,7 +74,7 @@ export default {
async getVideoSrc(id){ async getVideoSrc(id){
try{ try{
const {data} = await uni.$http.get( const {data} = await uni.$http.get(
`/gunshiApp/tsg/attCctvBase/preview/${id}`) `/gunshiApp/hsz/attCctvBase/preview/${id}`)
if(data.code == 200){ if(data.code == 200){
this.webURL="./static/h5Player/webplayer.html?cameraIndexCode="+id+"&cameraUrl="+data.data this.webURL="./static/h5Player/webplayer.html?cameraIndexCode="+id+"&cameraUrl="+data.data
} }
@ -90,7 +90,7 @@ export default {
speed:30 speed:30
} }
try{ try{
const {data} = await uni.$http.post("/gunshiApp/tsg/attCctvBase/control",params) const {data} = await uni.$http.post("/gunshiApp/hsz/attCctvBase/control",params)
if(this.timer) clearTimeout(this.timer) if(this.timer) clearTimeout(this.timer)
this.timer = setTimeout(() => { this.timer = setTimeout(() => {
this.onOperation1(type) this.onOperation1(type)
@ -107,7 +107,7 @@ export default {
speed:30 speed:30
} }
try{ try{
const {data} = await uni.$http.post("/gunshiApp/tsg/attCctvBase/control",params) const {data} = await uni.$http.post("/gunshiApp/hsz/attCctvBase/control",params)
}catch(error){ }catch(error){
uni.$showMsg() uni.$showMsg()
} }

View File

@ -1,270 +1,271 @@
export default { export default {
0:[{ 0: [
name: "所在河流(水系)名称", {
key: "basName" name: "水库名称(水系)名称",
key: "resName"
}, },
{ {
name: "倒水全流域面积(km²)", name: "水库代码",
key: "basArea" key: "resCode"
},
{
name: "水库登记号",
key: "regSn"
},
{
name: "注册登记时间",
key: "regTime"
},
{
name: "工程位置",
key: "resLoc"
},
{
name: "所在河流(水系)名称",
key: "basName"
},
{
name: "水库规模",
key: "engScal"
},
{
name: "主要功能",
key: "rsvFunction"
},
{
name: "经度",
key: "lgtd"
},
{
name: "纬度",
key: "lttd"
},
{
name: "开工日期",
key: "startDate"
},
{
name: "竣工日期",
key: "compDate"
},
{
name: "是否病险",
key: "isDanger"
},
{
name: "是否有闸控制",
key: "spillwayGate"
},
{
name: "坝址以上流域面积(km²)",
key: "watShedArea"
},
{
name: "校核洪水位时最大下泄流量(m³/s)",
key: "maxCalFloodFlow"
},
{
name: "设计洪水位时最大下泄流量(m³/s)",
key: "maxDesFloodFlow"
},
{
name: "防洪高水位(m)",
key: "uppLevFlco"
},
{
name: "防洪库容(万m³)",
key: "flcoCap"
},
{
name: "下游河道安全泄量(m³/s)",
key: "dsSaftFlow"
},
{
name: "校核洪水位(m)",
key: "calFloodLev"
},
{
name: "设计洪水位(m)",
key: "desFloodLev"
},
{
name: "正常蓄水位(m)",
key: "normWatLev"
},
{
name: "死水位(m)",
key: "deadLev"
},
{
name: "汛限水位(m)",
key: "flLowLimLev"
},
{
name: "总库容(万m³)",
key: "totCap"
}, },
{ {
name: "坝址以上流域面积(km²)", name: "调洪库容(万m³)",
key: "watShedArea" key: "storFlCap"
},
{
name: "坝址以上主河床长度(km)",
key: "watRiverLen"
},
{
name: "坝址以上主河床平均坡降(‰)",
key: "watRiverSlope"
},
{
name: "多处平均降雨量(mm)",
key: "annualAvgDrp"
},
{
name: "设计洪水标准及洪峰流量(m³/s)",
key: "desFloodPeakFlow"
},
{
name: "校核洪水标准及洪峰流量(m³/s)",
key: "calFloodPeakFlow"
},
{
name: "校核洪水位(m)",
key: "calFloodLev"
},
{
name: "设计洪水位(m)",
key: "desFloodLev"
},
{
name: "正常蓄水位(m)",
key: "normWatLev"
},
{
name: "死水位(m)",
key: "deadLev"
},
{
name: "汛期限制水位(m)",
key: "flLowLimLev"
},
{
name: "总库容(万m³)",
key: "totCap"
}, },
{ {
name: "调洪库容(万m³)", name: "兴利库容(万m³)",
key: "storFlCap" key: "benResCap"
},
{
name: "兴利库容(万m³)",
key: "benResCap"
}, },
{ {
name: "死库容(万m³)", name: "死库容(万m³)",
key: "deadCap" key: "deadCap"
},
{
name: "工程规模",
key: "engScal"
}, },
{ {
name: "设计灌溉面积(亩)", name: "堰顶高程(万m³)",
key: 'designIrrArea' key: "wcrstel"
}, },
{ {
name: "保护人口(人)", name: "设计灌溉面积(亩)",
key: 'protectPopulation' key: 'designIrrArea'
}, },
{ {
name: "保护农田(亩)", name: "实际灌溉面积(亩)",
key: 'protectFarmland' key: 'actualIrrArea'
}, },
{ {
name: "地震基本烈度", name: "受益人口(人)",
key: 'seismicIntensity' key: 'feedPop'
}, },
{ {
name: "地震动参数设计值", name: "保护农田(亩)",
key: 'seismicParm' key: 'protectFarmland'
}, },
], {
1: [ name: "地震基本烈度",
{ key: 'seismicIntensity'
name: "坝顶高程(m)", },
key:"mainCrestElevation" {
}, name: "地震动参数设计值",
{ key: 'seismicParm'
name: "坝顶长度(m)", },
key:"mainCrestLength" ],
}, 1: [
{ {
name: "坝顶宽度(m)", name: "建筑物型式",
key:"mainCrestWidth" key: "mainType"
}, },
{ {
name: "最大坝高(m)", name: "地基特性",
key:"mainMaxHeight" key: "mainFoundation"
} },
], {
2: [ name: "地震基本烈度",
{ key: 'mainBasicIntensityOfAnEarthQuake'
name: "坝顶高程(m)", },
key:"auxCrestElevation" {
}, name: "地震动峰值加速度",
{ key: "mainEarthquakeAcceleration"
name: "坝顶长度(m)", },
key:"auxCrestLength" {
}, name: "坝顶高程(m)",
{ key: "mainCrestElevation"
name: "坝顶宽度(m)", },
key:"auxCrestWidth" {
}, name: "防浪墙顶高程(m)",
{ key: "mainTopOfWaveBarrierElevation"
name: "最大坝高(m)", },
key:"auxMaxHeight" {
} name: "坝顶长度(m)",
], key: "mainCrestLength"
3: [ },
{ {
name: "堰顶型式", name: "坝顶宽度(m)",
key:"spillwayCrestType" key: "mainCrestWidth"
}, },
{ {
name: "地基特性", name: "最大坝高(m)",
key:"spillwayFoundation" key: "mainMaxHeight"
}, }
{ ],
name: "溢流堰顶高程(m)", 2: [
key:"spillwayCrestElevation" {
}, name: "型式",
{ key: "spillwayType"
name: "溢流堰净宽(m)", },
key:"spillwayNetWidth" {
}, name: "最大单宽流量m³/(s·m)",
{ key: "spillwayMaxSingleWidthFlow"
name: "消能形式", },
key:"spillwayEnergyDissipation" {
}, name: "溢流堰顶高程(m)",
{ key: "spillwayCrestElevation"
name: "校验洪水下泄流量(m³/s)", },
key:"spillwayCheckFloodDischarge" {
}, name: "溢流堰净宽(m)",
{ key: "spillwayNetWidth"
name: "设计洪水下泄流量(m³/s)", },
key:"spillwayDesignFloodDischarge" {
}, name: "消能型式(m)",
{ key: "spillwayEnergyDissipation"
name: "消能防冲下泄流量(m³/s)", },
key:"spillwayScouringDischarge" {
} name: "校核泄洪流量(m³/s)",
], key: "spillwayCheckFloodDischarge"
4: [ },
{ {
name: "型式", name: "设计泄洪流量(m³/s)",
key:"irrigationType" key: "spillwayDesignFloodDischarge"
}, },
{ {
name: "地基特性", name: "消能防冲流量(m³/s)",
key:"irrigationFoundation" key: "spillwayScouringDischarge"
}, }
{ ],
name: "进口地板高程(m)", 3: [
key:"irrigationInletElevation" {
}, name: "进水口型式",
{ key: "waterConveyanceType"
name: "断面尺寸(m)", },
key:"irrigationCrossSection" {
}, name: "取水方式",
{ key: "waterConveyanceWaterIntakeType"
name: "洞长(m)", },
key:"irrigationLength" {
}, name: "地基特性",
{ key: "waterConveyanceFoundation"
name: "设计流量(m³/s)", },
key:"irrigationDesignFlow" {
}, name: "孔口尺寸",
{ key: "waterConveyanceOrificeSize"
name: "进口闸门型式", },
key:"irrigationGateType" {
}, name: "衬砌型式",
{ key: "waterConveyanceLiningType"
name: "进口启闭机型式", },
key:"irrigationHoistType" {
} name: "进口底槛高程(m)",
], key: "waterConveyanceInletBottomHigh"
5: [ },
{ {
name: "型式", name: "引水隧洞型式(m)",
key:"emptyingType" key: "waterConveyanceTunnelType"
}, },
{ {
name: "衬砌型式", name: "长度(m)",
key:"emptyingLiningType" key: "waterConveyanceLength"
}, },
{ {
name: "地基特性", name: "设计流量(m³/s)",
key:"emptyingFoundation" key: "waterConveyanceFlow"
}, },
{ {
name: "进口地板高程(m)", name: "闸门型式",
key:"emptyingInletElevation" key: "waterConveyanceGateType"
}, },
{ {
name: "断面尺寸(m)", name: "启闭机型式容量及数量",
key:"emptyingCrossSection" key: "waterConveyanceHoistNum"
}, },
{ ],
name: "洞长(m)",
key:"emptyingLength"
},
{
name: "设计流量(m³/s)",
key:"emptyingDesignFlow"
},
{
name: "进口闸门型式",
key:"emptyingGateType"
},
{
name: "进口启闭机型式",
key:"emptyingHoistType"
}
],
6: [
{
name: "坝顶高程(m)",
key:"floodControlCrestElevation"
},
{
name: "坝顶长度(m)",
key:"floodControlCrestLength"
},
{
name: "坝顶宽度(m)",
key:"floodControlCrestWidth"
},
{
name: "最大坝高(m)",
key:"floodControlMaxHeight"
}
],7: [
{
name: "防汛路长度(m)",
key:"roadLength"
},
{
name: "路面宽度(m)",
key:"roadWidth"
},
],
} }

View File

@ -127,7 +127,7 @@
const endTime = moment(this.etm).format("YYYY-MM-DD HH:mm:ss"); const endTime = moment(this.etm).format("YYYY-MM-DD HH:mm:ss");
try{ try{
const {data} = await uni.$http.get( const {data} = await uni.$http.get(
`/gunshiApp/tsg/stWaterR/getResMonthEcoFlow?startTime=${startTime}&endTime=${endTime}`,) `/gunshiApp/hsz/stWaterR/getResMonthEcoFlow?startTime=${startTime}&endTime=${endTime}`,)
if(data.code == 200){ if(data.code == 200){
this.stData = { this.stData = {
...this.stData, ...this.stData,
@ -143,7 +143,7 @@
async getJcsjData(){ async getJcsjData(){
try{ try{
const {data} = await uni.$http.post( const {data} = await uni.$http.post(
"/gunshiApp/tsg/stWaterR/ecologyFlowList", "/gunshiApp/hsz/stWaterR/ecologyFlowList",
{ {
startTime:moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), startTime:moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),
endTime:moment(this.etm).format("YYYY-MM-DD HH:mm:ss"), endTime:moment(this.etm).format("YYYY-MM-DD HH:mm:ss"),

View File

@ -127,7 +127,7 @@ export default {
}); });
try { try {
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/reservoir/water/monitor/data", "/gunshiApp/hsz/reservoir/water/monitor/data",
{ {
stcd: this.stcd, stcd: this.stcd,
stm: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), stm: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),

View File

@ -86,8 +86,8 @@
if (this.info.url) { if (this.info.url) {
this.isStartDownload = true this.isStartDownload = true
//App //App
// const baseUrl = `http://223.75.53.141:83/gunshiApp/tsg/${this.info.url}` // const baseUrl = `http://223.75.53.141:83/gunshiApp/hsz/${this.info.url}`
const baseUrl = uni.$http.baseUrl+`/gunshiApp/tsg/${this.info.url}` const baseUrl = uni.$http.baseUrl+`/gunshiApp/hsz/${this.info.url}`
downloadApp(baseUrl, current => { downloadApp(baseUrl, current => {
// //
this.hasProgress = true this.hasProgress = true

View File

@ -149,7 +149,7 @@
return; return;
}else{ }else{
console.log(this.queItem); console.log(this.queItem);
uni.$http.post('/gunshiApp/tsg/inspect/detail/handle', this.queItem).then(res => { uni.$http.post('/gunshiApp/hsz/inspect/detail/handle', this.queItem).then(res => {
uni.$showMsg(res.data.description); uni.$showMsg(res.data.description);
if(res.data.code == 200){ if(res.data.code == 200){
uni.navigateBack() uni.navigateBack()
@ -195,7 +195,7 @@
uploadFilePromise(url, name) { uploadFilePromise(url, name) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let a = uni.uploadFile({ let a = uni.uploadFile({
url: uni.$http.baseUrl +'/gunshiApp/tsg/inspect/task/file/upload/singleSimple', // url: uni.$http.baseUrl +'/gunshiApp/hsz/inspect/task/file/upload/singleSimple', //
filePath: url, filePath: url,
name: 'file', name: 'file',
formData: { formData: {

View File

@ -117,7 +117,7 @@
"inspectUserId": uni.getStorageSync('value').userId "inspectUserId": uni.getStorageSync('value').userId
} }
console.log(params,'dsd'); console.log(params,'dsd');
uni.$http.post('/gunshiApp/tsg/inspect/detail/page', params).then(res => { uni.$http.post('/gunshiApp/hsz/inspect/detail/page', params).then(res => {
uni.hideLoading(); uni.hideLoading();
this.list=res.data.data.records this.list=res.data.data.records
}) })

View File

@ -142,7 +142,7 @@
uploadFilePromise(url,name) { uploadFilePromise(url,name) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let a = uni.uploadFile({ let a = uni.uploadFile({
url: uni.$http.baseUrl +'/gunshiApp/tsg/maintain/service/file/upload/singleSimple', // url: uni.$http.baseUrl +'/gunshiApp/hsz/maintain/service/file/upload/singleSimple', //
filePath: url, filePath: url,
name: 'file', name: 'file',
formData: { formData: {

View File

@ -50,7 +50,7 @@ export default {
submitForm(params) { submitForm(params) {
// //
console.log({...params,...this.formData}); console.log({...params,...this.formData});
uni.$http.post('/gunshiApp/tsg/maintain/service/insert',{...params,...this.formData}).then(res=>{ uni.$http.post('/gunshiApp/hsz/maintain/service/insert',{...params,...this.formData}).then(res=>{
if(res.data.code == 200){ if(res.data.code == 200){
// uni.$u.toast('') // uni.$u.toast('')
uni.$u.toast('新增成功') uni.$u.toast('新增成功')

View File

@ -134,19 +134,19 @@
item.childen = item.children.map(i => { item.childen = item.children.map(i => {
i.handlePics?.map(item1=>{ i.handlePics?.map(item1=>{
item1.url ='http://223.75.53.141:9100/gs-tsg' + item1.filePath item1.url ='http://223.75.53.141:9100/gs-hsz' + item1.filePath
return item1 return item1
}) })
i.handleVideos?.map(item1=>{ i.handleVideos?.map(item1=>{
item1.url ='http://223.75.53.141:9100/gs-tsg' + item1.filePath item1.url ='http://223.75.53.141:9100/gs-hsz' + item1.filePath
return item1 return item1
}) })
i.inspectPics?.map(item1=>{ i.inspectPics?.map(item1=>{
item1.url ='http://223.75.53.141:9100/gs-tsg' + item1.filePath item1.url ='http://223.75.53.141:9100/gs-hsz' + item1.filePath
return item1 return item1
}) })
i.inspectVideos?.map(item1=>{ i.inspectVideos?.map(item1=>{
item1.url ='http://223.75.53.141:9100/gs-tsg' + item1.filePath item1.url ='http://223.75.53.141:9100/gs-hsz' + item1.filePath
return item1 return item1
}) })
if (!i.handlePics) { if (!i.handlePics) {
@ -206,8 +206,8 @@
return treelist return treelist
}, },
async getTreeList (){ async getTreeList (){
const res = await uni.$http.get('/gunshiApp/tsg/system/dept/list') const res = await uni.$http.get('/gunshiApp/hsz/system/dept/list')
const resUser = await uni.$http.get('/gunshiApp/tsg/system/user/list?pageNum=1&pageSize=9999') const resUser = await uni.$http.get('/gunshiApp/hsz/system/user/list?pageNum=1&pageSize=9999')
this.deptUserList = resUser.data.rows this.deptUserList = resUser.data.rows
if (res.data.data?.length > 0 && resUser.data.rows?.length > 0) { if (res.data.data?.length > 0 && resUser.data.rows?.length > 0) {
// return this.handleTreeList(res.data.data,res.data.rows) // return this.handleTreeList(res.data.data,res.data.rows)
@ -261,7 +261,7 @@
console.log(params); console.log(params);
const { const {
data data
} = await uni.$http.post(`/gunshiApp/tsg/inspect/task/finish`, params) } = await uni.$http.post(`/gunshiApp/hsz/inspect/task/finish`, params)
console.log(data,'2121'); console.log(data,'2121');
if(data.code==200){ if(data.code==200){
uni.$showMsg('提交成功'); uni.$showMsg('提交成功');
@ -370,7 +370,7 @@
uploadFilePromise(url, name, index, index1) { uploadFilePromise(url, name, index, index1) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let a = uni.uploadFile({ let a = uni.uploadFile({
url: uni.$http.baseUrl +'/gunshiApp/tsg/inspect/task/file/upload/singleSimple', // url: uni.$http.baseUrl +'/gunshiApp/hsz/inspect/task/file/upload/singleSimple', //
filePath: url, filePath: url,
name: 'file', name: 'file',
formData: { formData: {

View File

@ -107,7 +107,7 @@ export default {
uploadFilePromise(url,name) { uploadFilePromise(url,name) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let a = uni.uploadFile({ let a = uni.uploadFile({
url: uni.$http.baseUrl +'/gunshiApp/tsg/maintain/service/file/upload/singleSimple', // url: uni.$http.baseUrl +'/gunshiApp/hsz/maintain/service/file/upload/singleSimple', //
filePath: url, filePath: url,
name: 'file', name: 'file',
formData: { formData: {

View File

@ -95,7 +95,7 @@
if (this.status == 0) { if (this.status == 0) {
const { const {
data data
} = await uni.$http.get(`/gunshiApp/tsg/inspect/task/startInspect/${this.id}`) } = await uni.$http.get(`/gunshiApp/hsz/inspect/task/startInspect/${this.id}`)
if (data.code == 200) { if (data.code == 200) {
this.btnStatus = 1; this.btnStatus = 1;
this.getXjItem(this.id) this.getXjItem(this.id)
@ -115,7 +115,7 @@
try { try {
const { const {
data data
} = await uni.$http.get(`/gunshiApp/tsg/inspect/detail/info?taskId=${id}`) } = await uni.$http.get(`/gunshiApp/hsz/inspect/detail/info?taskId=${id}`)
if (data.code == 200) { if (data.code == 200) {
this.xjItem = data.data this.xjItem = data.data
} }
@ -151,7 +151,7 @@
try { try {
const { const {
data data
} = await uni.$http.post(`/gunshiApp/tsg/inspectTaskTrack/insert`, { } = await uni.$http.post(`/gunshiApp/hsz/inspectTaskTrack/insert`, {
taskId: this.id, taskId: this.id,
lttd: latitude, lttd: latitude,
lgtd: longitude lgtd: longitude

View File

@ -122,7 +122,7 @@
statusList: [0, 1] statusList: [0, 1]
} }
try { try {
const res = await uni.$http.post("/gunshiApp/tsg/inspect/task/list", params) const res = await uni.$http.post("/gunshiApp/hsz/inspect/task/list", params)
uni.hideLoading(); uni.hideLoading();
this.list = [...res.data.data]; this.list = [...res.data.data];
} catch (error) { } catch (error) {

View File

@ -1,30 +1,24 @@
<template> <template>
<view :style="{height:'100vh',overflow:'auto'}"> <view :style="{height:'100vh',overflow:'hidden'}">
<u-status-bar></u-status-bar> <u-status-bar></u-status-bar>
<u-navbar title="ai告警" :autoBack="true" :titleStyle="{ <u-navbar title="ai告警" :autoBack="true" :titleStyle="{
fontSize:'18px' fontSize:'18px'
}" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'> }" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'>
</u-navbar> </u-navbar>
<view class="" style="margin-top: 44px;;background-color: #f0f0f0;border-top: 1px solid #f0f0f0;"> <view class="" style="margin-top: 44px;">
<view class="" v-for="item in list" style="margin: 10px;background-color: #fff;padding: 10px;"> <u-tabs class="tabsClass" :list="tabs" :scrollable="true" :activeStyle="{color: 'rgb(37, 157, 255)',fontSize: '16px'}" :inactiveStyle="{color: '#606266',fontSize: '16px'}" lineColor="transparent" itemStyle="height: 44px" @click="onTab"></u-tabs>
<view class="item"> <div class="tableHead">
<!-- {{item.title}} --> <div class="td t1">视频点</div>
<image :src="item.imgPath" style="width:100%;"></image> <div class="td t2">告警时间</div>
<view class="context"> </div>
<view class="type"> <div class="tableBody">
{{typeObj[item.type]}} <div class="tableRow" v-for="(item, index) in currentList" :key="index">
</view> <div class="td t1">{{ item.stnm || '-' }}</div>
<view class="time"> <div class="td t2">{{ item.warningTime || '-' }}</div>
{{item.tm}} </div>
</view> <div :style="{height:'80px'}"></div>
</view> </div>
<view class="adress"> </view>
{{item.name}}
</view>
</view>
</view>
</view>
<u-calendar :show="show" mode="range" @confirm="confirm" @cancel='cancel'></u-calendar> <u-calendar :show="show" mode="range" @confirm="confirm" @cancel='cancel'></u-calendar>
</view> </view>
</template> </template>
@ -32,52 +26,41 @@
<script> <script>
import moment from 'moment' import moment from 'moment'
export default { export default {
data() { data() {
return { return {
show: false, show: false,
typeObj:{ model: {
1:"人员闯入", stm: '',
2: "工程车辆识别", etm: ''
3: "漂浮物识别", },
4: "游泳识别", tabs: [],
}, cur: 0,
model: { map: {}
stm: '', };
etm: '' },
}, computed: {
customStyle: { currentList(){
background: '#000' if (!this.tabs.length) return []
}, const k = this.tabs[this.cur].key
list: [{ const arr = this.map[k]
title: '5-29日常巡检', return Array.isArray(arr) ? arr : []
state: 0, }
xjx: '上游坝面、坝顶', },
name: '王自荣', onLoad(options){
time: '2024-05-30 09:31:23' const { map } = options || {}
}, this.map = map ? JSON.parse(decodeURIComponent(map)) : {}
{ this.tabs = Object.keys(this.map).map(k => ({ name: k, key: k }))
title: '5-29日常巡检', },
state: 1, methods: {
xjx: '上游坝面、坝顶', onTab(item, index){
name: '王自荣', this.cur = item.index
time: '2024-05-30 09:31:23' },
}, confirm(e) {
] console.log(e);
}; this.model.stm = e[0]
}, this.model.etm = e[1]
onLoad(options){ this.show = false
this.list = JSON.parse(decodeURIComponent(options.arr))
},
methods: {
getType(type){
},
confirm(e) {
console.log(e);
this.model.stm = e[0]
this.model.etm = e[1]
this.show = false
}, },
cancel() { cancel() {
this.show = false this.show = false
@ -87,16 +70,16 @@
url:'/pages/wtcl/detail/index' url:'/pages/wtcl/detail/index'
}) })
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.myTitleStyle { .myTitleStyle {
font-size: 30px; font-size: 30px;
background-color: red; background-color: red;
height: 200px; height: 200px;
} }
.tabsClass { .tabsClass {
margin-top: 44px; margin-top: 44px;
@ -106,24 +89,46 @@
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
} }
.item { .tabsClass{
border-bottom: 1px solid #f0f0f0; margin-top: 0;
padding-bottom: 10px; height: 44px;
.context{ padding: 0 40px;
display: flex; border-top: 1px solid #eee;
align-items: center; border-bottom: 1px solid #eee;
color: #333; }
} .tabsClass /deep/ .u-tabs__wrapper__nav__item__text{
.type{ white-space: nowrap;
border: 1px solid orange; overflow: hidden;
color: orange; text-overflow: ellipsis;
margin-right: 10px; }
padding: 2px; .tableHead{
} width: 97%;
.adress{ margin: 5px auto 0;
padding: 10px 0; height: 50px;
} background-color: #e4f2fe;
display: flex;
} color: #208FEE;
}
</style> .tableBody{
width: 97%;
height: calc(100vh - 180px);
background-color: #f7f7f7;
overflow-y: auto;
}
.tableRow{
width: 100%;
height: 46px;
display: flex;
border-bottom: 1px solid #eee;
background-color: #ffffff;
}
.td{
text-align: center;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
}
.t1{width: 60%}
.t2{width: 40%}
</style>

View File

@ -0,0 +1,94 @@
<template>
<view :style="{height:'100vh',overflow:'hidden'}">
<u-status-bar></u-status-bar>
<u-navbar title="河道预警" :autoBack="true" :titleStyle="{fontSize:'18px'}" :height="44" :safeAreaInsetTop="true" leftIconSize="20" leftIconColor="rgb(153, 153, 153)"></u-navbar>
<view :style="{marginTop:'44px'}">
<u-tabs class="tabsClass" :list="tabs" :scrollable="true" :activeStyle="{color: 'rgb(37, 157, 255)',fontSize: '16px'}" :inactiveStyle="{color: '#606266',fontSize: '16px'}" lineColor="transparent" itemStyle="height: 44px" @click="onTab"></u-tabs>
<div class="tableHead">
<div class="td t1">站名</div>
<div class="td t2">水位(m)</div>
</div>
<div class="tableBody">
<div class="tableRow" v-for="(item, index) in currentList" :key="index">
<div class="td t1">{{ item.stnm || '-' }}</div>
<div class="td t2">{{ item.rzWarn || '-' }}</div>
</div>
<div :style="{height:'80px'}"></div>
</div>
</view>
</view>
</template>
<script>
export default {
data() {
return {
tabs: [
{ name: '超校核洪水位', key: 'calState' },
{ name: '超设计洪水位', key: 'desState' },
{ name: '超汛限水位', key: 'flState' }
],
cur: 0,
map: {},
}
},
computed: {
currentList() {
if (!this.tabs || !this.tabs.length || !this.tabs[this.cur]) return []
const k = this.tabs[this.cur].key
const arr = this.map[k]
return Array.isArray(arr) ? arr : []
}
},
onLoad(options) {
const { map } = options || {}
this.map = map ? JSON.parse(decodeURIComponent(map)) : {}
},
methods: {
onTab(item, index) {
this.cur = item.index
}
}
}
</script>
<style lang="scss" scoped>
.tabsClass{
margin-top: 0;
height: 44px;
padding: 0 40px;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
.tabsClass /deep/ .u-tabs__wrapper__nav__item__text{ white-space: nowrap; }
.tableHead{
width: 97%;
margin: 5px auto 0;
height: 50px;
background-color: #e4f2fe;
display: flex;
color: #208FEE;
}
.tableBody{
width: 97%;
height: calc(100vh - 180px);
background-color: #f7f7f7;
overflow-y: auto;
}
.tableRow{
width: 100%;
height: 46px;
display: flex;
border-bottom: 1px solid #eee;
background-color: #ffffff;
}
.td{
text-align: center;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
}
.t1{width: 60%}
.t2{width: 40%}
</style>

View File

@ -0,0 +1,93 @@
<template>
<view :style="{height:'100vh',overflow:'hidden'}">
<u-status-bar></u-status-bar>
<u-navbar title="水库预警" :autoBack="true" :titleStyle="{fontSize:'18px'}" :height="44" :safeAreaInsetTop="true" leftIconSize="20" leftIconColor="rgb(153, 153, 153)"></u-navbar>
<view :style="{marginTop:'44px'}">
<u-tabs class="tabsClass" :list="tabs" :scrollable="true" :activeStyle="{color: 'rgb(37, 157, 255)',fontSize: '16px'}" :inactiveStyle="{color: '#606266',fontSize: '16px'}" lineColor="transparent" itemStyle="height: 44px" @click="onTab"></u-tabs>
<div class="tableHead">
<div class="td t1">站名</div>
<div class="td t2">水位(m)</div>
</div>
<div class="tableBody">
<div class="tableRow" v-for="(item, index) in currentList" :key="index">
<div class="td t1">{{ item.stnm || '-' }}</div>
<div class="td t2">{{ item.rzWarn || '-' }}</div>
</div>
<div :style="{height:'80px'}"></div>
</div>
</view>
</view>
</template>
<script>
export default {
data() {
return {
tabs: [
{ name: '超保证水位', key: 'overPromise' },
{ name: '超警戒水位', key: 'overWarn' }
],
cur: 0,
map: {},
}
},
computed: {
currentList() {
if (!this.tabs || !this.tabs.length || !this.tabs[this.cur]) return []
const k = this.tabs[this.cur].key
const arr = this.map[k]
return Array.isArray(arr) ? arr : []
}
},
onLoad(options) {
const { map } = options || {}
this.map = map ? JSON.parse(decodeURIComponent(map)) : {}
},
methods: {
onTab(item, index) {
this.cur = item.index
}
}
}
</script>
<style lang="scss" scoped>
.tabsClass{
margin-top: 0;
height: 44px;
padding: 0 40px;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
.tabsClass /deep/ .u-tabs__wrapper__nav__item__text{ white-space: nowrap; }
.tableHead{
width: 97%;
margin: 5px auto 0;
height: 50px;
background-color: #e4f2fe;
display: flex;
color: #208FEE;
}
.tableBody{
width: 97%;
height: calc(100vh - 180px);
background-color: #f7f7f7;
overflow-y: auto;
}
.tableRow{
width: 100%;
height: 46px;
display: flex;
border-bottom: 1px solid #eee;
background-color: #ffffff;
}
.td{
text-align: center;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
}
.t1{width: 60%}
.t2{width: 40%}
</style>

View File

@ -1,47 +1,35 @@
<template> <template>
<view :style="{height:'100vh',overflow:'hidden',backgroundColor: '#f0f0f0'}"> <view :style="{height:'100vh',overflow:'hidden'}">
<u-status-bar></u-status-bar> <u-status-bar></u-status-bar>
<u-navbar title="位移告警" :autoBack="true" :titleStyle="{ <u-navbar title="安全监测预警" :autoBack="true" :titleStyle="{
fontSize:'18px' fontSize:'18px'
}" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'> }" :height='44' :safeAreaInsetTop=true leftIconSize='20' leftIconColor='rgb(153, 153, 153)'>
</u-navbar> </u-navbar>
<view class="" style="margin-top: 44px;border-top: 1px solid #f0f0f0;"> <view class="" style="margin-top: 44px;border-top: 1px solid #f0f0f0;">
<view class="" v-for="item in list" style="margin: 10px;background-color: #fff;padding: 10px;"> <u-tabs class="tabsClass" :list="tabs" :scrollable="true" :activeStyle="{color: 'rgb(37, 157, 255)',fontSize: '16px'}" :inactiveStyle="{color: '#606266',fontSize: '16px'}" lineColor="transparent" itemStyle="height: 44px" @click="onTab"></u-tabs>
<view class="item"> <div class="tableHead">
<text>{{item.stationCode}}</text> <div class="td t1">测点</div>
<text>{{item.tm}}</text> <div class="td t2">监测值{{ unitLabel }}</div>
<div class="td t3">告警级别</div>
</view> </div>
<view class="contentItem"> <div class="tableBody">
<view class="itemC"> <div class="tableRow" v-for="(item, index) in currentList" :key="index">
<text>预警级别:</text> <div class="td t1">{{ item.stationCode || '-' }}</div>
<text>{{item.level===1?'黄色':'红色'}}</text> <div class="td t2">{{ displayValue(item) }}</div>
</view> <div class="td t3">{{ item.warnLevel || '-' }}</div>
<view class="itemC"> </div>
<text>监测值(mm):</text> <div :style="{height:'80px'}"></div>
<text>{{item.value}}</text> </div>
</view> </view>
<view class="itemC"> <u-calendar :show="show" mode="range" @confirm="confirm" @cancel='cancel'></u-calendar>
<text>阈值:</text>
<text>{{item.time}}</text>
</view>
<view class="itemC">
<text>校验规则描述:</text>
<text>{{item.ruleDesc}}</text>
</view>
</view>
</view>
</view>
<u-calendar :show="show" mode="range" @confirm="confirm" @cancel='cancel'></u-calendar>
</view> </view>
</template> </template>
<script> <script>
import moment from 'moment' import moment from 'moment'
export default { export default {
data() { data() {
return { return {
show: false, show: false,
model: { model: {
@ -51,32 +39,56 @@
customStyle: { customStyle: {
background: '#000' background: '#000'
}, },
list: [{ tabs: [
title: '5-29日常巡检', { name: '位移监测预警', key: 'shiftWarn' },
state: 0, { name: '渗压监测预警', key: 'pressWarn' },
xjx: '上游坝面、坝顶', { name: '渗流监测预警', key: 'flowWarn' }
name: '王自荣', ],
time: '2024-05-30 09:31:23' cur: 0,
}, map: {}
{ };
title: '5-29日常巡检', },
state: 1, computed: {
xjx: '上游坝面、坝顶', currentList(){
name: '王自荣', if (!this.tabs || !this.tabs.length || !this.tabs[this.cur]) return []
time: '2024-05-30 09:31:23' const k = this.tabs[this.cur].key
}, const arr = this.map[k]
] return Array.isArray(arr) ? arr : []
}; },
}, unitLabel(){
onLoad(options){ if (!this.tabs || !this.tabs.length || !this.tabs[this.cur]) return ''
// this.list = JSON.parse(decodeURIComponent(options.arr)) const k = this.tabs[this.cur].key
}, console.log("k",k);
methods: {
confirm(e) { if(k === 'shiftWarn') return '(mm)'
console.log(e); if(k === 'pressWarn') return '(m)'
this.model.stm = e[0] if(k === 'flowWarn') return '(L/s)'
this.model.etm = e[1] return ''
this.show = false }
},
onLoad(options){
const { map } = options || {}
this.map = map ? JSON.parse(decodeURIComponent(map)) : {}
},
methods: {
onTab(item, index){
this.cur = item.index
},
displayValue(item){
const v = item.value ?? item.val
const val = (v === 0 || v) ? v : '-'
const isShift = this.tabs && this.tabs[this.cur] && this.tabs[this.cur].key === 'shiftWarn'
const dir = item.direction
if(isShift && val !== '-' && dir){
return `${val}${dir}方向)`
}
return val
},
confirm(e) {
console.log(e);
this.model.stm = e[0]
this.model.etm = e[1]
this.show = false
}, },
cancel() { cancel() {
this.show = false this.show = false
@ -86,8 +98,8 @@
url:'/pages/wtcl/detail/index' url:'/pages/wtcl/detail/index'
}) })
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -137,4 +149,43 @@
padding: 10px; padding: 10px;
} }
} }
</style> .tabsClass{
margin-top: 0;
height: 44px;
padding: 0 40px;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
.tabsClass /deep/ .u-tabs__wrapper__nav__item__text{ white-space: nowrap; }
.tableHead{
width: 97%;
margin: 5px auto 0;
height: 50px;
background-color: #e4f2fe;
display: flex;
color: #208FEE;
}
.tableBody{
width: 97%;
height: calc(100vh - 180px);
background-color: #f7f7f7;
overflow-y: auto;
}
.tableRow{
width: 100%;
height: 46px;
display: flex;
border-bottom: 1px solid #eee;
background-color: #ffffff;
}
.td{
text-align: center;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
}
.t1{width: 40%}
.t2{width: 30%}
.t3{width: 30%}
</style>

View File

@ -7,25 +7,38 @@
</u-navbar> </u-navbar>
<view class="" style="margin-top:44px;border-top: 1px solid #f0f0f0;"> <view class="" style="margin-top:44px;border-top: 1px solid #f0f0f0;">
<view class="align-center" style="height: 44px;background-color: #f0f0f0;font-size: 12px;padding: 0 10px;">
预警时间{{ model.start }} {{ model.end }}
</view>
<view class="itemYj"> <view class="itemYj">
<view class="itemYjCont" v-for="(value, key) of list"> <view class="itemYjCont" @click="navigateSk">
<view class="item" @click="todetail(key, value)"> <view class="item">
<view :style="`color:${getColor(value)};`" class="num"> <view :class="skCount ? 'numNonZero' : 'numZero'">{{ skCount }}</view>
{{ getValue(value) }} <view>水库预警</view>
</view> </view>
<view class="title"> </view>
{{ mapType[key] }}
</view> <view class="itemYjCont" @click="navigateRiver">
<view class="item">
<view :class="riverCount ? 'numNonZero' : 'numZero'">{{ riverCount }}</view>
<view>河道预警</view>
</view>
</view>
<view class="itemYjCont" @click="navigateSafe">
<view class="item">
<view :class="safeCount ? 'numNonZero' : 'numZero'">{{ safeCount }}</view>
<view>安全监测预警</view>
</view>
</view>
<view class="itemYjCont" @click="navigateAI">
<view class="item">
<view :class="aiCount ? 'numNonZero' : 'numZero'">{{ aiCount }}</view>
<view>AI告警(近24h)</view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<u-calendar :show="show" mode="range" @confirm="confirm" @cancel='cancel'></u-calendar>
</view> </view>
</template> </template>
@ -35,56 +48,61 @@ import moment from 'moment'
export default { export default {
data() { data() {
return { return {
skCount: 0,
riverCount: 0,
safeCount: 0,
aiCount: 0,
show: false, show: false,
model: { model: {
start: moment().subtract(1, 'day').format('YYYY-MM-DD HH:mm:ss'), start: moment().subtract(1, 'day').format('YYYY-MM-DD HH:mm:ss'),
end: moment().format('YYYY-MM-DD HH:mm:ss') end: moment().format('YYYY-MM-DD HH:mm:ss')
}, },
mapType: {
aiWarnCount: 'AI告警',
rzWarn: "水位告警",
// qxWarn:'',
pressWarn: '渗流告警',
flowWarn: '渗压告警',
shiftWarn: '位移告警',
byWarn: '白蚁告警'
},
list: { list: {
rzWarn: "正常(-4.031)",
flowWarn: [],
pressWarn: [],
// qxWarn:[],
shiftWarn: [],
aiWarnCount: 0,
byWarn: 0
} }
}; };
}, },
onLoad() { onLoad() {
this.getList(); this.getList();
}, },
methods: { methods: {
getValue(value) { navigateSk() {
if (Array.isArray(value)) { if (!this.skCount) return;
return value.length const map = this.list?.skWarningVoMap || {};
} else { const arr = encodeURIComponent(JSON.stringify(map));
return value uni.navigateTo({
} url: '/pages/yj/detail/skDetail?map=' + arr
}, })
getColor(value) { },
let str = ''; navigateRiver() {
str = this.getValue(value) + ''; if (!this.riverCount) return;
return str.includes("正常") ? '#04D919' : '#D9001B' const map = this.list?.riverWarningVoMap || {};
}, const arr = encodeURIComponent(JSON.stringify(map));
confirm(e) { uni.navigateTo({
console.log(e); url: '/pages/yj/detail/riverDetail?map=' + arr
this.model.stm = e[0] })
this.model.etm = e[1] },
this.show = false navigateSafe() {
}, if (!this.safeCount) return;
cancel() { const data = this.list || {};
this.show = false const map = {
}, shiftWarn: data.shiftWarn || [],
flowWarn: data.flowWarn || [],
pressWarn: data.pressWarn || []
};
const arr = encodeURIComponent(JSON.stringify(map));
uni.navigateTo({
url: '/pages/yj/detail/wyyj?map=' + arr
})
},
navigateAI() {
if (!this.aiCount) return;
const map = this.list?.aiWarnVoMap || {};
const arr = encodeURIComponent(JSON.stringify(map));
uni.navigateTo({
url: '/pages/yj/detail/aiyj?map=' + arr
})
},
todetail(key, e) { todetail(key, e) {
let arr = encodeURIComponent(JSON.stringify(e)) let arr = encodeURIComponent(JSON.stringify(e))
console.log(key, e.length); console.log(key, e.length);
@ -123,9 +141,38 @@ export default {
} }
}, },
getList() { getList() {
uni.$http.post('/gunshiApp/tsg/stQxWarnR/home/warn', this.model).then(res => { uni.$http.post('/gunshiApp/hsz/stQxWarnR/home/warn', this.model).then(res => {
delete res.data.data.qxWarn; const data = res.data.data;
this.list = res.data.data if (!data) return;
delete data.qxWarn;
this.list = data;
// 1. (skCount)
const skMap = data.skWarningVoMap || {};
this.skCount = (skMap.flState?.length || 0) +
(skMap.calState?.length || 0) +
(skMap.desState?.length || 0);
// 2. (riverCount)
const riverMap = data.riverWarningVoMap || {};
this.riverCount = (riverMap.overWarn?.length || 0) +
(riverMap.overPromise?.length || 0);
// 3. (safeCount)
this.safeCount = (data.shiftWarn?.length || 0) +
(data.flowWarn?.length || 0) +
(data.pressWarn?.length || 0);
// 4. AI (aiCount)
const aiMap = data.aiWarnVoMap || {};
let aiTotal = 0;
for (const key in aiMap) {
if (Array.isArray(aiMap[key])) {
aiTotal += aiMap[key].length;
}
}
this.aiCount = aiTotal;
}) })
}, },
@ -164,6 +211,16 @@ export default {
text-align: center; text-align: center;
} }
.numZero {
color: #000;
font-size: 20px;
}
.numNonZero {
font-size: 20px;
color: #D9001B;
}
.normal { .normal {
color: #04D919; color: #04D919;
} }
@ -176,4 +233,4 @@ export default {
// margin: 5px; // margin: 5px;
} }
} }
</style> </style>

View File

@ -170,7 +170,7 @@ export default {
}); });
try { try {
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/attResBase/rainBasinDivision/queryStStbprpPerHour/StcdAndStartTimeAndEndTime", "/gunshiApp/hsz/attResBase/rainBasinDivision/queryStStbprpPerHour/StcdAndStartTimeAndEndTime",
{ {
stcd: this.stcd, stcd: this.stcd,
startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),
@ -191,7 +191,7 @@ export default {
async getrainChartInfo() { async getrainChartInfo() {
try { try {
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/attResBase/rainBasinDivision/queryStStbprpPerHourChart/StcdAndStartTimeAndEndTime", "/gunshiApp/hsz/attResBase/rainBasinDivision/queryStStbprpPerHourChart/StcdAndStartTimeAndEndTime",
{ {
stcd: this.stcd, stcd: this.stcd,
startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"), startTime: moment(this.stm).format("YYYY-MM-DD HH:mm:ss"),
@ -212,7 +212,7 @@ export default {
async getTotalTableData() { async getTotalTableData() {
try { try {
const { data } = await uni.$http.get( const { data } = await uni.$http.get(
`/gunshiApp/tsg/attResBase/rainBasinDivision/queryStPptnDetails/stcd?stcd=${this.stcd}` `/gunshiApp/hsz/attResBase/rainBasinDivision/queryStPptnDetails/stcd?stcd=${this.stcd}`
); );
if (data.code == 200) { if (data.code == 200) {
this.totalTableData = { ...data.data }; this.totalTableData = { ...data.data };
@ -240,7 +240,7 @@ export default {
async getPreReportData() { async getPreReportData() {
try { try {
const { data } = await uni.$http.post( const { data } = await uni.$http.post(
"/gunshiApp/tsg/weather/short/fore", "/gunshiApp/hsz/weather/short/fore",
{ {
tm: moment(this.projectTime).format("YYYYMMDDHHmm"), tm: moment(this.projectTime).format("YYYYMMDDHHmm"),
} }

View File

@ -114,24 +114,21 @@
1: '/static/tabs/zweiyi1.png', 1: '/static/tabs/zweiyi1.png',
2: "/static/tabs/zweiyi2.png" 2: "/static/tabs/zweiyi2.png"
}, },
"白蚁监测": {
1: '/static/tabs/baiyi1.png',
2: "/static/tabs/baiyi2.png"
},
} }
export default { export default {
data() { data() {
return { return {
latitude: 31.495, latitude: 30.99963623539533,
longitude: 114.767, longitude: 115.06283265682754,
enableSatellite: false, enableSatellite: true,
scale:16.5, scale:15.9,
popupOpen: false, popupOpen: false,
typeChecked: 2, typeChecked: 1,
markers: [ markers: [
{ {
latitude: 31.4962, latitude: 30.998573835167083,
longitude: 114.7691, longitude: 115.06305299657932,
iconPath: '/static/tabs/yhd1.png', iconPath: '/static/tabs/yhd1.png',
width: 15, width: 15,
height: 15, height: 15,
@ -140,20 +137,10 @@
pointType: "溢洪道", pointType: "溢洪道",
name: "水库工程" name: "水库工程"
}, },
{ {
latitude: 31.4954, latitude: 31.00015710,
longitude: 114.7707, longitude: 115.06211221,
iconPath: '/static/tabs/zweiyi1.png',
width: 15,
height: 15,
id: 98,
title: "溢洪道位移监测",
pointType: "溢洪道位移",
name: "安全监测"
},
{
latitude: 31.4956,
longitude: 114.7691,
iconPath: '/static/tabs/shenliu1.png', iconPath: '/static/tabs/shenliu1.png',
width: 15, width: 15,
height: 15, height: 15,
@ -163,104 +150,49 @@
name: "安全监测" name: "安全监测"
}, },
{ {
latitude: 31.4933000, latitude: 30.99999014,
longitude: 114.7686000, longitude: 115.06264986,
iconPath: '/static/tabs/zweiyi1.png', iconPath: '/static/tabs/zweiyi1.png',
width: 15, width: 15,
height: 15, height: 15,
id: 101, id: 101,
title: "主坝位移监测", title: "位移监测",
pointType: "主坝位移", pointType: "主坝位移",
name: "安全监测" name: "安全监测"
}, },
{ {
latitude: 31.4917000, latitude: 30.99951106,
longitude: 114.7686000, longitude: 115.06231647,
iconPath: '/static/tabs/zshenya1.png', iconPath: '/static/tabs/zshenya1.png',
width: 15, width: 15,
height: 15, height: 15,
id: 102, id: 102,
title: "主坝渗压监测", title: "渗压监测",
pointType: "主坝渗压", pointType: "主坝渗压",
name: "安全监测" name: "安全监测"
}, },
{ {
latitude: 31.492300, latitude: 30.99963623539533,
longitude: 114.7686000, longitude: 115.06283265682754,
iconPath: '/static/tabs/zhuba1.png', iconPath: '/static/tabs/zhuba1.png',
width: 15, width: 15,
height: 15, height: 15,
id: 103, id: 103,
title: "坝", title: "坝",
pointType: "主坝", pointType: "主坝",
name: "水库工程" name: "水库工程"
}, },
{ {
latitude: 31.490900, latitude: 31.00123676570212,
longitude: 114.7666000, longitude: 115.06253708716164,
iconPath: '/static/tabs/fdt1.png', iconPath: '/static/tabs/fdt1.png',
width: 15, width: 15,
height: 15, height: 15,
id: 104, id: 104,
title: "灌溉发电洞", title: "输水建筑物",
pointType: "发电洞", pointType: "发电洞",
name: "水库工程" name: "水库工程"
}, },
{
latitude: 31.490500,
longitude: 114.7664000,
iconPath: '/static/tabs/zshenya1.png',
width: 15,
height: 15,
id: 105,
title: "灌溉发电洞渗压监测",
pointType: "发电洞渗压",
name: "安全监测"
},
{
latitude: 31.490200,
longitude: 114.7667000,
iconPath: '/static/tabs/zweiyi1.png',
width: 15,
height: 15,
id: 106,
title: "灌溉发电洞变形监测",
pointType: "发电洞位移",
name: "安全监测"
},
{
latitude: 31.491300,
longitude: 114.7642000,
iconPath: '/static/tabs/zhuba1.png',
width: 15,
height: 15,
id: 107,
title: "副坝",
pointType: "副坝",
name: "水库工程"
},
{
latitude: 31.491300,
longitude: 114.7642000,
iconPath: '/static/tabs/zshenya1.png',
width: 15,
height: 15,
id: 97,
title: "副坝渗压监测",
pointType: "副坝渗压",
name: "安全监测"
},
{
latitude: 31.491200,
longitude: 114.7636000,
iconPath: '/static/tabs/zweiyi1.png',
width: 15,
height: 15,
id: 108,
title: "副坝位移监测",
pointType: "副坝位移",
name: "安全监测"
},
], ],
map: null, map: null,
windowHeight: 0, windowHeight: 0,
@ -302,15 +234,7 @@
textColor: "#02a7f0", textColor: "#02a7f0",
isSelected4: true, isSelected4: true,
}, },
{
icon1: "/static/tabs/baiyi1.png",
icon2: "/static/tabs/baiyi2.png",
name: "白蚁监测",
id: 5,
showIcon: "/static/tabs/baiyi2.png",
textColor: "#02a7f0",
isSelected5: true,
}
] ]
} }
}, },
@ -331,8 +255,8 @@
methods: { methods: {
onControlTap() { onControlTap() {
this.$refs.map.moveToLocation({ this.$refs.map.moveToLocation({
latitude: 31.495, latitude: 31.4923,
longitude: 114.767 longitude: 114.7686
}) })
}, },
onTcControlTap() { onTcControlTap() {
@ -350,17 +274,17 @@
}else if( type == '渗流'){ }else if( type == '渗流'){
url=`/pages/sjc/index?name=渗流监测` url=`/pages/sjc/index?name=渗流监测`
}else if(type == "主坝位移"){ }else if(type == "主坝位移"){
url=`/pages/sjc/index?name=主坝位移监测` url=`/pages/sjc/index?name=位移监测`
}else if(type == "主坝渗压"){ }else if(type == "主坝渗压"){
url=`/pages/sjc/index?name=主坝渗压监测` url=`/pages/sjc/index?name=渗压监测`
}else if(type == "主坝"){ }else if(type == "主坝"){
url='/pages/skInfo/detail/index?value=2&key=1' url='/pages/skInfo/detail/index?value=2&key=1'
}else if(type == "溢洪道位移"){ }else if(type == "溢洪道位移"){
url=`/pages/sjc/index?name=溢洪道位移监测` url=`/pages/sjc/index?name=溢洪道位移监测`
}else if(type == "溢洪道"){ }else if(type == "溢洪道"){
url='/pages/skInfo/detail/index?value=2&key=3' url='/pages/skInfo/detail/index?value=2&key=2'
}else if(type == "发电洞"){ }else if(type == "发电洞"){
url='/pages/skInfo/detail/index?value=2&key=4' url='/pages/skInfo/detail/index?value=2&key=3'
}else if(type == "发电洞渗压"){ }else if(type == "发电洞渗压"){
url=`/pages/sjc/index?name=灌溉发电洞渗压监测` url=`/pages/sjc/index?name=灌溉发电洞渗压监测`
}else if(type == "副坝渗压"){ }else if(type == "副坝渗压"){
@ -423,7 +347,7 @@
try { try {
const { const {
data data
} = await uni.$http.post("/gunshiApp/tsg/attCctvBase/list") } = await uni.$http.post("/gunshiApp/hsz/attCctvBase/list")
if (data.code == 200) { if (data.code == 200) {
const videoList = data.data.map(item => ({ const videoList = data.data.map(item => ({
...item, ...item,
@ -448,7 +372,7 @@
try { try {
const { const {
data data
} = await uni.$http.post("/gunshiApp/tsg/real/rain/list", { } = await uni.$http.post("/gunshiApp/hsz/real/rain/list", {
stm: moment().add(-1, 'days').format('YYYY-MM-DD 08:00:00'), stm: moment().add(-1, 'days').format('YYYY-MM-DD 08:00:00'),
etm: moment(moment().format('YYYY-MM-DD 08:00:00')) etm: moment(moment().format('YYYY-MM-DD 08:00:00'))
}) })
@ -477,7 +401,7 @@
try { try {
const { const {
data data
} = await uni.$http.post("/gunshiApp/tsg/reservoir/water/listV2", ) } = await uni.$http.post("/gunshiApp/hsz/reservoir/water/listV2", )
if (data.code == 200) { if (data.code == 200) {
const waterList = data.data.map(item => ({ const waterList = data.data.map(item => ({
...item, ...item,
@ -504,7 +428,7 @@
try { try {
const { const {
data data
} = await uni.$http.get("/gunshiApp/tsg/termite/survey/list/byDevice") } = await uni.$http.get("/gunshiApp/hsz/termite/survey/list/byDevice")
if (data.code == 200) { if (data.code == 200) {
const byList = data.data.map(item => ({ const byList = data.data.map(item => ({
...item, ...item,
@ -566,4 +490,4 @@
// padding: 5px; // padding: 5px;
} }
</style> </style>

BIN
static/skimg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB