From 1db172e1eb09be68008659c9f05bf18144df553a Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期一, 04 十一月 2024 18:54:47 +0800
Subject: [PATCH] feat:集装箱更改

---
 pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue |  160 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 118 insertions(+), 42 deletions(-)

diff --git a/pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue b/pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue
index e3f4dfa..1141048 100644
--- a/pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue
+++ b/pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue
@@ -13,6 +13,10 @@
 							<view class="content-container">{{ totalTon}}</view>
 							<view class="content-num">鍙戣繍鍚ㄦ暟</view>
 						</view>
+						<view class="content-text">
+							<view class="content-container">{{ tmNum}}</view>
+							<view class="content-num">鍙戣繍浠舵暟</view>
+						</view>
 					</view>
 				</view>
 			</view>
@@ -49,20 +53,25 @@
                                             cur.clean=cur.clean||0
                                             return prev + cur.clean;
                                         }, 0)).toFixed(2)}}鍚�
+								 {{Number(item.taskCoalList
+                                        .reduce((prev, cur) => {
+                                            cur.productQuantity=cur.productQuantity||0
+                                            return prev + cur.productQuantity;
+                                        }, 0))}}浠�
 							</view>
 						</view>
 						<view class="card-main"
 							v-for="(value, i) in item.taskCoalList"
 							:key="i"
-							@click="faYunDetail(value.id)">
+							@click="faYunDetail(value.id,value)">
 							<view class="first-line">
 								<view class="main-information">
 									<view class="sign">瑁�</view>
 									<view class="filedname">
 										<text
-											v-if="value.orderType == '澶栭攢' || value.orderType == '鍐呴攢' || value.orderType == '杞嚭'">{{ value.deptName || '' }}</text>
+											v-if="value.orderType == '澶栭攢' || value.orderType == '鍐呴攢' || value.orderType == '澶栭攢閫�' || value.orderType == '杞嚭'">{{ value.deptName || '' }}</text>
 										<text
-											v-else-if="value.orderType == '澶栬喘' || value.orderType == '鍐呰喘' || value.orderType == '杞叆'">{{ value.customerName || '' }}</text>
+											v-else-if="value.orderType == '澶栬喘' || value.orderType == '鍐呰喘' || value.orderType == '澶栬喘閫�' || value.orderType == '杞叆'">{{ value.customerName || '' }}</text>
 									</view>
 								</view>
 								<view class="main-divider"></view>
@@ -73,15 +82,15 @@
 									<view class="sign">鍗�</view>
 									<view class="filedname">
 										<text
-											v-if="value.orderType == '澶栭攢' || value.orderType == '鍐呴攢' || value.orderType == '杞嚭'">{{ value.customerName || '' }}</text>
+											v-if="value.orderType == '澶栭攢' || value.orderType == '鍐呴攢' || value.orderType == '澶栭攢閫�' || value.orderType == '杞嚭'">{{ value.customerName || '' }}</text>
 										<text
-											v-else-if="value.orderType == '澶栬喘' || value.orderType == '鍐呰喘' || value.orderType == '杞叆'">{{ value.deptName || '' }}</text>
+											v-else-if="value.orderType == '澶栬喘' || value.orderType == '鍐呰喘' || value.orderType == '澶栬喘閫�' || value.orderType == '杞叆'">{{ value.filedName || '' }}</text>
 									</view>
 								</view>
 							</view>
 							<view class="second-line">
 								<view class="coal-name">
-									<view class="">{{ value.coalName }}</view>
+									<view class="productName">{{ value.productNames || value.productName }}</view>
 									<view class="black-bar"></view>
 									<view class="coal-type"
 										v-if="value.orderType">{{ value.orderType }}</view>
@@ -91,7 +100,7 @@
 							</view>
 							<view class="third-line">
 								<view class="carnum-icon">
-									<image src="https://mx.jzeg.cn:9095/appimg/image/banner/carNO.png"
+									<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/carNO.png"
 										mode="widthFix"></image>
 								</view>
 								<view class="carnum-text">{{ value.carNo || '' }}</view>
@@ -134,7 +143,7 @@
 							</view>
 						</view>
 						<view class="filter-body">
-							<view class="condition-name">鐓ょ</view>
+							<view class="condition-name">浜у搧</view>
 							<view class="filter-name">
 								<view class="filter-button"
 									v-for="(item, index) in coalList"
@@ -175,7 +184,7 @@
 									v-for="(item, index) in customerList"
 									:key="index"
 									@click="filterCondition(2, index, item.condition)">
-									<u-button :text="item.condition"
+									<u-button :text="item.name"
 										:type="item.active ? 'primary' : ''"
 										size="small"></u-button>
 								</view>
@@ -184,9 +193,9 @@
 							</view> -->
 							</view>
 						</view>
-						<view class="filter-body"
+						<!-- <view class="filter-body"
 							v-if="roleType == 1">
-							<view class="condition-name">璐т唬</view>
+							<view class="condition-name">鎵胯繍鍟�</view>
 							<view class="filter-name">
 								<view class="filter-button"
 									v-for="(item, index) in forwarderList"
