Browse Source

维修登记报价单添加partId

lyhzzz 2 years ago
parent
commit
52235578c7

+ 21 - 33
src/main/java/com/fdkankan/sale/service/impl/RepairPersonnelService.java

@@ -108,7 +108,24 @@ public class RepairPersonnelService {
 
         repairLogService.saveBySysUser(userId,repair.getRepairId(),2,"维修登记");
 
-        for (RepairRegisterPartVo partVo : param.getPartList()) {
+        this.addRepairPart(param.getPartList(),repair,repairRegister,partIdMap);
+
+        repairFaultService.delByRepairId(repair.getRepairId());
+
+        for (Integer faultId : param.getFaultIds()) {
+            RepairFault fault = new RepairFault();
+            fault.setRepairId(repair.getRepairId());
+            fault.setRepairRegisterId(repairRegister.getRepairRegisterId());
+            fault.setFaultId(faultId);
+            repairFaultService.save(fault);
+        }
+
+        repairLogService.saveBySysUser(userId,repair.getRepairId(),2,"维修登记");
+
+    }
+
+    private void addRepairPart(List<RepairRegisterPartVo> partVoList,Repair repair,RepairRegister repairRegister,HashMap<Integer,Integer> partIdMap ) {
+        for (RepairRegisterPartVo partVo : partVoList) {
             Part part = partService.getById(partVo.getPartId());
             if(part == null){
                 continue;
@@ -118,7 +135,7 @@ public class RepairPersonnelService {
             repairRegisterPart.setRepairRegisterId(repairRegister.getRepairRegisterId());
             repairRegisterPart.setPartId(partVo.getPartId());
             repairRegisterPart.setPartCount(partVo.getPartCount());
-            if(partIdMap.get(partVo.getPartId())!=null){
+            if(partIdMap != null && partIdMap.get(partVo.getPartId())!=null){
                 repairRegisterPart.setId(partIdMap.get(partVo.getPartId()));
             }
             repairRegisterPartService.saveOrUpdate(repairRegisterPart);
@@ -128,21 +145,10 @@ public class RepairPersonnelService {
             priceList.setName(part.getPartName());
             priceList.setPrice(part.getPartPrice());
             priceList.setCount(partVo.getPartCount());
+            priceList.setPartId(part.getPartId());
             priceListService.save(priceList);
 
         }
-        repairFaultService.delByRepairId(repair.getRepairId());
-
-        for (Integer faultId : param.getFaultIds()) {
-            RepairFault fault = new RepairFault();
-            fault.setRepairId(repair.getRepairId());
-            fault.setRepairRegisterId(repairRegister.getRepairRegisterId());
-            fault.setFaultId(faultId);
-            repairFaultService.save(fault);
-        }
-
-        repairLogService.saveBySysUser(userId,repair.getRepairId(),2,"维修登记");
-
     }
 
     public void repairAddPart(CheckRegisterParam param, Long userId) {
@@ -163,26 +169,8 @@ public class RepairPersonnelService {
         repairRegister.setSysUserId(userId);
         repairRegisterService.saveOrUpdate(repairRegister);
 
-        for (RepairRegisterPartVo partVo : param.getPartList()) {
-            Part part = partService.getById(partVo.getPartId());
-            if(part == null){
-                continue;
-            }
-            RepairRegisterPart repairRegisterPart = new RepairRegisterPart();
-            repairRegisterPart.setRepairId(repair.getRepairId());
-            repairRegisterPart.setRepairRegisterId(repairRegister.getRepairRegisterId());
-            repairRegisterPart.setPartId(partVo.getPartId());
-            repairRegisterPart.setPartCount(partVo.getPartCount());
-            repairRegisterPartService.saveOrUpdate(repairRegisterPart);
-
-            PriceList priceList = new PriceList();
-            priceList.setRepairId(repair.getRepairId());
-            priceList.setName(part.getPartName());
-            priceList.setPrice(part.getPartPrice());
-            priceList.setCount(partVo.getPartCount());
-            priceListService.save(priceList);
+        this.addRepairPart(param.getPartList(),repair,repairRegister,null);
 
-        }
         repairLogService.saveBySysUser(userId,repair.getRepairId(),2,"维修中添加备件");
 
     }