From 6b67fa78dfced965583f44b9d3b5a921ab9b2dfd Mon Sep 17 00:00:00 2001 From: jason Date: Mon, 12 May 2025 21:26:10 +0800 Subject: [PATCH] =?UTF-8?q?46757=20=E4=BB=A3=E5=BC=80=E7=A5=A8=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E6=94=AF=E6=8C=81=E6=9D=A1=E7=A0=81=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/pcn/api/base/IMesCustomerPartService.java | 1 + .../serviceimpl/base/MesCustomerPartService.java | 20 +++++++++++++ .../serviceimpl/busi/MesProduceSnPrintService.java | 7 ++++- ...ChengDuSimpleYearNumberRuleStrategyService.java | 13 +++------ .../CustCodeWhqrNumberRuleStrategyService.java | 14 +++------ .../numberrule/GqxnyNumberRuleStrategyService.java | 32 ++++----------------- .../MesDPBarcodeWhNumberRuleStrategyService.java | 12 +++----- .../MesNoSortCustSnNumberRuleStrategyService.java | 10 +++---- .../XiaoPengNewNumberRuleStrategyService.java | 17 ++++------- .../XiaoPengNumberRule2StrategyService.java | 30 ++++---------------- .../XiaoPengNumberRuleStrategyService.java | 30 ++++---------------- .../print/strategy/AionPrintStrategy.java | 30 +++++--------------- .../print/strategy/CustCodeWhqrPrintStrategy.java | 16 ++++++----- .../print/strategy/CustomFieldPrintStrategy.java | 33 +++++++++------------- .../print/strategy/GqaaPrintStrategy.java | 13 +++++++-- .../print/strategy/GqxnyPrintStrategy.java | 10 ++++++- .../strategy/InternalBarcodePrintStrategy.java | 20 ++++--------- .../print/strategy/LiJiaBx1eSnPrintStrategy.java | 20 ++++--------- .../strategy/LiJiaInterPartSnPrintStrategy.java | 21 ++++---------- .../strategy/LiJiaInterTimeSnPrintStrategy.java | 20 ++++--------- .../print/strategy/MesCommonPrintStrategy.java | 20 ++++--------- ...BarcodeSubStringPartSnParamWhPrintStrategy.java | 4 --- .../strategy/MesNingDeBarcodePrintStrategy.java | 23 +++++++-------- .../print/strategy/WuHanLengDaoPrintStrategy.java | 21 +++++--------- .../strategy/WuHanPaintCenterPrint2Strategy.java | 4 --- .../strategy/WuHanPaintCenterPrintStrategy.java | 4 --- .../print/strategy/WuhanSnPrintStrategy.java | 2 +- .../print/strategy/XiaoPengNewPrintStrategy.java | 27 +++++------------- .../print/strategy/XiaoPengPrintStrategy.java | 27 +++++------------- .../print/strategy/YfaiPackageNoPrintStrategy.java | 24 ++++++++-------- 30 files changed, 189 insertions(+), 336 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesCustomerPartService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesCustomerPartService.java index 5ec36b3..2b7d0ee 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesCustomerPartService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesCustomerPartService.java @@ -19,4 +19,5 @@ public interface IMesCustomerPartService { @ApiOperation(value = "根据物料代码查询物料信息") MesCustomerPart getMesCustomerPart(String organizeCode,String partNo); + String getCustPartNo(String organizeCode, String partNo); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesCustomerPartService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesCustomerPartService.java index f77d2fe..afe0be4 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesCustomerPartService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesCustomerPartService.java @@ -5,7 +5,9 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; +import cn.estsh.i3plus.pojo.mes.bean.MesCustPartInvoiced; import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; +import cn.estsh.i3plus.pojo.mes.repository.MesCustPartInvoicedRepository; import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +24,9 @@ public class MesCustomerPartService implements IMesCustomerPartService { @Autowired private MesCustomerPartRepository customerPartRepository; + @Autowired + private MesCustPartInvoicedRepository partInvoicedRao; + @Override public MesCustomerPart getMesCustomerPartByPartNo(String erpPartNo, String custCode, String organizeCode) { @@ -42,4 +47,19 @@ public class MesCustomerPartService implements IMesCustomerPartService { DdlPreparedPack.getStringEqualPack(partNo, "erpPartNo", ddlPackBean); return customerPartRepository.getByProperty(ddlPackBean); } + + @Override + public String getCustPartNo(String organizeCode, String partNo) { + if (StringUtils.isEmpty(partNo)|| StringUtils.isEmpty(organizeCode)) return ""; + + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(partNo, "partNo", ddlPackBean); + MesCustPartInvoiced invoiced = partInvoicedRao.getByProperty(ddlPackBean); + if (invoiced != null && !StringUtils.isEmpty(invoiced.getCustPartNo())) { + return invoiced.getCustPartNo(); + } + + MesCustomerPart customerPart = getMesCustomerPart(organizeCode, partNo); + return customerPart != null ? customerPart.getCustPartNo() : ""; + } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java index f26e2ba..1dc41e1 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesTemplateService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.*; @@ -70,6 +71,9 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService { private MesCustomerPartRepository mesCustomerPartRDao; @Autowired + private IMesCustomerPartService mesCustomerPartService; + + @Autowired private MesProductionAssemblyRepository mesProductionAssemblyRepository; @Autowired @@ -171,6 +175,7 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService { } MesCustomerPart mesCustomerPart = getMesCustomerPart(mesProduceSnPrintModel); + final String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); GenSerialNoModel genSerialNoModel = new GenSerialNoModel(); genSerialNoModel.setRuleCode(numberRule.getRuleCode()); genSerialNoModel.setPartNo(mesPart.getPartNo()); @@ -178,7 +183,7 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService { genSerialNoModel.putDataMap(MesCustomerPart.class.getSimpleName(), mesCustomerPart); genSerialNoModel.setShiftCode(mesProduceSnPrintModel.getShiftCode()); genSerialNoModel.setOrganizeCode(organizeCode); - genSerialNoModel.setCustPartNo(mesCustomerPart == null ? null : mesCustomerPart.getCustPartNo()); + genSerialNoModel.setCustPartNo(custPartNo); IPrintTemplateStrategyService templateStrategy = (IPrintTemplateStrategyService) SpringContextsUtil.getBean(methodCode); MesProduceSnPrintModel resultModel = templateStrategy.execute(genSerialNoModel, mesProduceSnPrintModel, numberRule,null,null,false); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/ChengDuSimpleYearNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/ChengDuSimpleYearNumberRuleStrategyService.java index d6fe3b9..58eeaa9 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/ChengDuSimpleYearNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/ChengDuSimpleYearNumberRuleStrategyService.java @@ -3,16 +3,13 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.Map; -import java.util.Objects; /** * @Description : MES-客户条码(成都) @@ -29,13 +26,11 @@ public class ChengDuSimpleYearNumberRuleStrategyService implements INumberRulePa @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { - Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (Objects.isNull(customerPart)) { + final String custPartNo = mesCustomerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", genSerialNoModel.getPartNo()); } - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); + genSerialNoModel.setCustPartNo(custPartNo); Date date = new Date(); genSerialNoModel.setYear(getYear(date)); return genSerialNoModel; diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/CustCodeWhqrNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/CustCodeWhqrNumberRuleStrategyService.java index 0ad0234..af0bfbf 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/CustCodeWhqrNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/CustCodeWhqrNumberRuleStrategyService.java @@ -3,14 +3,10 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Map; -import java.util.Objects; +import org.springframework.util.StringUtils; /** * @Description : MES-客户条码(芜湖奇瑞) @@ -27,13 +23,11 @@ public class CustCodeWhqrNumberRuleStrategyService implements INumberRulePackAtt @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { - Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (Objects.isNull(customerPart)) { + final String custPartNo = mesCustomerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", genSerialNoModel.getPartNo()); } - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); + genSerialNoModel.setCustPartNo(custPartNo); return genSerialNoModel; } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/GqxnyNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/GqxnyNumberRuleStrategyService.java index 5509b73..b094e54 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/GqxnyNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/GqxnyNumberRuleStrategyService.java @@ -1,26 +1,19 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; -import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.StringUtilExt; import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.mes.bean.MesConfig; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; -import org.springframework.util.StringUtils; import java.util.Date; -import java.util.Map; -import java.util.Objects; /** * @Description : @@ -38,6 +31,9 @@ public class GqxnyNumberRuleStrategyService implements INumberRulePackAttributeS @Autowired private MesCustomerPartRepository customerPartRepository; + @Autowired + private IMesCustomerPartService mesCustomerPartService; + @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { //----广乘 45位 GQXNY @@ -45,12 +41,8 @@ public class GqxnyNumberRuleStrategyService implements INumberRulePackAttributeS //客户零件号-扩展位-客户代码-预留位000-产线1-年月日-条码-扩展0000-追溯位+ //零件长号---17位,不足17位 右边补* //获取客户零件号 - Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (null != customerPart) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + final String custPartNo = mesCustomerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + genSerialNoModel.setCustPartNo(custPartNo); //拓展位 2位 00 包含0~9,A~Z 不使用时,补“0”填充 {SPILTRULE} //供应商代码 7位 供应商代码 0~9,A~Z;不足7位 右测补* @@ -72,16 +64,4 @@ public class GqxnyNumberRuleStrategyService implements INumberRulePackAttributeS return genSerialNoModel; } - - private MesCustomerPart getMesCustomerPart(String orgaizeCode, String partNo) { - if (StringUtils.isEmpty(orgaizeCode) || StringUtils.isEmpty(partNo)) return null; - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(orgaizeCode); - DdlPreparedPack.getStringEqualPack(partNo, MesPcnExtConstWords.ERP_PART_NO, ddlPackBean); - MesCustomerPart customerPart = customerPartRepository.getByProperty(ddlPackBean); - if (Objects.isNull(customerPart)) { - MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", partNo); - } - return customerPart; - } - } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesDPBarcodeWhNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesDPBarcodeWhNumberRuleStrategyService.java index 78615d8..89f9ddc 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesDPBarcodeWhNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesDPBarcodeWhNumberRuleStrategyService.java @@ -6,7 +6,6 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.api.iservice.base.IPartService; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; @@ -45,18 +44,15 @@ public class MesDPBarcodeWhNumberRuleStrategyService implements INumberRulePackA MesPart part = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesPart.class.getSimpleName())) ? (MesPart) dataMap.get(MesPart.class.getSimpleName()) : partService.getPartByNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) - ? (MesCustomerPart) dataMap.get(MesCustomerPart.class.getSimpleName()) - : customerPartService.getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + final String custPartNo = customerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); if (null == part) MesPcnException.throwBusiException("请检查零件信息,零件[%s]信息不存在!", genSerialNoModel.getPartNo()); - if (null == customerPart) MesPcnException.throwBusiException("请检查客户零件信息,零件号[%s]对应的客户零件信息不存在!", genSerialNoModel.getPartNo()); - if (StringUtils.isEmpty(customerPart.getCustPartNo())) MesPcnException.throwBusiException("请检查客户零件信息,零件号[%s]对应的客户零件信息未维护客户零件号!", part.getPartNo()); - if (customerPart.getCustPartNo().length() < 4) MesPcnException.throwBusiException("请检查客户零件信息,零件号[%s]对应的客户零件号[%s]长度小于4!", part.getPartNo(), customerPart.getCustPartNo()); + if (StringUtils.isEmpty(custPartNo)) MesPcnException.throwBusiException("请检查客户零件信息,零件号[%s]对应的客户零件信息未维护客户零件号!", part.getPartNo()); + if (custPartNo.length() < 4) MesPcnException.throwBusiException("请检查客户零件信息,零件号[%s]对应的客户零件号[%s]长度小于4!", part.getPartNo(), custPartNo); if (StringUtils.isEmpty(genSerialNoModel.getShiftCode())) MesPcnException.throwBusiException("入参缺少班次代码!"); genSerialNoModel.partSnParam(part.getPartSnParam()) - .dynamicRule(new StringJoiner(MesPcnExtConstWords.COMMA).add(customerPart.getCustPartNo().substring(customerPart.getCustPartNo().length() - 4)).add(genSerialNoModel.getShiftCode()).toString()); + .dynamicRule(new StringJoiner(MesPcnExtConstWords.COMMA).add(custPartNo.substring(custPartNo.length() - 4)).add(genSerialNoModel.getShiftCode()).toString()); //年月日缩写 Date date = new Date(); genSerialNoModel.setYear(getYearShort(date)); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java index 5cb280f..2f31daa 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java @@ -34,16 +34,14 @@ public class MesNoSortCustSnNumberRuleStrategyService implements INumberRulePack @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : customerPartService.getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (null != customerPart) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - }else { + final String custPartNo = customerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", genSerialNoModel.getPartNo()); } + genSerialNoModel.setCustPartNo(custPartNo); Calendar custCalendar = Calendar.getInstance(); custCalendar.setTime(new Date()); - String partNo = customerPart.getCustPartNo(); + String partNo = custPartNo; String prefix = partNo.substring(0, partNo.length() - 4); String partNo4 = partNo.substring(partNo.length() - 4).toUpperCase(); genSerialNoModel.setPartNo(prefix+partNo4); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNewNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNewNumberRuleStrategyService.java index 56a3cf1..ee67cbb 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNewNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNewNumberRuleStrategyService.java @@ -1,13 +1,10 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -24,9 +21,8 @@ import java.util.Date; **/ @Component public class XiaoPengNewNumberRuleStrategyService implements INumberRulePackAttributeStrategyService { - @Autowired - private MesCustomerPartRepository customerPartRepository; + private IMesCustomerPartService customerPartService; @Override public GenSerialNoModel execute(GenSerialNoModel model) { @@ -36,13 +32,12 @@ public class XiaoPengNewNumberRuleStrategyService implements INumberRulePackAttr if (StringUtils.isEmpty(model.getPartNo())) MesPcnException.throwMesBusiException("XiaoPengNumberRuleStrategyService执行异常:缺失零件编码参数"); - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(model.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(model.getPartNo(), "erpPartNo", ddlPackBean); - MesCustomerPart customerPart = customerPartRepository.getByProperty(ddlPackBean); - if (null == customerPart) + final String custPartNo = customerPartService.getCustPartNo(model.getOrganizeCode(), model.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", model.getPartNo()); + } - model.setCustPartNo(customerPart.getCustPartNo()); + model.setCustPartNo(custPartNo); Date date = new Date(); // XIAO_PENG 原客户条码.小鹏汽车 NoSortBarCodeGZ-new diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRule2StrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRule2StrategyService.java index ebe7328..7ad3ad6 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRule2StrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRule2StrategyService.java @@ -1,40 +1,29 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; -import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import java.util.Date; -import java.util.Map; @Component public class XiaoPengNumberRule2StrategyService implements INumberRulePackAttributeStrategyService { - @Autowired - private MesCustomerPartRepository customerPartRepository; + private IMesCustomerPartService customerPartService; @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { - - Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (null != customerPart) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - }else { + final String custPartNo = customerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", genSerialNoModel.getPartNo()); } + genSerialNoModel.setCustPartNo(custPartNo); //年月日缩写 Date date = new Date(); @@ -55,13 +44,4 @@ public class XiaoPengNumberRule2StrategyService implements INumberRulePackAttrib private String getDayShort(Date date) { return MesExtEnumUtil.DAY_SHORT2.valueOfDescription(Integer.parseInt(TimeTool.getDay(date))); } - - private MesCustomerPart getMesCustomerPart(String orgaizeCode, String partNo) { - if (StringUtils.isEmpty(orgaizeCode) || StringUtils.isEmpty(partNo)) return null; - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(orgaizeCode); - DdlPreparedPack.getStringEqualPack(partNo, MesPcnExtConstWords.ERP_PART_NO, ddlPackBean); - MesCustomerPart customerPart = customerPartRepository.getByProperty(ddlPackBean); - return customerPart; - } - } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRuleStrategyService.java index 6103380..adfef15 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/XiaoPengNumberRuleStrategyService.java @@ -1,22 +1,16 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; -import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import java.util.Date; -import java.util.Map; /** * @Description : @@ -27,21 +21,16 @@ import java.util.Map; **/ @Component public class XiaoPengNumberRuleStrategyService implements INumberRulePackAttributeStrategyService { - @Autowired - private MesCustomerPartRepository customerPartRepository; + private IMesCustomerPartService customerPartService; @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { - - Map dataMap = genSerialNoModel.getDataMap(); - MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? - (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : getMesCustomerPart(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); - if (null != customerPart) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - }else { + final String custPartNo = customerPartService.getCustPartNo(genSerialNoModel.getOrganizeCode(), genSerialNoModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", genSerialNoModel.getPartNo()); } + genSerialNoModel.setCustPartNo(custPartNo); //年月日缩写 Date date = new Date(); @@ -63,13 +52,4 @@ public class XiaoPengNumberRuleStrategyService implements INumberRulePackAttribu private String getDayShort(Date date) { return TimeTool.getDay(date); } - - private MesCustomerPart getMesCustomerPart(String orgaizeCode, String partNo) { - if (StringUtils.isEmpty(orgaizeCode) || StringUtils.isEmpty(partNo)) return null; - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(orgaizeCode); - DdlPreparedPack.getStringEqualPack(partNo, MesPcnExtConstWords.ERP_PART_NO, ddlPackBean); - MesCustomerPart customerPart = customerPartRepository.getByProperty(ddlPackBean); - return customerPart; - } - } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AionPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AionPrintStrategy.java index b876eda..84986ab 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AionPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AionPrintStrategy.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -14,27 +15,24 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.*; +import cn.estsh.i3plus.pojo.mes.bean.MesConfig; +import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; +import cn.estsh.i3plus.pojo.mes.bean.MesPart; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import cn.estsh.i3plus.pojo.mes.model.StationRequestBean; import cn.estsh.i3plus.pojo.mes.model.StepResult; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.repository.MesNumberRuleRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ResultBean; -import cn.hutool.core.bean.BeanUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; -import java.util.Objects; - /** * @Description : 广州打印主条码使用 * @Reference : @@ -58,7 +56,7 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService { private IConfigService configService; @Autowired - private MesCustomerPartRepository mesCustomerPartRDao; + private IMesCustomerPartService mesCustomerPartService; @Autowired private MesNumberRuleRepository numberRuleRepository; @@ -77,8 +75,7 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService { } //获取工厂名称 String organizeName = mesConfig.getCfgValue(); - MesCustomerPart mesCustomerPart = getMesCustomerPart(mesProduceSnPrintModel); - String custPartNo = mesCustomerPart == null ? "" : mesCustomerPart.getCustPartNo(); + String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); if (!isStep){ @@ -157,17 +154,4 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService { ConvertBean.serviceModelInitialize(mesProduceSn, userName); return mesProduceSn; } - - private MesCustomerPart getMesCustomerPart(MesProduceSnPrintModel mesProduceSnPrintModel) { - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesProduceSnPrintModel.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(mesProduceSnPrintModel.getPartNo(), "erpPartNo", ddlPackBean); - MesCustomerPart mesCustomerPart = mesCustomerPartRDao.getByProperty(ddlPackBean); - /** - * 2024/07/25 打印模板不校验 客户零件号,校验客户零件号移动到条码规则中 numberRule的策略中 - */ -// if (Objects.isNull(mesCustomerPart)) { -// MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); -// } - return mesCustomerPart; - } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustCodeWhqrPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustCodeWhqrPrintStrategy.java index 693c833..5d5db2f 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustCodeWhqrPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustCodeWhqrPrintStrategy.java @@ -72,14 +72,18 @@ public class CustCodeWhqrPrintStrategy implements IPrintTemplateStrategyService if (Objects.isNull(customerPart)) { MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); } + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode, mesProduceSnPrintModel.getPartNo()); + if (StringUtil.isEmpty(custPartNo)) { + MesPcnException.throwMesBusiException("请检查客户零件信息,零件[%s]客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); + } if (!isStep) { genSerialNoModel.putDataMap(MesCustomerPart.class.getSimpleName(), customerPart); - genSerialNoModel.partSnParam(mesPart.getPartSnParam()).setCustPartNo(customerPart.getCustPartNo()); + genSerialNoModel.partSnParam(mesPart.getPartSnParam()).setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel, mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart, supplierCode); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo, supplierCode); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -88,7 +92,7 @@ public class CustCodeWhqrPrintStrategy implements IPrintTemplateStrategyService } else { MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart, supplierCode); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo, supplierCode); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -123,13 +127,11 @@ public class CustCodeWhqrPrintStrategy implements IPrintTemplateStrategyService return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart, String supplierCode) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo, String supplierCode) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java index 49c347d..60611aa 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java @@ -13,7 +13,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -24,9 +23,11 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @Description :通用打印方式 @@ -61,20 +62,18 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); Map customParamValue = mesTemplateService.queryMesLabelTemplateParamPartValue(mesPart.getPartNo(), mesPart.getProductLabelTemplate(), organizeCode); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); - Map printTemplateData = new HashMap<>(getPrintContextMap(produceSn, customerPart)); + Map printTemplateData = new HashMap<>(getPrintContextMap(produceSn, custPartNo)); printTemplateData.putAll(customParamValue); mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); //保存打印记录 @@ -83,9 +82,9 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); - Map printTemplateData = new HashMap<>(getPrintContextMap(mesProduceSn, customerPart)); + Map printTemplateData = new HashMap<>(getPrintContextMap(mesProduceSn, custPartNo)); printTemplateData.putAll(customParamValue); List> printDataMapList = new ArrayList<>(); printDataMapList.add(printTemplateData); @@ -118,13 +117,11 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); @@ -132,13 +129,11 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { return mesProduceSnPrintDataModel; } - private Map getPrintContextMap(MesProduceSn produceSn, MesCustomerPart customerPart) { + private Map getPrintContextMap(MesProduceSn produceSn, String custPartNo) { Map result = new HashMap<>(); result.put(MesPcnExtConstWords.PART_NO, produceSn.getPartNo()); result.put(MesPcnExtConstWords.PART_NAME, produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - result.put(MesPcnExtConstWords.CUST_PART_NO, customerPart.getCustPartNo()); - } + result.put(MesPcnExtConstWords.CUST_PART_NO, custPartNo); result.put(MesPcnExtConstWords.PRINT_BAR_CODE, produceSn.getProductSn()); result.put(MesPcnExtConstWords.PRINT_DATE, TimeTool.getNowTime(true)); result.put(MesPcnExtConstWords.USER_NAME, produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqaaPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqaaPrintStrategy.java index 3c14ed7..bff35f5 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqaaPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqaaPrintStrategy.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -66,6 +67,9 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService { @Autowired private IMesPrintedSnLogService mesPrintedSnLogService; + @Autowired + private IMesCustomerPartService mesCustomerPartService; + @Override public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) { // 获取工厂名称 @@ -76,7 +80,10 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService { } //获取工厂名称 String organizeName = mesConfig.getCfgValue(); - MesCustomerPart mesCustomerPart = getMesCustomerPart(mesProduceSnPrintModel); + final String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { + MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); + } //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); if (!isStep){ @@ -85,7 +92,7 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, resultBean.getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, numberRule, mesCustomerPart.getCustPartNo(), organizeName); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, numberRule, custPartNo, organizeName); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -95,7 +102,7 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService { numberRule = getNumberRule(organizeCode, mesPart); MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, numberRule, mesCustomerPart.getCustPartNo(), organizeName); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, numberRule, custPartNo, organizeName); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel)); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqxnyPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqxnyPrintStrategy.java index fb0b4c1..0cd27bf 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqxnyPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/GqxnyPrintStrategy.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -62,6 +63,9 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService { private MesCustomerPartRepository mesCustomerPartRDao; @Autowired + private IMesCustomerPartService mesCustomerPartService; + + @Autowired private MesNumberRuleRepository numberRuleRepository; @Autowired @@ -70,7 +74,11 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService { @Override public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule,StepResult stepResult, StationRequestBean reqBean,Boolean isStep) { //获取客户零件号 - String custPartNo = getMesCustomerPart(mesProduceSnPrintModel).getCustPartNo(); +// String custPartNo = getMesCustomerPart(mesProduceSnPrintModel).getCustPartNo(); + String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) { + MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); + } // 获取工厂名称 String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); MesConfig mesConfig = configService.getMesConfigByCfgCode(MesPcnExtConstWords.ORGANIZE_NAME, organizeCode); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/InternalBarcodePrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/InternalBarcodePrintStrategy.java index d532366..90c0303 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/InternalBarcodePrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/InternalBarcodePrintStrategy.java @@ -13,7 +13,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -24,11 +23,8 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; -import java.util.Objects; - /** * @Description :通用打印方式 * @Reference : @@ -59,19 +55,17 @@ public class InternalBarcodePrintStrategy implements IPrintTemplateStrategyServi String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ if (StringUtils.isEmpty(genSerialNoModel.getShiftCode())) { MesPcnException.throwMesBusiException("班次代码未维护"); } - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -80,7 +74,7 @@ public class InternalBarcodePrintStrategy implements IPrintTemplateStrategyServi }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -109,13 +103,11 @@ public class InternalBarcodePrintStrategy implements IPrintTemplateStrategyServi return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaBx1eSnPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaBx1eSnPrintStrategy.java index 190b335..87c14c8 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaBx1eSnPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaBx1eSnPrintStrategy.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -23,9 +22,6 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Objects; /** * @Description :礼嘉打印 @@ -57,16 +53,14 @@ public class LiJiaBx1eSnPrintStrategy implements IPrintTemplateStrategyService { String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -75,7 +69,7 @@ public class LiJiaBx1eSnPrintStrategy implements IPrintTemplateStrategyService { }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -104,13 +98,11 @@ public class LiJiaBx1eSnPrintStrategy implements IPrintTemplateStrategyService { return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime("HH:mm")); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterPartSnPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterPartSnPrintStrategy.java index 334a1f7..b4732f4 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterPartSnPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterPartSnPrintStrategy.java @@ -8,11 +8,9 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel; import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel; import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService; -import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -23,9 +21,6 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Objects; /** * @Description :礼嘉打印 @@ -57,16 +52,14 @@ public class LiJiaInterPartSnPrintStrategy implements IPrintTemplateStrategyServ String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -75,7 +68,7 @@ public class LiJiaInterPartSnPrintStrategy implements IPrintTemplateStrategyServ }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -104,13 +97,11 @@ public class LiJiaInterPartSnPrintStrategy implements IPrintTemplateStrategyServ return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterTimeSnPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterTimeSnPrintStrategy.java index 933b007..ca6cfac 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterTimeSnPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/LiJiaInterTimeSnPrintStrategy.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -23,9 +22,6 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Objects; /** * @Description :礼嘉打印 @@ -57,16 +53,14 @@ public class LiJiaInterTimeSnPrintStrategy implements IPrintTemplateStrategyServ String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -75,7 +69,7 @@ public class LiJiaInterTimeSnPrintStrategy implements IPrintTemplateStrategyServ }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -104,13 +98,11 @@ public class LiJiaInterTimeSnPrintStrategy implements IPrintTemplateStrategyServ return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime("HH:mm:ss")); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesCommonPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesCommonPrintStrategy.java index dcd886e..b8cf665 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesCommonPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesCommonPrintStrategy.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -23,9 +22,6 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Objects; /** * @Description :通用打印方式 @@ -57,16 +53,14 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService { String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -75,7 +69,7 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService { }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); @@ -104,13 +98,11 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService { return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); mesProduceSnPrintDataModel.setUserName(produceSn.getCreateUser()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesDPBarcodeSubStringPartSnParamWhPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesDPBarcodeSubStringPartSnParamWhPrintStrategy.java index e21ac53..12d84a7 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesDPBarcodeSubStringPartSnParamWhPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesDPBarcodeSubStringPartSnParamWhPrintStrategy.java @@ -1,6 +1,5 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; -import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; @@ -54,9 +53,6 @@ public class MesDPBarcodeSubStringPartSnParamWhPrintStrategy implements IPrintTe @Autowired private IMesPrintedSnLogService mesPrintedSnLogService; - @Autowired - private IMesCustomerPartService mesCustomerPartService; - @Override public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) { diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesNingDeBarcodePrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesNingDeBarcodePrintStrategy.java index 4999426..94af953 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesNingDeBarcodePrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/MesNingDeBarcodePrintStrategy.java @@ -69,10 +69,11 @@ public class MesNingDeBarcodePrintStrategy implements IPrintTemplateStrategyServ MesCustomerPart customerPart = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart)dataMap.get(MesCustomerPart.class.getSimpleName()) : customerPartService.getMesCustomerPart(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); + final String custPartNo = customerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); if (null == part) MesPcnException.throwBusiException("零件编码[%s]信息不存在!", mesProduceSnPrintModel.getPartNo()); if (StringUtils.isEmpty(part.getProductMatchRule())) MesPcnException.throwBusiException("零件编码[%s]信息未维护零件条码匹配规则!", mesProduceSnPrintModel.getPartNo()); - if (null == customerPart) MesPcnException.throwBusiException("零件编码[%s]未维护客户零件号!", mesProduceSnPrintModel.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) MesPcnException.throwBusiException("零件编码[%s]未维护客户零件号!", mesProduceSnPrintModel.getPartNo()); if (null == numberRule) numberRule = numberRuleRepository.getByProperty( new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.RULE_CODE}, new Object[]{mesProduceSnPrintModel.getOrganizeCode(), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), part.getProductMatchRule()}); @@ -86,23 +87,23 @@ public class MesNingDeBarcodePrintStrategy implements IPrintTemplateStrategyServ if (CollectionUtils.isEmpty(dataMap) || !dataMap.containsKey(MesPart.class.getSimpleName())) genSerialNoModel.putDataMap(MesPart.class.getSimpleName(), part); if (CollectionUtils.isEmpty(dataMap) || !dataMap.containsKey(MesCustomerPart.class.getSimpleName())) genSerialNoModel.putDataMap(MesCustomerPart.class.getSimpleName(), customerPart); - genSerialNoModel.partSnParam(part.getPartSnParam()).setCustPartNo(customerPart.getCustPartNo()); + genSerialNoModel.partSnParam(part.getPartSnParam()).setCustPartNo(custPartNo); List productSnList = syncFuncService.syncSerialNo(genSerialNoModel, mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPrintQty()).getResultList(); if (CollectionUtils.isEmpty(productSnList)) MesPcnException.throwBusiException("根据编码规则[%s]生成零件条码失败!", genSerialNoModel.getRuleCode()); for (Object productSn : productSnList) { MesProduceSn produceSn = generateMesProduceSn(part, productSn.toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); - Map printTemplateData = generatePrintTemplateData(part, customerPart, numberRule, produceSn, customParamValue); + Map printTemplateData = generatePrintTemplateData(part, custPartNo, numberRule, produceSn, customParamValue); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); - mesProduceSnPrintModel.getMesPrintedSnLogList().add(getMesPrintedSnLog(mesProduceSnPrintModel, part, customerPart, produceSn.getProductSn(), printTemplateData)); + mesProduceSnPrintModel.getMesPrintedSnLogList().add(getMesPrintedSnLog(mesProduceSnPrintModel, part, custPartNo, produceSn.getProductSn(), printTemplateData)); } }else{ MesProduceSn produceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); - Map printTemplateData = generatePrintTemplateData(part, customerPart, numberRule, produceSn, customParamValue); + Map printTemplateData = generatePrintTemplateData(part, custPartNo, numberRule, produceSn, customParamValue); List> printDataMapList = new ArrayList<>(); printDataMapList.add(printTemplateData); mesProduceSnPrintModel.getPrintContextList().add(packResultMap(mesProduceSnPrintModel, printDataMapList)); - mesProduceSnPrintModel.getMesPrintedSnLogList().add(getMesPrintedSnLog(mesProduceSnPrintModel, part, customerPart, produceSn.getProductSn(), printTemplateData)); + mesProduceSnPrintModel.getMesPrintedSnLogList().add(getMesPrintedSnLog(mesProduceSnPrintModel, part, custPartNo, produceSn.getProductSn(), printTemplateData)); } return mesProduceSnPrintModel; } @@ -116,10 +117,10 @@ public class MesNingDeBarcodePrintStrategy implements IPrintTemplateStrategyServ return resultMap; } - private Map generatePrintTemplateData(MesPart part, MesCustomerPart customerPart, MesNumberRule numberRule, MesProduceSn produceSn, Map customParamValue) { + private Map generatePrintTemplateData(MesPart part, String custPartNo, MesNumberRule numberRule, MesProduceSn produceSn, Map customParamValue) { Map printTemplateData = new HashMap<>(); - printTemplateData.put(MesPcnExtConstWords.QR_CODE, customerPart.getCustPartNo()); - printTemplateData.put(MesPcnExtConstWords.CUST_PART_NO, customerPart.getCustPartNo()); + printTemplateData.put(MesPcnExtConstWords.QR_CODE, custPartNo); + printTemplateData.put(MesPcnExtConstWords.CUST_PART_NO, custPartNo); printTemplateData.put(MesPcnExtConstWords.PART_NAME, part.getPartName()); printTemplateData.put(MesPcnExtConstWords.LOT_NO, StringUtils.isEmpty(numberRule.getPrefix()) ? produceSn.getProductSn() : produceSn.getProductSn().replace(numberRule.getPrefix(), MesPcnExtConstWords.EMPTY)); @@ -149,12 +150,12 @@ public class MesNingDeBarcodePrintStrategy implements IPrintTemplateStrategyServ return mesProduceSn; } - private MesPrintedSnLog getMesPrintedSnLog(MesProduceSnPrintModel mesProduceSnPrintModel, MesPart part, MesCustomerPart customerPart, String productSn, Map printTemplateData) { + private MesPrintedSnLog getMesPrintedSnLog(MesProduceSnPrintModel mesProduceSnPrintModel, MesPart part, String custPartNo, String productSn, Map printTemplateData) { MesPrintedSnLog snLog = new MesPrintedSnLog(); snLog.setBarcode(productSn); snLog.setPartNo(part.getPartNo()); snLog.setPartName(part.getPartName()); - snLog.setCustPartNo(customerPart.getCustPartNo()); + snLog.setCustPartNo(custPartNo); snLog.setPrintContext(printTemplateData); ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName()); snLog.setOrganizeCode(mesProduceSnPrintModel.getOrganizeCode()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanLengDaoPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanLengDaoPrintStrategy.java index 1008f87..9ead9b3 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanLengDaoPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanLengDaoPrintStrategy.java @@ -12,7 +12,6 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; @@ -23,9 +22,6 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.util.Objects; /** * @Description : 内部条码(单件) (4) @@ -58,16 +54,15 @@ public class WuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService String organizeCode = mesProduceSnPrintModel.getOrganizeCode(); //物料信息 MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); +// MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) : mesCustomerPartService.getMesCustomerPart(organizeCode,mesProduceSnPrintModel.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(organizeCode,mesProduceSnPrintModel.getPartNo()); if (!isStep){ - if (!Objects.isNull(customerPart)) { - genSerialNoModel.setCustPartNo(customerPart.getCustPartNo()); - } + genSerialNoModel.setCustPartNo(custPartNo); for (int i = 0; i < mesProduceSnPrintModel.getPrintQty(); i++) { //保存条码信息 MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); //保存打印记录 @@ -76,7 +71,7 @@ public class WuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService }else{ MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 - MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); + MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel)); @@ -105,13 +100,11 @@ public class WuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService return mesProduceSn; } - private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, MesCustomerPart customerPart) { + private MesProduceSnPrintDataModel getModel(MesProduceSn produceSn, String custPartNo) { MesProduceSnPrintDataModel mesProduceSnPrintDataModel = new MesProduceSnPrintDataModel(); mesProduceSnPrintDataModel.setPartNo(produceSn.getPartNo()); mesProduceSnPrintDataModel.setPartName(produceSn.getPartName()); - if (!Objects.isNull(customerPart)) { - mesProduceSnPrintDataModel.setCustPartNo(customerPart.getCustPartNo()); - } + mesProduceSnPrintDataModel.setCustPartNo(custPartNo); mesProduceSnPrintDataModel.setBarcode(produceSn.getProductSn()); mesProduceSnPrintDataModel.setNo(produceSn.getProductSn().replace(produceSn.getPartNo(),"")); mesProduceSnPrintDataModel.setPrintDate(TimeTool.getNowTime(true)); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrint2Strategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrint2Strategy.java index d84f47a..d3bba9f 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrint2Strategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrint2Strategy.java @@ -1,6 +1,5 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; -import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -48,9 +47,6 @@ public class WuHanPaintCenterPrint2Strategy implements IPrintTemplateStrategySer @Autowired private IMesPrintedSnLogService mesPrintedSnLogService; - @Autowired - private IMesCustomerPartService mesCustomerPartService; - private static final String SUPPLIER_CODE_DEFAULT = "V280156"; @Override diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrintStrategy.java index ec5f1c1..3f718cb 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuHanPaintCenterPrintStrategy.java @@ -1,6 +1,5 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; -import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -48,9 +47,6 @@ public class WuHanPaintCenterPrintStrategy implements IPrintTemplateStrategyServ @Autowired private IMesPrintedSnLogService mesPrintedSnLogService; - @Autowired - private IMesCustomerPartService mesCustomerPartService; - private static final String SUPPLIER_CODE_DEFAULT = "V280156"; @Override diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java index 03e82ee..8ea15d2 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java @@ -70,7 +70,7 @@ public class WuhanSnPrintStrategy implements IPrintTemplateStrategyService { MesPcnException.throwMesBusiException("零件号:%s客户物料信息不存在",model.getPartNo()); } // 客户零件号 - String custPartNo = customerPart.getCustPartNo(); + String custPartNo = mesCustomerPartService.getCustPartNo(model.getOrganizeCode(),model.getPartNo()); // 客户零件号 前缀 排除后四位 String custPartNoPrefix = StringUtils.isEmpty(custPartNo) ? "" : custPartNo.substring(0, custPartNo.length() - 4); // 客户零件号 后四位 diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengNewPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengNewPrintStrategy.java index da4c691..e0492f2 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengNewPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengNewPrintStrategy.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -11,15 +12,15 @@ import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.*; +import cn.estsh.i3plus.pojo.mes.bean.MesConfig; +import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; +import cn.estsh.i3plus.pojo.mes.bean.MesPart; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import cn.estsh.i3plus.pojo.mes.model.StationRequestBean; import cn.estsh.i3plus.pojo.mes.model.StepResult; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.repository.MesNumberRuleRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.util.ResultBean; @@ -41,7 +42,7 @@ import java.util.Date; @Slf4j public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService { @Autowired - private MesCustomerPartRepository mesCustomerPartRDao; + private IMesCustomerPartService mesCustomerPartService; @Autowired private ISyncFuncService syncFuncService; @@ -69,8 +70,7 @@ public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService { //客户条码-小鹏汽车 gz-xiaopeng //{custPartNo}{year}{month}{day}{serialNo} //客户零件号 - MesCustomerPart mesCustomerPart = getMesCustomerPart(mesProduceSnPrintModel); - String custPartNo = mesCustomerPart == null ? "" : mesCustomerPart.getCustPartNo(); + String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); MesConfig mesConfig = configService.getMesConfigByCfgCode(MesPcnExtConstWords.ORGANIZE_NAME, organizeCode); String organizeName = mesConfig.getCfgValue(); @@ -122,19 +122,6 @@ public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService { return numberRule; } - private MesCustomerPart getMesCustomerPart(MesProduceSnPrintModel mesProduceSnPrintModel) { - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesProduceSnPrintModel.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(mesProduceSnPrintModel.getPartNo(), "erpPartNo", ddlPackBean); - MesCustomerPart mesCustomerPart = mesCustomerPartRDao.getByProperty(ddlPackBean); - /** - * 2024/07/25 打印模板不校验 客户零件号,校验客户零件号移动到条码规则中 numberRule的策略中 - */ -// if (Objects.isNull(mesCustomerPart)) { -// MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); -// } - return mesCustomerPart; - } - private String getYearShort(Date date) { String yearStr = MesExtEnumUtil.YEAR_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getYear(date))); if (StringUtils.isEmpty(yearStr)) { diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengPrintStrategy.java index 4e1926e..2ad519e 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/XiaoPengPrintStrategy.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy; +import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService; @@ -11,15 +12,15 @@ import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; -import cn.estsh.i3plus.pojo.mes.bean.*; +import cn.estsh.i3plus.pojo.mes.bean.MesConfig; +import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; +import cn.estsh.i3plus.pojo.mes.bean.MesPart; +import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn; import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel; import cn.estsh.i3plus.pojo.mes.model.StationRequestBean; import cn.estsh.i3plus.pojo.mes.model.StepResult; -import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository; import cn.estsh.i3plus.pojo.mes.repository.MesNumberRuleRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.util.ResultBean; @@ -41,7 +42,7 @@ import java.util.Date; @Slf4j public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService { @Autowired - private MesCustomerPartRepository mesCustomerPartRDao; + private IMesCustomerPartService mesCustomerPartService; @Autowired private ISyncFuncService syncFuncService; @@ -69,8 +70,7 @@ public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService { //客户条码-小鹏汽车 gz-xiaopeng //{custPartNo}{year}{month}{day}{serialNo} //客户零件号 - MesCustomerPart mesCustomerPart = getMesCustomerPart(mesProduceSnPrintModel); - String custPartNo = mesCustomerPart == null ? "" : mesCustomerPart.getCustPartNo(); + String custPartNo = mesCustomerPartService.getCustPartNo(mesProduceSnPrintModel.getOrganizeCode(), mesProduceSnPrintModel.getPartNo()); MesPart mesPart = mesPartService.getMesPartByPartNo(mesProduceSnPrintModel.getPartNo(), organizeCode); numberRule = null != numberRule ? numberRule : getNumberRule(organizeCode, mesPart); MesConfig mesConfig = configService.getMesConfigByCfgCode(MesPcnExtConstWords.ORGANIZE_NAME, organizeCode); @@ -124,19 +124,6 @@ public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService { return numberRule; } - private MesCustomerPart getMesCustomerPart(MesProduceSnPrintModel mesProduceSnPrintModel) { - DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesProduceSnPrintModel.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(mesProduceSnPrintModel.getPartNo(), "erpPartNo", ddlPackBean); - MesCustomerPart mesCustomerPart = mesCustomerPartRDao.getByProperty(ddlPackBean); - /** - * 2024/07/25 打印模板不校验 客户零件号,校验客户零件号移动到条码规则中 numberRule的策略中 - */ -// if (Objects.isNull(mesCustomerPart)) { -// MesPcnException.throwMesBusiException("物料【%s】客户零件关系未维护", mesProduceSnPrintModel.getPartNo()); -// } - return mesCustomerPart; - } - private String getYearShort(Date date) { String yearStr = MesExtEnumUtil.YEAR_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getYear(date))); if (StringUtils.isEmpty(yearStr)) { diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/YfaiPackageNoPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/YfaiPackageNoPrintStrategy.java index 6088585..354b0ff 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/YfaiPackageNoPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/YfaiPackageNoPrintStrategy.java @@ -6,7 +6,6 @@ import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel; import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.platform.common.convert.ConvertBean; -import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule; import cn.estsh.i3plus.pojo.mes.bean.MesPackage; import cn.estsh.i3plus.pojo.mes.bean.MesPrintedSnLog; @@ -17,9 +16,12 @@ import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @Description : 包装条码打印 @@ -39,20 +41,16 @@ public class YfaiPackageNoPrintStrategy implements IPrintTemplateStrategyService public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel model, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) { - - MesCustomerPart customerPart = (!Objects.isNull(genSerialNoModel) && - !CollectionUtils.isEmpty(genSerialNoModel.getDataMap()) && genSerialNoModel.getDataMap().containsKey(MesCustomerPart.class.getSimpleName())) - ? (MesCustomerPart) genSerialNoModel.getDataMap().get(MesCustomerPart.class.getSimpleName()) - : mesCustomerPartService.getMesCustomerPart(model.getOrganizeCode(), model.getPartNo()); - if (null == customerPart) MesPcnException.throwBusiException("零件号[%s]未维护客户物料信息", model.getPartNo()); + final String custPartNo = mesCustomerPartService.getCustPartNo(model.getOrganizeCode(), model.getPartNo()); + if (StringUtils.isEmpty(custPartNo)) MesPcnException.throwBusiException("零件号[%s]未维护客户物料信息", model.getPartNo()); // 返回的结果集合 List> printDataMapList = new ArrayList<>(); if (!isStep) { - model.getPackageList().forEach(o -> printDataMapList.add(getPrintMap(model, o, customerPart))); + model.getPackageList().forEach(o -> printDataMapList.add(getPrintMap(model, o, custPartNo))); model.setPrintContextList(printDataMapList); } else { - model.getPackageList().forEach(o -> printDataMapList.add(getPrintMap(model, o, customerPart))); + model.getPackageList().forEach(o -> printDataMapList.add(getPrintMap(model, o, custPartNo))); model.getPrintContextList().add(packResultMap(model, printDataMapList)); } @@ -79,11 +77,11 @@ public class YfaiPackageNoPrintStrategy implements IPrintTemplateStrategyService return snLog; } - private Map getPrintMap(MesProduceSnPrintModel model, MesPackage packageDb, MesCustomerPart customerPart) { + private Map getPrintMap(MesProduceSnPrintModel model, MesPackage packageDb, String custPartNo) { Map resultMap = new HashMap<>(); resultMap.put(MesPcnExtConstWords.PART_NO, packageDb.getPartNo()); resultMap.put(MesPcnExtConstWords.PART_NAME, packageDb.getPartName()); - resultMap.put(MesPcnExtConstWords.CUST_PART_NO, customerPart.getCustPartNo()); + resultMap.put(MesPcnExtConstWords.CUST_PART_NO, custPartNo); resultMap.put(MesPcnExtConstWords.QR_CODE, packageDb.getPackageNo()); resultMap.put(MesPcnExtConstWords.QTY, packageDb.getQty().intValue()); resultMap.put(MesPcnExtConstWords.UNIT, packageDb.getUnit());