问题清单问题修复

tags/yfai-mes-ext-v1.0
jun 10 months ago
parent 8eb0dd64e5
commit 2e48c4f4e6

@ -127,7 +127,7 @@ public class MesCrossOrganizeCfgServiceImpl extends BaseMesService<MesCrossOrgan
MesProduceSn saveDbProduceSn = new MesProduceSn(); MesProduceSn saveDbProduceSn = new MesProduceSn();
BeanUtils.copyProperties(produceSn, saveDbProduceSn, "id"); BeanUtils.copyProperties(produceSn, saveDbProduceSn, "id");
saveDbProduceSn.setOrganizeCode(crossOrganizeCfg.getOrganizeCode()); saveDbProduceSn.setOrganizeCode(crossOrganizeCfg.getOrganizeCode());
saveDbProduceSn.setSnType(MesExtEnumUtil.PRODUCE_SN_TYPE.CORSS_ORGANIZE.getValue()); saveDbProduceSn.setSnType(MesExtEnumUtil.PRODUCE_SN_TYPE.CROSS_ORGANIZE.getValue());
saveDbProduceSn.setDescription(produceSn.getOrganizeCode()); saveDbProduceSn.setDescription(produceSn.getOrganizeCode());
saveDbProduceSn.setSystemSyncStatus(CommonEnumUtil.FALSE); saveDbProduceSn.setSystemSyncStatus(CommonEnumUtil.FALSE);
mesProduceSnRepository.insert(saveDbProduceSn); mesProduceSnRepository.insert(saveDbProduceSn);

@ -305,11 +305,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.S.getValue(), MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.S.getValue(),
MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue())); MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue()));
} }
//获取生产版本 //校验VIN号是否重复
MesProductVersion mesProductVersion = getMesProductVersion(item, mesWorkCenter);
item.setProductVersion(mesProductVersion.getProductVersion());
//获取bom信息
List<MesBom> bomList = mesBomService.findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList());
if (!StringUtil.isEmpty(item.getVinCode())) { if (!StringUtil.isEmpty(item.getVinCode())) {
//校验vin号是否重复 //校验vin号是否重复
ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
@ -320,11 +316,10 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
} }
//排序工单数量为1 //排序工单数量为1
item.setQty(1d); item.setQty(1d);
//是否自动发布 //发送工单给WMS
isAuto(item, saveMesWorkOrderToWms, bomList); sendToWms(item, mesWorkCenter, saveMesWorkOrderToWms);
} else if (item.getWorkOrderType() == MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue()) { } else if (item.getWorkOrderType() == MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue()) {
ValidatorBean.checkNotNull(item.getOrderFlag(), "标识不能为空"); ValidatorBean.checkNotNull(item.getOrderFlag(), "标识不能为空");
ValidatorBean.checkNotNull(item.getProductVersion(), "生产版本不能为空");
if (Objects.isNull(item.getQty()) || item.getQty() <= 0d) { if (Objects.isNull(item.getQty()) || item.getQty() <= 0d) {
MesException.throwMesBusiException("生产数量不能小于等于0"); MesException.throwMesBusiException("生产数量不能小于等于0");
} }
@ -341,26 +336,25 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
, MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.N.getValue(), , MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.N.getValue(),
MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue())); MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue()));
} }
item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue());
//非试制单
if (!MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue().equals(item.getOrderFlag())) {
ValidatorBean.checkNotNull(item.getProductVersion(), "生产版本不能为空");
//校验物料生产版本是否存在 //校验物料生产版本是否存在
MesProductVersion mesProductVersion = checkMesProductVersion(item); MesProductVersion mesProductVersion = checkMesProductVersion(item);
//获取bom信息 //获取bom信息
List<MesBom> bomList = mesBomService.findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList()); List<MesBom> bomList = mesBomService.findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList());
item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue());
//发送工单信息给WMS //发送工单信息给WMS
saveMesWorkOrderToWms.addAll(mesWorkOrderToWmsService.saveMesWorkOrderToWms(item, bomList)); saveMesWorkOrderToWms.addAll(mesWorkOrderToWmsService.saveMesWorkOrderToWms(item, bomList));
}
} else { } else {
ValidatorBean.checkNotNull(item.getPlanStartTime(), "计划开始时间不能为空"); ValidatorBean.checkNotNull(item.getPlanStartTime(), "计划开始时间不能为空");
ValidatorBean.checkNotNull(item.getPlanEndTime(), "计划结束时间不能为空"); ValidatorBean.checkNotNull(item.getPlanEndTime(), "计划结束时间不能为空");
if (Objects.isNull(item.getQty()) || item.getQty() <= 0d) { if (Objects.isNull(item.getQty()) || item.getQty() <= 0d) {
MesException.throwMesBusiException("生产数量不能小于等于0"); MesException.throwMesBusiException("生产数量不能小于等于0");
} }
//获取生产版本 //发送工单给WMS
MesProductVersion mesProductVersion = getMesProductVersion(item, mesWorkCenter); sendToWms(item, mesWorkCenter, saveMesWorkOrderToWms);
item.setProductVersion(mesProductVersion.getProductVersion());
//获取bom信息
List<MesBom> bomList = mesBomService.findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList());
//是否自动发布
isAuto(item, saveMesWorkOrderToWms, bomList);
} }
//物料名称不存在,从物料信息中获取 //物料名称不存在,从物料信息中获取
MesPartSap mesPart = iMesPartSapService.getMesPartSapByPartNo(item.getPartNo(), item.getOrganizeCode()); MesPartSap mesPart = iMesPartSapService.getMesPartSapByPartNo(item.getPartNo(), item.getOrganizeCode());
@ -381,6 +375,20 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
} }
} }
private void sendToWms(MesWorkOrder item, MesWorkCenter mesWorkCenter, List<MesWorkOrderToWms> saveMesWorkOrderToWms) {
//非试制单
List<MesBom> bomList = null;
if (!MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue().equals(item.getOrderFlag())) {
//获取生产版本
MesProductVersion mesProductVersion = getMesProductVersion(item, mesWorkCenter);
item.setProductVersion(mesProductVersion.getProductVersion());
//获取bom信息
bomList = mesBomService.findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList());
}
//是否自动发布
isAuto(item, saveMesWorkOrderToWms, bomList);
}
private void isAuto(MesWorkOrder item, List<MesWorkOrderToWms> saveMesWorkOrderToWms, List<MesBom> bomList) { private void isAuto(MesWorkOrder item, List<MesWorkOrderToWms> saveMesWorkOrderToWms, List<MesBom> bomList) {
MesPartProdGroup mesPartProdGroup = null; MesPartProdGroup mesPartProdGroup = null;
if(StringUtil.isEmpty(item.getPartProdGroupCode())){ if(StringUtil.isEmpty(item.getPartProdGroupCode())){
@ -400,7 +408,9 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
if (CommonEnumUtil.VALID == mesPartProdGroup.getIsAutoRelease()) { if (CommonEnumUtil.VALID == mesPartProdGroup.getIsAutoRelease()) {
item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue()); item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue());
//发送工单信息给WMS //发送工单信息给WMS
if(!Objects.isNull(bomList)){
saveMesWorkOrderToWms.addAll(mesWorkOrderToWmsService.saveMesWorkOrderToWms(item, bomList)); saveMesWorkOrderToWms.addAll(mesWorkOrderToWmsService.saveMesWorkOrderToWms(item, bomList));
}
} else { } else {
item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.CREATE.getValue()); item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.CREATE.getValue());
} }

Loading…
Cancel
Save