ludc
2023-05-30 e9b405657b6117a8dcfcf8505cfd5d6eccd39cc8
code服务中部分do转vo时显示值转换改为缓存中拿值
已修改40个文件
已删除2个文件
已重命名3个文件
已添加1个文件
2405 ■■■■■ 文件已修改
Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue 283 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue 304 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/code-dialog-page/tableEdit.vue 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/const/code/selectattroption.js 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/code/code.vue 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/vue.config.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java 110 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml 140 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml 384 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml 330 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
}
</script>
<style>
</style>
Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
@@ -8,7 +8,7 @@
        style="height: 115vh; margin-top: -14vh; overflow-y: hidden">
        <div style="width: 100%; overflow-y: auto; height: 70vh">
            <el-row style="width: 100%; height:70%">
                <el-col :style="toggleCrudWidth">
                <el-col :style="toggleBasicCrudWidth">
                    <basic-container style="width: 100%;">
                        <avue-crud :option="referConfigCrudOption"
                            class="refer-config-crud"
@@ -42,8 +42,9 @@
                    </basic-container>
                </el-col>
            </el-row>
            <el-row style="width: 100%; height:30%; margin-top: 130px" v-show="srchCondParams.isShow && showAttrParams.isShow">
                <el-col v-show="srchCondParams.isShow" style="width: 40%;">
            <el-row style="width: 100%; height:30%; margin-top: 130px">
                <el-col
                    :style="toggleSrchCrudWidth">
                    <basic-container style="width: 100%; height:100%;">
                        <avue-crud :option="srchCondOption"
                            class="refer-srchcond-crud"
@@ -53,7 +54,7 @@
                        </avue-crud>
                    </basic-container>
                </el-col>
                <el-col v-show="showAttrParams.isShow" style="width: 60%;">
                <el-col v-show="showAttrParams.isShow" style="width: 60%; height: 100%;">
                    <basic-container style="width: 100%; height:100%;">
                        <avue-crud :option="showAttrOption"
                            class="refer-attr-crud"
@@ -121,7 +122,7 @@
                        },{
                            label: '参照的业务类型',
                            search: false,
                            prop: 'referType'
                            prop: 'referTypeName'
                        },{
                            label: '显示的属性',
                            search: false,
@@ -156,67 +157,67 @@
                    emptyBtn: false,
                    labelWidth: '150', //默认标签宽度
                    // é»˜è®¤é…ç½®å°±ä¸ºæ ‘形类型,改了会出现问题
                    column: [{
                        label: '树形的上级属性',
                        prop: 'parentFieldName',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                    },{
                        label: '上级属性值对应属性',
                        prop: 'parentUsedField',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                    },{
                        label: '根节点的值',
                        prop: 'parentValue',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                    },
                    {
                        label: '树加载方式',
                        prop: 'loadType',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                        dicData: [{
                            label: '全部', value: 'all'
                        }, {
                            label: '逐级加载', value: 'node'
                        }],
                    },{
                        label: '是否只能选择叶子节点',
                        prop: 'onlyLeaf',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                    },{
                        label: '排序字段',
                        prop: 'sortField',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                    },{
                        label: '排序类型',
                        prop: 'sortType',
                        span: 24,
                        disabled: true,
                        row: true,
                        placeholder: ' ',
                        dicData: [{
                            label: '升序', value: 'asc'
                        }, {
                            label: '降序', value: 'desc'
                        }],
                    },
                    column: [
                        {
                            label: '树形的上级属性',
                            prop: 'parentFieldName',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                        },{
                            label: '上级属性值对应属性',
                            prop: 'parentUsedField',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                        },{
                            label: '根节点的值',
                            prop: 'parentValue',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                        },{
                            label: '树加载方式',
                            prop: 'loadType',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                            dicData: [{
                                label: '全部', value: 'all'
                            }, {
                                label: '逐级加载', value: 'node'
                            }],
                        },{
                            label: '是否只能选择叶子节点',
                            prop: 'onlyLeaf',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                        },{
                            label: '排序字段',
                            prop: 'sortField',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                        },{
                            label: '排序类型',
                            prop: 'sortType',
                            span: 24,
                            disabled: true,
                            row: true,
                            placeholder: ' ',
                            dicData: [{
                                label: '升序', value: 'asc'
                            }, {
                                label: '降序', value: 'desc'
                            }],
                        },
                    ],
                },
                referConfigForm:{},
@@ -371,6 +372,10 @@
                    srchCondData: [],
                    isShow: true,
                },
                toggleSrchCrudWidth: {
                    width: '40%',
                    height: '100%',
                },
                //显示的属性表格配置区域
                showAttrOption: {
@@ -409,19 +414,19 @@
                                    prop: 'title'
                                },{
                                    label: '字段类型',
                                    prop: 'fieldType'
                                    prop: 'fieldTypeText'
                                },{
                                    label: '列表可排序',
                                    prop: 'sort' 
                                },{
                                    label: '排序字段',
                                    prop: 'sortField'
                                    prop: 'attrSortField'
                                },{
                                    label: '字段宽度',
                                    prop: 'width' 
                                },{
                                    label: '列固定位置',
                                    prop: 'fixedText'
                                    prop: 'fixedPositionText'
                                },{
                                    label: 'js显示代码',
                                    prop: 'templet' 
@@ -442,10 +447,14 @@
                // æ˜¯å¦æ˜¾ç¤ºå˜åŠ¨çš„è¡¨å•åŒºåŸŸ
                isShowForm: true,
                toggleCrudWidth: {
                toggleBasicCrudWidth: {
                    height: '100%',
                    width: '70%',
                },
                // æ˜¯å¦æ˜¾ç¤ºå±žæ€§è¡¨æ ¼
                isShowAttrCrud: true,
                defaultOrGridForm: ['limit','sortField','sortType'],
                standForm: ['referContent','displayTable'],
                treeForm: [
@@ -469,11 +478,107 @@
                    this.$message.warning("请选择一条数据!");
                    return;
                }
                let filterForm = this.filterForm(currentSeletedRow);
                if(condition == "selectedSave"){
                    //console.log(currentSeletedRow);
                    // ç›´æŽ¥ä¿å­˜,所以直接调用code界面的界面回显
                    this.$emit('echoReferConfig',filterForm);
                    // console.log(filterForm);
                }else {
                    //console.log(currentSeletedRow);
                    // é€‰æ‹©å¹¶ä¿®æ”¹,执行code服务中的打开界面,所以要先构造出所需的数据
                    let submitForm = {
                        referBtmName: filterForm.referType,
                        referBtmId: filterForm.referTypeName,
                        referConfig:  JSON.stringify(filterForm),
                    }
                    this.$emit('openReconfigInterFace',submitForm);
                }
                this.isShowReferConfigCrud = false;
            },
            // è¿‡æ»¤å‡ºå½“前类型所需要的属性
            filterForm(currentRow){
                // éœ€è¦ä¿ç•™çš„基础属性
                let submittDefaultForm = [
                    'referTypeName',
                    'referType',
                    'textField',
                    'valueField',
                    'type', //参照窗口类型
                    'url',
                    'backPath',
                    'method',
                    'height',
                    'useFormKey',
                    'paramForFormKey',
                    'isMuti',
                    'mapFields',
                    'isOpenGlobal', //是否开启全局
                    'isPersistence',
                    'id',
                    'name',
                ];
                // éœ€è¦æ ¹æ®ç±»åž‹æ·»åŠ çš„å±žæ€§
                let addArray = [];
                let newForm ={};
                // æ ¹æ®ä¸åŒç±»åž‹è¿‡æ»¤å‡ºä¸åŒçš„的表单属性
                if(currentRow.type == 'stand'){
                    addArray = ['referContent', 'displayTable'];
                } else if(currentRow.type == 'default' || currentRow.type == 'grid'){
                    addArray = ['limit', 'sortField', 'sortType'];
                } else if(currentRow.type == 'tree'){
                    addArray = [
                        "parentFieldName",
                        'parentUsedField',
                        'parentValue',
                        'loadType',
                        'onlyLeaf',
                        'sortField',
                        'sortType'
                    ];
                }
                // æ‹¼æŽ¥ä¸¤ä¸ªæ•°ç»„
                submittDefaultForm = submittDefaultForm.concat(addArray);
                if(currentRow.codeSrchCondConfigVOS.length > 0){
                    //console.log(currentRow.codeSrchCondConfigVOS);
                    newForm = {
                        codeSrchCondConfigVOS: currentRow.codeSrchCondConfigVOS,
                    }
                }
                if((currentRow.type == 'default' || currentRow.type  == 'grid') && currentRow.codeShowFieldConfigVOS.length >= 0){
                    newForm = Object.assign(newForm,{codeShowFieldConfigVOS: currentRow.codeShowFieldConfigVOS});
                }
                // è¿‡æ»¤å‡ºç©ºå€¼å±žæ€§å’Œä¸éœ€è¦çš„属性
                submittDefaultForm.forEach(item=>{
                    // console.log(!this.checkStringIsEmpty(currentRow[item]) || !this.checkArrayIsUndefined(currentRow[item]));
                    if((item == 'isMuti' || item == 'onlyLeaf') || (!this.checkStringIsEmpty(currentRow[item]) || !this.checkArrayIsUndefined(currentRow[item]))){
                        //console.log(item,currentRow[item]);
                        newForm = Object.assign(newForm,{[item]:currentRow[item]});
                    }
                });
                // console.log(newForm);
                return newForm;
            },
             /**
             * ä¸ºç©º
             * @param val
             * @returns {boolean}
            */
            checkStringIsEmpty(val){
                if (
                    val === null ||
                    typeof val === 'undefined' ||
                    (typeof val === 'string' && val === "" && val !== 'undefined')
                ) {
                    return true;
                }
                    return false;
            },
             /**
             * æ˜¯å¦ä¸ºå®šä¹‰
             * @param val
             * @returns {boolean}
             */
            checkArrayIsUndefined(val){
                return typeof val === 'array' && (val.length === 0 || val === null || typeof val === 'undefined' || val === []);
            },
            referConfigOnload(){
                let refer = this.referConfigParams;
@@ -494,12 +599,16 @@
                    this.referConfigParams.referConfigPage.total = data.total;
                    this.referConfigParams.referConfigData = data.records;
                    this.referConfigParams.referConfigLoading = false;
                    //console.log(this.referConfigParams.referConfigData.length > 0);
                    //console.log(this.referConfigParams.referConfigData.length > 0);
                    // æ¸²æŸ“其他区域数据
                    if(this.referConfigParams.referConfigData.length > 0) {      
                        this.$nextTick(() => {
                            // è¡¨æ ¼é”™è¡Œé—®é¢˜
                            this.$refs[this.referConfigParams.ref].doLayout()
                            // é»˜è®¤é€‰ä¸­ç¬¬ä¸€è¡Œ
                            this.referConfigParams.referConfigSelectedRow = 0;
                            this.$refs[this.referConfigParams.ref].setCurrentRow(this.referConfigParams.referConfigData[0]);
                            this.referConfigParams.referConfigSelectedRowData = this.referConfigParams.referConfigData[0];
                            this.attrAndSrchCondOnload(this.referConfigParams.referConfigData[0]);
                            this.loadDefaultOrGridOrStandOrTreeForm(this.referConfigParams.referConfigData[0]);
                        }) 
@@ -544,14 +653,15 @@
                   currentFormData.type != 'grid') {
                    //控制参照配置表格和表单显示比例
                    this.isShowForm = false;
                    this.toggleCrudWidth.width = '100%';
                    this.toggleBasicCrudWidth.width = '100%';
                }else {
                    this.isShowForm = true;
                    this.toggleCrudWidth.width = '70%';
                    this.toggleBasicCrudWidth.width = '70%';
                    this.toggleFormOption(currentFormData);
                }
                this.toggleCurdWidth(currentFormData);
                //console.log(this.isShowForm);
                //console.log(this.toggleCrudWidth.width);
                //console.log(this.toggleBasicCrudWidth.width);
            },
            // æ ¹æ®type的变动切换表单的配置option
@@ -560,7 +670,7 @@
                let currentForm = '';
                if(data.type=='default' || data.type=='grid'){
                    this.formOption.column = this.sortColumn;
                    currentForm = 'defaultOrGridForm'
                    currentForm = 'defaultOrGridForm';
                }else if(data.type == 'stand'){
                    this.formOption.column = this.standColumn;
                    currentForm = 'standForm';
@@ -569,12 +679,26 @@
                    currentForm = 'treeForm'
                }
                this.referConfigForm = {},
                console.log( this.formOption);
                //console.log( this.formOption);
                this[currentForm].forEach(item=>{
                    Vue.set(this.referConfigForm, item, data[item])
                    //this.referConfigForm = Object.assign(this.referConfigForm,{[item]:data[item]})
                })
                console.log(this.referConfigForm);
                // console.log(this.referConfigForm);
            },
            // æ ¹æ®type的变动切换attr表格的显示隐藏,调整查询条件表格的宽度
            toggleCurdWidth(data) {
                if(data.type=='default' || data.type=='grid'){
                    this.showAttrParams.isShow = true;
                    // ä¸éœ€è¦æ˜¾ç¤ºå±žæ€§è¡¨æ ¼æ‰€æœ‰éœ€è¦å°†æŸ¥è¯¢è°ƒä»·è¡¨æ ¼ç¼©å°ä¸º100%
                    this.toggleSrchCrudWidth.width = '40%';
                }else {
                    this.showAttrParams.isShow = false;
                    // ä¸éœ€è¦æ˜¾ç¤ºå±žæ€§è¡¨æ ¼æ‰€æœ‰éœ€è¦å°†æŸ¥è¯¢è°ƒä»·è¡¨æ ¼ç¼©å°ä¸º100%
                    this.toggleSrchCrudWidth.width = '100%';
                }
                // console.log(this.toggleSrchCrudWidth);
                // console.log(this.showAttrParams.isShow);
            },
            // æ˜¾ç¤ºçš„属性和查询条件相关方法
@@ -587,6 +711,7 @@
                });
                this.srchCondParams.srchCondData = row.codeSrchCondConfigVOS
                this.showAttrParams.showAttrData = row.codeShowFieldConfigVOS
                //console.log(this.showAttrParams.showAttrData);
                this.srchCondParams.srchCondLoading = false;
                this.showAttrParams.showAttrLoading = false;
            },
Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
@@ -64,7 +64,7 @@
                                class="crud-attr"
                                :option="attrOption"
                                @cell-click="clickAttrEdit"
                                :data="attrData">
                                :data="codeShowFieldConfigVOS">
                                <!-- è¡¨æ ¼å†…操作按钮 -->
                                <template slot="menu" slot-scope="scope">
                                    <el-button type="text"
@@ -90,7 +90,7 @@
                                    </el-button>
                                    <div class="tag-group" style="display: inline">
                                        <el-tag
                                            v-for="item in attrData"
                                            v-for="item in codeShowFieldConfigVOS"
                                            v-show="item.isquery && item.title!=''"
                                            style="margin-left: 3px"
                                            :key="item.title"
@@ -105,12 +105,12 @@
                        </el-row>
                    </el-tab-pane>
                    <el-tab-pane name="second">
                        <span slot="label"><i class="el-icon-search"></i>查询条件添加</span>
                        <span slot="label"><i class="el-icon-search"></i>添加查询条件</span>
                        <avue-crud
                            ref="crudAddCondition"
                            :option="addSearchCondtionOption" 
                            @cell-click="clickAddSearchCondtionEdit"
                            :data="addSearchCondtionData">
                            :data="form.codeSrchCondConfigVOS">
                            <!-- è¡¨æ ¼å†…操作按钮 -->
                            <template slot="menu" slot-scope="scope">
                                <el-button type="text"
@@ -276,6 +276,11 @@
                    paramForFormKey: '',
                    isMuti: false,
                    mapFields: '',
                    isOpenGlobal: true, //是否开启全局
                    codeSrchCondConfigVOS: [],
                    isPersistence: true, // æ˜¯å¦æŒä¹…化
                    id: '',
                    name: '',
                     // æŸ¥è¯¢æ¡ä»¶åˆ—表
                    // limit: '15',
                    // sortField: '',
@@ -288,7 +293,21 @@
                    // loadType: 'all',
                    // onlyLeaf: false,
                },
                attrData: [],
                // type切换时对form表单属性进行移除
                removeFormAttr: [
                    'limit',
                    'sortField',
                    'sortType',
                    'parentFieldName',
                    'parentUsedField',
                    'parentValue',
                    'loadType',
                    'onlyLeaf',
                    'sortType',
                    'referContent',
                    'displayTable',
                ],
                codeShowFieldConfigVOS: [],
                attrOption: {
                    height:'180',
                    tip: false,
@@ -353,7 +372,7 @@
                            blur: (value) => this.updateAttrBlur(value),
                        },{
                            label: "排序字段",
                            prop: "sortField",
                            prop: "attrSortField",
                            cell: true,
                            clearable: false,
                            blur: (value) => this.updateAttrBlur(value),
@@ -365,7 +384,7 @@
                            blur: (value) => this.updateAttrBlur(value),
                        },{
                            label: "列固定位置",
                            prop: "fixedText",
                            prop: "fixedPosition",
                            cell: true,
                            type:"select",
                            clearable: false,
@@ -381,7 +400,7 @@
                        },
                    ]
                },
                addSearchCondtionData: [],
                // addSearchCondtionData: [],
                addSearchCondtionOption: {
                    height:'150',
                    tip: false,
@@ -434,6 +453,7 @@
                        }
                    ]
                },
                // ä¸¤ä¸ªè¡¨å•çš„ref
                formRefs: ['form','otherForm'],
                // tabs控制
