From 869a5b02c515dca42022c53647edbfbef8c2c3c1 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 11 十月 2023 15:39:26 +0800
Subject: [PATCH] 租户条件从常量类配置方式修改为nacos上拉取配置
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 57 +++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 39 insertions(+), 18 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index d83fddc..ac1c84c 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -495,7 +495,6 @@
return text;
}
-
/**
* 鎵归噺鐢宠缂栫爜鏁版嵁
*
@@ -538,7 +537,6 @@
// return null;
return codeImProtRusultVO;
}
-
/***
* 浠庨《灞傛壒閲忕敵璇峰鍏ユ柟娉�
@@ -645,7 +643,6 @@
});
-
//閮借浆鎹㈠畬浜嗐�傞渶瑕佹壒閲忔鏌�
//濡傛灉鍑洪敊浜嗭紝鎴戜滑渚濈劧鎵ц鏈夋晥鐨勬暟鎹紝鏃犳晥鐨勬暟鎹啓鍥炲埌excel涓�
//2.鍒ゆ柇蹇呰緭椤广�傘�傞渶瑕佸叏閮ㄧ殑灞炴�э紝濡傛灉鏄繀杈擄紝浣嗘槸琛ㄥ崟閲岄潰涓嶆樉绀虹殑锛屽彧鑳芥槸鍒嗙被娉ㄥ叆鎴栬�呯粍鍚堣鍒�
@@ -719,10 +716,8 @@
createRedisDatas(uuid + "-ok",codeImprotDataVOS, newErrorMap,true);
});
+
//寰�鐗╁搧鑺傜偣涓婂姞妯℃澘
-
-
-
List<String> needRowIndexList=new ArrayList<>();
CodeImProtRusultVO codeImProtRusultVO = new CodeImProtRusultVO();
if(errorMap.size()>0) {
@@ -792,6 +787,7 @@
String uuid=VciBaseUtil.getPk();
boolean isCreateUUid=false;
boolean isExport=false;
+ long start = System.currentTimeMillis();
for(int i=0;i<sheetDataSetList.size()-1;i++) {
if (CollectionUtils.isEmpty(sheetDataSetList) || CollectionUtils.isEmpty(sheetDataSetList.get(i).getRowData())
|| sheetDataSetList.get(i).getRowData().size() < 1) {
@@ -809,7 +805,6 @@
// 5.3 浼佷笟缂栫爜鐨勯暱搴︼紝鍜岀紪鐮佽鍒欑殑闀垮害瑕佸搴斾笂
// 5.4 鑾峰彇娴佹按鐮佹鐨勫�硷紝鍘婚櫎濉厖鐨勫瓧绗︼紝鐪嬫祦姘村彿鏄灏戯紝鐒跺悗灏嗘祦姘村彿鍜岀幇鍦ㄧ殑鏈�澶ф祦姘村彿鍒ゆ柇锛屽皬浜庡氨鐩存帴褰曞叆锛屽ぇ浜庡垯淇敼鏈�澶ф祦姘村彿
// 5.5 瀛樺偍浼佷笟缂栫爜鍒癮llcode涓�
-
//鏌ヨ鍒嗙被鍜屾ā鏉�
CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyOid);
@@ -944,7 +939,7 @@
ruleRowIndexMap.keySet().parallelStream().forEach(ruleOid -> {
List<String> rowIndexList = ruleRowIndexMap.get(ruleOid);
List<ClientBusinessObject> thisCbos = cboList.stream().filter(cbo -> rowIndexList.contains(cbo.getAttributeValue(IMPORT_ROW_INDEX)) && !errorMap.containsKey(cbo.getAttributeValue(IMPORT_ROW_INDEX))).collect(Collectors.toList());
-//鎴戜滑闇�瑕佸厛鏌ヨ涓�涓嬶紝鍐呭鏄惁宸茬粡瀛樺湪
+ //鎴戜滑闇�瑕佸厛鏌ヨ涓�涓嬶紝鍐呭鏄惁宸茬粡瀛樺湪
if(!CollectionUtils.isEmpty(thisCbos)){
List<String> existIds = new ArrayList<>();
VciBaseUtil.switchCollectionForOracleIn(thisCbos).stream().forEach(cbos -> {
@@ -1043,6 +1038,7 @@
if (!CollectionUtils.isEmpty(thisCbos)) {
try {
+ // TODO 澶氱嚎绋嬫祦闂
productCodeService.productCodeAndSaveData(classifyFullInfo, finalTemplateVO, ruleVOMap.get(ruleOid), null, dataCBOList);
} catch (Throwable e) {
log.error("鎵归噺浜х敓缂栫爜鐨勬椂鍊欏嚭閿欎簡", e);
@@ -1061,6 +1057,8 @@
engineService.batchSaveSelectChar(templateVO, dataCBOIdList);
}
}
+ long end = System.currentTimeMillis();
+ //log.info("=============for鎵ц鏃堕棿================="+String.valueOf((end-start)/1000));
String excelFileName="";
if(isExport&&!CollectionUtils.isEmpty(shetNameMap)) {
excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + "閿欒淇℃伅.xls";
@@ -1086,6 +1084,7 @@
return codeImProtRusultVO;
}
+
/*private void converBaseModels(List<ClientBusinessObject> clientBusinessObjects,List<BaseModel>dataCBOList){
clientBusinessObjects.stream().forEach(clientBusinessObject -> {
BaseModel baseModel=new BaseModel();
@@ -1099,6 +1098,7 @@
});
}*/
+
/***
* 浠巈xecl閲屾瀯寤哄璞�
* @param rowDataList
@@ -2329,12 +2329,17 @@
sb.append(" where 1=1 ");
sb.append(" and lastr=1 and lastv=1" );
if(isCodeOrGroupCode) {
- sb.append(" and groupcode in (");
+ sb.append(" and ( groupcode in (");
+ sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])));
+ sb.append(")");
+ sb.append(" or id in (");
+ sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])));
+ sb.append("))");
}else{
sb.append(" and id in (");
+ sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])));
+ sb.append(")");
}
- sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])));
- sb.append(")");
List<Map<String,String>> dataMapList=commonsMapper.queryByOnlySqlForMap(sb.toString());
List<ClientBusinessObject> cboList= ChangeMapTOClientBusinessObjects(dataMapList);
@@ -2424,7 +2429,7 @@
List<CodeAllCode>newCodeAllCodeList= codeAllCodeService.selectByWrapper(Wrappers.<CodeAllCode>query().lambda().eq(CodeAllCode::getCreateCodeOid, cbo.getOid()));
log.info("codeCbos size:" + newCodeAllCodeList.size());
if (!CollectionUtils.isEmpty(newCodeAllCodeList)) {
- CodeAllCode codeCbo = codeAllCodeList.get(0);
+ CodeAllCode codeCbo = newCodeAllCodeList.get(0);
log.info("codeCbos code:" + codeCbo.getId());
codeCbo.setLcStatus(CodeDefaultLC.TASK_BACK.getValue());
codeAllCodeList.add(codeCbo);
@@ -2489,6 +2494,9 @@
//鏄惁璋冪敤闆嗗洟鎺ュ彛鐢宠鎺ュ彛
if(isCodeOrGroupCode){
List<String> IdList=resultDataObjectDetailDOs.stream().filter(xMLResultDataObjectDetailDO-> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(xMLResultDataObjectDetailDO.getId())).map(XMLResultDataObjectDetailDO::getId).distinct().collect(Collectors.toList());
+
+
+
if(!CollectionUtils.isEmpty(IdList)) {
this.sendApplyGroupcode(IdList, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue());
}
@@ -2616,7 +2624,21 @@
//娌℃湁闄愬埗鍒嗙被锛屼絾鏄竴涓ā鏉垮彧鍙兘鍦ㄤ竴涓笟鍔$被鍨嬮噷闈紝鎵�浠ョ洿鎺ユ煡璇㈣繖涓笟鍔$被鍨嬪嵆鍙�
if (!CollectionUtils.isEmpty(conditionMap)) {
- final String[] sql = {"select count(*) from " + VciBaseUtil.getTableName(classifyFullInfo.getTopClassifyVO().getBtmTypeId()) + " t where 1 = 1 "};
+ String tableName="";
+ R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId());
+ if(r.isSuccess()) {
+ BtmTypeVO btmTypeVO = r.getData();
+ if (btmTypeVO != null) {
+ tableName = btmTypeVO.getTableName();
+
+ }
+ }
+ if (StringUtils.isBlank(tableName)) {
+ String errormsg="鏍规嵁涓氬姟绫诲瀷涓烘煡璇㈠埌鐩稿叧涓氬姟琛�";
+ errorMap.put(orderDTO.getId(),errorMap.getOrDefault(orderDTO.getId(),"")+errormsg);
+ return;
+ }
+ final String[] sql = {"select count(*) from " + tableName + " t where 1 = 1 "};
conditionMap.forEach((key, value) -> {
if(StringUtils.isBlank(value)||value.equals(QueryOptionConstant.ISNULL)){
sql[0] += " and " + key + " is null ";
@@ -2836,6 +2858,9 @@
ClientBusinessObject sysDataObject= codeSystemObjectMap.get(code);
if(isCodeOrGroupCode){
code=sysDataObject.getAttributeValue("GROUPCODE");
+ if(StringUtils.isBlank(code)){
+ code=sysDataObject.getId();
+ }
}
CodeOrderDTO orderDTO = new CodeOrderDTO();
if(codeDataMap.containsKey(code)){
@@ -2844,11 +2869,7 @@
orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭
orderDTO.setOid(sysDataObject.getOid());//鏁版嵁oid
orderDTO.setLcStatus(rowDatas.getStatus());//鐘舵��
- if(isCodeOrGroupCode){
- orderDTO.setId(sysDataObject.getId());
- }else{
- orderDTO.setId(code);
- }
+ orderDTO.setId(code);
orderDTO.setTs(sysDataObject.getTs());
orderDTO.setBtmname(codeClassifyVO.getBtmname());//涓氬姟绫诲瀷
orderDTO.setDescription("闆嗘垚璋冪敤:鏇存柊");//鏁版嵁鎻忚堪
--
Gitblit v1.9.3