From 3534b13391b2a6152d0f91b72fda343b13a947cb Mon Sep 17 00:00:00 2001
From: ludc <ludc@vci-tech.com>
Date: 星期三, 22 一月 2025 15:55:27 +0800
Subject: [PATCH] 分类码段码值管理查询去除null的情况,分类码段生成编码时去除码值为null的情况

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java |  304 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 303 insertions(+), 1 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
index d283655..ef1d6a4 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
@@ -1,9 +1,21 @@
 package com.vci.ubcs.code.service;
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.entity.CodeClassify;
-
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
+import com.vci.ubcs.omd.vo.BtmTypeAttributeVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.DataGrid;import com.vci.ubcs.starter.web.pagemodel.Tree;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.tool.api.R;
+import java.io.File;
+import java.util.Collection;
 import java.util.List;
 
 /**
@@ -21,5 +33,295 @@
 	 */
 	List<CodeClassify> selectByWrapper(Wrapper wrapper);
 
+	/**
+	 * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ
+	 * @param wrapper 鏌ヨ灏佽鍣�
+	 * @return 鏁版嵁瀵硅薄
+	 */
+	List<String> select1(Wrapper wrapper);
+
+	/**
+	 * 鑷畾涔夊垎椤�
+	 *
+	 * @param page
+	 * @param plCodeClassify
+	 * @return
+	 */
+	IPage<CodeClassifyVO> selectPlCodeClassifyPage(IPage<CodeClassifyVO> page, CodeClassifyVO plCodeClassify);
+
+	/**
+	 * 澧炲姞涓婚搴撳垎绫�
+	 * @param codeClassifyEntity 涓婚搴撳垎绫绘暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉
+	 */
+	R addSave(CodeClassify codeClassifyEntity);
+
+	/**
+	 * 淇敼涓婚搴撳垎绫�
+	 * @param codeClassifyEntity 涓婚搴撳垎绫绘暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉
+	 */
+	R editSave(CodeClassify codeClassifyEntity);
+
+	/**
+	 * 妫�鏌� 涓婚搴撳垎绫绘槸鍚﹀垹闄�
+	 * @param codeClassify 涓婚搴撳垎绫绘暟鎹紶杈撳璞★紝蹇呴』瑕佹湁oid鍜宼s灞炴��
+	 * @return 鎵ц缁撴灉
+	 */
+	R checkIsCanDelete(CodeClassify codeClassify);
+
+	/**
+	 * 妫�鏌ユ槸鍚︽湁涓嬬骇鏄惁鍏宠仈浜嗘暟鎹�
+	 *
+	 * @param oid 涓婚敭
+	 * @return true 琛ㄧず鏈夊紩鐢紝false琛ㄧず娌℃湁寮曠敤
+	 */
+	boolean checkChildIsLinked(String oid) ;
+
+	/**
+	 * 鏍¢獙鏄惁鏈変笅绾ц妭鐐癸紝涓嶆牎楠屾槸鍚﹀叧鑱斾簡鏁版嵁
+	 *
+	 * @param oid 涓婚敭
+	 * @return true琛ㄧず鏈変笅绾э紝false琛ㄧず娌℃湁涓嬬骇
+	 */
+	boolean checkHasChild(String oid) ;
+
+	/**
+	 * 鍒犻櫎涓婚搴撳垎绫�
+	 * @param codeClassify 涓婚搴撳垎绫绘暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈�
+	 * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐�
+	 */
+	R deleteCodeClassify(CodeClassify codeClassify) ;
+
+	/**
+	 * 鍚敤銆佸仠鐢�
+	 * @param oid 涓婚敭
+	 * @param lcStatus 鐘舵��
+	 * @return 鎵ц缁撴灉
+	 */
+	R updateLcStatus(String oid, String lcStatus);
+
+	/**
+	 * 鏍规嵁涓婚敭鎵归噺鏌ヨ瀵硅薄
+	 * @param oids 瀵硅薄涓婚敭,浣跨敤閫楀彿鍒嗛殧锛屼絾鏄笉鑳借秴杩�1000
+	 * @return 涓氬姟瀵硅薄
+	 */
+//	List<CodeClassify> selectByPrimaryKeyCollection(Collection<String> oids);
+
+	/**
+	 * 涓婚敭鎵归噺鑾峰彇涓婚搴撳垎绫�
+	 * @param oidCollections 涓婚敭闆嗗悎锛屼絾鏄彈鎬ц兘褰卞搷锛屽缓璁竴娆℃煡璇笉瓒呰繃10000涓�
+	 * @return 涓婚搴撳垎绫绘樉绀哄璞�
+	 */
+	Collection<CodeClassifyVO> listCodeClassifyByOids(Collection<String> oidCollections) ;
+
+	/**
+	 * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+	 * @param codeClassifys 鏁版嵁瀵硅薄鍒楄〃
+	 * @return 鏄剧ず瀵硅薄
+	 */
+	List<CodeClassifyVO> codeClassifyDO2VOs(Collection<CodeClassify>  codeClassifys);
+
+	/**
+	 * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+	 * @param  codeClassify 鏁版嵁瀵硅薄
+	 * @return 鏄剧ず瀵硅薄
+	 */
+	CodeClassifyVO codeClassifyDO2VO(CodeClassify codeClassify);
+
+	/**
+	 * 鍙傜収鏍� 涓婚搴撳垎绫�
+	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
+	 * @return 涓婚搴撳垎绫绘樉绀烘爲
+	 */
+	List<Tree> referTree(TreeQueryObject treeQueryObject) throws ServiceException;
+
+	/**
+	 * 鏌ヨ涓婚搴撳垎绫� 鏍�
+	 * @param treeQueryObject 鏍戞煡璇㈠璞�
+	 * @return 涓婚搴撳垎绫� 鏄剧ず鏍�
+	 */
+	List<Tree> treeCodeClassify(TreeQueryObject treeQueryObject) throws ServiceException;
+
+	/**
+	 * 瀵煎嚭鍒嗙被
+	 * @param oid 鍒嗙被涓婚敭
+	 * @return excel鏂囦欢璺緞
+	 */
+	String exportClassify(String oid);
+
+	/**
+	 * 鑾峰彇瀛愮骇鐨勪富棰樺簱鍒嗙被
+	 *
+	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+	 * @param allLevel        鏄惁鎵�鏈夌殑灞傜骇
+	 * @param fieldInPath 鍦ㄨ矾寰勪腑鐨勫瓧娈�
+	 * @param enable 鏄惁鍙樉绀哄惎鐢�
+	 * @return 鍒嗙被鐨勬樉绀哄璞�
+	 */
+	List<CodeClassifyVO> listChildrenClassify(String codeClassifyOid, boolean allLevel, String fieldInPath, boolean enable);
+
+	/**
+	 * 鍒涘缓瀵煎叆妯℃澘
+	 * @return excel鏂囦欢璺緞
+	 */
+	String createImportExcel();
+
+	/**
+	 * 瀵煎叆鍒嗙被
+	 * @param file1 鏂囦欢鐨勪俊鎭�
+	 */
+	void importClassify(File file1);
+
+	/**
+	 * 鑾峰彇鍒嗙被鍏宠仈鐨勫睘鎬�
+	 * @param baseQueryObject 鏌ヨ瀵硅薄锛屽繀椤绘湁codeClassifyOid锛屾敮鎸乮d鍜宯ame涓ょ鏌ヨ鏉′欢
+	 * @return 灞炴�х殑淇℃伅锛屽寘鍚粯璁ょ殑灞炴��
+	 */
+	DataGrid<BtmTypeAttributeVO> listClassifyLinkAttr(BaseQueryObject baseQueryObject) throws ServiceException;
+
+	/**
+	 * 鑾峰彇褰撳墠鍒嗙被鐨勯《灞傚垎绫�
+	 *
+	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+	 * @return 椤跺眰鍒嗙被鐨勪俊鎭�
+	 */
+	CodeClassifyVO getTopClassifyVO(String codeClassifyOid);
+
+	/**
+	 * 鑾峰彇褰撳墠鍒嗙被鐨勬墍鏈変笂绾у垎绫伙紙鍚湰娆℃煡璇㈠眰绾у彿锛�
+	 * @param oid 涓婚敭
+	 * @return 鎵�鏈夌殑涓婄骇
+	 */
+	List<CodeClassify> selectAllLevelParentByOid(String oid);
+
+	/**
+	 * 浣跨敤缂栧彿鐨勮矾寰勮幏鍙栧璞�
+	 * @param idPath 缂栧彿鐨勮矾寰勶紝涓�瀹氳浠庢渶椤跺眰鑺傜偣寮�濮嬶紝鏍煎紡涓簒xx/yyy/zz 杩欐牱
+	 * @return 鍒嗙被鐨勬樉绀哄璞�
+	 */
+	CodeClassifyVO getObjectByIdPath(String idPath);
+
+	/**
+	 * 涓婚搴撶殑鏍�
+	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
+	 * @return 涓婚搴撴樉绀烘爲
+	 */
+	List<Tree> treeTopCodeClassify(TreeQueryObject treeQueryObject);
+
+	/**
+	 * 鑾峰彇杩欎釜鍒嗙被涓嬬殑涓氬姟绫诲瀷锛屽綋鍓嶆病鏈夊氨鑾峰彇涓婄骇鐨勭涓�涓笟鍔$被鍨�
+	 * @param oid 褰撳墠鍒嗙被鐨刼id
+	 * @return oid,id,name,btmtypeid,btmtypename
+	 */
+	CodeClassify selectBtmOrParentBtm(String oid);
+
+	/**
+	 * 鑾峰彇鎵�鏈変笅绾ф暟鎹�
+	 * @param oid 鏁版嵁涓婚敭
+	 * @return 鏌ヨ缁撴灉
+	 */
+	List<CodeClassify> selectAllLevelParents(String oid);
+
+	/**
+	 * 鑾峰彇鎵�鏈変笂绾ц妭鐐圭殑oid
+	 * @param oid
+	 * @return
+	 */
+	List<String> selectAllParentOid(String oid);
+
+	/**
+	 * 涓婚敭鑾峰彇涓婚搴撳垎绫�
+	 * @param oid 涓婚敭
+	 * @return 涓婚搴撳垎绫绘樉绀哄璞�
+	 */
+	CodeClassifyVO getObjectByOid(String oid) throws VciBaseException;
+
+	/**
+	 * 浣跨敤鍒嗙被涓婚敭鑾峰彇鍒嗙被鐩稿叧鐨勬墍鏈変俊鎭�
+	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+	 * @return 鍒嗙被涓婄骇锛屼笅绾х殑淇℃伅
+	 */
+	CodeClassifyFullInfoBO getClassifyFullInfo(String codeClassifyOid);
+
+	/**
+	 * 浣跨敤缂栧彿鐨勮矾寰勮幏鍙栧璞�
+	 * @param clsfNamePath 鍒嗙被鍚嶇О鐨勮矾寰勶紝涓�瀹氳浠庢渶椤跺眰鑺傜偣寮�濮嬶紝鏍煎紡涓簒xx/yyy/zz 杩欐牱
+	 * @return 鍒嗙被鐨勬樉绀哄璞�
+	 */
+	CodeClassifyVO getObjectByClsfNamePath(String clsfNamePath);
+
+	/***
+	 * 鏍规嵁涓婄骇鑺傜偣鑾峰彇涓嬬骇鑺傜偣浠e彿璺緞鍜屽悕绉拌矾寰�
+	 * @param classifyId
+	 * @param enable
+	 * @return
+	 */
+	public List<CodeClassifyVO> getIdPathToNamePathByParentId(String classifyId,boolean enable);
+	/**
+	 * 鏍规嵁鏍戝舰鏌ヨ瀵硅薄鏉ユ煡璇㈡暟鎹璞�
+     *
+		 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
+     * @return 鏌ヨ缁撴灉,鏁版嵁瀵硅薄
+     */
+	List<CodeClassifyVO> selectCodeClassifyDOByTree(TreeQueryObject treeQueryObject);
+
+	/**
+	 * 缁熻瀛愯妭鐐圭殑涓暟
+	 *
+	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+	 * @return 涓暟
+	 */
+	int countChildrenByClassifyOid(String codeClassifyOid);
+
+	/***
+	 * 鏍规嵁鐖惰妭鐐规煡璇笅绾у彾瀛愯妭鐐�
+	 * @param parentId
+	 * @return
+	 */
+	List<CodeClassifyVO> selectCodeClassifyVOByParentId(String parentId);
+
+	/***
+	 * 鏍规嵁搴撹妭鐐瑰悕绉拌幏鍙栧垎绫�
+	 * @param libName
+	 * @return
+	 */
+	List<CodeClassifyVO> getRMLibByName(String libName);
+
+	/***
+	 * 鏍规嵁鍒嗙被鎻忚堪澶囨敞鍜屽簱鑺傜偣鏌ヨ鍒嗙被淇℃伅
+	 * @param desc
+	 * @param codeLibName
+	 * @return
+	 */
+	List<CodeClassifyVO> getRMTypeByDescAndLib(String desc,String codeLibName);
+
+	/**
+	 * 鏍规嵁鍒嗙被鎻忚堪澶囨敞鍜屽簱鑺傜偣鏌ヨ鍒嗙被淇℃伅
+	 * @param oid
+	 * @param fieldInPath
+	 * @return
+	 */
+	List<CodeClassifyVO> selectAllClassifyByOid(String oid, String fieldInPath);
+
+	/**
+	 * 鏍规嵁椤跺眰鑺傜偣oid鏌ヨ鎵�鏈夐櫎褰撳墠鑺傜偣浠ュ鎵�鏈変笉鍙備笌鏍¢獙鐨勫垎绫籵id
+	 * @param topOid
+	 * @param currentOid
+	 * @return
+	 */
+	String selectLeafByParentClassifyOid(String topOid, String currentOid);
+
+	/**
+	 * 娴佹按渚濊禆鐢熸垚
+	 */
+	R flowingDependencyGen(String classifyOid);
+
+	/**
+	 *  鏍规嵁椤跺眰鑺傜偣oid鏌ヨ鎵�鏈夊彾瀛愯妭鐐瑰垎绫籵id
+	 * @param pid
+	 * @return
+	 */
+	String selectLeafByPid(String pid);
 
 }

--
Gitblit v1.9.3