From 3f3de7e4cea0d9692cddd71df1e0c3d96a301fd1 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期三, 06 十一月 2024 16:12:10 +0800 Subject: [PATCH] 修改业务类型 --- Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue | 677 +++++++++++++++++--------------------------------------- 1 files changed, 208 insertions(+), 469 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue index 6ed866a..88a6823 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue @@ -33,8 +33,8 @@ <el-button icon="el-icon-delete" plain size="small" type="danger" @click="checkClickHandler">鍒犻櫎鍏ㄩ儴绫诲瀷</el-button> <el-button icon="el-icon-view" plain size="small" type="primary" @click="checkViewClickHandler">鏌ョ湅浣跨敤鑼冨洿</el-button> </div> - <div style="display: flex;justify-content: center; height: 230px;margin-top: 10px;"> - <div class="descBox" style="max-height: 100px"> + <div style="display: flex;justify-content:left;margin-top: 15px;"> + <div class="descBox" style="width: 40%"> <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -57,8 +57,7 @@ </template> <el-tooltip v-if="nodeRow.implClass" :content="nodeRow.implClass" class="item" effect="dark" placement="top-start"> - <el-tag style="max-width: 250px;overflow: hidden">{{ nodeRow.implClass }} - </el-tag> + <el-tag style="max-width: 100%;overflow: hidden;display: block">{{ nodeRow.implClass }}</el-tag> </el-tooltip> </el-descriptions-item> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" @@ -70,7 +69,7 @@ </el-descriptions-item> </el-descriptions> </div> - <div class="descBox"> + <div class="descBox" style="width: 25%;"> <el-descriptions :column="1" border class="margin-top" size="medium" title="鐗堟湰瑙勫垯"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -122,7 +121,7 @@ </el-descriptions> </div> - <div class="descBox"> + <div class="descBox" style="width: calc(35% - 40px);margin-right: 0"> <el-descriptions :column="1" border class="margin-top" size="medium" title="鐢熷懡鍛ㄦ湡"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -134,8 +133,8 @@ </el-descriptions> </div> </div> - <div style="margin-top: 30px"> - <h3>灞炴�у垪琛�</h3> + <div style="margin-top: 25px;position: relative"> + <h3 style="margin: 0;position: absolute;top:0;z-index: 1000;">灞炴�у垪琛�</h3> <avue-crud :data="attrData" :option="attrOption"> @@ -153,9 +152,9 @@ class="avue-dialog" width="75%" @close="addDialogClose"> - <el-form ref="form" :model="form" :rules="rules" label-width="95px"> + <el-form ref="form" :model="form" :rules="rules" label-width="95px" size="small"> <div class="dialogForm"> - <div class="leftForm"> + <div class="leftForm" style="width: 40%"> <el-form-item label="绫诲瀷鍚嶇О锛�" prop="id"> <el-input v-model="form.id" :readOnly="title === 'edit'"></el-input> </el-form-item> @@ -163,13 +162,11 @@ <el-input v-model="form.name"></el-input> </el-form-item> <el-form-item label="缁ф壙鑷細"> - <div style="display: flex;gap: 5px;align-items: center"> - <el-input v-model="form.fName" :readOnly="true"></el-input> - <el-button :disabled="title === 'add'" plain size="small" style="margin-left: 5px;height: 30px" - type="success" - @click="inheritClickHandler">閫夋嫨 - </el-button> - </div> + <avue-input-tree :disabled="title === 'add'" + v-model="form.fName" + placeholder="璇烽�夋嫨涓氬姟绫诲瀷" + :props="{label: 'id', value: 'id',children: 'children'}" + :dic="inheritTreeData"></avue-input-tree> </el-form-item> <el-form-item label="瀹炵幇绫伙細"> <el-input v-model="form.implClass"></el-input> @@ -178,93 +175,61 @@ <el-input v-model="form.description" :rows="2" type="textarea"></el-input> </el-form-item> </div> - <div class="centerForm"> - <el-form-item label="鐗堟湰瑙勫垯锛�" label-width="110px" prop="revLevel"> - <el-select v-model="form.revLevel" @change="revLevelChange"> - <el-option label="涓嶅彲淇" value="0"></el-option> - <el-option label="閲囩敤涓�绾х増鏈鐞�" value="1"></el-option> - <el-option label="閲囩敤浜岀骇鐗堟湰绠$悊" value="2"></el-option> - </el-select> + <div class="centerForm" style="width: 26%"> + <el-form-item label="鐗堟湰瑙勫垯锛�" label-width="100px" prop="revLevel" style="margin-bottom: 10px;"> + <el-radio v-model="form.revLevel" label="0" @input="revLevelChange">涓嶅彲淇</el-radio><br> + <el-radio v-model="form.revLevel" label="1" @input="revLevelChange">閲囩敤涓�绾х増鏈鐞�</el-radio><br> + <el-radio v-model="form.revLevel" label="2" @input="revLevelChange">閲囩敤浜岀骇鐗堟湰绠$悊</el-radio> </el-form-item> - <el-form-item v-if="form.revLevel !== '0'" label="鐗堟湰鍙疯鍒欙細" label-width="110px" prop="revisionRuleId"> - <div style="display: flex;gap: 5px;align-items: center"> - <el-input v-model="form.revisionRuleId" :readOnly="true"></el-input> - <el-button :disabled="form.inputRevisionFlag" plain size="small" style="margin-left: 5px;height: 30px" - type="success" - @click="versionAddHandler">娣诲姞 - </el-button> - <el-switch - v-model="form.inputRevisionFlag" - active-text="鎵嬪伐杈撳叆" - style="width: 300px" - @change="form.revisionRuleId = ''"> - </el-switch> - </div> + <el-form-item v-if="form.revLevel !== '0'" label="鐗堟湰鍙疯鍒欙細" label-width="100px" prop="revisionRuleId" style="margin-bottom: 5px;"> + <avue-select v-model="form.revisionRuleId" + :disabled="form.inputRevisionFlag" + placeholder="璇烽�夋嫨鐗堟湰鍙疯鍒�" + :filterable="true" + :props="{label: 'id', value: 'id'}" + :dic="versionData"></avue-select> + <el-switch + v-model="form.inputRevisionFlag" + active-text="鎵嬪伐杈撳叆" + style="width: 300px" + @change="form.revisionRuleId = ''"> + </el-switch> </el-form-item> - <el-form-item v-if="form.revLevel !== '0'" label="鍒嗛殧绗︼細" label-width="110px" prop="delimiter"> - <el-select v-model="form.delimiter" clearable> - <el-option label="." value="."></el-option> - <el-option label="-" value="-"></el-option> - </el-select> + <el-form-item v-if="form.revLevel !== '0'" label="鍒嗛殧绗︼細" label-width="100px" prop="delimiter" style="margin-bottom: 5px;"> + <el-radio v-model="form.delimiter" label=""> </el-radio> + <el-radio v-model="form.delimiter" label=".">.</el-radio> + <el-radio v-model="form.delimiter" label="-">-</el-radio> </el-form-item> - <el-form-item v-if="form.revLevel !== '0' && form.revLevel !== '1'" label="鐗堟鍙疯鍒欙細" label-width="110px" + <el-form-item v-if="form.revLevel !== '0' && form.revLevel !== '1'" label="鐗堟鍙疯鍒欙細" label-width="100px" prop="versionRule"> - <el-select v-model="form.versionRule" clearable> - <el-option label="1.2.3..." value="0"></el-option> - <el-option label="a.b.c..." value="1"></el-option> - <el-option label="0.1.2..." value="2"></el-option> - </el-select> + <el-radio v-model="form.versionRule" label="0">1.2.3...</el-radio> + <el-radio v-model="form.versionRule" label="1">a.b.c...</el-radio> + <el-radio v-model="form.versionRule" label="2">0.1.2...</el-radio> </el-form-item> </div> - <div class="rightForm"> + <div class="rightForm" style="width: 25%"> <el-form-item label="鐢熷懡鍛ㄦ湡锛�" label-width="138px" prop="lifeCycleId"> - <div style="display: flex;gap: 5px;align-items: center"> - <el-input v-model="form.lifeCycleId" :readOnly="true"></el-input> - <el-button plain size="small" style="margin-left: 5px;height: 30px" type="success" - @click="lifeAddHandler('input')">娣诲姞 - </el-button> - </div> + <avue-select v-model="form.lifeCycleId" + placeholder="璇烽�夋嫨鐢熷懡鍛ㄦ湡" + :filterable="true" + :props="{label: 'id', value: 'id'}" + :dic="lifeData"></avue-select> </el-form-item> - <el-form-item label="澶囬�夌敓鍛藉懆鏈熷垪琛細" label-width="138px"> - <div style="display: flex; align-items: center"> - <div style="height: 200px; width: 280px; border: 1px solid #bdbbbb;overflow-y: auto"> - <!-- 鍐呭 --> - <el-table - :data="dialogLifeTable" - :show-header="false" - style="width: 100%"> - <el-table-column - align="center" - prop="id"> - </el-table-column> - <el-table-column - fixed="right" - label="鎿嶄綔" - width="60"> - <template slot-scope="scope"> - <el-button - size="small" - style="color:#F56C6C;" - type="text" - @click.native.prevent="dialogDeleteLifeTable(scope.$index)"> - 绉婚櫎 - </el-button> - </template> - </el-table-column> - </el-table> - </div> - <el-button plain size="mini" style="margin-left: 5px" type="success" - @click="lifeAddHandler('table')">娣诲姞 - </el-button> - - </div> + <avue-select multiple + :filterable="true" + v-model="form.subLifeCycleIdList" + placeholder="璇烽�夋嫨鐢熷懡鍛ㄦ湡" + :props="{label: 'id', value: 'id'}" + type="tree" + :dic="subLifeData" + @change="subLifeChange"></avue-select> </el-form-item> </div> </div> </el-form> <div class="bottomForm"> - <h3>灞炴�ф睜鍒楄〃</h3> + <h3 style="margin-bottom: 10px;">灞炴�ф睜鍒楄〃</h3> <avue-crud :data="dialogAttrData" :option="dialogAttrOption" @@ -274,9 +239,9 @@ </template> </avue-crud> </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="addDialogClose">鍙� 娑�</el-button> + <span slot="footer" class="dialog-footer avue-dialog__footer"> <el-button type="primary" @click="addDialogSavaHandler">纭� 瀹�</el-button> + <el-button @click="addDialogClose">鍙� 娑�</el-button> </span> </el-dialog> @@ -308,87 +273,6 @@ <span slot="footer" class="dialog-footer"> <el-button @click="dialogAttrClose">鍙� 娑�</el-button> <el-button type="primary" @click="dialogAttrAddClickHandler">纭� 瀹�</el-button> - </span> - </el-dialog> - - <!-- 鐗堟湰鍙疯鍒欓�夋嫨 --> - <el-dialog - v-dialogDrag - :visible.sync="dialogVersionVisible" - append-to-body="true" - class="avue-dialog" - title="鐗堟湰鍙疯鍒�" - width="60%" - > - - <avue-crud - :key="dialogVersionKey" - ref="dialogAttrCrud" - :data="dialogVersionData" - :option="dialogVersionOption" - :table-loading="dialogVersionLoading" - @row-click="dialogVersionRowClick" - @search-change="versionHandleSearch" - @search-reset="versionHandleReset" - > - </avue-crud> - - <span slot="footer" class="dialog-footer"> - <el-button @click="dialogVersionVisible = false">鍙� 娑�</el-button> - <el-button type="primary" @click="dialogVersionAddClickHandler">纭� 瀹�</el-button> - </span> - - </el-dialog> - - <!-- 鐢熷懡鍛ㄦ湡 --> - <el-dialog - v-dialogDrag - :visible.sync="dialogLfeVisible" - append-to-body="true" - class="avue-dialog" - title="鐢熷懡鍛ㄦ湡妯℃澘" - width="60%" - > - <avue-crud - :key="dialogLifeKey" - ref="dialogAttrCrud" - :data="dialogLifeData" - :option="dialogLifeOption" - :table-loading="dialogLifeLoading" - @row-click="dialogLifeRowClick" - @search-change="lifeHandleSearch" - @search-reset="lifeHandleReset" - > - </avue-crud> - <span slot="footer" class="dialog-footer"> - <el-button @click="dialogLfeVisible = false">鍙� 娑�</el-button> - <el-button type="primary" @click="dialogLifeAddClickHandler">纭� 瀹�</el-button> - </span> - - </el-dialog> - - <!-- 缁ф壙鑷� --> - <el-dialog - v-dialogDrag - :visible.sync="dialogInheritVisible" - append-to-body="true" - class="avue-dialog" - title="缁ф壙涓氬姟绫诲瀷" - width="30%" - @close="inheritClose" - > - <avue-tree ref="inheritTree" v-model="treeForm" :data="inheritTreeData" :option="inheritTreeOption" - @node-click="inheritNodeClick"> - <span slot-scope="{ node, data }" class="el-tree-node__label"> - <span style="font-size: 15px"> - <i class="el-icon-s-promotion"></i> - {{ (node || {}).label }} - </span> - </span> - </avue-tree> - <span slot="footer" class="dialog-footer"> - <el-button @click="inheritClose">鍙� 娑�</el-button> - <el-button type="primary" @click="inheritSaveClickHandler">纭� 瀹�</el-button> </span> </el-dialog> @@ -431,8 +315,8 @@ :table-loading="conCheckLoading"> </avue-crud> <span slot="footer" class="dialog-footer"> - <el-button @click="conCheckVisible = false">鍙� 娑�</el-button> <el-button type="primary" @click="repairClickHandler">淇� 澶�</el-button> + <el-button @click="conCheckVisible = false">鍙� 娑�</el-button> </span> </el-dialog> @@ -491,13 +375,13 @@ :option="indexAttrOption" @row-click="indexAttrRowClick"></avue-crud> <span slot="footer" class="dialog-footer"> - <el-button @click="indexAttrVisible = false">鍙� 娑�</el-button> <el-button type="primary" @click="indexAttrClickAddHandler">纭� 瀹�</el-button> + <el-button @click="indexAttrVisible = false">鍙� 娑�</el-button> </span> </el-dialog> <span slot="footer" class="dialog-footer"> - <el-button @click="indexDialogClose">鍙� 娑�</el-button> <el-button type="primary" @click="indexClickAddHandler">淇� 瀛�</el-button> + <el-button @click="indexDialogClose">鍙� 娑�</el-button> </span> </el-dialog> @@ -668,73 +552,11 @@ fileUrl: 'api/linkTypeController/impData', createViewLoading: false, // 鍒涘缓瑙嗗浘 versionAddFlag: false, - treeForm: {}, - inheritNodeRow: {}, - inheritTreeOption: { - height: 'auto', - defaultExpandAll: false, - menu: false, - addBtn: false, - props: { - label: 'id', - value: 'id', - children: 'children' - } - }, inheritTreeData: [], - dialogInheritVisible: false, - dialogLifeDefalutData: [], // 鏌ヨ閲嶇疆榛樿鏁版嵁 - lifeType: '', - dialogLifeTable: [], - dialogLifeSaveRow: {}, - dialogLifeKey: Math.random(), - dialogLifeData: [], - dialogLifeOption: { - ...basicOption, - addBtn: false, - selection: false, - refreshBtn: false, - menu: false, - height: 450, - searchMenuSpan: 8, - highlightCurrentRow: true, - column: [ - { - label: '鐢熷懡鍛ㄦ湡妯℃澘鍚�', - prop: 'id', - searchLabelWidth: 120, - search: true - } - ] - }, - dialogLifeLoading: false, - dialogLfeVisible: false, - dialogVersionDefalutData: [], // 鏌ヨ閲嶇疆榛樿鏁版嵁 - dialogSwitchValue: false, - dialogVersionSaveRow: {}, - dialogVersionVisible: false, - dialogVersionKey: Math.random(), - dialogVersionData: [], - dialogVersionOption: { - ...basicOption, - addBtn: false, - selection: false, - refreshBtn: false, - menu: false, - height: 450, - searchMenuSpan: 8, - highlightCurrentRow: true, - // calcHeight: 100, - column: [ - { - label: '鐗堟湰鍙疯鍒�', - prop: 'id', - searchLabelWidth: 110, - search: true - } - ] - }, - dialogVersionLoading: false, + lifeData: [],//鐢熷懡鍛ㄦ湡涓嬫媺鏁版嵁 + subLifeData:[],//澶囬�夌敓鍛藉懆鏈熶笅鎷夋暟鎹� + allLifeData:[], + versionData: [],//鐗堟湰瑙勫垯鏁版嵁 dialogAttrSelectList: [], searchAttrParams: {}, dialogAttrLoading: false, @@ -754,6 +576,7 @@ highlightCurrentRow: true, height: 450, searchMenuSpan: 8, + header: false, column: [ { label: '灞炴�у悕', @@ -765,6 +588,7 @@ label: '灞炴�х被鍨�', prop: 'attributeDataType', sortable: true, + width:150, }, { label: '鍒濆鍊�', @@ -801,6 +625,7 @@ selection: false, height: 210, addBtn: false, + menuWidth:100, // index:false, column: [ { @@ -818,11 +643,13 @@ label: '灞炴�х被鍨�', prop: 'attributeDataType', sortable: true, + width:150, }, { label: '鍒濆鍊�', prop: 'defaultValue', sortable: true, + width:150, }, { label: '璇存槑', @@ -876,13 +703,14 @@ fName: '', // 缁ф壙鑷� implClass: '', // 瀹炵幇绫� description: '', // 鎻忚堪 - revLevel: '', // 鐗堟湰瑙勫垯 + revLevel: '2', // 鐗堟湰瑙勫垯 revisionRuleId: '',// 鐗堟湰鍙疯鍒� inputRevisionFlag: false, // 鎵嬪伐杈撳叆, delimiter: '', // 鍒嗛殧绗� versionRule: '0', // 鐗堟鍙疯鍒� lifeCycleId: '', // 鐢熷懡鍛ㄦ湡 subLifeCycleId: '', // 鐢熷懡鍛ㄦ湡澶囬�夊垪琛�, + subLifeCycleIdList:[], apNameArray: "", // 灞炴�ф睜鍒楄〃鈥欙紝鈥樺垎闅� }, nodeRow: {}, @@ -919,8 +747,23 @@ }, created() { this.getTreeList(); + this.getVersionList(); + this.getLifeCycle(); }, mounted() { + }, + watch:{ + 'form.lifeCycleId':{ + handler(newval) { + if(this.form.lifeCycleId){ + this.subLifeData = this.allLifeData.filter(item=>{ + return item.id!=this.form.lifeCycleId + }); + }else { + this.subLifeData = this.allLifeData + } + }, + } }, methods: { //鏍戣〃鏌ヨ @@ -954,7 +797,18 @@ this.attrData = row.attributes ? JSON.parse(row.attributes) : []; this.nodeRow = row; }, - + //鑾峰彇鐗堟湰瑙勫垯鏁版嵁 + getVersionList(){ + getVersionRuleAllList().then(res => { + this.versionData = res.data.data; + }); + }, + //鑾峰彇鐢熷懡鍛ㄦ湡鏁版嵁 + getLifeCycle(){ + gridLifeCycle().then(res => { + this.allLifeData=res.data.data; + }); + }, // 鍒涘缓鎸夐挳 addClickHandler() { if (func.isEmptyObject(this.nodeRow)) { @@ -963,33 +817,107 @@ } this.title = 'add'; this.form.fName = this.nodeRow.id === 'topNode' ? "" : this.nodeRow.id; - console.log(this.nodeRow); + this.lifeData = this.allLifeData; + this.subLifeData = this.allLifeData; this.form.inputRevisionFlag = JSON.parse(this.form.inputRevisionFlag); // 瀛楃涓瞗alse杞崲涓哄竷灏斿�� this.visible = true; }, - // 鍏抽棴缁ф壙瀵硅瘽妗� - inheritClose() { - this.dialogInheritVisible = false; - this.$refs.inheritTree.setCurrentKey(null); // 鍙栨秷褰撳墠閫変腑鐨勮妭鐐� + // 鏂板缂栬緫淇濆瓨 + addDialogSavaHandler() { + if (this.form.revLevel !== '0' &&!this.form.inputRevisionFlag && (!this.form.revisionRuleId || this.form.revisionRuleId === "")) { + this.$message.error('璇锋鏌ョ増鏈彿瑙勫垯涓嶈兘涓虹┖'); + return; + } + this.form.lifeCycleIds=this.form.subLifeCycleIdList.join(','); + this.form.subLifeCycleId=this.form.subLifeCycleIdList.join(','); + this.form.apNameArray = this.dialogAttrData ? this.dialogAttrData.map(item => item.id).join(',') : ""; + this.$refs.form.validate((valid) => { + const saveFunction = this.title === 'add' ? addLifeCycle : updateLifeCycle; + if (valid) { + if (this.form.revLevel === 0) { + this.form.versionRule = ""; + } + saveFunction(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTreeList(); + this.resetForm(); + this.visible = false; + } + }) + } else { + return false; + } + }); }, - // 缁ф壙鎸夐挳 - inheritClickHandler() { - this.dialogInheritVisible = true; + // 缂栬緫鎸夐挳鐐瑰嚮浜嬩欢 + editClickHandler() { + /** + * id 鍚嶇О + * name 鏍囩 + * implClass 瀹炵幇绫� + * fName 缁ф壙鑷� + * description 鎻忚堪 + * revLevel 鐗堟湰瑙勫垯 + * revisionRuleId 鐗堟湰鍙疯鍒� + * inputRevisionFlag 鎵嬪伐杈撳叆 + * delimiter 鍒嗛殧绗� + * versionRule 鐗堟鍙疯鍒� + * lifeCycleId 鐢熷懡鍛ㄦ湡 + * lifeCycleIds 鐢熷懡鍛ㄦ湡鍒楄〃 + * attributes 灞炴�ф睜鍒楄〃 + */ + if (func.isEmptyObject(this.nodeRow)) { + this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); + return; + } + if (this.nodeRow.id === 'topNode') { + this.$message.error('璇烽�夋嫨瀛愯妭鐐硅繘琛屼慨鏀�') + return; + } + this.form = {...this.nodeRow}; + this.form.inputRevisionFlag = JSON.parse(this.form.inputRevisionFlag); // 瀛楃涓瞗alse杞崲涓哄竷灏斿�� + // this.form.fName = this.nodeRow.id === 'topNode' ? "" : this.nodeRow.id; + this.form.subLifeCycleIdList = this.nodeRow.lifeCycleIds.split(','); + this.dialogAttrData = this.nodeRow.attributes ? JSON.parse(this.nodeRow.attributes) : []; + function processChildren(item,fName) { + if (item.children && item.children.length > 0) { + item.children = item.children.map(child => { + processChildren(child,fName); // 閫掑綊澶勭悊姣忎釜瀛愯妭鐐� + if(fName==child.id){ + child.disabled=true; + }else { + child.disabled=false; + } + return child; + }); + } + }; + const inheritTreeData=this.inheritTreeData.map(item => { + processChildren(item,this.form.id); // 澶勭悊姣忎釜鑺傜偣 + if(this.form.id==item.id){ + item.disabled=true; + }else { + item.disabled=false; + } + return item; + }); + this.inheritTreeData=inheritTreeData + this.title = 'edit'; + this.visible = true; }, - // 缁ф壙鏍戣鐐瑰嚮 - inheritNodeClick(row) { - this.inheritNodeRow = row; + subLifeChange(data){ + if (data.value.length == 0) { + this.lifeData = this.allLifeData + } else { + this.lifeData = this.allLifeData.filter(item => { + return !data.value.includes(item.id) + }); + } }, - - // 缁ф壙鏍戜繚瀛� - inheritSaveClickHandler() { - this.form.fName = this.inheritNodeRow.id; - this.dialogInheritVisible = false; - }, - // 瀵硅瘽妗� 灞炴�ф睜鍒楄〃澧炲姞鎸夐挳 addDialogClickHandler() { this.dialogAttrLoading = true; @@ -1107,136 +1035,6 @@ this.dialogAttrData.splice(index, 1); }, - // 鐗堟湰瑙勫垯绠$悊娣诲姞 - versionAddHandler() { - this.dialogVersionVisible = true; - this.dialogVersionKey = Math.random(); // 鎵撳紑鏃跺埛鏂拌〃鏍奸伩鍏嶈〃鏍奸敊琛� - this.dialogVersionLoading = true; - getVersionRuleAllList().then(res => { - const data = res.data.data.map(item => { - return { - id: item.id - } - }); - this.dialogVersionData = data; - this.dialogVersionDefalutData = data; - this.dialogVersionLoading = false; - }).catch(err => { - this.$message.error(err) - }); - }, - - // 鐗堟湰瑙勫垯琛岀偣鍑� - dialogVersionRowClick(row) { - this.dialogVersionSaveRow = row; - }, - - // 鐗堟湰瑙勫垯鎼滅储 - versionHandleSearch(params, done) { - const {id} = params; - - if (!params.id) { - this.dialogVersionData = this.dialogVersionDefalutData; - return done(); - } - ; - - this.dialogVersionData = this.dialogVersionDefalutData.filter(item => { - return item.id && item.id.includes(id); - }); - - done(); - - }, - - // 鐗堟湰绠$悊缃┖ - versionHandleReset() { - this.dialogVersionData = this.dialogVersionDefalutData; - }, - - // 鐗堟湰鍙疯鍒欎繚瀛� - dialogVersionAddClickHandler() { - if (func.isEmptyObject(this.dialogVersionSaveRow)) { - this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); - return; - } - this.form.revisionRuleId = this.dialogVersionSaveRow.id; - this.dialogVersionVisible = false; - }, - - // 鐢熷懡鍛ㄦ湡鏂板 - lifeAddHandler(val) { - this.dialogLfeVisible = true; - this.dialogLifeKey = Math.random(); // 鎵撳紑鏃跺埛鏂拌〃鏍奸伩鍏嶈〃鏍奸敊琛� - this.dialogLifeLoading = true; - this.lifeType = val; - gridLifeCycle().then(res => { - const data = res.data.data.map(item => { - return { - id: item.id - } - }); - this.dialogLifeData = data; - this.dialogLifeDefalutData = data; - this.dialogLifeLoading = false - }).catch(err => { - this.$message.error(err) - }); - }, - - // 鐢熷懡鍛ㄦ湡琛岀偣鍑� - dialogLifeRowClick(row) { - this.dialogLifeSaveRow = row; - }, - - // 鐢熷懡鍛ㄦ湡淇濆瓨 - dialogLifeAddClickHandler() { - if (func.isEmptyObject(this.dialogLifeSaveRow)) { - this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); - return; - } - if (this.lifeType === 'input') { - this.form.lifeCycleId = this.dialogLifeSaveRow.id; - } else { - const flag = this.dialogLifeTable.some(item => item.id === this.dialogLifeSaveRow.id); - - if (flag) { - this.$message.error('宸插瓨鍦ㄧ浉鍚岀殑鏁版嵁锛岃娣诲姞鍏朵粬鏁版嵁'); - return; - } - this.dialogLifeTable.push(this.dialogLifeSaveRow); - } - this.dialogLfeVisible = false; - }, - - // 鐢熷懡鍛ㄦ湡澶囬�夊垪琛ㄧЩ闄� - dialogDeleteLifeTable(index) { - this.dialogLifeTable.splice(index, 1) - }, - - // 鐢熷懡鍛ㄦ湡鎼滅储 - lifeHandleSearch(params, done) { - const {id} = params; - - if (!params.id) { - this.dialogLifeData = this.dialogLifeDefalutData; - return done(); - } - ; - - this.dialogLifeData = this.dialogLifeDefalutData.filter(item => { - return item.id && item.id.includes(id); - }); - - done(); - - }, - - // 鐢熷懡鍛ㄦ湡閲嶇疆 - lifeHandleReset() { - this.dialogLifeData = this.dialogLifeDefalutData; - }, - // 鍙兘杈撳叆鑻辨枃姝e垯鏍¢獙 validateEnglishOnly(rule, value, callback) { if (!value) { @@ -1256,16 +1054,17 @@ fName: '', // 缁ф壙鑷� implClass: '', // 瀹炵幇绫� description: '', // 鎻忚堪 - revLevel: '', // 鐗堟湰瑙勫垯 + revLevel: '2', // 鐗堟湰瑙勫垯 revisionRuleId: '',// 鐗堟湰鍙疯鍒� inputRevisionFlag: 'false', // 鎵嬪伐杈撳叆 delimiter: '', // 鍒嗛殧绗� versionRule: '0', // 鐗堟鍙疯鍒� lifeCycleId: '', // 鐢熷懡鍛ㄦ湡 subLifeCycleId: '', // 鐢熷懡鍛ㄦ湡澶囬�夊垪琛�, + subLifeCycleIdList:[], + lifeCycleIds:'', apNameArray: "", // 灞炴�ф睜鍒楄〃鈥欙紝鈥樺垎闅� }; - this.dialogLifeTable = []; // 灏嗙敓鍛藉懆鏈熻〃鏍肩疆绌� this.dialogAttrData = []; // 灏嗗睘鎬ф睜琛ㄦ牸缃┖ this.form = {...form}; this.$refs.form.clearValidate(); @@ -1279,76 +1078,10 @@ // 鐗堟湰瑙勫垯鍒囨崲 缃┖鍏朵粬鏉′欢 revLevelChange() { - this.form.versionRule = ""; this.form.inputRevisionFlag = false; this.form.delimiter = ""; this.form.versionRule = "0"; this.form.revisionRuleId = ""; - }, - - // 鏂板缂栬緫淇濆瓨 - addDialogSavaHandler() { - if (this.form.revLevel !== '0' &&!this.form.inputRevisionFlag && (!this.form.revisionRuleId || this.form.revisionRuleId === "")) { - this.$message.error('璇锋鏌ョ増鏈彿瑙勫垯涓嶈兘涓虹┖'); - return; - } - this.form.subLifeCycleId = this.dialogLifeTable ? this.dialogLifeTable.map(item => item.id).join(',') : ""; - this.form.apNameArray = this.dialogAttrData ? this.dialogAttrData.map(item => item.id).join(',') : ""; - this.$refs.form.validate((valid) => { - const saveFunction = this.title === 'add' ? addLifeCycle : updateLifeCycle; - if (valid) { - if (this.form.revLevel === 0) { - this.form.versionRule = ""; - } - saveFunction(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTreeList(); - this.resetForm(); - this.visible = false; - } - }) - } else { - return false; - } - }); - }, - - // 缂栬緫鎸夐挳鐐瑰嚮浜嬩欢 - editClickHandler() { - /** - * id 鍚嶇О - * name 鏍囩 - * implClass 瀹炵幇绫� - * fName 缁ф壙鑷� - * description 鎻忚堪 - * revLevel 鐗堟湰瑙勫垯 - * revisionRuleId 鐗堟湰鍙疯鍒� - * inputRevisionFlag 鎵嬪伐杈撳叆 - * delimiter 鍒嗛殧绗� - * versionRule 鐗堟鍙疯鍒� - * lifeCycleId 鐢熷懡鍛ㄦ湡 - * lifeCycleIds 鐢熷懡鍛ㄦ湡鍒楄〃 - * attributes 灞炴�ф睜鍒楄〃 - */ - if (func.isEmptyObject(this.nodeRow)) { - this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); - return; - } - if (this.nodeRow.id === 'topNode') { - this.$message.error('璇烽�夋嫨瀛愯妭鐐硅繘琛屼慨鏀�') - return; - } - this.form = {...this.nodeRow}; - this.form.inputRevisionFlag = JSON.parse(this.form.inputRevisionFlag); // 瀛楃涓瞗alse杞崲涓哄竷灏斿�� - // this.form.fName = this.nodeRow.id === 'topNode' ? "" : this.nodeRow.id; - this.dialogLifeTable = (this.nodeRow.lifeCycleIds && this.nodeRow.lifeCycleIds.trim()) - ? this.nodeRow.lifeCycleIds.split(',').map(item => ({id: item.trim()})) - : []; - this.dialogAttrData = this.nodeRow.attributes ? JSON.parse(this.nodeRow.attributes) : []; - this.title = 'edit'; - this.visible = true; - console.log(this.form); }, // 鍒犻櫎鎸夐挳 @@ -1357,7 +1090,7 @@ this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); return; } - ; + this.$confirm('鎮ㄧ‘瀹氳鍒犻櫎鎵�閫夋嫨鐨勬暟鎹悧锛�', '鎻愮ず', { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', @@ -1441,7 +1174,6 @@ this.checkViewData = this.checkViewDataSearch; return done(); } - ; this.checkViewData = this.checkViewDataSearch.filter(item => { return item.source && item.source.includes(source); @@ -1624,7 +1356,6 @@ indexName: this.indexForm.name, } addIndex([params]).then(res => { - console.log(res) this.$message.success('鍒涘缓鎴愬姛'); this.indexDialogClose(); }).catch(err => { @@ -1657,23 +1388,31 @@ .el-form-item .el-select { width: 100%; } + + .el-tag{ + line-height:22px; + height: 24px; + } + + .el-radio{ + margin-right: 20px; + } } .descBox { - width: 32%; - margin-left: 20px; + margin-right: 20px; } .dialogForm { display: flex; - justify-content: space-around; + justify-content: space-between; } .dialogForm > div { - width: 29%; - border: 1px solid #eee; + border: 1px solid #EBEEF5; + border-radius: 2px; padding: 25px 20px 5px 10px; /* 涓� 鍙� 涓� 宸� */ - box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); /* 娣诲姞闃村奖鏁堟灉 */ + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); /* 娣诲姞闃村奖鏁堟灉 */ } -- Gitblit v1.9.3