From 29ab7773efe351a879ce9b3c29ab3ca50f4e62cb Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期三, 15 一月 2025 21:36:08 +0800
Subject: [PATCH] 产品型号集成,类型转换,人员组织加日志,申请接口引用码段值校验

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java |  127 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 114 insertions(+), 13 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
index e253981..60c8ec7 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -1,18 +1,20 @@
 package com.vci.ubcs.code.service;
 
 
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.vci.ubcs.code.applyjtcodeservice.vo.BaseModelVO;
 import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
+import com.vci.ubcs.code.dto.CodeBZApplyDTO;
 import com.vci.ubcs.code.dto.CodeDeleteBatchDTO;
 import com.vci.ubcs.code.dto.CodeOrderDTO;
 import com.vci.ubcs.code.dto.datapush.BaseModelDTO;
-import com.vci.ubcs.code.entity.CodeWupin;
+import com.vci.ubcs.code.entity.CodeSynonym;
 import com.vci.ubcs.code.vo.CodeKeyAttrRepeatVO;
 import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
 import com.vci.ubcs.code.vo.pagemodel.*;
-import com.vci.ubcs.omd.vo.BtmTypeVO;
+import com.vci.ubcs.flow.core.dto.FlowStatusDTO;
+import com.vci.ubcs.starter.exception.VciBaseException;
 import com.vci.ubcs.starter.revision.model.BaseModel;
 import com.vci.ubcs.starter.revision.model.TreeQueryObject;
 import com.vci.ubcs.starter.web.pagemodel.*;
@@ -28,7 +30,7 @@
  * @author weidy
  * @date 2022-2-21
  */
