From 67e1e623bdd4b59ac5f1bdb16363a66a511ebdaa Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期二, 20 五月 2025 12:31:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlatePlanMapper.xml                                  |   22 ++++++----
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireServiceImpl.java        |    8 ---
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlatePlanMapper.java                                       |    2 
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsMaterialProductGroupManagementServiceImpl.java       |    3 +
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateProcessStatMapper.java                                |    4 +
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelinePredictionServiceImpl.java                |    4 ++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateProcessStatMapper.xml                           |   17 +++++---
 aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsMaterialProductGroupManagementController.java |   18 ++++----
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java                        |    3 +
 9 files changed, 48 insertions(+), 33 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsMaterialProductGroupManagementController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsMaterialProductGroupManagementController.java
index 7e703c2..347af56 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsMaterialProductGroupManagementController.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsMaterialProductGroupManagementController.java
@@ -37,7 +37,7 @@
      * 鏌ヨ鐗╂枡浜у搧缁勬暟鎹鐞嗗垪琛�
      */
     @Operation(summary = "鏌ヨ鐗╂枡浜у搧缁勬暟鎹鐞嗗垪琛�", description = "鍒嗛〉鏌ヨ")
-//    @RequiresPermissions("materialProductGroup:management:list")
+    @RequiresPermissions("materialProductGroup:management:list")
     @GetMapping("/list")
     public TableDataInfo list(ApsMaterialProductGroupManagement apsGasPipelineMo)
     {
@@ -47,9 +47,9 @@
     }
 
 
