Selaa lähdekoodia

sop对接修改

车车 4 kuukautta sitten
vanhempi
sitoutus
d12a41b986

+ 1 - 3
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/sop/SopController.java

@@ -2,11 +2,9 @@ package cn.iocoder.yudao.module.iscs.controller.admin.sop;
 
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.SopPageReqVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.SopRespVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.SopSaveReqVO;
-import cn.iocoder.yudao.module.iscs.dal.dataobject.sop.SopDO;
 import cn.iocoder.yudao.module.iscs.service.sop.SopService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
@@ -33,7 +31,7 @@ public class SopController {
     @PostMapping("/insertSop")
     @Operation(summary = "创建SOP信息")
     @PreAuthorize("@ss.hasPermission('iscs:sop:create')")
-    public CommonResult<Boolean> insertSop(@Valid @RequestBody SopSaveReqVO createReqVO) {
+    public CommonResult<Long> insertSop(@Valid @RequestBody SopSaveReqVO createReqVO) {
         return success(sopService.createSop(createReqVO));
     }
 

+ 0 - 3
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/sop/vo/SopRespVO.java

@@ -71,9 +71,6 @@ public class SopRespVO {
     @Schema(description = "SOP类型")
     private String sopTypeName;
 
-    @Schema(description = "所属车间Name")
-    private String workshopName;
-
     @Schema(description = "所属区域Name")
     private String workareaName;
 

+ 14 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/dal/mysql/sop/SopMapper.java

@@ -7,9 +7,12 @@ import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.SopPageReqVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.SopRespVO;
 import cn.iocoder.yudao.module.iscs.dal.dataobject.sop.SopDO;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Delete;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * SOP信息 Mapper
  *
@@ -37,4 +40,15 @@ public interface SopMapper extends BaseMapperX<SopDO> {
 
     Page<SopRespVO> getSopPage(Page<SopDO> page, @Param(value = "vo") SopPageReqVO vo);
 
+    @Delete({
+            "<script>",
+            "DELETE FROM isc_sop",
+            "WHERE id IN",
+            "<foreach item='id' collection='ids' open='(' separator=',' close=')'>",
+            "#{id}",
+            "</foreach>",
+            "</script>"
+    })
+    Boolean physicalDeleteByIds(@Param(value = "ids") List<Long> ids);
+
 }

+ 1 - 1
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/service/sop/SopService.java

@@ -23,7 +23,7 @@ public interface SopService extends IService<SopDO> {
      * @param createReqVO 创建信息
      * @return 编号
      */
-    Boolean createSop(@Valid SopSaveReqVO createReqVO);
+    Long createSop(@Valid SopSaveReqVO createReqVO);
 
     /**
      * 更新SOP信息

+ 34 - 6
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/service/sop/SopServiceImpl.java

@@ -5,8 +5,7 @@ import cn.hutool.core.lang.Assert;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.iscs.controller.admin.sop.vo.*;
-import cn.iocoder.yudao.module.iscs.dal.dataobject.sop.SopDO;
-import cn.iocoder.yudao.module.iscs.dal.dataobject.sop.SopGroupDO;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.sop.*;
 import cn.iocoder.yudao.module.iscs.dal.mysql.sop.SopMapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -44,7 +43,7 @@ public class SopServiceImpl extends ServiceImpl<SopMapper, SopDO> implements Sop
 
     @Transactional
     @Override
-    public Boolean createSop(SopSaveReqVO vo) {
+    public Long createSop(SopSaveReqVO vo) {
         Assert.isTrue(StringUtils.isNotBlank(vo.getSopName()), "SOP名称不可为空!");
         List<SopDO> list = list(Wrappers.<SopDO>lambdaQuery().eq(SopDO::getSopName, vo.getSopName()));
         Assert.isTrue(list.isEmpty(), "该SOP名称已被使用!");
@@ -72,7 +71,7 @@ public class SopServiceImpl extends ServiceImpl<SopMapper, SopDO> implements Sop
             sopWorkflowStepService.createSopWorkflowStep(vo.getSopStepList());
         }
         // 返回
-        return true;
+        return sop.getId();
     }
 
     @Override
@@ -90,13 +89,42 @@ public class SopServiceImpl extends ServiceImpl<SopMapper, SopDO> implements Sop
         sopMapper.updateById(updateObj);
     }
 
+    @Transactional
     @Override
-        public void deleteSopListByIds(List<Long> ids) {
+    public void deleteSopListByIds(List<Long> ids) {
         // 校验存在
         validateSopExists(ids);
         // 删除
-        sopMapper.deleteByIds(ids);
+        sopMapper.physicalDeleteByIds(ids);
+        // 删除isc_sop_group
+        List<SopGroupDO> sopGroupList = sopGroupService.list(Wrappers.<SopGroupDO>lambdaQuery()
+                .in(SopGroupDO::getSopId, ids));
+        if (!sopGroupList.isEmpty()) {
+            List<Long> idList = sopGroupList.stream().map(SopGroupDO::getId).toList();
+            sopGroupService.deleteSopGroupListByIds(idList);
+        }
+        // 删除isc_sop_points
+        List<SopPointsDO> sopPointList = sopPointsService.list(Wrappers.<SopPointsDO>lambdaQuery()
+                .in(SopPointsDO::getSopId, ids));
+        if (!sopPointList.isEmpty()) {
+            List<Long> idList = sopPointList.stream().map(SopPointsDO::getId).toList();
+            sopPointsService.deleteSopPointsListByIds(idList);
+        }
+        // 删除isc_sop_user
+        List<SopUserDO> sopUserList = sopUserService.list(Wrappers.<SopUserDO>lambdaQuery()
+                .in(SopUserDO::getSopId, ids));
+        if (!sopUserList.isEmpty()) {
+            List<Long> idList = sopUserList.stream().map(SopUserDO::getId).toList();
+            sopUserService.deleteSopUserListByIds(idList);
         }
+        // 删除isc_sop_workflow_step
+        List<SopWorkflowStepDO> sopWorkflowStepList = sopWorkflowStepService.list(Wrappers.<SopWorkflowStepDO>lambdaQuery()
+                .in(SopWorkflowStepDO::getSopId, ids));
+        if (!sopWorkflowStepList.isEmpty()) {
+            List<Long> idList = sopWorkflowStepList.stream().map(SopWorkflowStepDO::getId).toList();
+            sopWorkflowStepService.deleteSopWorkflowStepListByIds(idList);
+        }
+    }
 
     private void validateSopExists(List<Long> ids) {
         List<SopDO> list = sopMapper.selectByIds(ids);