From b776bb6af55b95924b612c8296cd514bf1826dee Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期三, 07 二月 2024 18:12:35 +0800 Subject: [PATCH] # --- Monitor-APP/pages/home/home.vue | 386 +++++++++++++++++++++++++++++++++++------------------- 1 files changed, 250 insertions(+), 136 deletions(-) diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue index 79655c0..3ebeac2 100644 --- a/Monitor-APP/pages/home/home.vue +++ b/Monitor-APP/pages/home/home.vue @@ -1,5 +1,6 @@ <template> <view class="container"> + <!-- 瀹佹尝鎹蜂赴椤圭洰 --> <uni-transition :duration="duration" :mode-class="homeMode" :show="homeViewShow"> <view class="home-view"> <view class="head"> @@ -28,8 +29,8 @@ <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: 5vw;;font-size: 2vw;">{{baseInfo.xDistance}}</view> - <view style="position: absolute;bottom: 0;left: 7vw;">m</view> + <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDistance}}</view> + <view style="position: absolute;bottom: 0;left: 10vw;">m</view> </view> <view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌璺濈(绫�)</view> </view> @@ -39,8 +40,8 @@ <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: 5vw;;font-size: 2vw;">{{baseInfo.yDistance}}</view> - <view style="position: absolute;bottom: 0;left: 7vw;">m</view> + <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDistance}}</view> + <view style="position: absolute;bottom: 0;left: 10vw;">m</view> </view> <view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷璺濈(绫�)</view> </view> @@ -50,8 +51,8 @@ <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: 5vw;;font-size: 2vw;">{{baseInfo.xDuration}}</view> - <view style="position: absolute;bottom: 0;left: 7vw;">s</view> + <view style="-width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDuration}}</view> + <view style="position: absolute;bottom: 0;left: 10vw;">s</view> </view> <view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌鏃堕暱(绉�)</view> </view> @@ -61,8 +62,8 @@ <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: 5vw;;font-size: 2vw;">{{baseInfo.yDuration}}</view> - <view style="position: absolute;bottom: 0;left: 7vw;">s</view> + <view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDuration}}</view> + <view style="position: absolute;bottom: 0;left: 10vw;">s</view> </view> <view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷鏃堕暱(绉�)</view> </view> @@ -134,9 +135,9 @@ <!-- null --> <view style="height: 2%;"></view> + - - <view style="height: 43%;"> + <view style="height: 51%;"> <y-box> <view class="box-item"> <view class="flex-row" style="width: 100%;"> @@ -155,39 +156,65 @@ </view> </view> <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"/> - </view> - <!-- 鍙� --> - <view> + <!-- 搴撲綅浣跨敤鎯呭喌 --> + <!-- left --> + <view style="margin-left: 5%;"> <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;">10000</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;">闀挎�诲簱浣�</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.longAllLoc}}</view> </view> - <view class="flex-row sub-info" style="margin-top: 2vh;"> + <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;">10000</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;">浣跨敤搴撲綅</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.longUseLoc}}</view> </view> - <view class="flex-row sub-info" style="margin-top: 2vh;"> + <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;">10000</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;">绌哄簱浣�</view> + <view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">{{baseInfo.longEmptyLoc}}</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.longXLoc}}</view> </view> </view> + <view style="margin-left: 5%;"> + <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.shortAllLoc}}</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.shortUseLoc}}</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.shortEmptyLoc}}</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.shortXLoc}}</view> + </view> + </view> + </view> </view> </y-box> </view> <view style="height: 2%;"></view> - <view style="height: 18%;"> + <view style="height: 10%;"> <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> @@ -212,12 +239,42 @@ <view class="info-main"> <view class="info-box"> <y-box> - <view class="info-box-text"> - <view class="flex-col info-box-text-item">鐩爣绔欙細{{infoText.staNo}}</view> - <view class="flex-col info-box-text-item">鍟嗗搧缂栧彿锛歿{infoText.matnr}}</view> - <view class="flex-col info-box-text-item">鍟嗗搧鍚嶇О锛歿{infoText.maknx}}</view> - <view class="flex-col info-box-text-item">鍟嗗搧瑙勬牸锛歿{infoText.specs}}</view> - <view class="flex-col info-box-text-item">鏁伴噺锛歿{infoText.count}}</view> + <!-- 鏂囨湰瀹瑰櫒 --> + <view class="text-content"> + <!-- head --> + <view class="swiper-head"> + <view style="width: 10%;">搴忓彿</view> + <view style="width: 12%;">璁㈠崟鍙�</view> + <view style="width: 12%;">宸ヤ綔鍙�</view> + <view style="width: 12%;">绠辩爜</view> + <view style="width: 12%;">鍟嗗搧缂栧彿</view> + <view style="width: 12%;">鍟嗗搧鍚嶇О</view> + <view style="width: 10%;">瑙勬牸</view> + <view style="width: 10%;">鏁伴噺</view> + <view style="width: 10%;">缁撲綑</view> + </view> + <!-- body --> + <view class="swiper-body"> + <!-- swiper 涓�浜涜鏄� + circular 鏄惁閲囩敤琛旀帴婊戝姩锛屽嵆鎾斁鍒版湯灏惧悗閲嶆柊鍥炲埌寮�澶� + vertical 婊戝姩鏂瑰悜鏄惁涓虹旱鍚� + display-multiple-items 鍚屾椂鏄剧ず鐨勬粦鍧楁暟閲� --> + <swiper class="swiper-body-main" vertical="true" + display-multiple-items="8" + circular="true" :autoplay="true" :interval="3000" :duration="1000"> + <swiper-item class="swiper-item" v-for="(item,i) in locs" :key="i"> + <view style="width: 10%;">No:{{i+1}}</view> + <view style="width: 12%;">{{item.orderNo ? item.orderNo : '--'}}</view> + <view style="width: 12%;">{{item.wrkNo ? item.wrkNo : '--'}}</view> + <view style="width: 12%;">{{item.suppCode ? item.suppCode : '--'}}</view> + <view style="width: 12%;">{{item.matnr}}</view> + <view style="width: 12%;">{{item.maktx}}</view> + <view style="width: 10%;">{{item.specs ? item.specs : '--'}}</view> + <view style="width: 10%;">{{item.anfme ? item.anfme : '--'}}</view> + <view style="width: 10%;">{{item.volume ? item.volume : '--'}}</view> + </swiper-item> + </swiper> + </view> </view> </y-box> </view> @@ -284,6 +341,12 @@ <input type="text" v-model="baseUrl"> </view> </view> + <view class="item"> + <view class="desc">绔欑偣锛�</view> + <view class="input"> + <input type="text" v-model="devNo"> + </view> + </view> </view> <!-- button --> <view class="eject-button"> @@ -302,8 +365,8 @@ data() { return { series: [], - homeViewShow: true, - infoViewShow: false , + homeViewShow: false, + infoViewShow: true , errorInfoViewShow: false, homeMode: [], infoMode: [], @@ -314,7 +377,18 @@ xDuration: 3, yDuration: 4, usedPr: 50, - used: 3537 + used: 3537, + stockCount: '', + emptyCount: '', + noneCount: '', + longAllLoc: '', + shortAllLoc: '', + longEmptyLoc: '', + shortEmptyLoc: '', + longUseLoc: '', + shortUseLoc: '', + longXLoc: '', + shortXLoc: '', }, chartsData: { "Line": { @@ -346,17 +420,17 @@ infoType: 0, text: '', infoText: { - title: '鍏ㄦ澘鍑哄簱', - staNo: "200", - matnr: "300", - maknx: "400", - specs: "500", - count: "600", - error: "鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涖��" + title: 'AGV鎷i�変俊鎭�', + staNo: "", + matnr: "", + maknx: "", + specs: "", + count: "", + error: "" }, - - - + swiperList: [], + devNo: 'CS-313', + locs: [] } }, onShow() { @@ -372,37 +446,58 @@ const BasePort = uni.getStorageSync('BasePort'); const BaseCrnId = uni.getStorageSync('BaseCrnId'); const PROJ = uni.getStorageSync('UPROJ'); + const DEVNO = uni.getStorageSync('devNo'); that.baseUrl = PROJ that.baseIP = BaseIP that.baseLedId = BaseLedId that.basePort = BasePort that.baseCrnId = BaseCrnId - this.getUrl() - console.log(that.commonUrl); + that.devNo = DEVNO + // this.getUrl() }, onLoad() { - this.getServerData() - this.getDate() - setInterval(()=>{ - this.getDate() - this.getInfo() - this.getError() - // 娴嬭瘯鐢� - // this.getInfo2() - // this.getError2() - this.controller() + setTimeout(()=> { + this.getUrl() },1000) setInterval(()=>{ - // this.controller() - },2000) + // 娴嬭瘯鐢� + + this.getVisualized() + },1000) }, methods: { getUrl() { this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + "/" +this.baseUrl }, + getVisualized() { + let that = this + console.log(this.devNo); + let param = {devNo: `${that.devNo}`} + uni.request({ + url: `${that.commonUrl}/rpc/info`, + header: { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET,POST,OPTIONS', + 'Access-Control-Allow-Headers': 'X-Request-with,Content-Type', + }, + sslVerify: false, + withCredentials: true, + method: 'POST', + data: JSON.stringify(param), + success(res) { + res = res.data + console.log(res); + that.result = res + if (res.code === 200 && res.data) { + that.locs = res.data + } + } + }) + }, + getServerData() { - this.chartsDataLine1=JSON.parse(JSON.stringify(demodata.Line)) - this.chartsDataPie2=JSON.parse(JSON.stringify(demodata.PieA)) + this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line)) + this.chartsDataPie2=JSON.parse(JSON.stringify(this.chartsData.Pie)) }, // 鑾峰彇閿欒淇℃伅 getInfo2() { @@ -421,9 +516,11 @@ that.infoText.title = '妫�鏂欏嚭搴�' } that.infoText.staNo = res.data[0].staNo - 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 + 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; @@ -471,11 +568,15 @@ that.infoText.title = '鍏ㄦ澘鍑哄簱' } else if(res.data[0].ioType === 103) { that.infoText.title = '妫�鏂欏嚭搴�' + } else if(res.data[0].ioType === 107) { + that.infoText.title = '鐩樼偣鍑哄簱' } that.infoText.staNo = res.data[0].staNo - 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 + 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; @@ -490,6 +591,7 @@ let that = this uni.request({ url: that.commonUrl + "/monitor/led/error", + data: {ledId:that.baseLedId}, method:"GET", success(result) { var res = result.data @@ -497,12 +599,14 @@ 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) { @@ -622,6 +726,7 @@ uni.setStorageSync('BasePort',this.basePort); uni.setStorageSync('BaseCrnId',this.baseCrnId); uni.setStorageSync('UPROJ',this.baseUrl); + uni.setStorageSync('devNo',this.devNo); this.getUrl() this.ejectShow = false }, @@ -648,75 +753,82 @@ this.calendar = year + "骞�" + month + "鏈�" + day + "鏃� " + hours + ":" + minutes + ":" + seconds + " " + weeks }, getDateFormat(value) { - var date = new Date();// 鑾峰彇褰撳墠鏃堕棿 - date.setDate(date.getDate() + value);// 璁剧疆澶╂暟 -1 澶� - var m = date.getMonth() + 1 - var d = date.getDate() - var newDate = m + '-' + d - return newDate - }, + var date = new Date();// 鑾峰彇褰撳墠鏃堕棿 + date.setDate(date.getDate() + value);// 璁剧疆澶╂暟 -1 澶� + var m = date.getMonth() + 1 + var d = date.getDate() + var newDate = m + '-' + d + return newDate + }, /*************** 鎶樼嚎鍥� *****************************************************************************************************/ - initlineChart() { - let that = this - uni.request({ - url: that.commonUrl + "/monitor/line/charts", - 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.chartsData.Line.series = res.data.rows - } - } - }) - }, + initlineChart() { + let that = this + uni.request({ + url: that.commonUrl + "/monitor/line/charts", + 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.chartsData.Line.series = res.data.rows + } + } + }) + }, /*************** 楗煎浘 *****************************************************************************************************/ - initPieChart() { - let that = this - uni.request({ - url: that.commonUrl + "/monitor/loc/rep", - method:'GET', - success(result) { - var res = result.data - if (res.code === 200) { - that.chartsData.Pie.series[0].data = res.data.pie - that.stockCount = res.data.stockCunt - that.emptyCount = res.data.emptyCount - that.noneCount = res.data.noneCount - that.used = res.data.used - that.usedPr = res.data.usedPr - } - } - }) - }, - getOther() { - let that = this - uni.request({ - // http://10.10.0.222:9090/jkwcs/monitor/led?ledId=186 - url: that.commonUrl + "/monitor/other", - data: { - crnId: that.baseCrnId, - ledId: that.baseLedId, - }, - success(result) { - console.log(result); - var res = result.data - if (res.code === 200) { - that.xDistance = res.data.xDistance - that.yDistance = res.data.yDistance - that.xDuration = res.data.xDuration - that.yDuration = res.data.yDuration - } else if (res.code === 403) { - - } else { - - } - } - }) - }, + initPieChart() { + let that = this + uni.request({ + url: that.commonUrl + "/monitor/loc/rep", + method:'GET', + data: { + crnId: that.baseCrnId, + }, + success(result) { + var res = result.data + if (res.code === 200) { + console.log(res.data.pie); + that.chartsData.Pie.series[0].data = res.data.pie + that.baseInfo.longAllLoc = res.data.longAllLoc + that.baseInfo.shortAllLoc = res.data.shortAllLoc + that.baseInfo.longEmptyLoc = res.data.longEmptyLoc + that.baseInfo.shortEmptyLoc = res.data.shortEmptyLoc + that.baseInfo.longUseLoc = res.data.longUseLoc + that.baseInfo.shortUseLoc = res.data.shortUseLoc + that.baseInfo.longXLoc = res.data.longXLoc + that.baseInfo.shortXLoc = res.data.shortXLoc + that.baseInfo.used = res.data.used + that.baseInfo.usedPr = res.data.usedPr + } + } + }) + }, + getOther() { + let that = this + uni.request({ + url: that.commonUrl + "/monitor/other", + data: { + crnId: that.baseCrnId, + ledId: that.baseLedId, + }, + success(result) { + var res = result.data + if (res.code === 200) { + that.baseInfo.xDistance = res.data.xDistance + that.baseInfo.yDistance = res.data.yDistance + that.baseInfo.xDuration = res.data.xDuration + that.baseInfo.yDuration = res.data.yDuration + } else if (res.code === 403) { + + } else { + + } + } + }) + }, } } @@ -724,6 +836,7 @@ <style> /* @import url("../../static/css/common.css"); */ + @import url("home.css"); /* 鍒� */ .flex-col { display: flex; @@ -844,6 +957,7 @@ /* background-color: #00ffff; */ } .sub-info { + margin-top: 1vh; font-size: 1.5vw; } .sub-info image { @@ -939,7 +1053,7 @@ .eject{ position: relative; width: 40vw; - height: 40vh; + height: 50vh; background-color: #fff; border-radius: 2rem; } -- Gitblit v1.9.1