feat(流程分类): 新增校验流程分类编码是否唯一,不允许分类编码重复

This commit is contained in:
konbai
2022-10-11 23:07:21 +08:00
parent b87b2b11f9
commit a137f8d4fb
3 changed files with 31 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckLogin;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
@@ -87,6 +88,9 @@ public class WfCategoryController extends BaseController {
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WfCategoryBo categoryBo) {
if (UserConstants.NOT_UNIQUE.equals(categoryService.checkCategoryCodeUnique(categoryBo.getCode()))) {
return R.fail("新增流程分类'" + categoryBo.getCategoryName() + "'失败,流程编码已存在");
}
return toAjax(categoryService.insertCategory(categoryBo));
}
@@ -98,6 +102,9 @@ public class WfCategoryController extends BaseController {
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WfCategoryBo categoryBo) {
if (UserConstants.NOT_UNIQUE.equals(categoryService.checkCategoryCodeUnique(categoryBo.getCode()))) {
return R.fail("修改流程分类'" + categoryBo.getCategoryName() + "'失败,流程编码已存在");
}
return toAjax(categoryService.updateCategory(categoryBo));
}

View File

@@ -53,4 +53,12 @@ public interface IWfCategoryService {
* @return 结果
*/
int deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
/**
* 校验分类编码是否唯一
*
* @param code 分类编码
* @return 结果
*/
String checkCategoryCodeUnique(String code);
}

View File

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.StringUtils;
@@ -76,4 +77,19 @@ public class WfCategoryServiceImpl implements IWfCategoryService {
}
return baseMapper.deleteBatchIds(ids);
}
/**
* 校验分类编码是否唯一
*
* @param code 分类编码
* @return 结果
*/
@Override
public String checkCategoryCodeUnique(String code) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<WfCategory>().eq(WfCategory::getCode, code));
if (exist) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
}