From e1869c67a48da088650b0a1238ff718e5fc4138c Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 29 九月 2026 09:15:21 +0800
Subject: [PATCH] refactor(data): 优化参数维护和报表数据显示格式

---
 src/views/procurementManagement/procurementLedger/index.vue   |   62 +++++---
 src/views/salesManagement/deliveryLedger/index.vue            |   92 ------------
 src/views/reportAnalysis/reportManagement/index.vue           |   16 +-
 src/views/basicData/parameterMaintenance/index.vue            |   27 ---
 src/views/procurementManagement/purchaseReturnOrder/New.vue   |    6 
 src/views/procurementManagement/purchaseReturnOrder/index.vue |   46 +++---
 src/views/salesManagement/salesLedger/index.vue               |   70 ---------
 src/views/salesManagement/salesQuotation/index.vue            |   36 ----
 src/views/safeProduction/hazardSourceLedger/index.vue         |   16 --
 src/views/safeProduction/dangerInvestigation/index.vue        |    7 -
 10 files changed, 89 insertions(+), 289 deletions(-)

diff --git a/src/views/basicData/parameterMaintenance/index.vue b/src/views/basicData/parameterMaintenance/index.vue
index 38ddd4f..230b0d7 100644
--- a/src/views/basicData/parameterMaintenance/index.vue
+++ b/src/views/basicData/parameterMaintenance/index.vue
@@ -95,25 +95,8 @@
           <el-input v-model="formData.unit"
                     placeholder="璇疯緭鍏ュ崟浣�" />
         </el-form-item>
-        <el-form-item label="鍙栧�兼牸寮�"
-                      v-if="formData.paramType == 1 || formData.paramType == 2"
-                      prop="paramFormat">
-          <el-input v-model="formData.paramFormat"
-                    placeholder="璇疯緭鍏ュ彇鍊兼牸寮�" />
-          <!-- <el-select v-model="formData.paramFormat"
-                     placeholder="璇烽�夋嫨鍙栧�兼ā寮�">
-            <el-option label="#.00000"
-                       value="#.00000" />
-            <el-option label="#.0000"
-                       value="#.0000" />
-            <el-option label="#.000"
-                       value="#.000" />
-            <el-option label="#.00"
-                       value="#.00" />
-          </el-select> -->
-        </el-form-item>
         <el-form-item label="涓嬫媺瀛楀吀"
-                      v-else-if="formData.paramType == 3"
+                      v-if="formData.paramType == 3"
                       prop="paramFormat">
           <el-select v-model="formData.paramFormat"
                      placeholder="璇烽�夋嫨鍙栧�兼ā寮�">
