Bladeren bron

新增删除判断

车车 1 jaar geleden
bovenliggende
commit
f76e1d7bc5

+ 4 - 0
ktg-iscs/src/main/java/com/ktg/iscs/controller/IsLockTypeController.java

@@ -13,6 +13,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.Parameters;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
@@ -47,6 +48,9 @@ public class IsLockTypeController extends BaseController
     public CommonResult<Page<IsLockType>> getIsLockTypePage(Page<IsLockType> page, IsLockType isLockType)
     {
         Page<IsLockType> result = isLockTypeService.page(page, Wrappers.<IsLockType>lambdaQuery()
+                .like(StringUtils.isNotBlank(isLockType.getLockTypeCode()), IsLockType::getLockTypeCode, isLockType.getLockTypeCode())
+                .like(StringUtils.isNotBlank(isLockType.getLockTypeName()), IsLockType::getLockTypeName, isLockType.getLockTypeName())
+                .like(StringUtils.isNotBlank(isLockType.getLockTypeDescription()), IsLockType::getLockTypeDescription, isLockType.getLockTypeDescription())
                 .orderByDesc(IsLockType::getLockTypeId));
         return CommonResult.success(result);
     }

+ 9 - 4
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsLockType.java

@@ -1,12 +1,12 @@
 package com.ktg.iscs.domain;
 
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import io.swagger.annotations.ApiModelProperty;
-import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.ktg.common.annotation.Excel;
 import com.ktg.common.core.domain.model.BaseBean;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
 
 /**
  * 物资类型对象 is_lock_type
@@ -51,5 +51,10 @@ public class IsLockType extends BaseBean
     @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
     private String delFlag;
 
+    @ApiModelProperty(value = "父类型ID")
+    private Long parentTypeId;
+
+    @ApiModelProperty(value = "所有父节点ID")
+    private String ancestors;
 
 }

+ 3 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsHardwareTypeServiceImpl.java

@@ -112,6 +112,9 @@ public class IsHardwareTypeServiceImpl extends ServiceImpl<IsHardwareTypeMapper,
                 Assert.isTrue(false, list.get(0).getHardwareTypeName() + "类型下已配置了设备,不能删除!");
             }
         }
+        // 判断下面有没有子类,有则不能删除
+        List<IsHardwareType> hardwareTypeList = list(Wrappers.<IsHardwareType>lambdaQuery().in(IsHardwareType::getParentTypeId, longIds));
+        Assert.isTrue(hardwareTypeList.isEmpty(), "选中的类别下存在子类,不可删除!");
         return isHardwareTypeMapper.deleteIsHardwareTypeByIds(longIds);
     }
 

+ 12 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLockTypeServiceImpl.java

@@ -1,11 +1,14 @@
 package com.ktg.iscs.service.impl;
 
 import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ktg.common.core.text.Convert;
 import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsIsolationPoint;
 import com.ktg.iscs.domain.IsLockType;
 import com.ktg.iscs.mapper.IsLockTypeMapper;
+import com.ktg.iscs.service.IIsIsolationPointService;
 import com.ktg.iscs.service.IIsLockTypeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -23,6 +26,8 @@ public class IsLockTypeServiceImpl extends ServiceImpl<IsLockTypeMapper, IsLockT
 {
     @Autowired
     private IsLockTypeMapper isLockTypeMapper;
+    @Autowired
+    private IIsIsolationPointService iIsIsolationPointService;
 
     /**
      * 查询物资类型
@@ -85,6 +90,13 @@ public class IsLockTypeServiceImpl extends ServiceImpl<IsLockTypeMapper, IsLockT
     {
         Assert.notBlank(lockTypeIds, "请选择需要删除的数据!");
         Long[] longIds = Convert.toLongArray(lockTypeIds);
+        // 判断下面有没有子类,有则不能删除
+        List<IsLockType> lockTypeList = list(Wrappers.<IsLockType>lambdaQuery().in(IsLockType::getParentTypeId, longIds));
+        Assert.isTrue(lockTypeList.isEmpty(), "选中的类别下存在子类,不可删除!");
+        // 判断有没有点位使用该类别,有的话不能删
+        List<IsIsolationPoint> pointList = iIsIsolationPointService.list(Wrappers.<IsIsolationPoint>lambdaQuery()
+                .in(IsIsolationPoint::getLockTypeId, longIds));
+        Assert.isTrue(pointList.isEmpty(), "选中的类别下有被隔离点正在使用的,不可删除!");
         return isLockTypeMapper.deleteIsLockTypeByLockTypeIds(longIds);
     }