标签-重复校验

This commit is contained in:
xiejunyu
2022-03-11 17:24:25 +08:00
parent e05a121933
commit ce3400ad0c
3 changed files with 32 additions and 5 deletions
@@ -46,8 +46,10 @@ public class OnlCgformTagController extends JeroController<OnlCgformTag, IOnlCgf
@Autowired
private OnlCgformTagController onlCgformAreaService;
@Autowired
private SysDictItemServiceImpl sysDictItemService;
@Autowired
private OnlCgformApiController onlCgformApiController;
/**
@@ -87,9 +89,15 @@ public class OnlCgformTagController extends JeroController<OnlCgformTag, IOnlCgf
@PostMapping(value = "/add")
@RequiresPermissions("tag:add")
public Result<?> add(@Validated @RequestBody OnlCgformTag onlCgformTag) {
onlCgformTagService.add(onlCgformTag);
onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID),"normal");
return Result.OK("添加成功!");
//校验--不能向数据库添加重复数据
Integer countTableData=onlCgformTagService.queryExitTableData(onlCgformTag);
if(countTableData>0){
return Result.error("已存在该数据,请勿重复添加");
}else {
onlCgformTagService.add(onlCgformTag);
onlCgformApiController.h(String.valueOf(FileTableIdEnum.FILE_TABLE_ID), "normal");
return Result.OK("添加成功!");
}
}
/**
@@ -73,6 +73,8 @@ public interface IOnlCgformTagService extends IService<OnlCgformTag> {
*/
Integer queryExitData(OnlCgformTag onlCgformTag) ;
Integer queryExitTableData(OnlCgformTag onlCgformTag);
/**
* 若区域下有标签字段 则无法删除
*
@@ -80,6 +82,4 @@ public interface IOnlCgformTagService extends IService<OnlCgformTag> {
*/
Integer queryExitArea(OnlCgformArea onlCgformArea);
//List<Map<String, Object>> selectPageInfo(Page page, Wrapper<OnlCgformTag> queryWrapper);
}
@@ -48,6 +48,7 @@ public class OnlCgformTagServiceImpl extends ServiceImpl<OnlCgformTagMapper, Onl
*/
@Override
public void add(OnlCgformTag onlCgformTag) {
//校验--逻辑删除
Integer count=queryExitData(onlCgformTag);
if (count > 0) {
onlCgformTag.setIsDelete(CommonConstant.DEL_FLAG_0);
@@ -178,6 +179,24 @@ public class OnlCgformTagServiceImpl extends ServiceImpl<OnlCgformTagMapper, Onl
Integer count = onlCgformTagMapper.selectCount(queryWrapper);
return count;
}
/**
* 校验名字,类型,长度完全相同的数据,不能加进数据库
*
* @return
*/
@Override
public Integer queryExitTableData(OnlCgformTag onlCgformTag) {
LambdaQueryWrapper<OnlCgformTag> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(onlCgformTag.getDbFieldName())) {
queryWrapper.eq(OnlCgformTag::getDbFieldName, onlCgformTag.getDbFieldName())//字段名字
.eq(OnlCgformTag::getDbType, onlCgformTag.getDbType())//数据库字段类型
.eq(OnlCgformTag::getDbLength,onlCgformTag.getDbLength());//字段长度
}
Integer countTableData = onlCgformTagMapper.selectCount(queryWrapper);
return countTableData;
}
/**
* 若区域下有标签字段 则无法删除
*