From 4a664d8a49b80c0b901caa644526f25a65e956c3 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 19 七月 2023 12:15:11 +0800
Subject: [PATCH] code服务重新部署
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 101 insertions(+), 4 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index 35e96c2..eb7a13d 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -22,6 +22,9 @@
import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
import com.vci.ubcs.code.vo.pagemodel.UITablePageVO;
import com.vci.ubcs.code.vo.pagemodel.*;
+import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
+import com.vci.ubcs.flow.core.feign.IMDMIFlowAttrClient;
+import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import com.vci.ubcs.omd.constant.BtmTypeLcStatusConstant;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.feign.*;
@@ -38,6 +41,7 @@
import com.vci.ubcs.starter.util.UBCSSqlKeyword;
import com.vci.ubcs.starter.web.constant.QueryOptionConstant;
import com.vci.ubcs.starter.web.constant.RegExpConstant;
+import com.vci.ubcs.starter.web.constant.VciSystemVarConstants;
import com.vci.ubcs.starter.web.enumpck.BooleanEnum;
import com.vci.ubcs.starter.web.enumpck.UserSecretEnum;
import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
@@ -278,6 +282,11 @@
* 鏇挎崲瀛楃
*/
public static final String SPECIAL_CHAR = "VCI";
+ /**
+ * 涓绘暟鎹祦绋嬮樁娈垫湇鍔�
+ */
+ @Autowired
+ private IMDMIFlowAttrClient imdmiFlowAttrClient;
// @Autowired
// private CodeOsbtmtypeMapper codeOsbtmtypeMapper;----
@@ -908,7 +917,7 @@
// baseModels.stream().forEach(model-> {
try {
- map = VciBaseUtil.convertBean2Map(cbo);
+ map = VciBaseUtil.convertBean2Map(cbo,null);
} catch (Exception e) {
throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.getMessage());
}
@@ -2857,6 +2866,51 @@
return uiInfoVO;
}
+ /**
+ * 浣跨敤鍒嗙被鐨勪富閿幏鍙栬〃鏍肩殑瀹氫箟-ubcs鍚庝慨鏀硅幏鍙栨祦绋嬮樁娈电啛鎮夎幏鍙栨柟娉�
+ * @param codeClassifyOid
+ * @param templateId
+ * @param taskId
+ * @param modelKey
+ * @return
+ */
+ public MdmUIInfoVO getTableDefineByClassifyOid_v2(String codeClassifyOid,String templateId,String taskId,String modelKey) {
+ MdmUIInfoVO uiInfoVO = new MdmUIInfoVO();
+ CodeClassifyTemplateVO templateVO = getUsedTemplateByClassifyOid(codeClassifyOid);
+ uiInfoVO.setTemplateVO(templateVO);
+ UITableDefineVO uiTableDefineVO = wrapperTableDefineByTemplate(templateVO, true);
+ R<List<ProcessStageAttrVO>> r = imdmiFlowAttrClient.ssslist(templateId,modelKey,taskId);
+ List<ProcessStageAttrVO> stageAttrVOS = r.getData();
+ List<String> attrList = new ArrayList<>();
+ stageAttrVOS.stream().forEach(attr->{
+ attrList.add(attr.getAttrId());
+ });
+ uiTableDefineVO.getCols().stream().forEach(list -> {
+ List<UITableFieldVO> visiableTableField = new ArrayList<>();
+ visiableTableField = list.stream().filter(col ->
+ attrList.stream().anyMatch(s -> StringUtils.equalsIgnoreCase(col.getField(), s) ||
+ (StringUtils.equalsIgnoreCase(col.getFieldType(), "combox") && StringUtils.equalsIgnoreCase(col.getSortField(), s))
+ || (StringUtils.equalsIgnoreCase(col.getFieldType(), "refer") && StringUtils.equalsIgnoreCase(col.getQueryField(), s))
+ )).collect(Collectors.toList());
+
+ visiableTableField.stream().forEach(vo -> {
+ uiTableDefineVO.setHasEditor(true);
+ if ("refer".equalsIgnoreCase(vo.getFieldType())) {
+ setReferConfig2EditConfig(vo);
+ } else if ("combox".equalsIgnoreCase(vo.getFieldType())) {
+ setComboxConfig2EditConfig(vo);
+ } else if (StringUtils.isNotBlank(vo.getDateFormate())) {
+ vo.setEdit("date");
+ } else {
+ vo.setEdit(vo.getFieldType());
+ }
+ });
+ });
+ uiInfoVO.setTableDefineVO(uiTableDefineVO);
+ wrapperResemble(templateVO, uiInfoVO);
+ return uiInfoVO;
+ }
+
/**
* 妯℃澘灞炴�ц浆鎹负琛ㄦ牸瀹氫箟鐨勪俊鎭�
*
@@ -3122,6 +3176,33 @@
}
return uiInfoVO;
}
+ @Override
+ public MdmUIInfoVO getFlowUIInfoByClassifyOid(String codeClassifyOid, String functionId,String templateId,String taskId,String modelKey){
+// MdmUIInfoVO uiInfoVO = getTableDefineByClassifyOid_v2(codeClassifyOid,templateId,taskId,modelKey);
+ MdmUIInfoVO uiInfoVO = getTableDefineByTemplateVO(getUsedTemplateByClassifyOid(codeClassifyOid));
+ R<List<ProcessStageAttrVO>> r = imdmiFlowAttrClient.ssslist(templateId,modelKey,taskId);
+ List<ProcessStageAttrVO> stageAttrVOS = r.getData();
+ Set<String> attrSet = new HashSet<>();
+ stageAttrVOS.stream().forEach(attr->{
+ attrSet.add(attr.getAttrId());
+ });
+
+ try {
+
+ UITableDefineVO tableDefineVO = uiInfoVO.getTableDefineVO();
+ List<List<UITableFieldVO>> tableFieldVOs = tableDefineVO.getCols();
+ List<UITableFieldVO> uiTableFieldVOS = tableFieldVOs.get(0);
+ uiTableFieldVOS.stream().forEach(ui->{
+// if(!attrSet.contains(ui.getField())){
+// ui.setEdit(null);
+// ui.setEditConfig(null);
+// }
+ });
+ }catch (Exception e){
+ throw new ServiceException("妯℃澘娌℃湁瀹氫箟灞炴�э紝璇诲彇琛ㄥご澶辫触!");
+ }
+ return uiInfoVO;
+ }
/**
* 浣跨敤鍒嗙被涓婚敭鑾峰彇宸ュ叿鏍忎腑鐨勬寜閽俊鎭�
@@ -3172,11 +3253,19 @@
if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
- //灏哹ean杞负map,mybatis缁熶竴澶勭悊
+ //鑾峰彇褰撳墠涓氬姟绫诲瀷鎵�鏈夊瓧娈电敤鏉ュ仛瀵规瘮
+ R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getAllAttributeByBtmId(btmType);
+ if (!allAttributeByBtmId.isSuccess() || allAttributeByBtmId.getData().getAttributes().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲瀛楁淇℃伅锛岃妫�鏌ワ紒");
+ }
+ Set<String> existFild = allAttributeByBtmId.getData().getAttributes().stream().map(btmTypeAttributeVO -> {
+ return btmTypeAttributeVO.getId();
+ }).collect(Collectors.toSet());
+ //灏哹ean杞负map,mybatis缁熶竴澶勭悊
List<Map<String, String>> maps = new ArrayList<>();
baseModels.stream().forEach(model -> {
try {
- maps.add(VciBaseUtil.convertBean2Map(model));
+ maps.add(VciBaseUtil.convertBean2Map(model,existFild));
} catch (Exception e) {
throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.toString());
}
@@ -3327,12 +3416,20 @@
if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
+ //鑾峰彇褰撳墠涓氬姟绫诲瀷鎵�鏈夊瓧娈电敤鏉ュ仛瀵规瘮
+ R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getAllAttributeByBtmId(btmType);
+ if (!allAttributeByBtmId.isSuccess() || allAttributeByBtmId.getData().getAttributes().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲瀛楁淇℃伅锛岃妫�鏌ワ紒");
+ }
+ Set<String> existFild = allAttributeByBtmId.getData().getAttributes().stream().map(btmTypeAttributeVO -> {
+ return btmTypeAttributeVO.getId();
+ }).collect(Collectors.toSet());
//灏哹ean杞负map,mybatis缁熶竴澶勭悊
List<Map<String, String>> maps = new ArrayList<>();
baseModels.stream().forEach(model -> {
try {
- maps.add(VciBaseUtil.convertBean2Map(model));
+ maps.add(VciBaseUtil.convertBean2Map(model,existFild));
} catch (Exception e) {
throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.getMessage());
}
--
Gitblit v1.9.3