@@ -281,10 +264,6 @@
       prop: "unit",
     },
     {
-      label: "鍙栧�兼牸寮�",
-      prop: "paramFormat",
-    },
-    {
       label: "鏄惁蹇呭~",
       prop: "isRequired",
       dataType: "tag",
@@ -397,9 +376,7 @@
   // });
   // const isProductTypeEdit = ref(false);
   const handleParamTypeChange = () => {
-    if (formData.paramType === 1) {
-      formData.paramFormat = "#.00000";
-    } else if (formData.paramType === 4) {
+    if (formData.paramType === 4) {
       formData.paramFormat = "YYYY-MM-DD HH:mm:ss";
     } else {
       formData.paramFormat = "";
diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index 7e1576b..e1fba68 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -104,18 +104,21 @@
                                type="index"
                                width="60" />
               <el-table-column label="浜у搧澶х被"
-                               prop="productCategory" />
+                               prop="productCategory"
+                               :formatter="emptySlash" />
               <el-table-column label="瑙勬牸鍨嬪彿"
-                               prop="specificationModel" />
+                               prop="specificationModel"
+                               :formatter="emptySlash" />
               <el-table-column label="鍗曚綅"
-                               prop="unit" />
+                               prop="unit"
+                               :formatter="emptySlash" />
               <el-table-column label="鍏ュ簱瀹℃牳鐘舵��"
                                prop="stockInApprovalStatus"
                                width="120">
                 <template #default="scope">
                   <el-tag :type="getStockInApprovalStatusType(scope.row.stockInApprovalStatus)"
                           size="small">
-                    {{ scope.row.stockInApprovalStatus || '--' }}
+                    {{ scope.row.stockInApprovalStatus || '/' }}
                   </el-tag>
                 </template>
               </el-table-column>
@@ -148,19 +151,23 @@
         <el-table-column label="閲囪喘鍚堝悓鍙�"
                          prop="purchaseContractNumber"
                          width="160"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="閿�鍞悎鍚屽彿"
                          prop="salesContractNo"
                          width="160"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="渚涘簲鍟嗗悕绉�"
                          prop="supplierName"
                          width="160"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="椤圭洰鍚嶇О"
                          prop="projectName"
                          width="320"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="瀹℃壒鐘舵��"
                          prop="approvalStatus"
                          width="100"
@@ -168,7 +175,7 @@
           <template #default="scope">
             <el-tag :type="getApprovalStatusType(scope.row.approvalStatus)"
                     size="small">
-              {{ approvalStatusText[scope.row.approvalStatus] || '鏈煡鐘舵��' }}
+              {{ approvalStatusText[scope.row.approvalStatus] || '/' }}
             </el-tag>
           </template>
         </el-table-column>
@@ -179,18 +186,20 @@
           <template #default="scope">
             <el-tag :type="getStockInStatusType(scope.row.stockInStatus)"
                     size="small">
-              {{ scope.row.stockInStatus || '--' }}
+              {{ scope.row.stockInStatus || '/' }}
             </el-tag>
           </template>
         </el-table-column>
         <el-table-column label="绛捐鏃ユ湡"
                          prop="executionDate"
                          width="100"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="浠樻鏂瑰紡"
                          width="100"
                          prop="paymentMethod"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="鍚堝悓閲戦(鍏�)"
                          prop="contractAmount"
                          width="200"
@@ -204,15 +213,18 @@
         <el-table-column label="褰曞叆浜�"
                          prop="recorderName"
                          width="120"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="褰曞叆鏃ユ湡"
                          prop="entryDate"
                          width="100"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column label="澶囨敞"
                          prop="remarks"
                          width="200"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip
+                         :formatter="emptySlash" />
         <el-table-column fixed="right"
                          label="鎿嶄綔"
                          width="120"
@@ -411,12 +423,15 @@
                            type="index"
                            width="60" />
           <el-table-column label="浜у搧澶х被"
-                           prop="productCategory" />
+                           prop="productCategory"
+                           :formatter="emptySlash" />
           <el-table-column label="瑙勬牸鍨嬪彿"
-                           prop="specificationModel" />
+                           prop="specificationModel"
+                           :formatter="emptySlash" />
           <el-table-column label="鍗曚綅"
                            prop="unit"
-                           width="70" />
+                           width="70"
+                           :formatter="emptySlash" />
           <el-table-column label="鏁伴噺"
                            prop="quantity"
                            width="70" />
@@ -454,7 +469,7 @@
             <template #default="scope">
               <el-tag :type="getStockInApprovalStatusType(scope.row.stockInApprovalStatus)"
                       size="small">
-                {{ scope.row.stockInApprovalStatus || '--' }}
+                {{ scope.row.stockInApprovalStatus || '/' }}
               </el-tag>
             </template>
           </el-table-column>
@@ -1088,6 +1103,11 @@
   const formattedNumber = (row, column, cellValue) => {
     return parseFloat(cellValue).toFixed(2);
   };
+  // 绌哄瓧娈电粺涓�鏄剧ず "/"
+  const emptySlash = (row, column, cellValue) =>
+    cellValue === null || cellValue === undefined || cellValue === ""
+      ? "/"
+      : cellValue;
   // 鏌ヨ鍒楄〃
   /** 鎼滅储鎸夐挳鎿嶄綔 */
   const handleQuery = () => {
@@ -1275,10 +1295,10 @@
   };
   const formatMoney = value => {
     if (value === null || value === undefined || value === "") {
-      return "--";
+      return "/";
     }
     const num = Number(value);
-    return Number.isFinite(num) ? num.toFixed(2) : "--";
+    return Number.isFinite(num) ? num.toFixed(2) : "/";
   };
   // 瀛愯〃鍚堣鏂规硶
   const summarizeProTable = param => {
diff --git a/src/views/procurementManagement/purchaseReturnOrder/New.vue b/src/views/procurementManagement/purchaseReturnOrder/New.vue
index 186a552..2d1faa4 100644
--- a/src/views/procurementManagement/purchaseReturnOrder/New.vue
+++ b/src/views/procurementManagement/purchaseReturnOrder/New.vue
@@ -358,7 +358,7 @@
                                prop="taxInclusiveTotalPrice"
                                width="120">
                 <template #default="scope">
-                  {{ formatAmount(getReturnTotal(scope.row)) || '--' }}
+                  {{ formatAmount(getReturnTotal(scope.row)) || '/' }}
                 </template>
               </el-table-column>
               <el-table-column label="鏄惁璐ㄦ"
@@ -593,11 +593,11 @@
 
 const formatAmount = (value) => {
   if (value === null || value === undefined || value === '') {
-    return '--'
+    return '/'
   }
   const num = Number(value)
   if (Number.isNaN(num)) {
-    return '--'
+    return '/'
   }
   return num.toFixed(2)
 }
diff --git a/src/views/procurementManagement/purchaseReturnOrder/index.vue b/src/views/procurementManagement/purchaseReturnOrder/index.vue
index 2b73253..388fac8 100644
--- a/src/views/procurementManagement/purchaseReturnOrder/index.vue
+++ b/src/views/procurementManagement/purchaseReturnOrder/index.vue
@@ -71,63 +71,63 @@
       <div v-loading="detailLoading">
         <el-descriptions :column="3" border>
           <el-descriptions-item label="閫�鏂欏崟鍙�">{{
-            detailData.no || "--"
+            detailData.no || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="閫�璐ф柟寮�">{{
             getReturnTypeLabel(detailData.returnType)
           }}</el-descriptions-item>
           <el-descriptions-item label="渚涘簲鍟嗗悕绉�">{{
-            detailData.supplierName || "--"
+            detailData.supplierName || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="椤圭洰闃舵">{{
             getProjectPhaseLabel(detailData.projectPhase)
           }}</el-descriptions-item>
           <el-descriptions-item label="鍏宠仈鐨勯噰璐鍗曞彿">{{
-            detailData.purchaseContractNumber || "--"
+            detailData.purchaseContractNumber || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鍒朵綔鏃ユ湡">{{
-            detailData.preparedAt || "--"
+            detailData.preparedAt || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鍒跺崟浜�">{{
-            detailData.preparedUserName || "--"
+            detailData.preparedUserName || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="閫�鏂欎汉">{{
-            detailData.returnUserName || "--"
+            detailData.returnUserName || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鍙戣揣绫诲瀷">{{
             getShippingTypeLabel(detailData.shippingType)
           }}</el-descriptions-item>
           <el-descriptions-item v-if="String(detailData.shippingType) === '1'" label="鍙戣揣杞︾墝鍙�">{{
-            detailData.truckPlateNo || "--"
+            detailData.truckPlateNo || '/'
           }}</el-descriptions-item>
           <template v-else-if="String(detailData.shippingType) === '2'">
             <el-descriptions-item label="蹇�掑叕鍙�">{{
-              detailData.expressCompany || "--"
+              detailData.expressCompany || '/'
             }}</el-descriptions-item>
             <el-descriptions-item label="蹇�掑崟鍙�">{{
-              detailData.expressNo || "--"
+              detailData.expressNo || '/'
             }}</el-descriptions-item>
           </template>
           <el-descriptions-item label="鏁村崟鎶樻墸棰�">{{
             formatAmount(detailData.totalDiscountAmount)
           }}</el-descriptions-item>
           <el-descriptions-item label="鏁村崟鎶樻墸鐜�">{{
-            detailData.totalDiscountRate ?? "--"
+            detailData.totalDiscountRate ?? '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鎴愪氦閲戦">{{
             formatAmount(detailData.totalAmount)
           }}</el-descriptions-item>
           <el-descriptions-item label="鍒涘缓浜�">{{
-            detailData.createUserName || "--"
+            detailData.createUserName || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鍒涘缓鏃堕棿">{{
-            detailData.createTime || "--"
+            detailData.createTime || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="鏈�杩戞洿鏂版椂闂�">{{
-            detailData.updateTime || "--"
+            detailData.updateTime || '/'
           }}</el-descriptions-item>
           <el-descriptions-item label="澶囨敞" :span="3">{{
-            detailData.remark || "--"
+            detailData.remark || '/'
           }}</el-descriptions-item>
         </el-descriptions>
 
@@ -274,7 +274,7 @@
     label: "閫�璐ф柟寮�",
     prop: "returnType",
     formatData: (val) =>
-      returnTypeOptions.find((item) => item.value === val)?.label || "--",
+      returnTypeOptions.find((item) => item.value === val)?.label || '/',
   },
   {
     label: "渚涘簲鍟嗗悕绉�",
@@ -287,7 +287,7 @@
     width: 100,
     formatData: (val) =>
       projectPhaseOptions.find((item) => String(item.value) === String(val))
-        ?.label || "--",
+        ?.label || '/',
   },
   {
     label: "鍏宠仈鐨勯噰璐鍗曞彿",
@@ -454,9 +454,9 @@
       tableLoading.value = false;
       tableData.value = (res.data.records || []).map((row) => ({
         ...row,
-        truckPlateDisplay: String(row?.shippingType) === "1" ? (row?.truckPlateNo || "--") : "--",
-        expressCompanyDisplay: String(row?.shippingType) === "2" ? (row?.expressCompany || "--") : "--",
-        expressNoDisplay: String(row?.shippingType) === "2" ? (row?.expressNo || "--") : "--",
+        truckPlateDisplay: String(row?.shippingType) === "1" ? (row?.truckPlateNo || '/') : '/',
+        expressCompanyDisplay: String(row?.shippingType) === "2" ? (row?.expressCompany || '/') : '/',
+        expressNoDisplay: String(row?.shippingType) === "2" ? (row?.expressNo || '/') : '/',
       }));
       page.total = res.data.total;
     })
@@ -474,14 +474,14 @@
 const getReturnTypeLabel = (value) => {
   return (
     returnTypeOptions.find((item) => String(item.value) === String(value))
-      ?.label || "--"
+      ?.label || '/'
   );
 };
 
 const getProjectPhaseLabel = (value) => {
   return (
     projectPhaseOptions.find((item) => String(item.value) === String(value))
-      ?.label || "--"
+      ?.label || '/'
   );
 };
 
@@ -490,12 +490,12 @@
     1: "璐ц溅",
     2: "蹇��",
   };
-  return shippingTypeMap[String(value)] || shippingTypeMap[value] || "--";
+  return shippingTypeMap[String(value)] || shippingTypeMap[value] || '/';
 };
 
 const formatAmount = (value) => {
   if (value === null || value === undefined || value === "") {
-    return "--";
+    return '/';
   }
   const num = Number(value);
   if (Number.isNaN(num)) {
diff --git a/src/views/reportAnalysis/reportManagement/index.vue b/src/views/reportAnalysis/reportManagement/index.vue
index cd8ddd5..d0296ab 100644
--- a/src/views/reportAnalysis/reportManagement/index.vue
+++ b/src/views/reportAnalysis/reportManagement/index.vue
@@ -27,12 +27,12 @@
                   <div class="typeNum-right-top">
                     <div class="typeNum-right-top-name">鎬绘暟閲�</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(0, 'totalCount') }} <span
-                        class="unit">涓�</span></div>
+                        class="unit">鍚�</span></div>
                   </div>
                   <div class="typeNum-right-bottom">
                     <div class="typeNum-right-top-name">宸插畬鎴愭暟</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(0, 'completedCount') }} <span
-                        class="unit">涓�</span>
+                        class="unit">鍚�</span>
                     </div>
                   </div>
                 </div>
@@ -51,12 +51,12 @@
                   <div class="typeNum-right-top">
                     <div class="typeNum-right-top-name">鎬绘暟閲�</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(1, 'totalCount') }} <span
-                        class="unit">涓�</span></div>
+                        class="unit">鍚�</span></div>
                   </div>
                   <div class="typeNum-right-bottom">
                     <div class="typeNum-right-top-name">宸插畬鎴愭暟</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(1, 'completedCount') }} <span
-                        class="unit">涓�</span>
+                        class="unit">鍚�</span>
                     </div>
                   </div>
                 </div>
@@ -75,12 +75,12 @@
                   <div class="typeNum-right-top">
                     <div class="typeNum-right-top-name">鎬绘暟閲�</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(2, 'totalCount') }} <span
-                        class="unit">涓�</span></div>
+                        class="unit">鍚�</span></div>
                   </div>
                   <div class="typeNum-right-bottom">
                     <div class="typeNum-right-top-name">宸插畬鎴愭暟</div>
                     <div class="typeNum-right-top-text">{{ getInspectStatValue(2, 'completedCount') }} <span
-                        class="unit">涓�</span>
+                        class="unit">鍚�</span>
                     </div>
                   </div>
                 </div>
@@ -315,7 +315,7 @@
   const stat = passRateStatisticsData.value.find(item => item.modelType === type);
   if (stat) {
     if (field === 'completionRate' || field === 'passRate') {
-      return stat[field] ? Number(stat[field]).toFixed(0) + '%' : '0%';
+      return stat[field] ? Number(stat[field]).toFixed(2) + '%' : '0%';
     }
     return stat[field];
   }
@@ -552,7 +552,7 @@
       },
       yAxis: {
         type: "value",
-        name: "鏁�(涓�)",
+        name: "鏁�(鍚�)",
       },
       series: [
         {
diff --git a/src/views/safeProduction/dangerInvestigation/index.vue b/src/views/safeProduction/dangerInvestigation/index.vue
index e9ada57..92436b1 100644
--- a/src/views/safeProduction/dangerInvestigation/index.vue
+++ b/src/views/safeProduction/dangerInvestigation/index.vue
@@ -80,10 +80,6 @@
                          prop="rectifyUserName"
                          width="120"
                          show-overflow-tooltip />
-        <el-table-column label="鏁存敼璐d换浜鸿仈绯绘柟寮�"
-                         prop="rectifyUserMobile"
-                         width="120"
-                         show-overflow-tooltip />
         <el-table-column label="鏁存敼鍏蜂綋鎺柦"
                          prop="rectifyMeasures"
                          width="120"
@@ -304,9 +300,6 @@
         </el-descriptions-item>
         <el-descriptions-item label="鏁存敼璐d换浜�">
           <span class="detail-title">{{ form.rectifyUserName }}</span>
-        </el-descriptions-item>
-        <el-descriptions-item label="鏁存敼璐d换浜鸿仈绯绘柟寮�">
-          <span class="detail-title">{{ form.rectifyUserMobile }}</span>
         </el-descriptions-item>
         <el-descriptions-item label="鏁存敼瀹屾垚鏈熼檺">
           <span class="detail-title">{{ dateOnly(form.rectifyTime) }}</span>
diff --git a/src/views/safeProduction/hazardSourceLedger/index.vue b/src/views/safeProduction/hazardSourceLedger/index.vue
index 416202e..e1e9af3 100644
--- a/src/views/safeProduction/hazardSourceLedger/index.vue
+++ b/src/views/safeProduction/hazardSourceLedger/index.vue
@@ -125,14 +125,6 @@
               </el-select>
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="璐d换浜鸿仈绯荤數璇�"
-                          prop="principalMobile">
-              <el-input v-model="form.principalMobile"
-                        readonly
-                        placeholder="鑷姩甯﹀嚭" />
-            </el-form-item>
-          </el-col>
         </el-row>
         <el-row :gutter="20">
           <el-col :span="12">
@@ -196,9 +188,6 @@
           </el-descriptions-item>
           <el-descriptions-item label="绠℃帶璐d换浜�">
             {{ currentKnowledge.principalUserId }}
-          </el-descriptions-item>
-          <el-descriptions-item label="璐d换浜鸿仈绯荤數璇�">
-            {{ currentKnowledge.principalMobile }}
           </el-descriptions-item>
           <el-descriptions-item label="椋庨櫓绛夌骇">
             <el-tag :type="getTypeTagType(currentKnowledge.riskLevel)">
@@ -372,11 +361,6 @@
     {
       label: "绠℃帶璐d换浜�",
       prop: "principalUser",
-      showOverflowTooltip: true,
-    },
-    {
-      label: "璐d换浜鸿仈绯荤數璇�",
-      prop: "principalMobile",
       showOverflowTooltip: true,
     },
     {
diff --git a/src/views/salesManagement/deliveryLedger/index.vue b/src/views/salesManagement/deliveryLedger/index.vue
index af41f00..90ca018 100644
--- a/src/views/salesManagement/deliveryLedger/index.vue
+++ b/src/views/salesManagement/deliveryLedger/index.vue
@@ -22,16 +22,6 @@
             @change="handleQuery"
           />
         </el-form-item>
-        <el-form-item label="蹇�掑崟鍙凤細">
-          <el-input
-            v-model="searchForm.expressNumber"
-            placeholder="璇疯緭鍏�"
-            clearable
-            prefix-icon="Search"
-            style="width: 200px"
-            @change="handleQuery"
-          />
-        </el-form-item>
         <el-form-item label="椤圭洰鍚嶇О锛�" prop="projectId">
           <el-select
             v-model="searchForm.projectId"
@@ -133,16 +123,6 @@
           show-overflow-tooltip
         />
         <el-table-column
-          label="蹇�掑叕鍙�"
-          prop="expressCompany"
-          show-overflow-tooltip
-        />
-        <el-table-column
-          label="蹇�掑崟鍙�"
-          prop="expressNumber"
-          show-overflow-tooltip
-        />
-        <el-table-column
           label="瀹℃牳鐘舵��"
           prop="status"
           align="center"
@@ -225,7 +205,6 @@
                 @change="handleShippingTypeChange"
               >
                 <el-option label="璐ц溅" value="璐ц溅" />
-                <el-option label="蹇��" value="蹇��" />
               </el-select>
             </el-form-item>
           </el-col>
@@ -246,31 +225,11 @@
           </el-col>
         </el-row>
         <el-row :gutter="30">
-          <el-col :span="24" v-if="form.type === '璐ц溅'">
+          <el-col :span="24">
             <el-form-item label="鍙戣揣杞︾墝鍙凤細" prop="shippingCarNumber">
               <el-input
                 v-model="form.shippingCarNumber"
                 placeholder="璇疯緭鍏ュ彂璐ц溅鐗屽彿"
-                clearable
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" v-else>
-            <el-form-item label="蹇�掑叕鍙革細" prop="expressCompany">
-              <el-input
-                v-model="form.expressCompany"
-                placeholder="璇疯緭鍏ュ揩閫掑叕鍙�"
-                clearable
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row :gutter="30" v-if="form.type === '蹇��'">
-          <el-col :span="24">
-            <el-form-item label="蹇�掑崟鍙凤細" prop="expressNumber">
-              <el-input
-                v-model="form.expressNumber"
-                placeholder="璇疯緭鍏ュ揩閫掑崟鍙�"
                 clearable
               />
             </el-form-item>
@@ -377,12 +336,6 @@
           }}</el-descriptions-item>
           <el-descriptions-item label="鍙戣揣杞︾墝鍙�">{{
             detailRow.shippingCarNumber || "--"
-          }}</el-descriptions-item>
-          <el-descriptions-item label="蹇�掑叕鍙�">{{
-            detailRow.expressCompany || "--"
-          }}</el-descriptions-item>
-          <el-descriptions-item label="蹇�掑崟鍙�" :span="2">{{
-            detailRow.expressNumber || "--"
           }}</el-descriptions-item>
           <el-descriptions-item label="鍑哄簱鍗曞彿" :span="2">{{
             detailRow.outboundBatches || "--"
@@ -516,7 +469,6 @@
   searchForm: {
     salesContractNo: undefined,
     shippingCarNumber: undefined,
-    expressNumber: undefined,
     projectId: undefined,
     shippingDateRange: []
   },
@@ -526,11 +478,9 @@
     customerName: "",
     specificationModel: "",
     productName: "",
-    type: "璐ц溅", // 璐ц溅, 蹇��
+    type: "璐ц溅",
     shippingDate: "",
     shippingCarNumber: "",
-    expressCompany: "",
-    expressNumber: "", // 蹇�掑崟鍙�
   },
   rules: {
     salesContractNo: [
@@ -547,13 +497,6 @@
       {
         validator: (_, value, callback) =>
           validateShippingCarNumber(value, callback),
-        trigger: "blur",
-      },
-    ],
-    expressCompany: [
-      {
-        validator: (_, value, callback) =>
-          validateExpressCompany(value, callback),
         trigger: "blur",
       },
     ],
@@ -625,8 +568,6 @@
       type: row.type || "璐ц溅",
       shippingDate: row.shippingDate || getCurrentDate(),
       shippingCarNumber: row.shippingCarNumber ?? "",
-      expressCompany: row.expressCompany ?? "",
-      expressNumber: row.expressNumber ?? "",
       shippingDocument: row.shippingDocument ?? "",
       isReconciled: row.isReconciled ?? 0,
       statementArchivingStatus: row.statementArchivingStatus ?? "",
@@ -738,12 +679,7 @@
         id: form.value.id,
         type: form.value.type,
         shippingDate: form.value.shippingDate,
-        shippingCarNumber:
-          form.value.type === "璐ц溅" ? form.value.shippingCarNumber : "",
-        expressCompany:
-          form.value.type === "蹇��" ? form.value.expressCompany : "",
-        expressNumber:
-          form.value.type === "蹇��" ? form.value.expressNumber : "",
+        shippingCarNumber: form.value.shippingCarNumber,
         storageBlobDTOs: deliveryFileList.value || [],
       };
       deductStock(payload).then((res) => {
@@ -840,17 +776,9 @@
     });
 };
 
-// 鍙戣揣绫诲瀷鏍¢獙锛氳揣杞︽椂瑕佹眰杞︾墝锛屽揩閫掓椂瑕佹眰蹇�掑叕鍙�
+// 鍙戣揣杞︾墝鍙锋牎楠�
 const validateShippingCarNumber = (value, callback) => {
-  if (form.value.type === "璐ц溅") {
-    if (!value) return callback(new Error("璇疯緭鍏ュ彂璐ц溅鐗屽彿"));
-  }
-  callback();
-};
-const validateExpressCompany = (value, callback) => {
-  if (form.value.type === "蹇��") {
-    if (!value) return callback(new Error("璇疯緭鍏ュ揩閫掑叕鍙�"));
-  }
+  if (!value) return callback(new Error("璇疯緭鍏ュ彂璐ц溅鐗屽彿"));
   callback();
 };
 
@@ -925,15 +853,7 @@
   }
 }
 
