From 89fd2cf7202c321512c2ea699a3a220a7138ed44 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期四, 09 四月 2026 10:40:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cwxt_master' into cwxt_master

---
 ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue |  213 +++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 167 insertions(+), 46 deletions(-)

diff --git a/ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue b/ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue
index 973645f..c9a840a 100644
--- a/ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue
+++ b/ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue
@@ -173,9 +173,12 @@
     projectName: {
       fixed: 'left',
       label: '椤圭洰鍚嶇О', search: true,
+      minWidth: 150,
+
     },
     dispatchNo: {
       label: '璋冨害鍗曞彿',
+      minWidth: 150,
       search: true,
       rules: [
         {
@@ -187,24 +190,42 @@
     customerName: {
       label: '瀹㈡埛鍚嶇О',
       search: true,
+      minWidth: 220,
+      showOverflowTooltip: true,
       type: 'select',           // 璁剧疆涓轰笅鎷夋绫诲瀷
       dicData: [], // 浣跨敤 selectCustomName 浣滀负鏁版嵁婧�
       disabled: false  // 鏍规嵁闇�瑕佽缃槸鍚︾鐢�
     },
     licensePlateNumber: {
-      label: '杞︾墝', search: true, hide: true,
+      label: '杞︾墝', search: true,
+      minWidth: 120,
+
     },
     vehicleType: {
-      label: '杞﹀瀷', search: true, hide: true,
+      label: '杞﹀瀷', search: true,
+    },
+    // createdTime: {
+    //   label: '涓嬪崟鏃堕棿',
+    //   display: false,
+    //   search: true,
+    //   type: 'date',
+    //   format: 'YYYY-MM-DD',
+    //   searchSpan: 5, minWidth: 120,
+    //   valueFormat: 'YYYY-MM-DD',
+    // },
+    createdTimeArray: {
+      label: '涓嬪崟鏃堕棿',
+      search: true,
+      searchRange: true,
+      type: 'daterange',
+      startPlaceholder: '寮�濮嬫棩鏈�',
+      endPlaceholder: '缁撴潫鏃ユ湡',
+      valueFormat: 'YYYY-MM-DD',
+      hide: true
     },
     createdTime: {
       label: '涓嬪崟鏃堕棿',
-      display: false,
-      search: true,
-      type: 'date',
-      format: 'YYYY-MM-DD',
-      searchSpan: 5, minWidth: 100,
-      valueFormat: 'YYYY-MM-DD',
+      minWidth: 180,
     },
     operationMode: {
       label: '杩愯惀妯″紡',
@@ -239,44 +260,113 @@
 
     carrierName: {
       label: '鎵胯繍鍟�',
+      minWidth: 220,
+      showOverflowTooltip: true,
     },
     departureLocation: {
       label: '鍑哄彂鍦�',
+      minWidth: 220,
+      showOverflowTooltip: true,
     },
     arrivalLocation: {
       label: '鐩殑鍦�',
+      minWidth: 220,
+      showOverflowTooltip: true,
+
     },
-    isCreate: {
-      label: '鏄惁宸插叆璐�', dataType: 'string', search: true,
-      type: 'select',
-      dicUrl: '/system/dict/data/type/sys_whether_type',
-    },
+
     // vehicleId: {
     //   label: '杩愯緭宸ュ叿ID',hide: true,
     // },
 
 
-    // mainDriver: {
-    //   label: '涓婚┚椹跺憳',hide: true,
-    // },
-    // assistantDriver: {
-    //   label: '鍓┚椹跺憳',hide: true,
-    // },
-    // pointNum: {
-    //   label: '鎻愰�佽揣鐐规暟',hide: true,
-    // },
-    // businessContact: {
-    //   label: '涓氬姟鑱旂郴浜�',hide: true,
-    // },
-    // estimatedTotalIncome: {
-    //   label: '棰勪及鎬绘敹鍏�',
-    // },
-    // estimatedTotalCost: {
-    //   label: '棰勪及鎬绘垚鏈�',
-    // },
-    // estimatedProfit: {
-    //   label: '棰勪及鍒╂鼎',
-    // },
+    mainDriver: {
+      label: '涓婚┚椹跺憳',
+      minWidth: 120,
+
+    },
+    assistantDriver: {
+      label: '鍓┚椹跺憳',
+      minWidth: 120,
+
+    },
+    pointNum: {
+      label: '鎻愰�佽揣鐐规暟',
+      minWidth: 100,
+
+    },
+    businessContact: {
+      label: '涓氬姟鑱旂郴浜�',
+      minWidth: 120,
+    },
+    estimatedTotalIncome: {
+      label: '棰勪及鎬绘敹鍏�',
+      minWidth: 120,
+
+    },
+    estimatedTotalCost: {
+      label: '棰勪及鎬绘垚鏈�',
+      minWidth: 120,
+
+    },
+    estimatedProfit: {
+      label: '棰勪及鍒╂鼎',
+      minWidth: 120,
+
+    },
+
+    confirmedTotalIncome: {
+      label: '纭鎬绘敹鍏�',
+      minWidth: 120,
+
+    },
+    confirmedTotalCost: {
+      label: '纭鎬绘垚鏈�',
+      minWidth: 120,
+
+    },
+    isCreate: {
+      label: '鏄惁宸插叆璐�', dataType: 'string',
+      type: 'select',
+      fixed: 'right',
+      minWidth: 120,
+      search: true,
+      dicUrl: '/system/dict/data/type/sys_whether_type',
+    },
+    billName: {
+      label: '鍏宠仈璐﹀崟鍚嶇О',
+      fixed: 'right',
+      minWidth: 120,
+      search: true,
+    },
+    isIncomeMatched: {
+      label: '鏄惁鍖归厤鏀跺叆',
+      type: 'select',
+      dataType: 'string',
+      minWidth: 120,
+
+      dicUrl: '/system/dict/data/type/sys_matching_status',
+    },
+    isCostMatched: {
+      label: '鏄惁鍖归厤鎴愭湰',
+      type: 'select',
+      dataType: 'string',
+      minWidth: 120,
+      dicUrl: '/system/dict/data/type/sys_matching_status',
+    },
+
+
+    relatedBillStatus: {
+      minWidth: 120,
+      label: '鍏宠仈璐﹀崟鐘舵��',
+      dataType: 'string',
+      type: 'select',
+      dicUrl: '/system/dict/data/type/sys_related_status',
+      //    formatter: (row, value) => {
+      // // 鑷畾涔夋牸寮忓寲閫昏緫锛堝鏋滈渶瑕侊級
+      //   return value;
+      //  }
+    },
     // electronicLock: {
     //   label: '鐢靛瓙閿�',
     // },
@@ -372,17 +462,37 @@
       crudRef.value.rowEdit(selectionList.value[0]);
     },
     handleSelectionChangeFunc: (selection: any) => {
-      if (selection.every((item: any) => item.isCreate == '0')) {
-        generateDisabled.value = false;
-      } else {
-        generateDisabled.value = true;
-        if (selection.length > 0) {
-          proxy.$message.warning('璇烽�夋嫨鏈叆璐︾殑璁板綍');
+      if (selection.length > 0) {
+        // 妫�鏌ユ槸鍚︽墍鏈夎褰曢兘鏄湭鍏ヨ处鐘舵��(isCreate == '0')
+        const allNotCreated = selection.every((item: any) => item.isCreate == '0');
+        // 妫�鏌ユ槸鍚︽墍鏈夎褰曠殑瀹㈡埛鍚嶇О閮界浉鍚�
+        const sameCustomer = selection.every((item: any) => item.customerName === selection[0].customerName);
+
+        if (allNotCreated && sameCustomer) {
+          generateDisabled.value = false;
+        } else {
+          generateDisabled.value = true;
+          if (!allNotCreated) {
+            proxy.$message.warning('璇烽�夋嫨鏈叆璐︾殑璁板綍');
+          } else if (!sameCustomer) {
+            proxy.$message.warning('璇烽�夋嫨鐩稿悓瀹㈡埛鍚嶇О鐨勮褰�');
+          }
         }
+      } else {
+        generateDisabled.value = false;
       }
       selectionList.value = selection;
-      selectionList.value = selection;
+    },
+    getBeginListFunc: (params = {}) => {
+      // 鍒涘缓鏂板弬鏁板璞�
+      let newParams = { ...params };
+
+      newParams = proxy.addDateRangeNew(newParams, newParams?.createdTimeArray, 'createdTime') || [];
+      delete newParams.createdTimeArray;
+      queryParams.value = newParams;
+      return newParams;
     }
+
   })
 const dialog = reactive({
   visible: false,
@@ -460,16 +570,17 @@
 const dispatchNo = ref('');
 const handleClick = (tab: TabsPaneContext, event: Event) => {
   if (tab.props.name == 'first') {
-    getListVable(dispatchNo.value, 0);
-  } else if (tab.props.name == 'second') {
     getListVable(dispatchNo.value, 1);
+  } else if (tab.props.name == 'second') {
+    getListVable(dispatchNo.value, 0);
   }
 }
 
 const handleFy = (row: any) => {
   dispatchNo.value = row.dispatchNo;
+  dialog.title = '璐圭敤鏄庣粏';
   if (activeName.value == 'first') {
-    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 0 }).then((res) => {
+    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 1, isConfirmed: 1 }).then((res) => {
       if (res.code === 200) {
         dialog.detail = true;
         tableDataList.value = res.rows || [];
@@ -477,7 +588,7 @@
     })
   } else if (activeName.value == 'second') {
     // 杩欓噷鍙互娣诲姞鏌ヨ鏀跺叆鐩稿叧鐨勯�昏緫
-    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 1 }).then((res) => {
+    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 0, isConfirmed: 1 }).then((res) => {
       if (res.code === 200) {
         dialog.detail = true;
         tableDataList.value = res.rows || [];
@@ -486,7 +597,7 @@
   }
 }
 const getListVable = (dispatchNo, feeType) => {
-  listEstimatedReceivable({ dispatchNo: dispatchNo, feeType: feeType }).then((res) => {
+  listEstimatedReceivable({ dispatchNo: dispatchNo, feeType: feeType, isConfirmed: 1 }).then((res) => {
     if (res.code === 200) {
       tableDataList.value = res.rows || [];
     }
@@ -524,3 +635,13 @@
   return sums;
 }
 </script>
+
+<style>
+:deep(.avue-crud__table) {
+  overflow-y: auto;
+}
+
+:deep(.el-scrollbar__bar.is-horizontal) {
+  pointer-events: auto;
+}
+</style>
\ No newline at end of file

--
Gitblit v1.8.0