From 50ef1752b263a76691234d4df612269cbef2f060 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期一, 17 七月 2023 09:40:28 +0800
Subject: [PATCH] 丢失文件
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 244 +++++++++++++++++++++++++++++-------------------
1 files changed, 148 insertions(+), 96 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 3fb88ff..16b0f3d 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;
@@ -66,6 +70,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+
import javax.annotation.Resource;
import java.beans.BeanInfo;
import java.beans.Introspector;
@@ -277,6 +282,11 @@
* 鏇挎崲瀛楃
*/
public static final String SPECIAL_CHAR = "VCI";
+ /**
+ * 涓绘暟鎹祦绋嬮樁娈垫湇鍔�
+ */
+ @Autowired
+ private IMDMIFlowAttrClient imdmiFlowAttrClient;
// @Autowired
// private CodeOsbtmtypeMapper codeOsbtmtypeMapper;----
@@ -390,6 +400,7 @@
public String addSaveCode(CodeOrderDTO orderDTO) throws Exception {
VciBaseUtil.alertNotNull(orderDTO, "缂栫爜鐢宠鐩稿叧鐨勫睘鎬у拰鐮佹鐨勫唴瀹归兘涓虹┖", orderDTO.getCodeClassifyOid(), "涓婚搴撳垎绫荤殑涓婚敭",
orderDTO.getTemplateOid(), "妯℃澘鐨勪富閿�", orderDTO.getCodeRuleOid(), "缂栫爜瑙勫垯鐨勪富閿�");
+ VciSystemVarConstants.getSystemVarValueMap();
CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid());
CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(orderDTO.getTemplateOid());
CodeRuleVO ruleVO = ruleService.getObjectHasSecByOid(orderDTO.getCodeRuleOid());
@@ -411,10 +422,15 @@
switchDateAttrOnOrder(templateVO, orderDTO);
//9.鐢熸垚缂栫爜鐨勪俊鎭�
// ClientBusinessObject cbo = boService.createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmtypeid());
- BaseModel cbo = createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmtypeid());
+ BaseModel cbo = createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmTypeId());
// //榛樿鐨勫睘鎬ч兘涓嶇敤浠庡墠绔嫹璐�
// //璁剧疆缂栫爜闇�瑕佺殑榛樿灞炴�х殑鍐呭
copyValueToCBO(classifyFullInfo, cbo, orderDTO, templateVO, false);
+ cbo.setOid(VciBaseUtil.getPk());
+ cbo.setCreateTime(new Date());
+ cbo.setLastModifyTime(new Date());
+ cbo.setCreator(AuthUtil.getUser().getUserName());
+ cbo.setLastModifier(AuthUtil.getUser().getUserName());
// //TODO:鍥犱负榛樿鐨勫睘鎬ч兘涓嶆嫹璐濓紝鐩墠闆嗗洟鐮佸彨name锛屽苟娌℃湁浠嶥TO鎷疯礉鍒癱bo閲屻�傚鍔犱竴涓崟鐙鐞嗭紝浠ュ悗鍐嶇湅瑕佷笉瑕佽皟鏁�
cbo.setName(orderDTO.getName() == null ? "" : orderDTO.getName());
// //end -- modify by lihang @20220407
@@ -644,7 +660,7 @@
if (!CollectionUtils.isEmpty(conditionMap)) {
// final String[] sql = {"select count(*) from " + VciBaseUtil.getTableName(classifyFullInfo.getTopClassifyVO().getBtmtypeid()) + " t where 1 = 1 "};
- R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getTopClassifyVO().getBtmtypeid()));
+ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getTopClassifyVO().getBtmTypeId()));
// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
@@ -798,35 +814,27 @@
// BeanUtils.
// BeanUtils.copyProperties(orderDTO.getData(),cbo);
// cbo.setMaterialtype(Short.valueOf("1001"));
-// orderDTO.getData().forEach((key, value) -> {
-// if (!edit || (!checkUnAttrUnEdit(key) &&
-// !VciQueryWrapperForDO.LC_STATUS_FIELD.equalsIgnoreCase(key))) {
-// try {
-// cbo.setAttributeValue(key, value);
-// } catch (Exception e) {
-// logger.error("璁剧疆灞炴�х殑鍊奸敊璇�", e);
-// }
-// }
-// });
+ orderDTO.getData().forEach((key, value) -> {
+ if (!edit || (!checkUnAttrUnEdit(key) &&
+ !VciQueryWrapperForDO.LC_STATUS_FIELD.equalsIgnoreCase(key))) {
+ try {
+ cbo.getData().put(cbo.getData().containsKey(key.toUpperCase())?key.toUpperCase():key, value);
+ } catch (Exception e) {
+ logger.error("璁剧疆灞炴�х殑鍊奸敊璇�", e);
+ }
+ }
+ });
// BeanMap beanMap = BeanMap.create(cbo);
// beanMap.putAll(orderDTO.getData());
try {
-
- BeanUtilForVCI.copyPropertiesIgnoreNull(BeanUtilForVCI.convertMap(BaseModel.class, orderDTO.getData()), cbo);
- Map<String, String> data = new HashMap<>();
- data.put(CODE_CLASSIFY_OID_FIELD, classifyFullInfo.getCurrentClassifyVO().getOid());
- data.put(CODE_TEMPLATE_OID_FIELD, templateVO.getOid());
- data.put(CODE_FULL_PATH_FILED, fullPath);
- cbo.setData(data);
- cbo.setOid(VciBaseUtil.getPk());
- cbo.setCreateTime(new Date());
+ Map<String, String> data = new HashMap<>();
+ data.put(cbo.getData().containsKey(CODE_CLASSIFY_OID_FIELD.toUpperCase())?CODE_CLASSIFY_OID_FIELD.toUpperCase():CODE_CLASSIFY_OID_FIELD, classifyFullInfo.getCurrentClassifyVO().getOid());
+ data.put(cbo.getData().containsKey(CODE_TEMPLATE_OID_FIELD.toUpperCase())?CODE_TEMPLATE_OID_FIELD.toUpperCase():CODE_TEMPLATE_OID_FIELD, templateVO.getOid());
+ data.put(cbo.getData().containsKey(CODE_FULL_PATH_FILED.toUpperCase())?CODE_FULL_PATH_FILED.toUpperCase():CODE_FULL_PATH_FILED, fullPath);
+ cbo.getData().putAll(data);
cbo.setLastModifyTime(new Date());
- cbo.setCreator(AuthUtil.getUser().getUserName());
cbo.setLastModifier(AuthUtil.getUser().getUserName());
-// cbo.setCodeclsfid(classifyFullInfo.getCurrentClassifyVO().getOid());
-// cbo.setTemplateOid(templateVO.getOid());
-// cbo.setCodeclsfpath(fullPath);
cbo.setTs(new Date());
if (!edit && StringUtils.isBlank(orderDTO.getLcStatus())) {
//TODO 鍏堝啓鍥哄畾锛屽悗闈㈢敓鍛藉懆鏈熷ソ浜嗗湪缂栧啓
@@ -1277,7 +1285,7 @@
conditionMap.putAll(andConditionMap);
PageHelper pageHelper = new PageHelper(-1);
pageHelper.addDefaultDesc("id");
- return queryGrid(fullInfoBO.getTopClassifyVO().getBtmtypeid(), templateVO, conditionMap, pageHelper);
+ return queryGrid(fullInfoBO.getTopClassifyVO().getBtmTypeId(), templateVO, conditionMap, pageHelper);
}
return new DataGrid<>();
}
@@ -1298,11 +1306,11 @@
//璇存槑宸茬粡瀛樺湪
return resembleRuleService.getObjectByOid(currentClassifyVO.getCodeResembleRuleOid());
}
- if (StringUtils.isBlank(currentClassifyVO.getParentcodeclassifyoid())) {
+ if (StringUtils.isBlank(currentClassifyVO.getParentCodeClassifyOid())) {
return null;
}
Map<String, CodeClassifyVO> classifyVOMap = fullInfoBO.getParentClassifyVOs().stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
- return getUseResembleRule(fullInfoBO, classifyVOMap.getOrDefault(currentClassifyVO.getParentcodeclassifyoid(), null));
+ return getUseResembleRule(fullInfoBO, classifyVOMap.getOrDefault(currentClassifyVO.getParentCodeClassifyOid(), null));
}
/**
@@ -2102,22 +2110,15 @@
// CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid());
CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid());
//鎵句笟鍔$被鍨嬶紝鐒跺悗浣跨敤涓婚敭鍘昏幏鍙栨暟鎹簱閲岀殑鏁版嵁
- List<BaseModel> cbos = selectByTypeAndOid(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), orderDTO.getOid());
+ List<BaseModel> cbos = selectByTypeAndOid(classifyFullInfo.getTopClassifyVO().getBtmTypeId(), orderDTO.getOid());
if (CollectionUtils.isEmpty(cbos)) {
throw new VciBaseException(DATA_OID_NOT_EXIST);
}
-// QueryWrapper<CodeWupin> btmWrapper = new QueryWrapper<>();
-// btmWrapper.eq("OID",orderDTO.getOid());
-// CodeWupin cbo = codeWupinMapper.selectOne(btmWrapper);
BaseModel cbo = cbos.get(0);
-// CodeClstemplateVO templateVO = templateService.getObjectHasAttrByOid(orderDTO.getTemplateOid());
-// CodeRuleVO ruleVO = ruleService.getObjectHasSecByOid(orderDTO.getCodeRuleOid());
-
- if (cbo != null) {
+ if (cbo == null) {
throw new VciBaseException(DATA_OID_NOT_EXIST);
}
-// ClientBusinessObject cbo = cbos.get(0);
if (!cbo.getTs().toString().contains(VciDateUtil.date2Str(orderDTO.getTs(), VciDateUtil.DateTimeFormat))) {
throw new VciBaseException("鏁版嵁涓嶆槸鏈�鏂扮殑锛屽彲鑳戒粬浜哄凡缁忎慨鏀癸紝璇峰埛鏂板悗鍐嶈瘯");
}
@@ -2127,9 +2128,16 @@
//娉ㄦ剰妯℃澘涓嶈兘浣跨敤鏁版嵁瀛樺偍鐨勬椂鍊欑殑妯℃澘锛屽洜涓哄彲鑳戒細鍙樺寲
- //1. 鍒ゆ柇蹇呰緭椤�
+ String codeClassifyOid=cbo.getData().get(CODE_CLASSIFY_OID_FIELD.toUpperCase());
+ orderDTO.setCodeClassifyOid(codeClassifyOid);
+// CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid());
+// CodeClassifyTemplateVO templateVO= this.getUsedTemplateByClassifyOid(orderDTO.getCodeClassifyOid());
+
+
CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(orderDTO.getTemplateOid());
- checkRequiredAttrOnOrder(templateVO, orderDTO);
+ orderDTO.setTemplateOid(templateVO.getOid());
+ //1. 鍒ゆ柇蹇呰緭椤�
+ checkRequiredAttrOnOrder(templateVO, orderDTO);
//2.鍏堟敞鍏ワ紝鍐嶇粍鍚堬紝鏈�鍚庢牎楠�
switchClassifyLevelOnOrder(templateVO, classifyFullInfo, orderDTO);
//3.澶勭悊缁勫悎瑙勫垯銆傜粍鍚堣鍒欎笉鑳戒娇鐢ㄧ紪鐮佺殑灞炴�э紝鍥犱负缂栫爜鐨勭敓鎴愬彲鑳芥槸闇�瑕佸睘鎬х殑
@@ -2146,46 +2154,18 @@
copyValueToCBO(classifyFullInfo, cbo, orderDTO, templateVO, true);
//浼佷笟鐮佸拰闆嗗洟鐮佺殑涓嶄慨鏀�
cbo.setDescription(orderDTO.getDescription());
- cbo.setName(orderDTO.getName());
+// cbo.setName(orderDTO.getName());
try {
cbo.setDescription(StringUtils.isBlank(orderDTO.getDescription()) ? "" : orderDTO.getDescription());
cbo.setName(orderDTO.getName());
-//// cbo.setAttributeValueWithNoCheck("description", orderDTO.getDescription());
-// cbo.setAttributeValue("name", orderDTO.getName());
} catch (Exception e) {
e.printStackTrace();
}
+// cbo.getData().putAll(orderDTO.getData());
cbo.setLastModifyTime(new Date());
cbo.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
- updateBatchByBaseModel(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), Collections.singletonList(cbo));
-// codeWupinMapper.updateById(cbo);
-//
-// List<CodeWupinEntity> cboList = new ArrayList<>();
-//
-// //澶囨敞
-// cbo.setDescription(orderDTO.getDescription());
-// cboList.add(cbo);
-////
-//// cboList.add(cbo);
-// List<String> codeList = productCodeService.productCodeAndSaveData(classifyFullInfo, templateVO, ruleVO, orderDTO.getSecDTOList(),cboList);
-//
-//
-// List<String> charList = new ArrayList<>();
-// for (CodeWupinEntity wupinEntity : cboList) {
-// charList.add(wupinEntity.getId());
-// }
-// batchSaveSelectChar(templateVO, charList);
-// return codeList.size() > 0 ? codeList.get(0) : "";
-
-
- //淇敼鐨勬椂鍊欙紝缂栫爜鏄笉鍙樼殑
-// BatchCBO batchCBO = new BatchCBO();
-// batchCBO.getUpdateCbos().add(cbo);
-// List<ClientBusinessObject> cboList = new ArrayList<>();
-// cboList.add(cbo);
-// boService.persistenceBatch(batchCBO);
+ updateBatchByBaseModel(classifyFullInfo.getTopClassifyVO().getBtmTypeId(), Collections.singletonList(cbo));
batchSaveSelectChar(templateVO, Collections.singletonList(cbo));
-// batchSaveSelectChar(templateVO, Arrays.asList(cbo.getId()));
}
/**
@@ -2209,7 +2189,7 @@
oidCollection.stream().forEach(oids -> {
Map<String, String> conditionMap = new HashMap<>();
// conditionMap.put("oid", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(oids.toArray(new String[0])) + ")");
- List<BaseModel> cbos = selectByTypeAndOid(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), oids);
+ List<BaseModel> cbos = selectByTypeAndOid(classifyFullInfo.getTopClassifyVO().getBtmTypeId(), oids);
// boService.queryCBO(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), conditionMap);
cboList.addAll(cbos);
});
@@ -2235,10 +2215,10 @@
// batchCBO.getDeleteCbos().addAll(cboList);
// WebUtil.setPersistence(false);
// batchCBO.copyFromOther(
- productCodeService.recycleCode(classifyFullInfo.getCurrentClassifyVO().getBtmtypeid(), deleteBatchDTO.getOidList());
+ productCodeService.recycleCode(classifyFullInfo.getCurrentClassifyVO().getBtmTypeId(), deleteBatchDTO.getOidList());
// baseMapper.deleteBatchIds(cboList);
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
- R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getCurrentClassifyVO().getBtmtypeid()));
+ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getCurrentClassifyVO().getBtmTypeId()));
if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
@@ -2305,10 +2285,10 @@
//4. 鏌ヨ鐨勬椂鍊欙紝鐩存帴浣跨敤codeclsfpath鏉ユ煡璇�
CodeClassifyVO topClassifyVO = classifyService.getTopClassifyVO(codeClassifyOid);
CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(templateOid);
- if (topClassifyVO == null || StringUtils.isBlank(topClassifyVO.getBtmtypeid())) {
+ if (topClassifyVO == null || StringUtils.isBlank(topClassifyVO.getBtmTypeId())) {
throw new VciBaseException("褰撳墠涓婚搴撳垎绫绘病鏈夐《灞傚垎绫伙紝鎴栬�呴《灞傚垎绫绘病鏈夎缃笟鍔$被鍨�");
}
- String btmTypeId = topClassifyVO.getBtmtypeid();
+ String btmTypeId = topClassifyVO.getBtmTypeId();
if (StringUtils.isBlank(btmTypeId)) {
return new DataGrid<>("杩欎釜鍒嗙被鎵�灞為《灞傚垎绫绘病鏈夋坊鍔犱笟鍔$被鍨�");
}
@@ -2375,7 +2355,7 @@
throw new VciBaseException(DATA_OID_NOT_EXIST);
}
- List<BaseModel> cboList = selectByTypeAndOid(topClassifyFullInfo.getTopClassifyVO().getBtmtypeid(), VciBaseUtil.array2String(orderDTOMap.keySet().toArray(new String[0])));
+ List<BaseModel> cboList = selectByTypeAndOid(topClassifyFullInfo.getTopClassifyVO().getBtmTypeId(), VciBaseUtil.array2String(orderDTOMap.keySet().toArray(new String[0])));
// cboOidMap.put("oid",QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(orderDTOMap.keySet().toArray(new String[0])) + ")");
// List<ClientBusinessObject> cboList = boService.queryCBO(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), cboOidMap);
if (CollectionUtils.isEmpty(cboList)) {
@@ -2431,7 +2411,7 @@
batchSaveSelectChar(firstTemplateVO, cboList);
});
// boService.persistenceBatch(batchCBO);
- updateBatchByBaseModel(topClassifyFullInfo.getTopClassifyVO().getBtmtypeid(), updateList);
+ updateBatchByBaseModel(topClassifyFullInfo.getTopClassifyVO().getBtmTypeId(), updateList);
return R.success("鎿嶄綔鎴愬姛锛�");
}
@@ -2607,7 +2587,7 @@
public CodeRuleVO getCodeRuleByClassifyOid(String codeClassifyOid) {
VciBaseUtil.alertNotNull(codeClassifyOid, "鍒嗙被鐨勪富閿�");
CodeClassifyVO classifyVO = classifyService.getObjectByOid(codeClassifyOid);
- String codeRuleOid = classifyVO.getCoderuleoid();
+ String codeRuleOid = classifyVO.getCodeRuleOid();
if (StringUtils.isBlank(codeRuleOid)) {
//寰�涓婃壘
CodeClassifyFullInfoBO fullInfo = classifyService.getClassifyFullInfo(codeClassifyOid);
@@ -2627,8 +2607,8 @@
public CodeRuleVO getCodeRuleByClassifyFullInfo(CodeClassifyFullInfoBO fullInfoBO) {
//寰�涓婃壘
String codeRuleOid = "";
- if (StringUtils.isNotBlank(fullInfoBO.getCurrentClassifyVO().getCoderuleoid())) {
- codeRuleOid = fullInfoBO.getCurrentClassifyVO().getCoderuleoid();
+ if (StringUtils.isNotBlank(fullInfoBO.getCurrentClassifyVO().getCodeRuleOid())) {
+ codeRuleOid = fullInfoBO.getCurrentClassifyVO().getCodeRuleOid();
} else {
if (CollectionUtils.isEmpty(fullInfoBO.getParentClassifyVOs())) {
//璇存槑宸茬粡鏄渶楂樺眰绾�,
@@ -2638,8 +2618,8 @@
//浠庢渶楂樼殑level寮�濮嬭幏鍙�
for (int i = 0; i < parentClassifyVOList.size(); i++) {
CodeClassifyVO record = parentClassifyVOList.get(i);
- if (StringUtils.isNotBlank(record.getCoderuleoid())) {
- codeRuleOid = record.getCoderuleoid();
+ if (StringUtils.isNotBlank(record.getCodeRuleOid())) {
+ codeRuleOid = record.getCodeRuleOid();
break;
}
}
@@ -2662,7 +2642,7 @@
CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(templateOid);
//涓轰簡闃叉妯℃澘涓婄殑涓氬姟绫诲瀷涓庡垎绫讳笂涓嶅搴�
CodeClassifyVO topClassifyVO = classifyService.getTopClassifyVO(templateVO.getCodeclassifyoid());
- String btmId = topClassifyVO.getBtmtypeid();
+ String btmId = topClassifyVO.getBtmTypeId();
//鏌ヨ鏁版嵁
Map<String, String> conditionMap = new HashMap<>();
conditionMap.put("t.oid", oid);
@@ -2868,6 +2848,51 @@
wrapperResemble(templateVO, uiInfoVO);
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;
+ }
/**
* 妯℃澘灞炴�ц浆鎹负琛ㄦ牸瀹氫箟鐨勪俊鎭�
@@ -3104,12 +3129,12 @@
uiInfoVO.setLeaf(classifyService.countChildrenByClassifyOid(codeClassifyOid) == 0);
if (StringUtils.isNotBlank(functionId) && !"~".equalsIgnoreCase(functionId)) {
List<Menu> buttonVOS = iSysClient.getMenuButtonByType(uiInfoVO.getTemplateVO().getBtmTypeId()).getData();
-// List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId);
-// if (operationVOS == null) {
-// operationVOS = new ArrayList<>();
-// }
-// //鏌ヨ鎵╁睍鎸夐挳
-// List<CodeButtonVO> buttonVOS = listButtonInToolbarByClassifyOid(codeClassifyOid);
+ // List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId);
+ // if (operationVOS == null) {
+ // operationVOS = new ArrayList<>();
+ // }
+ // //鏌ヨ鎵╁睍鎸夐挳
+ // List<CodeButtonVO> buttonVOS = listButtonInToolbarByClassifyOid(codeClassifyOid);
List<SmOperationVO> operationVOS = new ArrayList<>();
if (!CollectionUtils.isEmpty(buttonVOS)) {
for (int i = 0; i < buttonVOS.size(); i++) {
@@ -3129,6 +3154,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;
+ }
/**
* 浣跨敤鍒嗙被涓婚敭鑾峰彇宸ュ叿鏍忎腑鐨勬寜閽俊鎭�
@@ -3409,20 +3461,20 @@
String lcstatusSql = "";
if (StringUtils.isNotBlank(baseQueryObject.getConditionMap().get("lcstatus"))) {
- lcstatusSql = "lcstatus =" + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lcstatus"));
+ lcstatusSql = "and lcstatus =" + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lcstatus"));
}
- String where = "";
+// String where = "";
- if (StringUtils.isNotBlank(codesql) || StringUtils.isNotBlank(lcstatusSql) || StringUtils.isNotBlank(namesql)) {
- where="where ";
- }
+// if (StringUtils.isNotBlank(codesql) || StringUtils.isNotBlank(lcstatusSql) || StringUtils.isNotBlank(namesql)) {
+// where = "where ";
+// }
String num1 = baseQueryObject.getPage() * baseQueryObject.getLimit() + "";
String num2 = ((baseQueryObject.getPage()) - 1) * baseQueryObject.getLimit() + 1 + "";
List<Map> maps = commonsMapper.selectBySql("select * from ( select rownum rn, t.* from (select * from " + listR.getData().get(0).getTableName() + SPACE
+ (StringUtils.isNotBlank(listR.getData().get(0).getRevisionRuleId()) ? (" where lastr = " + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastr").toString())
- + " and lastv =" + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastv").toString())) + " and": where) + SPACE
+ + " and lastv =" + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastv").toString())) + " and" : "where") + SPACE + "1=1 "
+ lcstatusSql + namesql + codesql + ") t where rownum <=" + num1 + ") where rn >=" + num2
);
List<BaseModel> baseModels = new ArrayList<>();
@@ -3466,7 +3518,7 @@
}
int total = commonsMapper.queryCountBySql("select count(*) from " + listR.getData().get(0).getTableName() + SPACE
+ (StringUtils.isNotBlank(listR.getData().get(0).getRevisionRuleId()) ? (" where lastr = " + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastr").toString())
- + "and lastv = " + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastv").toString())) + " and" : where) + SPACE
+ + "and lastv = " + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lastv").toString())) + " and" : "where") + SPACE + "1=1 "
+ lcstatusSql + namesql + codesql
);
IPage<BaseModel> objectDataGrid = new Page<>();
--
Gitblit v1.9.3