From 487c683569486fc9f9fc87021a2906f41a2c5bae Mon Sep 17 00:00:00 2001 From: "castle.zang" Date: Thu, 14 Nov 2024 11:31:07 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A6=BB=E7=BA=BF=E6=89=93=E5=8D=B0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E7=A1=AE=E8=AE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../busi/MesEarlyWarningServiceImpl.java | 8 +++--- .../busi/MesSortRuleCfgOfflineServiceImpl.java | 32 +++++++++++++++++++++- 2 files changed, 35 insertions(+), 5 deletions(-) diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesEarlyWarningServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesEarlyWarningServiceImpl.java index 411aef3..bd9347f 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesEarlyWarningServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesEarlyWarningServiceImpl.java @@ -401,10 +401,10 @@ public class MesEarlyWarningServiceImpl implements IMesEarlyWarningService { Long realSupplyBuffer = Long.parseLong(infoDD.getCsnNo().substring(3,10)) - Long.parseLong(infoKH.getCsnNo().substring(3,10)) - kanBan.getOnlineAdjustNum(); mesKanBanShowModel.setRealSupplyBuffer(realSupplyBuffer); if (realSupplyBuffer < supplyRedBuffer){ - mesKanBanShowModel.setRealSupplyBufferColor("RED"); + mesKanBanShowModel.setRealSupplyBufferColor("red"); mesKanBanShowModel.setSupplyRedBuffer(supplyRedBuffer); }else if (realSupplyBuffer < supplyYellowBuffer){ - mesKanBanShowModel.setRealSupplyBufferColor("YELLOW"); + mesKanBanShowModel.setRealSupplyBufferColor("yellow"); mesKanBanShowModel.setSupplyRedBuffer(supplyYellowBuffer); } //线头积单 @@ -421,9 +421,9 @@ public class MesEarlyWarningServiceImpl implements IMesEarlyWarningService { mesKanBanShowModel.setSummaryRealSupplyRealCount(summaryRealSupplyRealCount); Long summaryWorkOrderYellowCount = kanBan.getSummaryWorkOrderYellowCount(); if (summaryRealSupplyRealCount > summaryWorkOrderRedCount){ - mesKanBanShowModel.setSummaryWorkOrderColor("RED"); + mesKanBanShowModel.setSummaryWorkOrderColor("red"); }else if (summaryRealSupplyRealCount > summaryWorkOrderYellowCount){ - mesKanBanShowModel.setSummaryWorkOrderColor("YELLOW"); + mesKanBanShowModel.setSummaryWorkOrderColor("yellow"); } //成品缓冲 diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java index 05f37ad..a52ef20 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java @@ -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 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 carModels = carModelRao.findByHqlWhere(carModelPackBean); + + String carModelCode = mesCustomerCarModel.getCarModelCode(); List 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 partSapList = partSapRao.findByHqlWhere(partPackBean); + //5.打散的bom 获取排序加工规则 List workOrderPartList = dismantleBom(erpPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode()); @@ -146,6 +173,9 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS List 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);