Ver Fonte

班组班别维护逻辑调整

qiangxuan há 4 meses atrás
pai
commit
86d1d869b8

+ 10 - 0
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/billetHotsend/service/impl/BilletHotsendBaseServiceImpl.java

@@ -827,6 +827,9 @@ public class BilletHotsendBaseServiceImpl extends ServiceImpl<BilletHotsendBaseM
 		}
 
 		if ("roll_club_two".equals(billetHotsendDetailsVo.getBelongTable())){
+
+			billetHotsend.setShift(storageBill.getShift());
+			billetHotsend.setShiftGroup(storageBill.getShiftGroup());
 			// 保存棒一信息
 			RollClubTwo rollClubTwo = new RollClubTwo();
 			BeanUtils.copyProperties(billetHotsend, rollClubTwo);
@@ -875,6 +878,9 @@ public class BilletHotsendBaseServiceImpl extends ServiceImpl<BilletHotsendBaseM
 		}
 
 		if ("roll_club_three".equals(billetHotsendDetailsVo.getBelongTable())){
+
+			billetHotsend.setShift(storageBill.getShift());
+			billetHotsend.setShiftGroup(storageBill.getShiftGroup());
 			// 保存棒三信息
 			RollClubThree rollClubThree = new RollClubThree();
 			BeanUtils.copyProperties(billetHotsend, rollClubThree);
@@ -1004,6 +1010,10 @@ public class BilletHotsendBaseServiceImpl extends ServiceImpl<BilletHotsendBaseM
 		 * 保存上若信息
 		 */
 		if ("roll_out_shipp".equals(billetHotsendDetailsVo.getBelongTable())){
+
+			billetHotsend.setShift(storageBill.getShift());
+			billetHotsend.setShiftGroup(storageBill.getShiftGroup());
+
 			RollOutShipp rollOutShipp = new RollOutShipp();
 			BeanUtils.copyProperties(billetHotsend, rollOutShipp);
 

+ 58 - 31
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/stackingAndLoadingVehicles/service/impl/StackingAndLoadingVehiclesServiceImpl.java

@@ -230,10 +230,10 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
      * @param storageBill
      */
     private void handleStackDepartCommon(BilletHotsend billetHotsend, List<StackingAndLoadingVehicles> stackingAndLoadingVehiclesList, LoadingParams loadingParams, BilletHotsendTypeConfig billetHotsendTypeConfig, StorageBill storageBill, String rollHeightStorageBillId, List<RollClubCommon> rollClubCommonList) {
-        String keyShiftGroup = String.format("class:shift:group:%s", billetHotsend.getCcmNo());
-        String keyShift = String.format("class:shift:%s", billetHotsend.getCcmNo());
-        String finalCacheShintGroup = redisTemplate.opsForValue().get(keyShiftGroup).toString();
-        String finalCacheShint = redisTemplate.opsForValue().get(keyShift).toString();
+//        String keyShiftGroup = String.format("class:shift:group:%s", billetHotsend.getCcmNo());
+//        String keyShift = String.format("class:shift:%s", billetHotsend.getCcmNo());
+        String finalCacheShintGroup = storageBill.getShiftGroup();
+        String finalCacheShint = storageBill.getShift();
         // 根据铸机号、位置、层数、类型配置ID更新 初始化容器中的垛位信息
         List<String> ids = stackingAndLoadingVehiclesList.stream().map(StackingAndLoadingVehicles::getId).collect(Collectors.toList());
         // 创建更新包装器
@@ -291,8 +291,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                     LambdaQueryWrapper<RollClubTwo> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(RollClubTwo::getCcmNo, y.getCcmNo().toString())
                             .eq(RollClubTwo::getHeatNo, y.getHeatNo())
-                            .eq(RollClubTwo::getShift, y.getShift())
-                            .eq(RollClubTwo::getShiftGroup, y.getShiftGroup())
+                            .eq(RollClubTwo::getShift, finalCacheShint)
+                            .eq(RollClubTwo::getShiftGroup, finalCacheShintGroup)
                             .eq(RollClubTwo::getStorageBillId, storageBill.getId());
                     RollClubTwo rollClubTwo1 = rollClubTwoService.getOne(queryWrapper1);
                     RollClubTwo rollClubTwo = new RollClubTwo();
@@ -305,8 +305,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                         rollClubTwo.setAmountTotal(1);
                         rollClubTwo.setSteel(y.getGrade());
                         rollClubTwo.setSpec(y.getSpec());
-                        rollClubTwo.setShiftGroup(y.getShiftGroup());
-                        rollClubTwo.setShift(y.getShift());
+                        rollClubTwo.setShiftGroup(finalCacheShintGroup);
+                        rollClubTwo.setShift(finalCacheShint);
                         rollClubTwo.setBlankOutput(oConvertUtils.isEmpty(y.getBilletWeight()) ? 0L : y.getBilletWeight());
                         rollClubTwo.setStorageBillId(storageBill.getId());
                         rollClubTwo.setCreateDate(new Date());
@@ -327,21 +327,28 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 rollClubTwoDetails.setStorageBillId(storageBill.getId());
                 rollClubTwoDetails.setStackStorey(x.getLayer());
                 rollClubTwoDetails.setStackNum(x.getAddress());
-                rollClubTwoDetails.setShiftGroup(x.getShiftGroup());
-                rollClubTwoDetails.setShift(x.getShift());
+                rollClubTwoDetails.setShiftGroup(finalCacheShintGroup);
+                rollClubTwoDetails.setShift(finalCacheShint);
                 rollClubTwoDetails.setLicensePlate(storageBill.getLicensePlate());
                 rollClubTwoDetails.setCreateTime(new Date());
                 rollClubTwoDetails.setUpdateTime(new Date());
                 rollClubTwoDetails.setId(String.valueOf(IdWorker.getId()));
                 rollClubTwoDetails.setBlankOutput(billetWeightTotal);//出坯量
+                String distinctAssemblyNumber = rollClubCommonList.stream()
+                        .map(RollClubCommon::getAssemblyNumber)
+                        .filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber))
+                        .distinct()
+                        .collect(Collectors.joining(","));
+                rollClubTwoDetails.setAssemblyNumber(distinctAssemblyNumber);
+
                 addRollClubTwoDetailsList.add(rollClubTwoDetails);
             } else if ("roll_club_three".equals(loadingParams.getDestinationTable())) {
                 billetBasicInfoList.forEach(y -> {
                     LambdaQueryWrapper<RollClubThree> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(RollClubThree::getCcmNo, y.getCcmNo().toString())
                             .eq(RollClubThree::getHeatNo, y.getHeatNo())
-                            .eq(RollClubThree::getShift, y.getShift())
-                            .eq(RollClubThree::getShiftGroup, y.getShiftGroup())
+                            .eq(RollClubThree::getShift, finalCacheShint)
+                            .eq(RollClubThree::getShiftGroup, finalCacheShintGroup)
                             .eq(RollClubThree::getStorageBillId, storageBill.getId());
                     RollClubThree rollClubThree1 = rollClubThreeService.getOne(queryWrapper1);
                     RollClubThree rollClubThree = new RollClubThree();
@@ -354,8 +361,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                         rollClubThree.setAmountTotal(1);
                         rollClubThree.setSteel(y.getGrade());
                         rollClubThree.setSpec(y.getSpec());
-                        rollClubThree.setShiftGroup(y.getShiftGroup());
-                        rollClubThree.setShift(y.getShift());
+                        rollClubThree.setShiftGroup(finalCacheShintGroup);
+                        rollClubThree.setShift(finalCacheShint);
                         rollClubThree.setBlankOutput(oConvertUtils.isEmpty(y.getBilletWeight()) ? 0L : y.getBilletWeight());
                         rollClubThree.setStorageBillId(storageBill.getId());
                         rollClubThree.setCreateDate(new Date());
@@ -374,8 +381,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 BeanUtils.copyProperties(x, rollClubThreeDetails);
                 rollClubThreeDetails.setHeatNo(String.join(",", heatNos));
                 rollClubThreeDetails.setBilletNo(x.getBilletNos());
-                rollClubThreeDetails.setShiftGroup(x.getShiftGroup());
-                rollClubThreeDetails.setShift(x.getShift());
+                rollClubThreeDetails.setShiftGroup(finalCacheShintGroup);
+                rollClubThreeDetails.setShift(finalCacheShint);
                 rollClubThreeDetails.setStorageBillId(storageBill.getId());
                 rollClubThreeDetails.setStackStorey(x.getLayer());
                 rollClubThreeDetails.setStackNum(x.getAddress());
@@ -384,14 +391,20 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 rollClubThreeDetails.setUpdateTime(new Date());
                 rollClubThreeDetails.setId(String.valueOf(IdWorker.getId()));
                 rollClubThreeDetails.setBlankOutput(billetWeightTotal);//出坯量
+                String distinctAssemblyNumber = rollClubCommonList.stream()
+                        .map(RollClubCommon::getAssemblyNumber)
+                        .filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber))
+                        .distinct()
+                        .collect(Collectors.joining(","));
+                rollClubThreeDetails.setAssemblyNumber(distinctAssemblyNumber);
                 addRollClubThreeDetailsList.add(rollClubThreeDetails);
             } else if ("roll_out_shipp".equals(loadingParams.getDestinationTable())) {
                 billetBasicInfoList.forEach(y -> {
                     LambdaQueryWrapper<RollOutShipp> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(RollOutShipp::getCcmNo, y.getCcmNo().toString())
                             .eq(RollOutShipp::getHeatNo, y.getHeatNo())
-                            .eq(RollOutShipp::getShift, y.getShift())
-                            .eq(RollOutShipp::getShiftGroup, y.getShiftGroup())
+                            .eq(RollOutShipp::getShift, finalCacheShint)
+                            .eq(RollOutShipp::getShiftGroup, finalCacheShintGroup)
                             .eq(RollOutShipp::getStorageBillId, storageBill.getId());
                     RollOutShipp rollOutShipp1 = rollOutShippService.getOne(queryWrapper1);
                     RollOutShipp rollOutShipp = new RollOutShipp();
@@ -404,8 +417,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                         rollOutShipp.setAmountTotal(1);
                         rollOutShipp.setSteel(y.getGrade());
                         rollOutShipp.setSpec(y.getSpec());
-                        rollOutShipp.setShiftGroup(y.getShiftGroup());
-                        rollOutShipp.setShift(y.getShift());
+                        rollOutShipp.setShiftGroup(finalCacheShintGroup);
+                        rollOutShipp.setShift(finalCacheShint);
                         rollOutShipp.setBlankOutput(oConvertUtils.isEmpty(y.getBilletWeight()) ? 0L : y.getBilletWeight());
                         rollOutShipp.setStorageBillId(storageBill.getId());
                         rollOutShipp.setCreateDate(new Date());
@@ -424,8 +437,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 BeanUtils.copyProperties(x, rollOutShippDetails);
                 rollOutShippDetails.setHeatNo(String.join(",", heatNos));
                 rollOutShippDetails.setBilletNo(x.getBilletNos());
-                rollOutShippDetails.setShiftGroup(x.getShiftGroup());
-                rollOutShippDetails.setShift(x.getShift());
+                rollOutShippDetails.setShiftGroup(finalCacheShintGroup);
+                rollOutShippDetails.setShift(finalCacheShint);
                 rollOutShippDetails.setStorageBillId(storageBill.getId());
                 rollOutShippDetails.setStackStorey(x.getLayer());
                 rollOutShippDetails.setStackNum(x.getAddress());
@@ -434,14 +447,28 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 rollOutShippDetails.setCreateTime(new Date());
                 rollOutShippDetails.setUpdateTime(new Date());
                 rollOutShippDetails.setBlankOutput(billetWeightTotal);//出坯量
+
+                String distinctAssemblyNumber = rollClubCommonList.stream()
+                        .map(RollClubCommon::getAssemblyNumber)
+                        .filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber))
+                        .distinct()
+                        .collect(Collectors.joining(","));
+                rollOutShippDetails.setAssemblyNumber(distinctAssemblyNumber);
                 addRollOutShippDetailsList.add(rollOutShippDetails);
             } else if ("roll_height".equals(loadingParams.getDestinationTable())) {
+
+                String keyShiftGroup = String.format("class:shift:group:%s", billetHotsend.getCcmNo());
+                String keyShift = String.format("class:shift:%s", billetHotsend.getCcmNo());
+
+                String heightShiftGroup = oConvertUtils.getString(redisTemplate.opsForValue().get(keyShiftGroup));
+                String heightShift = oConvertUtils.getString(redisTemplate.opsForValue().get(keyShift));
+
                 billetBasicInfoList.forEach(y -> {
                     LambdaQueryWrapper<RollHeight> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(RollHeight::getCcmNo, billetHotsend.getCcmNo())
                             .eq(RollHeight::getHeatNo, billetHotsend.getHeatNo())
-                            .eq(RollHeight::getShift, billetHotsend.getShift())
-                            .eq(RollHeight::getShiftGroup, billetHotsend.getShiftGroup());
+                            .eq(RollHeight::getShift, heightShift)
+                            .eq(RollHeight::getShiftGroup, heightShiftGroup);
                     RollHeight rollHeight1 = rollHeightService.getOne(queryWrapper1);
 
                     RollHeight rollHeight = new RollHeight();
@@ -460,8 +487,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                         rollHeight.setAmountTotal(1);
                         rollHeight.setSteel(y.getGrade());
                         rollHeight.setSpec(y.getSpec());
-                        rollHeight.setShiftGroup(y.getShiftGroup());
-                        rollHeight.setShift(y.getShift());
+                        rollHeight.setShiftGroup(finalCacheShintGroup);
+                        rollHeight.setShift(finalCacheShint);
                         rollHeight.setBlankOutput(oConvertUtils.isEmpty(y.getBilletWeight()) ? 0L : y.getBilletWeight());
                         rollHeight.setCreateDate(new Date());
                         rollHeight.setCreateTime(new Date());
@@ -477,19 +504,19 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                         if (oConvertUtils.isNotEmpty(rollHeight1.getAssemblyNumber())) {
                             assemblyNumber = rollHeight1.getAssemblyNumber() + "," + rollClubCommonList.stream()
                                     .map(RollClubCommon::getAssemblyNumber)
-                                    .filter(t -> t != null)
+                                    .filter(t -> oConvertUtils.isNotEmpty(t))
                                     .distinct()
                                     .collect(Collectors.joining(","));
                             // 对 assemblyNumber 进行二次去重
                             String finalAssemblyNumber = Arrays.stream(assemblyNumber.split(","))
-                                    .filter(s -> !s.isEmpty())
+                                    .filter(s -> oConvertUtils.isNotEmpty(s))
                                     .distinct()
                                     .collect(Collectors.joining(","));
                             rollHeight1.setAssemblyNumber(finalAssemblyNumber);
                         } else {
                             assemblyNumber = rollClubCommonList.stream()
                                     .map(RollClubCommon::getAssemblyNumber)
-                                    .filter(n -> n != null)
+                                    .filter(n -> oConvertUtils.isNotEmpty(n))
                                     .distinct()
                                     .collect(Collectors.joining(","));
                             rollHeight1.setAssemblyNumber(assemblyNumber);
@@ -502,8 +529,8 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
                 BeanUtils.copyProperties(x, rollHeightDetails);
                 rollHeightDetails.setHeatNo(String.join(",", heatNos));
                 rollHeightDetails.setBilletNo(x.getBilletNos());
-                rollHeightDetails.setShiftGroup(x.getShiftGroup());
-                rollHeightDetails.setShift(x.getShift());
+                rollHeightDetails.setShiftGroup(heightShiftGroup);
+                rollHeightDetails.setShift(heightShift);
                 rollHeightDetails.setStackAddr(x.getStackAddr());
                 rollHeightDetails.setStackNum(x.getAddress());
                 rollHeightDetails.setStackStorey(x.getLayer());