-public interface MdmEngineService extends IService<CodeWupin> {
+public interface MdmEngineService {
 	/**
 	 * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
 	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
@@ -63,6 +65,13 @@
 	 * @return 杩斿洖缂栫爜鐨勫唴瀹�
 	 */
 	String addSaveCode(CodeOrderDTO orderDTO) throws Exception;
+	/**
+	 * 鐢宠鍗曚竴缂栫爜
+	 * @param orderDTO 鐢宠鐨勪俊鎭紝闇�瑕佸寘鍚睘鎬х殑鍐呭鍜岀爜娈电浉鍏崇殑鍐呭
+	 * @param  authUser 鏄惁妯℃嫙鐧诲綍锛宼rue锛屼笉妯℃嫙锛宖alse鏄ā鎷�
+	 * @return 杩斿洖缂栫爜鐨勫唴瀹�
+	 */
+	String addSaveCodeNotauthUser(CodeOrderDTO orderDTO, boolean authUser) throws Exception;
 
 	/**
 	 * 鍒ゆ柇缂栫爜鐨勭爜娈垫槸鍚﹁緭鍏ユ垨鑰呴�夋嫨浜嗙爜鍊�
@@ -76,6 +85,7 @@
 	 *
 	 * @param value        褰撳墠鐨勫��
 	 * @param keyRuleVO    鍏抽敭灞炴�х殑鎺у埗瑙勫垯锛屽彲浠ヤ负绌�
+	 * @param codeSynonymMaps 杩戜箟璇嶆煡璇㈣鍒�
 	 * @param attrId       灞炴�х殑缂栧彿
 	 * @param trim         鏄惁鍘婚櫎绌烘牸
 	 * @param ignoreCase   鏄惁涓嶅尯鍒嗗ぇ灏忓啓
@@ -83,9 +93,17 @@
 	 * @param trimAll      鏄惁蹇界暐鍏ㄩ儴绌烘牸
 	 * @param conditionMap 鏌ヨ鏉′欢
 	 */
-	void wrapperKeyAttrConditionMap(String value, CodeKeyAttrRepeatVO keyRuleVO, String attrId,
-							   boolean trim, boolean ignoreCase, boolean ignoreWidth,
-							   boolean trimAll, Map<String, String> conditionMap);
+	void wrapperKeyAttrConditionMap(String value, CodeKeyAttrRepeatVO keyRuleVO, List<CodeSynonym> codeSynonymMaps, String attrId,
+									boolean trim, boolean ignoreCase, boolean ignoreWidth,
+									boolean trimAll, Map<String, String> conditionMap);
+
+	/**
+	 * 杩戜箟璇嶆煡璇㈣鍒欒浆鎹�
+	 * @param codeSynonymMaps
+	 * @param value
+	 * @return
+	 */
+	String getValueToSynony(/*杩戜箟璇嶆煡璇㈣鍒�*/List<CodeSynonym> codeSynonymMaps,String value);
 
 	/**
 	 * 鍒濆鍖栦笟鍔$被鍨�
@@ -103,6 +121,13 @@
 	 */
 	void batchSaveSelectChar(CodeClassifyTemplateVO templateVO, /*List<ClientBusinessObject> cboList*/
 							 List<BaseModel> cboList);
+
+	/**
+	 * 灏佽寮�鍏崇殑鍐呭锛屽父鐢ㄤ簬瀵煎嚭
+	 * @param dataMap 鏁版嵁鐨勫唴瀹�
+	 * @param templateVO 妯℃澘鐨勬樉绀�
+	 */
+	void wrapperBoolean(List<Map<String, String>> dataMap, CodeClassifyTemplateVO templateVO);
 
 	/**
 	 * 浣跨敤妯℃澘鐨勪富閿幏鍙栬〃鍗曠殑淇℃伅
@@ -152,6 +177,7 @@
 	 * @param conditionMap   鏌ヨ鏉′欢
 	 */
 	void wrapperResembleConditionMap(String value, CodeResembleRuleVO resembleRuleVO, String attrId, Map<String, String> conditionMap);
+
 	/**
 	 * 鑾峰彇浣跨敤鐨勭浉浼兼煡璇㈣鍒�
 	 *
@@ -228,7 +254,6 @@
 	 * @return 鎵ц缁撴灉
 	 */
 	R batchUpdateCode(List<CodeOrderDTO> orderDTOList);
-
 
 	/**
 	 * 鏍囪娴佺▼涓笟鍔℃暟鎹槸鍚﹂�氳繃
@@ -372,6 +397,15 @@
 	MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid, String functionId);
 
 	/**
+	 * 浣跨敤鍒嗙被涓婚敭锛屾ā鏉夸富閿紝闃舵鏍囪瘑锛屾祦绋嬫ā鏉縦ek鑾峰彇娴佺▼瀹℃壒涓〉闈㈢殑鍐呭锛屽寘鍚寜閽�
+	 *
+	 * @param codeClassifyOid 涓婚搴撳垎绫讳富閿�
+	 * @param functionId      鍔熻兘鐨勭紪鍙�,榛樿5
+	 * @return UI鐩稿叧鐨勫唴瀹�
+	 */
+	MdmUIInfoVO getFlowUIInfoByClassifyOid(String codeClassifyOid, String functionId,String templateId,String taskId,String modelKey);
+
+	/**
 	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
 	 *
 	 * @param btmType 涓氬姟绫诲瀷
@@ -379,6 +413,26 @@
 	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
 	 */
 	Integer insertBatchByType(String btmType, List<BaseModel> baseModels);
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強ID鏌ヨ涓氬姟琛ㄦ暟鎹槸鍚﹂噸澶�
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param ids      澶勭悊鏁版嵁
+	 * @return 鏌ヨ鍒版暟鎹殑鎬绘暟
+	 */
+	Integer selectIdsCounts(String btmType, List<String> ids);
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強ID銆丱ID鏌ヨ涓氬姟琛ㄦ暟鎹槸鍚﹂噸澶�
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param id      澶勭悊鏁版嵁id
+	 * @param oid      澶勭悊鏁版嵁oid
+	 * @return 鏌ヨ鍒版暟鎹殑鎬绘暟
+	 */
+	Integer selectIdAndOidCounts(String btmType, String id, String oid);
+
 	/**
 	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
 	 *
@@ -386,7 +440,8 @@
 	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
 	 * @return 鏌ヨ鍑虹殑鏁版嵁
 	 */
-	List<BaseModel> selectByTypeAndOid(String btmType, String oids) ;
+	List<BaseModel> selectByTypeAndOid(String btmType, String oids);
+
 	/**
 	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔
 	 *
@@ -397,12 +452,20 @@
 	R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels);
 
 	/**
+	 * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鐘舵��
+	 */
+	R<Integer>updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels);
+
+	/**
 	 * 榛樿鍒楄〃
 	 * @param referConfigVO
 	 * @return
 	 */
-	Page<BtmTypeVO> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject);
-
+	IPage<BaseModelVO> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject) throws VciBaseException;
 
 	/**
 	 * 鑾峰彇鏍戝舰鐨勫弬鐓�
@@ -410,7 +473,6 @@
 	 * @return 鏍戝舰鐨勬暟鎹�
 	 */
 	List<Tree> referTree(UIFormReferVO referConfigVO, TreeQueryObject queryObject);
