From f4c578e2d3334e8bcb70ac0552a058029c35b5af Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期一, 10 七月 2023 11:18:40 +0800
Subject: [PATCH] 元数据页面修改
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 115 +++++++++++++++++++++++++++++++++++----------------------
1 files changed, 71 insertions(+), 44 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 db221da..3fb88ff 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
@@ -1,13 +1,11 @@
package com.vci.ubcs.code.service.impl;
-import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
import com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant;
@@ -68,7 +66,6 @@
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;
@@ -365,6 +362,9 @@
// 鍥炴敹闇�瑕佷笟鍔℃暟鎹垹闄�
if (CodeDefaultLC.TASK_BACK.getValue().equals(baseModelDTO.getLcStatus())) {
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(baseModelDTO.getBtmname()));
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
commonsMapper.deleteByTaleAndOid(listR.getData().get(0).getTableName(), VciBaseUtil.toInSql(baseModelDTO.getOid()));
} else {
for (BaseModel baseModel : baseModels) {
@@ -646,6 +646,9 @@
// 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()));
// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
final String[] sql = {"select count(*) from " + listR.getData().get(0).getTableName() + " t where 1 = 1 "};
conditionMap.forEach((key, value) -> {
sql[0] += " and " + key + " = " + value;
@@ -1221,7 +1224,8 @@
fieldVO.setTemplet(attrVO.getTableDisplayJs());
}
if (StringUtils.isBlank(fieldVO.getTemplet()) && VciFieldTypeEnum.VTBoolean.name().equalsIgnoreCase(attrVO.getAttributeDataType())) {
- fieldVO.setTemplet("function(d){return $webUtil.formateBoolean(d." + fieldVO.getField() + ");}");
+ fieldVO.setTemplet("function(row,column){return row[column.property]=='true' || row[column.property]=='1'?'鏄�':'鍚�'}");
+// fieldVO.setTemplet("function(d){return $webUtil.formateBoolean(d." + fieldVO.getField() + ");}");
}
fieldVO.setOptionJsMap(eventJsMap);
fieldVO.setStyle(attrVO.getTableDisplayStyle());
@@ -1595,6 +1599,9 @@
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(referVO.getReferType()));
// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
String referTable = listR.getData().get(0).getTableName();
// String referTable = "pl_code_classify";
String referTableNick = attrVO.getId() + "0";
@@ -1691,6 +1698,9 @@
}
// String tableName = VciBaseUtil.getTableName(btmType);
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
String tableName = listR.getData().get(0).getTableName();
String sql = "select " + selectFieldList.stream().map(s -> (s.contains(".") ? s : ("t." + s))).collect(Collectors.joining(","))
@@ -1865,7 +1875,7 @@
// String selectKey = referFieldMap.get(key);
// return getSqlByValue(selectKey, value, null, btmType);
// } else {
- return getSqlByValue(key, value, attrVOMap, btmType);
+ return getSqlByValue(key, value, attrVOMap, btmType);
// }
}
}
@@ -1920,7 +1930,7 @@
}
if (field.contains(".") && attrVOMap != null && attrVOMap.containsKey(field.split("\\.")[0].toLowerCase(Locale.ROOT))) {
//鏄弬鐓�
- return "'" + value + "'";
+ return "'" + value + "'";
} else {
return value;
}
@@ -1944,13 +1954,13 @@
|| VciFieldTypeEnum.VTInteger.equals(fieldTypeEnum)) {
return value;
} else {
- return "'" + value + "'";
+ return "'" + value + "'";
}
} else {
if ((value.startsWith("(") && value.endsWith(")")) || (value.startsWith("'") && value.endsWith("'"))) {
return value;
}
- return "'" + value + "'";
+ return "'" + value + "'";
}
}
@@ -2229,7 +2239,7 @@
// baseMapper.deleteBatchIds(cboList);
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getCurrentClassifyVO().getBtmtypeid()));
- if (listR.getData().size() == 0) {
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
commonsMapper.deleteByTaleAndOid(listR.getData().get(0).getTableName(),
@@ -2435,27 +2445,27 @@
*/
@Override
public R markDataPassing(String oid, String btmName, Boolean pass) {
- VciBaseUtil.alertNotNull(oid, "涓氬姟鏁版嵁涓婚敭", btmName, "涓氬姟绫诲瀷", pass, "鏍囪绫诲瀷");
- boolean flag = true;
- try {
- List<BaseModel> datas = selectByTypeAndOid(btmName, oid);
- if (datas.size() == 0) {
- return R.fail(DATA_OID_NOT_EXIST);
- }
- datas.stream().forEach(data->data.getData().put("PASSING",String.valueOf(pass)));
- R r = updateBatchByBaseModel(btmName, datas);
- if(!r.isSuccess()){
- flag = false;
- }
- } catch (Exception e) {
- flag = false;
- e.printStackTrace();
- }
- if (flag) {
- return R.success("鏍囪鎴愬姛锛�");
- } else {
- return R.fail("鏍囪澶辫触锛�");
- }
+ VciBaseUtil.alertNotNull(oid, "涓氬姟鏁版嵁涓婚敭", btmName, "涓氬姟绫诲瀷", pass, "鏍囪绫诲瀷");
+ boolean flag = true;
+ try {
+ List<BaseModel> datas = selectByTypeAndOid(btmName, oid);
+ if (datas.size() == 0) {
+ return R.fail(DATA_OID_NOT_EXIST);
+ }
+ datas.stream().forEach(data -> data.getData().put("PASSING", String.valueOf(pass)));
+ R r = updateBatchByBaseModel(btmName, datas);
+ if (!r.isSuccess()) {
+ flag = false;
+ }
+ } catch (Exception e) {
+ flag = false;
+ e.printStackTrace();
+ }
+ if (flag) {
+ return R.success("鏍囪鎴愬姛锛�");
+ } else {
+ return R.fail("鏍囪澶辫触锛�");
+ }
}
/**
@@ -2767,18 +2777,18 @@
}
List<String> oidList = VciBaseUtil.str2List(conditionMap.get("oid"));
- List<BaseModel> cbos = selectByTypeAndOid(btmType,conditionMap.get("oid"));
+ List<BaseModel> cbos = selectByTypeAndOid(btmType, conditionMap.get("oid"));
if (CollectionUtils.isEmpty(cbos)) {
throw new VciBaseException("鏈壘鍒颁笟鍔℃暟鎹�");
}
- BaseModel cbo = cbos.get(0);
+ BaseModel cbo = cbos.get(0);
String templateOid = cbo.getData().get("CODETEMPLATEOID");
QueryWrapper<CodeClassifyTemplate> codeClassifyTemplateWrapper = new QueryWrapper<>();
codeClassifyTemplateWrapper.eq("oid", templateOid);
List<CodeClassifyTemplate> templateDOList = templateService.list(codeClassifyTemplateWrapper);
- QueryWrapper<CodeClassifyTemplateAttr> codeClassifyTemplateAttrWrapper = new QueryWrapper<>();
+ QueryWrapper<CodeClassifyTemplateAttr> codeClassifyTemplateAttrWrapper = new QueryWrapper<>();
codeClassifyTemplateAttrWrapper.eq("CLASSIFYTEMPLATEOID", templateOid);
List<CodeClassifyTemplateAttr> attrDOList = codeClassifyTemplateAttrService.list(codeClassifyTemplateAttrWrapper);
@@ -3166,7 +3176,7 @@
public Integer insertBatchByType(String btmType, List<BaseModel> baseModels) {
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
- if (listR.getData().size() == 0) {
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
//灏哹ean杞负map,mybatis缁熶竴澶勭悊
@@ -3193,7 +3203,7 @@
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
- if (listR.getData().size() == 0) {
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
//鏌ヨ鏁版嵁
@@ -3251,6 +3261,9 @@
*/
public BaseModel createBaseModel(String boName) {
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(boName));
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
String userName = String.valueOf(AuthUtil.getUser().getUserId());
BaseModel bo = new BaseModel();
// bo.setOid(VciBaseUtil.getPk());
@@ -3318,7 +3331,7 @@
public R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) {
//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
- if (listR.getData().size() == 0) {
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
//灏哹ean杞负map,mybatis缁熶竴澶勭悊
@@ -3348,10 +3361,16 @@
* @return 鍒楄〃鏁版嵁
*/
@Override
- public IPage<BaseModel> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject) throws VciBaseException{
- //checkReferConfig(referConfigVO);
+ public IPage<BaseModel> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject) throws VciBaseException {
+ //checkReferConfig(referConfigVO);
//浣跨敤涓氬姟绫诲瀷鏌ヨ
R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getAllAttributeByBtmId(referConfigVO.getReferType());
+ if (allAttributeByBtmId.getCode() != 200) {
+ throw new ServiceException("涓氬姟绫诲瀷feign鎺ュ彛璋冪敤閿欒锛�");
+ }
+ if (Func.isEmpty(allAttributeByBtmId.getData())) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
BtmTypeVO btmTypeVO = allAttributeByBtmId.getData();
/**
* 鍔犱笂鏌ヨ鏈�鏂扮増娆�
@@ -3369,10 +3388,10 @@
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(referConfigVO.getReferType()));
if (listR.getCode() != 200) {
- throw new ServiceException(Func.isNotBlank(listR.getMsg()) ? listR.getMsg():"涓氬姟绫诲瀷feign鎺ュ彛璋冪敤閿欒锛�");
+ throw new ServiceException(Func.isNotBlank(listR.getMsg()) ? listR.getMsg() : "涓氬姟绫诲瀷feign鎺ュ彛璋冪敤閿欒锛�");
}
if (listR.getData().isEmpty()) {
- throw new VciBaseException(Func.isNotBlank(listR.getMsg()) ? listR.getMsg():"浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ throw new VciBaseException(Func.isNotBlank(listR.getMsg()) ? listR.getMsg() : "浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
}
String namesql = "";
if (StringUtils.isNotBlank(baseQueryObject.getConditionMap().get("name"))) {
@@ -3392,13 +3411,18 @@
if (StringUtils.isNotBlank(baseQueryObject.getConditionMap().get("lcstatus"))) {
lcstatusSql = "lcstatus =" + VciBaseUtil.toInSql(baseQueryObject.getConditionMap().get("lcstatus"));
}
+ String 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
+ lcstatusSql + namesql + codesql + ") t where rownum <=" + num1 + ") where rn >=" + num2
);
List<BaseModel> baseModels = new ArrayList<>();
@@ -3442,12 +3466,12 @@
}
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
+ lcstatusSql + namesql + codesql
);
- IPage<BaseModel> objectDataGrid = new Page<>();
+ IPage<BaseModel> objectDataGrid = new Page<>();
objectDataGrid.setPages(baseQueryObject.getPage());
- objectDataGrid.setCurrent(baseQueryObject.getPage());
+ objectDataGrid.setCurrent(baseQueryObject.getPage());
objectDataGrid.setRecords(baseModels);
objectDataGrid.setSize(baseQueryObject.getLimit());
objectDataGrid.setTotal(total);
@@ -3579,6 +3603,9 @@
toBo.setVersionRule(fromBo.getVersionRule());
// RevisionValueObject rvObj = this.getNextRevision(fromBo.getBtmName(), fromBo.getNameoid(), item.revRuleName, item.revInput, revisionVal);
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(fromBo.getBtmname()));
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
Map<String, Object> nextRevision = commonsMapper.getNextRevision(listR.getData().get(0).getTableName(), fromBo.getNameOid());
toBo.setRevisionSeq(Integer.parseInt(nextRevision.get("REVISIONSEQ").toString()));
toBo.setRevisionValue(nextRevision.get("REVISIONVAL").toString());
--
Gitblit v1.9.3