From 7df1d61319149a666e8b2801a3c89c1d80900d2e Mon Sep 17 00:00:00 2001 From: ludc Date: 星期五, 07 四月 2023 17:57:46 +0800 Subject: [PATCH] 编码规则相关代码上传 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java | 475 ---------------------------------------------------------- 1 files changed, 4 insertions(+), 471 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java index 0046bb0..ba1e151 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java @@ -1,481 +1,14 @@ package com.vci.ubcs.code.service.impl; -import com.vci.ubcs.code.dao.CodeBasicSecDaoI; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.vci.ubcs.code.entity.CodeClassifyValue; import com.vci.ubcs.code.mapper.CodeClassifyValueMapper; -import com.vci.ubcs.code.entity.CodeBasicSecDO; -import com.vci.ubcs.code.entity.CodeClassifyValueDO; -import com.vci.ubcs.code.service.CodeClassifyValueServiceI; -import com.vci.frameworkcore.lcstatuspck.FrameworkDataLCStatus; -import com.vci.starter.revision.bo.TreeWrapperOptions; -import com.vci.starter.revision.service.RevisionModelUtil; -import com.vci.starter.web.exception.VciBaseException; -import com.vci.starter.web.pagemodel.BaseResult; -import com.vci.starter.web.pagemodel.PageHelper; -import com.vci.starter.web.pagemodel.Tree; -import com.vci.starter.web.pagemodel.TreeQueryObject; -import com.vci.starter.web.util.BeanUtilForVCI; -import com.vci.starter.web.util.VciBaseUtil; -import com.vci.starter.web.wrapper.VciParentQueryOption; -import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.web.pageModel.BatchCBO; -import com.vci.web.service.WebBoServiceI; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import com.vci.ubcs.code.dto.CodeClassifyValueDTO; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyValueVO; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Lazy; +import com.vci.ubcs.code.service.ICodeClassifyValueService; import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; -import plm.bs.bom.clientobject.ClientBusinessObject; -import javax.annotation.Resource; -import java.util.*; -import java.util.stream.Collectors; - -import static com.vci.frameworkcore.constant.FrameWorkDefaultValueConstant.LC_STATUS; -import static com.vci.frameworkcore.constant.FrameWorkLangCodeConstant.*; -/** - * 鍒嗙被鐮佹鐨勭爜鍊兼湇鍔� - * @author weidy - * @date 2022-01-24 - */ @Service -public class CodeClassifyValueServiceImpl implements CodeClassifyValueServiceI { +public class CodeClassifyValueServiceImpl extends ServiceImpl<CodeClassifyValueMapper, CodeClassifyValue> implements ICodeClassifyValueService { - /** - * 鏃ュ織 - */ - private Logger logger = LoggerFactory.getLogger(getClass()); - /** - * 鏁版嵁鎿嶄綔灞� - */ - @Resource - private CodeClassifyValueMapper codeClassifyValueMapper; - /** - * 涓氬姟绫诲瀷鎿嶄綔鐨勬湇鍔� - */ - @Autowired - @Lazy - private WebBoServiceI boService; - - /** - * 瀵硅薄鐨勬搷浣� - */ - @Autowired - private RevisionModelUtil revisionModelUtil; - - /** - * 鐮佹鐨勪俊鎭� - */ - @Autowired - private CodeBasicSecDaoI basicSecMapper; - - /** - * 涓婄骇鑺傜偣鐨勫睘鎬у悕绉� - */ - private static final String PARENT_FIELD_NAME = "parentClassifyValueOid"; - /** - * 鏌ヨ鍒嗙被鐮佹鐨勭爜鍊� 鏍� - * @param treeQueryObject 鏍戞煡璇㈠璞� - * @return 鍒嗙被鐮佹鐨勭爜鍊� 鏄剧ず鏍� - * @throws VciBaseException 鏌ヨ鏉′欢涓嶇鍚堣姹傜殑鏃跺�欎細鎶涘嚭寮傚父 - */ - @Override - public List<Tree> treeCodeClassifyValue(TreeQueryObject treeQueryObject) throws VciBaseException{ - // List<CodeClassifyValueDO> doList =selectCodeClassifyValueDOByTree(treeQueryObject); - List<CodeClassifyValueDO> doList =selectCodeClassifyValueDO4Tree(treeQueryObject); - List<CodeClassifyValueVO> voList = codeClassifyValueDO2VOs(doList); - TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME); - treeWrapperOptions.copyFromTreeQuery(treeQueryObject); - return revisionModelUtil.doList2Trees(voList,treeWrapperOptions,(CodeClassifyValueVO s) ->{ - //鍙互鍦ㄨ繖閲屽鐞嗘爲鑺傜偣鐨勬樉绀� - return s.getId() + " " + s.getName() + (FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s - .getLcStatus()) ? (" 銆愬仠鐢ㄣ�� ") : ""); - }); - } - /** - * 鏍规嵁鏍戝舰鏌ヨ瀵硅薄鏉ユ煡璇㈡暟鎹璞� - * - * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 - * @return 鏌ヨ缁撴灉,鏁版嵁瀵硅薄 - */ - @Override - public List<CodeClassifyValueDO> selectCodeClassifyValueDOByTree(TreeQueryObject treeQueryObject) { - VciQueryWrapperForDO queryWrapperForDO = new VciQueryWrapperForDO(treeQueryObject.getConditionMap(),CodeClassifyValueDO.class); - PageHelper ph = new PageHelper(); - ph.addDefaultAsc("ordernum"); - queryWrapperForDO.setPageHelper(ph); - VciParentQueryOption parentQueryOption = new VciParentQueryOption(); - parentQueryOption.setParentFieldName(PARENT_FIELD_NAME); - //queryWrapperForDO.parentQueryChild(treeQueryObject,parentQueryOption); - parentQueryOption.setHasSelf(true); - queryWrapperForDO.childQueryParent(parentQueryOption); - return codeClassifyValueMapper.selectByWrapper(queryWrapperForDO); - } - - private List<CodeClassifyValueDO> selectCodeClassifyValueDO4Tree(TreeQueryObject treeQueryObject){ - Map<String, String> conditionMap = treeQueryObject.getConditionMap(); - String currentSecOid = conditionMap.get("codeclassifysecoid"); - String sql = "select oid from PLATFORMBTM_CODEBASICSEC start with oid = '"+currentSecOid+"' connect by prior PARENTCLASSIFYSECOID = OID"; - List<ClientBusinessObject> targetParentList = boService.queryBySql(sql, new HashMap<>()); - Set<String> secOidList = targetParentList.stream().map(ClientBusinessObject::getOid).collect(Collectors.toSet()); - conditionMap.clear(); - StringBuilder oidStrBuilder = new StringBuilder(); - secOidList.forEach(oid -> oidStrBuilder.append("'").append(oid).append("',")); - String oidStr = oidStrBuilder.toString().substring(0,oidStrBuilder.toString().length() -1); - VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(null,CodeClassifyValueDO.class); - PageHelper ph = new PageHelper(); - ph.addDefaultAsc("ordernum"); - ph.setLimit(-1); - wrapper.setPageHelper(ph); - wrapper.in("codeclassifysecoid",oidStr); - return codeClassifyValueMapper.selectByWrapper(wrapper); - } - - /** - * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞� - * @param codeClassifyValueDOs 鏁版嵁瀵硅薄鍒楄〃 - * @return 鏄剧ず瀵硅薄 - * @throws VciBaseException 鍙傛暟涓虹┖鎴栬�呬笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父 - */ - @Override - public List<CodeClassifyValueVO> codeClassifyValueDO2VOs(Collection<CodeClassifyValueDO> codeClassifyValueDOs) throws VciBaseException{ - List<CodeClassifyValueVO> voList = new ArrayList<CodeClassifyValueVO>(); - if(!CollectionUtils.isEmpty(codeClassifyValueDOs)){ - for(CodeClassifyValueDO s: codeClassifyValueDOs){ - CodeClassifyValueVO vo = codeClassifyValueDO2VO(s); - if(vo != null){ - voList.add(vo); - } - } - } - return voList; - } - - /** - * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞� - * @param codeClassifyValueDO 鏁版嵁瀵硅薄 - * @return 鏄剧ず瀵硅薄 - * @throws VciBaseException 鎷疯礉灞炴�у嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父 - */ - @Override - public CodeClassifyValueVO codeClassifyValueDO2VO(CodeClassifyValueDO codeClassifyValueDO) throws VciBaseException{ - CodeClassifyValueVO vo = new CodeClassifyValueVO(); - if(codeClassifyValueDO != null){ - BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyValueDO,vo); - //濡傛灉鏈塴cstatus鐨勭被鐨勮瘽 - - } - return vo; - } - - /** - * 澧炲姞鍒嗙被鐮佹鐨勭爜鍊� - * @param codeClassifyValueDTO 鍒嗙被鐮佹鐨勭爜鍊兼暟鎹紶杈撳璞� - * @return 鎵ц缁撴灉 - * @throws VciBaseException 鍙傛暟涓虹┖锛屽敮涓�椤癸紝蹇呰緭椤逛笉閫氳繃鏃朵細鎶涘嚭寮傚父 - */ - @Override - public CodeClassifyValueVO addSave(CodeClassifyValueDTO codeClassifyValueDTO) throws VciBaseException{ - VciBaseUtil.alertNotNull(codeClassifyValueDTO,"闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄"); - //娣诲姞瀵圭爜鍊煎瓙鐖剁骇鐨勫垽鏂� - if(StringUtils.isNotBlank(codeClassifyValueDTO.getParentclassifyvalueoid())){ - String parentclassifyvalueoid = codeClassifyValueDTO.getParentclassifyvalueoid(); - String codeclassifysecoid = codeClassifyValueDTO.getCodeclassifysecoid(); - CodeClassifyValueDO parentDO = codeClassifyValueMapper.selectByPrimaryKey(parentclassifyvalueoid); - if (parentDO.getCodeClassifySecOid().equalsIgnoreCase(codeclassifysecoid)){ - throw new VciBaseException("涓嶅厑璁稿湪鐖剁爜鍊间腑鐩存帴娣诲姞瀛愮爜鍊�"); - } - } - //灏咲TO杞崲涓篋O - CodeClassifyValueDO codeClassifyValueDO = new CodeClassifyValueDO(); - BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyValueDTO,codeClassifyValueDO); - Map<String,String> conditionMap = new HashMap<>(); - conditionMap.put("codeclassifysecoid", codeClassifyValueDO.getCodeClassifySecOid()); - conditionMap.put("parentclassifyvalueoid",codeClassifyValueDO.getParentClassifyValueOid()); - VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(conditionMap,CodeClassifyValueDO.class); - List<CodeClassifyValueDO> existList = codeClassifyValueMapper.selectByWrapper(wrapper); - codeClassifyValueDO.setOrderNum(existList.size() + 1); - codeClassifyValueMapper.insert(codeClassifyValueDO); - return codeClassifyValueDO2VO(codeClassifyValueDO); - } - - /** - * 淇敼鍒嗙被鐮佹鐨勭爜鍊� - * @param codeClassifyValueDTO 鍒嗙被鐮佹鐨勭爜鍊兼暟鎹紶杈撳璞� - * @return 鎵ц缁撴灉 - * @throws VciBaseException 鍙傛暟涓虹┖锛屽敮涓�椤癸紝蹇呰緭椤逛笉閫氳繃鏃朵細鎶涘嚭寮傚父 - */ - @Override - public CodeClassifyValueVO editSave(CodeClassifyValueDTO codeClassifyValueDTO) throws VciBaseException{ - VciBaseUtil.alertNotNull(codeClassifyValueDTO,"鏁版嵁瀵硅薄",codeClassifyValueDTO.getOid(),"鍒嗙被鐮佹鐨勭爜鍊间富閿�"); - //灏咲TO杞崲涓篋O - CodeClassifyValueDO codeClassifyValueDO = selectByOid(codeClassifyValueDTO.getOid()); - revisionModelUtil.copyFromDTOIgnore(codeClassifyValueDTO,codeClassifyValueDO); - codeClassifyValueMapper.updateByPrimaryKey(codeClassifyValueDO); - return codeClassifyValueDO2VO(codeClassifyValueDO); - } - -/** - * 妫�鏌� 鍒嗙被鐮佹鐨勭爜鍊兼槸鍚﹀垹闄� - * @param codeClassifyValueDTO 鍒嗙被鐮佹鐨勭爜鍊兼暟鎹紶杈撳璞★紝蹇呴』瑕佹湁oid鍜宼s灞炴�� - * @return 鎵ц缁撴灉 success涓簍rue涓哄彲浠ュ垹闄わ紝false琛ㄧず鏈夋暟鎹紩鐢紝obj涓簍rue琛ㄧず鏈変笅绾� - * @throws VciBaseException 鍙傛暟涓虹┖锛岃寮曠敤鏃舵姏鍑哄紓甯� - */ -@Override -public BaseResult checkIsCanDelete(CodeClassifyValueDTO codeClassifyValueDTO) throws VciBaseException{ - VciBaseUtil.alertNotNull(codeClassifyValueDTO,"鏁版嵁浼犺緭瀵硅薄",codeClassifyValueDTO.getOid(),"涓婚敭"); - CodeClassifyValueDO codeClassifyValueDO = selectByOid(codeClassifyValueDTO.getOid()); - return checkIsCanDeleteForDO(codeClassifyValueDTO,codeClassifyValueDO); } - - /** - * 鏍¢獙鏄惁鍙互鍒犻櫎锛屽鏋滃瓨鍦ㄤ笅绾э紝骞朵笖涓嬬骇鏈夋暟鎹紩鐢ㄥ垯涓嶈兘鍒犻櫎 - * @param codeClassifyValueDTO 鏁版嵁浼犺緭瀵硅薄 - * @param codeClassifyValueDO 鏁版嵁搴撲腑鐨勬暟鎹璞� - * @return success涓簍rue涓哄彲浠ュ垹闄わ紝false琛ㄧず鏈夋暟鎹紩鐢紝obj涓簍rue琛ㄧず鏈変笅绾� - */ - private BaseResult checkIsCanDeleteForDO(CodeClassifyValueDTO codeClassifyValueDTO, CodeClassifyValueDO codeClassifyValueDO) { - //boService.checkTs(codeClassifyValueDTO); - //鏍¢獙涓嬬骇鏄惁鏈夊紩鐢� - if(checkChildIsLinked(codeClassifyValueDO.getOid())){ - return BaseResult.fail(DATA_CASCADE_LINKED_NOT_DELETE,new String[]{""}); - } - return BaseResult.success(checkHasChild(codeClassifyValueDO.getOid())); - } - /** - * 妫�鏌ユ槸鍚︽湁涓嬬骇鏄惁鍏宠仈浜嗘暟鎹� - * - * @param oid 涓婚敭 - * @return true 琛ㄧず鏈夊紩鐢紝false琛ㄧず娌℃湁寮曠敤 - * @throws VciBaseException 鍙傛暟涓虹┖鍜屾湁寮曠敤鐨勬椂鍊欎細鎶涘嚭寮傚父 - */ - @Override - public boolean checkChildIsLinked(String oid) throws VciBaseException { - VciBaseUtil.alertNotNull(oid,"涓婚敭"); - List<String> childOids = codeClassifyValueMapper.selectAllLevelChildOid(oid.trim()); - if(!CollectionUtils.isEmpty(childOids)){ - for(String childOid: childOids){ - if(!checkIsLinked(childOid)){ - return false; - } - } - return true; - } - return false; - } - - /** - * 鏍¢獙鏄惁鏈変笅绾ц妭鐐癸紝涓嶆牎楠屾槸鍚﹀叧鑱斾簡鏁版嵁 - * - * @param oid 涓婚敭 - * @return true琛ㄧず鏈変笅绾э紝false琛ㄧず娌℃湁涓嬬骇 - * @throws VciBaseException 鍙傛暟閿欒锛屾垨鑰呮暟鎹笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父 - */ - @Override - public boolean checkHasChild(String oid) throws VciBaseException { - VciBaseUtil.alertNotNull(oid,"涓婚敭"); - return codeClassifyValueMapper.countAllLevelChildOid(oid.trim()) > 0; - } - - /** - * 鏍¢獙鏄惁琚紩鐢� - * @param oid 涓婚敭 - * @throws VciBaseException 琚紩鐢ㄧ殑鏃跺�欎細鎶涘嚭寮傚父 - */ - private boolean checkIsLinked(String oid) throws VciBaseException{ - //TODO 娣诲姞闇�瑕佹牎楠屽紩鐢ㄧ殑鍦版柟 - return false; - } - - /** - * 鍒犻櫎鍒嗙被鐮佹鐨勭爜鍊� - * @param codeClassifyValueDTO 鍒嗙被鐮佹鐨勭爜鍊兼暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈� - * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐� - * @throws VciBaseException 鍙傛暟涓虹┖锛岃寮曠敤鏃舵姏鍑哄紓甯� - */ - @Override - public BaseResult deleteCodeClassifyValue(CodeClassifyValueDTO codeClassifyValueDTO) throws VciBaseException{ - VciBaseUtil.alertNotNull(codeClassifyValueDTO,"鍒嗙被鐮佹鐨勭爜鍊兼暟鎹璞�",codeClassifyValueDTO.getOid(),"鍒嗙被鐮佹鐨勭爜鍊肩殑涓婚敭"); - CodeClassifyValueDO codeClassifyValueDO = selectByOid(codeClassifyValueDTO.getOid()); - BaseResult baseResult = checkIsCanDeleteForDO(codeClassifyValueDTO,codeClassifyValueDO); - if(baseResult.isSuccess()) { - //鎵句笅绾х殑锛岃繖涓槸鍙互鍒犻櫎鐨勬椂鍊� - List<String> childrenOids = codeClassifyValueMapper.selectAllLevelChildOid(codeClassifyValueDO.getOid().trim()); - if (!CollectionUtils.isEmpty(childrenOids)) { - Collection<Collection<String>> childrenCollections = VciBaseUtil.switchCollectionForOracleIn(childrenOids); - for(Collection<String> s : childrenCollections){ - codeClassifyValueMapper.batchDeleteByOids(s); - } - } - }else{ - return baseResult; - } - //鎵ц鍒犻櫎鎿嶄綔 - BatchCBO batchCBO = codeClassifyValueMapper.deleteByPrimaryKey(codeClassifyValueDO.getOid()); - return (batchCBO!=null && batchCBO.getDeleteCbos() !=null &&batchCBO.getDeleteCbos().size() > 0)?BaseResult.successMsg(DELETE_SUCCESS):BaseResult.fail(DELETE_FAIL); - } - - /** - * 涓婚敭鑾峰彇鍒嗙被鐮佹鐨勭爜鍊� - * @param oid 涓婚敭 - * @return 鍒嗙被鐮佹鐨勭爜鍊兼樉绀哄璞� - * @throws VciBaseException 鍙傛暟涓虹┖锛屾暟鎹笉瀛樺湪鏃朵細鎶涘嚭寮傚父 - */ - @Override - public CodeClassifyValueVO getObjectByOid(String oid) throws VciBaseException{ - return codeClassifyValueDO2VO(selectByOid(oid)); - } - - /** - * 涓婚敭鏌ヨ鏁版嵁瀵硅薄 - * @param oid 涓婚敭 - * @return 鏁版嵁瀵硅薄 - * @throws VciBaseException 鍙傛暟涓虹┖锛屽苟涓旀暟鎹笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父 - */ - private CodeClassifyValueDO selectByOid(String oid) throws VciBaseException{ - VciBaseUtil.alertNotNull(oid,"涓婚敭"); - CodeClassifyValueDO codeClassifyValueDO = codeClassifyValueMapper.selectByPrimaryKey(oid.trim()); - if(codeClassifyValueDO == null || StringUtils.isBlank(codeClassifyValueDO.getOid())){ - throw new VciBaseException(DATA_OID_NOT_EXIST); - } - return codeClassifyValueDO; - } - - /** - * 涓婚敭鎵归噺鑾峰彇鍒嗙被鐮佹鐨勭爜鍊� - * @param oidCollections 涓婚敭闆嗗悎锛屼絾鏄彈鎬ц兘褰卞搷锛屽缓璁竴娆℃煡璇笉瓒呰繃10000涓� - * @return 鍒嗙被鐮佹鐨勭爜鍊兼樉绀哄璞� - * @throws VciBaseException 鏌ヨ鍑虹幇寮傚父鏃朵細鎶涘嚭 - */ - @Override - public Collection<CodeClassifyValueVO> listCodeClassifyValueByOids(Collection<String> oidCollections) throws VciBaseException{ - VciBaseUtil.alertNotNull(oidCollections,"鏁版嵁瀵硅薄涓婚敭闆嗗悎"); - List<CodeClassifyValueDO> codeClassifyValueDOList = listCodeClassifyValueDOByOidCollections(oidCollections); - return codeClassifyValueDO2VOs(codeClassifyValueDOList); - } - - /** - * 浣跨敤涓婚敭闆嗗悎鏌ヨ鏁版嵁瀵硅薄 - * @param oidCollections 涓婚敭鐨勯泦鍚� - * @return 鏁版嵁瀵硅薄鍒楄〃 - */ - private List<CodeClassifyValueDO> listCodeClassifyValueDOByOidCollections(Collection<String> oidCollections){ - List<CodeClassifyValueDO> codeClassifyValueDOList = new ArrayList<CodeClassifyValueDO>(); - if(!CollectionUtils.isEmpty(oidCollections)){ - Collection<Collection<String>> oidCollectionsList = VciBaseUtil.switchCollectionForOracleIn(oidCollections); - for(Collection<String> oids: oidCollectionsList){ - List<CodeClassifyValueDO> tempDOList = codeClassifyValueMapper.selectByPrimaryKeyCollection(oids); - if(!CollectionUtils.isEmpty(tempDOList)){ - codeClassifyValueDOList.addAll(tempDOList); - } - } - } - return codeClassifyValueDOList; - } - - - - /** - * 鍙傜収鏍� 鍒嗙被鐮佹鐨勭爜鍊� - * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 - * @return 鍒嗙被鐮佹鐨勭爜鍊兼樉绀烘爲 - * @throws VciBaseException 鏌ヨ鏉′欢鍜屽垎椤靛嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父 - */ - @Override - public List<Tree> referTree(TreeQueryObject treeQueryObject) throws VciBaseException{ - if(treeQueryObject == null){ - treeQueryObject = new TreeQueryObject(); - } - if(treeQueryObject.getConditionMap() == null){ - treeQueryObject.setConditionMap(new HashMap<>()); - } - if(treeQueryObject.getConditionMap().containsKey(LC_STATUS)) { - treeQueryObject.getConditionMap().remove(LC_STATUS); - } - return treeCodeClassifyValue(treeQueryObject); - } - - /** - * 浣跨敤鐮佹鐨勪富閿幏鍙栧垎绫荤殑鐮佸�煎唴瀹� - * - * @param classifySecOid 鐮佹鐨勪富閿� - * @param parentClassifyValueOid 涓婄骇鍒嗙被鐨勪富閿� - * @return 鍒嗙被鐮佸�肩殑鍐呭 - */ - @Override - public List<CodeClassifyValueVO> listCodeClassifyValueBySecOid(String classifySecOid, String parentClassifyValueOid) { - if(StringUtils.isBlank(classifySecOid)){ - return new ArrayList<>(); - } - CodeBasicSecDO secDO = basicSecMapper.selectByPrimaryKey(classifySecOid); - if(secDO == null || StringUtils.isBlank(secDO.getOid())){ - throw new VciBaseException("鐮佹鐨勫唴瀹瑰湪绯荤粺涓笉瀛樺湪"); - } - if(StringUtils.isNotBlank(secDO.getParentClassifySecOid()) && StringUtils.isBlank(parentClassifyValueOid)){ - return new ArrayList<>(); - //鍥犱负鏈変笂绾у垎绫荤殑鏃跺�欙紝蹇呴』鍏堥�夋嫨涓婄骇鍒嗙被鐨勫唴瀹� - } - Map<String,String> conditionMap = new HashMap<>(); - conditionMap.put("codeClassifySecOid",classifySecOid); - if(StringUtils.isNotBlank(parentClassifyValueOid)){ - conditionMap.put("parentClassifyValueOid",parentClassifyValueOid); - } - PageHelper pageHelper = new PageHelper(-1); - pageHelper.addDefaultAsc("ordernum"); - List<CodeClassifyValueDO> valueDOList = codeClassifyValueMapper.selectByCondition(conditionMap, pageHelper); - return codeClassifyValueDO2VOs(valueDOList); - } - - /** - * 鏍规嵁鐮佹涓婚敭鍒犻櫎鍏跺瓨鍦ㄧ殑鐮佸�煎璞� - * @param codeclassifysecoid 鍒嗙被鐮佹鐨勪富閿� - * @return 鎵ц缁撴灉 - */ - @Override - public BaseResult batchDeleteBySecOid(String codeclassifysecoid) { - VciBaseUtil.alertNotNull(codeclassifysecoid,"鍒嗙被鐮佹鐨勪富閿�"); - Map<String,String> conditionMap = new HashMap<>(); - conditionMap.put("codeClassifySecOid",codeclassifysecoid); - VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(conditionMap,CodeClassifyValueDO.class); - List<CodeClassifyValueDO> valueDOList = codeClassifyValueMapper.selectByWrapper(wrapper); - codeClassifyValueMapper.batchDeleteByOids(valueDOList.stream().map(CodeClassifyValueDO::getOid).collect(Collectors.toList())); - return BaseResult.success(); - } - - /** - * 鎵归噺娣诲姞鍒嗙被鐮佹鐨勭爜鍊笺�備富瑕佹槸淇濆瓨鐮佸�肩殑搴忓彿 - * @param dtoList 鍒嗙被鐮佹鐨勭爜鍊煎垪琛� - * @param codeclassifysecoid 鍒嗙被鐮佹鐨勪富閿� - * @return 鎵ц缁撴灉 - */ - @Override - public BaseResult batchSave4Order(List<CodeClassifyValueDTO> dtoList, String codeclassifysecoid) { - VciBaseUtil.alertNotNull(codeclassifysecoid,"鍒嗙被鐮佹涓婚敭"); - Map<String,String> conditionMap = new HashMap<>(); - conditionMap.put("codeClassifySecOid",codeclassifysecoid); - VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(conditionMap,CodeClassifyValueDO.class); - List<CodeClassifyValueDO> valueDOList = codeClassifyValueMapper.selectByWrapper(wrapper); - List<CodeClassifyValueDO> updateList = new ArrayList<>(); - dtoList.forEach(dto -> { - if( StringUtils.isNotBlank( dto.getOid() )){ - List<CodeClassifyValueDO> collect = valueDOList.stream().filter(value -> { - return dto.getOid().equals(value.getOid()); - }).collect(Collectors.toList()); - collect.forEach(ccv -> { - ccv.setOrderNum(dto.getOrdernum()); - ccv.setId(dto.getId()); - ccv.setName(dto.getName()); - updateList.add(ccv); - }); - } - }); - codeClassifyValueMapper.batchUpdate(updateList); - return BaseResult.success(); - } -} - -- Gitblit v1.9.3