feat() 规则维护页面,测试下拉列表

chao
chao 2024-05-08 18:25:11 +08:00
parent d52bc7542f
commit 0207d7766c
2 changed files with 86 additions and 52 deletions

View File

@ -47,7 +47,7 @@ export default {
}, },
scopeList: [ scopeList: [
{ type: "任务", value: "taskContext", "code": { type: "任务", value: "taskContext", "code":
"package com.etl.scope;\n" + "package com.etl.data.rule.scope;\n" +
"\n" + "\n" +
"/**\n" + "/**\n" +
" * @Author: Chao\n" + " * @Author: Chao\n" +
@ -62,7 +62,7 @@ export default {
"}\n" "}\n"
}, },
{ type: "资产集", value: "recordContext", "code": { type: "资产集", value: "recordContext", "code":
"package com.etl.scope;\n" + "package com.etl.data.rule.scope;\n" +
"\n" + "\n" +
"/**\n" + "/**\n" +
" * @Author: Chao\n" + " * @Author: Chao\n" +
@ -78,7 +78,7 @@ export default {
" }\n" + " }\n" +
"}\n" }, "}\n" },
{ type: "资产记录", value: "dataSetContext", "code": { type: "资产记录", value: "dataSetContext", "code":
"package com.etl.scope;\n" + "package com.etl.data.rule.scope;\n" +
"\n" + "\n" +
"/**\n" + "/**\n" +
" * @Author: Chao\n" + " * @Author: Chao\n" +
@ -94,7 +94,7 @@ export default {
" }\n" + " }\n" +
"}\n" }, "}\n" },
{ type: "资产模型", value: "dataModelContext", "code": { type: "资产模型", value: "dataModelContext", "code":
"package com.etl.scope;\n" + "package com.etl.data.rule.scope;\n" +
"\n" + "\n" +
"/**\n" + "/**\n" +
" * @Author: Chao\n" + " * @Author: Chao\n" +

View File

@ -66,7 +66,10 @@
</el-dropdown> </el-dropdown>
</div> </div>
<el-descriptions class="margin-top" :column="2" border> <el-descriptions class="margin-top" :column="2" border>
<el-descriptions-item label="版本类" :span="2"> {{ ruleEngineVersion.versionClass }}</el-descriptions-item> <el-descriptions-item label="版本类" :span="2"> {{
ruleEngineVersion.versionClass
}}
</el-descriptions-item>
<el-descriptions-item label="版本名称"> {{ ruleEngineVersion.versionName }}</el-descriptions-item> <el-descriptions-item label="版本名称"> {{ ruleEngineVersion.versionName }}</el-descriptions-item>
<el-descriptions-item label="版本CODE"> {{ ruleEngineVersion.versionCode }}</el-descriptions-item> <el-descriptions-item label="版本CODE"> {{ ruleEngineVersion.versionCode }}</el-descriptions-item>
<el-descriptions-item label="是否激活"> <el-descriptions-item label="是否激活">
@ -89,7 +92,8 @@
<el-card class="box-card"> <el-card class="box-card">
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
<span>基本信息</span> <span>基本信息</span>
<el-button style="float: right; padding: 3px 0" type="text" @click="genEngineVersion"></el-button> <el-button style="float: right; padding: 3px 0" type="text" @click="genEngineVersion">
</el-button>
</div> </div>
<el-form :label-position="engineVersionForm" label-width="80px" :model="engineVersionForm"> <el-form :label-position="engineVersionForm" label-width="80px" :model="engineVersionForm">
<el-row> <el-row>
@ -176,19 +180,25 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-descriptions v-if="ruleEngineVersionInfoAndTest != null" class="margin-top" :column="2" border> <el-descriptions v-if="ruleEngineVersionInfoAndTest != null" class="margin-top" :column="2" border>
<el-descriptions-item label="版本类" :span="2"> {{ ruleEngineVersionInfoAndTest.versionCode }} <el-descriptions-item label="版本类" :span="2"> {{ ruleEngineVersionInfoAndTest.versionClass }}
</el-descriptions-item>
<el-descriptions-item label="版本名称"> {{
ruleEngineVersionInfoAndTest.versionName
}}
</el-descriptions-item>
<el-descriptions-item label="版本CODE"> {{
ruleEngineVersionInfoAndTest.versionCode
}}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="版本名称"> {{ ruleEngineVersionInfoAndTest.name }}</el-descriptions-item>
<el-descriptions-item label="版本CODE"> {{ ruleEngineVersionInfoAndTest.code }}</el-descriptions-item>
<el-descriptions-item label="是否激活"> <el-descriptions-item label="是否激活">
<dict-tag :options="dict.type.rule_engine_activate_status" <dict-tag :options="dict.type.activated_or_not"
:value="ruleEngineVersionInfoAndTest.isActivate"/> :value="ruleEngineVersionInfoAndTest.activatedOrNot"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="版本状态"> <el-descriptions-item label="版本状态">
<dict-tag :options="dict.type.rule_engine_version_status" :value="ruleEngineVersionInfoAndTest.status"/> <dict-tag :options="dict.type.version_type" :value="ruleEngineVersionInfoAndTest.versionType"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="是否测试"> <el-descriptions-item label="是否测试">
<dict-tag :options="dict.type.rule_engine_activate_is_test" :value="ruleEngineVersionInfoAndTest.isTest"/> <dict-tag :options="dict.type.yes_no_test" :value="ruleEngineVersionInfoAndTest.yesNoTest"/>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</el-col> </el-col>
@ -199,7 +209,7 @@
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<encoding style="margin-top: 20px" v-model="ruleEngineVersionInfoAndTest.codeIng" <encoding style="margin-top: 20px" v-model="ruleEngineVersionInfoAndTest.codeText"
:read-only="true"></encoding> :read-only="true"></encoding>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -208,11 +218,11 @@
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
<span>选择数据接入</span> <span>选择数据接入</span>
</div> </div>
<el-select v-model="assetStructure" style="width: 100%;"> <el-select v-model="assetStructure" style="width: 100%;" @change="changeAssetStructure">
<el-option v-for="_assetStructure in assetStructureList" <el-option v-for="_assetStructure in assetStructureList"
:key="_assetStructure.name" :key="_assetStructure.id"
:value="_assetStructure.name" :value="_assetStructure.id"
:label="_assetStructure.name+'('+_assetStructure.systemName+')'" :label="_assetStructure.dataSourceName+'('+_assetStructure.dataSourceSystemName+')'"
></el-option> ></el-option>
</el-select> </el-select>
</el-card> </el-card>
@ -224,9 +234,9 @@
</div> </div>
<el-select v-model="assets" style="width: 100%;"> <el-select v-model="assets" style="width: 100%;">
<el-option v-for="_assets in assetsList" <el-option v-for="_assets in assetsList"
:key="_assets.name" :key="_assets.id"
:value="_assets.name" :value="_assets.id"
:label="_assets.name+'('+_assets.as+')'" :label="_assets.tableName+'('+_assets.tableNameAnnotation+')'"
></el-option> ></el-option>
</el-select> </el-select>
</el-card> </el-card>
@ -260,11 +270,12 @@
import Encoding from "@/components/Encoding/index.vue"; import Encoding from "@/components/Encoding/index.vue";
import {getEngineAndEngineVersion, updateEngineActivatedOrNot, updateEngineStatus} from "@/api/data/engine"; import {getEngineAndEngineVersion, updateEngineActivatedOrNot, updateEngineStatus} from "@/api/data/engine";
import {addEngineVersion, updateEngine} from "@/api/data/engineVersion"; import {addEngineVersion, updateEngine} from "@/api/data/engineVersion";
import {listAssetStructure, selectAssetSouructureTableList} from "@/api/data/structure";
export default { export default {
name: "EngineVersion", name: "EngineVersion",
components: {Encoding}, components: {Encoding},
dicts: ['activated_or_not', 'status', 'scope', 'type', 'version_type'], dicts: ['activated_or_not', 'status', 'scope', 'type', 'version_type', 'yes_no_test'],
data() { data() {
return { return {
ruleEngineId: this.$route.query.id, ruleEngineId: this.$route.query.id,
@ -282,32 +293,7 @@ export default {
// //
ruleEngineVersionInfoAndTest: {}, ruleEngineVersionInfoAndTest: {},
// //
assetStructureList: [ assetStructureList: [],
{
name: "测试1",
systemName: "云计算系统",
databaseName: "yunjisuan",
type: "dataSource"
},
{
name: "测试2",
systemName: "网站系统",
databaseName: "wangzhan",
type: "dataSource"
},
{
name: "测试3",
systemName: "物联网系统",
databaseName: "wulianwang",
type: "dataSource"
},
{
name: "测试4",
systemName: "传媒系统",
databaseName: "chuanmei",
type: "dataSource"
},
],
// //
assetStructure: null, assetStructure: null,
// //
@ -414,14 +400,46 @@ export default {
price: "653.69", price: "653.69",
create_time: "2024-5-7 16:37:16", create_time: "2024-5-7 16:37:16",
}, },
testResult: "" testResult: "",
//
assetStructureDataCount: {
dataCount: null,
assetStructureTableCount: null,
assetStructureTableDataCount: null,
},
//
structureTableDataCount: {
tableCount: null,
tableDataCount: null,
childrenList: [],
},
} }
}, },
created() { created() {
this.initRuleEngine(); this.initRuleEngine();
}, },
methods: { methods: {
changeAssetStructure(row) {
this.assets = null;
this.assetsList = [];
selectAssetSouructureTableList(row).then((response) => {
// API
// console.log(response);
// API data this.childrenList
this.assetsList = response.data.tableDetailsRespList;
// this.childrenList type "dataTable"
this.assetsList.forEach((item) => {
item.type = "dataTable";
});
this.structureTableDataCount.tableCount = response.data.tableCount
this.structureTableDataCount.tableDataCount = response.data.tableDataCount
this.structureTableDataCount.childrenList = this.childrenList
console.log("aaaaaaaaa")
console.log(this.assetsList)
})
},
saveCoding() { saveCoding() {
updateEngine(this.ruleEngineVersionInfoAndTest).then(response => { updateEngine(this.ruleEngineVersionInfoAndTest).then(response => {
this.$message.success('编码保存成功'); this.$message.success('编码保存成功');
@ -457,6 +475,7 @@ export default {
case "test":// case "test"://
this.ruleEngineVersionTestStatus = true; this.ruleEngineVersionTestStatus = true;
this.ruleEngineVersionInfoAndTest = command.ruleEngineVersion; this.ruleEngineVersionInfoAndTest = command.ruleEngineVersion;
this.getAssetStructureList()
break; break;
case "status":// case "status"://
command.ruleEngineVersion.isActivate = 'no-activate' === command.ruleEngineVersion.isActivate ? 'activated' : 'no-activate' command.ruleEngineVersion.isActivate = 'no-activate' === command.ruleEngineVersion.isActivate ? 'activated' : 'no-activate'
@ -468,6 +487,21 @@ export default {
console.log(command.event); console.log(command.event);
console.log(command.ruleEngineVersion); console.log(command.ruleEngineVersion);
}, },
getAssetStructureList() {
listAssetStructure().then(response => {
this.assetStructureList = response.data.assetStructureList
this.assetStructureList.forEach(
item => {
item.type = "dataSource"
}
)
//
this.assetStructureDataCount.dataCount = this.assetStructureList.length
this.assetStructureDataCount.assetStructureTableCount = response.data.assetStructureTableCount
this.assetStructureDataCount.assetStructureTableDataCount = response.data.assetStructureTableDataCount
})
},
// //
genEngineVersion() { genEngineVersion() {
if (this.engineVersionForm.versionName == null || this.engineVersionForm.versionName === "") { if (this.engineVersionForm.versionName == null || this.engineVersionForm.versionName === "") {