Kaynağa Gözat

线下转单审核通过时清除原接单记录

wanxl 1 yıl önce
ebeveyn
işleme
942edb4e47

+ 14 - 6
src/main/java/com/repair/controller/RepairRecordController.java

@@ -4,6 +4,7 @@ package com.repair.controller;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -23,8 +24,6 @@ import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.NoUniqueBeanDefinitionException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.BindingResult;
@@ -2214,6 +2213,10 @@ public class RepairRecordController implements RepairRecordControllerAPI {
                     //同意的时候将维修表的状态改成派单中
                     //拒绝的时候将维修表的状态改成转单前的
                     rr.setMaintenanceState(eRecordStatu.Dispatch.getValue());
+                    //清除接单表记录
+                    repairReceivingService.remove(new QueryWrapper<RepairReceiving>()
+                            .eq("record_id",rr.getId())
+                            .eq("user_id",offlineRecord.getUserId()));
                 }
             } else {
                 //转线下前的维修单记录状态
@@ -4775,8 +4778,13 @@ public class RepairRecordController implements RepairRecordControllerAPI {
             if (recordData.getMaintenanceState().intValue() == eRecordStatu.OfflineReview.getValue()) {
                 return CommonResult.fail("该订单已发起转线下审核,请勿重复操作");
             }
-
-            RepairOfflineRecord ror = new RepairOfflineRecord();
+            QueryWrapper<RepairOfflineRecord> qw=new QueryWrapper<RepairOfflineRecord>();
+            qw.eq("record_id",data.getRecordId());
+            List<RepairOfflineRecord> offs= repairOfflineRecordService.list(qw);
+            RepairOfflineRecord ror =new RepairOfflineRecord() ;
+            if(offs!=null&& !offs.isEmpty()){
+                ror.setId(offs.get(0).getId());
+            }
             ror.setRecordId(data.getRecordId());
             ror.setVoice(data.getVoice());
             ror.setVoiceLength(data.getVoiceLength());
@@ -4785,8 +4793,8 @@ public class RepairRecordController implements RepairRecordControllerAPI {
             ror.setApprovalStatu(2);
             ror.setOldRecord(recordData.getMaintenanceState());
 
-            int result = repairOfflineRecordService.insertRepairOfflineRecord(ror);
-            if (result <= 0) {
+            boolean result = repairOfflineRecordService.saveOrUpdate(ror);
+            if (! result) {
                 throw new Exception("申请失败!");
             }