sfd
2025-05-13 46ebb4f42bf48f33375cdc7f364f512c0c595110
钣金工单计划管理 查询添加删除标记,添加排产计划管理
已重命名1个文件
已添加8个文件
已修改1个文件
733 ■■■■■ 文件已修改
aps-modules/aps-core/src/main/java/com/aps/core/controller/ApsPlanManagementController.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateOrderPlanManagerController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanCycle.java 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanManagement.java 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanCycleMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanManagementMapper.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlanManagementService.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanManagementServiceImpl.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanManagementMapper.xml 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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));
    }
}
aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateOrderPlanManagerController.java
ÎļþÃû´Ó aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlatOrderPlanManagerController.java ÐÞ¸Ä
@@ -21,7 +21,7 @@
 */
@RestController
@RequestMapping("/ApsPlatOrderPlanManager")
public class ApsPlatOrderPlanManagerController extends BaseController
public class ApsPlateOrderPlanManagerController extends BaseController
{
    @Autowired
    private IApsPlateOrderPlanManagerService iapPlateOrderPlanManagerService;
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();
    }
}
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();
    }
}
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);
}
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);
}
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);
}
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);
        }
    }
}
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>
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
            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>