-    @Operation(summary = "瀵煎叆鎵嬪伐姘斾綋棰勬祴鏁版嵁", description = "鎵归噺瀵煎叆")
-    @Log(title = "瀵煎叆鎵嬪伐姘斾綋棰勬祴鏁版嵁", businessType = BusinessType.IMPORT)
-//    @RequiresPermissions("materialProductGroup:mo:import")
+    @Operation(summary = "瀵煎叆浜у搧缁勬暟鎹�", description = "鎵归噺瀵煎叆")
+    @Log(title = "瀵煎叆浜у搧缁勬暟鎹�", businessType = BusinessType.IMPORT)
+    @RequiresPermissions("materialProductGroup:management:import")
     @PostMapping("/importData")
     public AjaxResult importData(MultipartFile file) throws Exception {
 
@@ -60,7 +60,7 @@
      * 瀵煎嚭鐗╂枡浜у搧缁勬暟鎹鐞嗗垪琛�
      */
     @Operation(summary = "瀵煎嚭鐗╂枡浜у搧缁勬暟鎹鐞嗗垪琛�", description = "瀵煎嚭")
-//    @RequiresPermissions("materialProductGroup:management:export")
+    @RequiresPermissions("materialProductGroup:management:export")
     @Log(title = "鐗╂枡浜у搧缁勬暟鎹鐞�", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     public void export(HttpServletResponse response, ApsMaterialProductGroupManagement apsMaterialProductGroupManagement)
@@ -85,7 +85,7 @@
      * 鏂板鐗╂枡浜у搧缁勬暟鎹鐞�
      */
     @Operation(summary = "鏂板鐗╂枡浜у搧缁勬暟鎹鐞�", description = "鍗曚釜鏂板")
-//    @RequiresPermissions("materialProductGroup:management:add")
+    @RequiresPermissions("materialProductGroup:management:add")
     @Log(title = "鐗╂枡浜у搧缁勬暟鎹鐞�", businessType = BusinessType.INSERT)
     @PostMapping
     public AjaxResult add(@RequestBody ApsMaterialProductGroupManagement apsMaterialProductGroupManagement)
@@ -97,8 +97,8 @@
      * 淇敼鐗╂枡浜у搧缁勬暟鎹鐞�
      */
     @Operation(summary = "淇敼鐗╂枡浜у搧缁勬暟鎹鐞�", description = "鍗曚釜淇敼")
-//    @RequiresPermissions("materialProductGroup:management:edit")
-    @Log(title = "鐗╂枡浜у搧缁勬暟鎹鐞�", businessType = BusinessType.UPDATE)
+    @RequiresPermissions("materialProductGroup:management:edit")
+    @Log(title = "淇敼鐗╂枡浜у搧缁勬暟鎹鐞�", businessType = BusinessType.UPDATE)
     @PutMapping
     public AjaxResult edit(@RequestBody ApsMaterialProductGroupManagement apsMaterialProductGroupManagement)
     {
@@ -109,7 +109,7 @@
      * 鍒犻櫎鐗╂枡浜у搧缁勬暟鎹鐞�
      */
     @Operation(summary = "鍒犻櫎鐗╂枡浜у搧缁勬暟鎹鐞�", description = "鎵归噺鍒犻櫎")
-//    @RequiresPermissions("materialProductGroup:management:remove")
+    @RequiresPermissions("materialProductGroup:management:remove")
     @Log(title = "鐗╂枡浜у搧缁勬暟鎹鐞�", businessType = BusinessType.DELETE)
 	@DeleteMapping("/{ids}")
     public AjaxResult remove(@PathVariable Long[] ids)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlatePlanMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlatePlanMapper.java
index ad9cd0a..731c0e3 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlatePlanMapper.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlatePlanMapper.java
@@ -74,7 +74,7 @@
      */
     public List<ApsPlatePlan> selectPlateRedundantOrderList(ApsPlatePlan apsPlatePlan);
 
-    List<ApsPlatePlan> selectPlatePlanByPlantMajor(String plant,String professionalAffiliation);
+    List<ApsPlatePlan> selectPlatePlanByPlantMajor(String plant);
 
     /**
      * 鑾峰彇涓�鏉℃湭鍖归厤鐨勫瓙璁″垝
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateProcessStatMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateProcessStatMapper.java
index 9e5ab42..5f3df07 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateProcessStatMapper.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateProcessStatMapper.java
@@ -60,7 +60,9 @@
      * @return 缁撴灉
      */
     public int deleteApsPlateProcessStatByIds(String[] ids);
-    /**缁熻涓存椂鏁版嵁*/
+    /**缁熻涓存椂鏁版嵁
+     * 鎵归噺璁剧疆鐨勮鍒掑畬宸ユ棩鏈�> 瀵煎叆鐨勯渶姹傛棩鏈�>  宸ュ崟鑷韩鐨勮鍒掑畬宸ユ棩鏈�
+     * */
     List<ApsPlateProcessStat> queryTempStat();
 
     /**
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java
index c392f97..41d23c6 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java
@@ -118,6 +118,9 @@
             /*鏁版嵁鍒椾粠1寮�濮�*/
             for (int i = 1; i <= rows; i++) {
                 Row row = sheet.getRow(i);
+                if (row.getCell(0) == null){
+                    continue;
+                }
                 String mo = row.getCell(0).getStringCellValue();
                 if (StringUtils.isEmpty(mo)){
                     continue;
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelinePredictionServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelinePredictionServiceImpl.java
index 7a85b16..cf3d710 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelinePredictionServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelinePredictionServiceImpl.java
@@ -121,6 +121,10 @@
             /*鏁版嵁鍒椾粠1寮�濮�*/
             for (int i = 1; i <= rows; i++) {
                 Row row = sheet.getRow(i);
+                if (row.getCell(0) == null){
+                    continue;
+                }
+
                 String materialCode = row.getCell(0).getStringCellValue();
                 if (StringUtils.isEmpty(materialCode)){
                     continue;
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsMaterialProductGroupManagementServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsMaterialProductGroupManagementServiceImpl.java
index 18cb143..84aab1d 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsMaterialProductGroupManagementServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsMaterialProductGroupManagementServiceImpl.java
@@ -122,6 +122,9 @@
             /*鏁版嵁鍒椾粠1寮�濮�*/
             for (int i = 1; i <= rows; i++) {
                 Row row = sheet.getRow(i);
+                if (row.getCell(0) == null) {
+                    continue;
+                }
                 String materialCode = row.getCell(0).getStringCellValue();
                 if (StringUtils.isEmpty(materialCode)){
                     continue;
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireServiceImpl.java
index 07c1f47..e6b8cd9 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireServiceImpl.java
@@ -172,10 +172,8 @@
         requireBatchService.initRequireBatch();
         /*瀹氫箟宸ュ巶涓哄崡閫� */
         String plantCode="FORTUNA";
-        /*瀹氫箟涓诲崟绫诲瀷涓洪挘閲戜富鍗�*/
-        String mainOrderType = "main";
         /*鑾峰彇閽i噾涓诲崟淇℃伅*/
-        List<ApsPlatePlan> mainPlans = platePlanMapper.selectPlatePlanByPlantMajor(plantCode,mainOrderType);
+        List<ApsPlatePlan> mainPlans = platePlanMapper.selectPlatePlanByPlantMajor(plantCode);
         Hashtable<String, ApsMaterialStorageManagement> usedStorage = new Hashtable<>();
         /*鍐呭瓨涓瓨鍌ㄥ瓙浠跺伐鍗�*/
         Hashtable<String, List<ApsPlatePlan>> subPlans = new Hashtable<>();
@@ -183,13 +181,9 @@
         for (ApsPlatePlan mainPlan : mainPlans) {
             String itemNumber = mainPlan.getItemNumber();
             /*鏍规嵁鏂欏彿 鑾峰彇BOM Header */
-
-
             List<ApsPlateStandardRequire> requiresList=new ArrayList<>();
             List<ApsPlateStandardRequireBomStockDetail> stockDetailsList=new ArrayList<>();
             List<ApsPlateStandardRequireBomOrderDetail> orderDetailsList=new ArrayList<>();
-
-
             log.info("寮�濮嬬敓鎴愰渶姹傦細宸ュ崟鍙凤細"+mainPlan.getDocumentNumber());
             /*褰撳墠Bom鑺傜偣澶勭悊瀹屾垚鍚庯紝澶勭悊涓嬬骇BOM*/
             getBomRequires(plantCode, "0","0",itemNumber,BigDecimal.ONE, batchNum, null
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlatePlanMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlatePlanMapper.xml
index 3a38efa..c075b48 100644
--- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlatePlanMapper.xml
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlatePlanMapper.xml
@@ -277,15 +277,19 @@
     </update>
 
     <select id="selectPlatePlanByPlantMajor" parameterType="com.aps.core.domain.ApsPlate.ApsPlatePlan" resultMap="ApsPlatePlanResult">
-        select  id,document_number,main_part_number,item_number,plant,professional_affiliation,production_quantity,require_id,
-        unmatched_quantity,version, production_base,plan_end_day,order_create_time,low_order_code
-        from aps_plate_plan
-        <where>
-            <if test="plant != null "> and plant = #{plant} </if>
-            <if test="professionalAffiliation != null "> and professional_affiliation = 'main' </if>
-              and del_flag='0'
-        </where>
-        order by document_number asc,id asc
+        with rd as (
+            select doc_no,require_date   from aps_plate_require_date where del_flag=0
+        )
+        select
+            app.id,app.document_number,app.main_part_number,app.item_number,app.plant,app.professional_affiliation,app.production_quantity,app.require_id,
+            app.unmatched_quantity,app.version, app.production_base,app.order_create_time,app.low_order_code,
+            app.plan_end_day as orign_end_day,
+            COALESCE(rd.require_date,app.plan_end_day) as plan_end_day
+        from aps_plate_plan as  app
+        left join rd  on app.document_number=rd.doc_no
+        where app.del_flag='0'  and app.professional_affiliation = 'main'
+        <if test="plant != null "> and plant = #{plant} </if>
+        order by document_number ,id
     </select>
 
     <select id="selectUnMatchPlateSubPlan" parameterType="com.aps.core.domain.ApsPlate.ApsPlatePlan" resultMap="ApsPlatePlanResult">
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateProcessStatMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateProcessStatMapper.xml
index b25cfcc..a7f7adc 100644
--- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateProcessStatMapper.xml
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateProcessStatMapper.xml
@@ -133,8 +133,10 @@
     </delete>
 
     <select id="queryTempStat" resultMap="ApsPlateProcessStatResult">
+        with    dt as ( select doc_no,require_date   from aps_plate_require_date where del_flag=0),
+                rd as ( select doc_no,plan_end_day   from aps_plate_standard_require_order_end_day where del_flag=0)
         select row_number() over (partition by rt.work_order_no order by rt.process_number desc ) as num,
-                rt.work_order_no,
+               rt.work_order_no,
                rt.process_name,
                cast(rt.process_number as numeric(18, 2))                                          as route_process_number,
                cast(pl.process_number as numeric(18, 2))                                          as current_process_number,
@@ -144,13 +146,16 @@
                rt.process_plan_start_day,
                rt.process_plan_end_day,
                pl.plan_end_day,
-                COALESCE(rd.plan_end_day,pl.plan_end_day)                                         as order_plan_end_day
+               rd.plan_end_day as modify_day,
+               dt.require_date,
+               COALESCE(rd.plan_end_day, COALESCE(dt.require_date, pl.plan_end_day)  )            as order_plan_end_day
         from aps_plate_plan as pl
                  left join aps_process_route as rt on pl.document_number = rt.work_order_no
-                 left join aps_plate_standard_require_order_end_day as rd on pl.document_number = rd.doc_no  and rd.del_flag =0
-        where pl.document_number is not null and rt.work_order_no is not null and
-              (pl.plan_end_day is not null or rd.plan_end_day is not null )
-        order by rt.work_order_no asc, rt.process_number desc
+                 left join rd on    pl.document_number = rd.doc_no
+                 left join dt on    pl.document_number=dt.doc_no
+        where pl.document_number is not null
+          and rt.work_order_no is not null
+        order by rt.work_order_no, rt.process_number desc
     </select>
     <update id="removeOtherStat" parameterType="String">
         delete from aps_plate_process_stat where batch_number != #{batchNumber}

--
Gitblit v1.9.3