lyhzzz 2 years ago
parent
commit
e68455c537

+ 6 - 0
src/main/java/com/fdkankan/sale/entity/RepairLog.java

@@ -71,4 +71,10 @@ public class RepairLog implements Serializable {
 
     @TableField("register_log_id")
     private Integer registerLogId;
+
+    /**
+     * 报修单状态
+     */
+    @TableField("old_repair_status")
+    private Integer oldRepairStatus;
 }

+ 3 - 3
src/main/java/com/fdkankan/sale/service/IRepairLogService.java

@@ -16,11 +16,11 @@ import java.util.List;
  */
 public interface IRepairLogService extends IService<RepairLog> {
 
-    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,String remark);
+    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,Integer oldRepairStatus,String remark);
 
-    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,String remark,Integer testId);
+    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,Integer oldRepairStatus,String remark,Integer testId);
 
-    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,String remark,Integer testId,Integer registerLogId);
+    RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,Integer oldRepairStatus,String remark,Integer testId,Integer registerLogId);
 
     List<RepairLog> getByRepairIdAndStatus(String repairId, Integer status);
 

+ 5 - 5
src/main/java/com/fdkankan/sale/service/impl/RepairCustomerService.java

@@ -74,9 +74,9 @@ public class RepairCustomerService {
             List<PriceList> partList = priceListService.getByRepairId(repair.getRepairId());
             List<PriceList> collect = partList.stream().filter(entity -> entity.getType() == 0).collect(Collectors.toList());
             if(collect.size() <=0){
-                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),"确认维修");
+                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),repair.getStatus(),"维修确认");
             }else {
-                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_PREPARED.status(),"确认维修");
+                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_PREPARED.status(),repair.getStatus(),"维修确认");
             }
         }
         if(param.getConfirm() == 1) {
@@ -88,12 +88,12 @@ public class RepairCustomerService {
 
             if(robAmount.compareTo(BigDecimal.ZERO) <=0  ||  repair.getWarrantyType() == 0 ){
                 if(partVoList.size() >0){
-                    repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_CANCELED_RECOVERED.status(),"取消维修");
+                    repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_CANCELED_RECOVERED.status(),repair.getStatus(),"取消维修");
                 }else {
-                    repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(),"取消维修");
+                    repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(),"取消维修");
                 }
             } else {
-                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_CANCELED.status(),"取消维修");
+                repairLogService.saveBySysUser(param.getUserId(),repair.getRepairId(),RepairStatusEnum.TO_BE_CANCELED.status(),repair.getStatus(),"取消维修");
             }
 
         }

+ 10 - 4
src/main/java/com/fdkankan/sale/service/impl/RepairInfoService.java

@@ -166,6 +166,9 @@ public class RepairInfoService {
                     repairLogVo.setCustomerAddress(customerAddress);
                     break;
             }
+            if(repairLogVo.getOldRepairStatus() != null){
+                setTitle(repairLogVo);
+            }
         }
         List<RepairLogVo> repairLogListVo = new ArrayList<>();
         if(repairLogList.size() >0){
@@ -177,6 +180,7 @@ public class RepairInfoService {
             repairLogListVo.addAll(repairLogList);
         }
 
+
         return repairLogListVo;
     }
 
