From e8c5367d345f56997d3092a081690e7c7b3b88c6 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期三, 16 四月 2025 14:04:06 +0800 Subject: [PATCH] 新增工序 --- Monitor-APP/pages/home/home.vue | 820 +++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 546 insertions(+), 274 deletions(-) diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue index 6715bc2..a847b57 100644 --- a/Monitor-APP/pages/home/home.vue +++ b/Monitor-APP/pages/home/home.vue @@ -17,84 +17,103 @@ <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-text" + style="text-align: left;">鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</text> </view> <view class="box-item"> <text class="item-title">浠撳簱鏁版嵁</text> <text class="item-subTitle">warehouse 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;">m</view> + <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 style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌璺濈(鍗冪背) + </view> </view> </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;">m</view> + <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 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;">s</view> + <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 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;">s</view> + <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 style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷鏃堕暱(灏忔椂) + </view> </view> </view> - + </view> </view> <view class="box-item"> <view class="flex-row" style="width: 100%;"> <!-- 宸︿晶 --> - <view class="flex-col" style="align-items: flex-start;justify-content: flex-start;"> + <view class="flex-col" + style="align-items: flex-start;justify-content: flex-start;"> <text class="item-title">搴撲綅浣跨敤鐜�</text> <text class="item-subTitle">EQUIPMENT USAGE THIS MONTH</text> </view> <!-- 鍙充晶 --> <view style="margin-left: auto;"> <!-- 鐧惧垎姣� --> - <view class="flex-col" style="align-items: flex-end;justify-content: flex-end;" > + <view class="flex-col" + style="align-items: flex-end;justify-content: flex-end;"> <!-- style="justify-content: flex-end;position: absolute;top: 0;right: 1vw;text-align: right;" --> <text class="item-title">{{baseInfo.usedPr}}%</text> <text class="item-subTitle">鍚屾瘮涓婃湀 + 5%</text> </view> </view> </view> - - <view class="flex-col" style="width: 100%;align-items: flex-start;position: relative;font-size: 1vw"> + + <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="progressBar" style="width: 80%;height: 2vw;"> <view class="progress" :style="'width:'+ baseInfo.usedPr + '%'"></view> </view> - <view style="position: absolute;bottom: 0;right: 0;font-size: 2.5vw;color: #FF5722;;">{{baseInfo.used}}</view> + <view + style="position: absolute;bottom: 0;right: 0;font-size: 2.5vw;color: #FF5722;;"> + {{baseInfo.used}} + </view> </view> </view> </view> @@ -110,14 +129,16 @@ <view class="box-item"> <view class="flex-row" style="width: 100%;"> <!-- 宸︿晶 --> - <view class="flex-col" style="align-items: flex-start;justify-content: flex-start;"> + <view class="flex-col" + style="align-items: flex-start;justify-content: flex-start;"> <text class="item-title">鍏ュ嚭搴撶粺璁�</text> <text class="item-subTitle">ORDER STATISTICS</text> </view> <!-- 鍙充晶 --> <view style="margin-left: auto;"> <!-- 鐧惧垎姣� --> - <view class="flex-col" style="align-items: flex-end;justify-content: flex-end;" > + <view class="flex-col" + style="align-items: flex-end;justify-content: flex-end;"> <!-- style="justify-content: flex-end;position: absolute;top: 0;right: 1vw;text-align: right;" --> <text class="item-title">31</text> <text class="item-subTitle">浠婃棩璁㈠崟鏁�</text> @@ -125,31 +146,34 @@ </view> </view> <view class="charts-box"> - <qiun-data-charts type="line" :chartData="chartsDataLine1" :echartsH5="true" :echartsApp="true"/> + <qiun-data-charts type="line" :chartData="chartsDataLine1" + :echartsH5="true" :echartsApp="true" /> </view> </view> </y-box> </view> - - + + <!-- null --> <view style="height: 2%;"></view> - - + + <view style="height: 43%;"> <y-box> <view class="box-item"> <view class="flex-row" style="width: 100%;"> <!-- 宸︿晶 --> - <view class="flex-col" style="align-items: flex-start;justify-content: flex-start;"> + <view class="flex-col" + style="align-items: flex-start;justify-content: flex-start;"> <text class="item-title">搴撳瓨绫诲瀷</text> <text class="item-subTitle">INCOME DATE</text> </view> <!-- 鍙充晶 --> <view style="margin-left: auto;"> <!-- 鐧惧垎姣� --> - <view class="flex-col" style="align-items: flex-end;justify-content: flex-end;" > - <text class="item-title">浠婂ぉ</text> + <view class="flex-col" + style="align-items: flex-end;justify-content: flex-end;"> + <text class="item-title">浠婂ぉ</text> <text class="item-subTitle">Today</text> </view> </view> @@ -157,90 +181,111 @@ <view class="flex-row" style="width: 100%;"> <!-- 宸� --> <view class="charts-box-ring"> - <qiun-data-charts type="ring" :opts="{legend:{position:'bottom'}}" :eopts="ringOpts" :chartData="chartsDataPie2" :echartsH5="true" :echartsApp="true"/> + <qiun-data-charts type="ring" :opts="{legend:{position:'bottom'}}" + :eopts="ringOpts" :chartData="chartsDataPie2" :echartsH5="true" + :echartsApp="true" /> </view> <!-- 鍙� --> <view> <view class="flex-row sub-info"> <image src="../../static/g1.png" mode="aspectFit"></image> <view style="width: 8vw;height: 4vw;line-height: 4vw;">鍦ㄥ簱</view> - <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.stockCount}}</view> + <view + style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;"> + {{baseInfo.stockCount}} + </view> </view> <view class="flex-row sub-info" style="margin-top: 2vh;"> <image src="../../static/f1.png" mode="aspectFit"></image> <view style="width: 8vw;height: 4vw;line-height: 4vw;">绌哄簱</view> - <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.emptyCount}}</view> + <view + style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;"> + {{baseInfo.emptyCount}} + </view> </view> <view class="flex-row sub-info" style="margin-top: 2vh;"> <image src="../../static/e1.png" mode="aspectFit"></image> - <view style="width: 8vw;height: 4vw;line-height: 4vw;">绂佺敤</view> - <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.noneCount}}</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;">閿佸畾</view> + <view + style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;"> + {{baseInfo.noneCount}} + </view> </view> </view> </view> </view> - + </y-box> </view> <view style="height: 2%;"></view> - <view style="height: 18%;"> - <y-box> - <view class="flex-col" style="width: 100%;height: 100%;font-size: 4vh;justify-content: center;letter-spacing: 1vh;"> - <!-- 鍢夊杽杈归攱鏈烘鑲′唤鏈夐檺鍏徃 --> - 鑷姩浠撳簱WCS鐩戞帶骞冲彴 - <!-- <image src="../../static/ruiyun.jpg" mode="" style="width: 100%;"></image> --> - </view> - </y-box> + <view style="height: 18%" class="flex-row"> + <image style="height: 100%;" + src="../../static/barcode.png" mode="aspectFit"></image> + <image style="height: 100%;" + src="../../static/zy_logo.png" mode="aspectFit"></image> </view> </view> </view> </view> </view> - + </view> </uni-transition> <!-- 鍏ㄦ澘/鎷f枡淇℃伅 --> - <uni-transition :duration="duration" :mode-class="infoMode" :show="infoViewShow"> - <view class="home-view"> - <view class="head"> - <text>{{infoText.title}}</text> - </view> - <!-- 鏃ュ巻 --> - <view class="time-tools">{{calendar}}</view> - <view class="button-left" @click="ejected()"></view> - <view class="button-right" @click="ejected()"></view> - <!-- 涓讳綋 --> - <view class="info-main"> - <view class="info-box"> - <y-box> - <!-- 鏂囨湰瀹瑰櫒 --> - <view class="text-content"> - <!-- head --> - <view class="swiper-head"> - <view>鐩爣绔欙細</view> - <view>鍟嗗搧缂栧彿</view> - <view>鍟嗗搧鍚嶇О</view> - </view> - <!-- body --> - <view class="swiper-body"> - <!-- swiper 涓�浜涜鏄� - circular 鏄惁閲囩敤琛旀帴婊戝姩锛屽嵆鎾斁鍒版湯灏惧悗閲嶆柊鍥炲埌寮�澶� - vertical 婊戝姩鏂瑰悜鏄惁涓虹旱鍚� - display-multiple-items 鍚屾椂鏄剧ず鐨勬粦鍧楁暟閲� --> - <swiper class="swiper-body-main" vertical="true" - display-multiple-items="16" - circular="true" :autoplay="true" :interval="3000" :duration="1000"> - <swiper-item class="swiper-item" v-for="(item,i) in swiperList" :key="i"> - <view>{{item}}</view> - </swiper-item> - </swiper> - </view> - </view> - </y-box> - </view> - </view> - </view> - </uni-transition> + <uni-transition :duration="duration" :mode-class="infoMode" :show="infoViewShow"> + <view class="home-view"> + <view class="head"> + <text>{{infoText.title}}</text> + </view> + <!-- 鏃ュ巻 --> + <view class="time-tools">{{calendar}}</view> + <view class="button-left" @click="ejected()"></view> + <view class="button-right" @click="ejected()"></view> + <!-- 涓讳綋 --> + <view class="info-main"> + <view class="info-box"> + <y-box> + <!-- 鏂囨湰瀹瑰櫒 --> + <view class="text-content"> + <!-- head --> + <!-- <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;">浠诲姟鍙�</view> + <view style="flex: 3;">鍟嗗搧缂栧彿</view> + <view style="flex: 2;">鍟嗗搧鍚嶇О</view> + <view style="flex: 2;">瑙勬牸</view> + <view style="flex: 2;">宸ュ簭</view> + <view style="flex: 2;">鏁伴噺</view> + + </view> + <!-- body --> + <view class="swiper-body"> + <!-- swiper 涓�浜涜鏄� + circular 鏄惁閲囩敤琛旀帴婊戝姩锛屽嵆鎾斁鍒版湯灏惧悗閲嶆柊鍥炲埌寮�澶� + vertical 婊戝姩鏂瑰悜鏄惁涓虹旱鍚� + display-multiple-items 鍚屾椂鏄剧ず鐨勬粦鍧楁暟閲� --> + <swiper class="swiper-body-main" vertical="true" 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: 2;">{{infoText.workNo}}</view> + <view style="flex: 3;">{{item.matnr}}</view> + <view style="flex: 2;">{{item.maknx}}</view> + <view style="flex: 2;">{{item.specs}}</view> + <view style="flex: 2;">{{item.sku}}</view> + <view style="flex: 2;">{{item.count}}/{{item.total}}</view> + </swiper-item> + </swiper> + </view> + </view> + </y-box> + </view> + </view> + </view> + </uni-transition> <!-- 寮傚父淇℃伅 --> <uni-transition :duration="duration" :mode-class="errorInfoMode" :show="errorInfoViewShow"> <view class="error-info-view"> @@ -252,7 +297,7 @@ <view class="button-left"></view> <view class="button-right"></view> <!-- 涓讳綋 --> - <view class="info-main" > + <view class="info-main"> <view class="info-box"> <y-box> <view class="info-box-text"> @@ -263,14 +308,14 @@ </view> </view> </uni-transition> - + <!-- 鑷畾涔夊脊鍑哄眰 --> <view class="eject-mask" v-show="ejectShow"> <view class="eject"> <!-- 寮瑰嚭title --> <view class="eject-title">淇敼 / 閰嶇疆</view> <!-- input --> - <view class="eject-input"> + <scroll-view scroll-y class="eject-input"> <view class="item"> <view class="desc">ip锛�</view> <view class="input"> @@ -301,7 +346,7 @@ <input type="text" v-model="baseUrl"> </view> </view> - </view> + </scroll-view> <!-- button --> <view class="eject-button"> <view class="button-item" @click="ejectClose">鍙� 娑�</view> @@ -309,9 +354,20 @@ </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> </view> </template> - +<!-- {"msg":"鎿嶄綔鎴愬姛","code":200,"data":[{"title":"鍏ㄦ澘鍑哄簱","workNo":7460,"staNo":110,"sourceStaNo":null,"locNo":null,"sourceLocNo":"0807102","matDtos":[{"matNo":"50460834","maknx":"200x60妗岄潰","count":26.0}],"emptyMk":false,"ioType":101}]} --> <script> import demodata from '@/mockdata/demodata.json'; import ycqdata from '@/pages/index/data.json'; @@ -320,9 +376,11 @@ return { series: [], homeViewShow: true, - infoViewShow: false , + infoViewShow: false, errorInfoViewShow: false, + errorBoardShow: false, homeMode: [], + carInfo: [], infoMode: [], errorInfoMode: [], baseInfo: { @@ -349,7 +407,7 @@ }, duration: 1000, calendar: '', - ringOpts:{}, + ringOpts: {}, chartsDataLine1: {}, chartsDataPie2: {}, fontSize: '', @@ -366,18 +424,28 @@ infoType: 0, text: '', infoText: { + workNo: '', title: '', staNo: "", matnr: "", maknx: "", specs: "", count: "", - error: "" + error: "", + barcode: "", + orderNo: '', + batch: '', + doneOfTray: '', + totalOfTray: '', + doneOfUnit: '', + totalOfUnit: '', + ctnNo: '1' }, - swiperList: [] - - - + swiperList: [], + timeOut: false, + times: 0, + currDate: '', + textred: 'textred' } }, onShow() { @@ -398,65 +466,106 @@ that.baseLedId = BaseLedId that.basePort = BasePort that.baseCrnId = BaseCrnId - // this.getUrl() - }, - onLoad() { - setInterval(()=>{ + + + + this.getDate2() + setTimeout(() => { this.getServerData() this.initlineChart() this.initPieChart() this.getOther() - this.getDate() - // this.getInfo() - // this.getError() - this.getInfo2() - this.getError2() + setTimeout(() => { + this.getServerData() + this.initlineChart() + this.initPieChart() + this.getOther() + setTimeout(() => { + this.getServerData() + this.initlineChart() + this.initPieChart() + this.getOther() + }, 500) + }, 500) + }, 500) + }, + onLoad() { + setInterval(() => { + this.getDate2() this.getUrl() + this.getInfo() + this.getError() + // this.getInfo2() + // this.getError2() this.controller() - // 娴嬭瘯鐢� - - },1000) + this.getCarInfo() + }, 1000) + + setInterval(() => { + this.getServerData() + this.initlineChart() + this.initPieChart() + this.getOther() + }, 1800000) }, methods: { + 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 + } + }, + changeErrorShow() { + this.errorBoardShow = !this.errorBoardShow + }, + timeOuts() { + console.log(this.times); + }, getUrl() { - this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + "/" +this.baseUrl + 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)) }, // 鑾峰彇閿欒淇℃伅 getInfo2() { let that = this var result = ycqdata.dataInfo2 - var res = result.data - if (res.data && res.data !== "") { - if (that.infoType == 2 || that.infoType == 3) { - return; - } - // infoType1:鍙湁鎷f枡绛変俊鎭� - that.infoType = 1 - if (res.data[0].ioType === 101) { - that.infoText.title = '鍏ㄦ澘鍑哄簱' - } else if(res.data[0].ioType === 103) { - that.infoText.title = '妫�鏂欏嚭搴�' - } - that.infoText.staNo = res.data[0].staNo - 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.infoType = 0 - } + var res = result.data + console.log(res); + that.infoModel(res) }, - getError2 () { + getError2() { let that = this let result = ycqdata.dataError2 - var res = result.data + var res = result.data if (res.data && res.data !== "") { var errorInfo = res.data if (that.infoType == 1) { @@ -479,55 +588,39 @@ let that = this uni.request({ url: that.commonUrl + "/monitor/led", - method:"GET", - data: {ledId:that.baseLedId}, + method: "GET", + data: { + ledId: that.baseLedId + }, success(result) { - var res = result.data - if (res.data && res.data !== "") { - if (that.infoType == 2 || that.infoType == 3) { - return; - } - // infoType1:鍙湁鎷f枡绛変俊鎭� - that.infoType = 1 - if (res.data[0].ioType === 101) { - that.infoText.title = '鍏ㄦ澘鍑哄簱' - } else if(res.data[0].ioType === 103) { - that.infoText.title = '妫�鏂欏嚭搴�' - } - that.infoText.staNo = res.data[0].staNo - 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.infoType = 0 - } + var res = result.data + that.infoModel(res) } }) - + }, getError() { let that = this uni.request({ url: that.commonUrl + "/monitor/led/error", - data: {ledId:that.baseLedId}, - method:"GET", + data: { + ledId: that.baseLedId + }, + method: "GET", success(result) { - var res = result.data - console.log(res); + var res = result.data if (res.data && res.data !== "") { var errorInfo = res.data if (that.infoType == 1) { that.infoType = 3 - that.infoText.title = "寮傚父" + that.infoText.title = "鍏朵粬淇℃伅" + // that.infoText.title = "寮傚父" that.infoText.error = errorInfo return } that.infoType = 2 - that.infoText.title = "寮傚父" + that.infoText.title = "鍏朵粬淇℃伅" + // that.infoText.title = "寮傚父" that.infoText.error = errorInfo } else { if (that.infoType == 1) { @@ -537,85 +630,136 @@ } } }) - + + }, + infoModel(res) { + let that = this + if (res.data && res.data !== "") { + if (that.infoType == 2 || that.infoType == 3) { + return; + } + // infoType1:鍙湁鎷f枡绛変俊鎭� + that.infoType = 1 + if (res.data[0].ioType === 101) { + that.infoText.title = '鍏ㄦ澘鍑哄簱' + } else if (res.data[0].ioType === 103) { + that.infoText.title = '鎷f枡鍑哄簱' + } else if (res.data[0].ioType === 107) { + that.infoText.title = '鐩樼偣鍑哄簱' + } else if (res.data[0].ioType === 1) { + that.infoText.title = '鍏ㄦ澘鍏ュ簱' + } else if (res.data[0].ioType === 10) { + that.infoText.title = '绌烘澘鍏ュ簱' + } else if (res.data[0].ioType === 54) { + that.infoText.title = '骞舵澘鍏ュ簱' + } else if (res.data[0].ioType === 110) { + that.infoText.title = '绌烘澘鍑哄簱' + } else if (res.data[0].ioType === 53) { + that.infoText.title = '鎷f枡鍐嶅叆搴�' + } else if (res.data[0].ioType === 57) { + that.infoText.title = '鐩樼偣鍐嶅叆搴�' + } + + that.infoText.staNo = res.data[0].staNo + that.infoText.workNo = res.data[0].workNo + 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.infoType = 0 + } }, // 鎺у埗鍣� controller() { - switch(this.infoType) { + switch (this.infoType) { // 鏈変俊鎭� 浣� 娌℃湁閿欒淇℃伅 - case 1: + case 0: + if (this.errorInfoViewShow) { + this.errorInfoViewShow = false + this.errorInfoMode = ['fade', 'slide-bottom'] + setTimeout(() => { + this.homeViewShow = true + this.homeMode = ['fade', 'slide-bottom'] + }, 1000) + } else if (this.infoViewShow) { + this.infoViewShow = false + this.infoMode = ['fade', 'slide-bottom'] + setTimeout(() => { + this.homeViewShow = true + this.homeMode = ['fade', 'slide-bottom'] + }, 1000) + } else if (this.errorInfoViewShow && this.infoViewShow) { + this.errorInfoViewShow = false + this.infoViewShow = false + this.infoMode = ['fade', 'slide-bottom'] + setTimeout(() => { + this.homeViewShow = true + this.homeMode = ['fade', 'slide-bottom'] + }, 1000) + } + return; + case 1: if (this.homeViewShow) { this.homeViewShow = false this.homeMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.infoViewShow = true this.infoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } else if (this.errorInfoViewShow) { this.errorInfoViewShow = false this.errorInfoMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.infoViewShow = true this.infoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } - + return; // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭� case 2: if (this.homeViewShow) { this.homeViewShow = false this.homeMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.errorInfoViewShow = true this.errorInfoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } else if (this.infoViewShow) { this.infoViewShow = false this.infoMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.errorInfoViewShow = true this.errorInfoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } return; - // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭� + // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭� case 3: if (this.homeViewShow) { this.homeViewShow = false this.homeMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.errorInfoViewShow = true this.errorInfoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } else if (this.infoViewShow) { this.infoViewShow = false this.infoMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ + setTimeout(() => { this.errorInfoViewShow = true this.errorInfoMode = ['fade', 'slide-bottom'] - },1000) + }, 1000) } return; - default : - if (this.errorInfoViewShow) { - this.errorInfoViewShow = false - this.errorInfoMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ - this.homeViewShow = true - this.homeMode = ['fade', 'slide-bottom'] - },1000) - } else if (this.infoViewShow) { - this.infoViewShow = false - this.infoMode = ['fade', 'slide-bottom'] - setTimeout(()=>{ - this.homeViewShow = true - this.homeMode = ['fade', 'slide-bottom'] - },1000) - } - return; + } - + }, // 涓诲睆骞� handle(type) { @@ -633,7 +777,7 @@ this.modeClass = type }, // 閰嶇疆 - ejected () { + ejected() { this.ejectShow = true }, // 鍙栨秷閰嶇疆 @@ -644,37 +788,72 @@ ejectConfirm() { uni.setStorageSync('BaseIp', this.baseIP); uni.setStorageSync('BaseLedId', this.baseLedId); - uni.setStorageSync('BasePort',this.basePort); - uni.setStorageSync('BaseCrnId',this.baseCrnId); - uni.setStorageSync('UPROJ',this.baseUrl); + uni.setStorageSync('BasePort', this.basePort); + uni.setStorageSync('BaseCrnId', this.baseCrnId); + uni.setStorageSync('UPROJ', this.baseUrl); this.getUrl() this.ejectShow = false }, + // 鏃ュ巻 鏈嶅姟鍣� + getDate2() { + let that = this + if (that.commonUrl == 'undefined') { + return + } + uni.request({ + url: that.commonUrl + "/monitor/date", + method: "GET", + success(result) { + var res = result.data.data + that.calendar = res.year + "骞�" + res.month + "鏈�" + res.day + "鏃� " + res.hour + ":" + res + .minute + ":" + res.second + " " + res.week + that.currDate = res.year + "/" + res.month + "/" + res.day + }, + fail(res) { + console.log(res); + } + + }) + }, + // 鏃ュ巻 getDate() { var dt = new Date(); - var year,month,day,hours,minutes,seconds,weeks + var year, month, day, hours, minutes, seconds, weeks year = dt.getFullYear(); - month = (dt.getMonth()+1) < 10 ? '0'+ (dt.getMonth()+1) : (dt.getMonth()+1); - day = dt.getDate() < 10 ? '0'+dt.getDate() : dt.getDate(); + month = (dt.getMonth() + 1) < 10 ? '0' + (dt.getMonth() + 1) : (dt.getMonth() + 1); + day = dt.getDate() < 10 ? '0' + dt.getDate() : dt.getDate(); hours = dt.getHours() < 10 ? '0' + dt.getHours() : dt.getHours(); minutes = dt.getMinutes() < 10 ? '0' + dt.getMinutes() : dt.getMinutes(); - seconds = dt.getSeconds() < 10 ? '0' + dt.getSeconds() : dt.getSeconds(); - weeks = dt.getDay(); + seconds = dt.getSeconds() < 10 ? '0' + dt.getSeconds() : dt.getSeconds(); + weeks = dt.getDay(); switch (weeks) { - case 0: weeks = "鏄熸湡鏃�"; break; - case 1: weeks = "鏄熸湡涓�"; break; - case 2: weeks = "鏄熸湡浜�"; break; - case 3: weeks = "鏄熸湡涓�"; break; - case 4: weeks = "鏄熸湡鍥�"; break; - case 5: weeks = "鏄熸湡浜�"; break; - default : weeks = "鏄熸湡鍏�"; + case 0: + weeks = "鏄熸湡鏃�"; + break; + case 1: + weeks = "鏄熸湡涓�"; + break; + case 2: + weeks = "鏄熸湡浜�"; + break; + case 3: + weeks = "鏄熸湡涓�"; + break; + case 4: + weeks = "鏄熸湡鍥�"; + break; + case 5: + weeks = "鏄熸湡浜�"; + break; + default: + weeks = "鏄熸湡鍏�"; } this.calendar = year + "骞�" + month + "鏈�" + day + "鏃� " + hours + ":" + minutes + ":" + seconds + " " + weeks }, getDateFormat(value) { - var date = new Date();// 鑾峰彇褰撳墠鏃堕棿 - date.setDate(date.getDate() + value);// 璁剧疆澶╂暟 -1 澶� + var date = new Date(this.currDate); // 鑾峰彇褰撳墠鏃堕棿 + date.setDate(date.getDate() + value); // 璁剧疆澶╂暟 -1 澶� var m = date.getMonth() + 1 var d = date.getDate() var newDate = m + '-' + d @@ -683,16 +862,23 @@ /*************** 鎶樼嚎鍥� *****************************************************************************************************/ initlineChart() { let that = this + if (that.commonUrl == 'undefined') { + return + } uni.request({ url: that.commonUrl + "/monitor/line/charts", - method:'GET', + method: 'GET', success(result) { var res = result.data if (res.code === 200) { that.chartsData.Line.categories = [ - that.getDateFormat(-11),that.getDateFormat(-10),that.getDateFormat(-9),that.getDateFormat(-8), - that.getDateFormat(-7),that.getDateFormat(-6),that.getDateFormat(-5),that.getDateFormat(-4), - that.getDateFormat(-3),that.getDateFormat(-2),that.getDateFormat(-1),that.getDateFormat(0),] + that.getDateFormat(-11), that.getDateFormat(-10), that.getDateFormat(-9), that + .getDateFormat(-8), + that.getDateFormat(-7), that.getDateFormat(-6), that.getDateFormat(-5), that + .getDateFormat(-4), + that.getDateFormat(-3), that.getDateFormat(-2), that.getDateFormat(-1), that + .getDateFormat(0), + ] that.chartsData.Line.series = res.data.rows } } @@ -701,9 +887,12 @@ /*************** 楗煎浘 *****************************************************************************************************/ initPieChart() { let that = this + if (that.commonUrl == 'undefined') { + return + } uni.request({ url: that.commonUrl + "/monitor/loc/rep", - method:'GET', + method: 'GET', success(result) { var res = result.data if (res.code === 200) { @@ -719,10 +908,13 @@ }, getOther() { let that = this + if (that.commonUrl == 'undefined') { + return + } uni.request({ url: that.commonUrl + "/monitor/other", data: { - crnId: that.baseCrnId, + crnId: that.baseCrnId, ledId: that.baseLedId, }, success(result) { @@ -733,40 +925,43 @@ that.baseInfo.xDuration = res.data.xDuration that.baseInfo.yDuration = res.data.yDuration } else if (res.code === 403) { - + } else { - + } } }) }, } - + } </script> <style> /* @import url("../../static/css/common.css"); */ @import url("home.css"); + /* 鍒� */ .flex-col { display: flex; flex-direction: column; } + /* 琛� */ .flex-row { display: flex; flex-direction: row; } - - .container{ + + .container { width: 100vw; min-height: 100vh; background-color: #00163E; color: #fff; text-align: center; - + } + /* 涓昏鍥� */ .home-view { width: 100vw; @@ -774,32 +969,37 @@ background-image: url(../../static/background.png); background-size: 100vw 100vh; } + .home-right { width: 50vw; height: 89vh; /* background-color: cadetblue; */ } + .home-right-box { width: 98%; height: 98%; } + .head { width: 100vw; height: 11vh; - font-size:4vw; + font-size: 4vw; font-weight: 700; display: flex; align-items: center; justify-content: center; transform: scale(0.7); } + .time-tools { position: absolute; right: 2%; top: 2%; - font-size:1vw; + font-size: 1vw; transform: scale(0.8); } + .button-left { position: absolute; background-image: url(../../static/right.png); @@ -810,6 +1010,7 @@ height: 8.5%; transform: scaleX(-1); } + .button-right { position: absolute; background-image: url(../../static/right.png); @@ -819,6 +1020,7 @@ width: 13.5%; height: 8.5%; } + .img-box { width: 100%; /* background-color: #666666; */ @@ -828,6 +1030,7 @@ flex-wrap: wrap; font-size: 1vw; } + .item-img { width: 50%; margin-top: 5%; @@ -837,13 +1040,14 @@ justify-content: flex-start; align-items: flex-start; } - .distance { - - } + + .distance {} + .item-img image { height: 5vw; width: 5vw; } + .progressBar { margin-top: 9%; /* width: 100%; */ @@ -851,41 +1055,51 @@ background-color: #233751; border-radius: 5vw; } + .progress { /* width: 90%; */ height: 100%; background-color: #FF5722; border-radius: 5vw; } + .charts-box { - width: 80%; - height: 24vh; - margin-left: 10%; - } + width: 80%; + height: 24vh; + margin-left: 10%; + } + .charts-box-ring { width: 50%; height: 24vh; /* background-color: #00ffff; */ } + .sub-info { font-size: 1.5vw; } + .sub-info image { width: 3.5vw; height: 3.5vw; } - - - - + + .red { + color: red + } + + + + /* 鍏辩敤 */ .main { width: 100vw; height: 88vh; margin-top: 1vh; display: flex; - + } + .mian-item { width: 50%; height: 100%; @@ -894,10 +1108,12 @@ align-items: center; justify-content: center; } + .mian-item-box { width: 98%; height: 98%; } + .box-item { width: 100%; margin-top: 4%; @@ -906,21 +1122,24 @@ align-items: flex-start; justify-content: flex-start; } + .item-title { - font-size:1.5vw; + font-size: 1.5vw; font-weight: 700; } + .item-subTitle { - font-size:0.5vw; + font-size: 0.5vw; text-indent: 0em; } + .item-text { font-size: 1vw; text-indent: 2em; letter-spacing: 1px; line-height: 3vh; } - + /* 鍏ㄦ澘/鎷f枡淇℃伅 */ .info-view { width: 100vw; @@ -928,6 +1147,7 @@ background-image: url(../../static/background.png); background-size: 100vw 100vh; } + .info-main { width: 100vw; height: 88vh; @@ -935,10 +1155,12 @@ justify-content: center; align-items: center; } + .info-box { width: 98%; height: 98%; } + /* 寮傚父淇℃伅 */ .error-info-view { width: 100vw; @@ -946,7 +1168,7 @@ background-image: url(../../static/background.png); background-size: 100vw 100vh; } - + /* 寮瑰嚭:閰嶇疆鍖哄煙 */ .eject-mask { width: 100%; @@ -958,41 +1180,53 @@ z-index: 999; display: flex; align-items: center; - justify-content: center; + justify-content: center; } - .eject{ + + .eject { position: relative; width: 40vw; height: 40vh; background-color: #fff; border-radius: 2rem; } + .eject-title { width: 100%; height: 5vh; line-height: 6vh; font-size: 3vh; font-weight: 700; - color: #606266; + color: #606266; text-align: center; } + .eject-input { - + margin-top: 2vh; + height: 25vh; + + /* background-color: #00163E; */ + ::-webkit-scrollbar { + display: none + } } + .item { display: flex; align-items: center; - margin: 2vh 0 0 0; + margin: 1vh 0 0 0; font-size: 1.5vw; color: #363636; } + .desc { display: inline-block; width: 40%; text-align: right; color: #606266; - + } + .input { display: flex; align-items: center; @@ -1004,13 +1238,15 @@ margin-right: 20%; text-align: start; } + .eject-input input { width: 100%; height: 3vh; font-size: 1vw; - - + + } + .eject-button { display: flex; align-items: center; @@ -1021,6 +1257,7 @@ width: 100%; border-top: 1px solid #ccc; } + .button-item { width: 50%; height: 100%; @@ -1029,17 +1266,52 @@ text-align: center; color: #909399; } + .button-item:last-child { color: #67C23A; - + border-left: 1px solid #ccc; } + .info-box-text { - width: 100%;height: 100%; - display: flex;flex-direction: column;align-items: center;justify-content: center; - } - .info-box-text-item { - height: 20%;font-size: 8vh; + width: 100%; + height: 100%; + display: flex; + flex-direction: column; + align-items: center; justify-content: center; } + + .info-box-text-item { + height: 20%; + font-size: 8vh; + justify-content: center; + white-space: pre-line; + } + + .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