Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue
@@ -343,7 +343,7 @@ export default { name: "formulaEditor", props: { // å¯¹è¯æ¡æ¾ç¤ºéèæ§å¶ // å¯¹è¯æ¡æ¾ç¤ºéèæ§å¶ visible: { type: "Boolean", default: false, Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
@@ -77,12 +77,13 @@ //import func from "@/util/func"; import { getReferConfigPage } from "@/api/code/codeReferConfig"; export default { name: "referConfigDialog", name: "referConfigCrudDialog", props: { }, data() { return{ isShowReferConfigCrud:false, isShowReferConfigCrud: false, referConfigCrudOption: { border: true, height: '45vh', @@ -468,6 +469,14 @@ ], } }, watch: { // çå¬ç¶ç»ä»¶ä¼ ççªå£æ¾ç¤ºéèçå¼ isShowReferConfigCrud (){ if(this.isShowReferConfigCrud){ this.referConfigOnload(); } } }, methods: { // ä¸ä¸æ¥è¦è¿è¡çæä½éæ©å¹¶ä¿åæéæ©å¹¶ä¿®æ¹ Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,97 @@ <template> <div v-if="display"> <!-- 第äºå±å¯¹è¯æ¡,èªå®ä¹åç §é ç½®Formç»ä»¶ --> <refer-config-form-dialog ref="referConfigFormDialog" @echoReferConfig="echoReferConfig"> </refer-config-form-dialog> <!-- 第äºå±å¯¹è¯æ¡,ç´æ¥éæ©åç §é ç½®crudç»ä»¶ --> <refer-config-crud-dialog ref="referConfigCrudDialog" @openReconfigInterFace="openReconfigInterFace" @echoReferConfig="echoReferConfig"> </refer-config-crud-dialog> </div> </template> <script> import referConfigFormDialog from "./referConfigFormDialog.vue"; import referConfigCrudDialog from "./referConfigCrudDialog.vue"; import func from "@/util/func"; export default { name: "referConfigDialog", props: ["referConfigOption","display"], components: {referConfigFormDialog, referConfigCrudDialog}, data() { return { }; }, watch:{ referConfigOption (){ if(func.notEmpty(this.referConfigOption.referConfig) || func.notEmpty(this.referConfigOption.referBtmId)){ this.openReconfigInterFace(this.referConfigOption); }else{ this.openTipsChooseOrCust(); } } }, methods: { echoReferConfig(value) { this.emitData = value; }, // å½åå·²åå¨ç¼è¾è¿çåç §é ç½®ï¼æä»¥ç´æ¥æå¼åç §é ç½®çé¢ openReconfigInterFace(preReferConfigForm){ const form = preReferConfigForm; let data = { referTypeName: form.referBtmName, referType: form.referBtmId, } if(this.referConfigOption.referConfig){ // ç¼è¾ç 段æ¶referConfigå¯è½ä¼å¨ä¸ºãåç §å¼ç¨çä¸å¡ç±»åãéåå¼ä¹åæ¹å let referConfigValue =JSON.parse(form.referConfig); if(referConfigValue.referType != form.referBtmId){ referConfigValue.referType = form.referBtmId || ''; referConfigValue.referTypeName = form.referBtmName || form.referBtmId; this.referConfigOption.referConfig = JSON.stringify(referConfigValue); } this.$set(data,"referConfig",this.referConfigOption.referConfig) } // 馿¬¡ç¹å»æ¥éæªå®ä¹ this.$nextTick(()=>{ this.$refs.referConfigFormDialog.isShowReferConfigForm = true; this.$refs.referConfigFormDialog.initPageData(data); }) }, // æå¼èªå®ä¹åç §é ç½®æç´æ¥éæ©åç §é ç½®çæç¤ºæ¡ openTipsChooseOrCust(){ this.$confirm('è¯·éæ©åç §é ç½®çå®ä¹æ¹å¼ï¼','åç §é ç½®çæ¹å¼', { distinguishCancelAndClose: true, closeOnClickModal: false, confirmButtonText: 'èªå®ä¹åç §é ç½®', cancelButtonText: 'ç´æ¥éæ©åç §é ç½®' }) .then(() => { // æå¼èªå®åç §é ç½®å¯¹è¯æ¡ this.$refs.referConfigFormDialog.isShowReferConfigForm = true; }) .catch(action => { if (action === "cancel") { // æå¼ç´æ¥éæ©åç §é ç½®å¯¹è¯æ¡ this.$refs.referConfigCrudDialog.isShowReferConfigCrud = true; } }); }, /* å¼ç¨ç 段åç §é ç½®,åç»ä»¶å¡«å®åç §é ç½®ä¹åå 容忾æ¶è°ç¨ */ echoReferConfig(content){ this.$emit('setReferConfigValue', content) // 触åupdate:dataå°åç»ä»¶å¼ä¼ éç»ç¶ç»ä»¶ }, }, } </script> <style> </style> Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
@@ -6,6 +6,7 @@ :visible.sync="isShowReferConfigForm" width="90%" id="refer-config-form" destroy-on-close @close="recoveryDataAndForm('initData')" style="height: 115vh; margin-top: -14vh; overflow-y: hidden"> <div style="width: 100%; overflow-y: auto; height: 70vh"> @@ -234,8 +235,9 @@ <script> import func from "@/util/func"; export default { name: "referConfigDialog", name: "referConfigFormDialog", props: { }, data() { let element = ''; @@ -244,6 +246,7 @@ labelWidth: '150', // æ é¢å®½åº¦ isShowReferConfigForm: false, // 第ä¸å±å¯¹è¯æ¡æ¾ç¤ºéèæ§å¶ referTypeIsReadOnly: false, // 表å对象 form: { referTypeName: '', //æ¾ç¤ºçå¼ @@ -419,7 +422,7 @@ },{ value: "_notlike", label: "ä¸å å«", }, { value: 'equal', label: 'çäº' value: '_equal', label: 'çäº' }, { value: '_notequal', label: 'ä¸çäº' }, { @@ -899,10 +902,6 @@ this.element = document.getElementById('refer-config-form'); this.element.addEventListener("click", (e) => { //<table cellspacing="0" cellpadding="0" border="0" class="el-table__body" style="width: 911px;"> //console.log(e.target); // console.log(this.$refs.crudAttr); // console.log(this.$refs.crudAttr.$el.contains(e.target)); //console.log(!this.$refs.crudAttr.$el.contains(e.target) && this.preClickAttrRow != null); if (!this.$refs.crudAttr.$el.contains(e.target) && this.preClickAttrRow != '') { this.preClickAttrRow.$cellEdit = false; @@ -917,58 +916,16 @@ // è´¼åï¼åæ¢ç±»åæ¶è¡¨æ ¼ï¼éèåæ¾ç¤ºå°±ä¼åºç°è¡¨æ ¼éä½é®é¢ï¼ 'form.type'(value) { this.onloadAttrData(); }, // çå¬ç¶ç»ä»¶ä¼ ççªå£æ¾ç¤ºéèçå¼ isShowReferConfigForm (){ if(this.isShowReferConfigForm){ this.onloadAttrData(); } } }, methods: { // åå»è¡¨æ ¼å®ç°è¡¨æ ¼è¡ç¼è¾ clickAttrEdit(row, column, event){ if(this.preClickAttrRow && this.preClickAttrRow != row){ //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]); this.codeShowFieldConfigVOS[this.preClickAttrRow.$index].$cellEdit = false; } row.$cellEdit = true; this.preClickAttrRow = row; }, // 屿§è¡¨æ ¼è¡ç¼è¾å¤±å»ç¦ç¹æ¶ä¿åæ¹æ³ // updateAttrBlur(value){ //console.log(this.codeShowFieldConfigVOS[0]); // }, // åå»è¡¨æ ¼å®ç°è¡¨æ ¼è¡ç¼è¾ clickAddSearchCondtionEdit(row, column, event){ if(this.preClickAddSearchConditionRow && this.preClickAddSearchConditionRow != row){ //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]); this.form.codeSrchCondConfigVOS[this.preClickAddSearchConditionRow.$index].$cellEdit = false; } row.$cellEdit = true; this.preClickAddSearchConditionRow = row; }, //ä¸ä¸ä¸ªé¡µé¢å·²ç»éä¸åç §åºç¨çä¸å¡ç±»åçæ åµï¼åä¸ä¸æ¬¡å·²ç»é ç½®è¿åç §é ç½®çæ åµä¸è¿è¡é¡µé¢åå§å渲æ initPageData(val){ //console.log(val); if(func.notEmpty(val.referConfig)){ this.form = JSON.parse(val.referConfig); // console.log(this.form); this.form.isPersistence = this.form.isPersistence == 'true' ? true:false; // åç §å¼ç¨çä¸å¡ç±»åä¸å¯é this.referTypeIsReadOnly = true; if((this.form.type == 'default' || this.form.type == 'grid') && (this.form.codeShowFieldConfigVOS != undefined && this.form.codeShowFieldConfigVOS.length > 0)){ this.codeShowFieldConfigVOS = this.form.codeShowFieldConfigVOS; } return; }else { this.onloadAttrData() } if(func.notEmpty(val.referType)){ this.form.referTypeName = val.referTypeName; this.form.referType = val.referType; this.referTypeIsReadOnly = true; return; } //console.log(localStorage.getItem("userId")); }, // éæ©å®åç §é ç½®ä¹åç¹å»ä¿åæé®è§¦å async selectedListReferConfig(){ // æ è®°ææè¡¨åæ¯å¦éè¿æ ¡éªçåé @@ -996,6 +953,52 @@ this.isShowReferConfigForm = false; } }, // åå»è¡¨æ ¼å®ç°è¡¨æ ¼è¡ç¼è¾ clickAttrEdit(row, column, event){ if(this.preClickAttrRow && this.preClickAttrRow != row){ //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]); this.codeShowFieldConfigVOS[this.preClickAttrRow.$index].$cellEdit = false; } row.$cellEdit = true; this.preClickAttrRow = row; }, // 屿§è¡¨æ ¼è¡ç¼è¾å¤±å»ç¦ç¹æ¶ä¿åæ¹æ³ // updateAttrBlur(value){ //console.log(this.codeShowFieldConfigVOS[0]); // }, // åå»è¡¨æ ¼å®ç°è¡¨æ ¼è¡ç¼è¾ clickAddSearchCondtionEdit(row, column, event){ if(this.preClickAddSearchConditionRow && this.preClickAddSearchConditionRow != row){ //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]); this.form.codeSrchCondConfigVOS[this.preClickAddSearchConditionRow.$index].$cellEdit = false; } row.$cellEdit = true; this.preClickAddSearchConditionRow = row; }, //ä¸ä¸ä¸ªé¡µé¢å·²ç»éä¸åç §åºç¨çä¸å¡ç±»åçæ åµï¼åä¸ä¸æ¬¡å·²ç»é ç½®è¿åç §é ç½®çæ åµä¸è¿è¡é¡µé¢åå§å渲æ initPageData(val){ // console.log(val.referConfig); if(func.notEmpty(val.referConfig)){ this.form = JSON.parse(val.referConfig); // åç §å¼ç¨çä¸å¡ç±»åä¸å¯é // this.referTypeIsReadOnly = true; if((this.form.type == 'default' || this.form.type == 'grid') && (this.form.codeShowFieldConfigVOS != undefined && this.form.codeShowFieldConfigVOS.length > 0)){ this.codeShowFieldConfigVOS = this.form.codeShowFieldConfigVOS; } return; }else { this.onloadAttrData() } if(func.notEmpty(val.referType)){ this.form.referTypeName = val.referTypeName; this.form.referType = val.referType; this.referTypeIsReadOnly = true; return; } //console.log(localStorage.getItem("userId")); }, /** å ¶å®éå屿§è¡¨æ ¼çé»è®¤æ°æ®ä¸éè¦å è½½ï¼ ä½æ¯å¼¹çªæå¼ä¼æè¡¨æ ¼éè¡é®é¢æä»¥éè¦å¨è¿è°ç¨doLayoutæ¹æ³*/ onloadAttrData(){ @@ -1022,9 +1025,9 @@ $cellEdit: false } ]; this.$nextTick(() => { this.$refs.crudAttr.doLayout() }) // this.$nextTick(() => { // this.$refs.crudAttr.doLayout() // }) }, // 屿§éæ©è¡¨æ ¼ä¸çç§»é¤æé®åè½ removeCurrentRow(row,condition){ @@ -1198,7 +1201,7 @@ this.form.codeSrchCondConfigVOS.push( { filterField: item.id, filterType: 'equal', filterType: '_equal', filterTypeText: item.name, filterValue: '', $cellEdit: false Source/UBCS-WEB/src/main.js
@@ -38,8 +38,7 @@ import TemplatePro from "@/components/Tree/TemplatePro" import attrCrud from "@/components/Tree/attrCrud" import formulaEditor from "@/components/code-dialog-page/formulaEditor" import referConfigCrudDialog from "@/components/code-dialog-page/referConfigCrudDialog" import referConfigFormDialog from "@/components/code-dialog-page/referConfigFormDialog" import referConfigDialog from "@/components/code-dialog-page/referConfigDialog" import referBtmTypeCrudDialog from "@/components/code-dialog-page/referBtmTypeCrudDialog" import referSelectBtmAttrDialog from "@/components/code-dialog-page/referSelectBtmAttrDialog" import advancedQuery from "@/components/advanced-query/advancedQuery" @@ -90,8 +89,7 @@ Vue.component('classifyTreeform',classifyTreeform) Vue.component('TemplatePro',TemplatePro) Vue.component('formulaEditor',formulaEditor) Vue.component('referConfigCrudDialog',referConfigCrudDialog) Vue.component('referConfigFormDialog',referConfigFormDialog) Vue.component('referConfigDialog',referConfigDialog) Vue.component('advancedQuery',advancedQuery) Vue.component('businessAdd',businessAdd) Vue.component('attrCrud',attrCrud) Source/UBCS-WEB/src/views/code/code.vue
@@ -767,8 +767,8 @@ <formula-editor ref="formulaEditor" @updateFormulaContent="updateFormulaContent" :thisSceneTableData="formulaEditorParams.thisSceneTableData" :visible.sync="formulaEditorParams.formulaEditorSettingBox" :thisSceneTableData="formulaEditorParams.thisSceneTableData" :systemVariableTableData="formulaEditorParams.systemVariableTableData"> </formula-editor> @@ -807,18 +807,12 @@ @echoReferBtmType="echoReferBtmType"> </refer-btm-type-crud-dialog> <!-- 第äºå±å¯¹è¯æ¡,èªå®ä¹åç §é ç½®Formç»ä»¶ --> <refer-config-form-dialog ref="referConfigFormDialog" @echoReferConfig="echoReferConfig"> </refer-config-form-dialog> <!-- 第äºå±å¯¹è¯æ¡,ç´æ¥éæ©åç §é ç½®crudç»ä»¶ --> <refer-config-crud-dialog ref="referConfigCrudDialog" @openReconfigInterFace="openReconfigInterFace" @echoReferConfig="echoReferConfig"> </refer-config-crud-dialog> <!-- 第äºå±å¯¹è¯æ¡,åç §é ç½®ç»ä»¶ --> <refer-config-dialog :display="referConfigVisble" @setReferConfigValue="setReferConfigValue" :referConfigOption="referConfigOption"> </refer-config-dialog> </el-dialog> @@ -852,7 +846,6 @@ import parentClassifyParentOption from "@/const/code/parentClassifyParentOptionDialog"; import fixedValueOption from "@/const/code/fixedValueMgrDialog"; import {mapGetters} from "vuex"; import func from "@/util/func"; import {getByRoleUserList} from "@/api/system/user"; export default { @@ -963,7 +956,6 @@ }, classisyValueTreeOption: classisyValueTreeOption, //åç±»ç æ®µæ ç¸å ³é 置项 classifyValueTreeData: [], //currentSelectClsValueTreeData: '', //å½åéä¸çåç±»ç 弿 èç¹ /* ä¸ºå±æ§éåå¼çªå£æ¾ç¤ºæå¼æ§å¶åé */ isShowSelectAttrOption: false, @@ -1112,6 +1104,10 @@ //conditionMapParams: {}, }, //å¼ç¨ç 段ä¸åç §é ç½®ç»ä»¶ç¸å ³åæ° referConfigOption: {}, referConfigVisble: false, }; }, computed: { @@ -1130,6 +1126,13 @@ }, mounted(){ this.loadTotalEnum(); }, // è§£å³è¡¨æ ¼éè¡é®é¢ activated () { this.$nextTick(() => { this.$refs.crud.doLayout(); this.$refs.crudBasic.doLayout(); }) }, methods: { @@ -1182,7 +1185,7 @@ this.form.getValueClass = content; }, /* å¼ç¨ç 段åç §é ç½®,åç»ä»¶å¡«å®åç §é ç½®ä¹åå 容忾æ¶è°ç¨ */ echoReferConfig(content){ setReferConfigValue(content){ // console.log(content.referTypeName); this.form.referBtmId = content.referType || ''; this.form.referBtmName = content.referTypeName || content.referType; @@ -2516,7 +2519,6 @@ // æä½åºç¡ç æ®µä¸æç´¢æ¸ ç©ºçæé®çæ¾ç¤º/éè hideBasicTable(hideBoolean){ this.$refs.crudBasic.option.refreshBtn = hideBoolean; this.$refs.crudBasic.option.columnBtn = hideBoolean; this.$refs.crudBasic.option.column[0].search = hideBoolean; this.$refs.crudBasic.option.column[1].search = hideBoolean; if(!hideBoolean){ @@ -2550,56 +2552,14 @@ // è°ç¨åç»ä»¶å·æ°è¡¨æ ¼æ°æ® this.$refs[this.referBtmDialogParams.ref].referBtmOnLoad(); }else if(condition === 'referConfig'){ if(func.notEmpty(this.form.referConfig) || func.notEmpty(this.form.referBtmName)){ this.openReconfigInterFace(this.form); }else{ this.openTipsChooseOrCust(); this.referConfigVisble = true; this.referConfigOption = { referBtmName: this.form.referBtmName, referBtmId: this.form.referBtmId, referConfig: this.form.referConfig || '', } this.$refs.referConfig.$el.querySelector('input').blur(); } }, // å½åå·²åå¨ç¼è¾è¿çåç §é ç½®ï¼æä»¥ç´æ¥æå¼åç §é ç½®çé¢ openReconfigInterFace(preReferConfigForm){ const form = preReferConfigForm; // ç¼è¾ç 段æ¶referConfigå¯è½ä¼å¨ä¸ºãåç §å¼ç¨çä¸å¡ç±»åãéåå¼ä¹åæ¹å let referConfigValue =JSON.parse(form.referConfig); if(referConfigValue.referType != form.referBtmId){ referConfigValue.referType = form.referBtmId || ''; referConfigValue.referTypeName = form.referBtmName || form.referBtmId; this.form.referConfig = JSON.stringify(referConfigValue); } let data = { referTypeName: form.referBtmName, referType: form.referBtmId, referConfig: this.form.referConfig, } this.$refs.referConfigFormDialog.isShowReferConfigForm = true; this.$refs.referConfigFormDialog.initPageData(data); }, // æå¼èªå®ä¹åç §é ç½®æç´æ¥éæ©åç §é ç½®çæç¤ºæ¡ openTipsChooseOrCust(){ this.$confirm('è¯·éæ©åç §é ç½®çå®ä¹æ¹å¼ï¼','åç §é ç½®çæ¹å¼', { distinguishCancelAndClose: true, closeOnClickModal: false, confirmButtonText: 'èªå®ä¹åç §é ç½®', cancelButtonText: 'ç´æ¥éæ©åç §é ç½®' }) .then(() => { // æå¼èªå®åç §é ç½®å¯¹è¯æ¡ this.$refs.referConfigFormDialog.isShowReferConfigForm = true; // è¡¨æ ¼éè¡çé®é¢ this.$refs.referConfigFormDialog.onloadAttrData(); }) .catch(action => { if (action === "cancel") { // æå¼ç´æ¥éæ©åç §é ç½®å¯¹è¯æ¡ this.$refs.referConfigCrudDialog.isShowReferConfigCrud = true; this.$refs.referConfigCrudDialog.referConfigOnload(); } //console.log(action); }); // 让åç §é ç½®è¾å ¥æ¡å¤±å»ç¦ç¹ï¼å¦å该æç¤ºæ¡æ æ³è¢«å ³é this.$refs.referConfig.$el.querySelector('input').blur(); }, // ç¹å»è¾å ¥æ¡çÃå·ï¼æ¸ 空è¾å ¥æ¡ä¸çå 容 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
@@ -148,10 +148,10 @@ /** * 使ç¨è§åç主é®è·å对åºçç æ®µå 容 * @param conditionMap è§åçå 容 * @param ruleOid è§åçå 容 * @return ç æ®µçå 容 */ List<CodeBasicSecVO> listCodeBasicSecByRuleOid(Map<String,Object> conditionMap); List<CodeBasicSecVO> listCodeBasicSecByRuleOid(String ruleOid); /** * æ¹éæ°æ®å¯¹è±¡è½¬æ¢ä¸ºæ¾ç¤ºå¯¹è±¡ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
@@ -2,6 +2,7 @@ import com.alibaba.cloud.commons.lang.StringUtils; 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.core.toolkit.Wrappers; @@ -762,17 +763,18 @@ /** * 使ç¨è§åç主é®è·å对åºçç æ®µå 容 * * @param conditionMap è§åçå 容 * @param ruleOid è§åçå 容 * @return ç æ®µçå 容 */ @Override public List<CodeBasicSecVO> listCodeBasicSecByRuleOid(Map<String,Object> conditionMap)throws ServiceException { if(Func.isBlank(conditionMap.getOrDefault("pkCodeRule","").toString())){ public List<CodeBasicSecVO> listCodeBasicSecByRuleOid(String ruleOid)throws ServiceException { if(StringUtils.isBlank(ruleOid)){ return new ArrayList<>(); } QueryWrapper<CodeBasicSec> wrapper = UBCSCondition.getQueryWrapper(conditionMap, CodeBasicSec.class); wrapper.orderByAsc("orderNum"); List<CodeBasicSec> secDOList = baseMapper.selectList(wrapper);//.selectByCondition(conditionMap, pageHelper); LambdaQueryWrapper<CodeBasicSec> wrapper = Wrappers.<CodeBasicSec>query().lambda() .eq(CodeBasicSec::getPkCodeRule, ruleOid) .orderByAsc(CodeBasicSec::getOrderNum); List<CodeBasicSec> secDOList = baseMapper.selectList(wrapper);// return codeBasicSecDO2VOs(secDOList,true); } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
@@ -17,6 +17,7 @@ package com.vci.ubcs.code.service.impl; import com.alibaba.cloud.commons.lang.StringUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -498,12 +499,14 @@ */ @Override public R checkLikeCodeRule(String oid) throws VciBaseException { CodeRuleVO codeRuleVO = getObjectByOid(oid); // 1ãå»ææµæ°´ç 段ï¼è®¡ç®åºå ¶ä»ç 段å¼é¿åº¦ï¼å¨å·²åå¸çè§å䏿¯å¯¹åºé¿åº¦ä¸è´çç¼ç è§å HashMap<String, Object> condtionMap = new HashMap<>(); condtionMap.put("pkCodeRule_equal",codeRuleVO.getOid()); condtionMap.put("secType_notequal", CodeSecTypeEnum.CODE_SERIAL_SEC); codeRuleVO.setSecVOList(codeBasicSecService.listCodeBasicSecByRuleOid(condtionMap)); // 1ãæ¥è¯¢åºå½åè¦åå¸çè§å CodeRuleVO codeRuleVO = getObjectHasSecByOid(oid); // 2ãæ¾åºä¸å½ååå¸çè§åç æ®µé¡ºåºä¸è´çè§å if(Func.isNotEmpty(codeRuleVO.getSecVOList())){ String secType = codeRuleVO.getSecVOList().stream().map(CodeBasicSecVO::getSecType).collect(Collectors.joining(",")); } // TODO å¾ å®å @@ -555,9 +558,7 @@ //妿ælcstatusçç±»çè¯ vo.setLcStatusText(CodeRuleLC.getTextByValue(vo.getLcStatus())); if (hasSec) { Map<String, Object> condtionMap = new HashMap<>(); condtionMap.put("pkCodeRule",vo.getOid()); List<CodeBasicSecVO> codeBasicSecVOS = codeBasicSecService.listCodeBasicSecByRuleOid(condtionMap); List<CodeBasicSecVO> codeBasicSecVOS = codeBasicSecService.listCodeBasicSecByRuleOid(vo.getOid()); //æ¥è¯¢ç 段 vo.setSecVOList(codeBasicSecVOS); } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -963,13 +963,16 @@ CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyOid); List<UIFormItemVO> itemVOS = new ArrayList<>(); Map<String, List<CodeClassifyTemplateAttrVO>> attrGroupMap = templateVO.getAttributes().stream(). filter(s -> StringUtils.isNotBlank(s.getAttributeGroup())).collect(Collectors.groupingBy(s -> s.getAttributeGroup())); templateVO.getAttributes().forEach(attrVO -> { UIFormItemVO formItemVO = templateAttr2FormField(attrVO, templateVO.getBtmTypeId()); itemVOS.add(formItemVO); }); Map<String, List<CodeClassifyTemplateAttrVO>> attrGroupMap = new HashMap<>(); if (Func.isNotEmpty(templateVO.getAttributes())) { attrGroupMap = templateVO.getAttributes().stream(). filter(s -> StringUtils.isNotBlank(s.getAttributeGroup())).collect(Collectors.groupingBy(s -> s.getAttributeGroup())); templateVO.getAttributes().forEach(attrVO -> { UIFormItemVO formItemVO = templateAttr2FormField(attrVO, templateVO.getBtmTypeId()); itemVOS.add(formItemVO); }); } //å¤ç屿§åç» if (!CollectionUtils.isEmpty(attrGroupMap)) { //æç §åç»ç屿§æåï¼æ¾å°æ¯ä¸ä¸ªåç»ç第ä¸ä¸ªå±æ§ @@ -1440,26 +1443,32 @@ } //å 转æ¢ä¸ä¸æ¶é´æ ¼å¼ List<String> finalOnlySelectAttrIdList = onlySelectAttrIdList.stream().collect(Collectors.toList()); List<CodeClassifyTemplateAttrVO> dateFormatAttrVOs = templateVO.getAttributes().stream().filter( s -> StringUtils.isNotBlank(s.getCodeDateFormat()) && (finalOnlySelectAttrIdList.size() == 0 || finalOnlySelectAttrIdList.contains(s.getId().toLowerCase(Locale.ROOT))) ).collect(Collectors.toList()); //æä¸¾çå 容 List<CodeClassifyTemplateAttrVO> enumAttrVOs = templateVO.getAttributes().stream().filter( s -> (StringUtils.isNotBlank(s.getEnumId()) || StringUtils.isNotBlank(s.getEnumString())) && (finalOnlySelectAttrIdList.size() == 0 || finalOnlySelectAttrIdList.contains(s.getId().toLowerCase(Locale.ROOT))) ).collect(Collectors.toList()); List<CodeClassifyTemplateAttrVO> dateFormatAttrVOs = new ArrayList<>(); List<CodeClassifyTemplateAttrVO> enumAttrVOs = new ArrayList<>(); if (Func.isNotEmpty(templateVO.getAttributes())) { dateFormatAttrVOs = templateVO.getAttributes().stream().filter( s -> StringUtils.isNotBlank(s.getCodeDateFormat()) && (finalOnlySelectAttrIdList.size() == 0 || finalOnlySelectAttrIdList.contains(s.getId().toLowerCase(Locale.ROOT))) ).collect(Collectors.toList()); //æä¸¾çå 容 enumAttrVOs = templateVO.getAttributes().stream().filter( s -> (StringUtils.isNotBlank(s.getEnumId()) || StringUtils.isNotBlank(s.getEnumString())) && (finalOnlySelectAttrIdList.size() == 0 || finalOnlySelectAttrIdList.contains(s.getId().toLowerCase(Locale.ROOT))) ).collect(Collectors.toList()); } List<String> userIds = new ArrayList<>(); dataMap.stream().forEach(data -> { List<CodeClassifyTemplateAttrVO> finalDateFormatAttrVOs = dateFormatAttrVOs; List<CodeClassifyTemplateAttrVO> finalEnumAttrVOs = enumAttrVOs; dataMap.stream().forEach(data -> { //å¤çæ¶é´ if (!form) { //表åçæ¶ååªè½ç¨ç»ä¸çæ¶é´æ ¼å¼ wrapperDateFormat(dateFormatAttrVOs, data); wrapperDateFormat(finalDateFormatAttrVOs, data); } //å¤çæä¸¾ wrapperEnum(enumAttrVOs, data); wrapperEnum(finalEnumAttrVOs, data); String lcstatus = data.get(VciQueryWrapperForDO.LC_STATUS_FIELD); String copyFromVersion = data.getOrDefault(COPY_FROM_VERSION, ""); if ((CodeDefaultLC.EDITING.getValue().equalsIgnoreCase(lcstatus) || CodeDefaultLC.AUDITING.getValue().equalsIgnoreCase(lcstatus)) @@ -1574,17 +1583,25 @@ //å 为åç §ä¸ä¸å®æ¯å¨å¹³å°ç屿§æ± éé¢è®¾ç½®ï¼æä»¥æä»¬å¾éè¦èªè¡å¤ç //åèVciQueryWrapperæ¥å¤ç //1. æ¾å°ææçåæ®µï¼ Map<String, CodeClassifyTemplateAttrVO> attrVOMap = templateVO.getAttributes().stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); List<String> selectFieldList = attrVOMap.keySet().stream().collect(Collectors.toList()); Map<String, CodeClassifyTemplateAttrVO> attrVOMap = new HashMap<>(); List<String> selectFieldList = new ArrayList<>(); if(Func.isNotEmpty(templateVO.getAttributes())){ attrVOMap = templateVO.getAttributes().stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); selectFieldList = attrVOMap.keySet().stream().collect(Collectors.toList()); } //ææçåç §çåæ®µ Map<String/**屿§å段**/, String> joinTableList = new ConcurrentHashMap<>(); List<CodeClassifyTemplateAttrVO> referAttrVOs = templateVO.getAttributes().stream().filter( s -> StringUtils.isNotBlank(s.getReferBtmId()) || StringUtils.isNotBlank(s.getReferConfig()) ).collect(Collectors.toList()); List<CodeClassifyTemplateAttrVO> referAttrVOs = null; if (Func.isNotEmpty(templateVO.getAttributes())) { referAttrVOs = templateVO.getAttributes().stream().filter( s -> StringUtils.isNotBlank(s.getReferBtmId()) || StringUtils.isNotBlank(s.getReferConfig()) ).collect(Collectors.toList()); } Map<String/**åç §ç屿§**/, String/**å®é çåæ®µ**/> referFieldMap = new ConcurrentHashMap<>(); if (!CollectionUtils.isEmpty(referAttrVOs)) { referAttrVOs.parallelStream().forEach(attrVO -> { List<String> finalSelectFieldList = selectFieldList; referAttrVOs.parallelStream().forEach(attrVO -> { UIFormReferVO referVO = null; if (StringUtils.isNotBlank(attrVO.getReferConfig())) { referVO = JSONObject.parseObject(attrVO.getReferConfig(), UIFormReferVO.class); @@ -1614,7 +1631,7 @@ showFieldInSource = textFields.get(0); } referFieldMap.put(attrVO.getId(), referTableNick + "." + showFieldInSource); selectFieldList.add(referTableNick + "." + showFieldInSource + " as " + referShowField); finalSelectFieldList.add(referTableNick + "." + showFieldInSource + " as " + referShowField); }); } R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getDefaultAttrByBtmId(btmType); @@ -1658,11 +1675,12 @@ } }); andCondtionMap.forEach((k, v) -> { andSql.add(getConditionSql(k.toLowerCase(), v, referFieldMap, attrVOMap, btmType)); Map<String, CodeClassifyTemplateAttrVO> finalAttrVOMap = attrVOMap; andCondtionMap.forEach((k, v) -> { andSql.add(getConditionSql(k.toLowerCase(), v, referFieldMap, finalAttrVOMap, btmType)); }); orConditionMap.forEach((k, v) -> { orSql.add(getConditionSql(k.toLowerCase(), v, referFieldMap, attrVOMap, btmType)); orSql.add(getConditionSql(k.toLowerCase(), v, referFieldMap, finalAttrVOMap, btmType)); }); } //ç»åèµ·æ¥ @@ -2858,38 +2876,43 @@ List<UITableFieldVO> fieldVOList = new ArrayList<>(); Map<String, String> comboxOrReferFieldMap = new HashMap<>(); templateVO.getAttributes().forEach(attrVO -> { UITableFieldVO tableFieldVO = templateAttr2TableField(attrVO, forEdit); if ("combox".equalsIgnoreCase(tableFieldVO.getFieldType())) { comboxOrReferFieldMap.put(tableFieldVO.getSortField(), tableFieldVO.getField()); } if ("refer".equalsIgnoreCase(tableFieldVO.getFieldType())) { comboxOrReferFieldMap.put(tableFieldVO.getSortField(), tableFieldVO.getField()); } if (StringUtils.isNotBlank(tableFieldVO.getEdit())) { tableDefineVO.setHasEditor(true); } fieldVOList.add(tableFieldVO); }); if (Func.isNotEmpty(templateVO.getAttributes())) { templateVO.getAttributes().forEach(attrVO -> { UITableFieldVO tableFieldVO = templateAttr2TableField(attrVO, forEdit); if ("combox".equalsIgnoreCase(tableFieldVO.getFieldType())) { comboxOrReferFieldMap.put(tableFieldVO.getSortField(), tableFieldVO.getField()); } if ("refer".equalsIgnoreCase(tableFieldVO.getFieldType())) { comboxOrReferFieldMap.put(tableFieldVO.getSortField(), tableFieldVO.getField()); } if (StringUtils.isNotBlank(tableFieldVO.getEdit())) { tableDefineVO.setHasEditor(true); } fieldVOList.add(tableFieldVO); }); } List<List<UITableFieldVO>> cols = new ArrayList<>(); cols.add(fieldVOList); tableDefineVO.setCols(cols); Map<String, UITableFieldVO> fieldVOMap = fieldVOList.stream().collect(Collectors.toMap(s -> s.getField().toLowerCase(Locale.ROOT), t -> t)); //æ¥è¯¢å±æ§ List<CodeClassifyTemplateAttrVO> queryAttrVOs = templateVO.getAttributes().stream().filter(s -> BooleanEnum.TRUE.getValue().equalsIgnoreCase(s.getQueryAttrFlag())).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(queryAttrVOs)) { List<UITableFieldVO> queryFieldVOs = new ArrayList<>(); queryAttrVOs.stream().forEach(attrVO -> { String attrId = attrVO.getId().toLowerCase(Locale.ROOT); attrId = comboxOrReferFieldMap.getOrDefault(attrId, attrVO.getId()).toLowerCase(Locale.ROOT); if (fieldVOMap.containsKey(attrId)) { queryFieldVOs.add(fieldVOMap.get(attrId)); } }); tableDefineVO.setQueryColumns(queryFieldVOs); } //é«çº§å±æ§ List<CodeClassifyTemplateAttrVO> seniorQueryAttrVOs = templateVO.getAttributes().stream().filter(s -> BooleanEnum.TRUE.getValue().equalsIgnoreCase(s.getSeniorQueryAttrFlag())).collect(Collectors.toList()); List<CodeClassifyTemplateAttrVO> seniorQueryAttrVOs = null; if (Func.isNotEmpty(templateVO.getAttributes())) { //æ¥è¯¢å±æ§ List<CodeClassifyTemplateAttrVO> queryAttrVOs = templateVO.getAttributes().stream().filter(s -> BooleanEnum.TRUE.getValue().equalsIgnoreCase(s.getQueryAttrFlag())).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(queryAttrVOs)) { List<UITableFieldVO> queryFieldVOs = new ArrayList<>(); queryAttrVOs.stream().forEach(attrVO -> { String attrId = attrVO.getId().toLowerCase(Locale.ROOT); attrId = comboxOrReferFieldMap.getOrDefault(attrId, attrVO.getId()).toLowerCase(Locale.ROOT); if (fieldVOMap.containsKey(attrId)) { queryFieldVOs.add(fieldVOMap.get(attrId)); } }); tableDefineVO.setQueryColumns(queryFieldVOs); } //é«çº§å±æ§ seniorQueryAttrVOs = templateVO.getAttributes().stream().filter(s -> BooleanEnum.TRUE.getValue().equalsIgnoreCase(s.getSeniorQueryAttrFlag())).collect(Collectors.toList()); } if (!CollectionUtils.isEmpty(seniorQueryAttrVOs)) { List<UITableFieldVO> queryFieldVOs = new ArrayList<>(); seniorQueryAttrVOs.stream().forEach(attrVO -> {