From c5badac7106d4ec7f419283b39b435a92f275fbd Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 30 十月 2023 09:10:18 +0800 Subject: [PATCH] 前端增加码段类型枚举类,实现修改码段类型时提供是否清空码值对话框功能 --- Source/UBCS-WEB/src/views/code/code.vue | 568 +++++++++++++++----------------------------------------- 1 files changed, 150 insertions(+), 418 deletions(-) diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue index 65295a7..da43e4a 100644 --- a/Source/UBCS-WEB/src/views/code/code.vue +++ b/Source/UBCS-WEB/src/views/code/code.vue @@ -1,5 +1,5 @@ <template> - <basic-container class="code-total" style="height: 100%"> + <basic-container class="code-total" style=" height: 100%"> <!-- 缂栫爜瑙勫垯淇℃伅灞曠ず鍖哄煙 --> <basic-container class="code-rule-container"> <p @@ -36,8 +36,7 @@ > <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� --> <template slot="menu" slot-scope="scope"> - <el-button - v-show="scope.row.lcStatus == 'Editing' ? true : false" + <el-button v-if="permissionList.editBtn && (scope.row.lcStatus == 'Editing' ? true : false)" icon="el-icon-edit" plain size="small" @@ -45,8 +44,7 @@ @click="openEdit(scope.row)" >缂� 杈� </el-button> - <el-button - v-show="scope.row.lcStatus == 'Editing' ? true : false" + <el-button v-if="permissionList.releaseBtn && (scope.row.lcStatus == 'Editing' ? true : false)" :loading="releadDisabled" icon="el-icon-position" plain @@ -55,8 +53,7 @@ @click="enableOrDeactivatse(scope.row.oid, 'release')" >鍙� 甯� </el-button> - <el-button - v-show="scope.row.lcStatus == 'Released' ? true : false" + <el-button v-if="permissionList.deactivateBtn && (scope.row.lcStatus == 'Released' ? true : false)" icon="el-icon-video-pause" plain size="small" @@ -64,8 +61,7 @@ @click="enableOrDeactivatse(scope.row.oid, 'disable')" >鍋� 鐢� </el-button> - <el-button - v-show="scope.row.lcStatus == 'Disabled' ? true : false" + <el-button v-if="permissionList.enableBtn && (scope.row.lcStatus == 'Disabled' ? true : false)" icon="el-icon-video-play" plain size="small" @@ -76,7 +72,7 @@ </template> <!-- 琛ㄦ牸涓婃柟鎸夐挳鍖哄煙 --> <template slot="menuLeft" slot-scope="scope"> - <el-button + <el-button v-if="permissionList.rulDelBtn" icon="el-icon-delete" plain size="small" @@ -85,16 +81,15 @@ > 鍒� 闄� </el-button> - <el-button + <el-button v-if="permissionList.advancedQueryBtn" icon="el-icon-search" plain size="small" type="primary" - @click="openAdvancedQuery('codeRule')" - > + @click="openAdvancedQuery('codeRule')"> 楂樼骇鏌ヨ </el-button> - <el-button + <el-button v-if="permissionList.cloneBtn" icon="icon-kelong" plain size="small" @@ -102,7 +97,7 @@ > 鍏� 闅� </el-button> - <el-button + <el-button v-if="permissionList.otherCloneBtn" icon="icon-lianjiekelong" plain size="small" @@ -111,7 +106,7 @@ > 浠庡叾浠栬鍒欎腑鍏嬮殕鐮佹 </el-button> - <el-button + <el-button v-if="permissionList.usescopeBtn" icon="el-icon-s-help" plain size="small" @@ -119,7 +114,7 @@ > 浣跨敤鑼冨洿 </el-button> - <el-button + <el-button v-if="permissionList.clearBtn" icon="icon-qingkong" plain size="small" @@ -127,7 +122,7 @@ > 娓呯┖鐮佸�� </el-button> - <el-button + <el-button v-if="permissionList.escapeOwnerBtn" icon="el-icon-guide" plain size="small" @@ -135,7 +130,7 @@ > 杞Щ鎵�鏈夎�� </el-button> - <el-button + <el-button v-if="permissionList.maxSerialnumBtn" icon="el-icon-data-analysis" plain size="small" @@ -156,7 +151,7 @@ > </advanced-query> - <!-- 缂栫爜瑙勫垯鐩稿叧瀵硅瘽妗� --> + <!-- 浠ヤ笅鏄紪鐮佽鍒欑浉鍏冲璇濇 --> <el-dialog :visible.sync="codeRangeSettingBox" append-to-body @@ -177,150 +172,18 @@ </el-dialog> <!-- 缂栫爜瑙勫垯,鍏嬮殕瀵硅瘽妗� --> - <el-dialog + <clone-rule-dialog :visible.sync="cloneSettingBox" - append-to-body - class="avue-dialog avue-dialog--top" - style="height: 100vh" - title="鍏嬮殕缂栫爜瑙勫垯" - top="-3%" - width="800px" - > - <div> - <el-row> - <el-form ref="form" :inline="true" :model="form" label-width="80px"> - <el-form-item label="缂栧彿" required> - <el-input v-model="cloneCodeRuleForm.id"></el-input> - </el-form-item> - <el-form-item label="鍚嶇О" required> - <el-input v-model="cloneCodeRuleForm.name"></el-input> - </el-form-item> - <el-form-item class="clone-input-textarea" label="鎻忚堪"> - <el-input - v-model="cloneCodeRuleForm.description" - :autosize="{ minRows: 3, maxRows: 5 }" - type="textarea" - ></el-input> - </el-form-item> - </el-form> - </el-row> - <el-row> - <p - style=" - margin: 0 0px 16px 50%; - font-weight: 500; - font-size: 20px; - color: #000; - " - > - 鐮佹绠$悊 - </p> - <avue-crud - :data="cloneData" - :option="cloneOption" - :table-loading="cloneTableLoading" - class="clone-avue-crud" - @on-load="cloneDataOnLoad" - > - <template slot="menu" slot-scope="scope"> - <el-button - v-show="scope.row.orderNum > 1" - icon="el-icon-arrow-up" - plain - size="small" - type="text" - @click="upOrderNum(scope.row)" - >涓婄Щ - </el-button> - <el-button - icon="el-icon-arrow-down" - plain - size="small" - type="text" - @click="downOrderNum(scope.row)" - >涓嬬Щ - </el-button> - </template> - </avue-crud> - </el-row> - </div> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="saveCloneCodeRule">淇� 瀛�</el-button> - <el-button @click="cloneSettingBox = false">鍙� 娑�</el-button> - </div> - </el-dialog> + :ruleData="selectionList[0]" + @refreshRuleTable="onLoad"> + </clone-rule-dialog> <!-- 缂栫爜瑙勫垯,浠庡叾浠栬鍒欏厠闅嗗璇濇 --> - <el-dialog + <clone-other-basic-sec-dialog :visible.sync="cloneOtherCodeRuleSettingBox" - append-to-body - class="avue-dialog avue-dialog--top" - destroy-on-close - style="height: 100vh" - title="鍏嬮殕缂栫爜瑙勫垯鐨勫熀纭�淇℃伅" - top="-3%" - width="800px" - > - <div> - <el-row> - <p - style=" - margin-top: -20px; - margin-bottom: 4px; - font-weight: 570; - font-size: 19px; - color: #0e2d5f; - " - > - 缂栫爜瑙勫垯 - </p> - <avue-crud - ref="crudCloneCodeRuleOther" - :data="data" - :option="cloneCodeRuleOption" - :page.sync="page" - :table-loading="loading" - class="other-clone-coderule-crud" - @row-click="codeOtherCloneRuleRowClick" - @size-change="sizeChange" - @selection-change="selectionOtherCloneCodeRuleChange" - @search-change="searchOtherCloneChange" - @search-reset="searchOtherCloneReset" - @on-load="onLoad" - > - </avue-crud> - </el-row> - <el-row style="margin-top: 10px; border-top: 1px solid #ebeef5"> - <p - style=" - margin-top: 10px; - margin-bottom: 4px; - font-weight: 570; - font-size: 19px; - color: #0e2d5f; - " - > - 鐮佹淇℃伅 - </p> - <avue-crud - ref="crudCloneCodeBasicOther" - :data="basicData" - :option="cloneBasicOption" - :table-loading="loadingBasic" - class="other-clone-codebasic-crud" - @row-click="codeOtherCloneBasicRowClick" - @selection-change="selectionOtherCloneCodeBasicChange" - > - </avue-crud> - </el-row> - </div> - <div slot="footer" class="dialog-footer" style="height: 50px"> - <el-button type="primary" @click="saveOtherCodeBasic">淇� 瀛�</el-button> - <el-button @click="cloneOtherCodeRuleSettingBox = false" - >鍙� 娑�</el-button - > - </div> - </el-dialog> + :quiltCloneCodeRule="selectionList[0]" + @refreshRuleTable="onLoad"> + </clone-other-basic-sec-dialog> <!-- 缂栫爜瑙勫垯,杞Щ鎵�鏈夎�呭璇濇 --> <el-dialog @@ -355,21 +218,18 @@ <!-- 鍩虹鐮佹灞曠ず鍖哄煙 --> <basic-container class="code-basicsec-container"> <p - style=" - margin-top: -5px; + style="margin-top: -5px; margin-bottom: 4px; font-weight: 570; font-size: 19px; - color: #0e2d5f; - " - > + color: #0e2d5f;"> 鐮佹绠$悊 </p> <avue-crud ref="crudBasic" :data="basicData" :option="optionBasic" - :permission="permissionList" + :permission="basicPermissionList" :table-loading="loadingBasic" class="code-basic-crud" @row-click="codeBasicSecRowClick" @@ -380,8 +240,7 @@ > <!-- 鍩虹鐮佹琛ㄦ牸鍐呮搷浣滄寜閽� --> <template slot="menu" slot-scope="scope"> - <el-button - v-show="currentRuleLcStatus != 'Editing'" + <el-button v-if="basicPermissionList.viewBtn && currentRuleLcStatus != 'Editing'" icon="el-icon-view" plain size="small" @@ -389,8 +248,7 @@ @click="openBasicDialog('view', scope.row)" >鏌ョ湅 </el-button> - <el-button - v-show="currentRuleLcStatus === 'Editing'" + <el-button v-if="basicPermissionList.editBtn && currentRuleLcStatus === 'Editing'" icon="el-icon-edit" plain size="small" @@ -398,11 +256,7 @@ @click="openBasicDialog('edit', scope.row)" >缂栬緫 </el-button> - <el-button - v-show=" - scope.row.secType === 'codeclassifysec' || - scope.row.secType == 'codefixedsec' - " + <el-button v-if="basicPermissionList.basicMgrBtn && (scope.row.secType === 'codeclassifysec' || scope.row.secType == 'codefixedsec')" icon="el-icon-setting" plain size="small" @@ -410,8 +264,7 @@ @click="openBasicSecCodeValueMgr(scope.row)" >鐮佸�肩鐞� </el-button> - <el-button - v-show="scope.row.orderNum > 1" + <el-button v-if="basicPermissionList.basicMoveupBtn && scope.row.orderNum > 1" icon="el-icon-arrow-up" plain size="small" @@ -419,7 +272,7 @@ @click="upOrderNum(scope.row)" >涓婄Щ </el-button> - <el-button + <el-button v-if="basicPermissionList.basicDownBtn" icon="el-icon-arrow-down" plain size="small" @@ -431,7 +284,7 @@ <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� --> <template slot="menuLeft" slot-scope="scope"> - <el-button + <el-button v-if="basicPermissionList.addBtn" :disabled="selectionList.length <= 0" icon="el-icon-plus" size="small" @@ -440,7 +293,7 @@ > 鏂� 澧� </el-button> - <el-button + <el-button v-if="basicPermissionList.basicDelBtn" :disabled="selectionList.length <= 0" icon="el-icon-delete" plain @@ -450,7 +303,7 @@ > 鍒� 闄� </el-button> - <el-button + <el-button v-if="basicPermissionList.basicAdvancedQueryBtn" :disabled="selectionList.length <= 0" icon="el-icon-search" plain @@ -485,9 +338,8 @@ style="height: 60vh; margin-bottom: -40px" > <basic-container> - <div class="abox" v-for="item in classifyValueTreeData"> + <div class="abox"> <avue-tree - :node-key="item.oid" :data="classifyValueTreeData" :option="classisyValueTreeOption" style="height: calc(60vh - 100px);" @@ -1334,9 +1186,7 @@ </el-row> </div> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="selectedListClassifyLinkAttr" - >纭� 瀹�</el-button - > + <el-button type="primary" @click="selectedListClassifyLinkAttr">纭� 瀹�</el-button> <el-button @click="isShowSelectAttrOption = false">鍙� 娑�</el-button> </div> </el-dialog> @@ -1415,7 +1265,6 @@ remove, listUseRange, updateStatus, - clone, clearAllCode, checkLikeCodeRule, } from "@/api/code/mdmrule"; @@ -1425,7 +1274,6 @@ upOrderNum, deleteData, editSave, - cloneCodeBasic, addSave, refDataGridClassifySec, } from "@/api/code/codebasic"; @@ -1446,9 +1294,6 @@ } from "@/api/code/codeClassifyValue"; import { getDictionary } from "@/api/omd/enum"; import optionBasic from "@/const/code/codebasic"; -import cloneOption from "@/const/code/cloneOption"; -import cloneBasicOption from "@/const/code/cloneBasicDialogOption"; -import cloneCodeRuleOption from "@/const/code/cloneCodeRuleDialogOption"; import optionRule from "@/const/code/mdmrule"; import attrOption from "@/const/code/selectAttrOptionDialog"; import treeOption from "@/const/code/classifyTreeOptionDialog"; @@ -1458,11 +1303,12 @@ import { mapGetters } from "vuex"; import { getByRoleUserList } from "@/api/system/user"; import func from "@/util/func"; +import secTypeEnum from '@/enumpack/CodeSecTypeEnum'; export default { data() { return { - nodeKey:'', + crudOption:{...optionRule}, ruleForm: {}, query: {}, loading: true, @@ -1478,24 +1324,11 @@ data: [], currentRuleLcStatus: "", - /*鍏嬮殕瀵硅瘽妗嗘帶鍒跺彉閲�*/ + /*鍏嬮殕缂栫爜瑙勫垯瀵硅瘽妗嗘帶鍒跺彉閲�*/ cloneSettingBox: false, - cloneTableLoading: false, - cloneOption: cloneOption, - cloneData: [], - cloneCodeRuleForm: { - id: "", - name: "", - description: "", - }, /*浠庡叾浠栬鍒欏厠闅嗙爜娈�*/ cloneOtherCodeRuleSettingBox: false, - cloneBasicOption: cloneBasicOption, - cloneCodeRuleOption: cloneCodeRuleOption, - selectionOtherCloneCodeBasicList: [], // 姝ょ晫闈㈠唴褰撳墠閫変腑鐨勫熀纭�鐮佹 - selectionOtherCloneCodeRuleList: [], // 姝ょ晫闈㈠唴褰撳墠閫変腑鐨勭紪鐮佽鍒� - otherCloneQuery: {}, // 鏌ヨ鏉′欢瀵硅薄 /** 杞Щ鎵�鏈夎�呭璇濇 */ escapeOwnerVisible: false, @@ -1551,7 +1384,7 @@ loadingBasic: false, selectionBasicList: [], addBasicCodeSettingBox: false, - showbtn: false, //鍩虹鐮佹鏂板鏄惁鏄剧ず鍩虹鐮佹 + showbtn: false, //鍩虹鐮佹鏂板鎸夐挳鏄惁绂佺敤 isLoadingSecCodeAddBtn: false, basicSecDialogTitle: "", //鍩虹鐮佹绗竴灞傚璇濇鏍囬 basicSecOnlyRead: false, //鏂板鍩虹鐮佹琛ㄥ崟鏄惁鍙 @@ -1738,11 +1571,35 @@ ...mapGetters(["permission"]), permissionList() { return { - addBtn: this.vaildData(this.permission.codeRule_add, true), - viewBtn: this.vaildData(this.permission.codeRule_view, false), - delBtn: this.vaildData(this.permission.plCodeRule_delete, false), - editBtn: this.vaildData(this.permission.codeRule_edit, true), + // 缂栫爜瑙勫垯鐩稿叧鎸夐挳 + addBtn: this.vaildData(this.permission.code_rule.code_rule_add, false), + //viewBtn: this.vaildData(this.permission.code_rule.code_rule_view, false), + rulDelBtn: this.vaildData(this.permission.code_rule.code_rule_delete, false), + editBtn: this.vaildData(this.permission.code_rule.code_rule_edit, false), + deactivateBtn: this.vaildData(this.permission.code_rule.code_rule_deactivate, false), + enableBtn: this.vaildData(this.permission.code_rule.code_rule_enable, false), + releaseBtn: this.vaildData(this.permission.code_rule. code_rule_release, false), + advancedQueryBtn: this.vaildData(this.permission.code_rule.code_rule_advanced_query, false), + cloneBtn: this.vaildData(this.permission.code_rule.code_rule_clone, false), + otherCloneBtn: this.vaildData(this.permission.code_rule.code_rule_other_clone, false), + usescopeBtn: this.vaildData(this.permission.code_rule.code_rule_usescope, false), + clearBtn: this.vaildData(this.permission.code_rule.code_rule_clear, false), + escapeOwnerBtn: this.vaildData(this.permission.code_rule.code_rule_escape_owner, false), + maxSerialnumBtn: this.vaildData(this.permission.code_rule.code_rule_max_serialnum, false), }; + }, + basicPermissionList() { + return{ + // 鍩虹鐮佹鐩稿叧鎸夐挳 + addBtn: this.vaildData(this.permission.code_rule.code_basic_add, false), + editBtn: this.vaildData(this.permission.code_rule.code_basic_edit, false), + viewBtn: this.vaildData(this.permission.code_rule. code_basic_view, false), + basicDelBtn: this.vaildData(this.permission.code_rule.code_basic_delete, false), + basicAdvancedQueryBtn: this.vaildData(this.permission.code_rule.code_basic_advanced_query, false), + basicMgrBtn: this.vaildData(this.permission.code_rule.code_basic_mgr, false), + basicMoveupBtn: this.vaildData(this.permission.code_rule.code_basic_moveup, false), + basicDownBtn: this.vaildData(this.permission.code_rule.code_basic_down, false), + } }, }, watch: {}, @@ -1798,11 +1655,11 @@ if (JSON.stringify(conditionMaps) != "{}") { if (this.advancedQueryParam.currentOpen == "codeRule") { this.query = conditionMaps; + // console.log(this.query); this.onLoad(this.page); } else { this.sendGridCodeBasicSec(conditionMaps, true); } - //console.log(conditionMaps); } }, /* 鍏紡缂栬緫妗嗗唴瀹规敼鍙�,瀛愮粍浠剁紪杈戝畬鍏紡涔嬪悗鍐呭鍥炴樉鏃惰皟鐢� */ @@ -1811,12 +1668,12 @@ }, /* 寮曠敤鐮佹鍙傜収閰嶇疆,瀛愮粍浠跺~瀹屽弬鐓ч厤缃箣鍚庡唴瀹瑰洖鏄炬椂璋冪敤 */ setReferConfigValue(content) { - // console.log(content.referTypeName); this.form.referBtmId = content.referType || ""; this.form.referBtmName = content.referTypeName || content.referType; //杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉 let submitFormJson = JSON.stringify(content); this.form.referConfig = submitFormJson || ""; + debugger; }, /** 寮曠敤鐮佹涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庣殑鍐呭鍥炴樉鏃惰皟鐢� */ echoReferBtmType(content) { @@ -1828,7 +1685,6 @@ /** 鐖跺垎绫婚�夋嫨瀵硅瘽妗嗭紝绗簩灞傚祵濂楀璇濇锛屽強鍏剁浉鍏虫柟娉� */ /** 淇濆瓨褰撳墠鐖跺垎绫荤爜娈电殑閫変腑琛岋紝骞惰繘琛屽洖鏄� */ saveSelectedParentClassify() { - //console.log(this.parentClsfyParams.parentClassifySelectionList.length); if (this.parentClsfyParams.parentClassifySelectionList.length != 1) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�!"); return false; @@ -1896,7 +1752,6 @@ page.pageSize, conditionMaps ).then((res) => { - //console.log(res.data); const data = res.data.data; parentClsParam.parentClassifyDataPage.total = data.total; parentClsParam.parentClassifyData = data.records; @@ -1914,7 +1769,6 @@ /** 鍔犺浇鍒嗙被杩炴帴灞炴�ц〃鏍兼暟鎹� */ loadlistClassifyLinkAttr() { let attrParam = this.selectAttrParams; - //console.log(this.currentSelectTreeData); this.selectAttrParams.selectAttrOptionLoading = true; let conditionMaps = {}; if (attrParam.selectAttrQeury) { @@ -1932,7 +1786,6 @@ this.$nextTick(() => { this.$refs[attrParam.ref].doLayout(); }); - //console.log(data.data); this.selectAttrParams.selectAttrData = data.data; this.selectAttrParams.selectAttrOptionLoading = false; // 灏嗘悳绱㈡鍐呭缃┖ @@ -2002,13 +1855,11 @@ this.fixedValueOptionLoading = true; gridCodeFixedValue(1, -1, { codeFixedSecOid: row.oid }).then((res) => { this.fixedValueData = res.data.data.records; - //console.log(this.fixedValueData); this.fixedValueOptionLoading = false; }); }, /** 鍗曞嚮鍥哄畾鐮佹鐨勭爜鍊艰〃涓鏃惰Е鍙戠殑浜嬩欢*/ selectedCodeValueRow(row) { - //console.log(row); this.selectedFixedOrCodeclassifyValue = row; this.codeFixdForm.id = row.id; this.codeFixdForm.description = row.description; @@ -2020,14 +1871,15 @@ if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) { return; } - this.codeFixdForm.codeFixedSecOid = - this.codefixedsecOrCodeclassifysec.oid; + this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysec.oid; addSaveCodeFixedValue(this.codeFixdForm).then( () => { this.loadFixedValueTableData({ oid: this.codefixedsecOrCodeclassifysec.oid, }); this.clearFixedOrClassifyForm("codefixedsec"); + this.$refs.crudFixedValue.refreshTable(); + this.$refs.crudFixedValue.doLayout(); this.$message({ type: "success", message: "鎿嶄綔鎴愬姛!", @@ -2043,7 +1895,6 @@ } this.codeClassifyForm.codeClassifySecOid = this.codefixedsecOrCodeclassifysec.oid; - // console.log(this.codeClassifyForm); addSaveCodeClassifyValue(this.codeClassifyForm).then( () => { this.loadClassifyValueData({ @@ -2068,7 +1919,6 @@ clearFixedOrClassifyForm(condition) { //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽� this.selectedFixedOrCodeclassifyValue = ""; - //console.log(condition); if (condition === "close") { this.codeFixdForm = this.$options.data().codeFixdForm; this.codeClassifyForm = this.$options.data().codeClassifyForm; @@ -2402,7 +2252,6 @@ "conditionMap[codeclassifysecoid]": row.oid, }; treeCodeClassifyValue(condtionData).then((res) => { - // console.log('res',res) this.classifyValueTreeData = res.data; //console.log(res.data); }); @@ -2462,6 +2311,12 @@ fieldType: "combox", queryField: "lcStatus", comboxKey: "codeSearchLCStatus", + }, + { + data: [], + title: "鎵�鏈夎��", + fieldType: "text", + queryField: "ownerText", }, ]; } else { @@ -2578,46 +2433,6 @@ return; } this.cloneSettingBox = true; - this.cloneCodeRuleForm.id = this.selectionList[0].id; - this.cloneCodeRuleForm.name = this.selectionList[0].name; - this.cloneCodeRuleForm.description = this.selectionList[0].description; - this.loadBasic({ oid: this.selectionList[0].oid }); - }, - /** 鍏嬮殕缂栫爜瑙勫垯淇濆瓨鍔熻兘*/ - saveCloneCodeRule() { - let form = this.cloneCodeRuleForm; - if (form.id.trim() == "") { - this.$message.warning("缂栧彿涓嶈兘涓虹┖!"); - return; - } - if (form.name.trim() == "") { - this.$message.warning("鐮佸�间笉鑳戒负绌�!"); - return; - } - this.selectionList[0].oid = ""; - this.selectionList[0].id = form.id; - this.selectionList[0].name = form.name; - this.selectionList[0].description = form.description; - this.selectionList[0].createTime = new Date().getTime(); - this.selectionList[0].ts = new Date(this.selectionList[0].ts).getTime(); - this.selectionList[0].lcStatus = "Editing"; - let data = Object.assign({}, this.selectionList[0], { - elements: this.cloneData, - }); - clone(data).then( - () => { - this.cloneSettingBox = false; - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!", - }); - }, - (error) => { - window.console.log(error); - } - ); - //console.log(data); }, /** 鎵撳紑浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�*/ @@ -2630,99 +2445,6 @@ return; } this.cloneOtherCodeRuleSettingBox = true; - }, - /** 浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�-鍗曞嚮缂栫爜瑙勫垯瀹炵幇琛岄�夋嫨*/ - codeOtherCloneRuleRowClick(row) { - this.$refs.crudCloneCodeRuleOther.toggleSelection(); - this.selectionOtherCloneCodeRuleList = row; - this.$refs.crudCloneCodeRuleOther.setCurrentRow(row); - this.$refs.crudCloneCodeRuleOther.toggleRowSelection(row); //閫変腑褰撳墠琛� - this.loadBasic(row); - }, - /** 浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�-鍗曞嚮鍩虹鐮佹瀹炵幇琛岄�夋嫨*/ - codeOtherCloneBasicRowClick(row) { - this.$refs.crudCloneCodeBasicOther.toggleSelection(); - this.selectionOtherCloneCodeBasicList = row; - this.$refs.crudCloneCodeBasicOther.setCurrentRow(row); - this.$refs.crudCloneCodeBasicOther.toggleRowSelection(row); //閫変腑褰撳墠琛� - }, - /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈腑缂栫爜瑙勫垯褰撳墠閫変腑琛屽彉鍖栫殑鏃跺�欒Е鍙�*/ - selectionOtherCloneCodeRuleChange(list) { - //console.log(list); - this.selectionOtherCloneCodeRuleList = list; - this.$refs.crudBasic.setCurrentRow( - this.selectionBasicList[list.length - 1] - ); - if (list == "") { - this.basicData = []; - } - if (this.selectionOtherCloneCodeRuleList.length > 0) { - this.loadBasic(this.selectionOtherCloneCodeRuleList[list.length - 1]); - } - }, - selectionOtherCloneCodeBasicChange(list) { - this.selectionOtherCloneCodeBasicList = list; - this.$refs.crudCloneCodeBasicOther.setCurrentRow( - this.selectionOtherCloneCodeBasicList[list.length - 1] - ); - }, - /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈㈤噸缃悳绱㈠姛鑳� */ - searchOtherCloneReset() { - this.otherCloneQuery = {}; - this.onLoad(this.page); - }, - /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈㈡悳绱㈠姛鑳�*/ - searchOtherCloneChange(params, done) { - this.page.currentPage = 1; - // 澶氫釜conditionMap杩欐牱浼犲弬锛屽揩閫熸煡璇㈤粯璁ら噰鐢ㄦā绯婃煡璇� - let requestData = {}; - if (params) { - Object.keys(params).forEach((key) => { - requestData["conditionMap" + "[" + key + "_like]"] = - params[key].trim(); - }); - } - this.otherCloneQuery = requestData; - this.onLoad(this.page,requestData); - done(); - }, - /** 淇濆瓨浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹淇℃伅*/ - saveOtherCodeBasic() { - let oid = this.selectionList[0].oid; - let fromDialogPkCodebasic = this.selectionOtherCloneCodeBasicList; - if (fromDialogPkCodebasic.length <= 0) { - this.$message.warning("璇烽�夋嫨鐮佹鏁版嵁!"); - return; - } - let res = fromDialogPkCodebasic.filter((item) => { - return item.pkCodeRule == oid; - }); - if (res != "") { - this.$message.warning("闇�瑕佸厠闅嗙殑缂栫爜瑙勫垯涓庤鍏嬮殕鐨勭紪鐮佽鍒欑浉鍚�!"); - return; - } - let oidArr = []; - fromDialogPkCodebasic.forEach((ele) => { - oidArr.push(ele.oid); - }); - let data = { - pkCodeRule: oid, - oidArr: oidArr.join(","), - }; - //console.log(data); - cloneCodeBasic(data).then( - () => { - this.cloneOtherCodeRuleSettingBox = false; - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!", - }); - }, - (error) => { - window.console.log(error); - } - ); }, /** 娓呯┖鐮佸��*/ @@ -2755,7 +2477,6 @@ }, /** 娣诲姞*/ rowSave(row, done, loading) { - console.log(row); add(row).then( () => { this.onLoad(this.page); @@ -2831,7 +2552,7 @@ this.query = {}; this.onLoad(this.page); }, - // 缂栫爜瑙勫垯蹇�熸煡璇� + // 缂栫爜瑙勫垯蹇�熸煡璇earchChange searchChange(params, done) { this.page.currentPage = 1; // 澶氫釜conditionMap杩欐牱浼犲弬锛屽揩閫熸煡璇㈤粯璁ら噰鐢ㄦā绯婃煡璇� @@ -2844,6 +2565,11 @@ } this.query = requestData; this.onLoad(this.page, this.query); + // console.log( this.findObject(this.optionRule.column,'id')) + // console.log(this.crudOption.column[0]) + // this.crudOption.column && this.crudOption.column.length > 0 + // ? (this.crudOption.column[0].value = '') + // : null; done(); }, /** 缂栫爜瑙勫垯褰撳墠閫変腑琛屽彉鍖栫殑鏃跺�欒Е鍙�*/ @@ -2881,7 +2607,11 @@ }, onLoad(page, params = {}) { this.loading = true; - gridCodeRule(page.currentPage, page.pageSize, params).then((res) => { + gridCodeRule( + page.currentPage, + page.pageSize, + Object.assign({},params,this.query), + ).then((res) => { //console.log(res.data); const data = res.data.data; this.page.total = data.total; @@ -2936,13 +2666,13 @@ this.basicSecDialogTitle = "淇敼鐮佹淇℃伅"; this.showbtn = true; this.basicSecOnlyRead = false; - //涓篺orm缁戝畾鍊� } else { this.basicSecDialogTitle = "鏌ョ湅鐮佹淇℃伅"; this.showbtn = false; this.basicSecOnlyRead = true; } //console.log(this.form); + //涓篺orm缁戝畾鍊� this.changeSectypeFormItems(condition == "add" ? null : row); this.addBasicCodeSettingBox = true; }, @@ -2965,16 +2695,16 @@ type: "success", message: "鎿嶄綔鎴愬姛!", }); + // 鍏抽棴瀵硅瘽妗� + this.addBasicCodeSettingBox = false; + // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇 + this.loadBasic(this.selectionList[0]); }, (error) => { window.console.log(error); } ); - // 鍏抽棴瀵硅瘽妗� - this.addBasicCodeSettingBox = false; } - // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇 - this.loadBasic(this.selectionList[0]); } else { // 鍙兘鍙傜収寮曠敤鐨勪笟鍔$被鍨嬩細鍙戠敓鏀瑰彉鎵�浠ヨ繖鍎跨洿鎺ュreferConfig鐨刯son杩涜鏀瑰彉 if ( @@ -2988,21 +2718,38 @@ // let referValueInfo = JSON.parse(this.form.referValueInfo); // referValueInfo.referType = this.form.referBtmId; } - editSave(this.form).then( + let oldBasicSec = this.selectionBasicList.at(-1); + let secType = this.form.secType; + Vue.set(this.form, 'isClearValue', false); + if((oldBasicSec.secType == "codefixedsec" || oldBasicSec.secType === "codeclassifysec") && oldBasicSec.secType != secType){ + await this.$confirm("鐮佹绫诲瀷鐢便��"+oldBasicSec.secTypeText+"銆戯紝淇敼涓�"+"銆�"+secTypeEnum.getTextByValue(secType)+"銆戯紝璇烽棶鏄惁闇�瑕佹竻绌哄叧鑱旂殑鐮佸�硷紵", "鎻愮ず", { + distinguishCancelAndClose: true, + closeOnClickModal: false, + confirmButtonText: "娓呯┖鐮佸��", + cancelButtonText: "淇濈暀鐮佸��", + }).then(() => { + // 娓呯┖鐮佸�� + this.form.isClearValue = true; + }).catch(action => { + this.form.isClearValue = false; + }); + } + await editSave(this.form).then( () => { this.$message({ type: "success", message: "鎿嶄綔鎴愬姛!", }); + this.loadBasic(this.selectionList[0]); + // 鍏抽棴瀵硅瘽妗� + this.addBasicCodeSettingBox = false; }, (error) => { window.console.log(error); } ); - this.loadBasic(this.selectionList[0]); - // 鍏抽棴瀵硅瘽妗� - this.addBasicCodeSettingBox = false; } + // 鍙栨秷淇濆瓨鎸夐挳鍔犺浇鏁堟灉 this.isLoadingSecCodeAddBtn = false; }, /** 鍥犱负elementui鐨勮〃鍗曟牎楠岃缃笉涓婃墍浠ラ噰鐢ㄥ垽鏂殑鏂瑰紡鏉ュ仛琛ㄥ崟妫�楠屾柟寮�*/ @@ -3212,6 +2959,10 @@ if (!this.tipsMessage(this.selectionBasicList)) { return; } + if (this.selectionList.at(-1).lcStatus != "Editing") { + this.$message.warning('缂栫爜瑙勫垯鐘舵�佷笉鏄�"缂栬緫涓�"锛屼笉鍏佽鍒犻櫎鐮佹!'); + return; + } let oid = this.selectionBasicList[0].oid; this.$confirm("鏄惁鍒犻櫎杩欐潯鏁版嵁锛熷鏋滆寮曠敤灏嗕笉鑳借鍒犻櫎锛�", { confirmButtonText: "纭畾", @@ -3238,11 +2989,7 @@ }, /** 鐐瑰嚮瑙﹀彂鍔犺浇鍩虹鐮佹淇℃伅*/ loadBasic(row) { - if (this.cloneSettingBox) { - this.cloneTableLoading = true; - } else { - this.loadingBasic = true; - } + this.loadingBasic = true; // console.log(row.oid); if (row != "" || row != null) { //瀛樺偍褰撳墠鍏宠仈鐨勭紪鐮佽鍒欑浉鍏充俊鎭� @@ -3275,14 +3022,8 @@ gridCodeBasicSec(1, -1, isAdancedQuery ? condition : conditionMaps).then( (res) => { const data = res.data.data; - if (this.cloneSettingBox) { - this.cloneData = data.records; - this.cloneTableLoading = false; - } else { - this.basicData = data.records; - // console.log(this.basicData); - this.loadingBasic = false; - } + this.basicData = data.records; + this.loadingBasic = false; } ); }, @@ -3440,42 +3181,25 @@ }, /** 鐮佹绫诲瀷鏀瑰彉鏃讹紝澧炲姞瀵瑰簲鐨刦orm琛ㄥ崟涓殑灞炴��*/ changeSectypeFormItems(row) { - //console.log(row); if ( func.isEmpty(this.enumParam.secTypeList) || this.enumParam.secTypeList.length == 0 ) { this.loadCodeSecType(); } - if (row != null) { - this.form = { - oid: row.oid, - id: row.id, //缂栧彿, - name: row.name, //鍚嶇О - secType: row.secType, //鐮佹绫诲瀷 - description: row.description, //鎻忚堪 - serialDependFlag: row.serialDependFlag == "true" ? true : false, //鏄惁娴佹按渚濊禆 - serialDependOrder: row.serialDependOrder, //娴佹按渚濊禆椤哄簭 - nullableFlag: row.nullableFlag == "true" ? true : false, //鏄惁涓虹┖ - displayFlag: row.displayFlag == "true" ? true : false, - componentCodeFlag: row.componentCodeFlag == "true" ? true : false, //鏄惁鍙備笌缂栫爜 - pkCodeRule: row.pkCodeRule, //鎵�灞炵紪鐮佽鍒� - }; - } else { - this.form = { - id: this.form.id, //缂栧彿 - name: this.form.name, //鍚嶇О - secType: this.form.secType, //鐮佹绫诲瀷 - description: this.form.description, //鎻忚堪 - serialDependFlag: this.form.serialDependFlag, //鏄惁娴佹按渚濊禆 - serialDependOrder: this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭 - nullableFlag: this.form.nullableFlag, //鏄惁涓虹┖ - displayFlag: this.form.displayFlag, // - componentCodeFlag: this.form.componentCodeFlag, //鏄惁鍙備笌缂栫爜 - pkCodeRule: this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒� - }; - //console.log(this.form); - } + this.form = { + oid: row !=null ? row.oid:this.form.oid, + id: row !=null ? row.id:this.form.id, //缂栧彿, + name: row !=null ? row.name:this.form.name, //鍚嶇О + secType: row !=null ? row.secType:this.form.secType, //鐮佹绫诲瀷 + description: row !=null ? row.description:this.form.description, //鎻忚堪 + serialDependFlag: this.isNullJsonBoolean(row,this.form, 'serialDependFlag'), //鏄惁娴佹按渚濊禆 + serialDependOrder: row !=null ? row.serialDependOrder:this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭 + nullableFlag: this.isNullJsonBoolean(row, this.form, 'nullableFlag'), //鏄惁涓虹┖ + displayFlag: this.isNullJsonBoolean(row, this.form, 'displayFlag'), + componentCodeFlag: this.isNullJsonBoolean(row, this.form, 'componentCodeFlag'), //鏄惁鍙備笌缂栫爜 + pkCodeRule: row !=null ? row.pkCodeRule:this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒� + }; if (this.form.secType === "codefixedsec") { //鍥哄畾鐮佹 this.form = Object.assign({}, this.form, { @@ -3540,8 +3264,6 @@ ? row.customCodeSerialClass : "", //鑷畾涔夋祦姘寸畻娉� }); - console.log(this.form); - console.log(this.enumParam.codeFillType); this.loadCodeFillType(); this.loadCodeFillSeparator(); } else if (this.form.secType === "codelevelsec") { @@ -3587,7 +3309,6 @@ : "", //鏃ユ湡鏍煎紡 }); } else if (this.form.secType === "codeclassifysec") { - //console.log(this.form); //鍒嗙被鐮佹 this.form = Object.assign({}, this.form, { codeSecLengthType: @@ -3630,7 +3351,15 @@ this.loadCodeFillType(); this.loadCodeFillSeparator(); } - // console.log(this.form); + }, + // 鍒ゆ柇Boolean鍊兼槸鍚︿负绌猴紝骞朵笖瀵箂tr绫诲瀷甯冨皵鍊艰繘琛岃浆鎹� + isNullJsonBoolean(row,form,attr) { + //console.log(row[attr],form[attr]); + if(row != null){ + return JSON.parse(row[attr]); + }else { + return form[attr]; + } }, /** 绗竴娆¤姹傜殑鏋氫妇鏁版嵁鏀剧紦瀛�*/ getLocalStorageEnum(enumKey) { @@ -3687,11 +3416,14 @@ }, // 鏈�澶ф祦姘村彿 maxSerialNum() { - console.log(this.selectionList); - if (this.selectionList.length === 0) { + if (this.selectionList.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉$紪鐮佽鍒欙紒"); return; } + if(this.selectionList.length> 1){ + this.$message.warning("鍙兘閫夋嫨涓�鏉$紪鐮佽鍒欙紒"); + return; + } this.maxSerial.visible = true; this.maxSerial.ruleOid = this.selectionList[0]["oid"]; }, -- Gitblit v1.9.3