优化效果,新增节点配置

master
面包骑士 2024-08-28 08:13:19 +08:00
commit 4254193e16
6 changed files with 187 additions and 117 deletions

View File

@ -17,23 +17,23 @@ export function getEditionList(id) {
})
}
//
// // 新增规则
// export function addRule(data) {
// return request({
// url: '/rule/rule/insert',
// method: 'post',
// data: data
// })
// }
//
// // 修改规则
// export function updateRule(data) {
// return request({
// url: '/rule/rule/update',
// method: 'put',
// data: data
// })
// }
// 新增规则
export function addRule(data) {
return request({
url: '/rule/ruleEdition/insert',
method: 'post',
data: data
})
}
// 修改规则
export function updateRule(data) {
return request({
url: '/rule/ruleEdition/update',
method: 'put',
data: data
})
}
//
//
// // 删除规则

View File

@ -39,7 +39,7 @@
</el-dropdown-menu>
</el-dropdown>
<el-drawer title="通知公告" :visible.sync="drawer" direction="rtl" :size="'60%'">
<el-drawer title="通知公告" :visible.sync="drawer" direction="rtl" :size="'60%'" :modal="false">
<el-radio-group v-model="readingStatu" size="small">
<el-radio-button label="">全部</el-radio-button>
<el-radio-button label="1">已读</el-radio-button>

View File