@@ -195,18 +204,9 @@
 									<u-button :text="item.condition"
 										:type="item.active ? 'primary' : ''"></u-button>
 								</view>
-								<!-- <view class="toggle-button">
-								<u-button
-									:text="forwarderShow < forwarderTotal ? '鏌ョ湅鏇村' : '鏀惰捣'"
-									type="primary"
-									size="small"
-									@click="toggle(3)"
-									v-if="forwarderTotal > 3"
-								></u-button>
-							</view> -->
 							</view>
-						</view>
-						<view class="filter-body"
+						</view> -->
+						<!-- <view class="filter-body"
 							v-if="roleType != 3">
 							<view class="condition-name">杞﹂槦</view>
 							<view class="filter-name">
@@ -218,12 +218,8 @@
 										:type="item.active ? 'primary' : ''"
 										size="small"></u-button>
 								</view>
-								<!-- <view class="toggle-button">
-								<u-button :text="fleetShow < fleetTotal ? '鏌ョ湅鏇村' : '鏀惰捣'" type="primary" size="small" @click="toggle(4)" v-if="fleetTotal > 3"></u-button>
-							</view> -->
-							</view>
-						</view>
-						<view class="filter-body">
+						</view> -->
+						<view class="filter-body" v-if="false">
 							<view class="condition-name">鐭垮満</view>
 							<view class="filter-name">
 								<view class="filter-button"
@@ -330,8 +326,8 @@
 				// 鐐瑰嚮鍙崇澶磋鎯呭脊绐�
 				faYunDetailobj: {},
 				modalShow: false,
-				coalStatus: ['棰嗗彇', '棰勭害', '绛惧埌', '鍏ュ満', '绉扮毊', '绉版瘺', '绂诲満', '鍏ョ鎴�', '鍑虹鎴�', '鍏ョ叅浠�', '鍑虹叅浠�', '鏀剧┖', '浣滃簾', '鍏ュ満鐢宠',
-					'杩涘叆鍦洪櫌', '寮傚父瀹℃牳涓�'
+				coalStatus: ['棰嗗彇', '棰勭害', '绛惧埌', '鍏ュ満', '绉扮毊', '绉版瘺', '绂诲満', '鍏ョ鎴�', '鍑虹鎴�', '鍏ヤ粨搴�', '鍑轰粨搴�', '鏀剧┖', '浣滃簾', '鍏ュ満鐢宠',
+					'杩涘叆鍦洪櫌', '寮傚父瀹℃牳涓�', '杩斿洖鍔犲噺鍚�', '瓒呮椂', '鎵撳嵃涓�', '鎵撳嵃涓�', '濉啓'
 				]
 			};
 		},
