From 7f02619d92353f989cccf29fd58321d4f13500bb Mon Sep 17 00:00:00 2001 From: yangan <yangan0921@163.com> Date: 星期五, 21 六月 2024 14:04:26 +0800 Subject: [PATCH] feat:客户界面修改 productName 问题& 库管点击装卸问题 --- pages/loadUnload-page/selectTarget/selectTarget.vue | 418 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 332 insertions(+), 86 deletions(-) diff --git a/pages/loadUnload-page/selectTarget/selectTarget.vue b/pages/loadUnload-page/selectTarget/selectTarget.vue index 010c2a0..ae5e208 100644 --- a/pages/loadUnload-page/selectTarget/selectTarget.vue +++ b/pages/loadUnload-page/selectTarget/selectTarget.vue @@ -2,12 +2,26 @@ <view class="main"> <!-- 褰撳墠閫夋嫨浠撳簱 --> <view class="top-tag"> + <text>鐐瑰嚮鍒囨崲/閫夋嫨浠撳簱</text> <u-tag size='large' + icon='map' :text="dataForm.firstClass ? dataForm.firstClass : '璇烽�夋嫨浠撳簱'" @click="firstClassSelect" ></u-tag> </view> + <!-- 鐐瑰嚮鏌ョ湅鍘熺洂閽欓晛 --> + <view class="self-deliver"> + <view class="self-deliver_text"> + 鏌ョ湅鍘熺洂閽欓晛缁撴灉 + </view> + <view class="self-deliver_btn"> + <u-button text="鏌ョ湅" + type="primary" + shape="cirle" + @click="todoDetail"></u-button> + </view> + </view> <!-- <u--form labelPosition="top" labelWidth="20%" :borderBottom="false" @@ -43,38 +57,29 @@ iconSize="1000" v-if="detailData.length===0"></u-empty> <!-- 娓叉煋鍖哄煙 --> - <zh-collapse @change='change' accordion v-for="item,i in detailData" + + <view class="history-information" v-for="item,i in detailData" :key="i"> - <zh-collapse-item - class="collItem" - @clickContent='clickContent'> - <view class="" slot='title'> - <view class="history-information"> <view class="first"> - <view class="">{{ item.deptName || '' }}</view> - <view class=""><u-icon name="arrow-right" - color="#999999" - size="40"></u-icon></view> + <view class="">{{ item.carNo || '' }}</view> + <view class=""></view> </view> <view class="second"> - <view class="coal-name">{{ item.coalName || '' }}</view> + <view class="coal-name">{{ item.productName || '' }}</view> <view class="order-type">{{ item.orderType || '' }}</view> </view> <view class="third"> <view class="third-line"> - <view class="third-line_text">棰嗗彇鏁�:</view> - <view class="third-line_num">{{ item.cars2 }}</view> + <view class="third-line_text">瀹㈡埛鍚嶇О:</view> + <view>{{ item.customerName }}</view> </view> <view class="third-line"> - <view class="third-line_text">鍓╀綑鏁�:</view> - <view class="third-line_num" - v-if="roleType == 1">{{ item.carNumSurplus1 }}</view> - <view class="third-line_num" - v-else-if="roleType == 2">{{ item.carNumSurplus }}</view> + <view class="third-line_text">浠撳簱:</view> + <view >{{ item.bunkerName }}</view> </view> <view class="third-line"> - <view class="third-line_text">鎻愮叅鍗曚釜鏁�:</view> - <view class="third-line_num">{{ item.tmCount }}</view> + <view class="third-line_text">璐ㄦ鐘舵��:</view> + <view> <u-tag :text="checkStatusList[item.checkStatus]" plain > </u-tag></view> </view> </view> <view class="fourth"> @@ -93,12 +98,60 @@ </view> <view class="senddate">{{ item.orderCode }}</view> </view> + <view class="table"> + <uni-table border stripe + emptyText="鏆傛棤鏇村鏁版嵁"> + <uni-tr> + <uni-th width='140' + align="center">鎿嶄綔</uni-th> + <uni-th align="center" width='120'>浜у搧</uni-th> + <uni-th align="center">杞︾墝鍙�</uni-th> + <uni-th align="center">绫诲瀷</uni-th> + <uni-th align="center">鐨噸</uni-th> + <uni-th align="center">姣涢噸</uni-th> + <uni-th align="center">鍑�閲�</uni-th> + <uni-th align="center">鏁伴噺</uni-th> + <!-- <uni-th align="center">浠撳簱</uni-th> --> + <!-- <uni-th align="center">鐘舵��</uni-th> --> + + </uni-tr> + <uni-tr v-for="(subItem, index) in item.tmTaskCoalList" :key="index"> + <uni-td align="center"> + <view class="btnBox"> + <!-- --> + <u-button text='鏌ョ湅' @click="viewDetail(subItem)"></u-button> + <u-button type='primary' text='纭瑁呭嵏' v-if="subItem.flag" @click="enterOk(subItem)"></u-button> + </view></uni-td> + <uni-td align="center"> + <view>{{ subItem.productName }}</view></uni-td> + <uni-td align="center"> + <view style="width:150rpx">{{ subItem.carNo }}</view></uni-td> + <uni-td> + <view class="name">{{ subItem.orderType }}</view> + </uni-td> + <uni-td> + <view class="name">{{ subItem.skin }}</view> + </uni-td> + <uni-td> + <view class="name">{{ subItem.hair }}</view> + </uni-td> + <uni-td> + <view class="name">{{ subItem.clean }}</view> + </uni-td> + <uni-td> + <view class="name">{{ subItem.productQuantity }}</view> + </uni-td> +<!-- + 聽 <uni-td align="center"> + <view>{{ subItem.bunkerName }}</view></uni-td> --> + <!-- <uni-td align="center"> + <view class="name">{{ subItem.statusView }}</view></uni-td> --> + + </uni-tr> + </uni-table> + </view> </view> - </view> - <view class="" slot='cont'>鏀寔瀹氫箟鍐呭</view> - </zh-collapse-item> - </zh-collapse> </view> <u-action-sheet :actions="firstClassActionsList" @@ -107,6 +160,39 @@ :closeOnClickOverlay='true' @close='firstClassClose' @select="firstClassSelectClick"></u-action-sheet> + <u-modal :show="enterZx" + :title="'鎻愮ず'" + @close="closeModal" + @cancel="cancelModal" + @confirm="confirmModal" + :closeOnClickOverlay="true" + :showCancelButton="true"> + <view class="slot-content"> + 鏄惁纭瑁呭嵏锛� + <view v-if="isNumOk || isClean"> + <text>浜у搧鍚嶇О锛歿{activeObj.productName}}</text> + + <view class="queren"> + <text>璇疯緭鍏�</text>锛� + <u--input + border="bottom" + :disabled="activeObj.productName === 'PVC' && activeObj.packingType === 5" + :placeholder="isNumOk ? '鏁伴噺' :'鎶樺惃'" + v-model="checkNum" + > + </u--input> + <text> {{isNumOk ? '浠�' : '鍚�' }}</text> + </view> + <!-- pvc 骞朵笖鏄ぇ鍖� --> + <view class="pvcBig" v-if="activeObj.productName === 'PVC' && activeObj.packingType === 5"> + + </view> + <view v-if="isNumOk && activeObj.productQuantity">褰撳墠鏁伴噺锛歿{activeObj.productQuantity}}浠�</view> + <view v-if="activeObj.containerNumber"><span>闆嗚绠卞彿锛�</span>{{activeObj.containerNumber}}</view> + </view> + + </view> + </u-modal> <!-- 鐓や粨 --> <!-- <u-action-sheet :actions="secondClassActionsList" :show="secondClassShow" @@ -126,6 +212,22 @@ <script> export default { + props: { + loadUnloadData: { + type: Object, + default: {} + } + }, + watch: { + loadUnloadData: { + handler(v) { + console.log(v,'vvvvvv') + this.loadUnloadData = v; + }, + deep: true, + immediate: true + } + }, data() { return { dataForm: { @@ -134,7 +236,14 @@ orderType: '', bunkerId:"" }, + checkStatusList:[ + '寰呭彇鏍�','宸插彇鏍�','鍚堟牸','涓嶅悎鏍�' + ], index: '', + enterZx:false, + typeText:'', // 纭瑁呭嵏涓夌绫诲瀷 + isNumOk:false, //璁′欢 + isClean:false, // 鎶樺惃 // 鐓ゅ満鎿嶄綔鑿滃崟 firstClassActionsList: [], firstClassShow: false, @@ -143,6 +252,8 @@ secondClassShow: false, coalList: [], checkedCoal: [], + checkNum:'', + activeObj:{}, userInfo: {}, detailData:[], filedId: "", @@ -163,6 +274,13 @@ }; }, methods: { + viewDetail(item){ + //鏌ョ湅鏀跺彂鍗曡鎯� + uni.navigateTo({ + url: `/pages/loadUnload-page/loadUnlaodPageDetail/detail?id=${item.id}&checkId=${item.checkId}` + }); + + }, getUserInfo() { this.$reqGet('getUserEntity').then(res => { this.userInfo = res.data; @@ -178,15 +296,11 @@ uni.hideLoading() if (res.code === 0) { this.firstClassActionsList = res.data; - if(res.data.length === 1){ + if(res.data.length){ this.dataForm.bunkerId = res.data[0].id; uni.setStorageSync('bunkerId',res.data[0].id) this.dataForm.firstClass = res.data[0].name; - setTimeout(()=>{ - uni.navigateTo({ - url: `/pages/loadUnload-page/loadUnload-detail/loadUnload-detail?bunkerId=${this.dataForm.bunkerId}` - }) - },300) + this.getDetailData(); } } else { @@ -202,63 +316,32 @@ firstClassClose() { this.firstClassShow = false }, + getDetailData(){ + uni.showLoading({ + title:'鍔犺浇涓�' + }) + this.$reqGet('getTaskCoalListByBunkerId', { bunkerId:this.dataForm.bunkerId }).then(res => { + if (res.code === 0) { + this.detailData = res.data.map(item=>{ + item.tmTaskCoalList.map(el=>{ + el.flag = el.isPretendDischar ? false : true + return el + }) + return item; + }); + console.log(this.detailData,'detailData') + uni.hideLoading(); + } + }) + + }, firstClassSelectClick(val) { this.dataForm.firstClass = val.name; this.dataForm.bunkerId= val.id; uni.setStorageSync('bunkerId', val.id); - this.$reqGet('getTaskCoalListByBunkerId', { bunkerId:this.dataForm.bunkerId }).then(res => { - uni.hideLoading() - if (res.code === 0) { - this.detailData = res.data; - console.log(this.detailData,'detailData') - } else { - this.$u.toast('鍔犺浇澶辫触') - } - }) + this.getDetailData(); this.filedId = val.id }, - // 鑾峰彇鐓や粨 - // getFiledIdCoalBunker(filedId) { - // this.$reqGet('getFiledIdCoalBunker', { filedId, }).then(res => { - // this.secondClassActionsList = res.data - // }) - // }, - //鐓や粨鑿滃崟 - // secondClassSelect() { - // this.secondClassShow = true - // }, - // secondClassClose() { - // this.secondClassShow = false - // }, - // secondClassSelectClick(val) { - // this.dataForm.secondClass = val.name - // this.coalList = this.secondClassActionsList.find(v => v.id === val.id).coalNames.split(',').map(v => { - // return { - // name: v, - // id: Math.floor(Math.random() * 100) + 1, - // checked: false - // } - // }) - // }, - // orderTypeSelect() { - // this.orderTypeShow = true - // }, - // orderTypeClose() { - // this.orderTypeShow = false - // }, - // orderTypeSelectClick(val) { - // this.orderTypeShow = false - // this.dataForm.orderType = val.name - // this.isOrderType = '' - // }, - // cleanOrderType() { - // this.dataForm.orderType = null - // this.isOrderType = '璇烽�夋嫨' - // this.orderTypeShow = false - // }, - // checkboxChange(e) { - // this.selectedCoal = e - // }, formHandle() { if (!this.dataForm.firstClass) return this.$u.toast('璇烽�夋嫨鐓ゅ満鎴栬�呯叅浠�'); this.$nextTick(()=>{ @@ -274,7 +357,77 @@ close(){ }, - open(){} + open(){}, + enterOk(item){ + console.log('123',item) + this.activeObj = item; + if(item.productQuantity){ + this.isNumOk = true; + this.isClean = false; + }else if(item.isWeight === 1){ + this.isClean = true; + this.isNumOk = false; + }else{ + this.isNumOk = false; + this.isClean = false; + } + //pvc澶у寘鑷姩璁$畻鎶樺惃 + if(item.productName === 'PVC' && item.packingType === 5){ + this.checkNum = (Number(item.productQuantity) * 60) + + } + this.enterZx = true; + + }, + closeModal(){ + this.enterZx = false; + this.checkNum = ''; + }, + cancelModal(){ + this.enterZx = false; + this.checkNum = ''; + }, + confirmModal(){ + this.enterZx = false; + this.$reqPost('confirmLoadAndUnload',{ + id: this.activeObj.id, + productQuantity:this.isNumOk ? this.checkNum :this.activeObj.skin, + discount:this.isClean ? this.checkNum : null, + isPretendDischar:this.activeObj.isPretendDischar + },'json').then(res=>{ + console.log(res,'rez') + this.checkNum = ''; + if(res.code === 1){ + console.log('瑙﹀彂') + this.$u.toast(res.msg || '澶辫触'); + }else{ + this.$u.toast('鎿嶄綔鎴愬姛'); + } + + + + + }).catch((err) => { + this.$u.toast(err.msg || '澶辫触'); + }).finally(() => { + this.getDetailData(); + }) + }, + //鍒ゆ柇鏄惁鏄� 涓夌鐗规畩绫诲瀷瀵瑰簲寮圭獥 + judgeTypeFun(name){ + + + }, + //鏌ョ湅鏈�杩戜竴娆$殑鍘熺洂閽欓晛 + todoDetail(){ + console.log() + uni.navigateTo({ + url: `/pages/loadUnload-page/checkTestDetails/index` + }) + + } + + }, onShow(){ @@ -303,6 +456,89 @@ <style lang="scss" scoped> + .table{ + width: 100%; + /deep/ .uni-table{ + min-width: 0!important; + margin-left: 20rpx; + } + +} + // 鑷富閰嶉�� + .self-deliver { + position: relative; + top: vww(10); + width: 95%; + height: vww(40); + margin: vww(8) 10rpx; + padding: 0 vww(8); + background: #ffffff; + box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12); + border-radius: 20rpx; + @include flex; + align-items: center; + justify-content: space-between; + /deep/.u-button { + width: 100%; + height: 28px !important; + line-height: 40px; + padding: 0 12px; + font-size: 28rpx; + font-weight: 300; + color: #ffffff; + background: #497bfb !important; + letter-spacing: 4rpx; + border-radius: 37rpx 37rpx 37rpx 37rpx !important; + box-shadow: 2rpx 3rpx 13rpx 0rpx rgba(43, 98, 239, 0.5), 0rpx 0rpx 9rpx 0rpx rgba(247, 250, 253, 0.29); + } + } + .queren{ + display: flex; + justify-content: space-between; + /deep/ .u-input { + border-bottom: 1px solid #ccc; + } + } + .name{ + width: 50rpx; + } + .table{ + width: 94%; + margin-left: 20rpx; + position: relative; + margin-top: 30rpx; + overflow-x: auto; + /deep/ .uni-table-th{ + font-size: 12px; + } + /deep/ .uni-table-td { + font-size: 12px; + } + /deep/ .uni-table{ + min-width: 0rpx!important; + // position: sticky !important;; + } + /deep/ .uni-table-body-wrapper { + position: relative; +} + /deep/ .uni-table-body { + display: flex; +} +.fixed { +position: absolute; +right: -35px; +background: #fff; +} + + } + .btnBox{ + min-width: 130rpx; + display: flex; + justify-content: space-around; + text{ + color: #035cfb; + } + } .main { width: 94%; margin: 10px; @@ -310,17 +546,21 @@ position: relative; top: vww(-160); .top-tag{ - width: 25%; + width: 33%; height: 100rpx; - margin-left: 70%; + margin-left: 65%; display: flex; /* margin-top: 40rpx; */ color: #fff; + align-items: center; justify-content: space-between; } .div-box{ width: 100%; + display: flex; + margin-left: 10rpx; + flex-direction: column; /deep/ .u-collapse{ background: #fff; } @@ -356,9 +596,13 @@ } .collItem{ margin-top: 30rpx; + /deep/ .content{ + background: none!important; + } } .history-information { - + margin-bottom:50rpx; + margin-top: 10rpx; background: #ffffff; border-radius: 20rpx; @include flex flex-direction: column; @@ -406,15 +650,17 @@ .third { width: 96%; - height: 31rpx; + height: 120rpx; font-size: 30rpx; font-weight: 300; color: #515151; margin: vww(10) vww(10) 0; @include flex; + flex-direction: column; .third-line { @include flex; + align-items: center;; &_text { color: #919090; -- Gitblit v1.9.1