From 99d0bb96043ba5d6db66bbfb00f67ca4e09f3ffb Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期五, 07 三月 2025 09:08:33 +0800
Subject: [PATCH] 小片尺寸和成品尺寸不相同时,打印显示小片信息
---
north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue | 116 ++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 84 insertions(+), 32 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue b/north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue
index 26571b2..6583a68 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue
@@ -4,23 +4,33 @@
import {ElDatePicker, ElMessage} from "element-plus"
import {nextTick, onMounted, onUnmounted, reactive, ref, watch} from "vue"
import {Search} from "@element-plus/icons-vue"
-import {useRouter} from 'vue-router'
+import {useRoute, useRouter} from 'vue-router'
import {changeFilterEvent, filterChanged} from "@/hook"
import { useI18n } from 'vue-i18n'
+import footSum from "@/hook/footSum";
//璇█鑾峰彇
const { t } = useI18n()
let router=useRouter()
+const route = useRoute()
let props = defineProps({
orderId:null
})
onMounted(()=>{
if(props.orderId===null || props.orderId===undefined || props.orderId===''){
- return
+
+ }else{
+ form.orderId = props.orderId
+ getWorkOrder()
}
- form.orderId = props.orderId
- getWorkOrder()
+ if(route.query.orderId===null || route.query.orderId===undefined || route.query.orderId===''){
+
+ }else {
+ form.orderId = route.query.orderId
+ getWorkOrder()
+ }
+
})
@@ -47,24 +57,33 @@
}
})
+
//闇�瑕佸悎骞剁殑鍒�
let column = [1,3,8]
//鐐瑰嚮鏌ヨ
const getWorkOrder = () => {
- request.post(`/report/processCardProgress/${form.orderId}`,column).then((res) => {
+ gridOptions.columns = gridOptions.columns.slice(0, 11); //娓呴櫎鍔ㄦ�佺敓鎴愮殑鍒楅噸鏂版煡璇�
+ request.post(`/report/processCardProgress/${form.orderId}`, column).then((res) => {
if (res.code == 200) {
- if(res.data.data.length===0){
+ if (res.data.data.length === 0) {
ElMessage.warning(t('report.noDataFoundForThisOrder'))
return
}
- //gridOptions.columns = JSON.parse(JSON.stringify(columns))
- res.data.title.forEach(item =>{
- let column = {slots: { default: 'quantitySum' }, width: 90,title: item.process}
+
+ // 鍔ㄦ�佹坊鍔犲垪
+ res.data.title.forEach((item, index) => {
+ let column = {
+ slots: { default: 'quantitySum' },
+ width: 150,
+ title: item.process,
+ field: `dynamicColumn${index}` // 涓哄姩鎬佸垪娣诲姞鍞竴鐨� field
+ }
gridOptions.columns.push(column)
})
res.data.data.forEach(item => {
- item.reportWorkQuantity=JSON.parse(item.reportWorkQuantity)
- item.reportWorkQuantityCount=JSON.parse(item.reportWorkQuantityCount)
+ item.reportWorkQuantity = JSON.parse(item.reportWorkQuantity)
+ item.reportWorkQuantityCount = JSON.parse(item.reportWorkQuantityCount)
+ //item.reportWorkTime = JSON.parse(item.reportWorkTime)
})
mergeCells.value = res.data.mergeCell
xGrid.value.loadData(res.data.data)
@@ -73,17 +92,47 @@
}
})
}
+
+const footSumDynamic = (data, columnTitle) => {
+ let sum = 0;
+ data.forEach(item => {
+ const value = Number(item.reportWorkQuantity[columnTitle]) || 0; // 浠� reportWorkQuantity 涓彁鍙栧�煎苟杞崲涓烘暟瀛�
+ sum += value;
+ });
+ return sum.toFixed(2);
+}
+
const quantitySum = ( row,column )=>{
const reportWorkQuantity = row.reportWorkQuantity[column.title] || 0
const reportWorkQuantityCount = row.reportWorkQuantityCount[column.title] || 0
- if(reportWorkQuantity===reportWorkQuantityCount){
- return reportWorkQuantity
+ const reportWorkTime = row.reportWorkTime[column.title] || 0
+ if (reportWorkTime===0){
+ if(reportWorkQuantity===reportWorkQuantityCount){
+ return reportWorkQuantity
+ }
+
+ return (reportWorkQuantity
+ +'('
+ +reportWorkQuantityCount
+ +')' )
+ }
+ else {
+ if(reportWorkQuantity===reportWorkQuantityCount){
+ return (reportWorkQuantity+'['
+ +reportWorkTime
+ +']')
+ }
+
+ return (reportWorkQuantity
+ +'('
+ +reportWorkQuantityCount
+ +')'
+ +'['
+ +reportWorkTime
+ +']'
+ )
}
- return (reportWorkQuantity
- +'('
- +reportWorkQuantityCount
- +')' )
//return
}
@@ -168,21 +217,24 @@
data: [
],//table body瀹為檯鏁版嵁
//鑴氶儴姹傚拰
- // footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- // let footList=['7','8','9','10']
- // return[
- // columns.map((column, columnIndex) => {
- // if (columnIndex === 0) {
- // return '鍚堣:'
- // }
- // if (footList.includes(column.field)) {
- // return sumNum(data, column.field)
- // }
- // return ''
- // })
- // ]
- // }
-
+ footerMethod ({ columns, data }) {
+ return [
+ columns.map((column, columnIndex) => {
+ if (columnIndex === 0) {
+ return t('basicData.total')
+ }
+ const List = ["quantity", "broken_num", "inventory", "inventoryArea"]; // 闈欐�佸垪鐨勬眰鍜�
+ if (List.includes(column.field)) {
+ return footSum(data, column.field)
+ }
+ // 鍔ㄦ�佸垪鐨勬眰鍜�
+ if (column.field && column.field.startsWith('dynamicColumn')) {
+ return footSumDynamic(data, column.title)
+ }
+ return ''
+ })
+ ]
+ }
})
--
Gitblit v1.8.0