From 46ebb4f42bf48f33375cdc7f364f512c0c595110 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期二, 13 五月 2025 14:43:25 +0800
Subject: [PATCH] 钣金工单计划管理 查询添加删除标记,添加排产计划管理

---
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanCycle.java                                    |  137 ++++++++++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml                      |   18 
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlanManagementService.java                      |   66 +++++
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanManagement.java                               |  108 ++++++++
 aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateOrderPlanManagerController.java |    2 
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanCycleMapper.java                              |   21 +
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanManagementMapper.java                         |   64 ++++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanManagementServiceImpl.java              |  110 ++++++++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanManagementMapper.xml                             |   87 ++++++
 aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlanManagementController.java                 |  122 +++++++++
 10 files changed, 727 insertions(+), 8 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlanManagementController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlanManagementController.java
new file mode 100644
index 0000000..9b1c855
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlanManagementController.java
@@ -0,0 +1,122 @@
+package com.aps.core.controller;
+
+import com.aps.common.core.utils.poi.ExcelUtil;
+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.log.annotation.Log;
+import com.aps.common.log.enums.BusinessType;
+import com.aps.common.security.annotation.RequiresPermissions;
+import com.aps.core.domain.ApsPlanCycle;
+import com.aps.core.domain.ApsPlanManagement;
+import com.aps.core.service.IApsPlanManagementService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 璁″垝绠$悊Controller
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+
+@Tag(name = "璁″垝绠$悊", description = "璁″垝绠$悊鎺ュ彛")
+@RestController
+@RequestMapping("/management")
+public class ApsPlanManagementController extends BaseController
+{
+    @Autowired
+    private IApsPlanManagementService apsPlanManagementService;
+
+    /**
+     * 鏌ヨ璁″垝绠$悊鍒楄〃
+     */
+    @Operation(summary = "鏌ヨ璁″垝绠$悊鍒楄〃", description = "鍒嗛〉鏌ヨ")
+    @RequiresPermissions("aps:management:list")
+    @GetMapping("/list")
+    public TableDataInfo list(ApsPlanManagement apsPlanManagement)
+    {
+        startPage();
+        List<ApsPlanManagement> list = apsPlanManagementService.selectApsPlanManagementList(apsPlanManagement);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭璁″垝绠$悊鍒楄〃
+     */
+    @Operation(summary = "瀵煎嚭璁″垝绠$悊鍒楄〃", description = "瀵煎嚭")
+    @RequiresPermissions("aps:management:export")
+    @Log(title = "璁″垝绠$悊", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ApsPlanManagement apsPlanManagement)
+    {
+        List<ApsPlanManagement> list = apsPlanManagementService.selectApsPlanManagementList(apsPlanManagement);
+        ExcelUtil<ApsPlanManagement> util = new ExcelUtil<ApsPlanManagement>(ApsPlanManagement.class);
+        util.exportExcel(response, list, "璁″垝绠$悊鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇璁″垝绠$悊璇︾粏淇℃伅
+     */
+    @Operation(summary = "鑾峰彇璁″垝绠$悊璇︾粏淇℃伅", description = "鏍规嵁id鑾峰彇")
+    @RequiresPermissions("aps:management:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(apsPlanManagementService.selectApsPlanManagementById(id));
+    }
+
+    /**
+     * 鏂板璁″垝绠$悊
+     */
+    @Operation(summary = "鏂板璁″垝绠$悊", description = "鍗曚釜鏂板")
+    @RequiresPermissions("aps:management:add")
+    @Log(title = "璁″垝绠$悊", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ApsPlanManagement apsPlanManagement)
+    {
+        return toAjax(apsPlanManagementService.insertApsPlanManagement(apsPlanManagement));
+    }
+
+    /**
+     * 淇敼璁″垝鍛ㄦ湡绠$悊
+     */
+    @Operation(summary = "淇敼璁″垝鍛ㄦ湡绠$悊", description = "淇敼璁″垝鍛ㄦ湡绠$悊")
+    @RequiresPermissions("aps:planCycle:edit")
+    @Log(title = "淇敼璁″垝鍛ㄦ湡绠$悊", businessType = BusinessType.UPDATE)
+    @PutMapping("cycle")
+    public AjaxResult edit(@RequestBody ApsPlanCycle apsPlanCycle)
+    {
+        apsPlanManagementService.updateApsPlanCycle(apsPlanCycle);
+        return toAjax(true);
+    }
+
+    /**
+     * 淇敼璁″垝绠$悊
+     */
+    @Operation(summary = "淇敼璁″垝绠$悊", description = "鍗曚釜淇敼")
+    @RequiresPermissions("aps:management:edit")
+    @Log(title = "璁″垝绠$悊", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ApsPlanManagement apsPlanManagement)
+    {
+        return toAjax(apsPlanManagementService.updateApsPlanManagement(apsPlanManagement));
+    }
+
+    /**
+     * 鍒犻櫎璁″垝绠$悊
+     */
+    @Operation(summary = "鍒犻櫎璁″垝绠$悊", description = "鎵归噺鍒犻櫎")
+    @RequiresPermissions("aps:management:remove")
+    @Log(title = "璁″垝绠$悊", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(apsPlanManagementService.deleteApsPlanManagementByIds(ids));
+    }
+}
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/ApsPlateOrderPlanManagerController.java
similarity index 96%
rename from aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java
rename to aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateOrderPlanManagerController.java
index 2a85042..1721706 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/ApsPlateOrderPlanManagerController.java
@@ -21,7 +21,7 @@
  */
 @RestController
 @RequestMapping("/ApsPlatOrderPlanManager")
-public class ApsPlatOrderPlanManagerController extends BaseController
+public class ApsPlateOrderPlanManagerController extends BaseController
 {
     @Autowired
     private IApsPlateOrderPlanManagerService iapPlateOrderPlanManagerService;
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanCycle.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanCycle.java
new file mode 100644
index 0000000..6b6e5d0
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanCycle.java
@@ -0,0 +1,137 @@
+package com.aps.core.domain;
+
+import java.util.Date;
+
+import com.aps.common.core.web.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.aps.common.core.annotation.Excel;
+import org.springframework.data.annotation.Id;
+
+/**
+ * 璁″垝鎺掍骇鍛ㄦ湡绠$悊瀵硅薄 aps_plan_cycle
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+@TableName("aps_plan_cycle")
+@Schema(description = "璁″垝鎺掍骇鍛ㄦ湡绠$悊瀹炰綋绫�")
+public class ApsPlanCycle extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+
+    @Id
+    private Long id;
+
+    /** 鍛ㄦ湡绫诲瀷 鏃�/鏈� */
+    @Excel(name = "鍛ㄦ湡绫诲瀷 鏃�/鏈�")
+    @Schema(description = "鍛ㄦ湡绫诲瀷 鏃�/鏈�")
+    private String type;
+
+    /** 婊氬姩鏂瑰紡 */
+    @Excel(name = "婊氬姩鏂瑰紡")
+    @Schema(description = "婊氬姩鏂瑰紡")
+    private String rollType;
+
+    /** 璁″垝鍛ㄦ湡 */
+    @Excel(name = "璁″垝鍛ㄦ湡")
+    @Schema(description = "璁″垝鍛ㄦ湡")
+    private String period;
+
+    /** 鍛ㄦ湡寮�濮� */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "鍛ㄦ湡寮�濮�", width = 30, dateFormat = "yyyy-MM-dd")
+    @Schema(description = "鍛ㄦ湡寮�濮�")
+    private Date periodStart;
+
+    /** 鍛ㄦ湡缁撴潫 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "鍛ㄦ湡缁撴潫", width = 30, dateFormat = "yyyy-MM-dd")
+    @Schema(description = "鍛ㄦ湡缁撴潫")
+    private Date periodEnd;
+
+    /** 璁″垝ID */
+    @Excel(name = "璁″垝ID")
+    @Schema(description = "璁″垝ID")
+    private Long planId;
+
+    public void setType(String type) 
+    {
+        this.type = type;
+    }
+
+    public String getType() 
+    {
+        return type;
+    }
+
+    public void setRollType(String rollType) 
+    {
+        this.rollType = rollType;
+    }
+
+    public String getRollType() 
+    {
+        return rollType;
+    }
+
+    public void setPeriod(String period) 
+    {
+        this.period = period;
+    }
+
+    public String getPeriod() 
+    {
+        return period;
+    }
+
+    public void setPeriodStart(Date periodStart) 
+    {
+        this.periodStart = periodStart;
+    }
+
+    public Date getPeriodStart() 
+    {
+        return periodStart;
+    }
+
+    public void setPeriodEnd(Date periodEnd) 
+    {
+        this.periodEnd = periodEnd;
+    }
+
+    public Date getPeriodEnd() 
+    {
+        return periodEnd;
+    }
+
+    public void setPlanId(Long planId) 
+    {
+        this.planId = planId;
+    }
+
+    public Long getPlanId() 
+    {
+        return planId;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("type", getType())
+            .append("rollType", getRollType())
+            .append("period", getPeriod())
+            .append("periodStart", getPeriodStart())
+            .append("periodEnd", getPeriodEnd())
+            .append("planId", getPlanId())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .toString();
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanManagement.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanManagement.java
new file mode 100644
index 0000000..8bacc3b
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanManagement.java
@@ -0,0 +1,108 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.web.domain.BaseEntity;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.aps.common.core.annotation.Excel;
+
+/**
+ * 璁″垝绠$悊瀵硅薄 aps_plan_management
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+@Schema(description = "璁″垝绠$悊瀹炰綋绫�")
+public class ApsPlanManagement extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 璁″垝ID */
+    @Schema(description = "璁″垝ID")
+    private Long id;
+
+    /** 璁″垝鍚嶇О */
+    @Excel(name = "璁″垝鍚嶇О")
+    @Schema(description = "璁″垝鍚嶇О")
+    private String name;
+
+    /** 璁″垝绫诲瀷 0:瑁呴厤鍒嗚В璁″垝锛�1:涓昏鍒� */
+    @Excel(name = "璁″垝绫诲瀷 0:瑁呴厤鍒嗚В璁″垝锛�1:涓昏鍒�")
+    @Schema(description = "璁″垝绫诲瀷 0:瑁呴厤鍒嗚В璁″垝锛�1:涓昏鍒�")
+    private String type;
+
+    /** 璁″垝鎺掍骇鍖哄煙  澶氶�夛紝鏋氫妇 */
+    @Excel(name = "璁″垝鎺掍骇鍖哄煙  澶氶�夛紝鏋氫妇")
+    @Schema(description = "璁″垝鎺掍骇鍖哄煙  澶氶�夛紝鏋氫妇")
+    private String area;
+
+    /** 璁″垝鎺掍骇瑙勫垯 */
+    @Excel(name = "璁″垝鎺掍骇瑙勫垯")
+    @Schema(description = "璁″垝鎺掍骇瑙勫垯")
+    private String rule;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+
+    public void setName(String name) 
+    {
+        this.name = name;
+    }
+
+    public String getName() 
+    {
+        return name;
+    }
+
+    public void setType(String type) 
+    {
+        this.type = type;
+    }
+
+    public String getType() 
+    {
+        return type;
+    }
+
+    public void setArea(String area) 
+    {
+        this.area = area;
+    }
+
+    public String getArea() 
+    {
+        return area;
+    }
+
+    public void setRule(String rule) 
+    {
+        this.rule = rule;
+    }
+
+    public String getRule() 
+    {
+        return rule;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("name", getName())
+            .append("type", getType())
+            .append("area", getArea())
+            .append("rule", getRule())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .toString();
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanCycleMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanCycleMapper.java
new file mode 100644
index 0000000..04c51be
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanCycleMapper.java
@@ -0,0 +1,21 @@
+package com.aps.core.mapper;
+
+import com.aps.core.domain.ApsPlanCycle;
+import com.aps.core.domain.ApsPlanManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ * 璁″垝鍛ㄦ湡绠$悊Mapper鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+public interface ApsPlanCycleMapper extends BaseMapper<ApsPlanCycle>
+{
+
+    @Select("select * from aps_plan_cycle where plan_id = #{planId}")
+    ApsPlanCycle selectByPlanId(Long planId);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanManagementMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanManagementMapper.java
new file mode 100644
index 0000000..3a05541
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanManagementMapper.java
@@ -0,0 +1,64 @@
+package com.aps.core.mapper;
+
+import com.aps.core.controller.ApsPlanManagementController;
+import com.aps.core.domain.ApsPlanManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+ * 璁″垝绠$悊Mapper鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+public interface ApsPlanManagementMapper extends BaseMapper<ApsPlanManagement>
+{
+    /**
+     * 鏌ヨ璁″垝绠$悊
+     * 
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 璁″垝绠$悊
+     */
+    public ApsPlanManagement selectApsPlanManagementById(Long id);
+
+    /**
+     * 鏌ヨ璁″垝绠$悊鍒楄〃
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 璁″垝绠$悊闆嗗悎
+     */
+    public List<ApsPlanManagement> selectApsPlanManagementList(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 鏂板璁″垝绠$悊
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    public int insertApsPlanManagement(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 淇敼璁″垝绠$悊
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    public int updateApsPlanManagement(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 鍒犻櫎璁″垝绠$悊
+     * 
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlanManagementById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎璁″垝绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlanManagementByIds(Long[] ids);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlanManagementService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlanManagementService.java
new file mode 100644
index 0000000..a9e956f
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlanManagementService.java
@@ -0,0 +1,66 @@
+package com.aps.core.service;
+
+import com.aps.core.domain.ApsPlanCycle;
+import com.aps.core.domain.ApsPlanManagement;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * 璁″垝绠$悊Service鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+public interface IApsPlanManagementService extends IService<ApsPlanManagement>
+{
+    /**
+     * 鏌ヨ璁″垝绠$悊
+     * 
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 璁″垝绠$悊
+     */
+    public ApsPlanManagement selectApsPlanManagementById(Long id);
+
+    /**
+     * 鏌ヨ璁″垝绠$悊鍒楄〃
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 璁″垝绠$悊闆嗗悎
+     */
+    public List<ApsPlanManagement> selectApsPlanManagementList(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 鏂板璁″垝绠$悊
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    public int insertApsPlanManagement(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 淇敼璁″垝绠$悊
+     * 
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    public int updateApsPlanManagement(ApsPlanManagement apsPlanManagement);
+
+    /**
+     * 鎵归噺鍒犻櫎璁″垝绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑璁″垝绠$悊涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlanManagementByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎璁″垝绠$悊淇℃伅
+     * 
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlanManagementById(Long id);
+
+    void updateApsPlanCycle(ApsPlanCycle apsPlanCycle);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanManagementServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanManagementServiceImpl.java
new file mode 100644
index 0000000..6cb0efd
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanManagementServiceImpl.java
@@ -0,0 +1,110 @@
+package com.aps.core.service.impl;
+
+import java.util.List;
+
+import com.aps.common.core.utils.DateUtils;
+import com.aps.core.domain.ApsPlanCycle;
+import com.aps.core.domain.ApsPlanManagement;
+import com.aps.core.mapper.ApsPlanCycleMapper;
+import com.aps.core.mapper.ApsPlanManagementMapper;
+import com.aps.core.service.IApsPlanManagementService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * 璁″垝绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-05-13
+ */
+@Service
+public class ApsPlanManagementServiceImpl extends ServiceImpl<ApsPlanManagementMapper, ApsPlanManagement> implements IApsPlanManagementService {
+    @Autowired
+    private ApsPlanManagementMapper apsPlanManagementMapper;
+
+    @Autowired
+    private ApsPlanCycleMapper apsPlanCycleMapper;
+
+    /**
+     * 鏌ヨ璁″垝绠$悊
+     *
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 璁″垝绠$悊
+     */
+    @Override
+    public ApsPlanManagement selectApsPlanManagementById(Long id) {
+        return selectApsPlanManagementById(id);
+    }
+
+    /**
+     * 鏌ヨ璁″垝绠$悊鍒楄〃
+     *
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 璁″垝绠$悊
+     */
+    @Override
+    public List<ApsPlanManagement> selectApsPlanManagementList(ApsPlanManagement apsPlanManagement) {
+        return apsPlanManagementMapper.selectApsPlanManagementList(apsPlanManagement);
+    }
+
+    /**
+     * 鏂板璁″垝绠$悊
+     *
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertApsPlanManagement(ApsPlanManagement apsPlanManagement) {
+        apsPlanManagement.setCreateTime(DateUtils.getNowDate());
+        return apsPlanManagementMapper.insertApsPlanManagement(apsPlanManagement);
+    }
+
+    /**
+     * 淇敼璁″垝绠$悊
+     *
+     * @param apsPlanManagement 璁″垝绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateApsPlanManagement(ApsPlanManagement apsPlanManagement) {
+        apsPlanManagement.setUpdateTime(DateUtils.getNowDate());
+        return apsPlanManagementMapper.updateApsPlanManagement(apsPlanManagement);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎璁″垝绠$悊
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑璁″垝绠$悊涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlanManagementByIds(Long[] ids) {
+        return apsPlanManagementMapper.deleteApsPlanManagementByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎璁″垝绠$悊淇℃伅
+     *
+     * @param id 璁″垝绠$悊涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlanManagementById(Long id) {
+        return apsPlanManagementMapper.deleteApsPlanManagementById(id);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void updateApsPlanCycle(ApsPlanCycle apsPlanCycle) {
+        ApsPlanCycle planCycle = apsPlanCycleMapper.selectByPlanId(apsPlanCycle.getPlanId());
+        if (planCycle == null) {
+            apsPlanCycleMapper.insert(apsPlanCycle);
+        } else {
+            BeanUtils.copyProperties(apsPlanCycle, planCycle, "id", "planId");
+            apsPlanCycleMapper.updateById(planCycle);
+        }
+    }
+}
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanManagementMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanManagementMapper.xml
new file mode 100644
index 0000000..94faf29
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanManagementMapper.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.aps.core.mapper.ApsPlanManagementMapper">
+    
+    <resultMap type="com.aps.core.domain.ApsPlanManagement" id="ApsPlanManagementResult">
+        <result property="id"    column="id"    />
+        <result property="name"    column="name"    />
+        <result property="type"    column="type"    />
+        <result property="area"    column="area"    />
+        <result property="rule"    column="rule"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectApsPlanManagementVo">
+        select id, name, type, area, rule, create_by, create_time, update_by, update_time from aps_plan_management
+    </sql>
+
+    <select id="selectApsPlanManagementList" parameterType="com.aps.core.domain.ApsPlanManagement" resultMap="ApsPlanManagementResult">
+        <include refid="selectApsPlanManagementVo"/>
+        <where>  
+            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
+            <if test="type != null  and type != ''"> and type = #{type}</if>
+            <if test="area != null  and area != ''"> and area = #{area}</if>
+            <if test="rule != null  and rule != ''"> and rule = #{rule}</if>
+        </where>
+    </select>
+    
+    <select id="selectApsPlanManagementById" parameterType="Long" resultMap="ApsPlanManagementResult">
+    </select>
+
+    <insert id="insertApsPlanManagement" parameterType="com.aps.core.domain.ApsPlanManagement">
+        insert into aps_plan_management
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="name != null">name,</if>
+            <if test="type != null">type,</if>
+            <if test="area != null">area,</if>
+            <if test="rule != null">rule,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="name != null">#{name},</if>
+            <if test="type != null">#{type},</if>
+            <if test="area != null">#{area},</if>
+            <if test="rule != null">#{rule},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateApsPlanManagement" parameterType="com.aps.core.domain.ApsPlanManagement">
+        update aps_plan_management
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="name != null">name = #{name},</if>
+            <if test="type != null">type = #{type},</if>
+            <if test="area != null">area = #{area},</if>
+            <if test="rule != null">rule = #{rule},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteApsPlanManagementById" parameterType="Long">
+        delete from aps_plan_management where id = #{id}
+    </delete>
+
+    <delete id="deleteApsPlanManagementByIds" parameterType="String">
+        delete from aps_plan_management where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
\ No newline at end of file
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 52fe91e..048bbaa 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
@@ -47,9 +47,10 @@
             require.start_date,
             require.complete_date
         from aps_plate_standard_require_bom_order_detail detail
-            left join aps_plate_standard_require require on detail.require_id = require.id
-            left join aps_plate_plan plan on detail.doc_no = plan.document_number
-        <where>  
+            left join aps_plate_standard_require require on detail.require_id = require.id and require.del_flag = '0'
+            left join aps_plate_plan plan on detail.doc_no = plan.document_number and plan.del_flag = '0'
+        <where>
+            detail.del_flag = '0'
             <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
             <if test="requireTrackId != null  and requireTrackId != ''"> and detail.require_track_id = '${requireTrackId}'</if>
             <if test="mainPartNumber != null  and mainPartNumber != ''"> and plan.main_part_number = #{mainPartNumber}</if>
@@ -116,12 +117,13 @@
                require.update_time
         from
              aps_plate_standard_require require
-            left join aps_plate_standard_require_bom_order_detail detail on detail.require_id = require.id
+            left join aps_plate_standard_require_bom_order_detail detail on detail.require_id = require.id and detail.del_flag = '0'
     </sql>
 
     <select id="selectApsPlanStandardRequire" parameterType="String" resultMap="ApsPlateStandardRequireResult">
         <include refid="selectApsPlateStandardRequireVo"/>
         <where>
+            require.del_flag = '0'
             <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
         </where>
     </select>
@@ -138,9 +140,11 @@
             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 detail.require_id = require.id
-            left join aps_plate_plan plan on detail.doc_no = plan.document_number
-        where plan.id in
+            left join aps_plate_standard_require require on detail.require_id = require.id and require.del_flag = '0'
+            left join aps_plate_plan plan on detail.doc_no = plan.document_number and plan.del_flag = '0'
+        where
+            detail.del_flag = '0' and
+            plan.id in
         <foreach collection="planIds" item="planId" open="(" separator="," close=")">
             #{planId}
         </foreach>

--
Gitblit v1.9.3