From eb196866b6b82289fa4fbb90639e23616dcfb82f Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 22 八月 2025 15:09:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml                         |    2 +
 north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java          |   16 ++++----
 north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue                |    7 ++-
 north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java |   16 +++-----
 north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml                     |    4 +-
 north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java   |    2 
 north-glass-erp/northglass-erp/src/views/pp/glassOptimize/OptimizationRectPrint.vue         |   66 ++++++++++++++++++++-------------
 7 files changed, 63 insertions(+), 50 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue b/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
index b183ab4..2a55eb2 100644
--- a/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
+++ b/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
@@ -24,6 +24,7 @@
 const name2=ref("admin")
 
 const printStyle = ref(null);
+const title = ref({})
 
 
 
@@ -43,7 +44,6 @@
 
 
 data.value.printList = JSON.parse(props.printList)
-console.log(data.value.printList)
 
 onMounted(() => {
   clearPrintStyles()
@@ -149,9 +149,9 @@
 const orderDetailList = ref([])
 const customer = ref({})
 const selectPrint =async () => {
-  const page = props.printPage==='storageRecordPint'?`/finishedGoodsInventory/getSelectPrints`:'/finishedGoodsInventory/getInventoryPrints'
+  const page1 = props.printPage==='storageRecordPint'?`/finishedGoodsInventory/getSelectPrints`:'/finishedGoodsInventory/getInventoryPrints'
   const value = props.printPage==='storageRecordPint'?data.value:data.value.printList
-  request.post(page, value).then((res) => {
+  request.post(page1, value).then((res) => {
     if (res.code == 200) {
       produceList.value = deepClone(res.data.data)
       customer.value = produceList.value[0].detail[0]
@@ -221,6 +221,7 @@
           type:'sum',
           sum:sum
         })
+
       })
     } else {
       ElMessage.warning(res.msg)
diff --git a/north-glass-erp/northglass-erp/src/views/pp/glassOptimize/OptimizationRectPrint.vue b/north-glass-erp/northglass-erp/src/views/pp/glassOptimize/OptimizationRectPrint.vue
index 5d2970e..9ce1126 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/glassOptimize/OptimizationRectPrint.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/glassOptimize/OptimizationRectPrint.vue
@@ -3,7 +3,23 @@
     <el-button id="button" type="primary" @click="handlePrint" style="position: fixed; top: 90px; right: 20px; padding: 20px; background: #4CAF50; color: white; border: none; border-radius: 5px; cursor: pointer;">
       鎵撳嵃
     </el-button>
-    
+
+    <div style="display: flex; align-items: center; gap: 20px; margin-bottom: 20px;">
+      <span>宸ョ▼缂栧彿锛�</span>
+      <el-input readonly placeholder="" style="width: 150px" v-model="processId"></el-input>&nbsp;
+      <el-checkbox v-model="config.plain">
+        鍒囨潗鐜�
+      </el-checkbox>
+      <div style="margin-right: 30px;"></div>
+      <span>甯冨眬閫夋嫨锛�</span>
+      <el-select v-model="config.type"  style="width: 120px;">
+        <el-option v-for="type in linkTypes" :key="type" :value="type" />
+      </el-select>
+      <el-button id="button" type="primary" @click="handlePrint" style="background: #4CAF50; color: white; border: none; cursor: pointer;">
+        棰勮
+      </el-button>
+    </div>
+
     <div ref="printContainer" style="position: relative;">
       <RectRenderer 
         ref="rectRenderer"
@@ -21,29 +37,11 @@
       />
     </div>
   </div>
-  <div style="width: 400px;margin: auto;">
-    <h1 style="margin: auto;text-align: center;">涓婃捣鍖楃幓鑷姩鍖�</h1>
-    <h2 style="margin: auto;text-align: center;">浼樺寲鎶ュ憡</h2>
-    浼樺寲鎶ュ伐
-    <el-table :data="layoutDetails">
-      <el-table-column prop="avgCutRate" label="鍒囪鐜�"></el-table-column>
-      <el-table-column prop="validCutRate" label="鏈夋晥鍒囧壊"></el-table-column>
-      <el-table-column prop="lastCutRate" label="灏剧墖"></el-table-column>
-      <el-table-column prop="" label="鍘熺墖绫诲瀷"></el-table-column>
-      <el-table-column prop="totalQuantity" label="鐗堥潰鏁伴噺"></el-table-column>
-    </el-table>
-    <br>
-    鐗╂枡淇℃伅
-    <el-table :data="materialDetails">
-      <el-table-column prop="width" label="鍘熺墖瀹�"></el-table-column>
-      <el-table-column prop="height" label="鍘熺墖楂�"></el-table-column>
-      <el-table-column prop="processingQuantity" label="鏁伴噺"></el-table-column>
-    </el-table>
-  </div>
+
 </template>
 
 <script setup>
-import { ref, onMounted, watch } from 'vue';
+import { ref, onMounted, watch, reactive, inject } from 'vue';
 import RectRenderer from './page/RectRenderer.vue';
 import request from "@/utils/request";
 
@@ -54,11 +52,14 @@
 const printLayout = ref('2rows-2cols');
 const rectRenderer = ref(null);
 const savedProjectNo = localStorage.getItem('projectNo');
-let processId = null;
+const processId = ref('');
 const layoutData = ref();
 const dataLoaded = ref(false);
 const materialDetails = ref();
+const injectedProjectNo = inject('projectNo', null);
 const state = ref();
+const linkTypes = ['涓�鍒�', '涓ゅ垪', '涓夊垪']
+
 // 瀹氫箟涓嶅悓甯冨眬瀵瑰簲鐨勫昂瀵�
 const layoutDimensions = {
   '4rows-2cols': { width: 1000, height: 1000 },
@@ -74,7 +75,7 @@
 const currentPrintHeight = ref(layoutDimensions[printLayout.value].height);
 
 const selectLayout = () => {
-  request.post(`/glassOptimize/selectOptimizeResult/${processId}`)
+  request.post(`/glassOptimize/selectOptimizeResult/${processId.value}`)
     .then((res) => {
       if (res.code == 200) {
         try {
@@ -93,10 +94,23 @@
     });
 };
 
+const config = reactive({
+  type: '涓ゅ垪',
+  plain: true,
+})
+
 onMounted(() => {
-  if (props.project) {
-    processId=props.project.projectNumber;
-    state.value=props.state;
+  // 浼樺厛浣跨敤娉ㄥ叆鐨� projectNo锛屽叾娆′娇鐢� props锛屾渶鍚庝娇鐢� localStorage
+  if (injectedProjectNo) {
+    processId.value = injectedProjectNo.value || injectedProjectNo;
+  } else if (props.project) {
+    processId.value = props.project.projectNumber || '';
+    state.value = props.state;
+  } else if (savedProjectNo) {
+    processId.value = savedProjectNo;
+  }
+
+  if (processId.value) {
     selectLayout();
   }
 });
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
index d494181..bf1a53c 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
@@ -150,7 +150,7 @@
 
     Integer findOrderNumberdContainercount(String orderId, Integer orderNumber, String container);
 
-    List<Map<String, String>> getPrintTitleByBox(Integer customerId, String project, String boxNo);
+    List<Map<String, String>> getPrintTitleByBox(Integer customerId, String project, String boxNo,String orderId);
 
     List<Map<String, Object>> getorderProductByBoxNo(String orderId, String boxNo);
 
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
index a6ac03e..058789a 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -1183,11 +1183,14 @@
                 }
 
                 Map<String, Object> itemmap = new HashMap<>();
-                itemmap.put("detail",finishedGoodsInventoryMapper.getPrintTitleByBox(
+                List<Map<String, String>> detail = finishedGoodsInventoryMapper.getPrintTitleByBox(
                         finishedGoodsInventory.getOrder().getCustomerId(),
                         finishedGoodsInventory.getOrder().getProject(),
-                        boxNo
-                ) );
+                        boxNo,
+                        orderId
+                );
+
+                itemmap.put("detail",detail);
                 //鑾峰彇搴撳瓨閲岄潰姝よ鍗曟绠卞彿鐨勬墍鏈変骇鍝佷俊鎭�
                 List<Map<String, Object>> detailList = finishedGoodsInventoryMapper
                         .getorderProductByBoxNo(orderId,boxNo);
@@ -1197,13 +1200,6 @@
                 for(Map<String, Object> details:detailList){
                     Map<String, Object> detailsmap = new HashMap<>();
                     detailsmap.put("product_name",details.get("product_name").toString());
-                    /*finishedOperateLogMapper
-                            .getDetailLists(
-                                    finishedOperateLog.getOrderId(),
-                                    finishedOperateLog.getRemarks(),
-                                    Integer.valueOf(details.get("product_id").toString()),
-                                    details.get("thickness").toString()
-                            );*/
                     //鑾峰彇鏄庣粏鏁版嵁
                     List<Map<String, Object>> orderDetailList = finishedGoodsInventoryMapper
                             .getPrintDetail(
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
index 6734c72..f75c8ed 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
@@ -1249,12 +1249,12 @@
 
     }
 
-		public List<BasicDataProduce> selectEquipmentByProcessSv(String process) {
-		       return reportingWorkMapper.SelectWorkBasicDeviceMp(process);
-		    }
+    public List<BasicDataProduce> selectEquipmentByProcessSv(String process) {
+           return reportingWorkMapper.SelectWorkBasicDeviceMp(process);
+        }
 
-		public String saveWorkStorage(Map<String, Object> object) {
-		        //List<Map<String, Object>> flowCard = reportingWorkMapper.getStorageData();
-		        //finishedGoodsInventoryService.addSelectWarehousing(object);
-		        return null;
-		    }}
+    public String saveWorkStorage(Map<String, Object> object) {
+            //List<Map<String, Object>> flowCard = reportingWorkMapper.getStorageData();
+            //finishedGoodsInventoryService.addSelectWarehousing(object);
+            return null;
+        }}
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
index c6561cc..54ff11c 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
@@ -1074,11 +1074,11 @@
     <select id="getPrintTitleByBox">
         select kkk.*,
                rw.teams_groups_name as teams_groups_name2
-        from(select  o.order_id,
+        from(select #{orderId} as order_id,
                  o.customer_name,
                  o.customer_id,
                  o.project,
-                 o.batch,
+                 (select batch from sd.`order` pp1 where pp1.order_id =#{orderId} ) as batch,
                  fol.box_no as 'remarks',
                  SUM(fol.quantity_available) as quantity,
                  ROUND( sum(od.width * od.height * fol.quantity_available) / 1000000, 2 ) as area,
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
index 9fba596..33c16f9 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -35,6 +35,7 @@
         <result column="delivery_address" property="order.deliveryAddress"/>
         <result column="project" property="order.project"/>
         <result column="customer_name" property="order.customerName"/>
+        <result column="customer_Id" property="order.customerId"/>
 
     </resultMap>
 
@@ -760,6 +761,7 @@
         od.height,
         o.project,
         o.customer_name,
+        o.customer_Id,
         o.delivery_address,
         fol.operate_time,
         fol.`status`,

--
Gitblit v1.8.0