| | |
| | | @click="handleRange"> |
| | | 使用范围 |
| | | </el-button> |
| | | <el-button |
| | | <el-button |
| | | size="small" |
| | | icon="icon-qingkong" |
| | | plain |
| | |
| | | width="800px" |
| | | style="height: 116vh; margin-top: -10vh;"> |
| | | <avue-crud |
| | | :option="dialogeOption" |
| | | :option="dialogeOption" |
| | | :table-loading="dialogLoading" |
| | | :data="useRangeData" |
| | | @refresh-change="refreshUseRangeChange"> |
| | |
| | | <basic-container> |
| | | <div class="abox" style="height:54vh"> |
| | | <avue-tree |
| | | :data="classifyValueTreeData" |
| | | :option="classisyValueTreeOption" |
| | | :data="classifyValueTreeData" |
| | | :option="classisyValueTreeOption" |
| | | @node-click="classisyValueTreeOnodeClick" |
| | | style="overflow-y: auto; height: 54vh"/> |
| | | </div> |
| | |
| | | <el-form-item label="码段名称:" :label-width="leftFormLabelWidth" required> |
| | | <el-input ref="name" v-model="form.name" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | |
| | | |
| | | <el-form-item label="码段类型" :label-width="leftFormLabelWidth" required> |
| | | <el-select v-model="form.secType" placeholder="请选择" @change="changeSectypeFormItems(null)" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="属性所在分类:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | <el-input |
| | | v-model="form.referCodeClassifyOidName" |
| | | disabled> |
| | | </el-input> |
| | |
| | | <el-input v-model.number="form.codeLevelValue" ref="codeLevelValue" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="字符截取类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.valueCutType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-select v-model="form.valueCutType" placeholder="请选择" :disabled="basicSecOnlyRead" @change="changeCutType($event)"> |
| | | <el-option |
| | | v-for="item in enumParam.codeCutType" |
| | | :key="item.itemValue" |
| | |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item id="ShowOrHide" v-mode="showCutLength" v-if="showCutLength==true" label="值截取长度:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.valueCutLength" ref="valueCutLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="取值类型:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeGetValueType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | |
| | | <div v-show="form.secType==='coderefersec' ? true:false"> |
| | | <el-form-item label="参照引用的业务类型:" label-width="152px" required> |
| | | <el-input |
| | | ref="referBtmId" |
| | | ref="referBtmId" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | |
| | | </el-form-item> |
| | | <el-form-item label="参照配置:" label-width="152px" required> |
| | | <el-input |
| | | ref="referConfig" |
| | | ref="referConfig" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,属性码段,公式编辑框对话框组件 --> |
| | | <formula-editor |
| | | ref="formulaEditor" |
| | | @updateFormulaContent="updateFormulaContent" |
| | | <formula-editor |
| | | ref="formulaEditor" |
| | | @updateFormulaContent="updateFormulaContent" |
| | | :thisSceneTableData="formulaEditorParams.thisSceneTableData" |
| | | :visible.sync="formulaEditorParams.formulaEditorSettingBox" |
| | | :systemVariableTableData="formulaEditorParams.systemVariableTableData"> |
| | |
| | | <avue-crud |
| | | :page.sync="parentClsfyParams.parentClassifyDataPage" |
| | | :ref="parentClsfyParams.ref" |
| | | :option="parentClsfyParams.parentClassifyParentOption" |
| | | :option="parentClsfyParams.parentClassifyParentOption" |
| | | :table-loading="parentClsfyParams.classifyDialogLoading" |
| | | :data="parentClsfyParams.parentClassifyData" |
| | | @refresh-change="refreshParentClassifyDataChange" |
| | |
| | | ref="referConfigFormDialog" |
| | | @echoReferConfig="echoReferConfig"> |
| | | </refer-config-form-dialog> |
| | | |
| | | |
| | | <!-- 第二层对话框,直接选择参照配置crud组件 --> |
| | | <refer-config-crud-dialog |
| | | ref="referConfigCrudDialog" |
| | |
| | | |
| | | <script> |
| | | import { gridCodeRule, getDetail, add, update, remove, listUseRange, updateStatus,clone,clearAllCode } from "@/api/code/mdmrule"; |
| | | import { |
| | | gridCodeBasicSec, |
| | | downOrderNum, |
| | | upOrderNum, |
| | | deleteData, |
| | | editSave, |
| | | import { |
| | | gridCodeBasicSec, |
| | | downOrderNum, |
| | | upOrderNum, |
| | | deleteData, |
| | | editSave, |
| | | cloneCodeBasic, |
| | | addSave, |
| | | refDataGridClassifySec, |
| | |
| | | total: 0 |
| | | }, |
| | | selectionList: [], |
| | | showCutLength: false, |
| | | /*编码规则表格配置*/ |
| | | optionRule: optionRule, |
| | | data: [], |
| | |
| | | codeFixedSecOid: "", |
| | | description: "", |
| | | id: "", |
| | | }, |
| | | }, |
| | | isShowFixedForm: true, //true显示固定码段码值管理界面,false显示分类码段码值管理界面 |
| | | fixedValueData: [], //固定码段码值表格数据 |
| | | fixedValueOption: fixedValueOption, //表格配置 |
| | |
| | | treeOption: treeOption, |
| | | currentSelectTreeData: '', //当前选中的树节点 |
| | | /* 为属性选值右侧表格相关数据 */ |
| | | |
| | | |
| | | selectAttrParams: { |
| | | ref: "selectionAttrCrud", |
| | | attrOption: attrOption, |
| | |
| | | ], |
| | | formulaEditorSettingBox: false, |
| | | }, |
| | | |
| | | |
| | | /* 父分类码段对话框 */ |
| | | parentClsfyParams: { |
| | | ref: 'crudParentClassify', |
| | |
| | | parentClassifyQuery: {}, //查询条件 |
| | | parentClassifySelectionList: [], //当前选中行 |
| | | }, |
| | | |
| | | |
| | | /** 参照引用的业务类型对话框相关数据 */ |
| | | referBtmDialogParams: { |
| | | ref: 'crudReferBtm', |
| | |
| | | componentCodeFlag: false, //是否参与编码 |
| | | pkCodeRule: '', //所属编码规则 |
| | | }, |
| | | |
| | | |
| | | //枚举和可输可选查询 |
| | | enumParam: { |
| | | secTypeList:[], //码段类型 |
| | |
| | | this.form.referBtmId = content.id || ''; |
| | | this.form.referBtmName = content.name || content.id; |
| | | }, |
| | | |
| | | /** 父分类选择对话框,第二层嵌套对话框,及其相关方法 */ |
| | | |
| | | /** 父分类选择对话框,第二层嵌套对话框,及其相关方法 */ |
| | | // 保存当前父分类码段的选中行,并进行回显 |
| | | saveSelectedParentClassify(){ |
| | | //console.log(this.parentClsfyParams.parentClassifySelectionList.length); |
| | |
| | | let conditionMaps = {}; |
| | | conditionMaps['conditionMap[pkCodeRule]'] = oid; |
| | | refDataGridClassifySec( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | page.currentPage, |
| | | page.pageSize, |
| | | conditionMaps |
| | | ).then(res => { |
| | | //console.log(res.data); |
| | |
| | | this.parentClassifySelectionClear(); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | /** 打开属性选取值,第二层嵌套对话框,及其相关方法 */ |
| | | |
| | | /** 打开属性选取值,第二层嵌套对话框,及其相关方法 */ |
| | | // 获取当前被选中树节点的oid |
| | | nodeClick(data) { |
| | | this.currentSelectTreeData = data; |
| | |
| | | }) |
| | | this.isShowSelectAttrOption = false; |
| | | }, |
| | | |
| | | |
| | | |
| | | /** 基础码段表中的码值管理的相关方法 */ |
| | | // 码值管理弹窗控制 |
| | |
| | | window.console.log(error); |
| | | }); |
| | | } |
| | | |
| | | |
| | | }, |
| | | //删除码值 |
| | | delCodeSecValue(condition){ |
| | | delCodeSecValue(condition){ |
| | | //固定码段码值删除 |
| | | if(condition == 'codefixedsec'){ |
| | | //console.log(this.selectedFixedOrCodeclassifyValue.oid); |
| | |
| | | message: "操作成功!" |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | } |
| | | |
| | | }, |
| | | //对固定码值表进行:上移、下移、移除操作 |
| | | codeFixedValueOpetion(condition,row){ |
| | |
| | | saveData[0].orderNum = parseInt(saveData[0].orderNum)+1; |
| | | saveData[1].orderNum = parseInt(saveData[1].orderNum)-1; |
| | | this.saveCodeFixedOrClassifyValueOption('classifyValue',saveData); |
| | | } |
| | | } |
| | | } |
| | | console.log(saveData); |
| | | console.log(this.classifyValueTreeData); |
| | |
| | | */ |
| | | //说明是根节点,直接找再判断是否是边界值 |
| | | if(currentNodeTreeData.parentId.trim() == ''){ |
| | | return this.findTreeIndex(this.classifyValueTreeData,currentNodeTreeData.oid,true); |
| | | return this.findTreeIndex(this.classifyValueTreeData,currentNodeTreeData.oid,true); |
| | | }else{ |
| | | //说明不是根节点,先找到父节点再找到子节点,判断是否是边界值 |
| | | return this.findTreeIndex(this.classifyValueTreeData,currentNodeTreeData.parentId,false); |
| | | return this.findTreeIndex(this.classifyValueTreeData,currentNodeTreeData.parentId,false); |
| | | } |
| | | }, |
| | | /** |
| | |
| | | }); |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysecOid}); |
| | | } |
| | | |
| | | |
| | | }, |
| | | //分类码值树data加载 |
| | | loadClassifyValueData(row){ |
| | |
| | | if(this.selectionList[0].oid == null || this.selectionList[0].oid == ''){ |
| | | this.$message.warning('缺失必要参数,请重新选择编码规则后再试!'); |
| | | return; |
| | | } |
| | | } |
| | | this.form.pkCodeRule = this.selectionList[0].oid; |
| | | if(this.form.oid == '' || this.form.oid == null){ |
| | | if(this.checkForm()){ |
| | |
| | | // 点击新增基础码段,关闭窗口之后触发重新加载 |
| | | this.loadBasic(this.selectionList[0]); |
| | | }else{ |
| | | // 可能参照引用的业务类型会发生改变所以这儿直接对referConfig的json进行改变 |
| | | let referConfig = JSON.parse(this.form.referConfig); |
| | | referConfig.referType = this.form.referBtmId; |
| | | referConfig.referTypeName = this.form.referBtmName; |
| | | this.form.referConfig = JSON.stringify(referConfig); |
| | | |
| | | let referValueInfo = JSON.parse(this.form.referValueInfo); |
| | | referValueInfo.referType = this.form.referBtmId; |
| | | this.form.referValueInfo = JSON.stringify(referValueInfo); |
| | | editSave(this.form).then(() => { |
| | | // 关闭对话框 |
| | | this.addBasicCodeSettingBox = false |
| | |
| | | }); |
| | | } |
| | | if(isAdancedQuery){ |
| | | condition['conditionMap[pkCodeRule]'] = this.currentCodeRuleOid == null || this.currentCodeRuleOid == '' |
| | | condition['conditionMap[pkCodeRule]'] = this.currentCodeRuleOid == null || this.currentCodeRuleOid == '' |
| | | ? this.selectionList[0].oid:this.currentCodeRuleOid; |
| | | } |
| | | gridCodeBasicSec(1, -1,isAdancedQuery ? condition:conditionMaps).then(res => { |
| | |
| | | }, |
| | | // 上移下移基础码段 |
| | | upOrderNum(row){ |
| | | //console.log(row.oid); |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | | return; |
| | | } |
| | | let codeRuleOid = this.selectionList[0].oid; |
| | | if (this.selectionList[0].lcStatus != 'Editing') { |
| | | this.$message.warning("只有编码规则的状态是 [编辑中] 的时候,才能调整码段顺序!"); |
| | | return; |
| | | return; |
| | | } |
| | | if(row.oid==null || row.oid==''){ |
| | | this.$message.warning("未获取到必填参数!"); |
| | | return; |
| | | return; |
| | | } |
| | | upOrderNum(row.oid).then(() => { |
| | | this.loadBasic({"oid":codeRuleOid}); |
| | | this.loadBasic(this.selectionList[0]); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | |
| | | //console.log(this.selectionList); |
| | | if (this.selectionList[0].lcStatus != 'Editing') { |
| | | this.$message.warning("只有编码规则的状态是 [编辑中] 的时候,才能调整码段顺序!"); |
| | | return; |
| | | return; |
| | | } |
| | | if(row.oid==null || row.oid==''){ |
| | | this.$message.warning("未获取到必填参数!"); |
| | | return; |
| | | return; |
| | | } |
| | | downOrderNum(row.oid).then(() => { |
| | | this.loadBasic({"oid":codeRuleOid}); |
| | |
| | | this.getRangeCodeList() |
| | | }, |
| | | // 加载使用范围列表 |
| | | getRangeCodeList(){ |
| | | getRangeCodeList(){ |
| | | this.dialogLoading = true; |
| | | if(this.selectionList[0].oid==null){ |
| | | this.$message.error("未获取到参数!"); |
| | |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | //console.log(data); |
| | | //console.log(data); |
| | | }, |
| | | // 打开从其他编码规则中克隆码段对话框 |
| | | openOtherCodeRuleDialog(){ |
| | |
| | | } |
| | | if(this.selectionList[0].lcStatus != 'Editing'){ |
| | | this.$message.warning("编码规则已被引用,不允许编辑或删除!"); |
| | | return; |
| | | return; |
| | | } |
| | | this.cloneOtherCodeRuleSettingBox = true; |
| | | }, |
| | |
| | | this.query = requestData; |
| | | this.onLoad(this.page); |
| | | done(); |
| | | }, |
| | | }, |
| | | // 编码规则当前选中行变化的时候触发 |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | |
| | | this.loadBasic(this.selectionList[list.length-1]); |
| | | } |
| | | }, |
| | | changeCutType(value){ |
| | | if (value != 'code_cut_none'){ |
| | | this.showCutLength = true; |
| | | if(this.form.valueCutLength == ''){ |
| | | this.form.valueCutLength = 1; |
| | | } |
| | | }else{ |
| | | this.form.valueCutLength = ''; |
| | | this.showCutLength = false; |
| | | } |
| | | }, |
| | | // 单击编码规则实现行选择 |
| | | codeRuleRowClick (row) { |
| | | // console.log(this.currentRuleLcStatus); |
| | | this.$refs.crud.toggleSelection(); |
| | | this.$refs.crud.toggleRowSelection(row); //选中当前行 |
| | | |
| | | |
| | | }, |
| | | selectionClear() { |
| | | this.selectionList = []; |
| | |
| | | onLoad(page,params={}) { |
| | | this.loading = true; |
| | | gridCodeRule( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | page.currentPage, |
| | | page.pageSize, |
| | | this.query |
| | | ).then(res => { |
| | | //console.log(res.data); |
| | |
| | | }, |
| | | // 补位时的字符,实现可输可选 |
| | | inputSelectBlur(e){ |
| | | if (e.target.value) { |
| | | if (e.target.value) { |
| | | this.form.codeFillSeparator = e.target.value; |
| | | } |
| | | }, |
| | | // 码段类型改变时,增加对应的form表单中的属性 |
| | | changeSectypeFormItems(row){ |
| | | //console.log(row); |
| | | changeSectypeFormItems(row){ |
| | | //console.log(row); |
| | | if(this.enumParam.secTypeList.length==0){ |
| | | this.loadCodeSecType(); |
| | | } |
| | |
| | | valueCutLength: row!=null&&row.valueCutLength != '' ? row.valueCutLength:'', // |
| | | codeGetValueType: row!=null&&row.codeGetValueType != '' ? row.codeGetValueType:'code_get_value_all_up', //取值类型 枚举查询 |
| | | }); |
| | | if(this.form.valueCutType === 'code_cut_none'){ |
| | | this.showCutLength = false; |
| | | }else{ |
| | | this.showCutLength = true; |
| | | } |
| | | |
| | | this.loadCodeLevelType(); |
| | | this.loadCodeCutType(); |
| | | this.loadCodeGetValueType(); |
| | |
| | | loadCodeGetValueType(){ |
| | | this.enumParam.codeGetValueType = this.getLocalStorageEnum("codeGetValueType"); |
| | | }, |
| | | |
| | | |
| | | } |
| | | }; |
| | | |
| | |
| | | .code-rule-crud > .avue-crud__pagination { |
| | | padding: 14px 0 2px 20px; |
| | | } |
| | | |
| | | |
| | | .clone-input-textarea > .el-form-item__content { |
| | | width: 495px; |
| | | } |
| | |
| | | .other-clone-coderule-crud > .el-card> .el-card__body > .avue-crud__menu { |
| | | display: none!important; |
| | | } |
| | | |
| | | |
| | | .el-table--small .el-table__cell { |
| | | padding: 3px 0; |
| | | } |
| | |
| | | |
| | | .left > .el-form-item > .el-form-item__content > .el-input-number > .el-input > .el-input__inner { |
| | | width:120px; |
| | | } |
| | | |
| | | } |
| | | |
| | | .el-col>.el-card > .el-card__header { |
| | | background: rgb(213 231 239); |
| | | border-radius: inherit; |
| | |
| | | padding: 5px 10px 10px; |
| | | } |
| | | |
| | | </style> |
| | | </style> |