From 40711118c33369ccad7ceda0fdd729bd9f117f65 Mon Sep 17 00:00:00 2001 From: loulijun2021 <1694218219@qq.com> Date: 星期六, 22 十月 2022 14:03:11 +0800 Subject: [PATCH] 1.安灯响应静态实现 --- pages/adgl/adxy.html | 346 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 332 insertions(+), 14 deletions(-) diff --git a/pages/adgl/adxy.html b/pages/adgl/adxy.html index c8f900d..3deb81d 100644 --- a/pages/adgl/adxy.html +++ b/pages/adgl/adxy.html @@ -17,30 +17,253 @@ <script type="text/javascript" src="../../js/axios.min.js"></script> <script type="text/javascript" src="../../js/http.js"></script> + <script type="text/javascript" src="../../js/common.js"></script> + <script type="text/javascript" src="../../js/global.js"></script> - <link rel="stylesheet" href="../css/global.css" type="text/css" charset="utf-8" /> + + <!-- <script src="http://121.196.36.24:8001/Scripts/jquery-3.4.1.min.js"></script> --> + <!-- <script src="http://121.196.36.24:8001/Scripts/jquery.signalR-2.2.2.min.js"></script> --> + <!-- <script src="http://121.196.36.24:8001/SignalR/Hubs"></script> --> + + <script src="../../js/jquery-3.4.1.min.js"></script> + <script src="../../js/jquery.signalR-2.2.2.min.js"></script> + <script src="../../js/Hubs.js"></script> + + + <script type="text/javascript"> + let topContent = [ + // { + // code: 'SB001', + // name: '鐢垫睜缁勪竴绾�', + // wksp_code: "CJ002", + // wksp_name: '鐢垫睜杞﹂棿', + // "eqpchkmain_code": "djbz002" + // }, + // { + // code: 'SB003', + // name: '榻胯疆绠辩粍涓�绾�', + // wksp_code: "CJ001", + // "wksp_name": "瑁呴厤杞﹂棿", + // "eqpchkmain_code": "djbz002" + // }, + // { + // code: 'SB004', + // name: '榻胯疆绠辩粍涓�绾�', + // wksp_code: "CJ001", + // "wksp_name": "瑁呴厤杞﹂棿", + // "eqpchkmain_code": "djbz002" + // }, + // { + // code: 'SB005', + // name: '榻胯疆绠辩粍涓�绾�', + // wksp_code: "CJ001", + // "wksp_name": "瑁呴厤杞﹂棿", + // "eqpchkmain_code": "djbz002" + // }, + ]; + + var submitIsDisabled = false; //鎻愪氦鎸夐挳鏄惁disabled + + let radioValue = '' //鍗曢�夋閫変腑鐨勯」 + + let centerContent = [] //涓棿閮ㄥ垎鍐呭 + + let falseArray = [] // 鍋囨暟缁� 鍋氭壂鐮佸洖鏉ヨ鍥炬洿鏂扮敤 + + + + + // 鎵弿宸ヤ綅杩斿洖鏃舵墽琛屾柟娉� + function scaned(r) { + + radioValue = r + + var temp = {} + var flag = 0 + + if (topContent.find(i => i.eqp_code === r)) { + topContent.forEach((item, index) => { + if (item.eqp_code === r) { + temp = item + topContent.splice(index, 1) + flag = 1 + } + }) + } + + if (flag === 1) { //瀵瑰凡鍦ㄥ垪琛ㄧ殑鏁版嵁 鎺掑簭鍒扮涓�涓幓 + topContent.unshift(temp) + falseArray.push({ + id: '1' + }) + } else { //鏈湪鍒楄〃鐨勬暟鎹� 杩涜鏂板鎿嶄綔 + topSpanClick(r) + falseArray.push({ + id: '1' + }) + } + + } + + + function topSpanClick(code) { + post('AppDeviceManage/AppDeviceAnDengLampResponseScanSearch?eqpcode=' + code).then(res => { + if (res.code === '200') { + let children = [] + res.data.forEach(i => { + children.push({ + typecode: i.typecode, + typename: i.typename, + isTrue: false + }) + }) + + + topContent.unshift({ + eqp_code: res.data[0].eqp_code, + eqp_name: res.data[0].eqp_name, + org_name: res.data[0].org_name, + children + }) + + // centerContent = res.data.map(r => { + // return { + // typecode: r.typecode, + // typename: r.typename + // } + // }) + + console.log(JSON.stringify(topContent), 1) + + falseArray.push({ + id: '1' + }) + } else { + radioValue = topContent[0].eqp_code + falseArray.push({ + id: '1' + }) + } + + }) + } + </script> </head> - <body> + <body onload="scaned('SB001')"> + <!-- <body> --> <div id="app"> <div class="body"> - <van-nav-bar title="瀹夌伅鍝嶅簲" @click-right="onClickRight" left-arrow @click-left="onClickleft"> - <template #right> - <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" - trigger="click" :actions="actions" @select="onSelect"> - <template #reference> - <van-icon name="bars" size='20' color='#fff' /> - </template> - </van-popover> - </template> - </van-nav-bar> + <van-sticky> + <van-nav-bar title="瀹夌伅鍝嶅簲" @click-right="onClickRight" left-arrow @click-left="onClickleft"> + <template #right> + <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" + trigger="click" :actions="actions" @select="onSelect"> + <template #reference> + <van-icon name="bars" size='20' color='#fff' /> + </template> + </van-popover> + </template> + </van-nav-bar> + </van-sticky> + + <div v-if="topContent.length===0"> + <div class="sacnBody"> + <div class="scanImg" @click="topScanClick()"></div> + <div class="scanText">鎵弿宸ヤ綅</div> + </div> + </div> + + + + <div v-else> + <div class="head" style="min-height: 100px;max-height: 260px; overflow: scroll;"> + <div class="head_block"> + <div class="head_left"> + <div class="head_bar"></div> + <div class="head_title"> + 鎵弿宸ヤ綅 + </div> + </div> + + <div style="margin-right: 10px;"> + <van-icon name="scan" color='red' size='24' @click='topScanClick()' /> + </div> + + </div> + + + <van-radio-group v-model="radioValue"> + <van-cell-group> + <div style="margin: 10px 0;" v-for="(item,index) in topContent" :key="item.eqp_code" + @click="topContentClick(item.eqp_code)"> + <div class="cellDiv">宸ヤ綅缂栫爜锛歿{item.eqp_code}}</div> + <van-cell :title="'宸ヤ綅鍚嶇О锛�'+item.eqp_name"> + <template #right-icon> + <van-radio style="margin-right: 10px;" checked-color='red' + :name="item.eqp_code" /> + </template> + </van-cell> + <div class="cellDiv">鐢熶骇杞﹂棿锛歿{item.org_name}}</div> + + </div> + </van-cell-group> + </van-radio-group> + </div> + + + <div class="head" style="min-height: 100px; "> + <div class="head_block"> + <div class="head_left"> + <div class="head_bar"></div> + <div class="head_title"> + 閫夋嫨鍝嶅簲绫诲瀷 + </div> + </div> + + + + </div> + + + + <div style="padding: 10px;display: flex;flex-direction: column" + v-for="(item,index) in topContent[topContent.map(i => i.eqp_code).indexOf(radioValue)].children"> + <!-- v-for="(item,index) in centerContent"> --> + + <div style="display: flex;justify-content: space-between;align-items: center;"> + <div style="margin-left: 10px;">{{item.typename}}</div> + <div style="margin-right: 10px;"> + <van-switch size="24" v-model="item.isTrue" @change='val=>switchChange(val,item)' + active-color="#ee0a24" inactive-color="#dcdee0" /> + </div> + </div> + </div> + + </div> + + + <div + style="position:fixed;bottom: 0;width: 96%;margin-left:2%; flex;justify-content: center;flex-direction: column;align-items: center"> + <van-button id="submit" :loading='submitIsDisabled' loading-text="姝e湪鎻愪氦,璇风◢绛�..." + class="vanButtonInfo" @click='submit' type="info"> + 纭鎻愪氦</van-button> + </div> + + </div> + + </div> - <van-overlay :show="overlayShow" @click="overlayShow=false" /> + + </div> + + + <van-overlay :show="overlayShow" @click="overlayShow=false" /> </div> @@ -50,6 +273,7 @@ el: '#app', data: function() { return { + overlayShow: false, showPopover: false, actions: [{ @@ -62,8 +286,28 @@ icon: 'revoke', text: '閫�鍑虹櫥褰�' }], - + centerContent2: centerContent, + topContent2: topContent, + falseArray2: falseArray, //鍋囨暟缁� } + }, + watch: { + 'topContent2.length': { + handler(newValue, oldValue) { + if (newValue !== oldValue) { + this.$forceUpdate() + } + }, + deep: true, + immediate: true, + }, + 'falseArray2.length': { + handler(newValue, oldValue) { + this.$forceUpdate() + }, + deep: true, + immediate: true, + }, }, created() { @@ -72,6 +316,76 @@ }, methods: { + switchChange(val, item) { + this.$forceUpdate() + }, + submit() { + const data = { + username: localStorage.getItem('username'), + eqpcode: topContent.find(i => i.eqp_code === radioValue).eqp_code, + // wkshpcode: topContent.find(i => i.code === radioValue).wksp_code + } + + + const DATA = topContent.find(i => i.eqp_code === radioValue).children.map(r => { + if (r.isTrue) { + return { + code: r.typecode, + name: r.typename + } + } + }) + console.log(data, DATA) + console.log(data, DATA.filter(i=>i!==undefined)) + + submitIsDisabled = true + this.$forceUpdate() + post('AppDeviceManage/AppDeviceAnDengLampResponseSave' + formatParams(data), DATA.filter(i=>i!==undefined)).then( + res => { + if (res.code === '200') { + vant.Notify({ + type: 'primary', + message: '鎻愪氦鎴愬姛锛�' + }) + topContent.forEach((r, i) => { + if (r.eqp_code === radioValue) { + topContent.splice(i, 1) + } + }) + if (topContent.length >= 1) { + radioValue = topContent[0].eqp_code + } + submitIsDisabled = false + this.$forceUpdate() + } + }) + + }, + topContentClick(code) { + radioValue = code + this.$forceUpdate() + }, + + + topScanClick() { + createWithoutTitle('../../components/barcode_scan.html', { + titleNView: { + type: 'float', + backgroundColor: 'rgba(215,75,40,0.3)', + titleText: '鎵竴鎵�', + titleColor: '#FFFFFF', + autoBackButton: true, + buttons: [{ + fontSrc: '_www/helloh5.ttf', + text: '\ue302', + fontSize: '18px', + onclick: 'javascript:scanPicture()' + }] + } + }); + }, + + onClickleft() { history.back() }, @@ -93,5 +407,9 @@ </script> <style type="text/css"> @import url('../../css/global.css'); + + .van-hairline--top-bottom { + position: static; + } </style> </html> -- Gitblit v1.9.3