From a51811707c31393a32fa65d973297f4e302fbd66 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期二, 06 五月 2025 18:42:45 +0800
Subject: [PATCH] 生成钣金工单计划:准备基础代码

---
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequire.java                                |  112 +++
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomStockDetailService.java         |   61 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java               |   96 +++
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomStockDetail.java                  |   55 +
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomStockDetailMapper.java            |   63 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomOrderDetailServiceImpl.java |   96 +++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireMapper.xml                              |  173 +++++
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBatchMapper.java                     |   63 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomStockDetailServiceImpl.java |   96 +++
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireService.java                       |   61 ++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBatchMapper.xml                         |   78 ++
 aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateStandardRequireController.java         |  113 +++
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomOrderDetail.java                  |   70 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomOrderDetailService.java         |   61 ++
 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBatch.java                           |   25 
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomOrderDetailMapper.java            |   64 ++
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBatchServiceImpl.java          |   96 +++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomOrderDetailMapper.xml                |  118 ++++
 aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBatchService.java                  |   61 ++
 aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireMapper.java                          |   63 ++
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomStockDetailMapper.xml                |  113 +++
 21 files changed, 1,738 insertions(+), 0 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateStandardRequireController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateStandardRequireController.java
new file mode 100644
index 0000000..0200092
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateStandardRequireController.java
@@ -0,0 +1,113 @@
+package com.aps.core.controller.mainPlan;
+
+import java.util.List;
+
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+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.ApsPlateStandardRequire;
+import com.aps.core.service.IApsPlateStandardRequireService;
+import com.aps.common.core.web.controller.BaseController;
+import com.aps.common.core.web.domain.AjaxResult;
+import com.aps.common.core.utils.poi.ExcelUtil;
+import com.aps.common.core.web.page.TableDataInfo;
+
+/**
+ * 閽i噾宸ュ崟鏍囧噯闇�姹侰ontroller
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+
+
+@RestController
+@RequestMapping("/ApsPlateStandardRequire")
+public class ApsPlateStandardRequireController extends BaseController
+{
+    @Autowired
+    private IApsPlateStandardRequireService apsPlateStandardRequireService;
+
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹傚垪琛�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:list")
+    @GetMapping("/list")
+    public TableDataInfo list(ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        startPage();
+        List<ApsPlateStandardRequire> list = apsPlateStandardRequireService.selectApsPlateStandardRequireList(apsPlateStandardRequire);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭閽i噾宸ュ崟鏍囧噯闇�姹傚垪琛�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:export")
+    @Log(title = "閽i噾宸ュ崟鏍囧噯闇�姹�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        List<ApsPlateStandardRequire> list = apsPlateStandardRequireService.selectApsPlateStandardRequireList(apsPlateStandardRequire);
+        ExcelUtil<ApsPlateStandardRequire> util = new ExcelUtil<ApsPlateStandardRequire>(ApsPlateStandardRequire.class);
+        util.exportExcel(response, list, "閽i噾宸ュ崟鏍囧噯闇�姹傛暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇閽i噾宸ュ崟鏍囧噯闇�姹傝缁嗕俊鎭�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(apsPlateStandardRequireService.selectApsPlateStandardRequireById(id));
+    }
+
+    /**
+     * 鏂板閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:add")
+    @Log(title = "閽i噾宸ュ崟鏍囧噯闇�姹�", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        return toAjax(apsPlateStandardRequireService.insertApsPlateStandardRequire(apsPlateStandardRequire));
+    }
+
+    /**
+     * 淇敼閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:edit")
+    @Log(title = "閽i噾宸ュ崟鏍囧噯闇�姹�", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        return toAjax(apsPlateStandardRequireService.updateApsPlateStandardRequire(apsPlateStandardRequire));
+    }
+
+    /**
+     * 鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+
+    @RequiresPermissions("ApsPlateStandardRequire:ApsPlateStandardRequire:remove")
+    @Log(title = "閽i噾宸ュ崟鏍囧噯闇�姹�", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(apsPlateStandardRequireService.deleteApsPlateStandardRequireByIds(ids));
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequire.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequire.java
new file mode 100644
index 0000000..71e5891
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequire.java
@@ -0,0 +1,112 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.annotation.Excel;
+import com.aps.common.core.web.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+
+/**
+ * 閽i噾宸ュ崟鏍囧噯闇�姹傚璞� aps_plate_standard_require
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class ApsPlateStandardRequire extends BaseEntity
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /** 闇�姹侷D */
+    private Long id;
+
+    /** 闇�姹傝拷婧疘D */
+    @Excel(name = "闇�姹傝拷婧疘D")
+    private String requireId;
+
+    /** bom_line_id */
+    @Excel(name = "bom_line_id")
+    private String bomLineId;
+
+    /** 鏂欏彿 */
+    @Excel(name = "鏂欏彿")
+    private String bomLineCode;
+
+    /** BOM浣庨樁鐮� */
+    @Excel(name = "BOM浣庨樁鐮�")
+    private Long bomLineLevel;
+
+    /** BOM鐢ㄩ噺 */
+    @Excel(name = "BOM鐢ㄩ噺")
+    private String bomUseAmount;
+
+    /** 宸ヨ壓璺嚎ID */
+    @Excel(name = "宸ヨ壓璺嚎ID")
+    private String processRouteId;
+
+    /** 宸ヨ壓璺嚎宸ユ椂 */
+    @Excel(name = "宸ヨ壓璺嚎宸ユ椂")
+    private String processRouteHours;
+
+    /** 闇�姹傛暟閲� */
+    @Excel(name = "闇�姹傛暟閲�")
+    private String requireAmount;
+
+    /** 鍑�闇�姹傞噺 */
+    @Excel(name = "鍑�闇�姹傞噺")
+    private String netRequirement;
+
+    /** 璁″垝寮�宸ユ棩 */
+    @Excel(name = "璁″垝寮�宸ユ棩")
+    private String startDate;
+
+    /** 璁″垝瀹屽伐鏃� */
+    @Excel(name = "璁″垝瀹屽伐鏃�")
+    private String completeDate;
+
+    /** 闇�姹傛棩鏈� */
+    @Excel(name = "闇�姹傛棩鏈�")
+    private String demandDate;
+
+    /** 閫傜敤宸ュ巶 */
+    @Excel(name = "閫傜敤宸ュ巶")
+    private String orgCode;
+
+    /** 鐢熶骇鍩哄湴 */
+    @Excel(name = "鐢熶骇鍩哄湴")
+
+    private String productionBase;
+
+    /** 鍖归厤鐘舵�� */
+    @Excel(name = "鍖归厤鐘舵��")
+
+    private String matchState;
+
+    /** 鍖归厤妯″紡 */
+    @Excel(name = "鍖归厤妯″紡")
+
+    private String matchMode;
+
+    /** 鏈尮閰嶉渶姹傛暟閲� */
+    @Excel(name = "鏈尮閰嶉渶姹傛暟閲�")
+    private String unmatchedDemandAmount;
+
+    /** 寤鸿瀹屾垚鏃ユ湡 */
+    @Excel(name = "寤鸿瀹屾垚鏃ユ湡")
+    private String suggestedCompletionDate;
+
+    /** 寤惰繜椋庨櫓鏍囪瘑 */
+    @Excel(name = "寤惰繜椋庨櫓鏍囪瘑")
+    private String hasDelayRisk;
+
+    /** $column.columnComment */
+
+    private String batchNumber;
+
+    /** $column.columnComment */
+    private String delFlag;
+
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBatch.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBatch.java
new file mode 100644
index 0000000..d617f97
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBatch.java
@@ -0,0 +1,25 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.web.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+
+/**
+ * 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃瀵硅薄 aps_plate_standard_require_batch
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class ApsPlateStandardRequireBatch extends BaseEntity
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+    private Long id;
+    private String batchNumber;
+    private String delFlag;
+
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomOrderDetail.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomOrderDetail.java
new file mode 100644
index 0000000..1a47782
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomOrderDetail.java
@@ -0,0 +1,70 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.annotation.Excel;
+import com.aps.common.core.web.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+
+/**
+ * ApsPlateStandardRequireBomOrderDetail瀵硅薄 aps_plate_standard_require_bom_order_detail
+ * 
+ * @author zhl
+ * &#064;date  2025-05-06
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class ApsPlateStandardRequireBomOrderDetail extends BaseEntity
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+
+    private Long id;
+
+    /** 闇�姹傝拷婧疘D */
+    @Excel(name = "闇�姹傝拷婧疘D")
+
+    private String requireId;
+
+    /** bom_line_id */
+    @Excel(name = "bom_line_id")
+
+    private String bomLineId;
+
+    /** 鏂欏彿 */
+    @Excel(name = "鏂欏彿")
+
+    private String bomLineCode;
+
+    /** 璁㈠崟鍙� */
+    @Excel(name = "璁㈠崟鍙�")
+
+    private String docNo;
+
+    /** 鎵e噺鍓嶆暟閲� */
+    @Excel(name = "鎵e噺鍓嶆暟閲�")
+
+    private String beforeProdAmount;
+
+    /** 鍖归厤鏁伴噺 */
+    @Excel(name = "鍖归厤鏁伴噺")
+
+    private String deductionAmount;
+
+    /** 鎵e噺鍚庢暟閲� */
+    @Excel(name = "鎵e噺鍚庢暟閲�")
+
+    private String afterProdAmount;
+
+
+    private String orgCode;
+
+
+    private String batchNumber;
+
+
+    private String delFlag;
+
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomStockDetail.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomStockDetail.java
new file mode 100644
index 0000000..6f4ea1a
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlateStandardRequireBomStockDetail.java
@@ -0,0 +1,55 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.annotation.Excel;
+import com.aps.common.core.web.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+
+/**
+ * ApsPlateStandardRequireBomStockDetail瀵硅薄 aps_plate_standard_require_bom_stock_detail
+ * 
+ * @author zhl
+ * &#064;date  2025-05-06
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class ApsPlateStandardRequireBomStockDetail extends BaseEntity
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+
+    private Long id;
+
+    /** 闇�姹傝拷婧疘D */
+    @Excel(name = "闇�姹傝拷婧疘D")
+    private String requireId;
+
+    /** bom_line_id */
+    @Excel(name = "bom_line_id")
+    private String bomLineId;
+
+    /** 鏂欏彿 */
+    @Excel(name = "鏂欏彿")
+    private String bomLineCode;
+
+    /** 鎵e噺鍓嶅簱瀛橀噺 */
+    @Excel(name = "鎵e噺鍓嶅簱瀛橀噺")
+    private String beforeStockAmount;
+
+    /** 鎵e噺搴撳瓨閲� */
+    @Excel(name = "鎵e噺搴撳瓨閲�")
+    private String deductionAmount;
+
+    /** 鎵e噺鍚庡簱瀛橀噺 */
+    @Excel(name = "鎵e噺鍚庡簱瀛橀噺")
+    private String afterStockAmount;
+
+    private String orgCode;
+    private String batchNumber;
+    private String delFlag;
+
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBatchMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBatchMapper.java
new file mode 100644
index 0000000..e71c7d8
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBatchMapper.java
@@ -0,0 +1,63 @@
+package com.aps.core.mapper;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequireBatch;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃Mapper鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Mapper
+public interface ApsPlateStandardRequireBatchMapper 
+{
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     */
+    public ApsPlateStandardRequireBatch selectApsPlateStandardRequireBatchById(Long id);
+
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBatch> selectApsPlateStandardRequireBatchList(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 鏂板閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 淇敼閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBatchById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBatchByIds(Long[] ids);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomOrderDetailMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomOrderDetailMapper.java
new file mode 100644
index 0000000..60d4690
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomOrderDetailMapper.java
@@ -0,0 +1,64 @@
+package com.aps.core.mapper;
+
+import com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * ApsPlateStandardRequireBomOrderDetailMapper鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Mapper
+public interface ApsPlateStandardRequireBomOrderDetailMapper 
+{
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return ApsPlateStandardRequireBomOrderDetail
+     */
+    public ApsPlateStandardRequireBomOrderDetail selectApsPlateStandardRequireBomOrderDetailById(Long id);
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return ApsPlateStandardRequireBomOrderDetail闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBomOrderDetail> selectApsPlateStandardRequireBomOrderDetailList(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomOrderDetailById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomOrderDetailByIds(Long[] ids);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomStockDetailMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomStockDetailMapper.java
new file mode 100644
index 0000000..0413500
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireBomStockDetailMapper.java
@@ -0,0 +1,63 @@
+package com.aps.core.mapper;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequireBomStockDetail;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * ApsPlateStandardRequireBomStockDetailMapper鎺ュ彛
+ * 
+ * @author zhl
+ * &#064;date  2025-05-06
+ */
+@Mapper
+public interface ApsPlateStandardRequireBomStockDetailMapper 
+{
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return ApsPlateStandardRequireBomStockDetail
+     */
+    public ApsPlateStandardRequireBomStockDetail selectApsPlateStandardRequireBomStockDetailById(Long id);
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return ApsPlateStandardRequireBomStockDetail闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBomStockDetail> selectApsPlateStandardRequireBomStockDetailList(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomStockDetailById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomStockDetailByIds(Long[] ids);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireMapper.java
new file mode 100644
index 0000000..6c96a74
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireMapper.java
@@ -0,0 +1,63 @@
+package com.aps.core.mapper;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequire;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 閽i噾宸ュ崟鏍囧噯闇�姹侻apper鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Mapper
+public interface ApsPlateStandardRequireMapper 
+{
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+    public ApsPlateStandardRequire selectApsPlateStandardRequireById(Long id);
+
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹傚垪琛�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹傞泦鍚�
+     */
+    public List<ApsPlateStandardRequire> selectApsPlateStandardRequireList(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 鏂板閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 淇敼閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireByIds(Long[] ids);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBatchService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBatchService.java
new file mode 100644
index 0000000..ba3ff13
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBatchService.java
@@ -0,0 +1,61 @@
+package com.aps.core.service;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequireBatch;
+
+/**
+ * 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃Service鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+public interface IApsPlateStandardRequireBatchService 
+{
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     */
+    public ApsPlateStandardRequireBatch selectApsPlateStandardRequireBatchById(Long id);
+
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBatch> selectApsPlateStandardRequireBatchList(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 鏂板閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 淇敼閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch);
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBatchByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃淇℃伅
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBatchById(Long id);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomOrderDetailService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomOrderDetailService.java
new file mode 100644
index 0000000..a11066a
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomOrderDetailService.java
@@ -0,0 +1,61 @@
+package com.aps.core.service;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail;
+
+/**
+ * ApsPlateStandardRequireBomOrderDetailService鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+public interface IApsPlateStandardRequireBomOrderDetailService 
+{
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return ApsPlateStandardRequireBomOrderDetail
+     */
+    public ApsPlateStandardRequireBomOrderDetail selectApsPlateStandardRequireBomOrderDetailById(Long id);
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return ApsPlateStandardRequireBomOrderDetail闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBomOrderDetail> selectApsPlateStandardRequireBomOrderDetailList(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail);
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑ApsPlateStandardRequireBomOrderDetail涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomOrderDetailByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomOrderDetail淇℃伅
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomOrderDetailById(Long id);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomStockDetailService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomStockDetailService.java
new file mode 100644
index 0000000..78309f8
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireBomStockDetailService.java
@@ -0,0 +1,61 @@
+package com.aps.core.service;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequireBomStockDetail;
+
+/**
+ * ApsPlateStandardRequireBomStockDetailService鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+public interface IApsPlateStandardRequireBomStockDetailService 
+{
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return ApsPlateStandardRequireBomStockDetail
+     */
+    public ApsPlateStandardRequireBomStockDetail selectApsPlateStandardRequireBomStockDetailById(Long id);
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return ApsPlateStandardRequireBomStockDetail闆嗗悎
+     */
+    public List<ApsPlateStandardRequireBomStockDetail> selectApsPlateStandardRequireBomStockDetailList(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail);
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑ApsPlateStandardRequireBomStockDetail涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomStockDetailByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomStockDetail淇℃伅
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireBomStockDetailById(Long id);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireService.java
new file mode 100644
index 0000000..4e8e031
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireService.java
@@ -0,0 +1,61 @@
+package com.aps.core.service;
+
+import java.util.List;
+import com.aps.core.domain.ApsPlateStandardRequire;
+
+/**
+ * 閽i噾宸ュ崟鏍囧噯闇�姹係ervice鎺ュ彛
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+public interface IApsPlateStandardRequireService 
+{
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+    public ApsPlateStandardRequire selectApsPlateStandardRequireById(Long id);
+
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹傚垪琛�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹傞泦鍚�
+     */
+    public List<ApsPlateStandardRequire> selectApsPlateStandardRequireList(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 鏂板閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    public int insertApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 淇敼閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    public int updateApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire);
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑閽i噾宸ュ崟鏍囧噯闇�姹備富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹備俊鎭�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 缁撴灉
+     */
+    public int deleteApsPlateStandardRequireById(Long id);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBatchServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBatchServiceImpl.java
new file mode 100644
index 0000000..a0552a7
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBatchServiceImpl.java
@@ -0,0 +1,96 @@
+package com.aps.core.service.impl;
+
+import java.util.List;
+import com.aps.common.core.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.aps.core.mapper.ApsPlateStandardRequireBatchMapper;
+import com.aps.core.domain.ApsPlateStandardRequireBatch;
+import com.aps.core.service.IApsPlateStandardRequireBatchService;
+
+/**
+ * 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃Service涓氬姟灞傚鐞�
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Service
+public class ApsPlateStandardRequireBatchServiceImpl implements IApsPlateStandardRequireBatchService 
+{
+    @Autowired
+    private ApsPlateStandardRequireBatchMapper apsPlateStandardRequireBatchMapper;
+
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     */
+    @Override
+    public ApsPlateStandardRequireBatch selectApsPlateStandardRequireBatchById(Long id)
+    {
+        return apsPlateStandardRequireBatchMapper.selectApsPlateStandardRequireBatchById(id);
+    }
+
+    /**
+     * 鏌ヨ閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     */
+    @Override
+    public List<ApsPlateStandardRequireBatch> selectApsPlateStandardRequireBatchList(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch)
+    {
+        return apsPlateStandardRequireBatchMapper.selectApsPlateStandardRequireBatchList(apsPlateStandardRequireBatch);
+    }
+
+    /**
+     * 鏂板閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch)
+    {
+        apsPlateStandardRequireBatch.setCreateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBatchMapper.insertApsPlateStandardRequireBatch(apsPlateStandardRequireBatch);
+    }
+
+    /**
+     * 淇敼閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param apsPlateStandardRequireBatch 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateApsPlateStandardRequireBatch(ApsPlateStandardRequireBatch apsPlateStandardRequireBatch)
+    {
+        apsPlateStandardRequireBatch.setUpdateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBatchMapper.updateApsPlateStandardRequireBatch(apsPlateStandardRequireBatch);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBatchByIds(Long[] ids)
+    {
+        return apsPlateStandardRequireBatchMapper.deleteApsPlateStandardRequireBatchByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃淇℃伅
+     * 
+     * @param id 閽i噾璁″垝鏍囧噯闇�姹傝鍒掓壒娆¤〃涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBatchById(Long id)
+    {
+        return apsPlateStandardRequireBatchMapper.deleteApsPlateStandardRequireBatchById(id);
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomOrderDetailServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomOrderDetailServiceImpl.java
new file mode 100644
index 0000000..1dc3338
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomOrderDetailServiceImpl.java
@@ -0,0 +1,96 @@
+package com.aps.core.service.impl;
+
+import java.util.List;
+import com.aps.common.core.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.aps.core.mapper.ApsPlateStandardRequireBomOrderDetailMapper;
+import com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail;
+import com.aps.core.service.IApsPlateStandardRequireBomOrderDetailService;
+
+/**
+ * ApsPlateStandardRequireBomOrderDetailService涓氬姟灞傚鐞�
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Service
+public class ApsPlateStandardRequireBomOrderDetailServiceImpl implements IApsPlateStandardRequireBomOrderDetailService 
+{
+    @Autowired
+    private ApsPlateStandardRequireBomOrderDetailMapper apsPlateStandardRequireBomOrderDetailMapper;
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return ApsPlateStandardRequireBomOrderDetail
+     */
+    @Override
+    public ApsPlateStandardRequireBomOrderDetail selectApsPlateStandardRequireBomOrderDetailById(Long id)
+    {
+        return apsPlateStandardRequireBomOrderDetailMapper.selectApsPlateStandardRequireBomOrderDetailById(id);
+    }
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomOrderDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return ApsPlateStandardRequireBomOrderDetail
+     */
+    @Override
+    public List<ApsPlateStandardRequireBomOrderDetail> selectApsPlateStandardRequireBomOrderDetailList(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail)
+    {
+        return apsPlateStandardRequireBomOrderDetailMapper.selectApsPlateStandardRequireBomOrderDetailList(apsPlateStandardRequireBomOrderDetail);
+    }
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail)
+    {
+        apsPlateStandardRequireBomOrderDetail.setCreateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBomOrderDetailMapper.insertApsPlateStandardRequireBomOrderDetail(apsPlateStandardRequireBomOrderDetail);
+    }
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param apsPlateStandardRequireBomOrderDetail ApsPlateStandardRequireBomOrderDetail
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateApsPlateStandardRequireBomOrderDetail(ApsPlateStandardRequireBomOrderDetail apsPlateStandardRequireBomOrderDetail)
+    {
+        apsPlateStandardRequireBomOrderDetail.setUpdateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBomOrderDetailMapper.updateApsPlateStandardRequireBomOrderDetail(apsPlateStandardRequireBomOrderDetail);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomOrderDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBomOrderDetailByIds(Long[] ids)
+    {
+        return apsPlateStandardRequireBomOrderDetailMapper.deleteApsPlateStandardRequireBomOrderDetailByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomOrderDetail淇℃伅
+     * 
+     * @param id ApsPlateStandardRequireBomOrderDetail涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBomOrderDetailById(Long id)
+    {
+        return apsPlateStandardRequireBomOrderDetailMapper.deleteApsPlateStandardRequireBomOrderDetailById(id);
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomStockDetailServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomStockDetailServiceImpl.java
new file mode 100644
index 0000000..d7a13f5
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomStockDetailServiceImpl.java
@@ -0,0 +1,96 @@
+package com.aps.core.service.impl;
+
+import java.util.List;
+import com.aps.common.core.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.aps.core.mapper.ApsPlateStandardRequireBomStockDetailMapper;
+import com.aps.core.domain.ApsPlateStandardRequireBomStockDetail;
+import com.aps.core.service.IApsPlateStandardRequireBomStockDetailService;
+
+/**
+ * ApsPlateStandardRequireBomStockDetailService涓氬姟灞傚鐞�
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Service
+public class ApsPlateStandardRequireBomStockDetailServiceImpl implements IApsPlateStandardRequireBomStockDetailService 
+{
+    @Autowired
+    private ApsPlateStandardRequireBomStockDetailMapper apsPlateStandardRequireBomStockDetailMapper;
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return ApsPlateStandardRequireBomStockDetail
+     */
+    @Override
+    public ApsPlateStandardRequireBomStockDetail selectApsPlateStandardRequireBomStockDetailById(Long id)
+    {
+        return apsPlateStandardRequireBomStockDetailMapper.selectApsPlateStandardRequireBomStockDetailById(id);
+    }
+
+    /**
+     * 鏌ヨApsPlateStandardRequireBomStockDetail鍒楄〃
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return ApsPlateStandardRequireBomStockDetail
+     */
+    @Override
+    public List<ApsPlateStandardRequireBomStockDetail> selectApsPlateStandardRequireBomStockDetailList(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail)
+    {
+        return apsPlateStandardRequireBomStockDetailMapper.selectApsPlateStandardRequireBomStockDetailList(apsPlateStandardRequireBomStockDetail);
+    }
+
+    /**
+     * 鏂板ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail)
+    {
+        apsPlateStandardRequireBomStockDetail.setCreateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBomStockDetailMapper.insertApsPlateStandardRequireBomStockDetail(apsPlateStandardRequireBomStockDetail);
+    }
+
+    /**
+     * 淇敼ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param apsPlateStandardRequireBomStockDetail ApsPlateStandardRequireBomStockDetail
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateApsPlateStandardRequireBomStockDetail(ApsPlateStandardRequireBomStockDetail apsPlateStandardRequireBomStockDetail)
+    {
+        apsPlateStandardRequireBomStockDetail.setUpdateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireBomStockDetailMapper.updateApsPlateStandardRequireBomStockDetail(apsPlateStandardRequireBomStockDetail);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎ApsPlateStandardRequireBomStockDetail
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBomStockDetailByIds(Long[] ids)
+    {
+        return apsPlateStandardRequireBomStockDetailMapper.deleteApsPlateStandardRequireBomStockDetailByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎ApsPlateStandardRequireBomStockDetail淇℃伅
+     * 
+     * @param id ApsPlateStandardRequireBomStockDetail涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireBomStockDetailById(Long id)
+    {
+        return apsPlateStandardRequireBomStockDetailMapper.deleteApsPlateStandardRequireBomStockDetailById(id);
+    }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
new file mode 100644
index 0000000..b6da4b1
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
@@ -0,0 +1,96 @@
+package com.aps.core.service.impl;
+
+import java.util.List;
+import com.aps.common.core.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.aps.core.mapper.ApsPlateStandardRequireMapper;
+import com.aps.core.domain.ApsPlateStandardRequire;
+import com.aps.core.service.IApsPlateStandardRequireService;
+
+/**
+ * 閽i噾宸ュ崟鏍囧噯闇�姹係ervice涓氬姟灞傚鐞�
+ * 
+ * @author zhl
+ * @date 2025-05-06
+ */
+@Service
+public class ApsPlateStandardRequireServiceImpl implements IApsPlateStandardRequireService 
+{
+    @Autowired
+    private ApsPlateStandardRequireMapper apsPlateStandardRequireMapper;
+
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+    @Override
+    public ApsPlateStandardRequire selectApsPlateStandardRequireById(Long id)
+    {
+        return apsPlateStandardRequireMapper.selectApsPlateStandardRequireById(id);
+    }
+
+    /**
+     * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹傚垪琛�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 閽i噾宸ュ崟鏍囧噯闇�姹�
+     */
+    @Override
+    public List<ApsPlateStandardRequire> selectApsPlateStandardRequireList(ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        return apsPlateStandardRequireMapper.selectApsPlateStandardRequireList(apsPlateStandardRequire);
+    }
+
+    /**
+     * 鏂板閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        apsPlateStandardRequire.setCreateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireMapper.insertApsPlateStandardRequire(apsPlateStandardRequire);
+    }
+
+    /**
+     * 淇敼閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param apsPlateStandardRequire 閽i噾宸ュ崟鏍囧噯闇�姹�
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateApsPlateStandardRequire(ApsPlateStandardRequire apsPlateStandardRequire)
+    {
+        apsPlateStandardRequire.setUpdateTime(DateUtils.getNowDate());
+        return apsPlateStandardRequireMapper.updateApsPlateStandardRequire(apsPlateStandardRequire);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireByIds(Long[] ids)
+    {
+        return apsPlateStandardRequireMapper.deleteApsPlateStandardRequireByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎閽i噾宸ュ崟鏍囧噯闇�姹備俊鎭�
+     * 
+     * @param id 閽i噾宸ュ崟鏍囧噯闇�姹備富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteApsPlateStandardRequireById(Long id)
+    {
+        return apsPlateStandardRequireMapper.deleteApsPlateStandardRequireById(id);
+    }
+}
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBatchMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBatchMapper.xml
new file mode 100644
index 0000000..40b6aeb
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBatchMapper.xml
@@ -0,0 +1,78 @@
+<?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.ApsPlateStandardRequireBatchMapper">
+    
+    <resultMap type="ApsPlateStandardRequireBatch" id="ApsPlateStandardRequireBatchResult">
+        <result property="id"    column="id"    />
+        <result property="batchNumber"    column="batch_number"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectApsPlateStandardRequireBatchVo">
+        select id, batch_number, del_flag, create_time, create_by, update_by, update_time from aps_plate_standard_require_batch
+    </sql>
+
+    <select id="selectApsPlateStandardRequireBatchList" parameterType="ApsPlateStandardRequireBatch" resultMap="ApsPlateStandardRequireBatchResult">
+        <include refid="selectApsPlateStandardRequireBatchVo"/>
+        <where>  
+            <if test="batchNumber != null  and batchNumber != ''"> and batch_number = #{batchNumber}</if>
+        </where>
+    </select>
+    
+    <select id="selectApsPlateStandardRequireBatchById" parameterType="Long" resultMap="ApsPlateStandardRequireBatchResult">
+        <include refid="selectApsPlateStandardRequireBatchVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertApsPlateStandardRequireBatch" parameterType="ApsPlateStandardRequireBatch">
+        insert into aps_plate_standard_require_batch
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="batchNumber != null">batch_number,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</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="batchNumber != null">#{batchNumber},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateApsPlateStandardRequireBatch" parameterType="ApsPlateStandardRequireBatch">
+        update aps_plate_standard_require_batch
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="batchNumber != null">batch_number = #{batchNumber},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteApsPlateStandardRequireBatchById" parameterType="Long">
+        delete from aps_plate_standard_require_batch where id = #{id}
+    </delete>
+
+    <delete id="deleteApsPlateStandardRequireBatchByIds" parameterType="String">
+        delete from aps_plate_standard_require_batch 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/ApsPlateStandardRequireBomOrderDetailMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomOrderDetailMapper.xml
new file mode 100644
index 0000000..702ac58
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomOrderDetailMapper.xml
@@ -0,0 +1,118 @@
+<?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.ApsPlateStandardRequireBomOrderDetailMapper">
+    
+    <resultMap type="ApsPlateStandardRequireBomOrderDetail" id="ApsPlateStandardRequireBomOrderDetailResult">
+        <result property="id"    column="id"    />
+        <result property="requireId"    column="require_id"    />
+        <result property="bomLineId"    column="bom_line_id"    />
+        <result property="bomLineCode"    column="bom_line_code"    />
+        <result property="docNo"    column="doc_no"    />
+        <result property="beforeProdAmount"    column="before_prod_amount"    />
+        <result property="deductionAmount"    column="deduction_amount"    />
+        <result property="afterProdAmount"    column="after_prod_amount"    />
+        <result property="orgCode"    column="org_code"    />
+        <result property="batchNumber"    column="batch_number"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectApsPlateStandardRequireBomOrderDetailVo">
+        select id, require_id, bom_line_id, bom_line_code, doc_no, before_prod_amount, deduction_amount, after_prod_amount, org_code, batch_number, del_flag, create_time, create_by, update_by, update_time from aps_plate_standard_require_bom_order_detail
+    </sql>
+
+    <select id="selectApsPlateStandardRequireBomOrderDetailList" parameterType="ApsPlateStandardRequireBomOrderDetail" resultMap="ApsPlateStandardRequireBomOrderDetailResult">
+        <include refid="selectApsPlateStandardRequireBomOrderDetailVo"/>
+        <where>  
+            <if test="requireId != null  and requireId != ''"> and require_id = #{requireId}</if>
+            <if test="bomLineId != null  and bomLineId != ''"> and bom_line_id = #{bomLineId}</if>
+            <if test="bomLineCode != null  and bomLineCode != ''"> and bom_line_code = #{bomLineCode}</if>
+            <if test="docNo != null  and docNo != ''"> and doc_no = #{docNo}</if>
+            <if test="beforeProdAmount != null  and beforeProdAmount != ''"> and before_prod_amount = #{beforeProdAmount}</if>
+            <if test="deductionAmount != null  and deductionAmount != ''"> and deduction_amount = #{deductionAmount}</if>
+            <if test="afterProdAmount != null  and afterProdAmount != ''"> and after_prod_amount = #{afterProdAmount}</if>
+            <if test="orgCode != null  and orgCode != ''"> and org_code = #{orgCode}</if>
+            <if test="batchNumber != null  and batchNumber != ''"> and batch_number = #{batchNumber}</if>
+        </where>
+    </select>
+    
+    <select id="selectApsPlateStandardRequireBomOrderDetailById" parameterType="Long" resultMap="ApsPlateStandardRequireBomOrderDetailResult">
+        <include refid="selectApsPlateStandardRequireBomOrderDetailVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertApsPlateStandardRequireBomOrderDetail" parameterType="ApsPlateStandardRequireBomOrderDetail">
+        insert into aps_plate_standard_require_bom_order_detail
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="requireId != null">require_id,</if>
+            <if test="bomLineId != null">bom_line_id,</if>
+            <if test="bomLineCode != null">bom_line_code,</if>
+            <if test="docNo != null">doc_no,</if>
+            <if test="beforeProdAmount != null">before_prod_amount,</if>
+            <if test="deductionAmount != null">deduction_amount,</if>
+            <if test="afterProdAmount != null">after_prod_amount,</if>
+            <if test="orgCode != null">org_code,</if>
+            <if test="batchNumber != null">batch_number,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</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="requireId != null">#{requireId},</if>
+            <if test="bomLineId != null">#{bomLineId},</if>
+            <if test="bomLineCode != null">#{bomLineCode},</if>
+            <if test="docNo != null">#{docNo},</if>
+            <if test="beforeProdAmount != null">#{beforeProdAmount},</if>
+            <if test="deductionAmount != null">#{deductionAmount},</if>
+            <if test="afterProdAmount != null">#{afterProdAmount},</if>
+            <if test="orgCode != null">#{orgCode},</if>
+            <if test="batchNumber != null">#{batchNumber},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateApsPlateStandardRequireBomOrderDetail" parameterType="ApsPlateStandardRequireBomOrderDetail">
+        update aps_plate_standard_require_bom_order_detail
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="requireId != null">require_id = #{requireId},</if>
+            <if test="bomLineId != null">bom_line_id = #{bomLineId},</if>
+            <if test="bomLineCode != null">bom_line_code = #{bomLineCode},</if>
+            <if test="docNo != null">doc_no = #{docNo},</if>
+            <if test="beforeProdAmount != null">before_prod_amount = #{beforeProdAmount},</if>
+            <if test="deductionAmount != null">deduction_amount = #{deductionAmount},</if>
+            <if test="afterProdAmount != null">after_prod_amount = #{afterProdAmount},</if>
+            <if test="orgCode != null">org_code = #{orgCode},</if>
+            <if test="batchNumber != null">batch_number = #{batchNumber},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteApsPlateStandardRequireBomOrderDetailById" parameterType="Long">
+        delete from aps_plate_standard_require_bom_order_detail where id = #{id}
+    </delete>
+
+    <delete id="deleteApsPlateStandardRequireBomOrderDetailByIds" parameterType="String">
+        delete from aps_plate_standard_require_bom_order_detail 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/ApsPlateStandardRequireBomStockDetailMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomStockDetailMapper.xml
new file mode 100644
index 0000000..117c0fb
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomStockDetailMapper.xml
@@ -0,0 +1,113 @@
+<?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.ApsPlateStandardRequireBomStockDetailMapper">
+    
+    <resultMap type="ApsPlateStandardRequireBomStockDetail" id="ApsPlateStandardRequireBomStockDetailResult">
+        <result property="id"    column="id"    />
+        <result property="requireId"    column="require_id"    />
+        <result property="bomLineId"    column="bom_line_id"    />
+        <result property="bomLineCode"    column="bom_line_code"    />
+        <result property="beforeStockAmount"    column="before_stock_amount"    />
+        <result property="deductionAmount"    column="deduction_amount"    />
+        <result property="afterStockAmount"    column="after_stock_amount"    />
+        <result property="orgCode"    column="org_code"    />
+        <result property="batchNumber"    column="batch_number"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectApsPlateStandardRequireBomStockDetailVo">
+        select id, require_id, bom_line_id, bom_line_code, before_stock_amount, deduction_amount, after_stock_amount, org_code, batch_number, del_flag, create_time, create_by, update_by, update_time from aps_plate_standard_require_bom_stock_detail
+    </sql>
+
+    <select id="selectApsPlateStandardRequireBomStockDetailList" parameterType="ApsPlateStandardRequireBomStockDetail" resultMap="ApsPlateStandardRequireBomStockDetailResult">
+        <include refid="selectApsPlateStandardRequireBomStockDetailVo"/>
+        <where>  
+            <if test="requireId != null  and requireId != ''"> and require_id = #{requireId}</if>
+            <if test="bomLineId != null  and bomLineId != ''"> and bom_line_id = #{bomLineId}</if>
+            <if test="bomLineCode != null  and bomLineCode != ''"> and bom_line_code = #{bomLineCode}</if>
+            <if test="beforeStockAmount != null  and beforeStockAmount != ''"> and before_stock_amount = #{beforeStockAmount}</if>
+            <if test="deductionAmount != null  and deductionAmount != ''"> and deduction_amount = #{deductionAmount}</if>
+            <if test="afterStockAmount != null  and afterStockAmount != ''"> and after_stock_amount = #{afterStockAmount}</if>
+            <if test="orgCode != null  and orgCode != ''"> and org_code = #{orgCode}</if>
+            <if test="batchNumber != null  and batchNumber != ''"> and batch_number = #{batchNumber}</if>
+        </where>
+    </select>
+    
+    <select id="selectApsPlateStandardRequireBomStockDetailById" parameterType="Long" resultMap="ApsPlateStandardRequireBomStockDetailResult">
+        <include refid="selectApsPlateStandardRequireBomStockDetailVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertApsPlateStandardRequireBomStockDetail" parameterType="ApsPlateStandardRequireBomStockDetail">
+        insert into aps_plate_standard_require_bom_stock_detail
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="requireId != null">require_id,</if>
+            <if test="bomLineId != null">bom_line_id,</if>
+            <if test="bomLineCode != null">bom_line_code,</if>
+            <if test="beforeStockAmount != null">before_stock_amount,</if>
+            <if test="deductionAmount != null">deduction_amount,</if>
+            <if test="afterStockAmount != null">after_stock_amount,</if>
+            <if test="orgCode != null">org_code,</if>
+            <if test="batchNumber != null">batch_number,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</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="requireId != null">#{requireId},</if>
+            <if test="bomLineId != null">#{bomLineId},</if>
+            <if test="bomLineCode != null">#{bomLineCode},</if>
+            <if test="beforeStockAmount != null">#{beforeStockAmount},</if>
+            <if test="deductionAmount != null">#{deductionAmount},</if>
+            <if test="afterStockAmount != null">#{afterStockAmount},</if>
+            <if test="orgCode != null">#{orgCode},</if>
+            <if test="batchNumber != null">#{batchNumber},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateApsPlateStandardRequireBomStockDetail" parameterType="ApsPlateStandardRequireBomStockDetail">
+        update aps_plate_standard_require_bom_stock_detail
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="requireId != null">require_id = #{requireId},</if>
+            <if test="bomLineId != null">bom_line_id = #{bomLineId},</if>
+            <if test="bomLineCode != null">bom_line_code = #{bomLineCode},</if>
+            <if test="beforeStockAmount != null">before_stock_amount = #{beforeStockAmount},</if>
+            <if test="deductionAmount != null">deduction_amount = #{deductionAmount},</if>
+            <if test="afterStockAmount != null">after_stock_amount = #{afterStockAmount},</if>
+            <if test="orgCode != null">org_code = #{orgCode},</if>
+            <if test="batchNumber != null">batch_number = #{batchNumber},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteApsPlateStandardRequireBomStockDetailById" parameterType="Long">
+        delete from aps_plate_standard_require_bom_stock_detail where id = #{id}
+    </delete>
+
+    <delete id="deleteApsPlateStandardRequireBomStockDetailByIds" parameterType="String">
+        delete from aps_plate_standard_require_bom_stock_detail 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/ApsPlateStandardRequireMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireMapper.xml
new file mode 100644
index 0000000..51725b7
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireMapper.xml
@@ -0,0 +1,173 @@
+<?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.ApsPlateStandardRequireMapper">
+    
+    <resultMap type="ApsPlateStandardRequire" id="ApsPlateStandardRequireResult">
+        <result property="id"    column="id"    />
+        <result property="requireId"    column="require_id"    />
+        <result property="bomLineId"    column="bom_line_id"    />
+        <result property="bomLineCode"    column="bom_line_code"    />
+        <result property="bomLineLevel"    column="bom_line_level"    />
+        <result property="bomUseAmount"    column="bom_use_amount"    />
+        <result property="processRouteId"    column="process_route_id"    />
+        <result property="processRouteHours"    column="process_route_hours"    />
+        <result property="requireAmount"    column="require_amount"    />
+        <result property="netRequirement"    column="net_requirement"    />
+        <result property="startDate"    column="start_date"    />
+        <result property="completeDate"    column="complete_date"    />
+        <result property="demandDate"    column="demand_date"    />
+        <result property="orgCode"    column="org_code"    />
+        <result property="productionBase"    column="production_base"    />
+        <result property="matchState"    column="match_state"    />
+        <result property="matchMode"    column="match_mode"    />
+        <result property="unmatchedDemandAmount"    column="unmatched_demand_amount"    />
+        <result property="suggestedCompletionDate"    column="suggested_completion_date"    />
+        <result property="hasDelayRisk"    column="has_delay_risk"    />
+        <result property="batchNumber"    column="batch_number"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectApsPlateStandardRequireVo">
+        select id, require_id, bom_line_id, bom_line_code, bom_line_level, bom_use_amount, process_route_id, process_route_hours, require_amount, net_requirement, start_date, complete_date, demand_date, org_code, production_base, match_state, match_mode, unmatched_demand_amount, suggested_completion_date, has_delay_risk, batch_number, del_flag, create_time, create_by, update_by, update_time from aps_plate_standard_require
+    </sql>
+
+    <select id="selectApsPlateStandardRequireList" parameterType="ApsPlateStandardRequire" resultMap="ApsPlateStandardRequireResult">
+        <include refid="selectApsPlateStandardRequireVo"/>
+        <where>  
+            <if test="requireId != null  and requireId != ''"> and require_id = #{requireId}</if>
+            <if test="bomLineId != null  and bomLineId != ''"> and bom_line_id = #{bomLineId}</if>
+            <if test="bomLineCode != null  and bomLineCode != ''"> and bom_line_code = #{bomLineCode}</if>
+            <if test="bomLineLevel != null "> and bom_line_level = #{bomLineLevel}</if>
+            <if test="bomUseAmount != null  and bomUseAmount != ''"> and bom_use_amount = #{bomUseAmount}</if>
+            <if test="processRouteId != null  and processRouteId != ''"> and process_route_id = #{processRouteId}</if>
+            <if test="processRouteHours != null  and processRouteHours != ''"> and process_route_hours = #{processRouteHours}</if>
+            <if test="requireAmount != null  and requireAmount != ''"> and require_amount = #{requireAmount}</if>
+            <if test="netRequirement != null  and netRequirement != ''"> and net_requirement = #{netRequirement}</if>
+            <if test="startDate != null  and startDate != ''"> and start_date = #{startDate}</if>
+            <if test="completeDate != null  and completeDate != ''"> and complete_date = #{completeDate}</if>
+            <if test="demandDate != null  and demandDate != ''"> and demand_date = #{demandDate}</if>
+            <if test="orgCode != null  and orgCode != ''"> and org_code = #{orgCode}</if>
+            <if test="productionBase != null  and productionBase != ''"> and production_base = #{productionBase}</if>
+            <if test="matchState != null  and matchState != ''"> and match_state = #{matchState}</if>
+            <if test="matchMode != null  and matchMode != ''"> and match_mode = #{matchMode}</if>
+            <if test="unmatchedDemandAmount != null  and unmatchedDemandAmount != ''"> and unmatched_demand_amount = #{unmatchedDemandAmount}</if>
+            <if test="suggestedCompletionDate != null  and suggestedCompletionDate != ''"> and suggested_completion_date = #{suggestedCompletionDate}</if>
+            <if test="hasDelayRisk != null  and hasDelayRisk != ''"> and has_delay_risk = #{hasDelayRisk}</if>
+            <if test="batchNumber != null  and batchNumber != ''"> and batch_number = #{batchNumber}</if>
+        </where>
+    </select>
+    
+    <select id="selectApsPlateStandardRequireById" parameterType="Long" resultMap="ApsPlateStandardRequireResult">
+        <include refid="selectApsPlateStandardRequireVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertApsPlateStandardRequire" parameterType="ApsPlateStandardRequire">
+        insert into aps_plate_standard_require
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="requireId != null">require_id,</if>
+            <if test="bomLineId != null">bom_line_id,</if>
+            <if test="bomLineCode != null">bom_line_code,</if>
+            <if test="bomLineLevel != null">bom_line_level,</if>
+            <if test="bomUseAmount != null">bom_use_amount,</if>
+            <if test="processRouteId != null">process_route_id,</if>
+            <if test="processRouteHours != null">process_route_hours,</if>
+            <if test="requireAmount != null">require_amount,</if>
+            <if test="netRequirement != null">net_requirement,</if>
+            <if test="startDate != null">start_date,</if>
+            <if test="completeDate != null">complete_date,</if>
+            <if test="demandDate != null">demand_date,</if>
+            <if test="orgCode != null">org_code,</if>
+            <if test="productionBase != null">production_base,</if>
+            <if test="matchState != null">match_state,</if>
+            <if test="matchMode != null">match_mode,</if>
+            <if test="unmatchedDemandAmount != null">unmatched_demand_amount,</if>
+            <if test="suggestedCompletionDate != null">suggested_completion_date,</if>
+            <if test="hasDelayRisk != null">has_delay_risk,</if>
+            <if test="batchNumber != null">batch_number,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</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="requireId != null">#{requireId},</if>
+            <if test="bomLineId != null">#{bomLineId},</if>
+            <if test="bomLineCode != null">#{bomLineCode},</if>
+            <if test="bomLineLevel != null">#{bomLineLevel},</if>
+            <if test="bomUseAmount != null">#{bomUseAmount},</if>
+            <if test="processRouteId != null">#{processRouteId},</if>
+            <if test="processRouteHours != null">#{processRouteHours},</if>
+            <if test="requireAmount != null">#{requireAmount},</if>
+            <if test="netRequirement != null">#{netRequirement},</if>
+            <if test="startDate != null">#{startDate},</if>
+            <if test="completeDate != null">#{completeDate},</if>
+            <if test="demandDate != null">#{demandDate},</if>
+            <if test="orgCode != null">#{orgCode},</if>
+            <if test="productionBase != null">#{productionBase},</if>
+            <if test="matchState != null">#{matchState},</if>
+            <if test="matchMode != null">#{matchMode},</if>
+            <if test="unmatchedDemandAmount != null">#{unmatchedDemandAmount},</if>
+            <if test="suggestedCompletionDate != null">#{suggestedCompletionDate},</if>
+            <if test="hasDelayRisk != null">#{hasDelayRisk},</if>
+            <if test="batchNumber != null">#{batchNumber},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateApsPlateStandardRequire" parameterType="ApsPlateStandardRequire">
+        update aps_plate_standard_require
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="requireId != null">require_id = #{requireId},</if>
+            <if test="bomLineId != null">bom_line_id = #{bomLineId},</if>
+            <if test="bomLineCode != null">bom_line_code = #{bomLineCode},</if>
+            <if test="bomLineLevel != null">bom_line_level = #{bomLineLevel},</if>
+            <if test="bomUseAmount != null">bom_use_amount = #{bomUseAmount},</if>
+            <if test="processRouteId != null">process_route_id = #{processRouteId},</if>
+            <if test="processRouteHours != null">process_route_hours = #{processRouteHours},</if>
+            <if test="requireAmount != null">require_amount = #{requireAmount},</if>
+            <if test="netRequirement != null">net_requirement = #{netRequirement},</if>
+            <if test="startDate != null">start_date = #{startDate},</if>
+            <if test="completeDate != null">complete_date = #{completeDate},</if>
+            <if test="demandDate != null">demand_date = #{demandDate},</if>
+            <if test="orgCode != null">org_code = #{orgCode},</if>
+            <if test="productionBase != null">production_base = #{productionBase},</if>
+            <if test="matchState != null">match_state = #{matchState},</if>
+            <if test="matchMode != null">match_mode = #{matchMode},</if>
+            <if test="unmatchedDemandAmount != null">unmatched_demand_amount = #{unmatchedDemandAmount},</if>
+            <if test="suggestedCompletionDate != null">suggested_completion_date = #{suggestedCompletionDate},</if>
+            <if test="hasDelayRisk != null">has_delay_risk = #{hasDelayRisk},</if>
+            <if test="batchNumber != null">batch_number = #{batchNumber},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteApsPlateStandardRequireById" parameterType="Long">
+        delete from aps_plate_standard_require where id = #{id}
+    </delete>
+
+    <delete id="deleteApsPlateStandardRequireByIds" parameterType="String">
+        delete from aps_plate_standard_require where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
\ No newline at end of file

--
Gitblit v1.9.3