From de9b95a2f14d42bcde076aeb32f1e1c4396b67f4 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期一, 18 九月 2023 10:35:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java |   94 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 84 insertions(+), 10 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 bacba02..6dd6af6 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,23 +1,24 @@
 package com.vci.ubcs.code.service;
 
 
-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.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.vo.CodeKeyAttrRepeatVO;
 import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
 import com.vci.ubcs.code.vo.pagemodel.*;
+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.*;
+import com.vci.ubcs.starter.web.util.VciQueryWrapperForDO;
 import org.springblade.core.tool.api.R;
 
-import java.beans.IntrospectionException;
-import java.lang.reflect.InvocationTargetException;
-import java.sql.SQLException;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
@@ -27,7 +28,7 @@
  * @author weidy
  * @date 2022-2-21
  */
-public interface MdmEngineService extends IService<CodeWupin> {
+public interface MdmEngineService {
 	/**
 	 * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
 	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
@@ -101,7 +102,14 @@
 	 * @param cboList    鏁版嵁鐨勫唴瀹�
 	 */
 	void batchSaveSelectChar(CodeClassifyTemplateVO templateVO, /*List<ClientBusinessObject> cboList*/
-							 List<String> cboList);
+							 List<BaseModel> cboList);
+
+	/**
+	 * 灏佽寮�鍏崇殑鍐呭锛屽父鐢ㄤ簬瀵煎嚭
+	 * @param dataMap 鏁版嵁鐨勫唴瀹�
+	 * @param templateVO 妯℃澘鐨勬樉绀�
+	 */
+	void wrapperBoolean(List<Map<String, String>> dataMap, CodeClassifyTemplateVO templateVO);
 
 	/**
 	 * 浣跨敤妯℃澘鐨勪富閿幏鍙栬〃鍗曠殑淇℃伅
@@ -371,13 +379,22 @@
 	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 涓氬姟绫诲瀷
 	 * @param baseModels      澶勭悊鏁版嵁
 	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
 	 */
-	Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception;
+	Integer insertBatchByType(String btmType, List<BaseModel> baseModels);
 	/**
 	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
 	 *
@@ -385,7 +402,7 @@
 	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
 	 * @return 鏌ヨ鍑虹殑鏁版嵁
 	 */
-	List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException;
+	List<BaseModel> selectByTypeAndOid(String btmType, String oids) ;
 	/**
 	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔
 	 *
@@ -393,6 +410,63 @@
 	 * @param baseModels      澶勭悊鏁版嵁
 	 * @return 澶勭悊鐘舵��
 	 */
-	R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception;
+	R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels);
 
+	/**
+	 * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鐘舵��
+	 */
+	public R<Integer>updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels);
+
+	/**
+	 * 榛樿鍒楄〃
+	 * @param referConfigVO
+	 * @return
+	 */
+	IPage<BaseModelVO> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject) throws VciBaseException;
+
+	/**
+	 * 鑾峰彇鏍戝舰鐨勫弬鐓�
+	 * @param referConfigVO 鍙傜収鐨勯厤缃�
+	 * @return 鏍戝舰鐨勬暟鎹�
+	 */
+	List<Tree> referTree(UIFormReferVO referConfigVO, TreeQueryObject queryObject);
+
+	/**
+	 * 鏄惁涓轰慨鏀瑰拷鐣ョ殑灞炴��
+	 * @param attrName 灞炴�х殑鍚嶅瓧
+	 * @return true 琛ㄧず搴旇蹇界暐
+	 */
+	default boolean checkUnAttrUnEdit(String attrName){
+		return  (VciQueryWrapperForDO.OID_FIELD.equalsIgnoreCase(attrName)
+			||"ts".equalsIgnoreCase(attrName)
+			|| "lastmodifier".equalsIgnoreCase(attrName)
+			|| "lastmodifytime".equalsIgnoreCase(attrName)
+			|| "createtime".equalsIgnoreCase(attrName)
+			|| "checkintime".equalsIgnoreCase(attrName)
+			||"checkouttime".equalsIgnoreCase(attrName));
+	}
+
+	/**
+	 * 娴佺▼涓彉鏇寸姸鎬佸��
+	 * @param flowDTO
+	 * @return
+	 */
+    R processChangeStatus(FlowStatusDTO flowDTO);
+
+	/**
+	 * 鏍¢獙鍏抽敭灞炴��
+	 * @param orderDTO         缂栫爜鐢宠鐨勭浉鍏崇殑淇℃伅
+	 */
+	public List<Map>  checkKeyAttrOnOrderFordatas(CodeOrderDTO orderDTO) ;
+
+	/**
+	 * 鏍规嵁褰撳墠鐢宠缂栫爜鐨勫垎绫伙紝閫愬眰寰�涓婃牎楠屾槸鍚︾鍚堝睘浜庨厤缃殑涓殑鍒嗙被瀛愯妭鐐圭殑鍒�
+	 * 绫伙紝濡傛灉绗﹀悎锛屽垯璇ュ垎绫荤敵璇风殑缂栫爜涓洪泦鍥㈢爜杩斿洖true锛屽弽涔嬪垯涓轰紒涓氱紪鐮佽繑鍥瀎alse
+	 * @param parameter 浼犲叆鏁版嵁,classifyGroupCode:閰嶇疆鐨勪腑鐨勫垎绫婚《鑺傜偣锛宱id锛氶�夋嫨鑺傜偣鐨刼id
+	 */
+	R checkGroupCode(Map<String, String> parameter);
 }

--
Gitblit v1.9.3