@ -91,34 +91,35 @@ export default {
const rows = res.data.rows
for (let i = 0; i < rows.length; i++) {
const r = flowNode.methods.toJsPlumbNode(rows[i])
nodeTypeList.forEach(v => {
if (r.node.type === v.type) {
r.node.typeName = v.typeName
r.node.logImg = v.logImg
r.node.log_bg_color = v.log_bg_color
}
this.data.nodeList.push({
id: r.node.id,
type: r.node.type,
typeName: r.node.typeName,
nodeName: r.node.nodeName,
top: r.node.top,
left: r.node.left
})
this.data.nodeList.push(r.node)
if (r.line) {
r.line.forEach(v => {
let flag = true
this.data.lineList.forEach(v2 =>{
if (v2.from === v.from && v2.to === v.to) {
flag = false
}
})
if (flag){
this.data.lineList.push({
from: v.from,
to: v.to,
label: "连线名称",
id: GenNonDuplicateID(8),
Remark: ""
});
}
this.data.lineList.push({
from: v.from,
to: v.to,
label: "连线名称",
id: GenNonDuplicateID(8),
Remark: ""
});
})
}
}
this.data.nodeList.forEach(node => {
nodeTypeList.forEach(v => {
if (node.type === v.type) {
node.typeName = v.typeName
node.logImg = v.logImg
node.log_bg_color = v.log_bg_color
}
})
})
// console.log(data)
console.log(this.data)
})

View File

@ -19,7 +19,7 @@
<div class="node-anchor anchor-left" v-show="mouseEnter"></div>
<!-- 节点配置-->
<div align="center">
<el-dialog :modal="false" title="配置" :visible.sync="disposition.findFlag" width="50%">
<el-dialog :modal="false" title="配置" :visible.sync="disposition.findFlag" width="50%" >
<span>数据库:&nbsp;&nbsp;{{ disposition.formData.dbName }}</span>
<span>数据表:&nbsp;&nbsp;{{ disposition.formData.table }}</span>
<span>
@ -246,8 +246,6 @@ export default {
/** jsPlumb节点类型 --> 数据库节点类型 */
toMysqlNode(node,preLine,nextLine){
return {
id: node.authId,
nodeType: node.type,
nodeCode: node.id,
nodeName: node.nodeName,
nodePositionTop: node.top,
@ -260,7 +258,6 @@ export default {
/** 数据库节点类型 --> jsPlumb节点类型 */
toJsPlumbNode(nodeInfo){
const node = {
authId: nodeInfo.id,
id: nodeInfo.nodeCode,
type: nodeInfo.nodeType,
nodeName: nodeInfo.nodeName,

View File

@ -40,7 +40,8 @@
size="mini"
@click="handleAdd"
v-hasPermi="['rule:rule:add']"
>新增</el-button>
>新增
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@ -51,7 +52,8 @@
:disabled="single"
@click="handleUpdate"
v-hasPermi="['rule:rule:edit']"
>修改</el-button>
>修改
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@ -62,7 +64,8 @@
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['rule:rule:remove']"
>删除</el-button>
>删除
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@ -72,19 +75,20 @@
size="mini"
@click="handleExport"
v-hasPermi="['rule:rule:export']"
>导出</el-button>
>导出
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="ruleList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="主键" align="center" prop="id" />
<el-table-column label="规则名称" align="center" prop="name" />
<el-table-column label="规则类型" align="center" prop="ruleType" />
<el-table-column label="是否激活" align="center" prop="isActivate" />
<el-table-column label="规则描述" align="center" prop="ruleDesc" />
<el-table-column label="规则代码" align="center" prop="ruleCode" />
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="主键" align="center" prop="id"/>
<el-table-column label="规则名称" align="center" prop="name"/>
<el-table-column label="规则类型" align="center" prop="ruleType"/>
<el-table-column label="是否激活" align="center" prop="isActivate"/>
<el-table-column label="规则描述" align="center" prop="ruleDesc"/>
<el-table-column label="规则代码" align="center" prop="ruleCode"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
@ -93,21 +97,24 @@
icon="el-icon-edit"
@click="handleMaintain(scope.row)"
v-hasPermi="['rule:rule:remove']"
>规则维护</el-button>
>规则维护
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['rule:rule:edit']"
>修改</el-button>
>修改
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['rule:rule:remove']"
>删除</el-button>
>删除
</el-button>
</template>
</el-table-column>
</el-table>
@ -124,21 +131,28 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="规则名称" prop="name">
<el-input v-model="form.name" placeholder="请输入规则名称" />
<el-input v-model="form.name" placeholder="请输入规则名称"/>
</el-form-item>
<el-form-item label="是否激活">
<el-radio-group v-model="form.isActivate" placeholder="请输入是否激活">
<el-radio label="Y"></el-radio>
<el-radio label="N"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="是否激活">
<el-radio-group v-model="form.ruleType" placeholder="请输入规则">
<el-radio label="自定义规则"></el-radio>
<el-radio label="规则模板"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="规则描述" prop="ruleDesc">
<el-input v-model="form.ruleDesc" type="textarea" placeholder="请输入内容" />
<el-input v-model="form.ruleDesc" type="textarea" placeholder="请输入内容"/>
</el-form-item>
<el-form-item label="规则代码" prop="ruleCode">
<el-input v-model="form.ruleCode" placeholder="请输入规则代码" />
<el-input v-model="form.ruleCode" placeholder="请输入规则代码"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -150,7 +164,7 @@
</template>
<script>
import { listRule, getRule, delRule, addRule, updateRule } from "/src/api/rule/rule";
import {listRule, getRule, delRule, addRule, updateRule} from "/src/api/rule/rule";
export default {
name: "Rule",
@ -189,7 +203,7 @@ export default {
//
rules: {
isActivate: [
{ required: true, message: "是否激活;是否激活不能为空", trigger: "blur" }
{required: true, message: "是否激活;是否激活不能为空", trigger: "blur"}
],
}
};
@ -241,7 +255,7 @@ export default {
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
@ -253,8 +267,8 @@ export default {
/** 规则维护按钮操作 */
handleMaintain(row) {
this.$router.push({
path:'version',
query:{id:row.id}
path: 'version',
query: {id: row.id}
})
},
/** 修改按钮操作 */
@ -290,12 +304,13 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除规则编号为"' + ids + '"的数据项?').then(function() {
this.$modal.confirm('是否确认删除规则编号为"' + ids + '"的数据项?').then(function () {
return delRule(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
}).catch(() => {
});
},
/** 导出按钮操作 */
handleExport() {

View File

@ -32,17 +32,17 @@
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="primary"-->
<!-- plain-->
<!-- icon="el-icon-plus"-->
<!-- size="mini"-->
<!-- @click="handleAdd"-->
<!-- v-hasPermi="['rule:rule:add']"-->
<!-- >新增-->
<!-- </el-button>-->
<!-- </el-col>-->
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="primary"-->
<!-- plain-->
<!-- icon="el-icon-plus"-->
<!-- size="mini"-->
<!-- @click="handleAdd"-->
<!-- v-hasPermi="['rule:rule:add']"-->
<!-- >新增-->
<!-- </el-button>-->
<!-- </el-col>-->
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="success"-->
@ -98,13 +98,7 @@
<!-- @click="handleMaintain(scope.row)"-->
<!-- v-hasPermi="['rule:rule:remove']"-->
<!-- >规则维护</el-button>-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- @click="handleUpdate(scope.row)"-->
<!-- v-hasPermi="['rule:rule:edit']"-->
<!-- >修改</el-button>-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
@ -116,24 +110,18 @@
<!-- </el-table-column>-->
<!-- </el-table>-->
<el-descriptions class="margin-top" title="规则版本" :column="3" border>
{{ rule.name }}
<el-descriptions class="margin-top" :column="3" border>
<template slot="extra">
<el-dropdown split-button type="primary">
更多操作
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
type="text"
@click="handleAdd"
v-hasPermi="['rule:rule:add']"
>新增
</el-button>
</el-dropdown-item>
<el-dropdown-item>开启引擎</el-dropdown-item>
<el-dropdown-item>关闭引擎</el-dropdown-item>
@ -198,13 +186,10 @@
<el-row :gutter="10">
<!-- <el-empty description="暂无支付客户" v-if="customerList.length === 0"></el-empty>-->
<el-col :span="12" v-for="customer in ruleAndEditionList">
<el-card class="box-card">
<div slot="header" class="clearfix">
<div>
<el-descriptions class="margin-top" title="带边框列表" :column="3" :size="size" border>
<el-descriptions class="margin-top" title="规则引擎版本" :column="3" border>
<template slot="extra">
<el-dropdown>
@ -213,11 +198,16 @@
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>
规格详情
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(customer.id)"
v-hasPermi="['rule:rule:edit']"
>规格详情
</el-button>
</el-dropdown-item>
<el-dropdown-item disabled>双皮奶</el-dropdown-item>
<el-dropdown-item>
<el-switch
style="float: right; margin: 4px 5px 0;"
@ -314,30 +304,83 @@
<!-- 添加或修改规则对话框 -->
<el-dialog :title="title" :visible.sync="open" width="80%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="规则名称" prop="name">
<el-input v-model="form.name" placeholder="请输入规则名称"/>
<el-form-item label="版本类" prop="ruleKind">
<el-input v-model="form.ruleKind" placeholder="请输入版本类"/>
</el-form-item>
<el-form-item label="是否激活" prop="isActivate">
<el-input v-model="form.isActivate" placeholder="请输入是否激活"/>
<el-form-item label="版本名称" prop="name">
<el-input v-model="form.name" placeholder="请输入版本名称"/>
</el-form-item>
<el-form-item label="规则描述" prop="ruleDesc">
<el-input v-model="form.ruleDesc" type="textarea" placeholder="请输入内容"/>
<el-form-item label="编码" prop="ruleCoding">
<el-input v-model="form.ruleCoding" type="textarea" placeholder="请输入编码"/>
</el-form-item>
<el-form-item label="规则代码" prop="ruleCode">
<el-input v-model="form.ruleCode" placeholder="请输入规则代码"/>
<el-form-item label="是否激活" prop="ruleActivate">
<el-radio-group v-model="form.ruleActivate" placeholder="请输入是否激活">
<el-radio label="Y"></el-radio>
<el-radio label="N"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="状态" prop="status">
<el-input v-model="form.status" placeholder="请输入状态"/>
</el-form-item>
<el-form-item label="内容" prop="ruleContent">
<el-input v-model="form.ruleContent" placeholder="请输入内容"/>
</el-form-item>
<el-form-item label="版本" prop="ruleId">
<el-input v-model="form.ruleId" disabled placeholder="请输入版本"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 添加或修改规则对话框 -->
<!-- <el-dialog :title="title" :visible.sync="opens" width="80%" append-to-body>-->
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!-- <el-form-item label="版本主键" prop="id">-->
<!-- <el-input v-model="form.id" placeholder="请输入版本类"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本类" prop="ruleKind">-->
<!-- <el-input v-model="form.ruleKind" placeholder="请输入版本名称"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="版本名称" prop="name">-->
<!-- <el-input v-model="form.name" type="textarea" placeholder="请输入编码"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="编码" prop="ruleCoding">-->
<!-- <el-radio-group v-model="form.ruleCoding" placeholder="请输入是否激活">-->
<!-- <el-radio label="Y"></el-radio>-->
<!-- <el-radio label="N"></el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="是否激活" prop="ruleActivate">-->
<!-- <el-input v-model="form.ruleActivate" placeholder="请输入状态"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="状态" prop="status">-->
<!-- <el-input v-model="form.status" placeholder="请输入内容"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="内容" prop="ruleContent">-->
<!-- <el-input v-model="form.ruleContent" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="规则ID" prop="ruleId">-->
<!-- <el-input v-model="form.ruleId" disabled placeholder="请输入版本"/>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <div slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="submitForm"> </el-button>-->
<!-- <el-button @click="cancel"> </el-button>-->
<!-- </div>-->
<!-- </el-dialog>-->
</div>
</template>
<script>
import {listRule, getRule, delRule, addRule, updateRule} from "/src/api/rule/rule";
import {getEditionList} from "@/api/rule/ruleEdition";
import {getRule, delRule} from "/src/api/rule/rule";
import {getEditionList, addRule, enable, disable, updateRule} from "@/api/rule/ruleEdition";
export default {
name: "Rule",
@ -364,6 +407,7 @@ export default {
title: "",
//
open: false,
// opens: false,
//
queryParams: {
pageNum: 1,
@ -384,7 +428,15 @@ export default {
},
rule: {},
//
form: {},
form: {
ruleKind: '',
name: '',
ruleCoding: '',
ruleActivate: '',
status: '',
ruleContent: '',
ruleId: '',
},
//
rules: {
isActivate: [
@ -416,6 +468,7 @@ export default {
console.log(this.rule)
})
},
/** 客户状态更改触发 */
handleStatusChange(row) {
console.log(row)
@ -481,6 +534,7 @@ export default {
handleAdd() {
this.reset();
this.open = true;
this.form.ruleId = this.ruleAndVersion.id
this.title = "添加规则";
},
// /** */
@ -491,10 +545,10 @@ export default {
// })
// },
/** 修改按钮操作 */
handleUpdate(row) {
handleUpdate(id) {
this.reset();
const id = row.id || this.ids
getRule(id).then(response => {
// const id = row.id || this.ids
updateRule(id).then(response => {
this.form = response.data[0];
this.open = true;
this.title = "修改规则";
@ -513,8 +567,11 @@ export default {
} else {
addRule(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.form.ruleId = this.rule.id
console.log(this.form.ruleId)
this.open = false;
// this.getList();
this.findList()
});
}
}