@@ -677,7 +697,7 @@
                            icon: 'el-icon-info',
                            label: '必填的参照配置',
                            collapse: true,
                            labelWidth: '110',
                            labelWidth: '115',
                            prop: 'groupDdefaultOrGrid',
                            column: [
                                {
@@ -769,23 +789,11 @@
                                        trigger: "blur",
                                    }],
                                    change: ({ value, column }) => {
                                        // console.log("start",value);
                                        // å¤åŽŸè¡¨å•,因为其他分组中如果存在值,在切换时,会保留输入的字段值所以需要还原
                                        let oldForm = this.form;
                                        this.form = {};  // è¡¨å•对象赋空
                                        this.form.referType = oldForm.referType
                                        this.form.textField = oldForm.textField
                                        this.form.valueField = oldForm.valueField
                                        this.form.type = oldForm.type //参照窗口类型
                                        this.form.url =  oldForm.url
                                        this.form.backPath =  oldForm.backPath
                                        this.form.method =  oldForm.method
                                        this.form.height =  oldForm.height
                                        this.form.useFormKey =  oldForm.useFormKey
                                        this.form.paramForFormKey =  oldForm.paramForFormKey
                                        this.form.isMuti =  oldForm.isMuti
                                        this.form.mapFields =  oldForm.mapFields
                                        let addFrom = {};  //根据类型需要添加的不同属性
                                        this.activeName = 'first';
                                        let addFrom = {};
                                        this.activeName = 'first'; // é»˜è®¤åˆ‡æ¢è‡³ç¬¬ä¸€ä¸ªtab
                                        //根据类型对form表单属性进行调整
                                        if(value == 'stand'){
                                            addFrom = {
                                                referContent: '',
@@ -809,72 +817,108 @@
                                                sortField: '',
                                                sortType: 'asc',
                                            };
                                            console.log('tree');
                                            // ä¸çŸ¥é“为什么type为tree的时候会触发两次change事件
                                            // å¯¼è‡´type切换失败
                                            this.form.type = 'tree';
                                            this.isDisabledTabs = false;
                                        }else {
                                            this.isDisabledTabs = true;
                                            this.activeName = 'second';
                                        }
                                       // ç±»åž‹åˆ‡æ¢æ—¶ï¼Œå¯¹ä¸éœ€è¦çš„属性进行筛除
                                        this.removeFormAttr.forEach(attr=>{
                                            // console.log(attr);
                                            this.$delete(this.form,attr)
                                        })
                                        // åˆå¹¶ä¸¤ä¸ªè¡¨å•
                                        this.form = Object.assign(addFrom,this.form);
                                        // console.log("endFilter",this.form.type);
                                        //console.log(this.form);
                                    },
                                },{
                                    label: '是否开启持久化',
                                    prop: 'isPersistence',
                                    tip: 'true:开启持久化,对当前定义的参照配置进行持久化存储,下次可直接选取;false:仅对当前次码段新增生效。',
                                    tipPlacement: 'bottom',
                                    span: 6,
                                    type: 'switch',
                                },{
                                    display: this.form.isPersistence | this.form.isPersistence=='true',
                                    label: '编号',
                                    prop: 'id',
                                    rules: [{
                                        required: true,
                                        message: "(开始持久化时编号)必填项不能为空",
                                        trigger: "blur",
                                    }],
                                    span: 6,
                                },{
                                    display: this.form.isPersistence | this.form.isPersistence=='true',
                                    label: '名称',
                                    prop: 'name',
                                    rules: [{
                                        required: true,
                                        message: "(开始持久化时名称)必填项不能为空",
                                        trigger: "blur",
                                    }],
                                    span: 6,
                                }
                            ]
                        },
                        {   
                            //display: this.form.type=='default'||this.form.type=='grid',
                            icon: 'el-icon-info',
                            label: '页面参数配置',
                            collapse: false,
                            prop: 'webConfig',
                            column: [{
                                label: '窗口显示的高度',
                                prop: 'height',
                                tip: '默认空着,设置后表示强制显示这样的高度',
                                tipPlacement: 'right',
                                span: 7,
                                rules:[{
                                    validator: validateNumber,
                                    message: "窗口显示的高度必须为数值类型",
                                    trigger: "blur",
                                }]
                            },{
                                label: '过滤(级联)属性',
                                prop: 'useFormKey',
                                tip: '获取表单上的其他属性的属性的值来过滤,或者使用某个属性来级联选择',
                                tipPlacement: 'right',
                                span: 7,
                            },{
                                label: '过滤属性请求参数',
                                prop: 'paramForFormKey',
                                tip: '使用过滤属性时,发送给后台的请求参数',
                                tipPlacement: 'right',
                                span: 7,
                            },{
                                label: '映射其他属性',
                                prop: 'mapFields',
                                tip: '选择数据后,将选择的数据拷贝到表单里的其他属性,书写格式为{当前表单上的属性:选择数据里的属性,XXXXx:yyyy}',
                                tipPlacement: 'right',
                                span: 7,
                            },{
                                label: '是否开启全局',
                                prop: 'isOpenGlobal',
                                tip: '开启全局之后对全部参照配置数据进行查询,默认根据租户进行查询。',
                                tipPlacement: 'right',
                                type: 'switch',
                                span: 7,
                            },{
                                label: '是否多选',
                                type: 'switch',
                                prop: 'isMuti',
                                value: false,
                                span: 7,
                                row: true,
                            }]
                            column: [
                                {
                                    label: '窗口显示的高度',
                                    prop: 'height',
                                    tip: '默认空着,设置后表示强制显示这样的高度',
                                    tipPlacement: 'right',
                                    span: 7,
                                    rules:[{
                                        validator: validateNumber,
                                        message: "窗口显示的高度必须为数值类型",
                                        trigger: "blur",
                                    }]
                                },{
                                    label: '过滤(级联)属性',
                                    prop: 'useFormKey',
                                    tip: '获取表单上的其他属性的属性的值来过滤,或者使用某个属性来级联选择',
                                    tipPlacement: 'right',
                                    span: 7,
                                },{
                                    label: '过滤属性请求参数',
                                    prop: 'paramForFormKey',
                                    tip: '使用过滤属性时,发送给后台的请求参数',
                                    tipPlacement: 'right',
                                    span: 7,
                                },{
                                    label: '映射其他属性',
                                    prop: 'mapFields',
                                    tip: '选择数据后,将选择的数据拷贝到表单里的其他属性,书写格式为{当前表单上的属性:选择数据里的属性,XXXXx:yyyy}',
                                    tipPlacement: 'right',
                                    span: 7,
                                },{
                                    label: '是否开启全局',
                                    prop: 'isOpenGlobal',
                                    tip: '开启全局之后对全部参照配置数据进行查询,默认根据租户进行查询。',
                                    tipPlacement: 'right',
                                    type: 'switch',
                                    span: 7,
                                },{
                                    label: '是否多选',
                                    type: 'switch',
                                    prop: 'isMuti',
                                    value: false,
                                    span: 7,
                                    row: true,
                                }
                            ]
                        },
                        {   
                            //display: this.form.type=='default'||this.form.type=='grid',
                            icon: 'el-icon-info',
                            label: '后台参数配置',
                            collapse: false,
@@ -886,29 +930,29 @@
                                tip: '通常为空;如果是列表,后台必须返回DataGrid,如果是树,后台必须返回List<Tree>',
                                tipPlacement: 'right',
                                span: 7,
                            },{
                                label: '服务的地址',
                                prop: 'backPath',
                                tip: '通常为空,在支持微服务或者分布式部署的时候才配置',
                                tipPlacement: 'right',
                                span: 7,
                            },{
                                label: '请求后台的协议方式',
                                prop: 'method',
                                tip: 'HTTP的协议方式,支持POST,PUT,GET,一般都是GET',
                                tipPlacement: 'right',
                                span: 7,
                                value: 'GET',
                                type: 'select',
                                dicData: [{
                                    label:'GET',value: "GET"
                                },{
                                    label:'PUT',value: "PUT"
                                    label: '服务的地址',
                                    prop: 'backPath',
                                    tip: '通常为空,在支持微服务或者分布式部署的时候才配置',
                                    tipPlacement: 'right',
                                    span: 7,
                                },{
                                    label: '请求后台的协议方式',
                                    prop: 'method',
                                    tip: 'HTTP的协议方式,支持POST,PUT,GET,一般都是GET',
                                    tipPlacement: 'right',
                                    span: 7,
                                    value: 'GET',
                                    type: 'select',
                                    dicData: [{
                                        label:'GET',value: "GET"
                                    },{
                                        label:'PUT',value: "PUT"
                                    },
                                    {
                                        label:'POST',value: "POST"
                                    }],
                                },
                                {
                                    label:'POST',value: "POST"
                                }],
                            },
                            ]
                        },
                    ]
