生产版本和工作中心绑定关系取消

tags/yfai-mes-ext-v1.7
jun 9 months ago
parent 3e7c2c75c5
commit 19eea2b97e

@ -449,11 +449,11 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
DdlPackBean ddlPackBean; DdlPackBean ddlPackBean;
ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", ddlPackBean); DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getErpWorkCenter(), "workCenterCode", ddlPackBean); //DdlPreparedPack.getStringEqualPack(item.getErpWorkCenter(), "workCenterCode", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getProductVersion(), "productVersion", ddlPackBean); DdlPreparedPack.getStringEqualPack(item.getProductVersion(), "productVersion", ddlPackBean);
MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean); MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean);
if (Objects.isNull(mesProductVersion)) { if (Objects.isNull(mesProductVersion)) {
MesException.throwMesBusiException("物料【%s】产线【%s】生产版本【%s】信息不存在", item.getPartNo(), item.getWorkCenterCode(), item.getProductVersion()); MesException.throwMesBusiException("物料【%s】生产版本【%s】信息不存在", item.getPartNo(), item.getProductVersion());
} }
return mesProductVersion; return mesProductVersion;
} }
@ -599,7 +599,6 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
//获取生产版本 //获取生产版本
List<String> partNoList = mesWorkOrderList.stream().map(MesWorkOrder::getPartNo).distinct().collect(Collectors.toList()); List<String> partNoList = mesWorkOrderList.stream().map(MesWorkOrder::getPartNo).distinct().collect(Collectors.toList());
List<MesProductVersion> mesProductVersionList = BeanMapUtilsExt.getBeanList(mesProductVersionRDao, "partNo", organizeCode, partNoList, "生产版本信息"); List<MesProductVersion> mesProductVersionList = BeanMapUtilsExt.getBeanList(mesProductVersionRDao, "partNo", organizeCode, partNoList, "生产版本信息");
Map<String, List<MesProductVersion>> mesProductVersionMap = mesProductVersionList.stream().collect(Collectors.groupingBy(t -> t.getWorkCenterCode() + t.getPartNo()));
//客户物料信息 //客户物料信息
Map<String, MesCustomerPart> mesCustomerPartMap = null; Map<String, MesCustomerPart> mesCustomerPartMap = null;
try { try {
@ -624,11 +623,14 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
} }
//生成工单号 //生成工单号
List<String> orderList=new ArrayList<>(); List<String> orderList=new ArrayList<>();
Map<String, List<MesProductVersion>> mesProductVersionMap =null;
if(next.getWorkOrderType() != MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue()){ if(next.getWorkOrderType() != MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue()){
mesProductVersionMap = mesProductVersionList.stream().collect(Collectors.groupingBy(t -> t.getWorkCenterCode() + t.getPartNo()));
GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.MES_WORK_CENTER_ORDER_NO); GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.MES_WORK_CENTER_ORDER_NO);
genSerialNoModel.setPartNo(next.getWorkCenterCode()); genSerialNoModel.setPartNo(next.getWorkCenterCode());
orderList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(next.getOrganizeCode()), next.getCreateUser(), next.getOrganizeCode(), mesWorkOrderList.size()).getResultList(); orderList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(next.getOrganizeCode()), next.getCreateUser(), next.getOrganizeCode(), mesWorkOrderList.size()).getResultList();
}else { }else {
mesProductVersionMap = mesProductVersionList.stream().collect(Collectors.groupingBy(MesProductVersion::getPartNo));
GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.MES_WORK_ORDER_NO); GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.MES_WORK_ORDER_NO);
orderList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(next.getOrganizeCode()), next.getCreateUser(), next.getOrganizeCode(), mesWorkOrderList.size()).getResultList(); orderList = syncFuncService.syncSerialNo(genSerialNoModel.organizeCode(next.getOrganizeCode()), next.getCreateUser(), next.getOrganizeCode(), mesWorkOrderList.size()).getResultList();
} }
@ -740,14 +742,13 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
if (!MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue().equals(item.getOrderFlag())){ if (!MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue().equals(item.getOrderFlag())){
ValidatorBean.checkNotNull(item.getProductVersion(), "生产版本不能为空"); ValidatorBean.checkNotNull(item.getProductVersion(), "生产版本不能为空");
//校验物料生产版本是否存在 //校验物料生产版本是否存在
List<MesProductVersion> mesProductVersions = mesProductVersionMap.get(mesWorkCenter.getErpWorkCenter() + item.getPartNo()); List<MesProductVersion> mesProductVersions = mesProductVersionMap.get(item.getPartNo());
if (CollectionUtils.isEmpty(mesProductVersions)) { if (CollectionUtils.isEmpty(mesProductVersions)) {
MesException.throwMesBusiException("物料【%s】工作中心【%s】对应的生产版本信息不存在", item.getPartNo(), MesException.throwMesBusiException("物料【%s】对应的生产版本信息不存在", item.getPartNo());
mesWorkCenter.getErpWorkCenter());
} }
List<MesProductVersion> versionList = mesProductVersions.stream().filter(t -> Objects.equals(item.getProductVersion(), t.getProductVersion())).collect(Collectors.toList()); List<MesProductVersion> versionList = mesProductVersions.stream().filter(t -> Objects.equals(item.getProductVersion(), t.getProductVersion())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(versionList)) { if (CollectionUtils.isEmpty(versionList)) {
MesException.throwMesBusiException("物料【%s】产线【%s】生产版本【%s】信息不存在", item.getPartNo(), mesWorkCenter.getWorkCenterCode(), item.getProductVersion()); MesException.throwMesBusiException("物料【%s】生产版本【%s】信息不存在", item.getPartNo(), item.getProductVersion());
} }
MesProductVersion mesProductVersion = versionList.iterator().next(); MesProductVersion mesProductVersion = versionList.iterator().next();
//获取bom信息 //获取bom信息
@ -1226,11 +1227,11 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
private MesProductVersion getMesProductVersion(MesWorkOrder mesWorkOrder) { private MesProductVersion getMesProductVersion(MesWorkOrder mesWorkOrder) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode()); DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getPartNo(), "partNo", ddlPackBean); DdlPreparedPack.getStringEqualPack(mesWorkOrder.getPartNo(), "partNo", ddlPackBean);
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getErpWorkCenter(), "workCenterCode", ddlPackBean); //DdlPreparedPack.getStringEqualPack(mesWorkOrder.getErpWorkCenter(), "workCenterCode", ddlPackBean);
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getProductVersion(), "productVersion", ddlPackBean); DdlPreparedPack.getStringEqualPack(mesWorkOrder.getProductVersion(), "productVersion", ddlPackBean);
MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean); MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean);
if (null == mesProductVersion) { if (null == mesProductVersion) {
MesException.throwMesBusiException("物料【%s】生产版本信息不存在", mesWorkOrder.getPartNo()); MesException.throwMesBusiException("物料【%s】生产版本【%s】信息不存在", mesWorkOrder.getPartNo(),mesWorkOrder.getProductVersion());
} }
return mesProductVersion; return mesProductVersion;
} }

Loading…
Cancel
Save