@@ -191,12 +195,13 @@ public class RepairInfoService {
     }
 
     private RepairLogVo setTitle(RepairLogVo log) {
-        String subTitle = RepairStatusEnumMsg.getByStatus(log.getRepairStatus()).getMessage();
+        Integer  status = log.getOldRepairStatus() == null ? log.getRepairStatus() :log.getOldRepairStatus() ;
+        String subTitle = RepairStatusEnumMsg.getByStatus(status).getMessage();
         List<Integer> noUserNameList = Arrays.asList( 30,40, 80, 110);
-        if(!noUserNameList.contains(log.getRepairStatus())){
+        if(!noUserNameList.contains(status)){
             OrderReceiving orderReceiving = orderReceivingService.getByRepairId(log.getRepairId());
             Long sysUserId = null;
-            switch (log.getRepairStatus()){
+            switch (status){
                 case 10 :
                 case 60 :
                     sysUserId = orderReceiving.getRepairManId();break;
@@ -218,7 +223,8 @@ public class RepairInfoService {
 
         }
         log.setSubTitle(subTitle);
-        log.setRemark(RepairStatusEnum.getByStatus(log.getRepairStatus()).getMessage());
+        String title = RepairStatusEnum.getByStatus(status).getMessage();
+        log.setTitle(title);
         return log;
     }
 

+ 6 - 3
src/main/java/com/fdkankan/sale/service/impl/RepairLogServiceImpl.java

@@ -35,38 +35,41 @@ public class RepairLogServiceImpl extends ServiceImpl<IRepairLogMapper, RepairLo
      *      *        80待支付(已完结),90待回收,100待发货,110已发货
      */
     @Override
-    public RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,String remark) {
+    public RepairLog saveBySysUser(Long sysUserId, String repairId,Integer repairStatus,Integer oldRepairStatus,String remark) {
         RepairLog repairLog = new RepairLog();
         repairLog.setRepairId(repairId);
         repairLog.setRepairStatus(repairStatus);
         repairLog.setSysUserId(sysUserId);
         repairLog.setRemark(remark);
+        repairLog.setOldRepairStatus(oldRepairStatus);
         this.save(repairLog);
         repairService.updateRepairStatus(repairId,repairStatus);
         return repairLog;
     }
 
     @Override
-    public RepairLog saveBySysUser(Long sysUserId, String repairId, Integer repairStatus, String remark, Integer testId) {
+    public RepairLog saveBySysUser(Long sysUserId, String repairId, Integer repairStatus,Integer oldRepairStatus, String remark, Integer testId) {
         RepairLog repairLog = new RepairLog();
         repairLog.setRepairId(repairId);
         repairLog.setRepairStatus(repairStatus);
         repairLog.setSysUserId(sysUserId);
         repairLog.setRemark(remark);
         repairLog.setTestId(testId);
+        repairLog.setOldRepairStatus(oldRepairStatus);
         this.save(repairLog);
         repairService.updateRepairStatus(repairId,repairStatus);
         return repairLog;
     }
 
     @Override
-    public RepairLog saveBySysUser(Long sysUserId, String repairId, Integer repairStatus, String remark, Integer testId,Integer registerLogId) {
+    public RepairLog saveBySysUser(Long sysUserId, String repairId, Integer repairStatus,Integer oldRepairStatus, String remark, Integer testId,Integer registerLogId) {
         RepairLog repairLog = new RepairLog();
         repairLog.setRepairId(repairId);
         repairLog.setRepairStatus(repairStatus);
         repairLog.setSysUserId(sysUserId);
         repairLog.setRemark(remark);
         repairLog.setRegisterLogId(registerLogId);
+        repairLog.setOldRepairStatus(oldRepairStatus);
         this.save(repairLog);
         repairService.updateRepairStatus(repairId,repairStatus);
         return repairLog;

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

@@ -117,7 +117,7 @@ public class RepairPersonnelService {
         repairRegister.setStatus(0);
         RepairRegisterLog repairRegisterLog = repairRegisterLogService.saveLog(repairRegister);
 
-        repairLogService.saveBySysUser(userId,repair.getRepairId(),repairStatus,"维修检测",null,repairRegisterLog.getRegisterLogId());
+        repairLogService.saveBySysUser(userId,repair.getRepairId(),repairStatus,repair.getStatus(),"维修检测",null,repairRegisterLog.getRegisterLogId());
 
         this.addRepairPart(param.getPartList(),repair,repairRegister,repairRegisterLog.getRegisterLogId());
 
@@ -181,9 +181,9 @@ public class RepairPersonnelService {
         RepairRegisterLog repairRegisterLog = repairRegisterLogService.saveLog(repairRegister);
         this.addRepairPart(param.getPartList(),repair,repairRegister,repairRegisterLog.getRegisterLogId());
         if(repair.getWarrantyType() == 0){
-            repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_PREPARED.status(),"维修中添加备件",null,repairRegisterLog.getRegisterLogId());
+            repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_PREPARED.status(),repair.getStatus(),"维修中添加备件",null,repairRegisterLog.getRegisterLogId());
         }else {
-            repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_QUOTED.status(),"维修中添加备件",null,repairRegisterLog.getRegisterLogId());
+            repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_QUOTED.status(),repair.getStatus(),"维修中添加备件",null,repairRegisterLog.getRegisterLogId());
         }
 
     }
@@ -199,7 +199,7 @@ public class RepairPersonnelService {
         if(!repair.getStatus().equals(RepairStatusEnum.TO_BE_REPAIRED.status())){
             throw new BusinessException(ResultCode.REPAIR_STATUS_NOT_EXITS);
         }
-        repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_TESTED.status(),"维修完成");
+        repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_TESTED.status(),repair.getStatus(),"维修完成");
 
 //        List<PriceList> priceListList = priceListService.getByRepairId(repair.getRepairId());
 //        List<PriceList> collect = priceListList.stream().filter(entity ->entity.getType()== 0 && entity.getRecoveryStatus() == 0).collect(Collectors.toList());

+ 6 - 6
src/main/java/com/fdkankan/sale/service/impl/RepairSaleService.java

@@ -99,7 +99,7 @@ public class RepairSaleService {
         param.setOrderFaultImg(param.getImageUrl());
         orderReceivingService.save(param);
 
-        repairLogService.saveBySysUser(sysUserId,param.getRepairId(), RepairStatusEnum.TO_BE_CHECK.status(),"客服接单");
+        repairLogService.saveBySysUser(sysUserId,param.getRepairId(), RepairStatusEnum.TO_BE_CHECK.status(),repair.getStatus(),"客服接单");
 
     }
 
@@ -155,7 +155,7 @@ public class RepairSaleService {
         customerAddressService.save(customerAddress);
 
         repairService.save(repair);
-        repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_RECEIVED.status(),"报修");
+        repairLogService.saveBySysUser(userId,repair.getRepairId(),RepairStatusEnum.TO_BE_RECEIVED.status(),repair.getStatus(),"报修");
 
 
 
@@ -219,7 +219,7 @@ public class RepairSaleService {
             }
 
         }
-        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_CONFIRMED.status(),"维修报价");
+        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_CONFIRMED.status(),repair.getStatus(),"维修报价");
     }
 
     public PriceListVo getPriceList(String repairId) {
@@ -288,9 +288,9 @@ public class RepairSaleService {
 
         List<RepairRegisterPartVo> partVoList = repairSupplyService.partInfo(repairPay.getRepairId(), 1);
         if(partVoList.size() >0){
-            repairLogService.saveBySysUser(userId,param.getRepairId(),status, "付款登记");
+            repairLogService.saveBySysUser(userId,param.getRepairId(),status,repair.getStatus(), "付款登记");
         }else {
-            repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(), "付款登记");
+            repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(), "付款登记");
         }
 
     }
