From 7097f55c291cc62ab29d9f52caef80f605247e40 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期四, 08 五月 2025 22:01:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 aps-modules/aps-gen/src/main/resources/vm/java/domain.java.vm                                              |    4 
 aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java |   14 ++-
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml                     |   58 +++++++++++++-
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanDate.java                          |   31 +++++++
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateOrderPlanManagerMapper.java                 |    8 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java      |   28 +++++--
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanRequireDate.java                   |   32 ++++++++
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateOrderPlanManagerService.java              |    3 
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanManager.java                       |   20 ++++
 9 files changed, 176 insertions(+), 22 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java
index e6bc32c..f878ca4 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java
@@ -1,15 +1,14 @@
 package com.aps.core.controller.mainPlan;
 
 import com.aps.common.core.web.controller.BaseController;
+import com.aps.common.core.web.domain.AjaxResult;
 import com.aps.common.core.web.page.TableDataInfo;
-import com.aps.common.security.annotation.RequiresPermissions;
+import com.aps.core.domain.ApsPlateOrderPlanDate;
 import com.aps.core.domain.ApsPlateOrderPlanManager;
 import com.aps.core.domain.ApsPlateStandardRequire;
 import com.aps.core.service.IApsPlateOrderPlanManagerService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
 
@@ -49,4 +48,11 @@
         return list;
     }
 
+    @PutMapping("/planDate")
+    public AjaxResult list(@RequestBody ApsPlateOrderPlanDate apsPlateOrderPlanDate)
+    {
+        iapPlateOrderPlanManagerService.updatePlanDate(apsPlateOrderPlanDate);
+        return AjaxResult.success();
+    }
+
 }
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanDate.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanDate.java
new file mode 100644
index 0000000..5908bd2
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanDate.java
@@ -0,0 +1,31 @@
+package com.aps.core.domain;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.sql.Timestamp;
+import java.util.List;
+
+/**
+ * 閽i噾宸ュ崟璁″垝鏃ユ湡鎵归噺璁剧疆鍙傛暟
+ *
+ * @author sfd
+ * &#064;date  2025-05-08
+ */
+@Data
+public class ApsPlateOrderPlanDate
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 鏄惁鑷畾涔�
+     */
+    private Boolean isCustom;
+
+    /** 宸ュ崟ID鍒楄〃 */
+    private List<Long> planIds;
+
+    /** 鑷畾涔夋棩鏈� */
+    private Timestamp customDate;
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanManager.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanManager.java
index d88b2d4..c19ae34 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanManager.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanManager.java
@@ -9,16 +9,20 @@
 import java.util.Date;
 
 /**
- * 鏍囧噯宸ヨ壓璺嚎Header瀵硅薄 aps_standard_process_route_header
+ * 閽i噾宸ュ崟璁″垝绠$悊
  * 
- * @author zhl
- * &#064;date  2025-05-06
+ * @author sfd
+ * &#064;date  2025-05-08
  */
 @Data
 public class ApsPlateOrderPlanManager
 {
     @Serial
     private static final long serialVersionUID = 1L;
+
+    /** 宸ュ崟ID */
+    @Excel(name = "宸ュ崟ID")
+    private Long id;
 
     /** 闇�姹侷D */
     @Excel(name = "闇�姹侷D")
@@ -86,4 +90,14 @@
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "宸ュ崟鍒涘缓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date orderCreateTime;
+
+    /** 闇�姹傝鍒掑紑宸ユ棩 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "闇�姹傝鍒掑紑宸ユ棩", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date startDay;
+
+    /** 闇�姹傝鍒掑紑瀹屾棩 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "闇�姹傝鍒掑紑瀹屾棩", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date completeDay;
 }
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanRequireDate.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanRequireDate.java
new file mode 100644
index 0000000..29774df
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateOrderPlanRequireDate.java
@@ -0,0 +1,32 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.web.domain.BaseEntity;
+import lombok.Data;
+
+import java.io.Serial;
+import java.sql.Timestamp;
+import java.util.List;
+
+/**
+ * 閽i噾宸ュ崟璁″垝闇�姹傛棩鏈�
+ *
+ * @author sfd
+ * &#064;date  2025-05-08
+ */
+@Data
+public class ApsPlateOrderPlanRequireDate extends BaseEntity
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 璁″垝ID
+     */
+    private Long id;
+
+    /** 鏈�鏃╁紑宸ユ棩 */
+    private Timestamp start;
+
+    /** 鏈�鏃╁畬宸ユ棩 */
+    private Timestamp end;
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateOrderPlanManagerMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateOrderPlanManagerMapper.java
index 8a8be60..a37dd91 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateOrderPlanManagerMapper.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateOrderPlanManagerMapper.java
@@ -1,6 +1,8 @@
 package com.aps.core.mapper;
 
+import com.aps.core.domain.ApsPlateOrderPlanDate;
 import com.aps.core.domain.ApsPlateOrderPlanManager;
+import com.aps.core.domain.ApsPlateOrderPlanRequireDate;
 import com.aps.core.domain.ApsPlateStandardRequire;
 import org.apache.ibatis.annotations.Mapper;
 
@@ -31,4 +33,10 @@
      * @return 鏌ヨ閽i噾宸ュ崟闇�姹�
      */
     List<ApsPlateStandardRequire> selectApsPlanStandardRequire(String workOrderNo);
+
+    List<ApsPlateOrderPlanRequireDate> selectPlanRequireIds(List<Long> planIds);
+
+    void updatePlanDateByBatch(ApsPlateOrderPlanRequireDate planRequireDate);
+
+    void updatePlanDateByCustom(ApsPlateOrderPlanDate apsPlateOrderPlanDate);
 }
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateOrderPlanManagerService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateOrderPlanManagerService.java
index 32da57d..afb5460 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateOrderPlanManagerService.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateOrderPlanManagerService.java
@@ -1,5 +1,6 @@
 package com.aps.core.service;
 
