From f3c411d4ddc5d1ebf7414103b1bc0d09b929c413 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 20 四月 2023 10:37:58 +0800 Subject: [PATCH] 联调修改codebasic,以及代码合并 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java | 78 ++++++++++++++++++++++++++++----------- 1 files changed, 56 insertions(+), 22 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java index cd84de8..6b303fe 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java @@ -8,6 +8,7 @@ import com.vci.ubcs.code.constant.MdmBtmTypeConstant; import com.vci.ubcs.code.dto.CodeBasicSecDTO; import com.vci.ubcs.code.entity.CodeBasicSec; +import com.vci.ubcs.code.entity.CodeClassify; import com.vci.ubcs.code.entity.CodeClassifyValue; import com.vci.ubcs.code.entity.CodeFixedValue; import com.vci.ubcs.code.enumpack.CodeSecTypeEnum; @@ -42,7 +43,7 @@ import java.util.*; import java.util.stream.Collectors; -import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_OID_NOT_EXIST; +import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.*; /** * 鐮佹鍩虹淇℃伅鏈嶅姟鎺ュ彛 @@ -350,9 +351,46 @@ * @throws VciBaseException 鍙傛暟涓虹┖锛岃寮曠敤鏃舵姏鍑哄紓甯� */ @Override - public boolean deleteCodeBasicSec(CodeBasicSecDTO codeBasicSecDTO) throws VciBaseException { + public R deleteCodeBasicSec(CodeBasicSecDTO codeBasicSecDTO) throws VciBaseException { VciBaseUtil.alertNotNull(codeBasicSecDTO, "鐮佹鍩虹淇℃伅鏁版嵁瀵硅薄", codeBasicSecDTO.getOid(), "鐮佹鍩虹淇℃伅鐨勪富閿�"); - return this.codeBasicSecMapper.deleteById(codeBasicSecDTO.getOid())>0; + return this.deleteCodeBasicSecByPrimaryKey(codeBasicSecDTO.getOid()); + } + + /** + * 涓婚敭鍒犻櫎鐮佹鍩虹淇℃伅 + * + * @param oid 鐮佹鍩虹淇℃伅涓婚敭 + * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐� + * @throws VciBaseException 鍙傛暟涓虹┖锛岃寮曠敤鏃舵姏鍑哄紓甯� + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R deleteCodeBasicSecByPrimaryKey(String oid) throws VciBaseException { + CodeBasicSec codeBasicSecDO = selectByOid(oid); + boolean isLinked = checkIsLinked(codeBasicSecDO.getPkCodeRule(), oid); + if (isLinked) { + return R.fail("缂栫爜瑙勫垯宸茶寮曠敤锛屼笉鍏佽缂栬緫鎴栧垹闄�"); + } + //鎵ц鍒犻櫎鎿嶄綔 + boolean eftDeleteBasic = codeBasicSecMapper.deleteById(oid) > 0; + if (CodeSecTypeEnum.CODE_FIXED_SEC.getValue().equals(codeBasicSecDO.getSecType())){ + List<CodeFixedValue> fixedValueDOS = fixedValueMapper.selectList(Wrappers.<CodeFixedValue>query() + .lambda().eq(CodeFixedValue::getCodeFixedSecOid,codeBasicSecDO.getOid()) + ); + if(!CollectionUtils.isEmpty(fixedValueDOS)){ + fixedValueMapper.deleteBatchIds(fixedValueDOS.stream().map(CodeFixedValue::getOid).collect(Collectors.toSet())); + } + } + if (CodeSecTypeEnum.CODE_CLASSIFY_SEC.getValue().equals(codeBasicSecDO.getSecType())){ + List<CodeClassifyValue> classifyValueDOS = codeClassifyValueMapper.selectList(Wrappers.<CodeClassifyValue>query() + .lambda().eq(CodeClassifyValue::getCodeClassifySecOid,codeBasicSecDO.getOid()) + ); + if(!CollectionUtils.isEmpty(classifyValueDOS)) { + codeClassifyValueMapper.deleteBatchIds(classifyValueDOS.stream().map(CodeClassifyValue::getOid).collect(Collectors.toSet())); + } + } + + return eftDeleteBasic ? R.success(DELETE_SUCCESS) : R.fail(DELETE_FAIL); } /** @@ -405,7 +443,7 @@ if(Func.isEmpty(codeBasicSecVO.getPkCodeRule()) || Func.isBlank(codeBasicSecVO.getPkCodeRule())){ return null; } - codeBasicSecVO.setSectype(CodeSecTypeEnum.CODE_CLASSIFY_SEC.getValue()); + codeBasicSecVO.setSecType(CodeSecTypeEnum.CODE_CLASSIFY_SEC.getValue()); return refDataGridCodeBasicSec(page,codeBasicSecVO); } @@ -484,9 +522,7 @@ @Transactional(rollbackFor = Exception.class) public boolean upOrderNum(String oid) { CodeBasicSec secDO = selectByOid(oid); - boolean resUpBoolean = false; - boolean resDownBoolean = false; - if(secDO.getOrderNum() >1){ + if(secDO.getOrderNum() > 1){ //绛変簬1鐨勬椂鍊欎笉鑳戒笂绉讳簡 //鎵炬瘮鑷繁灏忕殑 List<CodeBasicSec> lastSecDOs = codeBasicSecMapper.selectList(Wrappers.<CodeBasicSec>query() @@ -495,18 +531,17 @@ ); if(!CollectionUtils.isEmpty(lastSecDOs)){ CodeBasicSec lastSec = lastSecDOs.get(0); - resDownBoolean = codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() + codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() .lambda().set(CodeBasicSec::getOrderNum, lastSec.getOrderNum() + 1) .eq(CodeBasicSec::getOid, lastSec.getOid()) - ) > 0; + ); } - secDO.setOrderNum(secDO.getOrderNum()-1); - resUpBoolean = codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() + codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() .lambda().set(CodeBasicSec::getOrderNum, secDO.getOrderNum() - 1) .eq(CodeBasicSec::getOid, secDO.getOid()) - ) > 0; + ); } - return resDownBoolean && resUpBoolean; + return true; } /** @@ -518,29 +553,28 @@ @Transactional(rollbackFor = Exception.class) public boolean downOrderNum(String oid) { CodeBasicSec secDO = selectByOid(oid); - boolean resUpBoolean = false; - boolean resDownBoolean = false; Long total = codeBasicSecMapper.selectCount(Wrappers.<CodeBasicSec>query() .lambda().eq(CodeBasicSec::getPkCodeRule,secDO.getPkCodeRule()) ); - if(secDO.getOrderNum() < total){ + if(secDO.getOrderNum() < total){ //灏忎簬鎬绘暟鐨勬椂鍊欐墠涓嬬Щ List<CodeBasicSec> lastSecDOs = codeBasicSecMapper.selectList(Wrappers.<CodeBasicSec>query() - .lambda().eq(CodeBasicSec::getOrderNum,String.valueOf(secDO.getOrderNum()+1)) + .lambda().eq(CodeBasicSec::getOrderNum,secDO.getOrderNum()+1) + .eq(CodeBasicSec::getPkCodeRule,secDO.getPkCodeRule()) ); if(!CollectionUtils.isEmpty(lastSecDOs)){ CodeBasicSec lastSec = lastSecDOs.get(0); - resUpBoolean = codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() + codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() .lambda().set(CodeBasicSec::getOrderNum, lastSec.getOrderNum() - 1) .eq(CodeBasicSec::getOid, lastSec.getOid()) - ) > 0; + ); } - resDownBoolean = codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() + codeBasicSecMapper.update(null, Wrappers.<CodeBasicSec>update() .lambda().set(CodeBasicSec::getOrderNum, secDO.getOrderNum() + 1) .eq(CodeBasicSec::getOid, secDO.getOid()) - ) > 0; + ); } - return resDownBoolean && resUpBoolean; + return true; } /** -- Gitblit v1.9.3