Ver Fonte

代码修正

yzc há 2 anos atrás
pai
commit
f1c2919c91

+ 1 - 1
hx-mes/src/main/java/com/fjhx/mes/service/completion/impl/CompletionInfoServiceImpl.java

@@ -122,7 +122,7 @@ public class CompletionInfoServiceImpl extends ServiceImpl<CompletionInfoMapper,
             productionTaskService.updateById(detail);
 
             //检查生产计划下的任务完成数量是否等于计划数量是就修改状态 生产计划状态
-            ProductionPlan productionPlan = productionPlanService.getById(detail.getId());
+            ProductionPlan productionPlan = productionPlanService.getById(detail.getProductionPlanId());
             List<ProductionTask> productionTaskList = productionTaskService.list(q -> q.eq(ProductionTask::getProductionPlanId,
                     detail.getProductionPlanId()).eq(ProductionTask::getStatus, 2));
             BigDecimal count = productionTaskList.stream().map(ProductionTask::getQuantity)

+ 4 - 7
hx-mes/src/main/java/com/fjhx/mes/service/work/impl/WorkOrderServiceImpl.java

@@ -53,13 +53,10 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         //赋值产品名
         List<Long> productIds = records.stream().map(WorkOrder::getProductId).collect(Collectors.toList());
         if (ObjectUtil.isNotEmpty(productIds)) {
-            List<ProductInfo> productInfos = productInfoService.listByIds(productIds);
-            Map<Long, ProductInfo> ProductInfoMap = productInfos.stream().collect(Collectors.groupingBy(ProductInfo::getId,
-                    Collectors.collectingAndThen(Collectors.toList(), value -> value.get(0))));
-            for (WorkOrderVo workOrder : records) {
-                ProductInfo productInfo = ProductInfoMap.get(workOrder.getProductId());
-                workOrder.setProductName(productInfo.getName());
-            }
+            //赋值产品名称
+            productInfoService.attributeAssign(records, WorkOrderVo::getProductId, (item, productInfo) -> {
+                item.setProductName(productInfo.getName());
+            });
         }
         //赋值待排程数量
         List<Long> workOrderIds = records.stream().map(WorkOrder::getId).collect(Collectors.toList());

+ 5 - 2
hx-oa/src/main/java/com/fjhx/oa/service/internal/impl/InternalAddressBookServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fjhx.oa.service.internal.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.fjhx.common.constant.SourceConstant;
@@ -14,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.fjhx.oa.entity.internal.dto.InternalAddressBookDto;
 import cn.hutool.core.bean.BeanUtil;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 import java.util.Map;
@@ -67,14 +69,15 @@ public class InternalAddressBookServiceImpl extends ServiceImpl<InternalAddressB
         this.save(internalAddressBookDto);
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(InternalAddressBookDto internalAddressBookDto) {
         List<InternalAddressBook> internalAddressBookList = internalAddressBookDto.getInternalAddressBookList();
         for (InternalAddressBook internalAddressBook :internalAddressBookList){
             internalAddressBook.setUserId(internalAddressBookDto.getUserId());
         }
-        List<Long> internalAddressBookIds = internalAddressBookList.stream().map(InternalAddressBook::getId).collect(Collectors.toList());
-        remove(q->q.in(InternalAddressBook::getId,internalAddressBookIds));
+        List<Long> internalAddressBookIds = internalAddressBookList.stream().filter(item-> ObjectUtil.isNotEmpty(item.getId())).map(InternalAddressBook::getId).collect(Collectors.toList());
+        remove(q->q.notIn(InternalAddressBook::getId,internalAddressBookIds).eq(InternalAddressBook::getUserId,internalAddressBookDto.getUserId()));
         saveOrUpdateBatch(internalAddressBookList);
     }
 

+ 5 - 8
hx-wms/src/main/java/com/fjhx/wms/service/stock/impl/StockServiceImpl.java

@@ -59,14 +59,11 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
         //获取产品id列表
         List<Long> productIds = stockVos.stream().map(Stock::getProductId).collect(Collectors.toList());
         if (ObjectUtil.isNotEmpty(productIds)) {
-            List<ProductInfo> productInfos = productInfoService.listByIds(productIds);
-            Map<Long, ProductInfo> productInfoMap = productInfos.stream().collect(Collectors.groupingBy(ProductInfo::getId,
-                    Collectors.collectingAndThen(Collectors.toList(), value -> value.get(0))));
-            for (StockVo stockVo : stockVos) {
-                ProductInfo productInfo = productInfoMap.get(stockVo.getProductId());
-                stockVo.setType(productInfo.getType());
-                stockVo.setProductName(productInfo.getName());
-            }
+            //赋值产品名称
+            productInfoService.attributeAssign(stockVos, StockVo::getProductId, (item, productInfo) -> {
+                item.setType(productInfo.getType());
+                item.setProductName(productInfo.getName());
+            });
         }
 
         return page;

+ 3 - 1
hx-wms/src/main/java/com/fjhx/wms/service/stock/impl/StockWaitServiceImpl.java

@@ -71,7 +71,9 @@ public class StockWaitServiceImpl extends ServiceImpl<StockWaitMapper, StockWait
                     Collectors.collectingAndThen(Collectors.toList(), value -> value.get(0))));
             for (StockWaitVo stockWaitVo : records) {
                 ProductInfo productInfo = productInfoMap.get(stockWaitVo.getProductId());
-                stockWaitVo.setProductName(productInfo.getName());
+                if(ObjectUtil.isNotEmpty(productInfo)) {
+                    stockWaitVo.setProductName(productInfo.getName());
+                }
             }
         }