-
 
 	/**
 	 * 鏄惁涓轰慨鏀瑰拷鐣ョ殑灞炴��
@@ -427,4 +489,43 @@
 			||"checkouttime".equalsIgnoreCase(attrName));
 	}
 
+	/**
+	 * 娴佺▼涓彉鏇寸姸鎬佸��
+	 * @param flowDTO
+	 * @return
+	 */
+    R processChangeStatus(FlowStatusDTO flowDTO);
+
+	/**
+	 * 鏍¢獙鍏抽敭灞炴��
+	 * @param orderDTO         缂栫爜鐢宠鐨勭浉鍏崇殑淇℃伅
+	 */
+	List<Map>  checkKeyAttrOnOrderFordatas(CodeOrderDTO orderDTO) ;
+
+	/**
+	 * 鏍规嵁褰撳墠鐢宠缂栫爜鐨勫垎绫伙紝閫愬眰寰�涓婃牎楠屾槸鍚︾鍚堝睘浜庨厤缃殑涓殑鍒嗙被瀛愯妭鐐圭殑鍒�
+	 * 绫伙紝濡傛灉绗﹀悎锛屽垯璇ュ垎绫荤敵璇风殑缂栫爜涓洪泦鍥㈢爜杩斿洖true锛屽弽涔嬪垯涓轰紒涓氱紪鐮佽繑鍥瀎alse
+	 * @param parameter 浼犲叆鏁版嵁,classifyGroupCode:閰嶇疆鐨勪腑鐨勫垎绫婚《鑺傜偣锛宱id锛氶�夋嫨鑺傜偣鐨刼id
+	 */
+	R checkGroupCode(Map<String, String> parameter);
+
+	/**
+	 * 鏍囧噯鐢宠鍜屼慨璁㈢敤
+	 * @param codeBZApplyDTO 缂栫爜鐢宠鐩稿叧鐨勪俊鎭紝闇�瑕佹湁灞炴�у拰鐮佹鐩稿叧鐨勪俊鎭�
+	 * @return 鎵ц缁撴灉
+	 */
+	String addSaveBZ(CodeBZApplyDTO codeBZApplyDTO) throws Exception;
+	/**
+	 * 鏍囧噯鐢宠鍜屼慨璁㈢敤
+	 * @param codeBZApplyDTO 缂栫爜鐢宠鐩稿叧鐨勪俊鎭紝闇�瑕佹湁灞炴�у拰鐮佹鐩稿叧鐨勪俊鎭�
+	 * @param authUser 鏄惁妯℃嫙鐧诲綍锛宼rue锛屼笉妯℃嫙锛宖alse鏄ā鎷�
+	 * @return 鎵ц缁撴灉
+	 */
+	String addSaveBZCodeNotauthUser(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception;
+	/**
+	 * 鑾峰彇缁熻鍒嗘瀽鏁版嵁
+	 * @param btmNames 涓氬姟绫诲瀷
+	 * @return 鏁版嵁闆�
+	 */
+	R getStatisticAnalysis(String btmNames);
 }

--
Gitblit v1.9.3