From edc8494de36373d8d67c69201c4eeed0b0f96f08 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期六, 16 十二月 2023 13:10:39 +0800
Subject: [PATCH] #
---
Monitor-APP/pages/home/home.vue | 323 ++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 241 insertions(+), 82 deletions(-)
diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue
index f44947d..a283896 100644
--- a/Monitor-APP/pages/home/home.vue
+++ b/Monitor-APP/pages/home/home.vue
@@ -15,59 +15,19 @@
<view class="mian-item-box">
<y-box>
<view class="box-item">
- <text class="item-title">鑷姩鍖栫珛浣撲粨搴�</text>
- <text class="item-subTitle">Automatic Storageand Retrieval System</text>
- <text class="item-text" style="text-align: left;">鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</text>
+ <text class="item-title">鎻愬崌鏈鸿繍琛屾暟鎹�</text>
+ <text class="item-subTitle">Hoist operating data</text>
+ <view style="width: 100%;height: 25vh;">
+ <qiun-data-charts type="column" :chartData="chartsDataLine2" :opts="opts" :echartsH5="true" :echartsApp="true"/>
+ </view>
</view>
<view class="box-item">
- <text class="item-title">浠撳簱鏁版嵁</text>
- <text class="item-subTitle">warehouse data</text>
+ <text class="item-title">绌挎杞﹁繍琛屾暟鎹�</text>
+ <text class="item-subTitle">Shuttle operation data</text>
<view class="img-box">
-
- <view class="item-img">
- <image src="../../static/a1.png" mode="aspectFit"></image>
- <view class="flex-col" style="width: calc(100% - 5vw);">
- <view class="flex-row" style="position: relative;" >
- <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDistance}}</view>
- <view style="position: absolute;bottom: 0;left: 10vw;">KM</view>
- </view>
- <view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌璺濈(鍗冪背)</view>
- </view>
+ <view style="width: 100%;height: 25vh;">
+ <qiun-data-charts type="ring" :chartData="chartsDataPie3" />
</view>
-
- <view class="item-img">
- <image src="../../static/b1.png" mode="aspectFit"></image>
- <view class="flex-col" style="width: calc(100% - 5vw);">
- <view class="flex-row" style="position: relative;" >
- <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDistance}}</view>
- <view style="position: absolute;bottom: 0;left: 10vw;">KM</view>
- </view>
- <view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷璺濈(鍗冪背)</view>
- </view>
- </view>
-
- <view class="item-img">
- <image src="../../static/c1.png" mode="aspectFit"></image>
- <view class="flex-col" style="width: calc(100% - 5vw);">
- <view class="flex-row" style="position: relative;" >
- <view style="-width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDuration}}</view>
- <view style="position: absolute;bottom: 0;left: 10vw;">H</view>
- </view>
- <view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌鏃堕暱(灏忔椂)</view>
- </view>
- </view>
-
- <view class="item-img">
- <image src="../../static/d1.png" mode="aspectFit"></image>
- <view class="flex-col" style="width: calc(100% - 5vw);">
- <view class="flex-row" style="position: relative;" >
- <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDuration}}</view>
- <view style="position: absolute;bottom: 0;left: 10vw;">H</view>
- </view>
- <view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷鏃堕暱(灏忔椂)</view>
- </view>
- </view>
-
</view>
</view>
<view class="box-item">
@@ -90,7 +50,7 @@
<view class="flex-col" style="width: 100%;align-items: flex-start;position: relative;font-size: 1vw">
<!-- 杩涘害鏉� -->
- <view class="flex-row" style="width: 100%;position: relative;margin-top: 5%;">
+ <view class="flex-row" style="width: 100%;position: relative;">
<view class="progressBar" style="width: 80%;height: 2vw;">
<view class="progress" :style="'width:'+ baseInfo.usedPr + '%'"></view>
</view>
@@ -214,12 +174,16 @@
<!-- 鏂囨湰瀹瑰櫒 -->
<view class="text-content">
<!-- head -->
- <view class="swiper-head">
- <view style="flex: 1;">绔欏彿锛歿{infoText.staNo}}</view>
- <view style="flex: 2;">鍟嗗搧缂栧彿</view>
+ <!-- <view class="swiper-head">
+ <view style="flex: 1;">浣滀笟鏁伴噺锛歿{infoText.barcode}}</view>
+ <view style="flex: 1;">鍓╀綑鏁伴噺</view>
+ </view> -->
+ <view class="swiper-head" v-show="swiperList.length > 0">
+ <view style="flex: 2;">鎵樼洏鐮侊細{{infoText.barcode}} <br /> 璁㈠崟鍙�</view>
+ <view style="flex: 2;">{{infoText.title2}} <br />鍟嗗搧缂栧彿</view>
<view style="flex: 2;">绠辩爜</view>
<view style="flex: 2;">鍟嗗搧鍚嶇О</view>
- <view style="flex: 2;">瑙勬牸</view>
+ <view style="flex: 5;">瑙勬牸</view>
<view style="flex: 1;">浣滀笟鏁伴噺</view>
<view style="flex: 1;">鍓╀綑鏁伴噺</view>
</view>
@@ -233,11 +197,11 @@
display-multiple-items="15"
circular="true" :autoplay="true" :interval="3000" :duration="1000">
<swiper-item class="swiper-item" v-for="(item,i) in swiperList" :key="i" :style="item.color">
- <view style="flex: 1;">No:{{i+1}}</view>
+ <view style="flex: 2;word-break: break-all;">{{item.orderNo ? item.orderNo : '--'}}</view>
<view style="flex: 2;">{{item.matNo}}</view>
<view style="flex: 2;">{{item.containerCode}}</view>
<view style="flex: 2;">{{item.maknx}}</view>
- <view style="flex: 2;">{{item.specs}}</view>
+ <view style="flex: 5;">{{item.specs}}</view>
<view style="flex: 1;">{{item.count}}</view>
<view style="flex: 1;">{{item.total}}</view>
</swiper-item>
@@ -317,6 +281,15 @@
</view>
</view>
</view>
+ <!-- 灏忚溅寮傚父 -->
+ <view class="board">
+ <uni-transition ref="ani" custom-class="transition" :mode-class="newModeClass" :show="errorBoardShow">
+ <view class="error-board" >
+ <text v-for="item in carInfo">{{item}}</text>
+ </view>
+ </uni-transition>
+ </view>
+
<view style="color: #FFF;position: fixed;bottom: 10px;left: 10px;" v-show="timeOut">
杩炴帴瓒呮椂: {{times}} s
</view>
@@ -329,6 +302,9 @@
export default {
data() {
return {
+ newModeClass: 'slide-top',
+ errorBoardShow: false,
+ carInfo: [],
series: [],
homeViewShow: true,
infoViewShow: false ,
@@ -352,6 +328,10 @@
"categories": [],
"series": []
},
+ "Line2": {
+ "categories": [],
+ "series": []
+ },
"Pie": {
"series": [{
"data": []
@@ -362,6 +342,7 @@
calendar: '',
ringOpts:{},
chartsDataLine1: {},
+ chartsDataLine2: {},
chartsDataPie2: {},
fontSize: '',
height: '',
@@ -377,7 +358,8 @@
infoType: 0,
text: '',
infoText: {
- title: '',
+ title: '鑷姩浠撳簱WCS鐩戞帶骞冲彴',
+ title2: '',
staNo: "",
matnr: "",
maknx: "",
@@ -397,7 +379,42 @@
timeOut: false,
times: 0,
currDate: '',
- textred: 'textred'
+ textred: 'textred',
+ opts: {
+ rotate: false,
+ rotateLock: false,
+ color: ["#1890FF","#91CB74","#FAC858","#EE6666","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
+ padding: [5,5,5,5],
+ dataLabel: true,
+ enableScroll: false,
+ legend: {
+ show: true,
+ position: "right",
+ lineHeight: 25
+ },
+ title: {
+ name: "鏀剁泭鐜�",
+ fontSize: 15,
+ color: "#FFF"
+ },
+ subtitle: {
+ name: "70%",
+ fontSize: 25,
+ // color: "#7cb5ec"
+ },
+ extra: {
+ ring: {
+ ringWidth: 60,
+ activeOpacity: 0.5,
+ activeRadius: 10,
+ offsetAngle: 0,
+ labelWidth: 15,
+ border: true,
+ // borderWidth: 3,
+ borderColor: "#FFFFFF"
+ }
+ }
+ }
}
},
onShow() {
@@ -423,43 +440,101 @@
this.getDate2()
setTimeout(()=>{
- // this.getServerData()
+ this.getServerData()
+ this.getShuttle()
// this.initlineChart()
// this.initPieChart()
// this.getOther()
setTimeout(()=>{
this.getServerData()
- this.initlineChart()
- this.initPieChart()
- this.getOther()
+ // this.initlineChart()
+ // this.initPieChart()
+ // this.getOther()
setTimeout(()=>{
- this.getServerData()
- this.initlineChart()
- this.initPieChart()
- this.getOther()
+ // this.getServerData()
+ // this.initlineChart()
+ // this.initPieChart()
+ // this.getOther()
},3000)
},1000)
},1000)
},
onLoad() {
setInterval(()=>{
+ // this.getServerData()
this.getDate2()
this.getUrl()
// this.getInfo()
// this.getError()
- this.getInfo2()
- this.getError2()
+ // this.getCarInfo()
+ // this.getCarInfoTest()
+ // this.getInfo2()
+ // this.getError2()
this.controller()
},1000)
+ // setInterval(()=>{
+ // this.changeErrorShow()
+ // },5000)
+
setInterval(()=>{
- this.getServerData()
- this.initlineChart()
- this.initPieChart()
- this.getOther()
+ // this.getServerData()
+ // this.initlineChart()
+ // this.initPieChart()
+ // this.getOther()
},600000)
},
methods: {
+ getShuttle() {
+ let res = ycqdata.infoData2.data
+ this.shuttleInfoModel(res)
+ },
+ shuttleInfoModel(res) {
+ if (res.code == 200 && res.data != '') {
+ let arr = []
+ for (let k of res.data.shuttle) {
+ arr.push(k.count)
+ }
+ this.chartsData.Line2.series = arr
+ } else {
+
+ }
+ },
+ changeErrorShow() {
+ this.errorBoardShow = !this.errorBoardShow
+ },
+ getCarInfoTest() {
+ let that = this
+ var result = ycqdata.carError
+ var res = result.data
+ that.carInfoModel(res)
+ },
+ getCarInfo() {
+ let that = this
+ uni.request({
+ url: that.commonUrl + "/monitor/device/error",
+ method:"GET",
+ success(result) {
+ var res = result.data
+ that.carInfoModel(res)
+ }
+ })
+ },
+ carInfoModel(res) {
+ let infoList = []
+
+ if (res.code == 200 && res.data != '') {
+ let str = ''
+ for (let k of res.data) {
+ str = `${k.deviceNo}鍙�${k.device}-${k.errorMsg}`
+ infoList.push(str)
+ }
+ this.carInfo = infoList
+ this.errorBoardShow = true
+ } else {
+ this.errorBoardShow = false
+ }
+ },
timeOuts() {
console.log(this.times);
},
@@ -467,8 +542,13 @@
this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + "/" +this.baseUrl
},
getServerData() {
- this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line))
- this.chartsDataPie2=JSON.parse(JSON.stringify(this.chartsData.Pie))
+ // this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line))
+ // this.chartsDataPie2=JSON.parse(JSON.stringify(this.chartsData.Pie))
+
+ this.chartsDataLine1=JSON.parse(JSON.stringify(demodata.Line))
+ this.chartsDataPie2=JSON.parse(JSON.stringify(demodata.Pie))
+ this.chartsDataLine2=JSON.parse(JSON.stringify(demodata.Line))
+ this.chartsDataPie3=JSON.parse(JSON.stringify(demodata.Pie))
},
// 鑾峰彇閿欒淇℃伅
getInfo2() {
@@ -537,6 +617,7 @@
if (that.infoType == 1) {
return
}
+ that.infoText.title = '鑷姩浠撳簱WCS鐩戞帶骞冲彴'
that.infoType = 0
}
}
@@ -553,30 +634,88 @@
that.infoType = 1
if (res.data[0].ioType === 101) {
that.infoText.title = '鍏ㄦ澘鍑哄簱'
+ that.infoText.title2 = '鍏ㄦ澘鍑哄簱'
} else if(res.data[0].ioType === 103) {
that.infoText.title = '妫�鏂欏嚭搴�'
+ that.infoText.title2 = '妫�鏂欏嚭搴�'
} else if(res.data[0].ioType === 107) {
that.infoText.title = '鐩樼偣鍑哄簱'
+ that.infoText.title2 = '鐩樼偣鍑哄簱'
}
res.data[0].matDtos
for(let k in res.data[0].matDtos) {
- if(res.data[0].matDtos[k].count != 0) {
+ if(res.data[0].matDtos[k].count == 0) {
res.data[0].matDtos[k]['color'] = 'color: #df741c'
}
}
- console.log(that.swiperList);
that.infoText.staNo = res.data[0].staNo
+ that.infoText.barcode = res.data[0].barcode
that.swiperList = res.data[0].matDtos
- // that.infoText.matnr = res.data[0].matDtos[0].matnr
- // that.infoText.specs = res.data[0].matDtos[0].specs
- // that.infoText.maknx = res.data[0].matDtos[0].maknx
- // that.infoText.count = res.data[0].matDtos[0].count
} else {
if (that.infoType == 2 || that.infoType == 3) {
return;
}
+ that.infoText.title = '鑷姩浠撳簱WCS鐩戞帶骞冲彴'
that.infoType = 0
+ }
+ },
+ controller2() {
+ switch(this.infoType) {
+ case 1:
+ if (this.homeViewShow) {
+ this.homeViewShow = false
+ this.homeMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.infoViewShow = true
+ this.infoMode = ['fade', 'slide-bottom']
+ },1000)
+ } else if (this.errorInfoViewShow) {
+ this.errorInfoViewShow = false
+ this.errorInfoMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.infoViewShow = true
+ this.infoMode = ['fade', 'slide-bottom']
+ },1000)
+ }
+ return;
+ // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
+ case 2:
+ if (this.homeViewShow) {
+ this.homeViewShow = false
+ this.homeMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.errorInfoViewShow = true
+ this.errorInfoMode = ['fade', 'slide-bottom']
+ },1000)
+ } else if (this.infoViewShow) {
+ this.infoViewShow = false
+ this.infoMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.errorInfoViewShow = true
+ this.errorInfoMode = ['fade', 'slide-bottom']
+ },1000)
+ }
+ return;
+ // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
+ case 3:
+ if (this.homeViewShow) {
+ this.homeViewShow = false
+ this.homeMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.errorInfoViewShow = true
+ this.errorInfoMode = ['fade', 'slide-bottom']
+ },1000)
+ } else if (this.infoViewShow) {
+ this.infoViewShow = false
+ this.infoMode = ['fade', 'slide-bottom']
+ setTimeout(()=>{
+ this.errorInfoViewShow = true
+ this.errorInfoMode = ['fade', 'slide-bottom']
+ },1000)
+ }
+ return;
+
}
},
// 鎺у埗鍣�
@@ -715,7 +854,6 @@
that.currDate = res.year + "/" + res.month + "/" + res.day
},
fail(res) {
- console.log(res);
}
})
@@ -925,7 +1063,7 @@
width: 5vw;
}
.progressBar {
- margin-top: 9%;
+ margin-top: 5%;
/* width: 100%; */
height: 20%;
background-color: #233751;
@@ -1132,4 +1270,25 @@
.textred{
color: red;
}
+
+ .board {
+ position: absolute;
+ top: 0;
+ right: 0;
+ /* background-color: #aa00ff; */
+ /* height: 13vh; */
+ width: 100%;
+ /* box-shadow: rgba(0,0,0,.35) 0px 5px 15px; */
+ }
+ .error-board {
+ margin: .2rem;
+ height: 11vh;
+ background-color: #F56C6C;
+ box-shadow: rgba(0,0,0,.35) 0px 5px 15px;
+ border-radius: .2rem;
+ display: flex;
+ align-items: center;
+ justify-content: space-around;
+ font-size: 2rem;
+ }
</style>
\ No newline at end of file
--
Gitblit v1.9.1