44863 PCN-零件生产组增加“使用BOM方式”枚举最终确认版逻辑优化

tags/yfai-mes-ext-v2.9
xiangwei.zhang 3 months ago
parent bf114910e2
commit da09e0afaf

@ -967,10 +967,24 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
//查询产线信息
MesWorkCenter mesWorkCenter = getMesWorkCenter(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getWorkCenterCode());
MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getPartNo(),mesWorkOrderDb.getProductVersion());
String partProdGroupCode = mesWorkOrder.getPartProdGroupCode();
MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion());
String bomVersion = mesProductVersion.getAlternativePartList();
if (!StringUtil.isEmpty(partProdGroupCode)) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(partProdGroupCode, "partProdGroupCode", ddlPackBean);
List<MesPartProdGroup> mesPartProdGroupList = mesPartProdGroupRao.findByHqlTopWhere(ddlPackBean, 1);
// 没有零件生产组用默认找生产版本、有的话找获取bom方式枚举枚举是基于默认BOM 则直接找
if (!mesPartProdGroupList.isEmpty()) {
MesPartProdGroup mesPartProdGroup = mesPartProdGroupList.get(0);
if (mesPartProdGroup.getEnableBomVersion() != null && mesPartProdGroup.getEnableBomVersion() == MesExtEnumUtil.ENABLE_BOM_VERSION.ENABLE_BOM_VERSION_2.getValue()) {
log.info("基于默认BOM获取BOM");
bomVersion = "";
}
}
}
//物料+生产版本获取bom信息
List<MesBom> mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, mesProductVersion.getAlternativePartList());
List<MesBom> mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, bomVersion);
//报工类型
if (MesExtEnumUtil.REPORT_TYPE.REPORT.getValue() == mesWorkOrder.getReportType()) {
@ -1068,7 +1082,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
mesWorkOrder.getAdjustQty(), mesWorkOrder.getReportedQty());
}
}
String partProdGroupCode = mesWorkOrder.getPartProdGroupCode();
/*String partProdGroupCode = mesWorkOrder.getPartProdGroupCode();
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(partProdGroupCode,"partProdGroupCode",ddlPackBean);
List<MesPartProdGroup> mesPartProdGroupList = mesPartProdGroupRao.findByHqlTopWhere(ddlPackBean, 1);
@ -1081,8 +1095,25 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion());
bomVersion = mesProductVersion.getAlternativePartList();
}
}
}*/
String partProdGroupCode = mesWorkOrder.getPartProdGroupCode();
//获取生产版本, partProdGroupCode 不为空查询的数据不为空查询数据中的获取bom方式不为空且枚举是 基于默认BOM 才bomversion = null 否则都是通过生产版本找bom
MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion());
String bomVersion = mesProductVersion.getAlternativePartList();
if (!StringUtil.isEmpty(partProdGroupCode)) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(partProdGroupCode, "partProdGroupCode", ddlPackBean);
List<MesPartProdGroup> mesPartProdGroupList = mesPartProdGroupRao.findByHqlTopWhere(ddlPackBean, 1);
if (!mesPartProdGroupList.isEmpty()) {
MesPartProdGroup mesPartProdGroup = mesPartProdGroupList.get(0);
if (mesPartProdGroup.getEnableBomVersion() != null && mesPartProdGroup.getEnableBomVersion() == MesExtEnumUtil.ENABLE_BOM_VERSION.ENABLE_BOM_VERSION_2.getValue()) {
log.info("基于默认BOM获取BOM");
bomVersion = "";
}
}
}
//生成条码
String sn = getStringList(mesWorkOrderNew.getOrganizeCode(), AuthUtilExt.getUserName());
//保存数据

Loading…
Cancel
Save