+import com.aps.core.domain.ApsPlateOrderPlanDate;
 import com.aps.core.domain.ApsPlateOrderPlanManager;
 import com.aps.core.domain.ApsPlateStandardRequire;
 
@@ -17,4 +18,6 @@
     List<ApsPlateOrderPlanManager> selectApsPlanOrderManager(ApsPlateOrderPlanManager apsPlateOrderPlanManager);
 
     List<ApsPlateStandardRequire> selectApsPlanStandardRequire(String workOrderNo);
+
+    void updatePlanDate(ApsPlateOrderPlanDate apsPlateOrderPlanDate);
 }
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java
index ada802f..db7202a 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java
@@ -1,29 +1,26 @@
 package com.aps.core.service.impl;
 
-import com.aps.common.core.utils.DateUtils;
-import com.aps.common.core.utils.uuid.IdUtils;
 import com.aps.common.security.utils.SecurityUtils;
-import com.aps.core.domain.ApsPlant;
+import com.aps.core.domain.ApsPlateOrderPlanDate;
 import com.aps.core.domain.ApsPlateOrderPlanManager;
+import com.aps.core.domain.ApsPlateOrderPlanRequireDate;
 import com.aps.core.domain.ApsPlateStandardRequire;
-import com.aps.core.mapper.ApsPlantMapper;
 import com.aps.core.mapper.ApsPlateOrderPlanManagerMapper;
-import com.aps.core.service.IApsPlantService;
 import com.aps.core.service.IApsPlateOrderPlanManagerService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
 /**
  * 閽i噾宸ュ崟璁″垝绠$悊鎺ュ彛 Service涓氬姟灞傚鐞�
- * 
+ *
  * @author ruoyi
  * @date 2025-04-14
  */
 @Service