@@ -429,6 +425,7 @@
 				this.$reqGet('getTmTaskCoalData', { startTime: this.first, endTime: this.last }).then(res => {
 					this.filterList = this.taskList = res.data;
 					if (this.filterList.length != 0) {
+						let customerTemp;
 						this.totalLength = this.filterList.map(v => v.taskCoalList.length).reduce((x, y) => x + y);
 						this.totalTon = this.filterList.map(v =>
 							v.taskCoalList.reduce((prev, cur) => {
@@ -441,6 +438,20 @@
 							let yy = new BigNumber(y)
 							return xx.plus(yy).toNumber().toFixed(2)
 						}, new BigNumber(0));
+						customerTemp = res.data.map(item=>item.taskCoalList.map(val=>{
+							return {
+								name:val.customerName,
+								active:false
+							}
+						})).flat(Infinity);
+						console.log(customerTemp,'')
+						if(customerTemp.length){
+								let obj = {};
+							this.customerList = customerTemp.reduce(function (item, next) {
+							obj[next.name] ? '' : obj[next.name] = true && item.push(next)
+							return item
+						}, [])
+						}
 					} else {
 						this.totalLength = 0;
 						this.totalTon = 0;
@@ -482,9 +493,9 @@
 					}
 				};
 				let conditionMapping = {
-					coalName: this.coalList.filter(v => v.active == true).map(item => item.condition),
+					productName: this.coalList.filter(v => v.active == true).map(item => item.condition),
 					orderType: this.typeList.filter(v => v.active == true).map(item => item.condition),
-					customerName: this.customerList.filter(v => v.active == true).map(item => item.condition),
+					customerName: this.customerList.filter(v => v.active == true).map(item => item.name), //瀹㈡埛绛涢�夋潯浠跺墠绔嚜宸卞仛 鎵�浠ユ槸name
 					xsUser2Name: this.forwarderList.filter(v => v.active == true).map(item => item.condition),
 					fleetName: this.fleetList.filter(v => v.active == true).map(item => item.condition),
 					filedName: this.filedList.filter(v => v.active == true).map(item => item.condition),
@@ -492,7 +503,7 @@
 				};
 
 				const mapping = {
-					coalName: validateFn('coalName'),
+					productName: validateFn('productName'),
 					orderType: validateFn('orderType'),
 					customerName: validateFn('customerName'),
 					xsUser2Name: validateFn('xsUser2Name'),
@@ -554,12 +565,15 @@
 				this.filedList.forEach(v => {
 					v.active = false;
 				});
+        this.getTmTaskCoalData()
 			},
 			confirm(e) {
 				console.log(e, '鏃ユ湡閫夋嫨');
 				this.first = e.range.before;
 				this.last = e.range.after;
-				this.conditinonShow = false;
+        this.$nextTick(() => {
+          this.$refs.calendar.close()
+        })
 			},
 			opencalendar() {
 				this.$refs.calendar.open();
@@ -633,9 +647,16 @@
 				}
 			},
 			// 璺宠浆鍙戣繍璇︽儏
-			faYunDetail(takeCoalId) {
+			faYunDetail(takeCoalId,value) {
+				console.log(takeCoalId,'tackle')
 				uni.navigateTo({
-					url: `/pages/public-page/faYunstatisticsDetails/faYunstatisticsDetails?id=${takeCoalId}`
+					url: `/pages/public-page/faYunstatisticsDetails/faYunstatisticsDetails?id=${takeCoalId}&orderType=${value.orderType}`,
+					success(res) {
+						console.log(res);
+						},
+						fail(err) {
+						console.log(err,'璺宠浆涓嶈繃鍘�');
+						}
 				});
 			},
 			// 鎵撳紑绛涢�夋潯浠跺脊绐�
@@ -677,7 +698,36 @@
 			},
 			carNoTotal() {
 				return this.carNoList.length;
-			}
+			},
+			//鍙戣繍浠舵暟
+			tmNum(){
+				console.log(this.filterList,'result')
+				if( !this.filterList.length){
+					return  0
+				}else{
+					const result =   this.filterList.map(v =>
+						v.taskCoalList.reduce((prev, cur) => {
+							let  cleanvalue
+							if(!cur.isWeight){
+							  cleanvalue = Number(cur.productQuantity)  || 0
+							}else{
+							  cleanvalue = 0;
+							}
+							return cleanvalue + prev
+						}, 0)
+					);
+					if(result.length){
+					return  result.reduce((x, y) => {
+							let xx = new BigNumber(x)
+							let yy = new BigNumber(y)
+							return xx.plus(yy).toNumber()
+						}, new BigNumber(0));;
+					
+					}else{
+						return 0;
+					}	
+				}
+			},
 		},
 		watch: {
 			dateselect(newV, old) {
@@ -842,7 +892,7 @@
 				padding: 0 vww(5);
 
 				@include flex .date-text {
-					width: 330rpx;
+					width: 360rpx;
 					height: 40rpx;
 					font-size: 28rpx;
 					font-weight: 400;
@@ -905,7 +955,8 @@
 						margin-left: vww(20);
 						padding-bottom: vww(12);
 						position: relative;
-						@include flex flex-direction: column;
+						@include flex;
+						flex-direction: column;
 						align-items: flex-start;
 
 						.first-line {
@@ -928,12 +979,19 @@
 									height: vww(28);
 									line-height: vww(28);
 									text-align: center;
-									background: url('https://mx.jzeg.cn:9095/appimg/image/banner/blueblock.png') no-repeat;
+									background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/blueblock.png') no-repeat;
 									background-size: contain;
 									font-size: 30rpx;
 									font-weight: 400;
 									color: #ffffff;
 									margin-right: vww(20);
+								}
+
+								.filedname {
+									white-space: nowrap;
+									overflow: hidden;
+									text-overflow: ellipsis;
+									flex: 1;
 								}
 							}
 
@@ -961,6 +1019,7 @@
 						.first-extra {
 							@include firstLine;
 							height: vww(32);
+							align-items: center;
 
 							.main-information {
 								width: 100%;
@@ -974,12 +1033,22 @@
 									height: vww(28);
 									line-height: vww(28);
 									text-align: center;
-									background: url('https://mx.jzeg.cn:9095/appimg/image/banner/redblock.png') no-repeat;
+									// display: flex;
+									// justify-content: center;
+									// align-items: center;
+									background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/redblock.png') no-repeat;
 									background-size: contain;
 									font-size: 30rpx;
 									font-weight: 400;
 									color: #ffffff;
 									margin-right: vww(20);
+								}
+
+								.filedname {
+									white-space: nowrap;
+									overflow: hidden;
+									text-overflow: ellipsis;
+									flex: 1;
 								}
 							}
 						}
@@ -995,11 +1064,18 @@
 								flex-grow: 1;
 								height: 30rpx;
 								font-size: 30rpx;
+								width: 50%;
 								font-weight: 300;
 								color: #515151;
 								position: relative;
 								display: flex;
 								align-items: center;
+								.productName{
+									width: 50%;
+										white-space: nowrap;
+									overflow: hidden;
+									text-overflow: ellipsis;
+								}
 
 								.black-bar {
 									width: 2rpx;
@@ -1181,4 +1257,4 @@
 		// 	}
 		// }
 	}
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.1