From 6ecfe8f544f3ab27476892870600bc98b701976d Mon Sep 17 00:00:00 2001 From: ruanqi Date: Thu, 5 Jan 2023 18:04:31 +0800 Subject: [PATCH] =?UTF-8?q?0412=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/SOTaskOrderHeaderMapper.java | 42 +++++++++++++++++-- .../entity/HunlianTaskHeaderData.java | 10 ++++- .../service/impl/DailyPlanServiceImpl.java | 16 +++++++ .../mapper/production/DailyPlanMapper.xml | 4 +- .../production/SOTaskOrderHeaderMapper.xml | 21 ++++++++++ 5 files changed, 87 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/heai/modules/production/dao/SOTaskOrderHeaderMapper.java b/src/main/java/com/heai/modules/production/dao/SOTaskOrderHeaderMapper.java index 63cf414..fff8286 100644 --- a/src/main/java/com/heai/modules/production/dao/SOTaskOrderHeaderMapper.java +++ b/src/main/java/com/heai/modules/production/dao/SOTaskOrderHeaderMapper.java @@ -1,9 +1,8 @@ package com.heai.modules.production.dao; -import com.heai.modules.production.entity.DailyPlanInData; -import com.heai.modules.production.entity.DailyReportInData; -import com.heai.modules.production.entity.SOTaskOrderHeaderData; +import com.heai.modules.production.entity.*; +import com.sun.xml.internal.bind.v2.TODO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -152,4 +151,41 @@ public interface SOTaskOrderHeaderMapper { * @throw */ int checkBomIfHas(DailyReportInData inData); + + /** + * @Description 获取有混炼订单的明细 + * @Title getCombineTaskNo + * @param site +  * @param taskNo + * @author rq + * @date 2023/1/5 14:36 + * @return List + * @throw + */ + List getCombineTaskNo(@Param("site") String site,@Param("taskNo") String taskNo); + + /** + * @Description 检查是否状态不一样 + * @Title checkRepairSOFlag + * @param site +  * @param taskNo + * @author rq + * @date 2023/1/5 17:12 + * @return List + * @throw + */ + List checkRepairSOFlag(@Param("site") String site,@Param("taskNo") String taskNo); + /** + * @Description 检查版本号是否一致 + * @Title checkRev + * @param site +  * @param taskNo + * @author rq + * @date 2023/1/5 17:12 + * @return List + * @throw + */ + + List checkRev(@Param("site") String site,@Param("taskNo") String taskNo); + String getCombineOrderNo(); } diff --git a/src/main/java/com/heai/modules/production/entity/HunlianTaskHeaderData.java b/src/main/java/com/heai/modules/production/entity/HunlianTaskHeaderData.java index 97bc22c..50d1740 100644 --- a/src/main/java/com/heai/modules/production/entity/HunlianTaskHeaderData.java +++ b/src/main/java/com/heai/modules/production/entity/HunlianTaskHeaderData.java @@ -68,7 +68,7 @@ public class HunlianTaskHeaderData { private Date deleteDate; private List detailList; - + private String orderRef1; public String getSite() { return site; } @@ -180,5 +180,13 @@ public class HunlianTaskHeaderData { public void setRemark(String remark) { this.remark = remark; } + + public String getOrderRef1() { + return orderRef1; + } + + public void setOrderRef1(String orderRef1) { + this.orderRef1 = orderRef1; + } } diff --git a/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java b/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java index 9369f84..b65e42f 100644 --- a/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java +++ b/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java @@ -1095,6 +1095,22 @@ public class DailyPlanServiceImpl implements DailyPlanService { throw new RuntimeException("与后台数据不一致,请刷新页面或者重新查询数据!"); } dailyPlanMapper.updateSOTaskDispatchedFlag(detailList.get(0).getSite(),taskNo,"Y"); + List getCombineTaskNo=sOTaskOrderHeaderMapper.getCombineTaskNo(detailList.get(0).getSite(),taskNo); + if(getCombineTaskNo.size()>0){ + //判断混炼单能否合并 + List checkRepairSOFlag=sOTaskOrderHeaderMapper.checkRepairSOFlag(detailList.get(0).getSite(),taskNo); + if(checkRepairSOFlag.size()>0){ + throw new RuntimeException("混炼生产订单返工的与非返工的不能合并!"); + } + + //判断版本号是否一致 + List checkRev=sOTaskOrderHeaderMapper.checkRev(detailList.get(0).getSite(),taskNo); + if(checkRev.size()>0){ + throw new RuntimeException("混炼生产订单BOM版本或者工艺路线版本不一致的不能合并!!"); + } + String orderNo=sOTaskOrderHeaderMapper.getCombineOrderNo(); + + } dailyPlanMapper.saveHunlianTaskHeaderData(inData); } diff --git a/src/main/resources/mapper/production/DailyPlanMapper.xml b/src/main/resources/mapper/production/DailyPlanMapper.xml index 1f79e86..b9ed447 100644 --- a/src/main/resources/mapper/production/DailyPlanMapper.xml +++ b/src/main/resources/mapper/production/DailyPlanMapper.xml @@ -679,8 +679,8 @@ - insert into Hunlian_TaskHeader (Site,TaskNo,TaskQty,PartNo,CreateDate,CreateBy,ReportFlag,ReportQty,DeleteFlag,WareHouseFlag,WareHouseQty,Remark) - values(#{site},#{taskNo},#{taskQty},#{partNo},GetDate(),#{createBy},'N',0,'N','N',0,#{remark}) + insert into Hunlian_TaskHeader (Site,TaskNo,TaskQty,PartNo,CreateDate,CreateBy,ReportFlag,ReportQty,DeleteFlag,WareHouseFlag,WareHouseQty,Remark,OrderRef1) + values(#{site},#{taskNo},#{taskQty},#{partNo},GetDate(),#{createBy},'N',0,'N','N',0,#{remark},#{orderRef1}) select top 1 round(#{reportQty}*(1 - d.ScraptFactor/100.0)/ d.QtyAssembly,1) from SOBOM d where d.OrderNo=#{orderRef1} and d.Site=#{site} + + + + + + \ No newline at end of file