From 3def2ae30b07bb1f9ed8627de90b821481e5e2d5 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 25 七月 2025 14:00:43 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue |   45 +++++++++++++++++++++++++++++++++++++--------
 1 files changed, 37 insertions(+), 8 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
index 4cbb0e4..3b18357 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
@@ -1,7 +1,6 @@
 <script setup>
 import {computed, onMounted, reactive, ref, watch} from "vue";
 import {changeFilterEvent, filterChanged} from "@/hook"
-import footSum from "@/hook/footSum"
 import {useI18n} from "vue-i18n"
 import request from "@/utils/request"
 import {ElMessage} from "element-plus"
@@ -99,7 +98,7 @@
 })
 
 
-
+let mergeCells = ref()
 const getWorkOrder = () => {
   gridOptions.loading = true
   request.post(`/report/processCardProgress/${props.orderId}`,column).then(async (res) => {
@@ -121,10 +120,12 @@
       res.data.data.forEach(item => {
         item.reportWorkQuantity=JSON.parse(item.reportWorkQuantity)
         item.reportWorkQuantityCount=JSON.parse(item.reportWorkQuantityCount)
+        item.reportWorkQuantityShow=JSON.parse(item.reportWorkQuantityShow)
       })
 
       await xGrid.value.loadData(res.data.data)
       await xGrid.value.setMergeCells(res.data.mergeCells)
+      mergeCells.value = res.data.mergeCells
       gridOptions.loading = false
 
     } else {
@@ -133,14 +134,41 @@
   })
 }
 
-const quantitySum = ( row,column )=>{
-  const reportWorkQuantity = row.reportWorkQuantity[column.title] || ''
-  const reportWorkQuantityCount = row.reportWorkQuantityCount[column.title] || ''
-  if(reportWorkQuantity===reportWorkQuantityCount){
-    return reportWorkQuantity
+const filterChange = () =>{
+  if(xGrid.value.isFilter()){
+    xGrid.value.clearMergeCells()
+    xGrid.value.clearMergeFooterItems()
+  }else{
+    xGrid.value.setMergeCells(mergeCells.value)
+    xGrid.value.updateFooter()
   }
 
-  return (reportWorkQuantity
+
+}
+const footSum =(list, field) => {
+  if(xGrid.value.isFilter()){
+    return
+  }
+  let count = 0
+  list.forEach(item => {
+    if(field.indexOf('.')>-1){
+      let  array = field.split('.')
+      count += Number(item[array[0]][array[1]]) || 0
+    }else {
+      count += Number(item[field])  || 0
+    }
+  })
+  return count.toFixed(2)
+}
+
+const quantitySum = ( row,column )=>{
+  const reportWorkQuantityCount = row.reportWorkQuantityCount[column.title] || ''
+  const reportWorkQuantityShow = row.reportWorkQuantityShow[column.title] || ''
+  if(reportWorkQuantityShow===reportWorkQuantityCount){
+    return reportWorkQuantityShow
+  }
+
+  return (reportWorkQuantityShow
       +'('
       +reportWorkQuantityCount
       +')' )
@@ -151,6 +179,7 @@
 <template>
   <div style="width: 100%;height: 100%">
     <vxe-grid
+        @filter-change ='filterChange'
         height="100%"
         size="mini"
         class="mytable-scrollbar"

--
Gitblit v1.8.0