From a28d0135ee42809b2c5863609da37155d3ecba5b Mon Sep 17 00:00:00 2001 From: yangan <yangan0921@163.com> Date: 星期二, 29 四月 2025 15:11:39 +0800 Subject: [PATCH] feat:增加类型显示 --- pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue | 373 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 341 insertions(+), 32 deletions(-) diff --git a/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue b/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue index 7a6ab68..6eacd8c 100644 --- a/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue +++ b/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue @@ -4,6 +4,15 @@ <u-search @change="change" :searchIconSize="40" placeholder="璇疯緭鍏ヨ溅鐗屽彿" height="60" clearabled v-model="carNo" @search="search" @custom="custom" @clear="clear" > </u-search > </view> + <u-collapse + ref="myCollapse" + :value='["1"]' + > + <u-collapse-item + ref="collapseHeight" + name='1' + class="collItem" + :title="'寰呮鏌ヨ溅杈�'"> <view style="position: relative;top: -40px;"> <u-empty mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" @@ -21,11 +30,68 @@ <view class="dispatch-dept">{{ item.code || '' }}</view> <view class="black-bar"></view> <view class="dispatch">{{ item.customerName ||'' }}</view> + </view> <view class="point-number"> - <text class="order-type">{{ item.productNames || '' }}</text> + <text class="order-type">{{ item.productNames?limitString(item.productNames,20,'...'):'' || '' }}</text> </view> </view> + <view class="second-line"> + <view class="coal-name"> + <view class="dispatch-dept">{{ item.carNo || '' }}</view> + <view class="black-bar"></view> + <view class="dispatch">{{ item.driver ||'' }}</view> + <view class="black-bar"></view> + <text>{{ item.phone || '' }}</text> + + </view> + </view> + <view class="second-line"> + <text>{{ item.orderType || '' }}</text> + </view> + <view class="third-line"> + <view class="time-icon"> + <view + style="width: 24rpx;height: 24rpx;line-height: 24rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/clock.png') no-repeat;background-size: cover"> + </view> + </view> + <view class="send-date">{{ item.sendDate }} {{ item.startTime || '' }}-{{item.endTime || ""}}</view> + </view> + <view class="fourth-line"> + <view class="receive" + v-if="item.roadTransportId" + @click.stop="lookRoad(item)"> + <view class="button-image">鍓ф瘨閫氳璇�</view> + </view> + <view class="forward" + @click.stop="yuYueBtnClick(item)"> + <view class="button-image">妫�鏌�</view> + </view> + </view> + </view> + </view> + </u-collapse-item> + </u-collapse> + <u-collapse + ref="myCollapse" + > + <u-collapse-item + ref="collapseHeights" + name='3' + class="collItem" + :title="'涓存椂鍏ュ満杞﹁締'"> + <view style="position: relative;top: -40px;"> + <u-empty mode="data" + icon="http://cdn.uviewui.com/uview/empty/data.png" + textSize="30" + iconSize="1000" + text="鏆傛棤杞﹁締" + v-if="driverTemporaryEntry.length == 0"></u-empty> + </view> + <view class="collection-form"> + <view class="collection-form-item" + v-for="(item, index) in driverTemporaryEntry" + :key="index"> <view class="second-line"> <view class="coal-name"> <view class="dispatch-dept">{{ item.carNo || '' }}</view> @@ -38,24 +104,96 @@ <view class="third-line"> <view class="time-icon"> <view - style="width: 24rpx;height: 24rpx;li ne-height: 24rpx;background: url('https://mx.jzeg.cn:9096/appimg/image/banner/clock.png') no-repeat;background-size: cover"> + style="width: 24rpx;height: 24rpx;line-height: 24rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/clock.png') no-repeat;background-size: cover"> </view> </view> <view class="send-date">{{ item.sendDate }} {{ item.startTime || '' }}-{{item.endTime || ""}}</view> </view> - <view class="fourth-line"> - <view class="receive" - v-if="item.roadTransportId" - @click.stop="lookRoad(item)"> - <view class="button-image">閬撹矾杩愯緭璇�</view> + <view class="first-line"> + <view class="dispatch-receive"> + <view class="dispatch-dept">{{ item.coalName || '' }}</view> + <view class="black-bar"></view> + <view class="dispatch">{{ item.customerName ||'' }}</view> + </view> + <view class="second-line"> + <text>{{ item.orderType || '' }}</text> + </view> + <view class="point-number"> + <text class="order-type">{{ item.productNames?limitString(item.productNames,20,'...'):'' || '' }}</text> + </view> + </view> + <view class="fourth-line"> <view class="forward" - @click.stop="yuYueBtnClick(item)"> + @click.stop="yuYueLiShBtnClick(item)"> <view class="button-image">妫�鏌�</view> </view> </view> </view> </view> + </u-collapse-item> + </u-collapse> + <u-collapse + ref="myCollapse" + > + <u-collapse-item + name='2' + class="collItem" + :title="'宸叉鏌ヨ溅杈�'"> + <view style="position: relative;top: -40px;"> + <u-empty mode="data" + icon="http://cdn.uviewui.com/uview/empty/data.png" + textSize="30" + iconSize="1000" + text="鏆傛棤杞﹁締" + v-if="driverBillOfLoadingDatas.length == 0"></u-empty> + </view> + <view class="collection-form" style="margin-bottom: 60px;"> + <view class="collection-form-item" + v-for="(item, index) in driverBillOfLoadingDatas" + :key="index"> + <view class="first-line"> + <view class="dispatch-receive"> + <view class="dispatch-dept">{{ item.code || '' }}</view> + <view class="black-bar"></view> + <view class="dispatch">{{ item.customerName ||'' }}</view> + </view> + <view class="point-number"> + <text class="order-type">{{ item.productNames?limitString(item.productNames,20,'...'):'' || '' }}</text> + </view> + </view> + <view class="second-line"> + <view class="coal-name"> + <view class="dispatch-dept">{{ item.carNo || '' }}</view> + <view class="black-bar"></view> + <view class="dispatch">{{ item.driver ||'' }}</view> + <view class="black-bar"></view> + <text>{{ item.phone || '' }}</text> + + </view> + </view> + <view class="second-line"> + <view class="dispatch-dept">{{ item.orderType || '' }}</view> + </view> + <view class="third-line"> + <view class="time-icon"> + <view + style="width: 24rpx;height: 24rpx;line-height: 24rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/clock.png') no-repeat;background-size: cover"> + </view> + </view> + <view class="send-date">{{ item.inInspectedTime?item.inInspectedTime.slice(10,19):null }} </view> + </view> + <view class="fourth-line"> + <view class="receive" + v-if="item.roadTransportId" + @click.stop="lookRoad(item)"> + <view class="button-image">鍓ф瘨閫氳璇�</view> + </view> + </view> + </view> + </view> + </u-collapse-item> + </u-collapse> <u-popup :show="imgshow" @close="closeimg" @open="openimg" @@ -64,7 +202,7 @@ <view class="imgrPopup"> <u--image :showLoading="true" :src="certificateImg != null ? BaseUrl + certificateImg : ''" - width="700rpx" + width="100%" height="400rpx" @click="imageClick(certificateImg)"> <view slot="error" @@ -89,6 +227,33 @@ height="800rpx"></u--image> </u-popup> </view> + <u-popup :show="doorshow" + @close="doorclose" + @open="dooropen" + mode="center" + :closeOnClickOverlay='false' + round="10"> + <view class="doorPopup"> + <view class="doorRadio"> + <u-radio-group v-model="door" + placement="row" + size="30" + shape="circle" + iconSize="20"> + <u-radio labelSize="14px" + size="20px" + v-for="(item, index) in doorList" + :key="index" + :label="item.label" + :name="item.name"></u-radio> + </u-radio-group> + </view> + <view class="doorPopup__btn"><u-button text="纭畾" + type="primary" + @click="doorClick" + ></u-button></view> + </view> + </u-popup> <u-popup :show="show" @close="close" @open="open" @@ -131,11 +296,20 @@ @confirm="falseConfirm" @cancel="falseCancel"></u-modal> </view> + <view class="falseModel"> + <u-modal :show="TemporaryEntryShow" + :title="logoutTitle" + showCancelButton + :content="logoutContent" + @confirm="TemporaryEntryConfirm" + @cancel="TemporaryEntryCancel"></u-modal> + </view> </view> </template> <script> import { BaseUrl } from '@/api/publicInterface.js'; + import combinedTitle from '@/components/combined-title/combined-title.vue'; import previewImage from '@/components/kxj-previewImage/kxj-previewImage.vue'; export default { components: { @@ -143,8 +317,28 @@ }, data() { return { + doorList: [{ + name: 2, + label: '2鍙烽棬', + }, + { + name: 3, + label: '3鍙烽棬', + } + ], + door:2, + doorshow:true, + temporaryPlanId:"", show: false, // 寮瑰嚭鍏ㄩ儴棰嗗彇鎻愮ず - driverBillOfLoadingData:[], + driverBillOfLoadingData:[ + { + carNo:'鍐�A99999', + orderType:'澶栬喘' + } + + ], + driverBillOfLoadingDatas:[], + driverTemporaryEntry:[], inspectData:[], isAllSelected:false, form:{}, @@ -156,6 +350,7 @@ certificateImg:"", logoutShow: false, falseShow:false, + TemporaryEntryShow:false, logoutTitle: '鎻愮ず', logoutContent: '鏄惁妫�鏌ュ畬姣�', previewImageSrc:"", @@ -166,6 +361,18 @@ this.init(); }, methods: { + handleOpenChange() { + this.$nextTick(() => { + this.$refs.collapseHeight.init() + }); + this.$nextTick(() => { + this.$refs.collapseHeights.init() + }); + }, + limitString(str, limit, suffix = '...') { + if (str.length <= limit) return str; + return str.slice(0, limit) + suffix; + }, falseConfirm(){ this.inspectData=[] uni.showLoading({ title: '鍔犺浇涓�...' }); @@ -187,6 +394,23 @@ } }) }, + TemporaryEntryConfirm(){ + this.$reqPost('temporaryEntryConfirmation',{ + temporaryPlanId:this.temporaryPlanId, + }, 'json').then(res => { + if (res.code === 0) { + this.form={} + this.ClickLoading = false; + this.show = false; + uni.$u.toast('妫�鏌ユ垚鍔�') + this.TaskCoalList() + this.TemporaryEntryShow = false; + } else { + uni.$u.toast(res.msg ? res.msg : '妫�鏌ュけ璐�') + this.TemporaryEntryShow = false; + } + }) + }, logoutConfirm() { if(this.isAllSelected==true){ this.ClickLoading = true; @@ -204,7 +428,7 @@ inspectedResult:JSON.stringify(this.inspectData) }, 'json').then(res => { if (res.code === 0) { - uni.$u.toast('妫�鏌ユ垚鍔�') + this.$u.toast('妫�鏌ユ垚鍔�') this.form={} this.ClickLoading = false; this.inspectData=[] @@ -212,12 +436,15 @@ this.logoutShow = false; this.TaskCoalList() } else { - uni.$u.toast(res.msg ? res.msg : '妫�鏌ュけ璐�') + this.ClickLoading = false; + this.show = false; this.logoutShow = false; + this.$u.toast(res.msg || '妫�鏌ュけ璐�') + } }) }else{ - uni.$u.toast('蹇呴』鍏ㄩ儴妫�娴�') + this.$u.toast('蹇呴』鍏ㄩ儴妫�娴�') } }, logoutCancel() { @@ -225,6 +452,9 @@ }, falseCancel() { this.falseShow = false; + }, + TemporaryEntryCancel() { + this.TemporaryEntryShow = false; }, previewImageClose() { this.previewImageShow = false; @@ -243,8 +473,12 @@ this.imgshow=true }); }, + yuYueLiShBtnClick(item){ + this.temporaryPlanId=item.id + this.TemporaryEntryShow = true; + }, yuYueBtnClick(item){ - let char = "杩愯緭璇�"; + let char = "閫氳璇�"; if (item.inspectedResult.includes(char)) { if(item.roadTransportId){ if(item.inspectedResult){ @@ -272,7 +506,7 @@ }) } }else{ - uni.$u.toast('璇ュ徃鏈烘湭涓婁紶杩愯緭璇侊紒') + uni.$u.toast('璇ュ徃鏈烘湭涓婁紶閫氳璇侊紒') } } else { if(item.inspectedResult){ @@ -292,13 +526,24 @@ }, init() { this.isAllSelected=false - this.TaskCoalList(); this.form={} this.inspectData=[] this.certificateImg="" + if(uni.getStorageSync('door', this.door)){ + this.TaskCoalList(); + } }, popClick() { this.logoutShow = true; + }, + doorClick(){ + this.TaskCoalList(); + this.doorshow = false; + uni.setStorageSync('door', this.door); + }, + dooropen() {}, + doorclose() { + this.doorshow = false; }, open() {}, close() { @@ -313,22 +558,48 @@ uni.showLoading({ title: '鍔犺浇涓�...' }); - if(!this.carNo){ - this.$reqGet('getCheckTaskCoal',{flag:0}).then(res => { + this.$reqGet('getCheckTaskCoal',{flag:0,door:this.door}).then(res => { uni.hideLoading(); this.driverBillOfLoadingData = res.data; uni.stopPullDownRefresh(); + this.handleOpenChange(); + }); + this.$reqGet('getTemporaryEntryInspectionList',{}).then(res => { + uni.hideLoading(); + this.driverTemporaryEntry = res.data; + uni.stopPullDownRefresh(); + this.handleOpenChange(); }); }else{ - this.$reqGet('getCheckTaskCoal',{flag:0,carNo:this.carNo}).then(res => { + this.$reqGet('getCheckTaskCoal',{flag:0,carNo:this.carNo,door:this.door}).then(res => { uni.hideLoading(); this.driverBillOfLoadingData = res.data; uni.stopPullDownRefresh(); + this.handleOpenChange(); + }); + this.$reqGet('getTemporaryEntryInspectionList',{carNo:this.carNo}).then(res => { + uni.hideLoading(); + this.driverTemporaryEntry = res.data; + uni.stopPullDownRefresh(); + this.handleOpenChange(); }); } - - + if(!this.carNo){ + this.$reqGet('getAlreadyCheckTaskCoal',{flag:0,door:this.door}).then(res => { + uni.hideLoading(); + this.driverBillOfLoadingDatas = res.data; + uni.stopPullDownRefresh(); + this.handleOpenChange(); + }); + }else{ + this.$reqGet('getAlreadyCheckTaskCoal',{flag:0,carNo:this.carNo,door:this.door}).then(res => { + uni.hideLoading(); + this.driverBillOfLoadingDatas = res.data; + uni.stopPullDownRefresh(); + this.handleOpenChange(); + }); + } }, change(res) { }, @@ -353,18 +624,40 @@ } } .imgrPopup{ - width: 700rpx; + width: 80vw; background-color: #ffffff; .driveruser{ display: flex; justify-content: space-between } } + + .doorPopup{ + height: vww(123); + width: 60vw; + display: flex; + flex-direction: column; + justify-content: space-evenly; + align-items:center; + .doorPopup__btn { + font-size: 1.4vw; + margin: vww(10) auto 0; + width: 80%; + text-align: center; + margin: vww(10) auto; + width: 50%; + + .u-button { + height: vww(20); + } + } + } .receiverPopup { - height: vww(110); - width: 300rpx; + height: vww(153); + width: 60vw; .receiverPopup__title { + font-size: 1.4vw; margin: vww(10) auto 0; width: 80%; text-align: center; @@ -380,7 +673,21 @@ } } } + /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); + } ::v-deep.appointment { + margin-bottom: vww(100); .appointment-description { margin: vww(8) 0; color: #fd1446; @@ -400,25 +707,29 @@ .uni-table { min-width: 0 !important; - + .checkbox { + background: #ffffff; + } .uni-table-tr { padding: 0; - font-size: vww(10); .uni-table-th { height: vww(32); line-height: vww(20); padding: vww(5) vww(10); color: #111111; + font-size: 2vw; font-weight: 550; - background: #f5f5f5; + background: #ffffff; } .uni-table-td { height: vww(32); line-height: vww(20); padding: vww(5) vww(5); + font-size: 1.5vw; color: #111111; + background: #ffffff; .u-button { height: vww(23); } @@ -439,7 +750,7 @@ } .collection-form-item { margin: 0 vww(15); - width: 690rpx; + width: 95%; height: 370rpx; background: #ffffff; box-shadow: 4rpx 6rpx 25rpx 0rpx rgba(73, 120, 240, 0.15); @@ -486,12 +797,10 @@ } .point-number { - width: 15%; + width: 33%; .order-type { color: #035cfb; - border: 2px solid #035cfb; border-radius: 4rpx; - padding: vww(2) vww(4); text-align: center; } // text { @@ -568,7 +877,7 @@ justify-content: flex-start; position: relative; bottom: vww(10); - left: 25%; + left: 30%; .receive, .forward { -- Gitblit v1.9.1