@@ -931,21 +975,21 @@
                                {
                                    label: '每页显示条数',
                                    prop: 'limit',
                                    span: 7,
                                    span: 8,
                                    tip: '分页时每页显示的数量,不分页填-1',
                                    //value: 15,
                                    tipPlacement: 'right',
                                },{
                                    label: '排序字段',
                                    prop: 'sortField',
                                    span: 7,
                                    span: 8,
                                    tip: '查询数据时的排序字段',
                                    //clearable: false,
                                    tipPlacement: 'right',
                                },{
                                    label: '排序类型',
                                    prop: 'sortType',
                                    span: 7,
                                    span: 8,
                                    dicData: [{
                                        label: '升序', value: 'asc'
                                    }, {
@@ -968,14 +1012,14 @@
                                {
                                    label: '参考的UI上下文',
                                    prop: 'referContent',
                                    span: 7,
                                    span: 8,
                                    tip: '只有参照窗口类型是stand时才必须设置,且在stand类型下才能生效',
                                    tipPlacement: 'right',
                                },
                                {
                                    label: '平台的表格编号',
                                    prop: 'displayTable',
                                    span: 7,
                                    span: 8,
                                    tip: '与参照的UI上下文互斥,只有参照窗口类型是stand时才必须设置,且在stand类型下才能生效',
                                    tipPlacement: 'right',
                                },
@@ -1076,8 +1120,7 @@
        },
        watch: {
            // è´¼å‘,切换类型时表格,隐藏再显示就会出现表格错位问题,
            'form.type'(val) {
                //console.log(val);
            'form.type'(value) {
                this.onloadAttrData();
            }
        },
@@ -1086,33 +1129,39 @@
            // å•击表格实现表格行编辑
            clickAttrEdit(row, column, event){
                if(this.preClickAttrRow && this.preClickAttrRow != row){
                    //console.log(this.attrData[this.preClickAttrRow.$index]);
                    this.attrData[this.preClickAttrRow.$index].$cellEdit = false;
                    //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.attrData[0]);
                //console.log(this.codeShowFieldConfigVOS[0]);
                
            // },
            // å•击表格实现表格行编辑
            clickAddSearchCondtionEdit(row, column, event){
                if(this.preClickAddSearchConditionRow && this.preClickAddSearchConditionRow != row){
                    //console.log(this.attrData[this.preClickAttrRow.$index]);
                    this.addSearchCondtionData[this.preClickAddSearchConditionRow.$index].$cellEdit = false;
                    //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);
                //console.log(val);
                if(func.notEmpty(val.referConfig)){
                    this.form = JSON.parse(val.referConfig);
                    //console.log(val);
                    // 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;
                }
                if(func.notEmpty(val.referType)){
@@ -1127,7 +1176,6 @@
            async selectedListReferConfig(){
                // æ ‡è®°æ‰€æœ‰è¡¨å•是否通过校验的变量
                let isValid = true;
                // éåŽ†è¡¨å•æ•°ç»„ï¼Œä¾æ¬¡å¯¹æ¯ä¸ªè¡¨å•è¿›è¡Œæ ¡éªŒ
                await this.formRefs.forEach(ref => {
                    this.$refs[ref].validate((valid, done, msg) => {
@@ -1142,12 +1190,11 @@
                        done();
                    })
                })
                // å¦‚果所有表单都校验通过,执行提交操作
                if (isValid) {
                    // æ ¹æ®ç±»åž‹å¯¹form表单中的参数进行过滤,只保留非空且需要的属性
                    let submitForm = this.filterForm();
                    //console.log(submitForm);
                    // console.log(submitForm);
                    this.$emit('echoReferConfig', submitForm) // è§¦å‘update:data将子组件值传递给父组件
                    this.isShowReferConfigForm = false;
                }
@@ -1155,14 +1202,14 @@
            /** å…¶å®žé€‰å–属性表格的默认数据不需要加载,
             ä½†æ˜¯å¼¹çª—打开会有表格错行问题所以需要在这调用doLayout方法*/
            onloadAttrData(){
                this.attrData = [
                this.codeShowFieldConfigVOS = [
                    {
                        field: 'id',
                        title: '编号',
                        fieldType: 'text',
                        fieldTypeText: '文本框',
                        sort: true,
                        sortField: 'id',
                        attrSortField: 'id',
                        width: '150',
                        isquery: true,
                        $cellEdit: false
@@ -1172,7 +1219,7 @@
                        fieldType: 'text',
                        fieldTypeText: '文本框',
                        sort: true,
                        sortField: 'name',
                        attrSortField: 'name',
                        width: '180',
                        isquery: true,
                        $cellEdit: false
@@ -1185,10 +1232,10 @@
            // å±žæ€§é€‰æ‹©è¡¨æ ¼ä¸­çš„移除按钮功能
            removeCurrentRow(row,condition){
                if(condition=='removeAttr'){
                    this.$delete(this.attrData, row.$index);
                    this.$delete(this.codeShowFieldConfigVOS, row.$index);
                    return;
                }
                this.$delete(this.addSearchCondtionData, row.$index);
                this.$delete(this.form.codeSrchCondConfigVOS, row.$index);
            },
            // è¯¥ç•Œé¢çš„æ•°æ®è¿›è¡Œåˆå§‹åŒ–复原
            recoveryDataAndForm(condition){
@@ -1224,7 +1271,9 @@
                    'paramForFormKey',
                    'isMuti',
                    'mapFields', 
                    'searchCondition',
                    'codeSrchCondConfigVOS',
                    'isOpenGlobal', //是否开启全局
                    'isPersistence',
                ];
                let addArray = [];
                let newForm ={};
@@ -1244,14 +1293,18 @@
                        'sortType'
                    ];
                }
                // å¼€å¯æŒä¹…化参照配置
                if(oldForm.isPersistence=='true' | oldForm.isPersistence){
                    submittDefaultForm =  submittDefaultForm.concat(['id','name'])
                }
                submittDefaultForm = submittDefaultForm.concat(addArray);
                if(!this.checkArrayIsUndefined(this.addSearchCondtionData)){
                if(!this.checkArrayIsUndefined(this.form.codeSrchCondConfigVOS)){
                    newForm = {
                        searchCondition: this.addSearchCondtionData,
                        codeSrchCondConfigVOS: this.form.codeSrchCondConfigVOS,
                    }
                }
                if((oldForm.type == 'default' || oldForm.type  == 'grid') && (this.attrData.length >= 0 && !this.checkArrayIsUndefined(this.addSearchCondtionData))){
                    newForm = Object.assign(newForm,{attrData:this.attrData});
                if((oldForm.type == 'default' || oldForm.type  == 'grid') && (this.codeShowFieldConfigVOS.length >= 0 && !this.checkArrayIsUndefined(this.codeShowFieldConfigVOS))){
                    newForm = Object.assign(newForm,{codeShowFieldConfigVOS:this.codeShowFieldConfigVOS});
                }
                // è¿‡æ»¤å‡ºç©ºå€¼å±žæ€§å’Œä¸éœ€è¦çš„属性
                submittDefaultForm.forEach(item=>{
@@ -1261,7 +1314,7 @@
                        newForm = Object.assign(newForm,{[item]:oldForm[item]});  
                    }
                });
                // console.log(newForm);
                //console.log(newForm);
                return newForm;
            },
            /**
@@ -1488,14 +1541,14 @@
                }
                //this.showFieldSelectList;
                this.showFieldSelectList.forEach(item => {
                    this.attrData.push(
                    this.codeShowFieldConfigVOS.push(
                        {
                            field: item.id,
                            title: item.id,
                            fieldType: item.attrType,
                            fieldTypeText: item.attrTypeText,
                            sort: false,
                            sortField: item.id,
                            attrSortField: item.id,
                            width: item.attrLength,
                            isquery: false,
                            $cellEdit: false
@@ -1550,16 +1603,17 @@
                this.sortFieldOnLoad();
            },
            selectedSearchCondition(){
                console.log(this.searchConditionSelectList);
                // console.log(this.searchConditionSelectList);
                if(this.searchConditionSelectList.length <= 0) {
                    this.$message.warning("请至少选择一条数据");
                    return;
                }
                this.searchConditionSelectList.forEach(item => {
                    this.addSearchCondtionData.push(
                    this.form.codeSrchCondConfigVOS.push(
                        {
                            filterField: item.id,
                            filterType: '=',
                            filterTypeText: item.name,
                            filterValue: '',
                            $cellEdit: false
                        }
Source/UBCS-WEB/src/components/code-dialog-page/tableEdit.vue
ÎļþÒÑɾ³ý
Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js
@@ -11,6 +11,8 @@
    viewBtn: false,
    selection: true,
    menu: false,
    columnBtn: false,
    searchShowBtn: false, //    è¡¨æ ¼æœç´¢æ˜¾éšæŒ‰é’®
    dialogClickModal: false,
    highlightCurrentRow: true,
    column: [
@@ -30,12 +32,12 @@
      },
      {
        label: "属性长度",
        prop: "attrLength",
        prop: "attrlength",
        search: false,
      },
      {
        label: "属性类型",
        prop: "attributeDataTypeText",
        prop: "attributedatatypetext",
        search: false,
      }
    ]
Source/UBCS-WEB/src/const/code/selectattroption.js
ÎļþÒÑɾ³ý
Source/UBCS-WEB/src/views/code/code.vue
@@ -259,7 +259,7 @@
            size="small"
            icon="el-icon-plus"
            :disabled="selectionList.length <= 0"
            @click="addBasicCodeSec">
            @click="openAddBasicCodeSec">
            æ–° å¢ž
        </el-button>
        <el-button type="danger"
@@ -680,7 +680,7 @@
                  :option="attrOption"
                  :table-loading="selectAttrOptionLoading"
                  ref="selectionAttrCrud"
                  @search-change="selectAttrOptionSearchChange"
                  @search-change="selectAttrSearchChange"
                  @search-reset="searchAttrReset"
                  @row-click="selectionAttrRowClick"
                  @selection-change="selectionChangeAttr">
@@ -760,11 +760,13 @@
      <!-- ç¬¬äºŒå±‚对话框,自定义参照配置Form组件 -->
      <refer-config-form-dialog
        ref="referConfigFormDialog"
        @echoReferConfig="echoReferConfig" >
        @echoReferConfig="echoReferConfig">
      </refer-config-form-dialog>
      <!-- ç¬¬äºŒå±‚对话框,直接选择参照配置curd组件 -->
      <!-- ç¬¬äºŒå±‚对话框,直接选择参照配置crud组件 -->
      <refer-config-crud-dialog
        ref="referConfigCrudDialog">
        ref="referConfigCrudDialog"
        @openReconfigInterFace="openReconfigInterFace"
        @echoReferConfig="echoReferConfig">
      </refer-config-crud-dialog>
    </el-dialog>
@@ -1121,6 +1123,7 @@
        /* å¼•用码段参照配置,子组件填完参照配置之后内容回显时调用 */
        echoReferConfig(content){
          // console.log(content.referTypeName);
          this.form.referBtmId = content.referType;
          this.form.referBtmName = content.referTypeName;
          //转换成JSON字符串进行父组件回显
@@ -1274,19 +1277,13 @@
          //这儿还需要完善
          this.selectAttrOptionLoading = true;
          listClassifyLinkAttr({"page": 1,"limit": -1,'conditionMap[codeClassifyOid]':this.currentSelectTreeData.oid}).then(res=>{
          //console.log(res.data.data);
          //造假数据
          let dataInfo =[
            {"id":"address","name":"会议室地址","oid":"058D840D-1010-A7DE-7C52-B39C03CE89C1","attrLength":"150","description":"","attributeDataTypeText":"字符串"},
            {"id":"businesslicensetype","name":"营业执照类型","oid":"BDAC6D3E-1827-35A0-F3CA-0E58A43F6A07","attrLength":"255","description":"营业执照类型","attributeDataTypeText":"字符串"},
            {"id":"certificatenumber","name":"保密证编号","oid":"E2BC8332-A721-3713-26C3-C9F6340C2C1D","attrLength":"255","description":"保密证编号","attributeDataTypeText":"字符串"},
          ]
          this.selectattrData = dataInfo;
          this.selectAttrOptionLoading = false;
            console.log(res.data.data);
            this.selectattrData = res.data.data;
            this.selectAttrOptionLoading = false;
          })
        },
        // ç‚¹å‡»æœç´¢åŽè§¦å‘该事件
        selectAttrOptionSearchChange(params, done) {
        selectAttrSearchChange(params, done) {
          this.query = params;
          //console.log(params);  //这儿需要改
          this.loadlistClassifyLinkAttr(Object.assign(params,{'conditionMap[codeClassifyOid]':this.currentSelectTreeData.oid}));
@@ -1663,7 +1660,7 @@
          // this.changeSectypeFormItems(null);
        },
        // æ‰“开新增窗口
        addBasicCodeSec(){
        openAddBasicCodeSec(){
          if(!this.tipsMessage(this.selectionList)){
            return;
          }
@@ -1709,10 +1706,10 @@
          if(this.form.oid == '' || this.form.oid == null){
            if(this.checkForm()){
              addSave(this.form).then(() => {
              this.$message({
                type: "success",
                message: "操作成功!"
              });
                this.$message({
                  type: "success",
                  message: "操作成功!"
                });
              }, error => {
                window.console.log(error);
              });
@@ -2373,7 +2370,6 @@
          });
        },
        /** ç¬¬ä¸€å±‚对话框相关方法 */
        // æ‰“开二层对话框方法
        openAttrSelectOrGetValue(condition){
@@ -2389,20 +2385,26 @@
            this.refreshReferBtmDataChange();
          }else if(condition === 'referConfig'){
            if(func.notEmpty(this.form.referConfig) || func.notEmpty(this.form.referBtmName)){
              this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
              let value = {
                referTypeName: this.form.referBtmName,
                referType: this.form.referBtmId,
                referConfig: this.form.referConfig,
              }
              this.$refs.referConfigFormDialog.initPageData(value);
              this.openReconfigInterFace(this.form);
            }else{
              this.openTipsChooseOrCust();
            }
             //this.$refs.referConfigFormDialog.onloadAttrData();
          }
        },
        // æ‰“开自定义参照配置或直接选择参照配置界面
        // å½“前已存在编辑过的参展配置,所以直接打开参照配置界面
        openReconfigInterFace(preReferConfigForm){
          // console.log(preReferConfigForm);
          this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
              let value = {
                referTypeName: preReferConfigForm.referBtmName,
                referType: preReferConfigForm.referBtmId,
                referConfig: preReferConfigForm.referConfig,
              }
              this.$refs.referConfigFormDialog.initPageData(value);
        },
        // æ‰“开自定义参照配置或直接选择参照配置的提示框
        openTipsChooseOrCust(){
          this.$confirm('请选择参照配置的定义方式?','参照配置的方式', {
            distinguishCancelAndClose: true,
@@ -2511,7 +2513,7 @@
              serialStart: row!=null&&row.serialStart != '' ? row.serialStart:1,  //流水号起始值
              serialStep: row!=null&&row.serialStep != '' ? row.serialStep:1,   //流水的步长
              codeFillType: row!=null&&row.codeFillType != '' ? row.codeFillType:'code_fill_right', //编码补位方式
              codeFillSeparatorSelect: row!=null&&row.codeFillSeparatorSelect != '' ? row.codeFillSeparatorSelect:0,    //补位时的字符,选中的下拉框的下标
              codeFillSeparatorSelect: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparatorSelect:0,    //补位时的字符,选中的下拉框的下标
              codeFillSeparator: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparator:0,          //补位时的字符
              codeFillLength: row!=null&&row.codeFillLength != '' ? row.codeFillLength:'',              //填充长度
              codeFillLimit: row!=null&&row.codeFillLimit != '' ? row.codeFillLimit:'',               //流水上限
@@ -2570,7 +2572,7 @@
        },
        //枚举和可输可选内容查询
        loadCodeSecType(){
          getDictionary({code: "codeBasicSecType"}).then(res=>{
          getDictionary({code: "codeSecType"}).then(res=>{
            this.sectypeList = res.data.data;
          })
          this.loadCodeSecLength();
Source/UBCS-WEB/vue.config.js
@@ -26,9 +26,9 @@
    proxy: {
      '/api': {
        //本地服务接口地址
         target: 'http://localhost:37000',
        // target: 'http://192.168.3.7:37000',
        // target: 'http://dev.vci-tech.com:37000',
        target: 'http://localhost:37000',
        //target: 'http://192.168.3.7:37000',
        //target: 'http://dev.vci-tech.com:37000',
        //target: 'http://192.168.1.51:37000/',
        //远程演示服务地址,可用于直接启动项目
        // target: 'https://saber.bladex.vip/api',
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java
@@ -97,5 +97,4 @@
    @ApiModelProperty(value = "取值范围")
    private String range;
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java
@@ -45,7 +45,6 @@
     */
    private static final long serialVersionUID = -4431848943790920077L;
    @JsonSerialize(
        using = ToStringSerializer.class
    )
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
@@ -151,9 +151,9 @@
    private String referTypeName;
    /**
     * æ‰€å±žé¢†åŸŸ
     * æ˜¯å¦å¼€å¯å…¨å±€
     */
    private String doMain;
    private String isOpenGlobal;
    /**
     * æŽ’序
@@ -161,6 +161,11 @@
    private Integer orderNum;
    /**
     * æ˜¯å¦å¼€å¯æŒä¹…化
     */
    private String isPersistence;
    /**
     * æ˜¾ç¤ºçš„属性-显示对象
     */
    @TableField(exist = false)
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java
@@ -1,10 +1,14 @@
package com.vci.ubcs.code.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.annotation.EntityMapping;
import com.vci.ubcs.starter.revision.model.BaseModel;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.io.Serializable;
/**
 * ç¼–码规则管理-引用码段-参照配置-显示属性配置
@@ -15,11 +19,17 @@
@Data
@TableName("PL_CODE_SHOWFIELDCONFIG")
@ApiModel(value = "CodeShowFieldConfig对象", description = "编码规则管理-引用码段-参照配置-显示属性配置")
public class CodeShowFieldConfig extends BaseModel {
public class CodeShowFieldConfig implements Serializable {
    private static final long serialVersionUID = -71135592796848692L;
    /**
     * ä¸»é”®
     */
    @TableId(value = "OID",type = IdType.ASSIGN_UUID)
    private String oid;
    /**
     * åˆ—字段
     */
    private String field;
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java
@@ -1,5 +1,7 @@
package com.vci.ubcs.code.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.starter.revision.model.BaseModel;
import io.swagger.annotations.ApiModel;
@@ -15,11 +17,17 @@
@Data
@TableName("PL_CODE_SRCHCONDCONFIG")
@ApiModel(value = "CodeSrchCondConfig对象", description = "编码规则管理-引用码段-参照配置-搜索条件配置")
public class CodeSrchCondConfig extends BaseModel {
public class CodeSrchCondConfig {
    private static final long serialVersionUID = -51655155561881523L;
    /**
     * ä¸»é”®
     */
    @TableId(value = "OID",type = IdType.ASSIGN_UUID)
    private String oid;
    /**
     * ç­›é€‰å­—段
     */
    private String filterField;
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java
@@ -19,11 +19,6 @@
    private static final long serialVersionUID = -71135592796848692L;
    /**
     * å…³è”的参照配置id
     */
    private String configOid;
    /**
     * å­—段类型-显示文本
     */
    private String fieldTypeText;
Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java
@@ -73,7 +73,6 @@
        return getValue(name.getName(), nameChild);
    }
    /**
     * èŽ·å–å­—å…¸å€¼
     *
Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java
@@ -88,6 +88,59 @@
     * ç”¨æˆ·å¹³å°
     */
    USER_TYPE("user_type"),
    /**
     * codeSecType ç å€¼ç±»åž‹
     */
    CODE_SEC_TYPE("codeSecType"),
    /**
     * å±‚级码段的层级类型
     */
    CODE_LEVEL_TYPE("codeLevelType"),
    /**
     * ç æ®µé•¿åº¦ç±»åž‹
     */
    CODE_SEC_LENGTH("codeSecLength"),
    /**
     * å€¼æˆªå–类型
     */
    CODE_CUT_TYPE("codeCutType"),
    /**
     * å€¼æˆªå–类型
     */
    CODE_GET_VALUE_TYPE("codeGetValueType"),
    /**
     * åˆ†ç±»ä¸­çš„æµç¨‹æ¨¡æ¿ç”¨é€”
     */
    CODE_CLASSIFY_PROCESS_USE("codeClassifyProcessUse"),
    /**
     * å±žæ€§ç±»åž‹
     */
    VCO_FIELD_TYPE("vciFieldType"),
    /**
     * çª—口类型
     */
    CODE_REFER_CONFIG_TYPE("codeReferConfigType"),
    /**
     * ç¼–码规则的生命周期
     */
    CODE_RULE_LC("codeRuleLC"),
    /**
     * å‚照配置中用到的字段类型
     */
    CODE_REFER_CONFIG_FIELD_TYPE("codeReferConfigFieldType"),
    /**
     * å‚照配置中用到的列固定位置
     */
    CODE_REFER_CONFIG_FIXED("codeReferConfigFixed"),
    /**
     * ç­›é€‰ç±»åž‹
     */
    CODE_REFER_CONFIG_FILTER_TYPE("codeReferConfigFilterType"),
    /**
     * æ¨¡æ¿çš„æŒ‰é’®ç”¨é€”
     */
    CODE_TEMPLATE_BUTTON_USE("codeTemplateButtonUse"),
    ;
    final String name;
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java
@@ -52,6 +52,11 @@
     */
    public static final String CODE_KEY_ATTR_REPEAT_RULE = "codekeyattrrepeat";
    /**
     * å‚照配置
     */
    public static final String CODE_REFER_CONFIG = "codereferconfig";
    /**
     * ç›¸ä¼¼æŸ¥è¯¢è§„则
     */
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java
@@ -2,22 +2,14 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.vci.ubcs.code.dto.CodeReferConfigDTO;
import com.vci.ubcs.code.entity.CodeReferConfig;
import com.vci.ubcs.code.service.CodeReferConfigService;
import com.vci.ubcs.code.service.ICodeReferConfigService;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
import org.apache.ibatis.annotations.Param;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
 * å‚照配置表(CodeReferConfig)表控制层
@@ -33,7 +25,7 @@
     * æœåŠ¡å¯¹è±¡
     */
    @Resource
    private CodeReferConfigService codeReferconfigService;
    private ICodeReferConfigService codeReferconfigService;
    /**
     * åˆ†é¡µæŸ¥è¯¢
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java
@@ -27,10 +27,10 @@
    /**
     * æ‰¹é‡æ’å…¥
     * @param codeBasicSecList
     //* @param codeBasicSecList
     * @return
     */
    Long insertBatch(@Param("entities") List<CodeBasicSec> codeBasicSecList);
    //    Long insertBatch(@Param("entities") List<CodeBasicSec> codeBasicSecList);
    List<String> getOidByCodeclassifysecOid(@Param("codeClassifySecOid") String codeClassifySecOid);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java
@@ -15,71 +15,6 @@
 */
public interface CodeShowFieldConfigMapper extends BaseMapper<CodeShowFieldConfig> {
    /**
     * é€šè¿‡ID查询单条数据
     *
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    CodeShowFieldConfig queryById(String oid);
    /**
     * æŸ¥è¯¢æŒ‡å®šè¡Œæ•°æ®
     *
     * @param plCodeShowfieldconfig æŸ¥è¯¢æ¡ä»¶
     * @param pageable         åˆ†é¡µå¯¹è±¡
     * @return å¯¹è±¡åˆ—表
     */
    List<CodeShowFieldConfig> queryAllByLimit(CodeShowFieldConfig plCodeShowfieldconfig, @Param("pageable") Pageable pageable);
    /**
     * ç»Ÿè®¡æ€»è¡Œæ•°
     *
     * @param plCodeShowfieldconfig æŸ¥è¯¢æ¡ä»¶
     * @return æ€»è¡Œæ•°
     */
    long count(CodeShowFieldConfig plCodeShowfieldconfig);
    /**
     * æ–°å¢žæ•°æ®
     *
     * @param plCodeShowfieldconfig å®žä¾‹å¯¹è±¡
     * @return å½±å“è¡Œæ•°
     */
    int insert(CodeShowFieldConfig plCodeShowfieldconfig);
    /**
     * æ‰¹é‡æ–°å¢žæ•°æ®ï¼ˆMyBatis原生foreach方法)
     *
     * @param entities List<CodeShowFieldConfig> å®žä¾‹å¯¹è±¡åˆ—表
     * @return å½±å“è¡Œæ•°
     */
    int insertBatch(@Param("entities") List<CodeShowFieldConfig> entities);
    /**
     * æ‰¹é‡æ–°å¢žæˆ–按主键更新数据(MyBatis原生foreach方法)
     *
     * @param entities List<CodeShowFieldConfig> å®žä¾‹å¯¹è±¡åˆ—表
     * @return å½±å“è¡Œæ•°
     * @throws org.springframework.jdbc.BadSqlGrammarException å…¥å‚是空List的时候会抛SQL语句错误的异常,请自行校验入参
     */
    int insertOrUpdateBatch(@Param("entities") List<CodeShowFieldConfig> entities);
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param plCodeShowfieldconfig å®žä¾‹å¯¹è±¡
     * @return å½±å“è¡Œæ•°
     */
    int update(CodeShowFieldConfig plCodeShowfieldconfig);
    /**
     * é€šè¿‡ä¸»é”®åˆ é™¤æ•°æ®
     *
     * @param oid ä¸»é”®
     * @return å½±å“è¡Œæ•°
     */
    int deleteById(String oid);
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java
@@ -14,71 +14,5 @@
 */
public interface CodeSrchCondConfigMapper extends BaseMapper<CodeSrchCondConfig> {
    /**
     * é€šè¿‡ID查询单条数据
     *
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    CodeSrchCondConfig queryById(String oid);
    /**
     * æŸ¥è¯¢æŒ‡å®šè¡Œæ•°æ®
     *
     * @param plCodeSrchcondconfig æŸ¥è¯¢æ¡ä»¶
     * @param pageable         åˆ†é¡µå¯¹è±¡
     * @return å¯¹è±¡åˆ—表
     */
    List<CodeSrchCondConfig> queryAllByLimit(CodeSrchCondConfig plCodeSrchcondconfig, @Param("pageable") Pageable pageable);
    /**
     * ç»Ÿè®¡æ€»è¡Œæ•°
     *
     * @param plCodeSrchcondconfig æŸ¥è¯¢æ¡ä»¶
     * @return æ€»è¡Œæ•°
     */
    long count(CodeSrchCondConfig plCodeSrchcondconfig);
    /**
     * æ–°å¢žæ•°æ®
     *
     * @param plCodeSrchcondconfig å®žä¾‹å¯¹è±¡
     * @return å½±å“è¡Œæ•°
     */
    int insert(CodeSrchCondConfig plCodeSrchcondconfig);
    /**
     * æ‰¹é‡æ–°å¢žæ•°æ®ï¼ˆMyBatis原生foreach方法)
     *
     * @param entities List<CodeSrchCondConfig> å®žä¾‹å¯¹è±¡åˆ—表
     * @return å½±å“è¡Œæ•°
     */
    int insertBatch(@Param("entities") List<CodeSrchCondConfig> entities);
    /**
     * æ‰¹é‡æ–°å¢žæˆ–按主键更新数据(MyBatis原生foreach方法)
     *
     * @param entities List<CodeSrchCondConfig> å®žä¾‹å¯¹è±¡åˆ—表
     * @return å½±å“è¡Œæ•°
     * @throws org.springframework.jdbc.BadSqlGrammarException å…¥å‚是空List的时候会抛SQL语句错误的异常,请自行校验入参
     */
    int insertOrUpdateBatch(@Param("entities") List<CodeSrchCondConfig> entities);
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param plCodeSrchcondconfig å®žä¾‹å¯¹è±¡
     * @return å½±å“è¡Œæ•°
     */
    int update(CodeSrchCondConfig plCodeSrchcondconfig);
    /**
     * é€šè¿‡ä¸»é”®åˆ é™¤æ•°æ®
     *
     * @param oid ä¸»é”®
     * @return å½±å“è¡Œæ•°
     */
    int deleteById(String oid);
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
@@ -161,6 +161,14 @@
    List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec> codeBasicSecDOs, boolean hasFixedValue) throws VciBaseException;
    /**
     * æ‰¹é‡æ•°æ®å¯¹è±¡è½¬æ¢ä¸ºæ˜¾ç¤ºå¯¹è±¡
     * @param codeBasicSecDOs æ•°æ®å¯¹è±¡åˆ—表
     * @return æ˜¾ç¤ºå¯¹è±¡
     * @throws VciBaseException å‚数为空或者不存在的时候会抛出异常
     */
    List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec>  codeBasicSecDOs) throws VciBaseException;
    /**
     * æ•°æ®å¯¹è±¡è½¬æ¢ä¸ºæ˜¾ç¤ºå¯¹è±¡
     * @param  codeBasicSecDO æ•°æ®å¯¹è±¡
     * @return æ˜¾ç¤ºå¯¹è±¡
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java
@@ -41,7 +41,6 @@
     */
    IPage<CodeOsattributeVO> selectCodeOsattributePage(IPage<CodeOsattributeVO> page, CodeOsattributeVO CodeOsattribute);
    boolean isDefaultAttr(String selectKey);
    Map<String, CodeOsattributeVO> getDefaultAttributeVOMap();
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java
ÎļþÃû´Ó Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeReferConfigService.java ÐÞ¸Ä
@@ -1,18 +1,12 @@
package com.vci.ubcs.code.service;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.yulichang.base.MPJBaseService;
import com.vci.ubcs.code.dto.CodeReferConfigDTO;
import com.vci.ubcs.code.entity.CodeReferConfig;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import java.util.List;
@@ -22,7 +16,7 @@
 * @author ludc
 * @since 2023-05-19 17:47:59
 */
public interface CodeReferConfigService extends MPJBaseService<CodeReferConfig> {
public interface ICodeReferConfigService extends MPJBaseService<CodeReferConfig> {
    /**
     * é€šè¿‡ID查询单条数据
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java
ÎļþÃû´Ó Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeShowFieldConfigService.java ÐÞ¸Ä
@@ -3,9 +3,6 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
import jdk.internal.dynalink.linker.LinkerServices;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import java.util.List;
@@ -15,15 +12,7 @@
 * @author ludc
 * @since 2023-05-19 17:58:56
 */
public interface CodeShowFieldConfigService extends IService<CodeShowFieldConfig> {
    /**
     * é€šè¿‡ID查询单条数据
     *
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    CodeShowFieldConfig queryById(String oid);
public interface ICodeShowFieldConfigService extends IService<CodeShowFieldConfig> {
    /**
     * æ–°å¢žæ•°æ®
@@ -39,15 +28,7 @@
     * @param codeShowFieldConfigVOS å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS);
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param codeShowFieldConfig å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    boolean update(CodeShowFieldConfig codeShowFieldConfig);
    boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS, String oid);
    /**
     * æ‰¹é‡ä¿®æ”¹æ•°æ®
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java
ÎļþÃû´Ó Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeSrchCondConfigService.java ÐÞ¸Ä
@@ -1,10 +1,7 @@
package com.vci.ubcs.code.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.entity.CodeSrchCondConfig;
import com.vci.ubcs.code.entity.CodeSrchCondConfig;
import com.vci.ubcs.code.service.impl.CodeSrchCondConfigServiceImpl;
import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -17,24 +14,7 @@
 * @author ludc
 * @since 2023-05-19 17:58:56
 */
public interface CodeSrchCondConfigService extends IService<CodeSrchCondConfig> {
    /**
     * é€šè¿‡ID查询单条数据
     *
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    CodeSrchCondConfig queryById(String oid);
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
     * @param codeSrchCondConfig ç­›é€‰æ¡ä»¶
     * @param pageRequest      åˆ†é¡µå¯¹è±¡
     * @return æŸ¥è¯¢ç»“æžœ
     */
    Page<CodeSrchCondConfig> queryByPage(CodeSrchCondConfig codeSrchCondConfig, PageRequest pageRequest);
public interface ICodeSrchCondConfigService extends IService<CodeSrchCondConfig> {
    /**
     * æ–°å¢žæ•°æ®
@@ -50,15 +30,7 @@
     * @param codeSrchCondConfigVOS å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS);
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param codeSrchCondConfig å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    boolean update(CodeSrchCondConfig codeSrchCondConfig);
    boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS, String oid);
    /**
     * æ‰¹é‡â€”—修改数据
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
@@ -16,10 +16,8 @@
import com.vci.ubcs.code.mapper.CodeBasicSecMapper;
import com.vci.ubcs.code.mapper.CodeClassifyValueMapper;
import com.vci.ubcs.code.mapper.CodeFixedValueMapper;
import com.vci.ubcs.code.service.ICodeBasicSecService;
import com.vci.ubcs.code.service.ICodeClassifyValueService;
import com.vci.ubcs.code.service.ICodeFixedValueService;
import com.vci.ubcs.code.service.ICodeRuleService;
import com.vci.ubcs.code.service.*;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
import com.vci.ubcs.code.vo.pagemodel.CodeFixedValueVO;
import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
@@ -83,6 +81,9 @@
    @Resource
    private ICodeClassifyValueService codeClassifyValueService;
    @Resource
    private ICodeReferConfigService codeReferConfigService;
    @Resource
    private IDictBizClient iDictBizClient;
@@ -237,15 +238,22 @@
            && StringUtils.isBlank(codeBasicSecDO.getCodeFillSeparator())){
            throw new VciBaseException("当补位方式为左补位或者右补位的时候,补位字符不能为空");
        }
        CodeReferConfigVO codeReferConfigVO = null;
        //引用码段的时候,需要判断参照的信息是否正确
        if(CodeSecTypeEnum.CODE_REFER_SEC.getValue().equalsIgnoreCase(codeBasicSecDO.getSecType())){
            if(StringUtils.isBlank(codeBasicSecDO.getReferConfig())){
                throw new VciBaseException("引用码段的时候,需要填写 å‚照配置 çš„内容");
            }
            try{
                JSONObject.parseObject(codeBasicSecDO.getReferConfig(), UIFormReferVO.class);
                //JSONObject.parseObject(codeBasicSecDO.getReferConfig(), UIFormReferVO.class);
                codeReferConfigVO = JSONObject.parseObject(codeBasicSecDO.getReferConfig(), CodeReferConfigVO.class);
                // å°†å‚照配置进行持久化,给用户提供可可选择参照配置的方式
            }catch (Throwable e){
                throw new VciBaseException("引用码段的时候,参照配置的内容的格式不正确,",new String[0],e);
            }
            if(codeReferConfigVO.getIsPersistence()=="true"){
                codeReferConfigService.insert(codeReferConfigVO);
            }
        }
        boolean resBoolean = codeBasicSecMapper.insert(codeBasicSecDO) > 0;
@@ -731,6 +739,27 @@
    }
    /**
     * æ‰¹é‡æ•°æ®å¯¹è±¡è½¬æ¢ä¸ºæ˜¾ç¤ºå¯¹è±¡
     *
     * @param codeBasicSecDOs æ•°æ®å¯¹è±¡åˆ—表
     * @return æ˜¾ç¤ºå¯¹è±¡
     * @throws VciBaseException å‚数为空或者不存在的时候会抛出异常
     */
    @Override
    public List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec> codeBasicSecDOs) throws VciBaseException {
        List<CodeBasicSecVO> voList = new ArrayList<CodeBasicSecVO>();
        if (!CollectionUtils.isEmpty(codeBasicSecDOs)) {
            for (CodeBasicSec s : codeBasicSecDOs) {
                CodeBasicSecVO vo = codeBasicSecDO2VO(s);
                if (vo != null) {
                    voList.add(vo);
                }
            }
        }
        return voList;
    }
    /**
     * æ•°æ®å¯¹è±¡è½¬æ¢ä¸ºæ˜¾ç¤ºå¯¹è±¡
     *
     * @param codeBasicSecDO æ•°æ®å¯¹è±¡
@@ -739,14 +768,26 @@
     */
    @Override
    public CodeBasicSecVO codeBasicSecDO2VO(CodeBasicSec codeBasicSecDO) throws VciBaseException {
        CodeBasicSecVO vo = new CodeBasicSecVO();
        CodeBasicSecVO codeBasicSecVO = new CodeBasicSecVO();
        if (codeBasicSecDO != null) {
            BeanUtilForVCI.copyPropertiesIgnoreCase(codeBasicSecDO, vo);
            BeanUtilForVCI.copyPropertiesIgnoreCase(codeBasicSecVO, codeBasicSecVO);
            codeBasicSecVO.setSecTypeText(CodeSecTypeEnum.getTextByValue(codeBasicSecVO.getSecType()));
            codeBasicSecVO.setCodeLevelTypeText(CodeLevelTypeEnum.getTextByValue(codeBasicSecVO.getCodeLevelType()));
            codeBasicSecVO.setCodeSecLengthTypeText(CodeSecLengthTypeEnum.getTextByValue(codeBasicSecVO.getCodeSecLengthType()));
            codeBasicSecVO.setValueCutTypeText(CodeCutTypeEnum.getValueByText(codeBasicSecVO.getValueCutType()));
            codeBasicSecVO.setCodeGetValueTypeText(CodeGetValueTypeEnum.getValueByText(codeBasicSecVO.getCodeGetValueType()));
            // å¦‚果是分类码段需要查询所属分类的中文名称
            if(codeBasicSecDO.getSecType().equals("codeclassifysec") && Func.isNotEmpty(codeBasicSecDO.getParentClassifySecOid())){
                CodeBasicSec codeBasicSec = codeBasicSecMapper.selectOne(Wrappers.<CodeBasicSec>query().lambda()
                    .eq(CodeBasicSec::getOid, codeBasicSecDO.getParentClassifySecOid())
                    .eq(CodeBasicSec::getSecType, codeBasicSecDO.getSecType()));
                codeBasicSecVO.setParentClassifySecText(codeBasicSec.getName());
            }
            //如果有lcstatus的类的话
            if (true) {
                //vo.setLcStatusText({lcStatusFullClassName}.getTextByValue(vo.getLcStatus()));
            }
        }
        return vo;
        return codeBasicSecVO;
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -19,6 +19,7 @@
import com.vci.ubcs.code.po.CodeClassifyPO;
import com.vci.ubcs.code.service.ICodeClassifyService;
import com.vci.ubcs.code.service.ICodeKeyAttrRepeatService;
import com.vci.ubcs.code.service.ICodeOsattributeService;
import com.vci.ubcs.code.service.ICodeRuleService;
import com.vci.ubcs.code.vo.CodeOsattributeVO;
import com.vci.ubcs.code.vo.CodeOsbtmtypeVO;
@@ -55,6 +56,7 @@
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -86,7 +88,11 @@
    @Resource
    private IBtmTypeClient btmTypeClient;
    /**
     * å±žæ€§æœåŠ¡
     */
//    @Autowired
//    private OsAttributeServiceI attributeService;
    /**
     * æ—¥å¿—
@@ -267,7 +273,6 @@
        return codeClassifyMapper.checkHasChild(oid.trim());
    }
    /**
     * åˆ é™¤ä¸»é¢˜åº“分类
     * @param codeClassify ä¸»é¢˜åº“分类数据传输对象,oid和ts需要传输
@@ -372,7 +377,6 @@
        return codeClassifyDO2VOs(codeClassifyDOList);
    }
    /**
     * ä½¿ç”¨ä¸»é”®é›†åˆæŸ¥è¯¢æ•°æ®å¯¹è±¡
     * @param oidCollections ä¸»é”®çš„集合
@@ -391,7 +395,6 @@
        }
        return  codeClassifyList;
    }
    /**
     * æ‰¹é‡æ•°æ®å¯¹è±¡è½¬æ¢ä¸ºæ˜¾ç¤ºå¯¹è±¡
@@ -906,7 +909,7 @@
        condition.put("pkbtmtype",topClassifyVO.getBtmtypeid());
        List<CodeOsbtmtypeattributeEntity> unDefaultAttributes = codeOsbtmtypeattributeMapper.selectByMap(condition);
//        List<OsBtmTypeAttributeVO> unDefaultAttributes = btmService. (topClassifyVO.getBtmtypeid());
        // List<OsBtmTypeAttributeVO> unDefaultAttributes = btmService. (topClassifyVO.getBtmtypeid());
        List<CodeOsattributeVO> attributeVOS = new ArrayList<>();
        if(!CollectionUtils.isEmpty(unDefaultAttributes)){
            unDefaultAttributes.stream().forEach(attr->{
@@ -916,6 +919,7 @@
                attributeVO.setAttrlength(Short.valueOf(attr.getAttributelength()));
                attributeVO.setBtmtypeid(attr.getReferbtmtypeid());
                attributeVO.setBtmtypename(attr.getReferbtmtypename());
                attributeVO.setAttributedatatypetext(attr.getReferbtmtypename());
                boolean add = true;
                if(StringUtils.isNotBlank(id) && !attributeVO.getId().contains(id.replace("*",""))){
                    add = false;
@@ -928,8 +932,8 @@
                }
            });
        }
//        if(!CollectionUtils.isEmpty(attributeService.getDefaultAttributeVOs())){
//            attributeService.getDefaultAttributeVOs().stream().forEach(attr->{
//        if(!CollectionUtils.isEmpty(codeOsattributeService.getDefaultAttributeVOs())){
//            codeOsattributeService.getDefaultAttributeVOs().stream().forEach(attr->{
//                boolean add = true;
//                if(StringUtils.isNotBlank(id) && !attr.getId().contains(id.replace("*",""))){
//                    add = false;
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java
@@ -3,51 +3,37 @@
import com.alibaba.cloud.commons.lang.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
import com.vci.ubcs.code.dto.CodeClassifyProcessTempDTO;
import com.vci.ubcs.code.dto.CodeReferConfigDTO;
import com.vci.ubcs.code.entity.*;
import com.vci.ubcs.code.mapper.CodeReferConfigMapper;
import com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper;
import com.vci.ubcs.code.service.CodeReferConfigService;
import com.vci.ubcs.code.service.CodeShowFieldConfigService;
import com.vci.ubcs.code.service.CodeSrchCondConfigService;
import com.vci.ubcs.code.service.ICodeReferConfigService;
import com.vci.ubcs.code.service.ICodeShowFieldConfigService;
import com.vci.ubcs.code.service.ICodeSrchCondConfigService;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.code.wrapper.CodeClassifyProcessTempWrapper;
import com.vci.ubcs.code.wrapper.CodeReferConfigWraper;
import com.vci.ubcs.code.wrapper.CodeShowFieldConfigWraper;
import com.vci.ubcs.code.wrapper.CodeSrchCondConfigWraper;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
import com.vci.ubcs.starter.util.Map2MPJLambdaUtil;
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springframework.cglib.beans.BeanMap;
import org.springframework.stereotype.Service;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.TS_NOT_PROCESS;
@@ -58,16 +44,16 @@
 * @since 2023-05-19 17:48:02
 */
@Service("CodeReferconfigService")
public class CodeReferConfigServiceImpl extends MPJBaseServiceImpl<CodeReferConfigMapper,CodeReferConfig> implements CodeReferConfigService {
public class CodeReferConfigServiceImpl extends MPJBaseServiceImpl<CodeReferConfigMapper,CodeReferConfig> implements ICodeReferConfigService {
    @Resource
    private CodeReferConfigMapper codeReferconfigMapper;
    @Resource
    private CodeShowFieldConfigService codeShowFieldConfigService;
    private ICodeShowFieldConfigService ICodeShowFieldConfigService;
    @Resource
    private CodeSrchCondConfigService codeSrchCondConfigService;
    private ICodeSrchCondConfigService ICodeSrchCondConfigService;
    /**
     * é€šè¿‡ID查询单条数据
@@ -81,12 +67,20 @@
        return CodeReferConfigWraper.build().entityVO(codeReferConfig);
    }
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
     * @param bladeQueryObject ç­›é€‰æ¡ä»¶
     * @return æŸ¥è¯¢ç»“æžœ
     */
    @Override
    public IPage<CodeReferConfigVO> queryByJoinPage(BladeQueryObject bladeQueryObject) {
        CodeReferConfig codeReferConfig = new CodeReferConfig();
        // æ ¹æ®ç§Ÿæˆ·è¿›è¡ŒåŒºåˆ†å¯¹åº”的参照配置
        Map<String, Object> conditionMap = bladeQueryObject.getConditionMap();
        // æŸ¥è¯¢æ‰€å±žç§Ÿæˆ·ä¸‹çš„和开启全局的参照配置信息
        conditionMap.put("tenantId",AuthUtil.getTenantId());
        conditionMap.put("isOpenGlobal","true");
        BeanMap beanMap = BeanMap.create(codeReferConfig);
        beanMap.putAll(conditionMap);
        // æ·»åŠ é»˜è®¤æŽ’åºå­—æ®µ,根据时间进行排序
@@ -96,12 +90,6 @@
        return CodeReferConfigWraper.build().pageVO(codeReferConfigs);
    }
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
     * @param codeReferConfigVO ç­›é€‰æ¡ä»¶
     * @return æŸ¥è¯¢ç»“æžœ
     */
    @Override
    public List<CodeReferConfigVO> queryByList(CodeReferConfigVO codeReferConfigVO) {
        codeReferConfigVO.setTenantId(AuthUtil.getTenantId());
@@ -126,18 +114,25 @@
        if (StringUtils.isBlank(codeReferConfigVO.getReferType())){
            throw new VciBaseException("参照配置不能为空");
        }
        Long count = countCodeReferConfig(codeReferConfigVO);
        if(count > 0){
            throw new VciBaseException("已存在相同的参照配置");
        }
        CodeReferConfig CodeReferConfig = Objects.requireNonNull(BeanUtil.copy(codeReferConfigVO, CodeReferConfig.class));
        boolean resInsertReferConfig = this.codeReferconfigMapper.insert(CodeReferConfig) > 0;
        // Long count = countCodeReferConfig(codeReferConfigVO);
        // if(count > 0){
        //    throw new VciBaseException("已存在相同的参照配置");
        // }
        CodeReferConfig codeReferConfig = CodeReferConfigWraper.build().entityDO(codeReferConfigVO);
        codeReferConfig.setOid(VciBaseUtil.getPk().toUpperCase());
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeReferConfig, MdmBtmTypeConstant.CODE_REFER_CONFIG);
        codeReferConfig.setTenantId(AuthUtil.getTenantId());
        boolean resInsertReferConfig = this.codeReferconfigMapper.insert(codeReferConfig) > 0;
        if (!resInsertReferConfig) {
            return R.fail("新增参照配置失败!");
        }
        codeShowFieldConfigService.insertBatch(codeReferConfigVO.getCodeShowFieldConfigVOS());
        codeSrchCondConfigService.insertBatch(codeReferConfigVO.getCodeSrchCondConfigVOS());
        // ä¸»é”®å›žå¡«
        if(Func.isNotEmpty(codeReferConfig.getCodeShowFieldConfigs())){
            ICodeShowFieldConfigService.insertBatch(codeReferConfigVO.getCodeShowFieldConfigVOS(),codeReferConfig.getOid());
        }
        if(Func.isNotEmpty(codeReferConfig.getCodeSrchCondConfigs())){
            ICodeSrchCondConfigService.insertBatch(codeReferConfigVO.getCodeSrchCondConfigVOS(),codeReferConfig.getOid());
        }
        return R.data(codeReferConfigVO);
    }
@@ -148,12 +143,17 @@
     */
    private Long countCodeReferConfig(CodeReferConfigVO codeReferConfigVO) {
        String templateName = codeReferConfigVO.getName();
        if (StringUtils.isBlank(templateName)){
            throw new VciBaseException("参照配置名称不能为空");
        String templateId = codeReferConfigVO.getId();
        if (StringUtils.isBlank(templateName) && StringUtils.isBlank(templateId)){
            throw new VciBaseException("参照配置编号和名称不能为空");
        }
        LambdaQueryWrapper<CodeReferConfig> wrapper = Wrappers.<CodeReferConfig>query()
            .lambda().eq(CodeReferConfig::getId, codeReferConfigVO.getId())
            .eq(CodeReferConfig::getTenantId, codeReferConfigVO.getTenantId());
            .eq(CodeReferConfig::getTenantId, codeReferConfigVO.getTenantId())
            .or(true)
            .eq(CodeReferConfig::getIsOpenGlobal,"true") // æŸ¥è¯¢å¼€å¯å…¨å±€çš„参照配置
            .eq(CodeReferConfig::getId,templateId)
            .eq(CodeReferConfig::getName,templateName);
        Long count = codeReferconfigMapper.selectCount(wrapper);
        return count;
    }
@@ -165,18 +165,18 @@
    private MPJLambdaWrapper<CodeReferConfig> getMPJLambdaWrapper(){
        MPJLambdaWrapper<CodeReferConfig> mpjLambdaWrapper = new MPJLambdaWrapper<>(CodeReferConfig.class)
            .selectAll(CodeReferConfig.class)
            //            .select(CodeShowFieldConfig::getField
//                ,CodeShowFieldConfig::getTitle
//                ,CodeShowFieldConfig::getFieldType
//                ,CodeShowFieldConfig::getSort
//                ,CodeShowFieldConfig::getAttrSortField
//                ,CodeShowFieldConfig::getWidth
//                ,CodeShowFieldConfig::getFixedPosition
//                ,CodeShowFieldConfig::getTemplet)
//            .select(
//                CodeSrchCondConfig::getFilterType,
//                CodeSrchCondConfig::getFilterField,
//                CodeSrchCondConfig::getFilterValue)
            // .select(CodeShowFieldConfig::getField
            // ,CodeShowFieldConfig::getTitle
            // ,CodeShowFieldConfig::getFieldType
            // ,CodeShowFieldConfig::getSort
            // ,CodeShowFieldConfig::getAttrSortField
            // ,CodeShowFieldConfig::getWidth
            // ,CodeShowFieldConfig::getFixedPosition
            // ,CodeShowFieldConfig::getTemplet)
            // .select(
            // CodeSrchCondConfig::getFilterType,
            // CodeSrchCondConfig::getFilterField,
            // CodeSrchCondConfig::getFilterValue)
            .selectCollection(CodeShowFieldConfig.class, CodeReferConfig::getCodeShowFieldConfigs)
            .selectCollection(CodeSrchCondConfig.class, CodeReferConfig::getCodeSrchCondConfigs)
            .leftJoin(CodeShowFieldConfig.class, CodeShowFieldConfig::getReferConfigOid,CodeReferConfig::getOid)
@@ -197,8 +197,8 @@
        if (!resUpdateReferConfig) {
            return R.fail("参照配置修改失败!");
        }
        this.codeShowFieldConfigService.updateBatch(codeReferConfigVO.getCodeShowFieldConfigVOS());
        this.codeSrchCondConfigService.updateBatch(codeReferConfigVO.getCodeSrchCondConfigVOS());
        this.ICodeShowFieldConfigService.updateBatch(codeReferConfigVO.getCodeShowFieldConfigVOS());
        this.ICodeSrchCondConfigService.updateBatch(codeReferConfigVO.getCodeSrchCondConfigVOS());
        return R.data(codeReferConfigVO);
    }
@@ -222,8 +222,8 @@
        if (!resDeleteReferConfig) {
            return R.fail("参照配置删除失败!");
        }
        this.codeShowFieldConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
        this.codeSrchCondConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
        this.ICodeShowFieldConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
        this.ICodeSrchCondConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
        return  R.status(resDeleteReferConfig);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java
@@ -1,19 +1,14 @@
package com.vci.ubcs.code.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper;
import com.vci.ubcs.code.service.CodeShowFieldConfigService;
import com.vci.ubcs.code.service.ICodeShowFieldConfigService;
import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
import com.vci.ubcs.code.wrapper.CodeShowFieldConfigWraper;
import org.springblade.core.mp.support.Query;
import org.springframework.stereotype.Service;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@@ -26,21 +21,10 @@
 * @since 2023-05-19 17:58:56
 */
@Service("CodeShowFieldConfigService")
public class CodeShowFieldConfigServiceImpl extends ServiceImpl<CodeShowFieldConfigMapper,CodeShowFieldConfig> implements CodeShowFieldConfigService {
public class CodeShowFieldConfigServiceImpl extends ServiceImpl<CodeShowFieldConfigMapper,CodeShowFieldConfig> implements ICodeShowFieldConfigService {
    @Resource
    private CodeShowFieldConfigMapper codeShowFieldConfigMapper;
    /**
     * é€šè¿‡ID查询单条数据
     *
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    @Override
    public CodeShowFieldConfig queryById(String oid) {
        return this.codeShowFieldConfigMapper.queryById(oid);
    }
    /**
     * æ–°å¢žæ•°æ®
@@ -55,23 +39,11 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS) {
        List<CodeShowFieldConfig> codeShowFieldConfigs = CodeShowFieldConfigWraper.build().listDO(codeShowFieldConfigVOS);
    public boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS, String oid) {
        List<CodeShowFieldConfig> codeShowFieldConfigs = CodeShowFieldConfigWraper.build().listDO(codeShowFieldConfigVOS,oid);
        boolean b = this.saveOrUpdateBatch(codeShowFieldConfigs);
        return b;
    }
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param codeShowFieldConfig å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean update(CodeShowFieldConfig codeShowFieldConfig) {
        return this.codeShowFieldConfigMapper.update(codeShowFieldConfig)>0;
    }
    @Override
    public boolean updateBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS) {
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java
@@ -1,28 +1,18 @@
package com.vci.ubcs.code.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.entity.CodeSrchCondConfig;
import com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper;
import com.vci.ubcs.code.mapper.CodeSrchCondConfigMapper;
import com.vci.ubcs.code.service.CodeSrchCondConfigService;
import com.vci.ubcs.code.service.ICodeSrchCondConfigService;
import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
import com.vci.ubcs.code.wrapper.CodeSrchCondConfigWraper;
import org.apache.cxf.endpoint.ServerImpl;
import org.springframework.stereotype.Service;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
/**
 * å¼•用码段,参照配置界面,查询条件配置表(CodeSrchCondConfigService)表服务实现类
@@ -31,34 +21,10 @@
 * @since 2023-05-19 17:58:56
 */
@Service("CodeSrchCondConfigService")
public class CodeSrchCondConfigServiceImpl extends ServiceImpl<CodeSrchCondConfigMapper, CodeSrchCondConfig> implements CodeSrchCondConfigService {
public class CodeSrchCondConfigServiceImpl extends ServiceImpl<CodeSrchCondConfigMapper, CodeSrchCondConfig> implements ICodeSrchCondConfigService {
    @Resource
    private CodeSrchCondConfigMapper codeSrchcondconfigMapper;
    /**
     * é€šè¿‡ID查询单条数据
     *    codeSrchcondconfig
     * @param oid ä¸»é”®
     * @return å®žä¾‹å¯¹è±¡
     */
    @Override
    public CodeSrchCondConfig queryById(String oid) {
        return this.codeSrchcondconfigMapper.queryById(oid);
    }
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
     * @param codeSrchcondconfig ç­›é€‰æ¡ä»¶
     * @param pageRequest      åˆ†é¡µå¯¹è±¡
     * @return æŸ¥è¯¢ç»“æžœ
     */
    @Override
    public Page<CodeSrchCondConfig> queryByPage(CodeSrchCondConfig codeSrchcondconfig, PageRequest pageRequest) {
        long total = this.codeSrchcondconfigMapper.count(codeSrchcondconfig);
        return new PageImpl<>(this.codeSrchcondconfigMapper.queryAllByLimit(codeSrchcondconfig, pageRequest), pageRequest, total);
    }
    /**
     * æ–°å¢žæ•°æ®
@@ -72,21 +38,11 @@
    }
    @Override
    public boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS) {
        List<CodeSrchCondConfig> codeSrchCondConfigs = CodeSrchCondConfigWraper.build().listDO(codeSrchCondConfigVOS);
    @Transactional(rollbackFor = Exception.class)
    public boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS, String oid) {
        List<CodeSrchCondConfig> codeSrchCondConfigs = CodeSrchCondConfigWraper.build().listDO(codeSrchCondConfigVOS,oid);
        return this.saveOrUpdateBatch(codeSrchCondConfigs);
    }
    /**
     * ä¿®æ”¹æ•°æ®
     *
     * @param codeSrchcondconfig å®žä¾‹å¯¹è±¡
     * @return å®žä¾‹å¯¹è±¡
     */
    @Override
    public boolean update(CodeSrchCondConfig codeSrchcondconfig) {
        return this.codeSrchcondconfigMapper.update(codeSrchcondconfig)>0;
    }
    @Override
    public boolean updateBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS) {
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java
@@ -17,12 +17,15 @@
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeBasicSec;
import com.vci.ubcs.code.enumpack.*;
import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import javax.annotation.Resource;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -40,15 +43,23 @@
    }
    @Override
    public CodeBasicSecVO entityVO(CodeBasicSec codeBasicSec) {
        CodeBasicSecVO codeBasicSecVO = Objects.requireNonNull(BeanUtil.copy(codeBasicSec, CodeBasicSecVO.class));
        //codeBasicSecVO.setLcStatusText(CodeRuleLC.getTextByValue(codeBasicSec.getLcStatus()));
        codeBasicSecVO.setSecTypeText(CodeSecTypeEnum.getTextByValue(codeBasicSec.getSecType()));
        codeBasicSecVO.setCodeLevelTypeText(CodeLevelTypeEnum.getTextByValue(codeBasicSec.getCodeLevelType()));
        codeBasicSecVO.setCodeSecLengthTypeText(CodeSecLengthTypeEnum.getTextByValue(codeBasicSec.getCodeSecLengthType()));
        codeBasicSecVO.setValueCutTypeText(CodeCutTypeEnum.getValueByText(codeBasicSec.getValueCutType()));
        codeBasicSecVO.setCodeGetValueTypeText(CodeGetValueTypeEnum.getValueByText(codeBasicSec.getCodeGetValueType()));
    public CodeBasicSecVO entityVO(CodeBasicSec codeBasicSecDO) {
        CodeBasicSecVO codeBasicSecVO = Objects.requireNonNull(BeanUtil.copy(codeBasicSecDO, CodeBasicSecVO.class));
        if(StringUtils.isNotBlank(codeBasicSecDO.getSecType())){
            codeBasicSecVO.setSecTypeText(EnumCache.getValue(EnumEnum.CODE_SEC_TYPE,codeBasicSecDO.getSecType()));
        }
        if(StringUtils.isNotBlank(codeBasicSecDO.getCodeLevelType())){
            codeBasicSecVO.setCodeLevelTypeText(EnumCache.getValue(EnumEnum.CODE_LEVEL_TYPE,codeBasicSecDO.getCodeLevelType()));
        }
        if(StringUtils.isNotBlank(codeBasicSecDO.getCodeSecLengthType())){
            codeBasicSecVO.setCodeSecLengthTypeText(EnumCache.getValue(EnumEnum.CODE_SEC_LENGTH,codeBasicSecDO.getCodeSecLengthType()));
        }
        if(StringUtils.isNotBlank(codeBasicSecDO.getValueCutType())){
            codeBasicSecVO.setValueCutTypeText(EnumCache.getValue(EnumEnum.CODE_CUT_TYPE,codeBasicSecDO.getValueCutType()));
        }
        if(StringUtils.isNotBlank(codeBasicSecDO.getCodeGetValueType())){
            codeBasicSecVO.setCodeGetValueTypeText(EnumCache.getValue(EnumEnum.CODE_GET_VALUE_TYPE,codeBasicSecDO.getCodeGetValueType()));
        }
        //codeBasicSecVO.setParentClassifySecText();
        //codeBasicSecVO.setSecretGradeText();
        return codeBasicSecVO;
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java
@@ -1,8 +1,11 @@
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeClassifyProcessTemp;
import com.vci.ubcs.code.enumpack.CodeClassifyProcessUseEnum;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyProcessTempVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
@@ -17,12 +20,10 @@
    @Override
    public CodeClassifyProcessTempVO entityVO(CodeClassifyProcessTemp codeClassifyProcessTemp) {
        CodeClassifyProcessTempVO codeClassifyProcessTempVO = Objects.requireNonNull(BeanUtil.copy(codeClassifyProcessTemp, CodeClassifyProcessTempVO.class));
        codeClassifyProcessTempVO.setCodeProcessUseText(CodeClassifyProcessUseEnum.getTextByValue(codeClassifyProcessTemp.getCodeProcessUse()));
        if(StringUtils.isNotBlank(codeClassifyProcessTemp.getCodeProcessUse())){
            codeClassifyProcessTempVO.setCodeProcessUseText(EnumCache.getValue(EnumEnum.CODE_CLASSIFY_PROCESS_USE,codeClassifyProcessTemp.getCodeProcessUse()));
        }
        return codeClassifyProcessTempVO;
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java
@@ -16,8 +16,11 @@
 */
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
@@ -38,9 +41,9 @@
    @Override
    public CodeClassifyTemplateAttrVO entityVO(CodeClassifyTemplateAttr CodeClstempattr) {
        CodeClassifyTemplateAttrVO codeClassifyTemplateAttrVO = Objects.requireNonNull(BeanUtil.copy(CodeClstempattr, CodeClassifyTemplateAttrVO.class));
        codeClassifyTemplateAttrVO.setAttributeDataTypeText(VciFieldTypeEnum.getTextByValue(CodeClstempattr.getAttributeDataType()));
        if(StringUtils.isNotBlank(CodeClstempattr.getAttributeDataType())){
            codeClassifyTemplateAttrVO.setAttributeDataTypeText( EnumCache.getValue(EnumEnum.VCO_FIELD_TYPE,CodeClstempattr.getAttributeDataType()));
        }
        return codeClassifyTemplateAttrVO;
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java
@@ -38,12 +38,10 @@
    @Override
    public CodeClassifyTemplateVO entityVO(CodeClassifyTemplate plCodeClstemplate) {
        CodeClassifyTemplateVO plCodeClstemplateVO = Objects.requireNonNull(BeanUtil.copy(plCodeClstemplate, CodeClassifyTemplateVO.class));
        //User createUser = UserCache.getUser(plCodeClstemplate.getCreateUser());
        //User updateUser = UserCache.getUser(plCodeClstemplate.getUpdateUser());
        //plCodeClstemplateVO.setCreateUserName(createUser.getName());
        //plCodeClstemplateVO.setUpdateUserName(updateUser.getName());
        return plCodeClstemplateVO;
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java
@@ -1,14 +1,18 @@
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeReferConfig;
import com.vci.ubcs.code.enumpack.CodeReferConfigTypeEnum;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
 * å‚照配置-包装类,返回视图层所需的字段
@@ -25,7 +29,9 @@
    @Override
    public CodeReferConfigVO entityVO(CodeReferConfig codeReferConfig) {
        CodeReferConfigVO codeReferConfigVO = Objects.requireNonNull(BeanUtil.copy(codeReferConfig, CodeReferConfigVO.class));
        codeReferConfigVO.setTypeText(CodeReferConfigTypeEnum.getTextByValue(codeReferConfig.getType()));
        if(StringUtils.isNotBlank(codeReferConfig.getType())){
            codeReferConfigVO.setTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_TYPE,codeReferConfig.getType()));
        }
        if(Func.isNotEmpty(codeReferConfig.getCodeSrchCondConfigs())){
            codeReferConfigVO.setCodeSrchCondConfigVOS(CodeSrchCondConfigWraper.build().listVO(codeReferConfig.getCodeSrchCondConfigs()));
        }
@@ -37,4 +43,18 @@
        return codeReferConfigVO;
    }
    public CodeReferConfig entityDO(CodeReferConfigVO codeReferConfigVO) {
        CodeReferConfig codeReferConfig = Objects.requireNonNull(BeanUtil.copy(codeReferConfigVO, CodeReferConfig.class));
        //codeReferConfig.setType(CodeReferConfigTypeEnum.getValueByText(codeReferConfigVO.getTypeText()));
        if(Func.isNotEmpty(codeReferConfigVO.getCodeSrchCondConfigVOS())){
            codeReferConfig.setCodeSrchCondConfigs(CodeSrchCondConfigWraper.build().listDO(codeReferConfigVO.getCodeSrchCondConfigVOS()));
        }
        if(Func.isNotEmpty(codeReferConfigVO.getCodeShowFieldConfigVOS())){
            codeReferConfig.setCodeShowFieldConfigs(CodeShowFieldConfigWraper.build().listDO(codeReferConfigVO.getCodeShowFieldConfigVOS()));
        }
        //    codeReferConfigVO.setCodeSrchCondConfigVOS(null);
        //    codeReferConfigVO.setCodeShowFieldConfigVOS(null);
        return codeReferConfig;
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java
@@ -16,9 +16,12 @@
 */
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeRule;
import com.vci.ubcs.code.lifecycle.CodeRuleLC;
import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
@@ -41,7 +44,9 @@
    @Override
    public CodeRuleVO entityVO(CodeRule codeRule) {
        CodeRuleVO codeRuleVO = Objects.requireNonNull(BeanUtil.copy(codeRule, CodeRuleVO.class));
        codeRuleVO.setLcStatusText(CodeRuleLC.getTextByValue(codeRuleVO.getLcStatus()));
        if(StringUtils.isNotBlank(codeRuleVO.getLcStatus())){
            codeRuleVO.setLcStatusText(EnumCache.getValue(EnumEnum.CODE_RULE_LC,codeRuleVO.getLcStatus()));
        }
        return codeRuleVO;
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.entity.CodeSrchCondConfig;
import com.vci.ubcs.code.enumpack.CodeReferConfigFieldTypeEnum;
@@ -7,6 +8,8 @@
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
@@ -27,19 +30,39 @@
    @Override
    public CodeShowFieldConfigVO entityVO(CodeShowFieldConfig codeShowFieldConfig) {
        CodeShowFieldConfigVO codeShowFieldConfigVO = Objects.requireNonNull(BeanUtil.copy(codeShowFieldConfig, CodeShowFieldConfigVO.class));
        codeShowFieldConfigVO.setFieldTypeText(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfig.getField()));
        codeShowFieldConfigVO.setFixedPositionText(CodeReferConfigFixedEnum.getTextByValue(codeShowFieldConfig.getFixedPosition()));
        if(StringUtils.isNotBlank(codeShowFieldConfig.getFixedPosition())){
            codeShowFieldConfigVO.setFixedPositionText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FIXED,codeShowFieldConfig.getFixedPosition()));
        }
        if(StringUtils.isNotBlank(codeShowFieldConfig.getFieldType())){
            codeShowFieldConfigVO.setFieldTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FIELD_TYPE,codeShowFieldConfig.getFieldType()));
        }
        return codeShowFieldConfigVO;
    }
    public CodeShowFieldConfig entityDOsetReferConfigOid(CodeShowFieldConfigVO codeShowFieldConfigVO,String oid) {
        CodeShowFieldConfig codeShowFieldConfig = entityDO(codeShowFieldConfigVO);
        codeShowFieldConfig.setReferConfigOid(oid);
        return codeShowFieldConfig;
    }
    public CodeShowFieldConfig entityDO(CodeShowFieldConfigVO codeShowFieldConfigVO) {
        CodeShowFieldConfig codeShowFieldConfig = Objects.requireNonNull(BeanUtil.copy(codeShowFieldConfigVO, CodeShowFieldConfig.class));
        codeShowFieldConfig.setFieldType(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFieldTypeText()));
        codeShowFieldConfig.setFixedPosition(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFixedPositionText()));
        if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFieldTypeText())){
            codeShowFieldConfig.setFieldType(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFieldTypeText()));
        }
        if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFixedPositionText())){
            codeShowFieldConfig.setFixedPosition(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFixedPositionText()));
        }
        if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFieldTypeText())){
            codeShowFieldConfig.setFieldType(CodeReferConfigFieldTypeEnum.getValueByText(codeShowFieldConfigVO.getFieldTypeText()));
        }
        return codeShowFieldConfig;
    }
    public List<CodeShowFieldConfig> listDO(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS,String oid) {
        return (List)codeShowFieldConfigVOS.stream().map(item->entityDOsetReferConfigOid(item,oid)).collect(Collectors.toList());
    }
    public List<CodeShowFieldConfig> listDO(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS) {
        return (List)codeShowFieldConfigVOS.stream().map(this::entityDO).collect(Collectors.toList());
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeReferConfig;
import com.vci.ubcs.code.entity.CodeShowFieldConfig;
import com.vci.ubcs.code.entity.CodeSrchCondConfig;
@@ -8,6 +9,8 @@
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
@@ -28,13 +31,24 @@
    @Override
    public CodeSrchCondConfigVO entityVO(CodeSrchCondConfig codeSrchCondConfig) {
        CodeSrchCondConfigVO codeSrchCondConfigVO = Objects.requireNonNull(BeanUtil.copy(codeSrchCondConfig, CodeSrchCondConfigVO.class));
        codeSrchCondConfigVO.setFilterTypeText(CodeReferConfigFilterTypeEnum.getTextByValue(codeSrchCondConfig.getFilterType()));
        if(StringUtils.isNotBlank(codeSrchCondConfigVO.getFilterType())){
            codeSrchCondConfigVO.setFilterTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FILTER_TYPE,codeSrchCondConfig.getFilterType()));
        }
        return codeSrchCondConfigVO;
    }
    public CodeSrchCondConfig entityDOsetReferConfigOid(CodeSrchCondConfigVO codeSrchCondConfigVO,String oid) {
        CodeSrchCondConfig codeSrchCondConfig = entityDO(codeSrchCondConfigVO);
        codeSrchCondConfig.setReferConfigOid(oid);
        return codeSrchCondConfig;
    }
    public CodeSrchCondConfig entityDO(CodeSrchCondConfigVO codeSrchCondConfigVO) {
        CodeSrchCondConfig codeSrchCondConfig = Objects.requireNonNull(BeanUtil.copy(codeSrchCondConfigVO, CodeSrchCondConfig.class));
        codeSrchCondConfig.setFilterType(CodeReferConfigFieldTypeEnum.getTextByValue(codeSrchCondConfigVO.getFilterTypeText()));
        if(StringUtils.isNotBlank(codeSrchCondConfigVO.getFilterTypeText())){
            codeSrchCondConfig.setFilterType(CodeReferConfigFieldTypeEnum.getTextByValue(codeSrchCondConfigVO.getFilterTypeText()));
        }
        codeSrchCondConfig.setReferConfigOid(codeSrchCondConfigVO.getOid());
        return codeSrchCondConfig;
    }
@@ -42,4 +56,8 @@
        return (List)codeSrchCondConfigVOS.stream().map(this::entityDO).collect(Collectors.toList());
    }
    public List<CodeSrchCondConfig> listDO(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS,String oid) {
        return (List)codeSrchCondConfigVOS.stream().map(item->entityDOsetReferConfigOid(item,oid)).collect(Collectors.toList());
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java
@@ -16,9 +16,12 @@
 */
package com.vci.ubcs.code.wrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.code.entity.CodeClassifyTemplateButton;
import com.vci.ubcs.code.enumpack.CodeButtonUseEnum;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateButtonVO;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.enums.EnumEnum;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import java.util.Objects;
@@ -39,7 +42,9 @@
    public CodeClassifyTemplateButtonVO entityVO(CodeClassifyTemplateButton CodeTempbuttonDO) {
        CodeClassifyTemplateButtonVO codeClassifyTemplateButtonVO = Objects.requireNonNull(BeanUtil.copy(CodeTempbuttonDO, CodeClassifyTemplateButtonVO.class));
        codeClassifyTemplateButtonVO.setButtonUseText(CodeButtonUseEnum.getTextByValue(CodeTempbuttonDO.getButtonUse()));
        if(StringUtils.isNotBlank(CodeTempbuttonDO.getButtonUse())){
            codeClassifyTemplateButtonVO.setButtonUseText(EnumCache.getValue(EnumEnum.CODE_TEMPLATE_BUTTON_USE,CodeTempbuttonDO.getButtonUse()));
        }
        return codeClassifyTemplateButtonVO;
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml
@@ -57,6 +57,7 @@
        <result property="customCodeSerialClass" column="CUSTOMCODESERIALCLASS" jdbcType="VARCHAR"/>
        <result property="matchClassifyValueFlag" column="MATCHCLASSIFYVALUEFLAG" jdbcType="VARCHAR"/>
        <result property="parentClassifySecOid" column="PARENTCLASSIFYSECOID" jdbcType="VARCHAR"/>
        <result property="parentClassifySecText" column="b__name" jdbcType="VARCHAR"/>
        <result property="nullableFlag" column="NULLABLEFLAG" jdbcType="VARCHAR"/>
        <result property="componentCodeFlag" column="COMPONENTCODEFLAG" jdbcType="VARCHAR"/>
        <result property="serialDependFlag" column="SERIALDEPENDFLAG" jdbcType="VARCHAR"/>
@@ -70,71 +71,71 @@
    </resultMap>
    <select id="selectCodeBasicSecPage" resultMap="CodeBasicsecMap">
        select PL_CODE_BASICSEC.oid,
        PL_CODE_BASICSEC.revisionoid,
        PL_CODE_BASICSEC.nameoid,
        PL_CODE_BASICSEC.btmname,
        PL_CODE_BASICSEC.lastr,
        PL_CODE_BASICSEC.firstr,
        PL_CODE_BASICSEC.lastv,
        PL_CODE_BASICSEC.firstv,
        PL_CODE_BASICSEC.creator,
        PL_CODE_BASICSEC.createtime,
        PL_CODE_BASICSEC.lastmodifier,
        PL_CODE_BASICSEC.lastmodifytime,
        PL_CODE_BASICSEC.revisionrule,
        PL_CODE_BASICSEC.versionrule,
        PL_CODE_BASICSEC.revisionseq,
        PL_CODE_BASICSEC.revisionvalue,
        PL_CODE_BASICSEC.versionseq,
        PL_CODE_BASICSEC.versionvalue,
        PL_CODE_BASICSEC.lctid,
        PL_CODE_BASICSEC.lcstatus,
        PL_CODE_BASICSEC.ts,
        PL_CODE_BASICSEC.id,
        PL_CODE_BASICSEC.name,
        PL_CODE_BASICSEC.description,
        PL_CODE_BASICSEC.owner,
        PL_CODE_BASICSEC.copyfromversion,
        PL_CODE_BASICSEC.codefillseparator,
        PL_CODE_BASICSEC.codeseclength,
        PL_CODE_BASICSEC.valuecuttype,
        PL_CODE_BASICSEC.codefilltype,
        PL_CODE_BASICSEC.refervalueinfo,
        PL_CODE_BASICSEC.referattributeid,
        PL_CODE_BASICSEC.getvalueclass,
        PL_CODE_BASICSEC.displayflag,
        PL_CODE_BASICSEC.parentclassifysecoid,
        PL_CODE_BASICSEC.serialstep,
        PL_CODE_BASICSEC.serialdependflag,
        PL_CODE_BASICSEC.filtersql,
        PL_CODE_BASICSEC.codedateformatstr,
        PL_CODE_BASICSEC.refercodeclassifyoid,
        PL_CODE_BASICSEC.codeleveltype,
        PL_CODE_BASICSEC.codeseclengthtype,
        PL_CODE_BASICSEC.referattributename,
        PL_CODE_BASICSEC.referbtmname,
        PL_CODE_BASICSEC.codefillflag,
        PL_CODE_BASICSEC.valuecutlength,
        PL_CODE_BASICSEC.codegetvaluetype,
        PL_CODE_BASICSEC.referbtmid,
        PL_CODE_BASICSEC.codefilltypetext,
        PL_CODE_BASICSEC.codelevelvalue,
        PL_CODE_BASICSEC.codefilllength,
        PL_CODE_BASICSEC.customcodeserialclass,
        PL_CODE_BASICSEC.matchclassifyvalueflag,
        PL_CODE_BASICSEC.sectype,
        PL_CODE_BASICSEC.pkcoderule,
        PL_CODE_BASICSEC.ordernum,
        PL_CODE_BASICSEC.referconfig,
        PL_CODE_BASICSEC.serialstart,
        PL_CODE_BASICSEC.componentcodeflag,
        PL_CODE_BASICSEC.serialdependorder,
        PL_CODE_BASICSEC.nullableflag,
        PL_CODE_BASICSEC.codefilllimit,
        btm_codebasicsec_1.name as b__name,
        platformbtm_codeclassify.name as c__name,
        COUNT(*) OVER () "##VCI_COUNT_VCI##"
        SELECT PL_CODE_BASICSEC.oid,
            PL_CODE_BASICSEC.revisionoid,
            PL_CODE_BASICSEC.nameoid,
            PL_CODE_BASICSEC.btmname,
            PL_CODE_BASICSEC.lastr,
            PL_CODE_BASICSEC.firstr,
            PL_CODE_BASICSEC.lastv,
            PL_CODE_BASICSEC.firstv,
            PL_CODE_BASICSEC.creator,
            PL_CODE_BASICSEC.createtime,
            PL_CODE_BASICSEC.lastmodifier,
            PL_CODE_BASICSEC.lastmodifytime,
            PL_CODE_BASICSEC.revisionrule,
            PL_CODE_BASICSEC.versionrule,
            PL_CODE_BASICSEC.revisionseq,
            PL_CODE_BASICSEC.revisionvalue,
            PL_CODE_BASICSEC.versionseq,
            PL_CODE_BASICSEC.versionvalue,
            PL_CODE_BASICSEC.lctid,
            PL_CODE_BASICSEC.lcstatus,
            PL_CODE_BASICSEC.ts,
            PL_CODE_BASICSEC.id,
            PL_CODE_BASICSEC.name,
            PL_CODE_BASICSEC.description,
            PL_CODE_BASICSEC.owner,
            PL_CODE_BASICSEC.copyfromversion,
            PL_CODE_BASICSEC.codefillseparator,
            PL_CODE_BASICSEC.codeseclength,
            PL_CODE_BASICSEC.valuecuttype,
            PL_CODE_BASICSEC.codefilltype,
            PL_CODE_BASICSEC.refervalueinfo,
            PL_CODE_BASICSEC.referattributeid,
            PL_CODE_BASICSEC.getvalueclass,
            PL_CODE_BASICSEC.displayflag,
            PL_CODE_BASICSEC.parentclassifysecoid,
            PL_CODE_BASICSEC.serialstep,
            PL_CODE_BASICSEC.serialdependflag,
            PL_CODE_BASICSEC.filtersql,
            PL_CODE_BASICSEC.codedateformatstr,
            PL_CODE_BASICSEC.refercodeclassifyoid,
            PL_CODE_BASICSEC.codeleveltype,
            PL_CODE_BASICSEC.codeseclengthtype,
            PL_CODE_BASICSEC.referattributename,
            PL_CODE_BASICSEC.referbtmname,
            PL_CODE_BASICSEC.codefillflag,
            PL_CODE_BASICSEC.valuecutlength,
            PL_CODE_BASICSEC.codegetvaluetype,
            PL_CODE_BASICSEC.referbtmid,
            PL_CODE_BASICSEC.codefilltypetext,
            PL_CODE_BASICSEC.codelevelvalue,
            PL_CODE_BASICSEC.codefilllength,
            PL_CODE_BASICSEC.customcodeserialclass,
            PL_CODE_BASICSEC.matchclassifyvalueflag,
            PL_CODE_BASICSEC.sectype,
            PL_CODE_BASICSEC.pkcoderule,
            PL_CODE_BASICSEC.ordernum,
            PL_CODE_BASICSEC.referconfig,
            PL_CODE_BASICSEC.serialstart,
            PL_CODE_BASICSEC.componentcodeflag,
            PL_CODE_BASICSEC.serialdependorder,
            PL_CODE_BASICSEC.nullableflag,
            PL_CODE_BASICSEC.codefilllimit,
            btm_codebasicsec_1.name as b__name,
            platformbtm_codeclassify.name as c__name,
            COUNT(*) OVER () "##VCI_COUNT_VCI##"
        from PL_CODE_BASICSEC
            left join pl_code_basicsec btm_codebasicsec_1
                on btm_codebasicsec_1.oid = PL_CODE_BASICSEC.parentclassifysecoid
@@ -166,7 +167,7 @@
    </select>
    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
    <!--    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_BASICSEC(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME,
        LASTMODIFIER, LASTMODIFYTIME, REVISIONRULE, VERSIONRULE, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE,
        LCTID, LCSTATUS, TS, ID, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, SECTYPE, PKCODERULE, ORDERNUM,
@@ -194,12 +195,7 @@
            #{entity.referattributename}, #{entity.referattributeid}, #{entity.referbtmname}, #{entity.referbtmid}
            from dual
        </foreach>
    </insert>
    <select id="countByCondition" resultType="java.lang.Long">
    </select>
    </insert>-->
    <select id="getOidByCodeclassifysecOid" resultType="java.lang.String">
        SELECT OID
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml
@@ -121,6 +121,9 @@
            <if test="codeReferConfig.tenantId != null and codeReferConfig.tenantId != ''">
                PCR.TENANTID = #{codeReferConfig.tenantId}
            </if>
            <if test="codeReferConfig.isOpenGlobal != null and codeReferConfig.isOpenGlobal != ''">
                OR PCR.ISOPENGLOBAL = #{codeReferConfig.isOpenGlobal}
            </if>
            <if test="codeReferConfig.name != null and codeReferConfig.name != ''">
                and NAME like CONCAT(CONCAT('%', #{codeReferConfig.name}), '%')
            </if>
@@ -141,7 +144,8 @@
                PCS.ATTRSORTFIELD,
                PCS.WIDTH,
                PCS.FIXEDPOSITION,
                PCS.TEMPLET
                PCS.TEMPLET,
                PCS.ISQUERY
            FROM PL_CODE_REFERCONFIG PCR
                LEFT JOIN PL_CODE_SHOWFIELDCONFIG PCS ON PCS.REFERCONFIGOID = PCR.OID)
            temp WHERE temp.REFERCONFIGOID = #{oid}
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml
@@ -3,395 +3,19 @@
<mapper namespace="com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper">
    <resultMap type="com.vci.ubcs.code.entity.CodeShowFieldConfig" id="PlCodeShowfieldconfigMap">
        <result property="oid" column="OID" jdbcType="VARCHAR"/>
        <result property="revisionOid" column="REVISIONOID" jdbcType="VARCHAR"/>
        <result property="nameOid" column="NAMEOID" jdbcType="VARCHAR"/>
        <result property="btmname" column="BTMNAME" jdbcType="VARCHAR"/>
        <result property="lastR" column="LASTR" jdbcType="VARCHAR"/>
        <result property="firstR" column="FIRSTR" jdbcType="VARCHAR"/>
        <result property="lastV" column="LASTV" jdbcType="VARCHAR"/>
        <result property="firstV" column="FIRSTV" jdbcType="VARCHAR"/>
        <result property="creator" column="CREATOR" jdbcType="VARCHAR"/>
        <result property="createTime" column="CREATETIME" jdbcType="VARCHAR"/>
        <result property="revisionSeq" column="REVISIONSEQ" jdbcType="INTEGER"/>
        <result property="revisionValue" column="REVISIONVALUE" jdbcType="VARCHAR"/>
        <result property="versionSeq" column="VERSIONSEQ" jdbcType="INTEGER"/>
        <result property="versionValue" column="VERSIONVALUE" jdbcType="VARCHAR"/>
        <result property="lctid" column="LCTID" jdbcType="VARCHAR"/>
        <result property="lcStatus" column="LCSTATUS" jdbcType="VARCHAR"/>
        <result property="ts" column="TS" jdbcType="VARCHAR"/>
        <result property="name" column="NAME" jdbcType="VARCHAR"/>
        <result property="description" column="DESCRIPTION" jdbcType="VARCHAR"/>
        <result property="owner" column="OWNER" jdbcType="VARCHAR"/>
        <result property="copyFromVersion" column="COPYFROMVERSION" jdbcType="VARCHAR"/>
        <id column="OID" property="oid"/>
        <result property="orderNum" column="ORDERNUM" jdbcType="INTEGER"/>
        <result property="field" column="FIELD" jdbcType="VARCHAR"/>
        <result property="title" column="TITLE" jdbcType="VARCHAR"/>
        <result property="fieldType" column="FIELDTYPE" jdbcType="VARCHAR"/>
        <result property="sort" column="SORT" jdbcType="VARCHAR"/>
        <result property="sortField" column="SORTFIELD" jdbcType="VARCHAR"/>
        <result property="attrSortField" column="ATTRSORTFIELD" jdbcType="VARCHAR"/>
        <result property="width" column="WIDTH" jdbcType="INTEGER"/>
        <result property="fixedText" column="FIXEDTEXT" jdbcType="VARCHAR"/>
        <result property="fixedPosition" column="FIXEDPOSITION" jdbcType="VARCHAR"/>
        <result property="templet" column="TEMPLET" jdbcType="VARCHAR"/>
        <result property="isQuery" column="ISQUERY" jdbcType="VARCHAR"/>
    </resultMap>
    <!--查询单个-->
    <select id="queryById" resultMap="PlCodeShowfieldconfigMap">
        select
          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET
        from PL_CODE_SHOWFIELDCONFIG
        where OID = #{oid}
    </select>
    <!--查询指定行数据-->
    <select id="queryAllByLimit" resultMap="PlCodeShowfieldconfigMap">
        select
          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET
        from PL_CODE_SHOWFIELDCONFIG
        <where>
            <if test="oid != null and oid != ''">
                and OID = #{oid}
            </if>
            <if test="revisionoid != null and revisionoid != ''">
                and REVISIONOID = #{revisionoid}
            </if>
            <if test="nameoid != null and nameoid != ''">
                and NAMEOID = #{nameoid}
            </if>
            <if test="btmname != null and btmname != ''">
                and BTMNAME = #{btmname}
            </if>
            <if test="lastr != null and lastr != ''">
                and LASTR = #{lastr}
            </if>
            <if test="firstr != null and firstr != ''">
                and FIRSTR = #{firstr}
            </if>
            <if test="lastv != null and lastv != ''">
                and LASTV = #{lastv}
            </if>
            <if test="firstv != null and firstv != ''">
                and FIRSTV = #{firstv}
            </if>
            <if test="creator != null and creator != ''">
                and CREATOR = #{creator}
            </if>
            <if test="createtime != null and createtime != ''">
                and CREATETIME = #{createtime}
            </if>
            <if test="revisionseq != null">
                and REVISIONSEQ = #{revisionseq}
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                and REVISIONVALUE = #{revisionvalue}
            </if>
            <if test="versionseq != null">
                and VERSIONSEQ = #{versionseq}
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                and VERSIONVALUE = #{versionvalue}
            </if>
            <if test="lctid != null and lctid != ''">
                and LCTID = #{lctid}
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                and LCSTATUS = #{lcstatus}
            </if>
            <if test="ts != null and ts != ''">
                and TS = #{ts}
            </if>
            <if test="name != null and name != ''">
                and NAME = #{name}
            </if>
            <if test="description != null and description != ''">
                and DESCRIPTION = #{description}
            </if>
            <if test="owner != null and owner != ''">
                and OWNER = #{owner}
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                and COPYFROMVERSION = #{copyfromversion}
            </if>
            <if test="ordernum != null">
                and ORDERNUM = #{ordernum}
            </if>
            <if test="field != null and field != ''">
                and FIELD = #{field}
            </if>
            <if test="title != null and title != ''">
                and TITLE = #{title}
            </if>
            <if test="fieldtype != null and fieldtype != ''">
                and FIELDTYPE = #{fieldtype}
            </if>
            <if test="sort != null and sort != ''">
                and SORT = #{sort}
            </if>
            <if test="sortfield != null and sortfield != ''">
                and SORTFIELD = #{sortfield}
            </if>
            <if test="width != null">
                and WIDTH = #{width}
            </if>
            <if test="fixedtext != null and fixedtext != ''">
                and FIXEDTEXT = #{fixedtext}
            </if>
            <if test="templet != null and templet != ''">
                and TEMPLET = #{templet}
            </if>
        </where>
        limit #{pageable.offset}, #{pageable.pageSize}
    </select>
    <!--统计总行数-->
    <select id="count" resultType="java.lang.Long">
        select count(1)
        from PL_CODE_SHOWFIELDCONFIG
        <where>
            <if test="oid != null and oid != ''">
                and OID = #{oid}
            </if>
            <if test="revisionoid != null and revisionoid != ''">
                and REVISIONOID = #{revisionoid}
            </if>
            <if test="nameoid != null and nameoid != ''">
                and NAMEOID = #{nameoid}
            </if>
            <if test="btmname != null and btmname != ''">
                and BTMNAME = #{btmname}
            </if>
            <if test="lastr != null and lastr != ''">
                and LASTR = #{lastr}
            </if>
            <if test="firstr != null and firstr != ''">
                and FIRSTR = #{firstr}
            </if>
            <if test="lastv != null and lastv != ''">
                and LASTV = #{lastv}
            </if>
            <if test="firstv != null and firstv != ''">
                and FIRSTV = #{firstv}
            </if>
            <if test="creator != null and creator != ''">
                and CREATOR = #{creator}
            </if>
            <if test="createtime != null and createtime != ''">
                and CREATETIME = #{createtime}
            </if>
            <if test="revisionseq != null">
                and REVISIONSEQ = #{revisionseq}
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                and REVISIONVALUE = #{revisionvalue}
            </if>
            <if test="versionseq != null">
                and VERSIONSEQ = #{versionseq}
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                and VERSIONVALUE = #{versionvalue}
            </if>
            <if test="lctid != null and lctid != ''">
                and LCTID = #{lctid}
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                and LCSTATUS = #{lcstatus}
            </if>
            <if test="ts != null and ts != ''">
                and TS = #{ts}
            </if>
            <if test="name != null and name != ''">
                and NAME = #{name}
            </if>
            <if test="description != null and description != ''">
                and DESCRIPTION = #{description}
            </if>
            <if test="owner != null and owner != ''">
                and OWNER = #{owner}
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                and COPYFROMVERSION = #{copyfromversion}
            </if>
            <if test="ordernum != null">
                and ORDERNUM = #{ordernum}
            </if>
            <if test="field != null and field != ''">
                and FIELD = #{field}
            </if>
            <if test="title != null and title != ''">
                and TITLE = #{title}
            </if>
            <if test="fieldtype != null and fieldtype != ''">
                and FIELDTYPE = #{fieldtype}
            </if>
            <if test="sort != null and sort != ''">
                and SORT = #{sort}
            </if>
            <if test="sortfield != null and sortfield != ''">
                and SORTFIELD = #{sortfield}
            </if>
            <if test="width != null">
                and WIDTH = #{width}
            </if>
            <if test="fixedtext != null and fixedtext != ''">
                and FIXEDTEXT = #{fixedtext}
            </if>
            <if test="templet != null and templet != ''">
                and TEMPLET = #{templet}
            </if>
        </where>
    </select>
    <!--新增所有列-->
    <insert id="insert" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
        values (#{revisionoid}, #{nameoid}, #{btmname}, #{lastr}, #{firstr}, #{lastv}, #{firstv}, #{creator}, #{createtime}, #{revisionseq}, #{revisionvalue}, #{versionseq}, #{versionvalue}, #{lctid}, #{lcstatus}, #{ts}, #{name}, #{description}, #{owner}, #{copyfromversion}, #{ordernum}, #{field}, #{title}, #{fieldtype}, #{sort}, #{sortfield}, #{width}, #{fixedtext}, #{templet})
    </insert>
    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
        values
        <foreach collection="entities" item="entity" separator=",">
        (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.field}, #{entity.title}, #{entity.fieldtype}, #{entity.sort}, #{entity.sortfield}, #{entity.width}, #{entity.fixedtext}, #{entity.templet})
        </foreach>
    </insert>
    <insert id="insertOrUpdateBatch" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
        values
        <foreach collection="entities" item="entity" separator=",">
            (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.field}, #{entity.title}, #{entity.fieldtype}, #{entity.sort}, #{entity.sortfield}, #{entity.width}, #{entity.fixedtext}, #{entity.templet})
        </foreach>
        on duplicate key update
        REVISIONOID = values(REVISIONOID),
        NAMEOID = values(NAMEOID),
        BTMNAME = values(BTMNAME),
        LASTR = values(LASTR),
        FIRSTR = values(FIRSTR),
        LASTV = values(LASTV),
        FIRSTV = values(FIRSTV),
        CREATOR = values(CREATOR),
        CREATETIME = values(CREATETIME),
        REVISIONSEQ = values(REVISIONSEQ),
        REVISIONVALUE = values(REVISIONVALUE),
        VERSIONSEQ = values(VERSIONSEQ),
        VERSIONVALUE = values(VERSIONVALUE),
        LCTID = values(LCTID),
        LCSTATUS = values(LCSTATUS),
        TS = values(TS),
        NAME = values(NAME),
        DESCRIPTION = values(DESCRIPTION),
        OWNER = values(OWNER),
        COPYFROMVERSION = values(COPYFROMVERSION),
        ORDERNUM = values(ORDERNUM),
        FIELD = values(FIELD),
        TITLE = values(TITLE),
        FIELDTYPE = values(FIELDTYPE),
        SORT = values(SORT),
        SORTFIELD = values(SORTFIELD),
        WIDTH = values(WIDTH),
        FIXEDTEXT = values(FIXEDTEXT),
        TEMPLET = values(TEMPLET)
    </insert>
    <!--通过主键修改数据-->
    <update id="update">
        update PL_CODE_SHOWFIELDCONFIG
        <set>
            <if test="revisionoid != null and revisionoid != ''">
                REVISIONOID = #{revisionoid},
            </if>
            <if test="nameoid != null and nameoid != ''">
                NAMEOID = #{nameoid},
            </if>
            <if test="btmname != null and btmname != ''">
                BTMNAME = #{btmname},
            </if>
            <if test="lastr != null and lastr != ''">
                LASTR = #{lastr},
            </if>
            <if test="firstr != null and firstr != ''">
                FIRSTR = #{firstr},
            </if>
            <if test="lastv != null and lastv != ''">
                LASTV = #{lastv},
            </if>
            <if test="firstv != null and firstv != ''">
                FIRSTV = #{firstv},
            </if>
            <if test="creator != null and creator != ''">
                CREATOR = #{creator},
            </if>
            <if test="createtime != null and createtime != ''">
                CREATETIME = #{createtime},
            </if>
            <if test="revisionseq != null">
                REVISIONSEQ = #{revisionseq},
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                REVISIONVALUE = #{revisionvalue},
            </if>
            <if test="versionseq != null">
                VERSIONSEQ = #{versionseq},
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                VERSIONVALUE = #{versionvalue},
            </if>
            <if test="lctid != null and lctid != ''">
                LCTID = #{lctid},
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                LCSTATUS = #{lcstatus},
            </if>
            <if test="ts != null and ts != ''">
                TS = #{ts},
            </if>
            <if test="name != null and name != ''">
                NAME = #{name},
            </if>
            <if test="description != null and description != ''">
                DESCRIPTION = #{description},
            </if>
            <if test="owner != null and owner != ''">
                OWNER = #{owner},
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                COPYFROMVERSION = #{copyfromversion},
            </if>
            <if test="ordernum != null">
                ORDERNUM = #{ordernum},
            </if>
            <if test="field != null and field != ''">
                FIELD = #{field},
            </if>
            <if test="title != null and title != ''">
                TITLE = #{title},
            </if>
            <if test="fieldtype != null and fieldtype != ''">
                FIELDTYPE = #{fieldtype},
            </if>
            <if test="sort != null and sort != ''">
                SORT = #{sort},
            </if>
            <if test="sortfield != null and sortfield != ''">
                SORTFIELD = #{sortfield},
            </if>
            <if test="width != null">
                WIDTH = #{width},
            </if>
            <if test="fixedtext != null and fixedtext != ''">
                FIXEDTEXT = #{fixedtext},
            </if>
            <if test="templet != null and templet != ''">
                TEMPLET = #{templet},
            </if>
        </set>
        where OID = #{oid}
    </update>
    <!--通过主键删除-->
    <delete id="deleteById">
        delete from PL_CODE_SHOWFIELDCONFIG where OID = #{oid}
    </delete>
</mapper>
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml
@@ -3,340 +3,12 @@
<mapper namespace="com.vci.ubcs.code.mapper.CodeSrchCondConfigMapper">
    <resultMap type="com.vci.ubcs.code.entity.CodeSrchCondConfig" id="PlCodeSrchcondconfigMap">
        <result property="oid" column="OID" jdbcType="VARCHAR"/>
        <result property="revisionOid" column="REVISIONOID" jdbcType="VARCHAR"/>
        <result property="nameOid" column="NAMEOID" jdbcType="VARCHAR"/>
        <result property="btmname" column="BTMNAME" jdbcType="VARCHAR"/>
        <result property="lastR" column="LASTR" jdbcType="VARCHAR"/>
        <result property="firstR" column="FIRSTR" jdbcType="VARCHAR"/>
        <result property="lastV" column="LASTV" jdbcType="VARCHAR"/>
        <result property="firstV" column="FIRSTV" jdbcType="VARCHAR"/>
        <result property="creator" column="CREATOR" jdbcType="VARCHAR"/>
        <result property="createTime" column="CREATETIME" jdbcType="VARCHAR"/>
        <result property="revisionSeq" column="REVISIONSEQ" jdbcType="INTEGER"/>
        <result property="revisionValue" column="REVISIONVALUE" jdbcType="VARCHAR"/>
        <result property="versionSeq" column="VERSIONSEQ" jdbcType="INTEGER"/>
        <result property="versionValue" column="VERSIONVALUE" jdbcType="VARCHAR"/>
        <result property="lctid" column="LCTID" jdbcType="VARCHAR"/>
        <result property="lcStatus" column="LCSTATUS" jdbcType="VARCHAR"/>
        <result property="ts" column="TS" jdbcType="VARCHAR"/>
        <result property="name" column="NAME" jdbcType="VARCHAR"/>
        <result property="description" column="DESCRIPTION" jdbcType="VARCHAR"/>
        <result property="owner" column="OWNER" jdbcType="VARCHAR"/>
        <result property="copyFromVersion" column="COPYFROMVERSION" jdbcType="VARCHAR"/>
        <id column="OID" property="oid"/>
        <result property="orderNum" column="ORDERNUM" jdbcType="INTEGER"/>
        <result property="filterField" column="FILTERFIELD" jdbcType="VARCHAR"/>
        <result property="filterType" column="FILTERTYPE" jdbcType="VARCHAR"/>
        <result property="filterValue" column="FILTERVALUE" jdbcType="VARCHAR"/>
    </resultMap>
    <!--查询单个-->
    <select id="queryById" resultMap="PlCodeSrchcondconfigMap">
        select
          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE
        from PL_CODE_SRCHCONDCONFIG
        where OID = #{oid}
    </select>
    <!--查询指定行数据-->
    <select id="queryAllByLimit" resultMap="PlCodeSrchcondconfigMap">
        select
          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE
        from PL_CODE_SRCHCONDCONFIG
        <where>
            <if test="oid != null and oid != ''">
                and OID = #{oid}
            </if>
            <if test="revisionoid != null and revisionoid != ''">
                and REVISIONOID = #{revisionoid}
            </if>
            <if test="nameoid != null and nameoid != ''">
                and NAMEOID = #{nameoid}
            </if>
            <if test="btmname != null and btmname != ''">
                and BTMNAME = #{btmname}
            </if>
            <if test="lastr != null and lastr != ''">
                and LASTR = #{lastr}
            </if>
            <if test="firstr != null and firstr != ''">
                and FIRSTR = #{firstr}
            </if>
            <if test="lastv != null and lastv != ''">
                and LASTV = #{lastv}
            </if>
            <if test="firstv != null and firstv != ''">
                and FIRSTV = #{firstv}
            </if>
            <if test="creator != null and creator != ''">
                and CREATOR = #{creator}
            </if>
            <if test="createtime != null and createtime != ''">
                and CREATETIME = #{createtime}
            </if>
            <if test="revisionseq != null">
                and REVISIONSEQ = #{revisionseq}
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                and REVISIONVALUE = #{revisionvalue}
            </if>
            <if test="versionseq != null">
                and VERSIONSEQ = #{versionseq}
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                and VERSIONVALUE = #{versionvalue}
            </if>
            <if test="lctid != null and lctid != ''">
                and LCTID = #{lctid}
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                and LCSTATUS = #{lcstatus}
            </if>
            <if test="ts != null and ts != ''">
                and TS = #{ts}
            </if>
            <if test="name != null and name != ''">
                and NAME = #{name}
            </if>
            <if test="description != null and description != ''">
                and DESCRIPTION = #{description}
            </if>
            <if test="owner != null and owner != ''">
                and OWNER = #{owner}
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                and COPYFROMVERSION = #{copyfromversion}
            </if>
            <if test="ordernum != null">
                and ORDERNUM = #{ordernum}
            </if>
            <if test="filterfield != null and filterfield != ''">
                and FILTERFIELD = #{filterfield}
            </if>
            <if test="filtertype != null and filtertype != ''">
                and FILTERTYPE = #{filtertype}
            </if>
            <if test="filtervalue != null and filtervalue != ''">
                and FILTERVALUE = #{filtervalue}
            </if>
        </where>
        limit #{pageable.offset}, #{pageable.pageSize}
    </select>
    <!--统计总行数-->
    <select id="count" resultType="java.lang.Long">
        select count(1)
        from PL_CODE_SRCHCONDCONFIG
        <where>
            <if test="oid != null and oid != ''">
                and OID = #{oid}
            </if>
            <if test="revisionoid != null and revisionoid != ''">
                and REVISIONOID = #{revisionoid}
            </if>
            <if test="nameoid != null and nameoid != ''">
                and NAMEOID = #{nameoid}
            </if>
            <if test="btmname != null and btmname != ''">
                and BTMNAME = #{btmname}
            </if>
            <if test="lastr != null and lastr != ''">
                and LASTR = #{lastr}
            </if>
            <if test="firstr != null and firstr != ''">
                and FIRSTR = #{firstr}
            </if>
            <if test="lastv != null and lastv != ''">
                and LASTV = #{lastv}
            </if>
            <if test="firstv != null and firstv != ''">
                and FIRSTV = #{firstv}
            </if>
            <if test="creator != null and creator != ''">
                and CREATOR = #{creator}
            </if>
            <if test="createtime != null and createtime != ''">
                and CREATETIME = #{createtime}
            </if>
            <if test="revisionseq != null">
                and REVISIONSEQ = #{revisionseq}
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                and REVISIONVALUE = #{revisionvalue}
            </if>
            <if test="versionseq != null">
                and VERSIONSEQ = #{versionseq}
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                and VERSIONVALUE = #{versionvalue}
            </if>
            <if test="lctid != null and lctid != ''">
                and LCTID = #{lctid}
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                and LCSTATUS = #{lcstatus}
            </if>
            <if test="ts != null and ts != ''">
                and TS = #{ts}
            </if>
            <if test="name != null and name != ''">
                and NAME = #{name}
            </if>
            <if test="description != null and description != ''">
                and DESCRIPTION = #{description}
            </if>
            <if test="owner != null and owner != ''">
                and OWNER = #{owner}
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                and COPYFROMVERSION = #{copyfromversion}
            </if>
            <if test="ordernum != null">
                and ORDERNUM = #{ordernum}
            </if>
            <if test="filterfield != null and filterfield != ''">
                and FILTERFIELD = #{filterfield}
            </if>
            <if test="filtertype != null and filtertype != ''">
                and FILTERTYPE = #{filtertype}
            </if>
            <if test="filtervalue != null and filtervalue != ''">
                and FILTERVALUE = #{filtervalue}
            </if>
        </where>
    </select>
    <!--新增所有列-->
    <insert id="insert" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
        values (#{revisionoid}, #{nameoid}, #{btmname}, #{lastr}, #{firstr}, #{lastv}, #{firstv}, #{creator}, #{createtime}, #{revisionseq}, #{revisionvalue}, #{versionseq}, #{versionvalue}, #{lctid}, #{lcstatus}, #{ts}, #{name}, #{description}, #{owner}, #{copyfromversion}, #{ordernum}, #{filterfield}, #{filtertype}, #{filtervalue})
    </insert>
    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
        values
        <foreach collection="entities" item="entity" separator=",">
        (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.filterfield}, #{entity.filtertype}, #{entity.filtervalue})
        </foreach>
    </insert>
    <insert id="insertOrUpdateBatch" keyProperty="oid" useGeneratedKeys="true">
        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
        values
        <foreach collection="entities" item="entity" separator=",">
            (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.filterfield}, #{entity.filtertype}, #{entity.filtervalue})
        </foreach>
        on duplicate key update
        REVISIONOID = values(REVISIONOID),
        NAMEOID = values(NAMEOID),
        BTMNAME = values(BTMNAME),
        LASTR = values(LASTR),
        FIRSTR = values(FIRSTR),
        LASTV = values(LASTV),
        FIRSTV = values(FIRSTV),
        CREATOR = values(CREATOR),
        CREATETIME = values(CREATETIME),
        REVISIONSEQ = values(REVISIONSEQ),
        REVISIONVALUE = values(REVISIONVALUE),
        VERSIONSEQ = values(VERSIONSEQ),
        VERSIONVALUE = values(VERSIONVALUE),
        LCTID = values(LCTID),
        LCSTATUS = values(LCSTATUS),
        TS = values(TS),
        NAME = values(NAME),
        DESCRIPTION = values(DESCRIPTION),
        OWNER = values(OWNER),
        COPYFROMVERSION = values(COPYFROMVERSION),
        ORDERNUM = values(ORDERNUM),
        FILTERFIELD = values(FILTERFIELD),
        FILTERTYPE = values(FILTERTYPE),
        FILTERVALUE = values(FILTERVALUE)
    </insert>
    <!--通过主键修改数据-->
    <update id="update">
        update PL_CODE_SRCHCONDCONFIG
        <set>
            <if test="revisionoid != null and revisionoid != ''">
                REVISIONOID = #{revisionoid},
            </if>
            <if test="nameoid != null and nameoid != ''">
                NAMEOID = #{nameoid},
            </if>
            <if test="btmname != null and btmname != ''">
                BTMNAME = #{btmname},
            </if>
            <if test="lastr != null and lastr != ''">
                LASTR = #{lastr},
            </if>
            <if test="firstr != null and firstr != ''">
                FIRSTR = #{firstr},
            </if>
            <if test="lastv != null and lastv != ''">
                LASTV = #{lastv},
            </if>
            <if test="firstv != null and firstv != ''">
                FIRSTV = #{firstv},
            </if>
            <if test="creator != null and creator != ''">
                CREATOR = #{creator},
            </if>
            <if test="createtime != null and createtime != ''">
                CREATETIME = #{createtime},
            </if>
            <if test="revisionseq != null">
                REVISIONSEQ = #{revisionseq},
            </if>
            <if test="revisionvalue != null and revisionvalue != ''">
                REVISIONVALUE = #{revisionvalue},
            </if>
            <if test="versionseq != null">
                VERSIONSEQ = #{versionseq},
            </if>
            <if test="versionvalue != null and versionvalue != ''">
                VERSIONVALUE = #{versionvalue},
            </if>
            <if test="lctid != null and lctid != ''">
                LCTID = #{lctid},
            </if>
            <if test="lcstatus != null and lcstatus != ''">
                LCSTATUS = #{lcstatus},
            </if>
            <if test="ts != null and ts != ''">
                TS = #{ts},
            </if>
            <if test="name != null and name != ''">
                NAME = #{name},
            </if>
            <if test="description != null and description != ''">
                DESCRIPTION = #{description},
            </if>
            <if test="owner != null and owner != ''">
                OWNER = #{owner},
            </if>
            <if test="copyfromversion != null and copyfromversion != ''">
                COPYFROMVERSION = #{copyfromversion},
            </if>
            <if test="ordernum != null">
                ORDERNUM = #{ordernum},
            </if>
            <if test="filterfield != null and filterfield != ''">
                FILTERFIELD = #{filterfield},
            </if>
            <if test="filtertype != null and filtertype != ''">
                FILTERTYPE = #{filtertype},
            </if>
            <if test="filtervalue != null and filtervalue != ''">
                FILTERVALUE = #{filtervalue},
            </if>
        </set>
        where OID = #{oid}
    </update>
    <!--通过主键删除-->
    <delete id="deleteById">
        delete from PL_CODE_SRCHCONDCONFIG where OID = #{oid}
    </delete>
</mapper>
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java
@@ -79,4 +79,5 @@
        attribute.setTs(now);
        return attribute;
    }
}
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java
@@ -54,6 +54,7 @@
        }
        return enumItemVO;
    }
    public List<EnumVO> listNodeVO(List<EnumItem> list) {
        List<EnumItem> collect = list.stream().map(omdEnumItem -> BeanUtil.copy(omdEnumItem, EnumItem.class)).collect(Collectors.toList());
        return ForestNodeMerger.merge((List)collect);