From ba3c63b9f6823f86bbbc73f407b242bc8c8d76a8 Mon Sep 17 00:00:00 2001
From: wk
Date: 星期六, 29 六月 2024 16:47:52 +0800
Subject: [PATCH] feat:门卫取样员库管样式更改和临时入场样式更改

---
 pages/loadUnload-page/selectTarget/selectTarget.vue |  524 ++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 433 insertions(+), 91 deletions(-)

diff --git a/pages/loadUnload-page/selectTarget/selectTarget.vue b/pages/loadUnload-page/selectTarget/selectTarget.vue
index 010c2a0..8fa831c 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,25 @@
 							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.productNames || 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>
-								<view class="third-line">
-									<view class="third-line_text">鎻愮叅鍗曚釜鏁�:</view>
-									<view class="third-line_num">{{ item.tmCount }}</view>
+								<view class="third-line"  v-if="item.productName === 'EDC'">
+									<view class="third-line_text">璐ㄦ鐘舵��:</view>
+									<view> <u-tag :text="checkStatusList[item.checkStatus]" plain > </u-tag></view>
 								</view>
 							</view>
 							<view class="fourth">
@@ -93,12 +94,57 @@
 								</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-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(item,subItem)"></u-button>
+						</view></uni-td>
+						<uni-td align="center">
+							<view>{{ subItem.productName }}</view></uni-td>
+					<uni-td>
+						<view class="name">{{ subItem.bunkerName }}</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 +153,65 @@
 			: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
+							     type='digit'
+							     border="bottom"
+								: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-radio-group
+								v-model="isEmptyCar"
+								 placement="row"
+								 iconPlacement="right"
+								 style="justify-content: space-evenly"
+							>
+								<u-radio
+								:key="1"
+								:label="'鏄�'"
+								:name="'1'"
+								shape="circle"
+								iconSize="32"
+								label-size="32"
+								size="40"
+								>
+								</u-radio>
+								<u-radio
+								:key="0"
+								:label="'鍚�'"
+								:name="'0'"
+								shape="circle"
+								iconSize="32"
+								label-size="32"
+								size="40"
+								>
+								</u-radio>
+							</u-radio-group></view>
+				</view>
+			</u-modal>
 		<!-- 鐓や粨 -->
 		<!-- <u-action-sheet :actions="secondClassActionsList"
 			:show="secondClassShow"
@@ -125,7 +230,24 @@
 </template>
 
 <script>
+	import { BaseUrl } from '@/api/publicInterface.js'
 	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 +256,15 @@
 					orderType: '',
 					bunkerId:""
 				},
+				isEmptyCar:null, //鏄惁绌鸿溅鍑哄巶
+				checkStatusList:[
+					'寰呭彇鏍�','宸插彇鏍�','璐ㄦ涓�','寰呭鏍�','澶嶆牳涓�','寰呭瀹�','瀹″畾涓�','宸插畬鎴�'
+				],
 				index: '',
+				enterZx:false,
+				typeText:'', // 纭瑁呭嵏涓夌绫诲瀷
+				isNumOk:false, //璁′欢
+				isClean:false, // 鎶樺惃
 				// 鐓ゅ満鎿嶄綔鑿滃崟
 				firstClassActionsList: [],
 				firstClassShow: false,
@@ -143,11 +273,14 @@
 				secondClassShow: false,
 				coalList: [],
 				checkedCoal: [],
+				checkNum:'',
+				activeObj:{},
 				userInfo: {},
 				detailData:[],
 				filedId: "",
 				selectedCoal: [],
 				orderTypeShow: false,
+				pvcWeight:'',
 				orderTypeList: [{
 						name: '澶栭攢',
 						id: Math.floor(Math.random() * 100) + 1,
@@ -163,12 +296,23 @@
 			};
 		},
 		methods: {
+				getPVCWeight(){
+			
+			},
+			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;
 					this.userInfo.password = null
 				})
 			},
