diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java index 58b7cbc..75e94d3 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java @@ -245,10 +245,7 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { mesWorkOrder.setPartName(partSap.getPartName()); //工单号生成规则 【工厂号+yyyyMMdd+5位流水】 - GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.MES_WORK_CENTER_ORDER_NO); - genSerialNoModel.setPartNo(mesPartProdGroupDetail.getWorkCenterCode()); - List resultList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(organizeCode), "edi", mesPartProdGroupDetail.getOrganizeCode(), 1).getResultList(); - mesWorkOrder.setWorkOrderNo(resultList.get(0)); + // 13.生产版本 organizeCode + partNo @@ -278,7 +275,18 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { mesWorkOrder.setPartProdGroupCode(partProdGroup.getPartProdGroupCode()); mesWorkOrder.setCarModelCode(sortInfo.getVehicleNo()); - // todo 客户零件条码 + /** + * 工单号修改 + * {dynamicRule}{dynamicRule}{dynamicRule}{dynamicrule}{serialNo} + * 工厂代码+工单类型 +客户工厂代码+班次+流水号 + */ + GenSerialNoModel genSerialNoModel = new GenSerialNoModel("MES_WORK_ORDER_NO_WU_HAN"); + genSerialNoModel.setPartNo(mesPartProdGroupDetail.getWorkCenterCode()); + String dynamicRule=organizeCode+","+mesWorkOrder.getOrderFlag()+","+sortInfo.getCustOrderCode()+","+mesWorkOrder.getShiftCode(); + genSerialNoModel.setDynamicRule(dynamicRule); + List resultList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(organizeCode), "edi", mesPartProdGroupDetail.getOrganizeCode(), 1).getResultList(); + mesWorkOrder.setWorkOrderNo(resultList.get(0)); + /** * RS 为记录分隔符ASCII:30 * GS 为分组符ASCII:29 @@ -328,7 +336,7 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { String year = custCalendar.get(Calendar.YEAR)+""; custGenSerialNoModel.setYear(year.substring(2)); custGenSerialNoModel.setDay(custCalendar.get(Calendar.DAY_OF_YEAR)+""); - List custNumRuleList = syncFuncService.syncSerialNo(genSerialNoModel, "edi", organizeCode, 1).getResultList(); + List custNumRuleList = syncFuncService.syncSerialNo(custGenSerialNoModel, "edi", organizeCode, 1).getResultList(); // [)>%RS%06%GS%Y,4110000000000X,%GS%P,%GS%12V,545238347,%GS%T1A,A2B4C,%RS%%EOT% //截取替换为ascii码 String snOriginal = custNumRuleList.get(0); @@ -442,7 +450,8 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { //生成条码表 MesProduceSn mesProduceSn = new MesProduceSn(); - mesProduceSn.setProductSn(mesWorkOrder.getSn()); + mesProduceSn.setProductSn(mesWorkOrder.getWorkOrderNo()); + mesProduceSn.setCustSn(mesWorkOrder.getSn()); mesProduceSn.setWorkOrderNo(mesWorkOrder.getWorkOrderNo()); mesProduceSn.setOrganizeCode(organizeCode); ConvertBean.saveOrUpdate(mesProduceSn, "MES-JOB");