@@ -307,7 +307,7 @@ public class RepairSaleService {
             throw new BusinessException(ResultCode.REPAIR_STATUS_NOT_EXITS);
         }
         customerAddressService.setTrackingNumByRepairId(repair.getRepairId(),param.getGetType(),param.getTrackingNum());
-        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.OVER_SHIPPED.status(),"发货登记");
+        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.OVER_SHIPPED.status(),repair.getStatus(),"发货登记");
 
     }
 }

+ 10 - 4
src/main/java/com/fdkankan/sale/service/impl/RepairServiceImpl.java

@@ -47,6 +47,8 @@ public class RepairServiceImpl extends ServiceImpl<IRepairMapper, Repair> implem
     IPriceListService priceListService;
     @Autowired
     RepairSupplyService repairSupplyService;
+    @Autowired
+    IRepairService repairService;
 
     @Override
     public void updateRepairStatus(String repairId, Integer status) {
@@ -83,21 +85,25 @@ public class RepairServiceImpl extends ServiceImpl<IRepairMapper, Repair> implem
         if(repairPay == null){
             return;
         }
+        Repair repair = repairService.getById(repairPay.getRepairId());
+        if(repair == null){
+            return;
+        }
         repairPayService.updatePayStatus(orderSn,tradeNo,openid);
         if(orderSn.contains("se_s")){
             List<RepairRegisterPartVo> partVoList = repairSupplyService.partInfo(repairPay.getRepairId(), 1);
             if(partVoList.size() >0){
-                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_RECOVERED.status(),"完成维修支付成功");
+                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_RECOVERED.status(),repair.getStatus(),"完成维修支付成功");
             }else {
-                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),"完成维修支付成功");
+                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(),"完成维修支付成功");
             }
         }
         if(orderSn.contains("se_c")){
             List<RepairRegisterPartVo> partVoList = repairSupplyService.partInfo(repairPay.getRepairId(), 1);
             if(partVoList.size() >0){
-                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_CANCELED_RECOVERED.status(),"取消维修支付成功");
+                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_CANCELED_RECOVERED.status(),repair.getStatus(),"取消维修支付成功");
             }else {
-                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),"取消维修支付成功");
+                repairLogService.saveBySysUser(null,repairPay.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(),"取消维修支付成功");
             }
         }
     }

