黄远 5 лет назад
Родитель
Сommit
527405199f

+ 1 - 8
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/controller/MaintenanceRecordController.java

@@ -344,14 +344,7 @@ public class MaintenanceRecordController {
     @PostMapping("fill")
     @Validation(fields = {"id", "maintenanceOption", "imgs"})
     public RestResponse fill(@Val @RequestBody MtRecordRequest request) {
-        Long recordId = request.getId();
-        //获取维保记录
-        MaintenanceRecord entity = maintenanceRecordService.getById(recordId);
-        Validate.notNull(entity, ValuePool.MAINTENANCE_RECORD_NOT_EXIST);
-
-        entity.setMaintenanceOption(request.getMaintenanceOption());
-        entity.setStatus("0");
-        return maintenanceRecordService.fill(entity, request.getImgs());
+        return maintenanceRecordService.fill(request);
     }
 
     /**

+ 28 - 8
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/service/MaintenanceRecordService.java

@@ -21,6 +21,8 @@ import cn.com.ty.lift.business.project.service.ProjectLiftRelevanceService;
 import cn.com.ty.lift.business.project.service.ProjectService;
 import cn.com.ty.lift.common.constants.CommonEnum;
 import cn.com.ty.lift.common.utils.MapHelper;
+import cn.com.ty.lift.common.utils.ValuePool;
+import cn.com.ty.lift.common.verify.Validate;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.IterUtil;
@@ -116,7 +118,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
         LambdaQueryWrapper<MaintenanceRecord> lambdaQueryWrapper = Wrappers.lambdaQuery();
         lambdaQueryWrapper.eq(MaintenanceRecord::getMtPlanId, planId);
         lambdaQueryWrapper.eq(MaintenanceRecord::getMtCompanyId, mtCompanyId);
-        lambdaQueryWrapper.eq(MaintenanceRecord::getLiftId,liftId);
+        lambdaQueryWrapper.eq(MaintenanceRecord::getLiftId, liftId);
         return getOne(lambdaQueryWrapper);
     }
 
@@ -239,7 +241,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
             record.setPlanDate(plan.getPlanDate());
             record.setStopDate(LocalDateTime.now());
             MaintenanceRecord one = findOne(planId, mtCompanyId, liftId);
-            if (Objects.isNull(one)){
+            if (Objects.isNull(one)) {
                 boolean ret = save(record);
                 if (!ret) {
                     rollback();
@@ -396,6 +398,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
 
     /**
      * 批量打印
+     *
      * @param request
      * @return
      */
@@ -477,26 +480,43 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
     }
 
     /**
-     * 填写保养单-确认,带维保项和现场图片 ,修改record
+     * 工单补录
      *
-     * @param entity MaintenanceRecord
-     * @param imgs   List<String>
+     * @param request 维保记录id 和相应数据
      * @return boolean
      * @author wcz
      */
     @Transactional(rollbackFor = Exception.class)
-    public RestResponse fill(MaintenanceRecord entity, List<String> imgs) {
-        boolean mr = saveOrUpdate(entity);
+    public RestResponse fill(MtRecordRequest request) {
+        Long recordId = request.getId();
+        //获取维保记录
+        MaintenanceRecord record = this.getById(recordId);
+        Validate.notNull(record, ValuePool.MAINTENANCE_RECORD_NOT_EXIST);
+        //获取维保计划
+        MaintenancePlan plan = maintenancePlanService.getOne(record.getMtPlanId());
+        Validate.notNull(plan, ValuePool.MAINTENANCE_PLAN_NOT_EXIST);
+        //更新状态 - 维保记录
+        record.setMaintenanceOption(request.getMaintenanceOption());
+        record.setStatus("0");
+        boolean mr = saveOrUpdate(record);
         if (!mr) {
             return RestResponse.fail("修改保养单失败,请稍后重试");
         }
+        //更新状态 - 维保计划
+        plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.COMPLETE.getCode()));
+        if (!maintenancePlanService.updateById(plan)) {
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return RestResponse.fail("更新保养计划失败,请稍后重试");
+        }
+        //保存维保收费项
+        List<String> imgs = request.getImgs();
         if (IterUtil.isEmpty(imgs)) {
             return RestResponse.success(true);
         }
         List<MtRecordImg> mtRecordImgs = new ArrayList<>();
         for (int i = 0; i < imgs.size(); i++) {
             MtRecordImg mri = new MtRecordImg();
-            mri.setMtRecordId(entity.getId());
+            mri.setMtRecordId(record.getId());
             mri.setImgUrl(imgs.get(i));
             mri.setSort(i);
             mtRecordImgs.add(mri);