From 7602a824e39e19260ae32bb45e799e6ce43300ac Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期五, 14 七月 2023 21:15:29 +0800
Subject: [PATCH] 参照配置组件修改
---
Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue | 97 ++++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java | 4
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java | 14
Source/UBCS-WEB/src/views/code/code.vue | 90 ++-------
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 137 ++++++++------
Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue | 2
Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue | 121 ++++++------
Source/UBCS-WEB/src/main.js | 6
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java | 19 +-
Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue | 13 +
10 files changed, 298 insertions(+), 205 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue
index e6e2451..ff11590 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue
@@ -343,7 +343,7 @@
export default {
name: "formulaEditor",
props: {
- // 瀵硅瘽妗嗘樉绀洪殣钘忔帶鍒�
+ // 瀵硅瘽妗嗘樉绀洪殣钘忔帶鍒�
visible: {
type: "Boolean",
default: false,
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
index e755f1a..adbf433 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
+++ b/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: {
+ // 鐩戝惉鐖剁粍浠朵紶鐨勭獥鍙f樉绀洪殣钘忕殑鍊�
+ isShowReferConfigCrud (){
+ if(this.isShowReferConfigCrud){
+ this.referConfigOnload();
+ }
+ }
+ },
methods: {
// 涓嬩竴姝ヨ杩涜鐨勬搷浣滈�夋嫨骞朵繚瀛樻垨閫夋嫨骞朵慨鏀�
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
new file mode 100644
index 0000000..4e3101f
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
@@ -0,0 +1,97 @@
+<template>
+ <div v-if="display">
+ <!-- 绗簩灞傚璇濇,鑷畾涔夊弬鐓ч厤缃瓼orm缁勪欢 -->
+ <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){
+ // 缂栬緫鐮佹鏃秗eferConfig鍙兘浼氬湪涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庢敼鍙�
+ 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>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
index c04a197..cf0f19d 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
+++ b/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();
+ },
+ // 鐩戝惉鐖剁粍浠朵紶鐨勭獥鍙f樉绀洪殣钘忕殑鍊�
+ 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"));
+ },
/** 鍏跺疄閫夊彇灞炴�ц〃鏍肩殑榛樿鏁版嵁涓嶉渶瑕佸姞杞斤紝
浣嗘槸寮圭獥鎵撳紑浼氭湁琛ㄦ牸閿欒闂鎵�浠ラ渶瑕佸湪杩欒皟鐢╠oLayout鏂规硶*/
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
diff --git a/Source/UBCS-WEB/src/main.js b/Source/UBCS-WEB/src/main.js
index fe04f15..7ad2bdd 100644
--- a/Source/UBCS-WEB/src/main.js
+++ b/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)
diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index b0facfa..2c009fa 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/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>
- <!-- 绗簩灞傚璇濇,鑷畾涔夊弬鐓ч厤缃瓼orm缁勪欢 -->
- <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: '', //褰撳墠閫変腑鐨勫垎绫荤爜鍊兼爲鑺傜偣
/* 涓哄睘鎬ч�夊彇鍊肩獥鍙f樉绀烘墦寮�鎺у埗鍙橀噺 */
isShowSelectAttrOption: false,
@@ -1112,6 +1104,10 @@
//conditionMapParams: {},
},
+ //寮曠敤鐮佹涓弬鐓ч厤缃粍浠剁浉鍏冲弬鏁�
+ referConfigOption: {},
+ referConfigVisble: false,
+
};
},
computed: {
@@ -1130,6 +1126,13 @@
},
mounted(){
this.loadTotalEnum();
+ },
+ // 瑙e喅琛ㄦ牸閿欒闂
+ 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;
- // 缂栬緫鐮佹鏃秗eferConfig鍙兘浼氬湪涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庢敼鍙�
- 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();
},
// 鐐瑰嚮杈撳叆妗嗙殑脳鍙凤紝娓呯┖杈撳叆妗嗕腑鐨勫唴瀹�
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
index 3ca0dac..df6cba9 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
+++ b/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);
/**
* 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
index c8869c3..c69312c 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
+++ b/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);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
index 2d4778c..8bd5db7 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
+++ b/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 @@
//濡傛灉鏈塴cstatus鐨勭被鐨勮瘽
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);
}
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 051c73b..35e96c2 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
@@ -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 @@
//鍥犱负鍙傜収涓嶄竴瀹氭槸鍦ㄥ钩鍙扮殑灞炴�ф睜閲岄潰璁剧疆锛屾墍浠ユ垜浠緱闇�瑕佽嚜琛屽鐞�
//鍙傝�僔ciQueryWrapper鏉ュ鐞�
//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 -> {
--
Gitblit v1.9.3