-// 鍙戣揣绫诲瀷鍒囨崲鏃舵竻绌哄搴斿瓧娈�
-const handleShippingTypeChange = (val) => {
-  if (val === "璐ц溅") {
-    form.value.expressCompany = "";
-    form.value.expressNumber = "";
-  } else {
-    form.value.shippingCarNumber = "";
-  }
-};
+const handleShippingTypeChange = () => {};
 
 // 鑾峰彇瀹℃牳鐘舵�佹枃鏈�
 const getApprovalStatusText = (status) => {
diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index c8940e5..132ee03 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -122,16 +122,6 @@
                   <span>{{ scope.row.pendingApprovalQuantity || 0 }}</span>
                 </template>
               </el-table-column>
-              <el-table-column
-                label="蹇�掑叕鍙�"
-                prop="expressCompany"
-                show-overflow-tooltip
-              />
-              <el-table-column
-                label="蹇�掑崟鍙�"
-                prop="expressNumber"
-                show-overflow-tooltip
-              />
               <el-table-column label="鍙戣揣杞︾墝" minWidth="100px" align="center">
                 <template #default="scope">
                   <div>
@@ -1227,7 +1217,6 @@
                 @change="handleDeliveryTypeChange"
               >
                 <el-option label="璐ц溅" value="璐ц溅" />
-                <el-option label="蹇��" value="蹇��" />
               </el-select>
             </el-form-item>
           </el-col>
@@ -1241,31 +1230,11 @@
           </el-col>
         </el-row>
         <el-row :gutter="30">
-          <el-col :span="24" v-if="deliveryForm.type === '璐ц溅'">
+          <el-col :span="24">
             <el-form-item label="鍙戣揣杞︾墝鍙凤細" prop="shippingCarNumber">
               <el-input
                 v-model="deliveryForm.shippingCarNumber"
                 placeholder="璇疯緭鍏ュ彂璐ц溅鐗屽彿"
-                clearable
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" v-else>
-            <el-form-item label="蹇�掑叕鍙革細" prop="expressCompany">
-              <el-input
-                v-model="deliveryForm.expressCompany"
-                placeholder="璇疯緭鍏ュ揩閫掑叕鍙�"
-                clearable
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row :gutter="30" v-if="deliveryForm.type === '蹇��'">
-          <el-col :span="24">
-            <el-form-item label="蹇�掑崟鍙凤細" prop="expressNumber">
-              <el-input
-                v-model="deliveryForm.expressNumber"
-                placeholder="璇疯緭鍏ュ揩閫掑崟鍙�"
                 clearable
               />
             </el-form-item>
@@ -1698,18 +1667,10 @@
   }
   callback();
 };