+		
 			// 鑾峰彇鐓ゅ満
 			getDeptIdFiled() {
 				uni.showLoading({
@@ -178,15 +322,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 +342,38 @@
 			firstClassClose() {
 				this.firstClassShow = false
 			},
+			getDetailData(){
+				     uni.showLoading({
+                    title:'鍔犺浇涓�'
+                })
+					this.$reqGet('getTaskCoalListByBunkerId', { bunkerId:this.dataForm.bunkerId }).then(res => {
+					uni.hideLoading();
+					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')
+					}else if(res.code === 1){
+						this.detailData = [];
+						this.$u.toast(res.msg ? res.msg : '鎿嶄綔澶辫触锛侊紒')
+					}
+				}).catch(err=>{
+					this.detailData = [];
+					this.$u.toast(res.msg ? res.msg : '鎿嶄綔澶辫触锛侊紒')
+				})
+
+			},
 			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 +389,135 @@
 			close(){
 
 			},
-			open(){}
+
+					
+
+			
+			open(){},
+			enterOk(parintItem,item){
+				console.log(parintItem,'priintItem')
+				uni.request({
+					url: `${BaseUrl}/admin/dict/type/tray_weight`,
+					method: 'GET',
+					header: {
+					Authorization: 'Bearer' + ' ' + uni.getStorageSync('token'),
+					clientToc: 'Y',
+					'CLIENT_TOC': 'Y',
+				},
+					success: (res) => {
+						this.pvcWeight = res.data.data.find(item=>item.label === '5') ? Number(res.data.data.find(item=>item.label == '5').value) : '';
+						
+					}
+				})
+			//  璁′欢锛�	0 pvc type 
+			//  鎶樺惃: 
+				this.activeObj = item;
+				if( (parintItem.orderType === '澶栬喘' ||parintItem.orderType === '澶栬喘閫�' ) && item.isWeight === 0){
+					this.isNumOk = true;
+					this.isClean = false;
+					//鍥炴樉璁℃暟閲�
+				    this.checkNum  = item.productQuantity ? item.productQuantity : '';
+				}else if( parintItem.orderType ==='澶栬喘' &&  item.isWeight === 1){
+					this.isClean = true;
+					this.isNumOk = false;
+				}else{
+					this.isNumOk = false;
+					this.isClean = false;
+				}
+				//pvc
+				 if(parintItem.orderType ==='澶栭攢' && item.productName ==='PVC' && (item.packingType === 3 || item.packingType === 4)){
+					this.isNumOk = true;
+					this.isClean  = false;
+				}
+				//鐡惰娑叉隘鏉′欢
+				//EDC 璐ㄦ瀹屾垚鏂瑰彲纭
+				if(item.packingType === 1){ 
+					this.isNumOk = true;
+					this.isClean = false;
+				}
+				//
+				//pvc澶у寘鑷姩璁$畻鎶樺惃
+				if(item.productName === 'PVC' && item.packingType === 5){
+					this.isNumOk = true;
+					this.isClean = false;
+				}
+				if(parintItem.orderType === '澶栬喘'){
+					this.isEmptyCar = '1';
+				}else if(parintItem.orderType === '澶栭攢' || parintItem.orderType === '澶栬喘閫�'){
+					this.isEmptyCar = '0';
+				}
+			this.enterZx = true;
+				
+			},
+			closeModal(){
+				this.enterZx = false;
+				this.checkNum = '';
+				this.isEmptyCar = null;
+			},
+			cancelModal(){
+				this.enterZx = false;
+				this.checkNum = '';
+				this.isEmptyCar = null;
+			},
+			confirmModal(){
+				    uni.showLoading({
+                    title:'鍔犺浇涓�'
+                });
+				if(this.activeObj.productName ==='EDC'){
+					if( this.activeObj.checkStatus !== 7){
+								this.$u.toast(`璇锋鏌ュ綋鍓岴DC璁㈠崟璐ㄦ鐘舵�佸悗鍦ㄧ‘璁よ鍗�!`);
+								return
+					}
+					
+				}else if( this.isEmptyCar === null){
+					this.$u.toast(`璇锋鏌�${this.isNumOk ? '璁′欢鏁伴噺' :'鎶樺惃'}锛屼互鍙婃槸鍚︾┖杞﹀嚭鍘傞」!`);
+					return
+				}else{
+					this.enterZx = false;
+					this.$reqPost('confirmLoadAndUnload',{ 
+					id: this.activeObj.id,
+					productQuantity:this.isNumOk ? this.checkNum : '',
+					discount:this.isClean ? this.checkNum : null,
+					isEmptyCar:this.isEmptyCar,
+					isPretendDischar:this.activeObj.isPretendDischar
+				 },'json').then(res=>{
+					uni.hideLoading();
+					console.log(res,'rez')
+					this.checkNum = '';
+					if(res.code === 1){
+						console.log('瑙﹀彂')
+						this.$u.toast(res.msg || '澶辫触');
+						uni.hideLoading();
+					}else{
+					  this.$u.toast('鎿嶄綔鎴愬姛');
+					}
+					setTimeout(() => {
+						this.getDetailData();
+					}, 500);
+				
+				}).catch((err) => {
+					 this.$u.toast(err.msg || '澶辫触');
+				}).finally(() => {
+				uni.hideLoading();
+					 	
+				})
+				}
+				
+				
+			},
+			//鍒ゆ柇鏄惁鏄� 涓夌鐗规畩绫诲瀷瀵瑰簲寮圭獥
+			judgeTypeFun(name){
+			
+
+			},
+			//鏌ョ湅鏈�杩戜竴娆$殑鍘熺洂閽欓晛
+			todoDetail(){
+				console.log()
+				uni.navigateTo({
+						url: `/pages/loadUnload-page/checkTestDetails/index`
+					})
+
+			}
 
 		},
 		onShow(){
@@ -295,14 +538,103 @@
 						this.$u.toast('鍔犺浇澶辫触')
 					}
 				}).then(() => {
+				
 					this.getUserInfo()
-				})
-		}
+				});
+			
+
+		},
 	}
 </script>
 
 <style lang="scss"
 	scoped>
+::-webkit-scrollbar{
+		  display: none;
+	}
+	.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 +642,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 +692,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 +746,17 @@
 
 			.third {
 				width: 96%;
-				height: 31rpx;
+				height:  auto;
 				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