|
|
|
@ -64,6 +64,11 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesPullingOrderPartInfoOfflineRepository partPullOrderDetailOfflineRao;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesPartSapRepository partSapRao;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Transactional(propagation = Propagation.REQUIRES_NEW)
|
|
|
|
|
@Override
|
|
|
|
@ -95,16 +100,33 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS
|
|
|
|
|
if (mesCustomerCarModel == null) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
//5.6 获取零件信息
|
|
|
|
|
DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(erpPartNo,"partNo", partPackBean);
|
|
|
|
|
List<MesPartSap> partSapList = partSapRao.findByHqlWhere(partPackBean);
|
|
|
|
|
|
|
|
|
|
//7.获取车型
|
|
|
|
|
// 客户车型配置
|
|
|
|
|
// //4.查询车型配置中的车型编号就是客户零件号 custPartNo,custPlantCode,CustCode,Plant
|
|
|
|
|
// DdlPackBean carModelPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
// DdlPreparedPack.getStringEqualPack(custPartNo,"custPartNo",carModelPackBean);
|
|
|
|
|
// DdlPreparedPack.getStringEqualPack(organizeCode,"organizeCode",carModelPackBean);
|
|
|
|
|
// List<MesCustomerCarModel> carModels = carModelRao.findByHqlWhere(carModelPackBean);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String carModelCode = mesCustomerCarModel.getCarModelCode();
|
|
|
|
|
List<MesWorkOrderAssembly> assemblyList = getAssemblyList(detail.getWorkCenterCode(), carModelCode, workOrderPartList, mesPartProdGroup);
|
|
|
|
|
//7.保存到离线表中
|
|
|
|
|
for (MesWorkOrderAssembly orderAssembly : assemblyList) {
|
|
|
|
|
MesProdRuleSortCfgOffline cfgOffline = new MesProdRuleSortCfgOffline();
|
|
|
|
|
BeanUtils.copyProperties(orderAssembly, cfgOffline);
|
|
|
|
|
if (partSapList != null) {
|
|
|
|
|
cfgOffline.setPartName(partSapList.get(0).getPartName());
|
|
|
|
|
}
|
|
|
|
|
cfgOffline.setCustPartNo(custPartNo);
|
|
|
|
|
cfgOffline.setCustPartName(mesCustomerPart.getCustPartName());
|
|
|
|
|
cfgOffline.setPartNo(erpPartNo);
|
|
|
|
|
// cfgOffline.setVehicleNo(carModelCode);
|
|
|
|
|
cfgOffline.setRemark(mesCustomerCarModel.getCarModelName());
|
|
|
|
|
cfgOffline.setOrganizeCode(organizeCode);
|
|
|
|
|
ConvertBean.saveOrUpdate(cfgOffline, "OFFLINE-JOB");
|
|
|
|
|
cfgOfflineRao.insert(cfgOffline);
|
|
|
|
@ -137,6 +159,11 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS
|
|
|
|
|
if (mesCustomerPart == null) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
//5.6 获取零件信息
|
|
|
|
|
DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(erpPartNo,"partNo", partPackBean);
|
|
|
|
|
List<MesPartSap> partSapList = partSapRao.findByHqlWhere(partPackBean);
|
|
|
|
|
|
|
|
|
|
//5.打散的bom 获取排序加工规则
|
|
|
|
|
List<MesWorkOrderPart> workOrderPartList = dismantleBom(erpPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode());
|
|
|
|
|
|
|
|
|
@ -146,6 +173,9 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS
|
|
|
|
|
List<MesPartPullDetail> pullDetails = pullDetailList.stream().filter(item -> partPullDetailPartNoList.contains(item.getPartNo())).collect(Collectors.toList());
|
|
|
|
|
//7.生成拉动主单模板 MesPullingOrderPartInfoOfflineRepository
|
|
|
|
|
MesPullingOrderInfoOffline mesPartPullOffline = new MesPullingOrderInfoOffline();
|
|
|
|
|
if (partSapList != null) {
|
|
|
|
|
mesPartPullOffline.setPartName(partSapList.get(0).getPartName());
|
|
|
|
|
}
|
|
|
|
|
mesPartPullOffline.setPullCode(partPull.getPullCode());
|
|
|
|
|
mesPartPullOffline.setCustPartNo(custPartNo);
|
|
|
|
|
mesPartPullOffline.setPartNo(erpPartNo);
|
|
|
|
|