| | |
| | | |
| | | @Override |
| | | public R checkOrInsert(DictBiz dictBiz) { |
| | | |
| | | LambdaQueryWrapper<DictBiz> lqw = Wrappers.<DictBiz>query().lambda().eq(DictBiz::getCode, dictBiz.getCode()).eq(DictBiz::getDictKey, dictBiz.getDictKey()).eq(DictBiz::getDictValue, dictBiz.getDictValue()); |
| | | Long cnt = baseMapper.selectCount((Func.isEmpty(dictBiz.getId())) ? lqw : lqw.notIn(DictBiz::getId, dictBiz.getId())); |
| | | LambdaQueryWrapper<DictBiz> wrapper = Wrappers.<DictBiz>query().lambda().eq(DictBiz::getCode, dictBiz.getCode()).eq(DictBiz::getDictKey, dictBiz.getDictKey()).eq(DictBiz::getDictValue, dictBiz.getDictValue()); |
| | | // Long cnt = baseMapper.selectCount((Func.isEmpty(dictBiz.getId())) ? lqw : lqw.notIn(DictBiz::getId, dictBiz.getId())); |
| | | Long cnt = baseMapper.selectCount(wrapper); |
| | | if (cnt > 0L) { |
| | | return R.fail("字典已经存在!"); |
| | | } |
| | | |
| | | // 根据code先查询是否已存在该字典,存在就需要将当前字典添加到该code下面 |
| | | LambdaQueryWrapper<DictBiz> wrappers = Wrappers.<DictBiz>query() |
| | | .lambda().eq(DictBiz::getCode, dictBiz.getCode()) |
| | | .eq(DictBiz::getParentId,BladeConstant.TOP_PARENT_ID) |
| | | .last("limit 1"); |
| | | DictBiz dbDictBiz = baseMapper.selectOne(wrappers); |
| | | // 当前code已存在,作为当前父字典 |
| | | if(Func.isNotEmpty(dbDictBiz)){ |
| | | dictBiz.setParentId(dbDictBiz.getId()); |
| | | } |
| | | // 是否为顶层字典 |
| | | if (Func.isEmpty(dictBiz.getParentId())) { |
| | | dictBiz.setParentId(BladeConstant.TOP_PARENT_ID); |
| | | } |
| | | dictBiz.setIsSealed(0); |
| | | dictBiz.setIsDeleted(BladeConstant.DB_NOT_DELETED); |
| | | CacheUtil.clear(DICT_CACHE); |
| | | |
| | |
| | | return R.success("操作成功!"); |
| | | } |
| | | return R.fail("操作失败!"); |
| | | |
| | | } |
| | | |
| | | } |