From 61eb6b9768f341be77fa02e527a817caf3521bfb Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期一, 19 五月 2025 13:23:50 +0800 Subject: [PATCH] 钣金工单计划:批量更新工单计划日期 --- aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlateStandardRequireOrderEndDayService.java | 3 + aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml | 47 +++++++++++++++++++++-- aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireOrderEndDayMapper.java | 9 ++++ aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireOrderEndDayServiceImpl.java | 16 ++++++++ aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlate/ApsPlateStandardRequireOrderEndDay.java | 29 ++------------ aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateOrderPlanManagerServiceImpl.java | 15 +++++-- 6 files changed, 87 insertions(+), 32 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlate/ApsPlateStandardRequireOrderEndDay.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlate/ApsPlateStandardRequireOrderEndDay.java index 2eb96d4..ba4355e 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlate/ApsPlateStandardRequireOrderEndDay.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlate/ApsPlateStandardRequireOrderEndDay.java @@ -22,30 +22,6 @@ private Long id; /** - * Bom鈥擮rder鍏崇郴ID - */ - @TableField(value = "bom_order_id") - private Long bomOrderId; - - /** - * 闇�姹侷D - */ - @TableField(value = "require_id") - private Long requireId; - - /** - * 闇�姹傝拷婧疘D - */ - @TableField(value = "require_track_id") - private String requireTrackId; - - /** - * 鏂欏彿 - */ - @TableField(value = "bom_line_code") - private String bomLineCode; - - /** * 璁㈠崟鍙� */ @TableField(value = "doc_no") @@ -54,6 +30,11 @@ /** * 鑷畾涔夎鍒掑畬鎴愭椂闂� */ + @TableField(value = "plan_start_day") + private Date planStartDay; + /** + * 鑷畾涔夎鍒掑畬鎴愭椂闂� + */ @TableField(value = "plan_end_day") private Date planEndDay; diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireOrderEndDayMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireOrderEndDayMapper.java index 9ce7388..6238f9c 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireOrderEndDayMapper.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlateStandardRequireOrderEndDayMapper.java @@ -1,7 +1,11 @@ package com.aps.core.mapper; +import com.aps.core.domain.ApsPlate.ApsPlateOrderPlanDate; import com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; /** * @author zhl @@ -9,8 +13,13 @@ * @createDate 2025-05-19 10:20:50 * @Entity com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay */ +@Mapper public interface ApsPlateStandardRequireOrderEndDayMapper extends BaseMapper<ApsPlateStandardRequireOrderEndDay> { + Integer batchInsert(List<Long> planIds,String createBy); + Integer batchRemove(List<Long> planIds); + + } diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlateStandardRequireOrderEndDayService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlateStandardRequireOrderEndDayService.java index 45ec7db..c696ef1 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlateStandardRequireOrderEndDayService.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlateStandardRequireOrderEndDayService.java @@ -3,6 +3,8 @@ import com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** * @author zhl * @description 閽堝琛ㄣ�恆ps_plate_standard_require_order_end_day(闇�姹傝鍒掑畬鎴愭棩鏈熻〃)銆戠殑鏁版嵁搴撴搷浣淪ervice @@ -10,4 +12,5 @@ */ public interface ApsPlateStandardRequireOrderEndDayService extends IService<ApsPlateStandardRequireOrderEndDay> { + int saveBatch(List<Long> planIds); } diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateOrderPlanManagerServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateOrderPlanManagerServiceImpl.java index 056b72f..21c6be4 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateOrderPlanManagerServiceImpl.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateOrderPlanManagerServiceImpl.java @@ -11,6 +11,7 @@ import com.aps.core.service.ApsPlate.IApsPlateOrderPlanManagerService; import com.aps.core.service.ApsPlate.IApsPlateStandardRequireBatchService; import com.aps.core.service.ApsPlate.IApsPlateStandardRequireService; +import com.aps.core.service.ApsPlateStandardRequireOrderEndDayService; import jakarta.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -35,6 +36,9 @@ IApsPlateStandardRequireBatchService requireBatchService; @Resource ApsPlanTaskService planTaskService; + @Resource + ApsPlateStandardRequireOrderEndDayService orderEndDayService; + /** * 鏌ヨ閽i噾宸ュ崟璁″垝绠$悊 * @@ -69,15 +73,18 @@ apsPlateOrderPlanDate.setUpdateBy(SecurityUtils.getUsername()); apsPlateOrderPlanManagerMapper.updatePlanDateByCustom(apsPlateOrderPlanDate); } else { - List<ApsPlateOrderPlanRequireDate> planRequireDates = apsPlateOrderPlanManagerMapper.selectPlanRequireIds(apsPlateOrderPlanDate.getPlanIds()); + List<Long> planIds = apsPlateOrderPlanDate.getPlanIds(); + orderEndDayService.saveBatch(planIds); + + /*List<ApsPlateOrderPlanRequireDate> planRequireDates = apsPlateOrderPlanManagerMapper.selectPlanRequireIds(planIds); planRequireDates.forEach(planRequireDate -> { planRequireDate.setUpdateBy(SecurityUtils.getUsername()); apsPlateOrderPlanManagerMapper.updatePlanDateByBatch(planRequireDate); - }); + });*/ } - String batchNum= requireBatchService.getNewBatchNumber(); +/* String batchNum= requireBatchService.getNewBatchNumber(); planTaskService.savePlanTask(batchNum); apsPlateStandardRequireService.generatorPlan(batchNum); - planTaskService.updateTaskStatus(batchNum, PLAN_TASK_STATUS.FINISHED); + planTaskService.updateTaskStatus(batchNum, PLAN_TASK_STATUS.FINISHED);*/ } } diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireOrderEndDayServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireOrderEndDayServiceImpl.java index b128161..924c909 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireOrderEndDayServiceImpl.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateStandardRequireOrderEndDayServiceImpl.java @@ -1,10 +1,15 @@ package com.aps.core.service.impl.ApsPlate; +import com.aps.common.security.utils.SecurityUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay; import com.aps.core.service.ApsPlateStandardRequireOrderEndDayService; import com.aps.core.mapper.ApsPlateStandardRequireOrderEndDayMapper; +import jakarta.annotation.Resource; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** * @author zhl @@ -15,6 +20,17 @@ public class ApsPlateStandardRequireOrderEndDayServiceImpl extends ServiceImpl<ApsPlateStandardRequireOrderEndDayMapper, ApsPlateStandardRequireOrderEndDay> implements ApsPlateStandardRequireOrderEndDayService{ + @Resource + ApsPlateStandardRequireOrderEndDayMapper mapper; + + + @Transactional + @Override + public int saveBatch(List<Long> planIds) + { + mapper.batchRemove(planIds); + return mapper.batchInsert(planIds, SecurityUtils.getUsername()); + } } diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml index 4005b20..eeaab37 100644 --- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml +++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml @@ -6,11 +6,9 @@ <resultMap id="BaseResultMap" type="com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay"> <id property="id" column="id" /> - <result property="bomOrderId" column="bom_order_id" /> - <result property="requireId" column="require_id" /> - <result property="requireTrackId" column="require_track_id" /> - <result property="bomLineCode" column="bom_line_code" /> + <result property="docNo" column="doc_no" /> + <result property="planStartDay" column="plan_end_day" /> <result property="planEndDay" column="plan_end_day" /> <result property="orgCode" column="org_code" /> <result property="batchNumber" column="batch_number" /> @@ -26,4 +24,45 @@ plan_end_day,org_code,batch_number,del_flag,create_by, create_time,update_by,update_time </sql> + + <sql id="select_plan_time"> + with a as ( + select snow_next_id() as id, + plan.id as plan_id, + detail.doc_no, + min(require.start_date) as start_date, + min(require.complete_date) as end_date, + detail.org_code, + detail.batch_number + from aps_plate_standard_require_bom_order_detail detail + 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 require.del_flag = '0' and detail.del_flag='0' + and plan.id in + <foreach collection="planIds" item="planId" open="(" separator="," close=")"> + #{planId} + </foreach> + group by plan.id ,detail.doc_no,detail.org_code,detail.batch_number + ) + </sql> + <insert id="batchInsert" parameterType="Long"> + <include refid="select_plan_time" /> + insert into aps_plate_standard_require_order_end_day + (id,plan_id, doc_no, plan_start_day, plan_end_day, org_code, batch_number + , del_flag, create_time, create_by + ) + select a.id, a.plan_id, a.doc_no, a.start_date, a.end_date, a.org_code, a.batch_number, + 0, now(), #{createBy} + from a + + </insert> + <update id="batchRemove" parameterType="Long"> + update aps_plate_standard_require_order_end_day + set del_flag=1 + where plan_id in + <foreach collection="planIds" item="planId" open="(" separator="," close=")"> + #{planId} + </foreach> + </update> + </mapper> -- Gitblit v1.9.3