Merge branch 'yuan'

yuan^2
yuan 2024-08-26 15:00:22 +08:00
commit c98f8abb8f
4 changed files with 298 additions and 22 deletions

View File

@ -2,8 +2,38 @@ import request from '@/utils/request'
export function getList(data) {
return request({
url: '/rule/ruleData/list',
url: '/cloud-rule/ruleData/list',
method: 'post',
data: data
})
}
export function save(data) {
return request({
url: '/cloud-rule/ruleData/add',
method: 'post',
data: data
})
}
export function update(data) {
return request({
url: `/cloud-rule/ruleData/upd/${data.ruleId}`,
method: 'put',
data: data
})
}
//获取单条
export function get(id){
return request({
url: "/cloud-rule/ruleData/"+id,
method : "GET",
})
}
//客户信息删除
export function del(ruleId){
return request({
url: `/cloud-rule/ruleData/del/${ruleId}`,
method : "DELETE",
})
}

View File

@ -150,6 +150,20 @@ export const dynamicRoutes = [
}
]
},
{
path: '/rule/versions',
component: Layout,
hidden: true,
permissions: ['rule:versions:list'],
children: [
{
path: 'index/:ruleId(\\d+)',
component: () => import('@/views/rule/versions/index'),
name: 'Rule',
meta: {title: '规则维护', activeMenu: '/rule/versions'}
}
]
},
{
path: '/tool/gen-edit',
component: Layout,

View File

@ -40,15 +40,15 @@
/>
</el-select>
</el-form-item>
<el-form-item label="规则状态" prop="status">
<el-form-item label="规则状态" prop="ruleStatus">
<el-select
v-model="queryParams.status"
v-model="queryParams.ruleStatus"
clearable
placeholder="规则状态"
style="width: 240px"
>
<el-option
v-for="dict in dict.type.sys_rule_type"
v-for="dict in dict.type.sys_rule_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -61,49 +61,167 @@
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="ruleList" @selection-change="handleSelectionChange">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
v-hasPermi="['system:role:add']"
icon="el-icon-plus"
plain
size="mini"
type="primary"
@click="handleAdd"
>新增
</el-button>
</el-col>
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- v-hasPermi="['system:role:export']"-->
<!-- icon="el-icon-download"-->
<!-- plain-->
<!-- size="mini"-->
<!-- type="warning"-->
<!-- @click="handleExport"-->
<!-- >导出-->
<!-- </el-button>-->
<!-- </el-col>-->
<right-toolbar :showSearch.sync="showSearch" @queryTable="showList"></right-toolbar>
</el-row>
<el-table :data="ruleList" @selection-change="handleSelectionChange">
<el-table-column align="center" type="selection" width="55"/>
<el-table-column label="规则编号" prop="roleId" width="120"/>
<el-table-column :show-overflow-tooltip="true" label="规则名称" prop="roleName" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="规则类型" prop="ruleType" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="规则作用域" prop="ruleRegion" width="150"/>
<el-table-column label="规则编号" prop="id" width="120"/>
<el-table-column :show-overflow-tooltip="true" label="规则名称" prop="ruleName" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="规则类型" prop="ruleType" width="150">
<template slot-scope="scope">
<el-tag v-if="scope.row.ruleType==='Z'" type="success"></el-tag>
<el-tag v-if="scope.row.ruleType==='M'" type="primary"></el-tag>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" label="规则作用域" prop="ruleRegion" width="150">
<template slot-scope="scope">
<el-tag v-if="scope.row.ruleRegion==='F'"></el-tag>
<el-tag v-if="scope.row.ruleRegion==='R'" type="info"></el-tag>
<el-tag v-if="scope.row.ruleRegion==='C'" type="warning"> </el-tag>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" label="引擎编码" prop="ruleCoding" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="激活状态" prop="ruleActivate" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="规则状态" prop="ruleStatus" width="150"/>
<el-table-column :show-overflow-tooltip="true" label="激活状态" prop="ruleActivate" width="150">
<template slot-scope="scope">
<el-tag v-if="scope.row.ruleActivate==='S'" type="success"></el-tag>
<el-tag v-if="scope.row.ruleActivate==='U'" type="danger"></el-tag>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" label="规则状态" prop="ruleStatus" width="150">
<template slot-scope="scope">
<el-tag v-if="scope.row.ruleStatus==='Y'" type="success"></el-tag>
<el-tag v-if="scope.row.ruleStatus==='N'" type="info"></el-tag>
</template>
</el-table-column>
<el-table-column align="center" class-name="small-padding fixed-width" label="操作">
<template v-if="scope.row.roleId !== 1" slot-scope="scope">
<template slot-scope="scope">
<el-button
v-hasPermi="['system:role:edit']"
v-hasPermi="['system:rule:versions']"
icon="el-icon-s-platform"
size="mini"
type="text">
<router-link :to="'/rule/versions/index/' + scope.row.id" class="link-type">
<span>规则维护</span>
</router-link>
</el-button>
<el-button
v-hasPermi="['system:rule:edit']"
icon="el-icon-edit"
size="mini"
type="text"
@click="handleUpdate(scope.row)"
@click="handleUpdate(scope.row.id)"
>修改
</el-button>
<el-button
v-hasPermi="['system:role:remove']"
v-hasPermi="['system:rule:remove']"
icon="el-icon-delete"
size="mini"
type="text"
@click="handleDelete(scope.row)"
@click="handleDelete(scope.row.id)"
>删除
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 添加或修改角色配置对话框 -->
<el-dialog :title="title" :visible.sync="open" append-to-body width="1000px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true">
<el-form-item label="规则名称" prop="ruleName" >
<el-input v-model="form.ruleName" placeholder="请输入规则名称"/>
</el-form-item>
<el-form-item label="引擎编码" prop="ruleCoding">
<el-input v-model="form.ruleCoding" placeholder="请输入引擎编码"/>
</el-form-item>
<el-form-item label="规则类型" prop="ruleType">
<el-select
v-model="form.ruleType"
clearable
placeholder="规则类型"
style="width: 193px"
>
<el-option
v-for="dict in dict.type.sys_rule_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="规则作用域" prop="ruleRegion">
<el-select
v-model="form.ruleRegion"
clearable
placeholder="规则作用域"
style="width: 193px"
>
<el-option
v-for="dict in dict.type.sys_rule_region"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="激活状态" prop="ruleActivate">
<el-radio-group v-model="form.ruleActivate" v-for="dict in dict.type.sys_rule_activate" >
<el-radio-button :label='(dict.value)' style="width: 96px">{{ dict.label }}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="规则状态" prop="ruleStatus">
<el-radio-group v-model="form.ruleStatus" v-for="dict in dict.type.sys_rule_status">
<el-radio-button :label='(dict.value)'style="width: 86px">{{ dict.label }}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="内容">
<editor v-model="form.ruleDescribe" :min-height="192"/>
</el-form-item>
<el-form-item label="备注">
<el-input v-model="form.remark" placeholder="请输入内容" type="textarea" style="width: 840px"></el-input>
</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>
//jsjsjson,
//import from ',
import { getList } from '@/api/rule/maintain'
import { getList, save, update, get, del} from '@/api/rule/maintain'
export default {
//import使"
name:"Maintain",
dicts:['sys_rule_type','sys_rule_region','sys_rule_activate'],
dicts:['sys_rule_type','sys_rule_status','sys_rule_activate','sys_rule_region'],
components: {},
props: {},
data() {
@ -121,7 +239,7 @@ export default {
ruleStatus:undefined,
},
//
loading: true,
// loading: true,
//
ids: [],
//
@ -130,6 +248,21 @@ export default {
multiple: true,
//
ruleList: [],
//
open: false,
//
title: "",
//
form: {},
//
rules: {
ruleName: [
{required: true, message: "规则名称不能为空", trigger: "blur"}
],
ruleCoding: [
{required: true, message: "引擎编码不能为空", trigger: "blur"}
],
}
};
},
// data",
@ -145,21 +278,72 @@ export default {
this.multiple = !selection.length
},
showList(){
getList().then(response => {
getList(this.queryParams).then(response => {
this.ruleList = response.data
})
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
this.showList();
},
/** 重置按钮操作 */
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
this.handleQuery();
},
//
reset() {
this.resetForm("form");
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加规则";
},
/** 修改按钮操作 */
handleUpdate(id) {
this.reset();
get(id).then(response => {
// TODO
this.form = response.data;
this.open = true;
this.title = "修改支付单客户信息";
})
},
/** 提交按钮 */
submitForm: function () {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.ruleId !== undefined) {
update(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.showList();
});
} else {
save(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.showList();
});
}
}
});
},
//
cancel() {
this.open = false;
this.reset();
},
/** 删除按钮操作 */
handleDelete(id){
del(id).then(response => {
this.$modal.msgSuccess("删除成功");
this.showList();
})
},
},
// - 访this",
created() {

View File

@ -0,0 +1,48 @@
<template>
<div>
<h1></h1>
</div>
</template>
<script>
//jsjsjson,
//import from ',
export default {
//import使"
components: {},
props: {},
data() {
//"
return {};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {},
// - 访this",
created() {
},
// - 访DOM",
mounted() {
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>