From 134c875a7bd10c7054774b221deef16bdaab2078 Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期四, 11 七月 2024 10:29:12 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue                      |   10 +-
 north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue              |   16 ++--
 north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue                 |   20 +++---
 north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java            |    4 +
 north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet5.vue                 |   14 ++--
 north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java |    8 +-
 north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java          |   13 +++
 north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml                              |   48 ++++++++++++++++
 8 files changed, 97 insertions(+), 36 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue b/north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue
index 25cf76e..3f89757 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue
@@ -30,14 +30,14 @@
 const {currentRoute} = useRouter()
 const route = currentRoute.value
 const printMerge = props.printMerge
+let merge=props.printMerge
+if (merge == '') {
+  merge = null
+}
 data.value.printList = JSON.parse(props.printList)
 let flowCardCount = data.value.printList.length
 onMounted(() => {
-      // if (id === null || id === undefined || id === '') {
-      //   return
-      // }
-
-      request.post(`/processCard/getSelectPrinting`, data.value).then((res) => {
+      request.post(`/processCard/getSelectPrinting/${merge}`, data.value).then((res) => {
         if (res.code == 200) {
           produceList.value = deepClone(res.data.data)
           //澶勭悊鍗曠墖鍘氬害
diff --git a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
index 1929620..5824665 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
@@ -97,7 +97,7 @@
     <table >
       <thead>
       <tr class="title-s">
-        <th colspan="13">
+        <th colspan="9">
           <h1>
             {{company.companyName}}
           </h1>
@@ -131,7 +131,7 @@
               <tr v-if="index===0">
                 <th style="width: 6%;">搴忓彿</th>
                 <th style="width: 20%;">妤煎眰缂栧彿</th>
-                <th style="width: 20%;" colspan="2">瀹絏楂�</th>
+                <th style="width: 20%;" colspan="1">瀹絏楂�</th>
                 <th style="width: 10%;">鏁伴噺</th>
                 <th style="width: 10%;">闈㈢Н</th>
                 <th style="width: 10%;">鍗曚环</th>
@@ -143,14 +143,14 @@
               </thead>
               <tr>
                 <td style="font-size: 15px;text-align: left" colspan="4">浜у搧鍚嶇О:<span>{{item.DeliveryDetail.orderDetail.productName}}</span></td>
-                <td style="font-size: 15px;text-align: left" colspan="3">瀵规柟鍗曞彿:</td>
+                <td style="font-size: 15px;text-align: left" colspan="2">瀵规柟鍗曞彿:</td>
                 <td style="font-size: 15px;text-align: left" colspan="3">璁㈠崟缂栧彿:<span>{{item.DeliveryDetail.orderDetail.orderId}}</span></td>
               </tr>
 
               <tr class="day-in" v-for="(items, index1) in item.DeliveryDetailList" :key="index1">
                 <td>{{items.order_number}}</td>
                 <td>{{items.buildingNumber}}</td>
-                <td colspan="2" style="font-size: 15px;font-weight: bold;">{{items.width}}x{{items.height}}</td>
+                <td colspan="1" style="font-size: 15px;font-weight: bold;">{{items.width}}x{{items.height}}</td>
                 <td>{{items.quantity}}</td>
                 <td>{{items.area}}</td>
                 <td>{{items.price}}</td>
@@ -158,22 +158,22 @@
                 <td colspan="2">{{items.processingNote}}</td>
               </tr>
               <tr class="day-in" >
-                <td style="font-size: 15px;" colspan="4">灏忚:</td>
+                <td style="font-size: 15px;" colspan="3">灏忚:</td>
                 <td>{{item.DeliveryDetail.quantity}}</td>
                 <td>{{item.DeliveryDetail.area}}</td>
                 <td></td>
                 <td>{{item.DeliveryDetail.money}}</td>
-                <td></td>
+                <td colspan="2"></td>
               </tr>
 
             </template>
             <tr class="day-in">
-              <td style="font-size: 15px;" colspan="4">鍚堣:</td>
+              <td style="font-size: 15px;" colspan="3">鍚堣:</td>
               <td>{{delivery.quantity}}</td>
               <td>{{delivery.area}}</td>
               <td></td>
               <td>{{delivery.money-otherMoneys-delivery.freight}}</td>
-              <td></td>
+              <td colspan="2"></td>
             </tr>
             <tr class="day-in">
               <td style="text-align: left;border-width: 0 1px 0 0; border-style: solid; border-color: #d3dce6" colspan="4">
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
index 53fba6d..985ba4c 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
@@ -133,7 +133,7 @@
     <table style="border-style: none;" >
       <thead>
       <tr class="title-s">
-        <th colspan="13">
+        <th colspan="9">
           <h1>
             {{ company.companyName }}
           </h1>
@@ -171,10 +171,10 @@
               <tr v-if="index===0">
                 <th style="width: 6%;font-weight: bold;">搴�</th>
                 <th style="width: 15%;font-weight: bold;" >妤煎眰缂栧彿</th>
-                <th style="width: 20%;font-weight: bold;" colspan="2">瀹絏楂�</th>
-                <th style="width: 10%;font-weight: bold;">鏁伴噺</th>
-                <th style="width: 10%;font-weight: bold;">闈㈢Н</th>
-                <th style="width: 17%;font-weight: bold;" colspan="3">鍔犲伐瑕佹眰</th>
+                <th style="width: 20%;font-weight: bold;" colspan="3">瀹絏楂�</th>
+                <th style="width: 12%;font-weight: bold;">鏁伴噺</th>
+                <th style="width: 12%;font-weight: bold;">闈㈢Н</th>
+                <th style="width: 17%;font-weight: bold;" colspan="2">鍔犲伐瑕佹眰</th>
               </tr>
 
 
@@ -188,14 +188,14 @@
               <tr class="day-in" v-for="(items, index1) in item.productDetail" :key="index1">
                 <td>{{items.orderNumber}}</td>
                 <td>{{items.buildingNumber}}</td>
-                <td colspan="2" style="font-size: 15px;font-weight: bold;" v-if="items.otherColumns?.S02">{{items.otherColumns?.S02}}</td>
-                <td colspan="2" style="font-size: 15px;font-weight: bold;" v-else>{{items.width}}x{{items.height}}</td>
+                <td colspan="3" style="font-size: 15px;font-weight: bold;" v-if="items.otherColumns?.S02">{{items.otherColumns?.S02}}</td>
+                <td colspan="3" style="font-size: 15px;font-weight: bold;" v-else>{{items.width}}x{{items.height}}</td>
                 <td>{{items.quantity}}</td>
                 <td>{{items.grossArea.toFixed(2)}}</td>
                 <td colspan="2">{{items.processingNote}}</td>
               </tr>
               <tr class="day-in" >
-                <td style="font-size: 15px;font-weight: bold;" colspan="4">灏忚:</td>
+                <td style="font-size: 15px;font-weight: bold;" colspan="5">灏忚:</td>
                 <td>{{getQuantity(item.productDetail)}}</td>
                 <td>{{getArea(item.productDetail)}}</td>
                 <td colspan="2"></td>
@@ -203,10 +203,10 @@
 
             </template>
             <tr class="day-in">
-              <td style="font-size: 15px;font-weight: bold;" colspan="4">鍚堣:</td>
+              <td style="font-size: 15px;font-weight: bold;" colspan="5">鍚堣:</td>
               <td>{{grossNum.quantity}}</td>
               <td>{{grossNum.grossArea}}</td>
-              <td colspan="3"></td>
+              <td colspan="2"></td>
             </tr>
             <tr class="day-in">
               <td style="text-align: left;border-width: 0 0 0 0; border-style: solid; border-color: #d3dce6" colspan="9">
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet5.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet5.vue
index d845417..98948e9 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet5.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet5.vue
@@ -140,7 +140,7 @@
     <table style="border-style: none;" >
       <thead>
       <tr class="title-s">
-        <th colspan="13">
+        <th colspan="9">
           <h1>
             {{ company.companyName }}
           </h1>
@@ -178,8 +178,8 @@
               <tr v-if="index===0">
                 <th style="width: 6%;font-weight: bold;">搴�</th>
                 <th style="width: 10%;font-weight: bold;" >妤煎眰缂栧彿</th>
-                <th style="width: 20%;font-weight: bold;" colspan="1">瀹�(寮ч暱)X楂�</th>
-                <th style="width: 20%;font-weight: bold;" colspan="2">鍒囧壊瀹�(寮ч暱)*楂�</th>
+                <th style="width: 15%;font-weight: bold;" colspan="1">瀹�(寮ч暱)X楂�</th>
+                <th style="width: 20%;font-weight: bold;" colspan="1">鍒囧壊瀹�(寮ч暱)*楂�</th>
                 <th style="width: 10%;font-weight: bold;">鏁伴噺</th>
                 <th style="width: 10%;font-weight: bold;">闈㈢Н</th>
                 <th style="width: 10%;font-weight: bold;">鍛ㄩ暱</th>
@@ -204,14 +204,14 @@
                   <td>{{items2.order_number}}/{{items2.technology_number}}</td>
                   <td>{{items2.building_number}}</td>
                   <td colspan="1" style="font-size: 15px;font-weight: bold;" >{{items2.width}}x{{items2.height}}</td>
-                  <td colspan="2" style="font-size: 15px;font-weight: bold;" >{{items2.child_width}}x{{items2.child_height}}/R={{items2.bend_radius}}</td>
+                  <td colspan="1" style="font-size: 15px;font-weight: bold;" >{{items2.child_width}}x{{items2.child_height}}/R={{items2.bend_radius}}</td>
                   <td>{{items2.quantity}}</td>
                   <td>{{items2.gross_area.toFixed(2)}}</td>
                   <td>{{parseFloat(items2.perimeter).toFixed(2)}}</td>
                   <td colspan="2">{{items2.processing_note}}</td>
                 </tr>
                 <tr class="day-in" >
-                  <td style="font-size: 15px;font-weight: bold;" colspan="5">灏忚:</td>
+                  <td style="font-size: 15px;font-weight: bold;" colspan="4">灏忚:</td>
                   <td>{{getQuantity(items.orderGlassDetails)}}</td>
                   <td>{{getArea(items.orderGlassDetails)}}</td>
                   <td>{{getPerimeter(items.orderGlassDetails)}}</td>
@@ -222,11 +222,11 @@
 
             </template>
             <tr class="day-in">
-              <td style="font-size: 15px;font-weight: bold;" colspan="5">鍚堣:</td>
+              <td style="font-size: 15px;font-weight: bold;" colspan="4">鍚堣:</td>
               <td>{{grossNum.quantity}}</td>
               <td>{{grossNum.grossArea}}</td>
               <td>{{grossNum.perimeter}}</td>
-              <td colspan="3"></td>
+              <td colspan="2"></td>
             </tr>
             <tr class="day-in">
               <td style="text-align: left;border-width: 0 0 0 0; border-style: solid; border-color: #d3dce6" colspan="9">
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java b/north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
index 5680d66..16256e3 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
@@ -178,9 +178,11 @@
     }
 
     @ApiOperation("鎵撳嵃娴佺▼鍗℃暟鎹煡璇㈡帴鍙�")
-    @PostMapping("/getSelectPrinting")
-    public Result getSelectPrinting(@RequestBody Map<String, Object> object) {
-        return Result.seccess(flowCardService.getSelectPrintingSv(object));
+    @PostMapping("/getSelectPrinting/{printMerge}")
+    public Result getSelectPrinting(
+            @PathVariable String printMerge,
+            @RequestBody Map<String, Object> object) {
+        return Result.seccess(flowCardService.getSelectPrintingSv(object,printMerge));
     }
 
     @ApiOperation("鎵撳嵃鏍囩鏁版嵁鏌ヨ鎺ュ彛")
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
index bcec497..d9a9fb0 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
@@ -72,7 +72,7 @@
 
     List<Map<String, String>> selectPrintMp(String orderId, FlowCard flowCard);
 
-    List<Map<String, String>> getPrimaryList(String processId, Integer technologyNumber);
+    List<Map<String, String>> getPrimaryList(String processId, String technologyNumber);
 
     List<Map<String, Object>> getDetailList(String processId, Integer technologyNumber);
 
@@ -111,4 +111,6 @@
     List<Map<String, String>> printFlowCardOrderSortMp(String orderId, FlowCard flowCard);
 
     Boolean printOrderSortMp(String processId, Integer orderNumber, Integer technologyNumber, Integer sort);
+
+    List<Map<String, String>> getPrimaryListMerge(String processId, String technologyNumber);
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
index 5e23331..4a4b507 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -233,7 +233,10 @@
             return null;
         }
     }
-    public Map<String, Object> getSelectPrintingSv(Map<String, Object> object) {
+    public Map<String, Object> getSelectPrintingSv(Map<String, Object> object, String printMerge) {
+        if (printMerge == null){
+            printMerge= "";
+        }
         Map<String, Object> map = new HashMap<>();
         List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
         List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
@@ -241,7 +244,13 @@
             for (FlowCard flowCard : flowCardList) {
                 Map<String, Object> itemmap = new HashMap<>();
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
-                itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), flowCard.getTechnologyNumber()));
+                //鏄惁浼犲叆鍚堝苟灞傛暟
+                if (printMerge.equals("")||printMerge.equals("null") ){
+                    itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber())));
+                }
+                else{
+                    itemmap.put("detail", flowCardMapper.getPrimaryListMerge(flowCard.getProcessId(), printMerge));
+                }
                 //娴佺▼鍗℃槑缁嗘暟鎹�
                 List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
                 //宸ヨ壓娴佺▼
diff --git a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
index f02d6e6..7ebb414 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -498,6 +498,17 @@
                  left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
                  left join sd.`order` as o on o.order_id = fc.order_id
                  left join sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and position(ogd.technology_number in #{technologyNumber})
+            GROUP BY order_id, order_number
+        ) as ogdc on ogdc.order_id=ogd.order_id and ogdc.order_number=ogd.order_number and ogdc.technology_number=ogd.technology_number
         where fc.process_id = #{processId}
           and fc.technology_number = #{technologyNumber}
         group by fc.process_id, fc.technology_number
@@ -827,4 +838,41 @@
           and order_number = #{orderNumber}
           and technology_number = #{technologyNumber}
     </update>
+
+    <select id="getPrimaryListMerge">
+        select o.customer_name,
+               o.project,
+               ogd.process,
+               od.edging_type,
+               ogdc.concatenated_glass_child as glass_child,
+               od.product_name,
+               o.processing_note,
+               fc.process_id,
+               SUM(od.quantity)                                as quantity,
+               round(SUM(ogd.total_area), 2)                   as gross_area,
+               sum(od.weight)                   as weight,
+               #{technologyNumber}                             as technologyNumber,
+               concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber
+        from flow_card as fc
+                 left join sd.order_glass_detail as ogd
+                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
+                              fc.technology_number = ogd.technology_number
+                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
+                 left join sd.`order` as o on o.order_id = fc.order_id
+                 left join sd.product as p on p.id=od.product_id
+                 left join (
+            select         ogd.order_id,
+                           ogd.order_number,
+                           ogd.technology_number,
+                           ogd.glass_child,
+                           GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+            from sd.order_glass_detail as ogd
+            where ogd.order_id = left(#{processId},10)
+              and position(ogd.technology_number in #{technologyNumber})
+            GROUP BY order_id, order_number
+        ) as ogdc on ogdc.order_id=ogd.order_id and ogdc.order_number=ogd.order_number and ogdc.technology_number=ogd.technology_number
+        where fc.process_id = #{processId}
+          and position(fc.technology_number in #{technologyNumber}) and ogdc.concatenated_glass_child is NOT null
+        group by fc.process_id, fc.technology_number
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0