Parcourir la source

内部报验-修改/提交

wangming il y a 1 an
Parent
commit
7ebdee3571

+ 14 - 0
business-common/src/main/java/com/rongwei/bscommon/sys/service/ZhcxInsideInspectionService.java

@@ -17,6 +17,20 @@ import javax.servlet.http.HttpServletResponse;
  */
 public interface ZhcxInsideInspectionService extends IService<ZhcxInsideInspectionDo> {
 
+    /**
+     * 保存报验单
+     *
+     * @param req
+     */
+    void insertInspection(InsideInspectionInsertRequest req);
+
+    /**
+     * 修改报验单
+     *
+     * @param req
+     */
+    void updateInspection(InsideInspectionUpdateRequest req);
+
     /**
      * 发起
      *

+ 87 - 5
business-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ZhcxInsideInspectionServiceImpl.java

@@ -8,7 +8,6 @@ import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.ZipUtil;
-import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -19,10 +18,7 @@ import com.rongwei.bsentity.domain.*;
 import com.rongwei.bscommon.sys.dao.ZhcxInsideInspectionDao;
 import com.rongwei.bscommon.sys.service.ZhcxInsideInspectionService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.rongwei.bsentity.dto.InsideInspectionOperRequest;
-import com.rongwei.bsentity.dto.InsideOperLogDto;
-import com.rongwei.bsentity.dto.NotifyDto;
-import com.rongwei.bsentity.dto.OperDto;
+import com.rongwei.bsentity.dto.*;
 import com.rongwei.bsentity.dto.inside.*;
 import com.rongwei.commonservice.serial.service.SysSerialNumberService;
 import com.rongwei.rwadmincommon.system.domain.SysRoleDo;
@@ -91,6 +87,62 @@ public class ZhcxInsideInspectionServiceImpl extends ServiceImpl<ZhcxInsideInspe
     @Value("${temp.filepath:#{null}}")
     private String filepath;
 
+    /**
+     * 保存报验单
+     *
+     * @param req
+     */
+    @Override
+    public void insertInspection(InsideInspectionInsertRequest req) {
+        //保存单据
+        try {
+            generalCRUDService.generalMsInsert(req.getInsert());
+        } catch (Exception e) {
+            log.error("保存失败: {}", e);
+            throw new CustomException("保存失败");
+        }
+
+        //发起
+        launch(req);
+    }
+
+    /**
+     * 修改报验单
+     *
+     * @param req
+     */
+    @Override
+    public void updateInspection(InsideInspectionUpdateRequest req) {
+        //修改操作
+        if(ObjectUtil.isEmpty(req.getOperType()) || "updateInspection".equals(req.getOperType())) {
+            ZhcxInsideInspectionDo inspection = this.getById(req.getId());//报验单
+
+            //生成修改记录
+            //报验单中编码不存在,为首次提交,不需要生成修改记录
+            if(ObjectUtil.isNotEmpty(inspection.getInspectioncode())) {
+                saveEditHistory(inspection, req);
+            }
+
+            //保存单据
+            try {
+                generalCRUDService.generalMsUpdate(req.getUpdate());
+            } catch (Exception e) {
+                log.error("保存失败: {}", e);
+                throw new CustomException("保存失败");
+            }
+
+            //单个报验点保存后操作
+            //生成报验单号
+            updateInspection(inspection, req);
+            //生成空派单信息
+            dispatchService.genDispatch(inspection);
+        }
+        //重新报验
+        else if("reInspection".equals(req.getOperType())) {
+            reInspection(req.getId(), req.getUpdate());
+        }
+    }
+
     /**
      * 保存后操作
      *
@@ -435,6 +487,36 @@ public class ZhcxInsideInspectionServiceImpl extends ServiceImpl<ZhcxInsideInspe
         return 2;
     }
 
+    /**
+     * 保存历史记录
+     *
+     * @param inspection
+     * @param req
+     */
+    private void saveEditHistory(ZhcxInsideInspectionDo inspection, InsideInspectionUpdateRequest req) {
+
+        Map<String, String> descMap = new HashMap<>();
+        List<String> editList = editColsHistory(inspection, req.getUpdate().getMasterUpdate().getUpdatecolumns());
+        if(ObjectUtil.isNotEmpty(editList)) {
+            descMap.put(req.getId(), StringUtils.join(editList, "; "));
+        }
+
+        //没有更改,不存修改日志
+        if(ObjectUtil.isNotEmpty(descMap)) {
+            return ;
+        }
+
+        OperDto operDto = getOper("80");
+        //添加日志
+        InsideInspectionOperBaseDto operBaseDto = new InsideInspectionOperBaseDto();
+        operBaseDto.setLaunchSource(req.getLaunchSource());
+        List<String> list = new ArrayList();
+        list.add(req.getId());
+        operBaseDto.setInsideIdList(list);
+
+        operLogService.saveOperLog(operBaseDto, operDto, descMap);
+    }
+
     /**
      * 派单和执行
      *

+ 17 - 0
business-entity/src/main/java/com/rongwei/bsentity/dto/inside/InsideInspectionInsertRequest.java

@@ -0,0 +1,17 @@
+package com.rongwei.bsentity.dto.inside;
+
+import com.rongwei.bsentity.dto.InsideInspectionOperRequest;
+import com.rongwei.rwcommon.vo.generalsql.MasterSlaveInsertVo;
+import lombok.*;
+
+@Setter
+@Getter
+@NoArgsConstructor
+@AllArgsConstructor
+public class InsideInspectionInsertRequest extends InsideInspectionOperRequest {
+
+    /**
+     * 保存数据
+     */
+    private MasterSlaveInsertVo insert;
+}

+ 24 - 0
business-entity/src/main/java/com/rongwei/bsentity/dto/inside/InsideInspectionUpdateRequest.java

@@ -0,0 +1,24 @@
+package com.rongwei.bsentity.dto.inside;
+
+import com.rongwei.bsentity.dto.InsideInspectionOperRequest;
+import com.rongwei.rwcommon.vo.generalsql.MasterSlaveUpdateVo;
+import lombok.*;
+
+@Setter
+@Getter
+@NoArgsConstructor
+@AllArgsConstructor
+public class InsideInspectionUpdateRequest extends InsideInspectionOperRequest {
+
+    /**
+     * 保存数据
+     */
+    private MasterSlaveUpdateVo update;
+
+    /**
+     * 操作类型,值为空的时候默认修改
+     * reInspection 重新报验
+     * updateInspection 修改
+     */
+    private String operType;
+}

+ 24 - 0
business-server/src/main/java/com/rongwei/bsserver/controller/ZhcxInsideInspectionController.java

@@ -130,5 +130,29 @@ public class ZhcxInsideInspectionController {
             throw new CustomException("下载附件失败");
         }
     }
+
+    /**
+     * 保存
+     *
+     * @param req
+     * @return
+     */
+    @PostMapping("/insertInspection")
+    public R insertInspection(@RequestBody InsideInspectionInsertRequest req){
+        service.insertInspection(req);
+        return R.ok();
+    }
+
+    /**
+     * 修改/重新报验
+     *
+     * @param req
+     * @return
+     */
+    @PostMapping("/updateInspection")
+    public R updateInspection(@RequestBody InsideInspectionUpdateRequest req){
+        service.updateInspection(req);
+        return R.ok();
+    }
 }