| | |
| | | <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> |
| | |
| | | </el-select> |
| | | </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> |
| | | <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> |
| | |
| | | </div> |
| | | <div class="rightForm" style="width: 26%"> |
| | | <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="dialogLifeData"></avue-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="备选生命周期列表:" label-width="138px"> |
| | |
| | | </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 |
| | |
| | | ref="dialogAttrCrud" |
| | | :data="dialogLifeData" |
| | | :option="dialogLifeOption" |
| | | :table-loading="dialogLifeLoading" |
| | | @row-click="dialogLifeRowClick" |
| | | @search-change="lifeHandleSearch" |
| | | @search-reset="lifeHandleReset" |
| | |
| | | <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 type="primary" @click="inheritSaveClickHandler">确 定</el-button> |
| | | <el-button @click="inheritClose">取 消</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | |
| | | <!-- 导入 --> |
| | |
| | | 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: [], |
| | |
| | | }, |
| | | 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, |
| | | versionData: [],//版本规则数据 |
| | | dialogAttrSelectList: [], |
| | | searchAttrParams: {}, |
| | | dialogAttrLoading: false, |
| | |
| | | }, |
| | | created() { |
| | | this.getTreeList(); |
| | | this.getVersionList(); |
| | | this.getLifeCycle(); |
| | | }, |
| | | mounted() { |
| | | }, |
| | |
| | | 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.dialogLifeData = res.data.data; |
| | | this.dialogLifeDefalutData = res.data.data; |
| | | }); |
| | | }, |
| | | // 创建按钮 |
| | | addClickHandler() { |
| | | if (func.isEmptyObject(this.nodeRow)) { |
| | |
| | | } |
| | | this.title = 'add'; |
| | | this.form.fName = this.nodeRow.id === 'topNode' ? "" : this.nodeRow.id; |
| | | console.log(this.nodeRow); |
| | | this.form.inputRevisionFlag = JSON.parse(this.form.inputRevisionFlag); // 字符串false转换为布尔值 |
| | | this.visible = true; |
| | | }, |
| | | |
| | | // 关闭继承对话框 |
| | | inheritClose() { |
| | | this.dialogInheritVisible = false; |
| | | this.$refs.inheritTree.setCurrentKey(null); // 取消当前选中的节点 |
| | | }, |
| | | |
| | | // 继承按钮 |
| | | inheritClickHandler() { |
| | | this.dialogInheritVisible = true; |
| | | }, |
| | | |
| | | // 继承树行点击 |
| | | inheritNodeClick(row) { |
| | | this.inheritNodeRow = row; |
| | | }, |
| | | |
| | | // 继承树保存 |
| | | inheritSaveClickHandler() { |
| | | this.form.fName = this.inheritNodeRow.id; |
| | | this.dialogInheritVisible = false; |
| | | }, |
| | | |
| | | // 对话框 属性池列表增加按钮 |
| | |
| | | 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) |
| | | }); |
| | | }, |
| | | |
| | | // 生命周期行点击 |
| | |
| | | ? this.nodeRow.lifeCycleIds.split(',').map(item => ({id: item.trim()})) |
| | | : []; |
| | | 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; |
| | | console.log(this.form); |
| | | }, |
| | | |
| | | // 删除按钮 |