Sfoglia il codice sorgente

添加线下支付金额合计 线下单数 添加 订单 实收金额

xgb 2 giorni fa
parent
commit
ebeda92307

+ 27 - 6
src/views/hisStore/components/OrderSummaryTable.vue

@@ -30,6 +30,14 @@
           {{ scope.row.validAmount ? scope.row.validAmount.toFixed(2) : '0.00' }}
         </template>
       </el-table-column>
+
+      <el-table-column prop="totalOfflineCalls" label="线下单数" min-width="40" align="center"></el-table-column>
+      <el-table-column prop="totalOfflineAmount" label="线下支付金额" min-width="70" align="center">
+        <template slot-scope="scope">
+          {{ scope.row.totalOfflineAmount ? scope.row.totalOfflineAmount.toFixed(2) : '0.00' }}
+        </template>
+      </el-table-column>
+
       <el-table-column prop="waitingOrders" label="待审数" min-width="40" align="center"></el-table-column>
       <el-table-column prop="waitingAmount" label="待审金额" min-width="70" align="center">
         <template slot-scope="scope">
@@ -150,18 +158,18 @@ export default {
     getSummaries(param) {
       const { columns, data } = param;
       const sums = [];
-      const sumFields = ['totalCalls', 'totalAmount', 'validAmount', 'waitingOrders', 'waitingAmount',
+      const sumFields = ['totalCalls', 'totalAmount', 'validAmount','totalOfflineCalls','totalOfflineAmount', 'waitingOrders', 'waitingAmount',
         'unPassedOrders', 'unPassedAmount', 'cancelOrders', 'cancelAmount', 'completeOrders',
         'completeAmount', 'unshippedOrders', 'unshippedAmount', 'shippedOrders', 'shippedAmount',
         'transitOrders', 'transitAmount', 'receivedOrders', 'receivedAmount', 'returnOrders',
         'returnAmount', 'paybackOrders', 'paybackAmount'];
-      
+
       columns.forEach((column, index) => {
         if (index === 0) {
           sums[index] = '合计';
           return;
         }
-        
+
         if (sumFields.includes(column.property)) {
           const values = data.map(item => Number(item[column.property]));
           if (!values.every(value => Number.isNaN(value))) {
@@ -173,7 +181,7 @@ export default {
                 return prev;
               }
             }, 0);
-            
+
             // 对于金额字段保留两位小数
             if (column.property && column.property.includes('Amount')) {
               sums[index] = sum.toFixed(2);
@@ -190,7 +198,7 @@ export default {
 
       return sums;
     }
-  } 
+  }
 }
 </script>
 
@@ -205,4 +213,17 @@ export default {
   color: #333;
   margin-bottom: 10px;
 }
-</style>
+
+/* 使用 ::v-deep 穿透 scoped 作用域 */
+::v-deep .el-table {
+  font-size: 12px  !important;
+}
+
+::v-deep .el-table th {
+  font-size: 11px  !important;
+}
+
+::v-deep .el-table td {
+  font-size: 12px  !important;
+}
+</style>

+ 41 - 20
src/views/hisStore/components/OrderSummaryTableNew.vue

@@ -27,6 +27,14 @@
           {{ scope.row.validAmount ? scope.row.validAmount.toFixed(2) : '0.00' }}
         </template>
       </el-table-column>
+
+       <el-table-column prop="totalOfflineCalls" label="线下单数" min-width="40" align="center"></el-table-column>
+       <el-table-column prop="totalOfflineAmount" label="线下支付金额" min-width="70" align="center">
+         <template slot-scope="scope">
+           {{ scope.row.totalOfflineAmount ? scope.row.totalOfflineAmount.toFixed(2) : '0.00' }}
+         </template>
+       </el-table-column>
+
       <el-table-column prop="waitingOrders" label="待审数" min-width="40" align="center"></el-table-column>
       <el-table-column prop="waitingAmount" label="待审金额" min-width="70" align="center">
         <template slot-scope="scope">
@@ -120,11 +128,11 @@ export default {
       if (!this.tableData || this.tableData.length === 0) {
         return [];
       }
-      
+
       // 按部门分组数据处理逻辑
       const result = [];
       const deptMap = new Map();
-      
+
       // 分组数据
       this.tableData.forEach(item => {
         const deptName = item.groupName || '未分配部门';
@@ -133,7 +141,7 @@ export default {
         }
         deptMap.get(deptName).push(item);
       });
-      
+
       // 构建展示数据
       for (const [deptName, employees] of deptMap) {
         // 部门标题行
@@ -142,21 +150,21 @@ export default {
           isGroup: true,
           isDeptTitle: true
         });
-        
+
         // 员工数据行
         employees.forEach(emp => {
           result.push({ ...emp });
         });
-        
+
         // 部门小计行
         const deptSummary = this.calculateDeptSummary(employees, deptName);
         result.push(deptSummary);
       }
-      
+
       // 添加总计行
       const totalSummary = this.calculateTotalSummary();
       result.push(totalSummary);
-      
+
       return result;
     }
   },
@@ -176,7 +184,7 @@ export default {
           };
         }
       }
