master
Qin Dong Ming 2024-08-28 20:34:38 +08:00
parent b515b8e8bf
commit b0abc7bcb3
1 changed files with 222 additions and 60 deletions

View File

@ -1,90 +1,252 @@
<template>
<div>
<el-descriptions class="margin-top" :column="2" border :title="maintenance.name">
<el-descriptions-item>
<el-button type="primary" @click="handleInsert"></el-button>
<template slot="label">
<i class="el-icon-user"></i>
操作按钮
</template>
<el-button type="danger" v-show="maintenance.status=='1'" @click="updStatus(ruleAndVersion.status,ruleAndVersion.id)"></el-button>
<el-button type="danger" v-show="maintenance.status=='0'" @click="updStatus(ruleAndVersion.status,ruleAndVersion.id)"></el-button>
<el-button type="warning" v-show="maintenance.open=='N' " @click="updOpen(ruleAndVersion.open,ruleAndVersion.id)"></el-button>
<el-button type="warning" v-show="maintenance.open=='Y'" @click="updOpen(ruleAndVersion.open,ruleAndVersion.id)"></el-button>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本名称
</template>
{{ maintenance.name }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本编码
</template>
{{ maintenance.code}}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
规则作用域
</template>
<dict-tag :options="maintenance.type.status" :value="maintenance.status"/>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
状态
</template>
<dict-tag :options="maintenance.type.rule_engine_activate_status" :value="maintenance.status"/>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
激活状态
</template>
<dict-tag :options="maintenance.type.rule_engine_activate_status" :value="maintenance.open"/>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本描述
</template>
<editor v-model="maintenance.isActivate" :readOnly="true" :min-height="50"/>
</el-descriptions-item>
</el-descriptions>
<el-empty description="暂无规则引擎版本" v-if="maintenance.engineMaintenanceList.length==0"></el-empty>
<el-row :gutter="10">
<el-col :span="8" v-for="customer in scopeList" v-if="scopeList.length !== 0">
<el-col :span="8" v-for="version in maintenance.engineMaintenanceList">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span style="font-size: 18px;font-weight: 900">{{ customer.name }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.versionCode }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.isActivate }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.status }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.testStatus }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.ruleContent }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.engineMaintenanceId }}</span>
<span style="font-size: 18px;font-weight: 900">{{ customer.description }}</span>
</div>
<div>
<el-descriptions class="margin-top" :column="1" :size="size" border>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>版本名称</template>
{{ customer.name }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>版本编码</template>
{{ customer.versionClass }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>是否激活</template>
{{ customer.versionCode }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>版本状态</template>
{{ customer.isActivate }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>版本测试状态</template>
{{ customer.status }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>规则内容</template>
{{ customer.testStatus }}
</el-descriptions-item><el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>引擎维护编号</template>
{{ customer.ruleContent }}
<el-descriptions class="margin-top" title="带边框列表" :column="3" :size="size" border>
<template slot="extra">
<el-button type="primary" size="small">操作</el-button>
</template>
<el-descriptions-item>
<template el-slot="label">
<i class="el-icon-user"></i>
名称
</template>
{{ version.name }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"><i class="el-icon-user"></i>描述</template>
{{ customer.engineMaintenanceId }}
</el-descriptions-item>
</el-descriptions>
<el-divider content-position="left">规则引擎版本</el-divider>
</div>
<br>
<el-descriptions-item>
<template el-slot="label">
<i class="el-icon-mobile-phone"></i>
类型
</template>
{{ version.type }}
</el-descriptions-item>
<br>
<el-descriptions-item>
<template el-slot="label">
<i class="el-icon-location-outline"></i>
作用域
</template>
{{ version.scope }}
</el-descriptions-item>
<br>
<el-descriptions-item>
<template el-slot="label">
<i class="el-icon-office-building"></i>
是否激活
</template>
{{ version.isActivate }}
</el-descriptions-item>
<br>
<el-descriptions-item>
<template el-slot="label">
<i class="el-icon-office-building"></i>
状态
</template>
{{ version.status }}
</el-descriptions-item>
<br>
</el-descriptions>
</el-card>
</el-col>
</el-row>
<el-dialog
:title="title"
:visible.sync="open"
width="80%">
<el-form ref="form" :model="form" :rules="rules" label-width="80px" class="demo-form-inline">
<el-form-item label="版本名称" prop="versionName">
<el-input v-model="form.name" placeholder="请输入引擎名称" style="width: 40%" />
</el-form-item>
<el-form-item label="版本类型" prop="versionCode">
<el-input v-model="form.type" placeholder="请输入版本编码" style="width: 40%" />
</el-form-item>
<el-form-item label="作用域" prop="versionDesc">
<editor v-model="form.scope" :min-height="192"/>
</el-form-item>
<el-form-item label="是否激活" prop="versionDesc">
<editor v-model="form.isActivate" :min-height="192"/>
</el-form-item>
<el-form-item label="状态" prop="versionDesc">
<editor v-model="form.status" :min-height="192"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入内容" type="textarea"/>
</el-form-item>
</el-form>
<el-button type="primary" @click="generateEngine(form.versionName,form.versionCode)"></el-button>
<div class="code-edit">
<codemirror ref="codeMirror" v-model="form.versionClazz" :value="form.versionClazz" :options="cmOptions" />
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="cancel"> </el-button>
<el-button type="primary" @click="submitForm"> </el-button>
</span>
</el-dialog>
<el-drawer
:title="title"
:visible.sync="maintenance"
size="60%"
:direction="direction"
:before-close="handleClose">
<el-descriptions class="margin-top" :column="1" border>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本名称
</template>
{{ maintenance.name }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本编码
</template>
{{ maintenance.type}}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
状态
</template>
<dict-tag :options="dict.type.rule_engine_activate_status" :value="maintenance.status"/>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
激活状态
</template>
<dict-tag :options="dict.type.rule_engine_activate_status" :value="maintenance.open"/>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
版本描述
</template>
<editor v-model="maintenance.status" :readOnly="true" :min-height="50" aria-readonly="true" />
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
代码操作
</template>
<codemirror ref="codeMirror" :value="maintenance.isActivate" :options="cmOptions" class="code" v-model="maintenance.scope">
</codemirror>
</el-descriptions-item>
</el-descriptions>
</el-drawer>
</div>
</template>
<script>
import {findById, forbiddenEngine, onEngine} from "@/api/engine/engine";
import {insert} from "@/api/version/version";
export default {
dicts: ['rule_engine_activate_status', 'rule_engine_type', 'sys_normal_disable', 'rule_engine_level'],
//import使"
components: {},
props: {},
data() {
//"
return {
scopeList: [],
maintenance:{}
direction: 'rtl',
maintenance:{
engineMaintenanceList: [],
},
title:"",
open:false,
handleClose:false,
form:{
}
}
},
methods: {
handleInsert(){
this.open = true
insert(this.maintenance).then(res =>{
this.$modal.msgSuccess("新增成功")
})
},
List(){
findById(this.maintenance.id).then(res =>{
this.scopeList = res.data;
console.log(this.scopeList)
this.maintenance = res.data;
console.log(this.maintenance)
console.log(this.maintenance.engineMaintenanceList)
})
},
handleStatusChange(row){