From a660db06773007b1be690e0674829c00a57aeb7b Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 24 十二月 2025 16:21:23 +0800
Subject: [PATCH] 订单首页流程卡新增楼层编号显示
---
north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelTwo.vue | 91 ++++++++++++++++++++++++++++++++++++++-------
1 files changed, 76 insertions(+), 15 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelTwo.vue b/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelTwo.vue
index e6e6664..4e8ead6 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelTwo.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelTwo.vue
@@ -23,7 +23,8 @@
let filterData = ref({})
const data = ref({
- printList: []
+ printList: [],
+ isRepeat:false
})
let props = defineProps({
@@ -31,7 +32,8 @@
faceOrientation:null,//鍐呭闈�
type:null,//鏍囩妯℃澘
lableType:null,//鏍囩绫诲瀷
- switch:null//鍒ゆ柇鏄惁涓烘柊鎵撳嵃
+ switch:null,//鍒ゆ柇鏄惁涓烘柊鎵撳嵃
+ lastList:[],
})
const {currentRoute} = useRouter()
@@ -74,11 +76,38 @@
}
})
labelList = a
- for (let i = 0; i < list.value.length; i++) {
- let count = list.value[i].data.length
- for (let j = 0; j < count; j++) {
- for (let k = 0; k < list.value[i].data[j].quantity; k++) {
- lastList.value.push(list.value[i].data[j])
+
+ props.lastList.length = 0;
+ // 閬嶅巻鍒楄〃锛堟浛鎹� i 涓烘洿璇箟鍖栫殑鍙橀噺鍚嶏級
+ for (const group of list.value) {
+ // 閬嶅巻姣忕粍涓殑鏁版嵁锛堟浛鎹� j锛�
+ for (const item of group.data) {
+ console.log(item)
+ const { quantity, newList } = item;
+ // 璺宠繃 quantity 涓� 0 鎴栨棤鏁堢殑鎯呭喌
+ console.log(quantity)
+ if (!quantity || quantity <= 0) continue;
+
+ // 澶勭悊 newList锛氱‘淇濇槸鏁扮粍锛屼笉瓒虫椂鐢ㄧ┖瀵硅薄鍏滃簳
+ const safeNewList = Array.isArray(newList) ? newList : [];
+ // 寰幆 quantity 娆★紝娣诲姞鏁版嵁鍒� lastList
+ for (let k = 0; k < quantity; k++) {
+ // 娣辨嫹璐� item锛岄伩鍏嶉噸澶嶅紩鐢紙鍏抽敭锛侊級
+ const newItem = JSON.parse(JSON.stringify(item));
+
+ // 鑻� newList 鏈夊搴旂储寮曟暟鎹紝濉厖瀛楁锛涘惁鍒欑疆绌�
+ const listItem = safeNewList[k];
+ if (listItem) {
+ newItem.heat_layout_sort = listItem.glass_id || ''; // 鍏滃簳绌哄瓧绗︿覆
+ newItem.stockPolysId = `${listItem.stock_id || ''}/${listItem.polys_id || ''}`; // 閬垮厤 undefined/
+ } else {
+ // 鏃犲搴旀暟鎹椂锛屽瓧娈电疆绌猴紙閬垮厤淇濈暀鍘熷鍊硷級
+ newItem.heat_layout_sort = '';
+ newItem.stockPolysId = '';
+ }
+
+ // 娣诲姞鍒扮洰鏍囧垪琛�
+ props.lastList.push(newItem);
}
}
}
@@ -115,11 +144,12 @@
}
// 閬嶅巻 lastList 骞舵洿鏂板搴旂殑灞炴��
- lastList.value.forEach(obj => {
+ props.lastList.forEach(obj => {
// 鑾峰彇鍓嶇紑鍜� orderId
- const prefix = lastList.value[index].processId.substring(0, 11);
+ console.log(index)
+ const prefix = props.lastList[id].processId.substring(0, 11);
const orderId = obj.orderId;
- const glassNumber=lastList.value[index].glassNumber
+ const glassNumber=props.lastList[id].glassNumber
// 鏍规嵁 propertyName 鏇存柊灞炴��
if (propertyName === 'productAbbreviation' && prefix === obj.processId.substring(0, 11)) {
obj.productAbbreviation = result;
@@ -134,22 +164,53 @@
if (propertyName === 'customerName' && orderId === obj.orderId){
obj.customerName = result;
}
+ if (propertyName === 'orderId' && orderId === obj.orderId){
+ obj.orderId = result;
+ }
+ if (propertyName === 'glassNumber' && glassNumber === obj.glassNumber){
+ obj.glassNumber = result;
+ }
+ if (propertyName === 'width' && glassNumber === obj.glassNumber){
+ obj.width = result;
+ }
+ if (propertyName === 'height' && glassNumber === obj.glassNumber){
+ obj.height = result;
+ }
+ if (propertyName === 'custom1' && orderId === obj.orderId){
+ obj.custom1 = result;
+ }
+ if (propertyName === 'custom2' && orderId === obj.orderId){
+ obj.custom2 = result;
+ }
+ if (propertyName === 'custom3' && orderId === obj.orderId){
+ obj.custom3 = result;
+ }
+ if (propertyName === 'custom4' && orderId === obj.orderId){
+ obj.custom4 = result;
+ }
+ if (propertyName === 'custom5' && orderId === obj.orderId){
+ obj.custom5 = result;
+ }
});
}
</script>
<template>
- <div id="print" :class="company.printLabel.className.semi.printFlowCardName()">
- <div v-for="(item1,id) in lastList" :class="company.printLabel.className.semi.entiretyName()">
+ <div id="print" class="printFlowCard_semi">
+
+ <template v-for="(item1,index) in props.lastList">
+ <div class="entirety_semi">
<div class="row4">{{ faceOrientation }}</div>
- <div v-for="(item,id) in labelList" :class="company.printLabel.className.semi.contentRowName()">
+ <div v-for="(item,id) in labelList" class="contentRow">
<div contenteditable="true" v-if="item1[item.name] != null && item1[item.name] !== ''" class="row1" @input="updateProductName($event, id,index)">{{ item.title }}锛歿{ item1[item.name] }}</div>
<!-- <div v-if="item1[item.name] != null && item1[item.name] !== ''" class="row2">{{ item1[item.name] }}</div>-->
</div>
<div v-html="company.printLabel.customSemi(item1)"></div>
- <div v-if="(id + 1) % 2 === 0" class="pagebreak"></div>
- </div>
+ </div>
+ <div v-if="(id + 1) % 2 === 0" class="pagebreak"></div>
+ </template>
+
</div>
--
Gitblit v1.8.0