From 336eb77c1a07ca3e3ead4482b51f848fa16ab3b7 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期日, 12 十一月 2023 20:15:38 +0800 Subject: [PATCH] 自定义流水相关开发 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 347 ++++++++++++++++++++++++--------------------------------- 1 files changed, 147 insertions(+), 200 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java index b80412e..8b842c9 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java @@ -1,232 +1,179 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 搴勯獮 (smallchill@163.com) + */ package com.vci.ubcs.code.mapper; -import com.vci.starter.web.pagemodel.PageHelper; -import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.web.pageModel.BatchCBO; -import com.vci.ubcs.code.entity.CodeClassifyDO; +import com.vci.ubcs.code.entity.CodeClassify; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO; +import org.apache.ibatis.annotations.MapKey; +import org.apache.ibatis.annotations.Param; -import java.util.Collection; import java.util.List; import java.util.Map; /** - * 涓婚搴撳垎绫绘暟鎹搷浣滃眰 + * 涓婚搴撳畾涔夎〃 Mapper 鎺ュ彛 * - * @author weidy - * @date 2022-01-20 + * @author yuxc + * @since 2023-04-06 */ -public interface CodeClassifyMapper { +public interface CodeClassifyMapper extends BaseMapper<CodeClassify> { /** - * 浣跨敤涓婚敭鍒犻櫎 - * @param oid 鏁版嵁涓婚敭 - * @return 鎵ц缁撴灉 - */ - BatchCBO deleteByPrimaryKey(String oid); - - /** - * 娣诲姞鏁版嵁 - * @param record 涓婚搴撳垎绫绘暟鎹璞� - * @return 鎵ц缁撴灉 - */ - BatchCBO insert(CodeClassifyDO record); - - /** - * 鎵归噺娣诲姞鏁版嵁 - * @param records 涓婚搴撳垎绫绘暟鎹璞¢泦鍚� - * @return 鎵ц缁撴灉鏁� - */ - BatchCBO batchInsert(List<CodeClassifyDO> records); - - /** - * 鏍规嵁涓婚敭鏌ヨ - * @param oid 鏁版嵁涓婚敭 - * @return 鏁版嵁瀵硅薄 - */ - CodeClassifyDO selectByPrimaryKey(String oid); - - /** - * 鏍规嵁涓婚敭鎵归噺鑾峰彇瀵硅薄 - * @param oids 涓婚敭锛屽寘鍚崟寮曞彿,浣嗘槸涓嶈兘瓒呰繃1000 - * @return 鏁版嵁瀵硅薄鍒楄〃 - */ - List<CodeClassifyDO> selectByPrimaryKeys(String oids); - - /** - * 鏍规嵁涓婚敭鎵归噺鏌ヨ瀵硅薄 - * @param oids 瀵硅薄涓婚敭,浣跨敤閫楀彿鍒嗛殧锛屼絾鏄笉鑳借秴杩�1000 - * @return 涓氬姟瀵硅薄 - */ - List<CodeClassifyDO> selectByPrimaryKeyCollection(Collection<String> oids); - - /** - * 鏌ヨ鎵�鏈夊垎绫� - * @return 鏌ヨ缁撴灉 - */ - List<CodeClassifyDO> selectAll(); - - /** - * 鏇存柊瀵硅薄 - * @param record 涓婚搴撳垎绫绘暟鎹璞� - * @return 鎵ц缁撴灉 - */ - BatchCBO updateByPrimaryKey(CodeClassifyDO record); - - /** - * 鎵归噺鏇存柊 - * @param records 涓婚搴撳垎绫绘暟鎹璞¢泦鍚� - * @return 鎵ц缁撴灉琛屾暟 - */ - BatchCBO batchUpdate(List<CodeClassifyDO> records); - - /** - * 鏍规嵁鏌ヨ鏉′欢鏌ヨ鏁版嵁 - * @param conditionMap 鏌ヨ鏉′欢锛� - * @param pageHelper 鍖呮嫭鍒嗛〉锛屾帓搴� - * @return 鏁版嵁瀵硅薄鍒楄〃 - */ - List<CodeClassifyDO> selectByCondition(Map<String,String> conditionMap, PageHelper pageHelper); - - /** - * 鏍规嵁鏌ヨ鏉′欢鏉ユ煡璇㈡�绘暟 - * @param conditionMap 鏌ヨ鏉′欢 - * @return 鎬绘暟 - */ - Long countByCondition(Map<String,String> conditionMap); - - /** - * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ - * @param queryWrapper 鏌ヨ灏佽鍣� - * @return 鏁版嵁瀵硅薄 - */ - List<CodeClassifyDO> selectByWrapper(VciQueryWrapperForDO queryWrapper); - - /** - * 浣跨敤鏌ヨ灏佽鍣ㄦ煡璇㈡�绘暟 - * @param queryWrapper 鏌ヨ灏佽鍣� - * @return 鎬绘暟 - */ - Long countByWrapper(VciQueryWrapperForDO queryWrapper); - - /** - * 鏍规嵁涓婚敭鑾峰彇鍚嶇О - * @param oid 涓婚敭 - * @return 涓枃鍚嶇О - */ - String selectNameByOid(String oid); - - /** - * 鑾峰彇鎵�鏈夊眰绾т笅绾х殑涓婚敭 - * @param oid 鏁版嵁涓婚敭 - * @return 鏌ヨ缁撴灉 key鏄富閿紝value鏄湰娆℃煡璇㈢殑灞傜骇 - */ - Map<String,String> selectAllLevelChildOid(String oid); - - /** - * 鑾峰彇鎵�鏈夊眰绾т笂绾у叧鑱斾笟鍔$被鍨嬫暟鎹� - * @param oid 褰撳墠鍒嗙被鐨刼id - * @return oid,id,name,btmtypeid,btmtypename - */ - List<CodeClassifyDO> selectAllLevelParents(String oid); - - /** - * 鑾峰彇褰撳墠鍒嗙被鐨勬墍鏈変笂绾у垎绫伙紙鍚湰娆℃煡璇㈠眰绾у彿锛� - * @param oid 涓婚敭 - * @return 鎵�鏈夌殑涓婄骇 - */ - List<CodeClassifyDO> selectAllLevelParentByOid(String oid); - - /** - * 鑾峰彇杩欎釜鍒嗙被涓嬬殑涓氬姟绫诲瀷锛屽綋鍓嶆病鏈夊氨鑾峰彇涓婄骇鐨勭涓�涓笟鍔$被鍨� - * @param oid 褰撳墠鍒嗙被鐨刼id - * @return oid,id,name,btmtypeid,btmtypename - */ - CodeClassifyDO selectBtmOrParentBtm(String oid); - - /** - * 鑾峰彇鎵�鏈変笅绾ф暟鎹� - * @param oid 鏁版嵁涓婚敭 - * @return 鏌ヨ缁撴灉 - */ - List<CodeClassifyDO> selectAllLevelChild(String oid); - - /** - * 鏌ヨ鎵�鏈夌殑涓嬬骇锛屽苟鍖呭惈灞傜骇鐨勮矾寰� - * @param oid 涓婄骇鐨勪富閿� - * @param fieldInPath 瀛楁鍦ㄨ矾寰勪腑鐨勫唴瀹� - * @param enable 鏄惁鍙煡璇㈠惎鐢� - * @return 鍒嗙被鐨勬暟鎹唴瀹� - */ - List<CodeClassifyDO> selectAllLevelChildHasPath(String oid, String fieldInPath,boolean enable); - - /** - * 鏌ヨ鏌愪釜鑺傜偣鐨勬墍鏈夊眰绾т笅绾х殑涓暟 - * @param oid 涓婚敭 - * @return 鎬绘暟 - */ - long countAllLevelChildOid(String oid); - - /** - * 鍙嶅悜浠庡瓙绾ц幏鍙栫埗绾х殑涓婚搴撳垎绫� + * 鑷畾涔夊垎椤� * - * @param codeClassifyOid 鍒嗙被鐨勪富閿� - * @return 鍒嗙被鐨勬樉绀哄璞� + * @param page + * @param plCodeClassify + * @return */ - List<CodeClassifyDO> listParentClassify(String codeClassifyOid); + List<CodeClassifyVO> selectPlCodeClassifyPage(IPage page, CodeClassifyVO plCodeClassify,@Param("tenantId") String tenantId); /** - * 鏌ヨ杩欎釜鍒嗙被鐨剅oot鑺傜偣oid - */ - CodeClassifyDO getRootClassify(String codeClassifyOid); - - /** - * 鍒ゆ柇杩欎釜鍒嗙被鏄惁灞炰簬wupin鍒嗙被鏍� + * 鏌ユ壘瀛愮被 + * * @param oid * @return */ - boolean isWupin(String oid); - /** - * 鎵归噺淇敼鐢熷懡鍛ㄦ湡鐨勭姸鎬� - * @param oids 涓婚敭闆嗗悎锛屼笉鑳藉ぇ浜�1000 - * @param lcStatus 鐢熷懡鍛ㄦ湡鐨勫�� - * @return 鎵ц鐨勭粨鏋� - */ - long batchUpdateLcStatus(Collection<String> oids, String lcStatus); - /** - * 鏍规嵁涓婚敭鏇存柊鐘舵�� - * @param oid 涓婚敭 - * @param lcStatus 鐢熷懡鍛ㄦ湡鐘舵�� - * @return 鍙楀奖鍝嶇殑琛屾暟 - */ - int updateLcStatus( String oid, String lcStatus); - - /** - * 鎵归噺鍒犻櫎瀵硅薄 - * @param oids 瀵硅薄鐨勪富閿泦鍚� - * @return 鍙楀奖鍝嶇殑琛屾暟 - */ - BatchCBO batchDeleteByOids(Collection<String> oids); + @MapKey("OID") + Map<String,String> selectAllLevelChildOid(@Param("oid") String oid); /** * 鏍¢獙鏄惁鍖呭惈瀛愯妭鐐� + * * @param oid 鍒嗙被鐨勪富閿� * @return true 琛ㄧず鍖呭惈 */ - boolean checkHasChild(String oid); + // @MapKey("oid") + Boolean checkHasChild(@Param("oid") String oid); /** - * 浣跨敤瀛楁鐨勮矾寰勶紝鏌ヨ瀵硅薄 - * @param fieldPath 瀛楁鐨勮矾寰勶紝蹇呴』浠庨《灞傝妭鐐瑰紑濮� xxx/yyy/zz鐨勬牸寮� - * @param field 瀛楁鐨勮嫳鏂囧悕绉� - * @return 鍒嗙被鐨勫璞� + * 鏌ユ壘鏍戝舰缁撴瀯 + * + * @param oid 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 */ - CodeClassifyDO selectByFieldPath(String fieldPath, String field); + List<CodeClassify> selectCodeClassifyVOByTree(@Param("oid") String oid,@Param("tenantId") String tenantId); + + /** + * 鏌ユ壘鏍戝舰缁撴瀯 + * + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectCodeClassifyDOByTree(@Param("id") String id,@Param("lcstatus") String lcstatus,@Param("parentcodeclassifyoid") String parentcodeclassifyoid,@Param("tenantId") String tenantId/*,@Param("tableName") String tableName*/); + + /** + * 鏌ヨ鏁版嵁涓嶱L_CODE_KEYATTRREPEAT銆丳L_CODE_RESEMBLERULE銆丳L_CODE_RULE鑱旀煡 + * + * @param oids 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectClassifyByKeyAndReseRel(@Param("oids") String oids); + + /** + * 鏌ユ壘鏍戝舰缁撴瀯 + * + * @param oid 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectAllLevelChildHasPath(@Param("oid") String oid,@Param("fieldInPath")String fieldInPath); + + + @MapKey("OID") + List<Map<String,Object>> selectAllLevelParentByOid(@Param("oid") String oid); + + @MapKey("OID") + List<Map<String,Object>> selectAllLevelParents(@Param("oid") String oid); + + + @MapKey("OID") + List<Map<String,Object>> selectByFieldPath(@Param("fieldPath") String fieldPath); + + + /** + * 鏌ユ牴鎹甶d灞傜骇鑾峰彇瀵硅薄 + * + * @param fieldPath 鍒嗙被鐨勪富閿� + * @param fieldName 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectByFieldNamePath(@Param("fieldPath") String fieldPath,@Param("fieldName") String fieldName); + + public List<CodeClassify> getIdPathToNamePathByParentId(@Param("parentId")String parentId); + + + CodeClassify selectByIdRel(@Param("oid") String oid); + /** + * 鏍规嵁鐖惰妭鐐筰d鏌ヨ褰撳墠鑺傜偣瀛愯妭鐐规暟鎹� + * + * @param parentOid 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectCodeClassifyDOByParentId(@Param("parentOid")String parentOid,@Param("tenantId") String tenantId); /*** - * 鏍规嵁涓婄骇鑺傜偣鑾峰彇涓嬬骇鑺傜偣浠e彿璺緞鍜屽悕绉拌矾寰� - * @param classifyId - * @param enable + * 鏍规嵁搴撹妭鐐瑰悕绉拌幏鍙栧垎绫� + * @param libNames + * @param lcstatus + * @param tenantId * @return */ - public List<CodeClassifyDO>getIdPathToNamePathByParentId(String classifyId,boolean enable); + List<CodeClassify> getRMLibByName(List<String> libNames,@Param("lcstatus")String lcstatus,@Param("tenantId") String tenantId); + /*** + * 鏍规嵁鍒嗙被鎻忚堪澶囨敞鍜屽簱鑺傜偣鏌ヨ鍒嗙被淇℃伅 + * @param desc + * @param codeLibName + * @return + */ + List<CodeClassify> getRMTypeByDesc(@Param("desc")String desc,@Param("lcstatus")String lcstatus,@Param("tenantId") String tenantId); + + /*** + * 鏍规嵁褰撳墠鍒嗙被鑾峰彇涓婄骇鍒嗙被淇℃伅 + * @param oid + * @param tenantId + * @return + */ + List<CodeClassify> selectAllParenClassifytByOid(@Param("oid")String oid,@Param("tenantId") String tenantId); + + /** + * 涓婚敭鏌ヨ褰撳墠鑺傜偣鍙婂叾瀛愯妭鐐� + * @param oid 褰撳墠鑺傜偣涓婚敭 + * @return 鏌ヨ缁撴灉 + */ + List<CodeClassify> selectStartWithCurrentOid(String oid); + + /** + * 鎵归噺鏇存柊鍒嗙被鐘舵�� + * @param classifyList + */ + void batchUpdateLcStatus(@Param("records") List<CodeClassify> classifyList); + + /** + * 鍚戜笂鏌ヨ鏍戝舰缁撴瀯 + * + * @param oid 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectAllParents(@Param("oid") String oid); + + /*** + * 鏌ヨ褰撳墠鍒嗙被涓嬫墍鏈夊垎绫讳俊鎭� + * @param oid + * @return + */ + List<CodeClassify> selectAllClassifyByOid(@Param("oid") String oid,@Param("tenantId") String tenantId); } -- Gitblit v1.9.3