-      
+
       // 部门小计行合并
       if (row.isDeptSummary) {
         if (columnIndex === 0) {
@@ -186,7 +194,7 @@ export default {
         // 其他列正常显示数据
         return [1, 1];
       }
-      
+
       // 总计行合并
       if (row.isTotalSummary) {
         if (columnIndex === 0) {
@@ -196,7 +204,7 @@ export default {
         // 其他列正常显示数据
         return [1, 1];
       }
-      
+
       // 普通行
       return [1, 1];
     },
@@ -207,17 +215,17 @@ export default {
         isGroup: true,
         isDeptSummary: true
       };
-      
-      const sumFields = ['totalCalls', 'totalAmount', 'validAmount', 'waitingOrders', 'waitingAmount',
+
+      const sumFields = ['totalCalls', 'totalAmount', 'validAmount','totalOfflineCalls','totalOfflineAmount', 'waitingOrders', 'waitingAmount',
         'unPassedOrders', 'unPassedAmount', 'cancelOrders', 'cancelAmount', 'completeOrders',
         'completeAmount', 'unshippedOrders', 'unshippedAmount', 'shippedOrders', 'shippedAmount',
         'transitOrders', 'transitAmount', 'receivedOrders', 'receivedAmount', 'returnOrders',
         'returnAmount', 'paybackOrders', 'paybackAmount'];
-      
+
       sumFields.forEach(field => {
         summary[field] = employees.reduce((sum, emp) => sum + (Number(emp[field]) || 0), 0);
       });
-      
+
       return summary;
     },
     // 计算总计
@@ -227,20 +235,20 @@ export default {
         isGroup: true,
         isTotalSummary: true
       };
-      
-      const sumFields = ['totalCalls', 'totalAmount', 'validAmount', 'waitingOrders', 'waitingAmount',
+
+      const sumFields = ['totalCalls', 'totalAmount', 'validAmount','totalOfflineCalls','totalOfflineAmount', 'waitingOrders', 'waitingAmount',
         'unPassedOrders', 'unPassedAmount', 'cancelOrders', 'cancelAmount', 'completeOrders',
         'completeAmount', 'unshippedOrders', 'unshippedAmount', 'shippedOrders', 'shippedAmount',
         'transitOrders', 'transitAmount', 'receivedOrders', 'receivedAmount', 'returnOrders',
         'returnAmount', 'paybackOrders', 'paybackAmount'];
-      
+
       // 从原始数据计算总计(排除部门标题和小计行)
       const validData = this.tableData.filter(item => !item.isGroup);
-      
+
       sumFields.forEach(field => {
         summary[field] = validData.reduce((sum, item) => sum + (Number(item[field]) || 0), 0);
       });
-      
+
       return summary;
     }
   }
@@ -254,4 +262,17 @@ export default {
   color: #333;
   margin-bottom: 10px;
 }
-</style>
+
+/* 使用 ::v-deep 穿透 scoped 作用域 */
+::v-deep .el-table {
+  font-size: 12px  !important;
+}
+
+::v-deep .el-table th {
+  font-size: 11px  !important;
+}
+
+::v-deep .el-table td {
+  font-size: 12px  !important;
+}
+</style>

+ 5 - 0
src/views/hisStore/storeOrder/list.vue

@@ -281,6 +281,11 @@
               <span v-if="scope.row.offlinePayAmount!=null">{{scope.row.offlinePayAmount.toFixed(2)}}</span>
             </template>
           </el-table-column>
+          <el-table-column label="实收金额" align="center" prop="totalPayMoney" >
+            <template slot-scope="scope">
+              <span v-if="scope.row.totalPayMoney!=null">{{scope.row.totalPayMoney.toFixed(2)}}</span>
+            </template>
+          </el-table-column>
           <el-table-column label="下单时间" align="center" prop="createTime" width="100"/>
           <el-table-column label="发货时间" align="center" prop="deliverySendTime" width="100"/>
           <!-- <el-table-column label="支付状态" align="center" prop="paid" /> -->

+ 5 - 0
src/views/hisStore/storeOrder/myList.vue

@@ -210,6 +210,11 @@
           <span v-if="scope.row.offlinePayAmount!=null">{{scope.row.offlinePayAmount.toFixed(2)}}</span>
         </template>
       </el-table-column>
+      <el-table-column label="实收金额" align="center" prop="totalPayMoney" >
+        <template slot-scope="scope">
+          <span v-if="scope.row.totalPayMoney!=null">{{scope.row.totalPayMoney.toFixed(2)}}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="下单时间" align="center" prop="createTime" width="100"/>
       <!-- <el-table-column label="支付状态" align="center" prop="paid" /> -->
       <el-table-column label="支付时间" align="center" prop="payTime" width="100">