-public class ApsPlateOrderPlanManagerServiceImpl implements IApsPlateOrderPlanManagerService
-{
+public class ApsPlateOrderPlanManagerServiceImpl implements IApsPlateOrderPlanManagerService {
     @Autowired
     private ApsPlateOrderPlanManagerMapper apsPlateOrderPlanManagerMapper;
 
@@ -42,4 +39,19 @@
     public List<ApsPlateStandardRequire> selectApsPlanStandardRequire(String workOrderNo) {
         return apsPlateOrderPlanManagerMapper.selectApsPlanStandardRequire(workOrderNo);
     }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void updatePlanDate(ApsPlateOrderPlanDate apsPlateOrderPlanDate) {
+        if (apsPlateOrderPlanDate.getIsCustom()){
+            apsPlateOrderPlanManagerMapper.updatePlanDateByCustom(apsPlateOrderPlanDate);
+        }else{
+            List<ApsPlateOrderPlanRequireDate> planRequireDates = apsPlateOrderPlanManagerMapper.selectPlanRequireIds(apsPlateOrderPlanDate.getPlanIds());
+            planRequireDates.forEach(planRequireDate -> {
+                planRequireDate.setUpdateBy(SecurityUtils.getUsername());
+                apsPlateOrderPlanManagerMapper.updatePlanDateByBatch(planRequireDate);
+            });
+        }
+
+    }
 }
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
index ab86a94..a19381d 100644
--- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
@@ -5,6 +5,7 @@
 <mapper namespace="com.aps.core.mapper.ApsPlateOrderPlanManagerMapper">
     
     <resultMap type="ApsPlateOrderPlanManager" id="ApsPlateOrderPlanManagerResult">
+        <result property="id"    column="id"    />
         <result property="require_id"    column="requireId"    />
         <result property="requireTrackId"    column="require_track_id"    />
         <result property="workOrderNo"    column="doc_no"    />
@@ -19,7 +20,9 @@
         <result property="planStartDay"    column="plan_start_day"    />
         <result property="planEndDay"    column="plan_end_day"    />
         <result property="unmatchedQuantity"    column="unmatched_quantity"    />
-        <result property="hasDelayRisk"    column="has_risk"    />
+        <result property="hasDelayRisk"    column="has_delay_risk"    />
+        <result property="startDate"    column="start_date"    />
+        <result property="completeDate"    column="complete_date"    />
     </resultMap>
 
     <select id="selectApsPlanOrderManager" parameterType="ApsPlateOrderPlanManager" resultMap="ApsPlateOrderPlanManagerResult">
@@ -38,21 +41,25 @@
             plan.plan_start_day,
             plan.plan_end_day,
             plan.unmatched_quantity,
-            plan.has_risk
+            require.has_delay_risk,
+            plan.id,
+            require.start_date,
+            require.complete_date
         from aps_plate_standard_require_bom_order_detail detail
+            left join aps_plate_standard_require require on on detail.require_id = require.id
             left join aps_plate_plan plan on detail.doc_no = plan.document_number
         <where>  
             <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
             <if test="requireId != null  and requireId != ''"> and detail.require_id = #{requireId}</if>
             <if test="mainPartNumber != null  and mainPartNumber != ''"> and plan.main_part_number = #{mainPartNumber}</if>
-            <if test="hasDelayRisk != null  and hasDelayRisk != ''"> and plan.has_risk = #{hasDelayRisk}</if>
+            <if test="hasDelayRisk != null  and hasDelayRisk != ''"> and require.has_delay_risk = #{hasDelayRisk}</if>
         </where>
     </select>
 
 
     <resultMap type="ApsPlateStandardRequire" id="ApsPlateStandardRequireResult">
         <result property="id"    column="id"    />
-        <result property="requireId"    column="require_id"    />
+        <result property="requireTrackId"    column="require_track_id"    />
         <result property="bomLineId"    column="bom_line_id"    />
         <result property="bomLineCode"    column="bom_line_code"    />
         <result property="bomLineLevel"    column="bom_line_level"    />
@@ -81,7 +88,7 @@
 
     <sql id="selectApsPlateStandardRequireVo">
         select require.id,
-               require.require_id,
+               require.require_track_id,
                require.bom_line_id,
                require.bom_line_code,
                require.bom_line_level,
@@ -118,4 +125,45 @@
         </where>
     </select>
 
+    <resultMap type="ApsPlateOrderPlanRequireDate" id="selectPlanRequireIdsResult">
+        <result property="id"    column="id"    />
+        <result property="start"    column="start_date"    />
+        <result property="end"    column="end_date"    />
+    </resultMap>
+
+    <select id="selectPlanRequireIds" parameterType="String" resultMap="selectPlanRequireIdsResult">
+        select
+            plan.id,
+            min(require.start_date) as start_date,
+            min(require.complete_date) as end_date
+        from aps_plate_standard_require_bom_order_detail detail
+            left join aps_plate_standard_require require on on detail.require_id = require.id
+            left join aps_plate_plan plan on detail.doc_no = plan.document_number
+        where plan.id in
+        <foreach collection="planIds" item="planId" open="(" separator="," close=")">
+            #{planId}
+        </foreach>
+        group by plan.id
+    </select>
+
+    <update id="updatePlanDateByBatch" parameterType="ApsPlateOrderPlanRequireDate">
+        update aps_plate_plan set
+          plan_start_day = #{planRequireDate.start},
+          plan_end_day = #{planRequireDate.end},
+          update_by = #{planRequireDate.updateBy},
+          update_time = now()
+        where id =  #{planRequireDate.id}
+    </update>
+
+    <update id="updatePlanDateByCustom" parameterType="ApsPlateOrderPlanDate">
+        update aps_plate_plan set
+          plan_end_day = #{planRequireDate.customDate},
+          update_by = #{planRequireDate.updateBy},
+          update_time = now()
+        where id in
+        <foreach collection="planRequireDate.planIds" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </update>
+
 </mapper>
\ No newline at end of file
diff --git a/aps-modules/aps-gen/src/main/resources/vm/java/domain.java.vm b/aps-modules/aps-gen/src/main/resources/vm/java/domain.java.vm
index 387771f..6032704 100644
--- a/aps-modules/aps-gen/src/main/resources/vm/java/domain.java.vm
+++ b/aps-modules/aps-gen/src/main/resources/vm/java/domain.java.vm
@@ -25,7 +25,7 @@
 #elseif($table.tree)
 #set($Entity="TreeEntity")
 #end
-@ApiModel("${functionName}瀹炰綋绫�")
+@Schema(description = "${functionName}瀹炰綋绫�")
 public class ${ClassName} extends ${Entity}
 {
     private static final long serialVersionUID = 1L;
@@ -49,7 +49,7 @@
     @Excel(name = "${comment}")
 #end
 #end
-    @ApiModelProperty("$column.columnComment")
+    @Schema(description = "$column.columnComment")
     private $column.javaType $column.javaField;
 
 #end

--
Gitblit v1.9.3