+ 2 - 2
src/main/java/com/fdkankan/sale/service/impl/RepairSupplyService.java

@@ -143,7 +143,7 @@ public class RepairSupplyService {
             partService.outStock(partVo.getPartId(),partVo.getPartCount(),userId,repair.getRepairId());
         }
 
-        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),"备件出库");
+        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),repair.getStatus(),"备件出库");
     }
 
     public void partRecovery(Repair param, Long userId) {
@@ -164,6 +164,6 @@ public class RepairSupplyService {
             partService.recovery(partVo.getPartId(),partVo.getPartCount(),userId,repair.getRepairId(),repair.getStatus());
         }
 
-        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(),"备件回收");
+        repairLogService.saveBySysUser(userId,param.getRepairId(),RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(),"备件回收");
     }
 }

+ 4 - 4
src/main/java/com/fdkankan/sale/service/impl/RepairTesterService.java

@@ -83,16 +83,16 @@ public class RepairTesterService {
             List<RepairRegisterPartVo> partVoList = repairSupplyService.partInfo(repair.getRepairId(), 1);
             if(repair.getWarrantyType() == 0 ){
                 if(partVoList.size() >0){
-                    repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_RECOVERED.status(),"测试通过",entity.getTestId());
+                    repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_RECOVERED.status(),repair.getStatus(),"测试通过",entity.getTestId());
                 }else {
-                    repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),"测试通过",entity.getTestId());
+                    repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_SHIPPED.status(),repair.getStatus(),"测试通过",entity.getTestId());
                 }
             }else {
-                repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_PAID.status(),"测试通过",entity.getTestId());
+                repairLogService.saveBySysUser(userId,testParam.getRepairId(), RepairStatusEnum.TO_BE_PAID.status(),repair.getStatus(),"测试通过",entity.getTestId());
             }
         }else {
             repairTestService.save(entity);
-            repairLogService.saveBySysUser(userId,testParam.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),"测试不通过",entity.getTestId());
+            repairLogService.saveBySysUser(userId,testParam.getRepairId(),RepairStatusEnum.TO_BE_REPAIRED.status(),repair.getStatus(),"测试不通过",entity.getTestId());
         }
 
     }