-const validateDeliveryExpressCompany = (_rule, value, callback) => {
-  if (deliveryForm.value.type === "蹇��" && !value) {
-    return callback(new Error("璇疯緭鍏ュ揩閫掑叕鍙�"));
-  }
-  callback();
-};
 const deliveryFormData = reactive({
   deliveryForm: {
     shippingCarNumber: "",
-    expressCompany: "",
-    expressNumber: "",
-    type: "璐ц溅", // 璐ц溅, 蹇��
+    type: "璐ц溅",
     shippingDocument: "",
     isReconciled: 0,
     statementArchivingStatus: "",
@@ -1720,9 +1681,6 @@
   deliveryRules: {
     shippingCarNumber: [
       { validator: validateDeliveryShippingCarNumber, trigger: "blur" },
-    ],
-    expressCompany: [
-      { validator: validateDeliveryExpressCompany, trigger: "blur" },
     ],
     type: [{ required: true, message: "璇烽�夋嫨鍙戣揣绫诲瀷", trigger: "change" }],
   },
@@ -3170,8 +3128,6 @@
   );
   deliveryForm.value = {
     shippingCarNumber: "",
-    expressCompany: "",
-    expressNumber: "",
     type: "璐ц溅",
     batchNo: [],
     batchNoList,
@@ -3214,18 +3170,7 @@
         salesLedgerId: salesLedgerId,
         salesLedgerProductId: currentDeliveryRow.value.id,
         type: deliveryForm.value.type,
-        shippingCarNumber:
-          deliveryForm.value.type === "璐ц溅"
-            ? deliveryForm.value.shippingCarNumber
-            : "",
-        expressCompany:
-          deliveryForm.value.type === "蹇��"
-            ? deliveryForm.value.expressCompany
-            : "",
-        expressNumber:
-          deliveryForm.value.type === "蹇��"
-            ? deliveryForm.value.expressNumber
-            : "",
+        shippingCarNumber: deliveryForm.value.shippingCarNumber,
         storageBlobDTOs: deliveryFileList.value || [],
         batchNo: deliveryForm.value.batchNo,
         batchNoDetailList: selectedBatchRows.map((item) => ({
@@ -3266,14 +3211,7 @@
 };
 
 // 鍏抽棴鍙戣揣寮规
-const handleDeliveryTypeChange = (val) => {
-  if (val === "璐ц溅") {
-    deliveryForm.value.expressCompany = "";
-    deliveryForm.value.expressNumber = "";
-  } else {
-    deliveryForm.value.shippingCarNumber = "";
-  }
-};
+const handleDeliveryTypeChange = () => {};
 
 const closeDeliveryDia = () => {
   proxy.resetForm("deliveryFormRef");
diff --git a/src/views/salesManagement/salesQuotation/index.vue b/src/views/salesManagement/salesQuotation/index.vue
index edd0102..a87d34d 100644
--- a/src/views/salesManagement/salesQuotation/index.vue
+++ b/src/views/salesManagement/salesQuotation/index.vue
@@ -33,11 +33,6 @@
 <!--          </el-select>-->
 <!--        </el-col>-->
         <el-col :span="6">
-          <el-select v-model="searchForm.projectId" placeholder="璇烽�夋嫨椤圭洰鍚嶇О" clearable filterable>
-            <el-option v-for="item in projectOptions" :key="item.id" :label="item.no + ' - ' + item.title" :value="item.id" />
-          </el-select>
-        </el-col>
-        <el-col :span="6">
           <el-button type="primary" @click="handleSearch">鎼滅储</el-button>
           <el-button @click="resetSearch">閲嶇疆</el-button>
           <el-button style="float: right;" type="primary" @click="handleAdd">
@@ -57,7 +52,6 @@
       >
 				<el-table-column align="center" label="搴忓彿" type="index" width="60" />
         <el-table-column prop="quotationNo" label="鎶ヤ环鍗曞彿" />
-        <el-table-column prop="projectName" label="椤圭洰鍚嶇О" />
         <el-table-column prop="customer" label="瀹㈡埛鍚嶇О" />
         <el-table-column prop="salesperson" label="涓氬姟鍛�" width="100" />
         <el-table-column prop="quotationDate" label="鎶ヤ环鏃ユ湡" width="120" />
@@ -155,13 +149,6 @@
               <el-col :span="12">
                 <el-form-item label="浠樻鏂瑰紡" prop="paymentMethod">
                   <el-input v-model="form.paymentMethod" placeholder="璇疯緭鍏ヤ粯娆炬柟寮�" clearable />
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="椤圭洰鍚嶇О" prop="projectId">
-                  <el-select v-model="form.projectId" placeholder="璇烽�夋嫨椤圭洰鍚嶇О" style="width: 100%" clearable filterable>
-                    <el-option v-for="item in projectOptions" :key="item.id" :label="item.no + ' - ' + item.title" :value="item.id" />
-                  </el-select>
                 </el-form-item>
               </el-col>
             </el-row>
@@ -271,7 +258,6 @@
     <el-dialog v-model="viewDialogVisible" title="鎶ヤ环璇︽儏" width="800px">
       <el-descriptions :column="2" border>
         <el-descriptions-item label="鎶ヤ环鍗曞彿">{{ currentQuotation.quotationNo }}</el-descriptions-item>
-        <el-descriptions-item label="椤圭洰鍚嶇О">{{ currentQuotation.projectName }}</el-descriptions-item>
         <el-descriptions-item label="瀹㈡埛鍚嶇О">{{ currentQuotation.customer }}</el-descriptions-item>
         <el-descriptions-item label="涓氬姟鍛�">{{ currentQuotation.salesperson }}</el-descriptions-item>
         <el-descriptions-item label="鎶ヤ环鏃ユ湡">{{ currentQuotation.quotationDate }}</el-descriptions-item>
@@ -317,22 +303,19 @@
 import {modelList, productTreeList} from "@/api/basicData/product.js";
 import {listCustomer} from "@/api/basicData/customer.js";
 import { userListNoPage } from "@/api/system/user.js";
-import { listProject } from "@/api/projectManagement/project.js";
 
 // 鍝嶅簲寮忔暟鎹�
 const loading = ref(false)
 const searchForm = reactive({
   quotationNo: '',
   customerId: '',
-  status: '',
-  projectId: undefined
+  status: ''
 })
 
 const quotationList = ref([])
 const userList = ref([])
 const productOptions = ref([]);
 const modelOptions  = ref([]);
-const projectOptions = ref([]);
 const pagination = reactive({
   total: 3,
   currentPage: 1,
@@ -345,7 +328,6 @@
 const form = reactive({
   quotationNo: '',
   customerId: undefined,
-  projectId: undefined,
   customer: '',
   salesperson: '',
   quotationDate: '',
@@ -414,7 +396,6 @@
   searchForm.quotationNo = ''
   searchForm.customer = ''
   searchForm.status = ''
-  searchForm.projectId = undefined
   // 閲嶇疆鍒扮涓�椤靛苟閲嶆柊鏌ヨ
   pagination.currentPage = 1
   handleSearch()
@@ -427,14 +408,6 @@
   dialogVisible.value = true
   getProductOptions();
   fetchCustomerOptions();
-  fetchProjectOptions();
-}
-
-const fetchProjectOptions = () => {
-  if (projectOptions.value.length > 0) return
-  listProject({current: -1,size:-1}).then((res) => {
-    projectOptions.value = res.data.records;
-  });
 }
 
 const fetchCustomerOptions = () => {
@@ -557,8 +530,7 @@
       unitPrice: product.unitPrice || 0,
       amount: product.amount || 0
     })) : [],
-    totalAmount: row.totalAmount || 0,
-    projectName: row.projectName || ''
+    totalAmount: row.totalAmount || 0
   }
   viewDialogVisible.value = true
 }
@@ -571,13 +543,11 @@
   // 鍏堝姞杞戒骇鍝佹爲鏁版嵁锛屽惁鍒� el-tree-select 鏃犳硶鍙嶆樉浜у搧鍚嶇О
   await getProductOptions()
   await fetchCustomerOptions()
-  await fetchProjectOptions()
 
   // 鍙鍒堕渶瑕佺殑瀛楁锛岄伩鍏嶅皢缁勪欢寮曠敤鏀惧叆鍝嶅簲寮忓璞�
   form.quotationNo = row.quotationNo || ''
   form.customer = row.customer || ''
   form.customerId = row.customerId || undefined
-  form.projectId = row.projectId || undefined
   form.salesperson = row.salesperson || ''
   form.quotationDate = row.quotationDate || ''
   form.validDate = row.validDate || ''
@@ -660,7 +630,6 @@
 const resetForm = () => {
   form.customer = ''
   form.customerId = undefined
-  form.projectId = undefined
   form.salesperson = ''
   form.quotationDate = ''
   form.validDate = ''
@@ -822,7 +791,6 @@
   getUserList()
   handleSearch()
   fetchCustomerOptions()
-  fetchProjectOptions()
 })
 </script>
 

--
Gitblit v1.9.3