From 7323a4b0d5f7567c1156a5aa507ad4c898ed410f Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期日, 04 二月 2024 12:23:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/DictBizServiceImpl.java | 34 ++++++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/DictBizServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/DictBizServiceImpl.java
index b35d728..1d48f94 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/DictBizServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/DictBizServiceImpl.java
@@ -31,6 +31,7 @@
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.utils.Func;
@@ -116,4 +117,37 @@
List<DictBiz> list = this.list(Condition.getQueryWrapper(dict, DictBiz.class).lambda().ne(DictBiz::getId, parentId).eq(DictBiz::getCode, parentDict.getCode()).orderByAsc(DictBiz::getSort));
return DictBizWrapper.build().listNodeVO(list);
}
+
+ @Override
+ public R checkOrInsert(DictBiz dictBiz) {
+ 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);
+
+ if(saveOrUpdate(dictBiz) == true){
+ return R.success("鎿嶄綔鎴愬姛!");
+ }
+ return R.fail("鎿嶄綔澶辫触锛�");
+ }
+
}
--
Gitblit v1.9.3