Commit 83080c27 by Thews

20231218汪皖苏

1 parent a6a71674
......@@ -10,13 +10,13 @@
<div class="search_menu_item">
<span class="search_title">案例类型</span>
<el-select v-model="params.tcType" placeholder="请选择" class="search_item">
<el-option v-for="item in selectData1" :key="item.label" :label="item.label" :value="item.value"></el-option>
<el-option v-for="item in selectData1" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</div>
<div class="search_menu_item">
<span class="search_title">问题类型</span>
<el-select v-model="params.problemType" placeholder="请选择" class="search_item">
<el-option v-for="item in selectData2" :key="item.label" :label="item.label" :value="item.value"></el-option>
<el-option v-for="item in selectData2" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</div>
</div>
......@@ -32,21 +32,37 @@
</div>
</div>
<div class="search_btn">
<el-button type="primary" size="medium" icon="el-icon-document-add" @click="add">新建</el-button>
<el-button type="primary" size="medium" icon="el-icon-delete">删除</el-button>
<el-button type="primary" size="medium" icon="el-icon-document-add" @click="operate('add')">新建</el-button>
<el-button type="primary" size="medium" icon="el-icon-delete" @click="operate('delMultiple')">删除</el-button>
<el-button type="primary" size="medium" icon="el-icon-plus" @click="exportFile">导出</el-button>
</div>
<el-table :height="tableHeight" @selection-change="select_table_rows" v-loading="loading" :data="tableData" stripe border>
<el-table :height="tableHeight" @selection-change="handleSelectionChange" v-loading="loading" :data="tableData" stripe border>
<el-table-column type="selection" width="55" :selectable="selectable"></el-table-column>
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column>
<el-table-column prop="tcName" label="案例名称" align="center"></el-table-column>
<el-table-column prop="tcType" label="案例类型" align="center"></el-table-column>
<el-table-column prop="prjType" label="项目类型" align="center"></el-table-column>
<el-table-column prop="tcType" label="案例类型" align="center">
<template slot-scope="scope">
<span >{{dicObj.tcType[scope.row.tcType]}}</span>
</template>
</el-table-column>
<el-table-column prop="prjType" label="项目类型" align="center">
<template slot-scope="scope">
<span >{{dicObj.prjType[scope.row.prjType]}}</span>
</template>
</el-table-column>
<el-table-column prop="buildContent" label="建设内容" align="center"></el-table-column>
<el-table-column prop="archiDetail" label="架构详情" align="center"></el-table-column>
<el-table-column prop="problemType" label="问题类型" align="center"></el-table-column>
<el-table-column prop="problemType" label="问题类型" align="center">
<template slot-scope="scope">
<span >{{dicObj.problemType[scope.row.problemType]}}</span>
</template>
</el-table-column>
<el-table-column prop="problemLevel" label="问题等级" align="center">
<template slot-scope="scope">
<span >{{dicObj.problemLevel[scope.row.problemLevel]}}</span>
</template>
</el-table-column>
<el-table-column prop="problemContent" label="问题描述" align="center"></el-table-column>
<el-table-column prop="problemLevel" label="问题等级" align="center"></el-table-column>
<el-table-column label="操作" width="260" align="center">
<template slot-scope="scope">
<div style="display: flex;align-items: center;justify-content: center;">
......@@ -69,42 +85,45 @@
</div>
<el-dialog
title="新建案例"
:title="title"
:visible.sync="add_dialog"
:center="false"
width="60%">
<div class="add_dialog_content">
<div class="add_dialog_content">
<el-form :model="ruleForm" ref="form">
<el-form :model="formData" ref="form">
<div class="form_item_container">
<el-form-item label="案例名称:" prop="let1">
<el-input v-model="ruleForm.let1"></el-input>
<el-form-item label="案例名称:" prop="tcName">
<el-input v-model="formData.tcName"></el-input>
</el-form-item>
<el-form-item label="案例类型:" prop="let2">
<el-select v-model="ruleForm.let2" placeholder="请选择">
<el-form-item label="案例类型:" prop="tcType">
<el-select v-model="formData.tcType" placeholder="请选择">
<el-option v-for="item in selectData1" :key="item.label" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目类型:" prop="let3">
<el-select v-model="ruleForm.let3" placeholder="请选择">
<el-form-item label="项目类型:" prop="prjType">
<el-select v-model="formData.prjType" placeholder="请选择">
<el-option v-for="item in selectData3" :key="item.label" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="建设内容:" prop="let4">
<el-input v-model="ruleForm.let4"></el-input>
<el-form-item label="建设内容:" prop="buildContent">
<el-input v-model="formData.buildContent"></el-input>
</el-form-item>
<el-form-item label="问题类型:" prop="let5">
<el-select v-model="ruleForm.let5" placeholder="请选择">
<el-form-item label="问题类型:" prop="problemType">
<el-select v-model="formData.problemType" placeholder="请选择">
<el-option v-for="item in selectData2" :key="item.label" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="问题等级:" prop="let6">
<el-select v-model="ruleForm.let6" placeholder="请选择">
<el-form-item label="问题等级:" prop="problemLevel">
<el-select v-model="formData.problemLevel" placeholder="请选择">
<el-option v-for="item in selectData4" :key="item.label" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item class="cross1" label="政策描述:" prop="let7">
<el-input type="textarea" v-model="ruleForm.let7" maxlength="200" show-word-limit></el-input>
<el-form-item class="cross1" label="架构详情:" prop="archiDetail">
<el-input type="textarea" v-model="formData.archiDetail" maxlength="200" show-word-limit></el-input>
</el-form-item>
<el-form-item class="cross1" label="问题描述:" prop="problemContent">
<el-input type="textarea" v-model="formData.problemContent" maxlength="200" show-word-limit></el-input>
</el-form-item>
</div>
</el-form>
......@@ -138,26 +157,60 @@ export default {
},
data() {
return {
ruleForm: {
let1: '',
let2: '',
let3: '',
let4: '',
let5: '',
let6: '',
let7: '',
},
tableData: [],
add_dialog: false,
query_item1: null,
query_item3: null,
query_item4: null,
title: "",
loading: false,
selectTable: [],
selectData1: [],
selectData2: [],
selectData3: [],
selectData4: [],
selectList: [
],
selectData1: [
{
label: "移动应用典型案例",
value: 1,
},
{
label: "数据模型典型案例",
value: 2,
},
{
label: "数据中台典型案例",
value: 3,
},
],
selectData2: [
{
label: "一致性",
value: 1,
},
{
label: "架构遵从",
value: 2,
},
{
label: "重复风险",
value: 3,
},
],
selectData3: [
{
label: "暂时未例举",
value: 1,
},
],
selectData4: [
{
label: "一级",
value: 1,
},
{
label: "二级",
value: 2,
},
{
label: "三级",
value: 3,
},
],
params: {
current: 1,
pageSize: 10,
......@@ -171,7 +224,27 @@ export default {
size: 10,
total: 0, //总条数
},
tableHeight: null
formData: {
tcName: '',
tcType: '',
prjType: '',
buildContent: '',
problemType: '',
problemLevel: '',
problemContent: '',
archiDetail: "",
},
tableHeight: null,
dicObj: {
tcType: {
// 1: "在库",
// 2: "出库",
// 3: "出库",
},
prjType: {},
problemType: {},
problemLevel: {},
},
};
},
mounted(){
......@@ -180,10 +253,23 @@ export default {
})
this.set_table_height();
this.get_an_li_lei_xing_select();
this.get_wen_ti_lei_xing_select();
this.get_xiang_mu_lei_xing_select();
this.get_wen_ti_deng_ji_select();
this.selectData1.forEach(item => {
this.dicObj.tcType[item.value] = item.label;
}),
this.selectData2.forEach(item => {
this.dicObj.problemType[item.value] = item.label;
}),
this.selectData3.forEach(item => {
this.dicObj.prjType[item.value] = item.label;
}),
this.selectData4.forEach(item => {
this.dicObj.problemLevel[item.value] = item.label;
}),
// this.get_an_li_lei_xing_select();
// this.get_wen_ti_lei_xing_select();
// this.get_xiang_mu_lei_xing_select();
// this.get_wen_ti_deng_ji_select();
// 初始化查询列表
this.getList();
......@@ -215,18 +301,17 @@ export default {
this.openType = type;
if (type == "add") {
this.add_dialog = true;
this.title = "新建专家人才库";
this.title = "新建案例";
this.resetForm();
}else if (type == "edit") {
this.add_dialog = true;
this.title = "编辑专家人才库";
this.title = "编辑案例";
this.formData = item;
}else if (type == "create") {
this.formData.state = 2;
this.formData.icon = $(`.src${this.formData.iconId}`)[0].src;
if (this.formData.eleRelaId) {
if (this.formData.ktcId) {
// 编辑保存
getJGYSGLUpdate(this.formData).then(res => {
getTypicalExampleUpdate(this.formData).then(res => {
console.log(this.formData,res);
if (res.code == 200) {
this.$message.success("保存成功");
this.add_dialog = false;
......@@ -238,7 +323,7 @@ export default {
});
}else{
// 新建保存
getJGYSGLAdd(this.formData).then(res => {
getTypicalExampleAdd(this.formData).then(res => {
if (res.code == 200) {
this.$message.success("保存成功");
this.add_dialog = false;
......@@ -251,15 +336,15 @@ export default {
}
}else if (type == "del") {
// 删除
this.formData = item;
this.formData.delFlag = 1;
this.$confirm("确认删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
getETPManageUpdate(this.formData).then(res => {
console.log(res);
let params = {
ids: [item.ktcId],
};
getTypicalExampleDel(params).then(res => {
if (res.code == 200) {
this.$message.success("删除成功");
this.getList();
......@@ -269,6 +354,46 @@ export default {
});
}).catch(() => {
});
}else if (type == "delMultiple") {
if (this.selectList.length <= 0) {
this.$message.error("请选择一项进行删除");
return;
}
let params = {
ids: [],
};
this.selectList.map(item => {
params.ids.push(item.ktcId)
})
this.$confirm("确认批量删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
getJGYSGLUpdateBatch(params).then(res => {
if (res.code == 200) {
this.$message.success("批量删除成功");
this.getList();
}else{
this.$message.error(res.msg);
}
});
}).catch(() => {
});
}
},
// 新建清空表单
resetForm(){
this.formData = {
tcName: '',
tcType: '',
prjType: '',
buildContent: '',
problemType: '',
problemLevel: '',
problemContent: '',
archiDetail: "",
}
},
exportFile() {//导出
......@@ -283,7 +408,6 @@ export default {
let url = URL.createObjectURL(blob);
let link = document.createElement('a');
link.href = url;
// link.download = '文件.xlsx';
document.body.appendChild(link);
link.click();
})
......@@ -291,7 +415,7 @@ export default {
get_an_li_lei_xing_select() {//案例类型下拉
const params = {
key: "case_type"
key: "kl_case_type"
}
getDianXingAnLiSelectData(params).then(res => {
if(res.code == 200) {
......@@ -301,7 +425,7 @@ export default {
},
get_wen_ti_lei_xing_select() {//问题类型下拉
const params = {
key: "question_type"
key: "kl_question_type"
}
getDianXingAnLiSelectData(params).then(res => {
if(res.code == 200) {
......@@ -311,7 +435,7 @@ export default {
},
get_xiang_mu_lei_xing_select() {//项目类型下拉
const params = {
key: "project_type"
key: "kl_project_type"
}
getDianXingAnLiSelectData(params).then(res => {
if(res.code == 200) {
......@@ -321,7 +445,7 @@ export default {
},
get_wen_ti_deng_ji_select() {//问题等级下拉
const params = {
key: "question_level"
key: "kl_question_level"
}
getDianXingAnLiSelectData(params).then(res => {
if(res.code == 200) {
......@@ -337,18 +461,15 @@ export default {
this.tableHeight = table_container_height - search_menu_height - search_btn_height - 90 + 'px';
},
selectable(row) {//表格勾选框禁用
if(row.state == 1) {
return false; // 禁用
} else {
return true; //不禁用
}
},
select_table_rows(data){//表格的勾选
this.selectTable = data;
// if(row.state == 1) {
// return false; // 禁用
// } else {
// return true; //不禁用
// }
},
add() {//新建按钮
this.add_dialog = true;
// 表格多选
handleSelectionChange(e) {
this.selectList = e;
},
// 每页条数改变
handleSizeChange(val) {
......
......@@ -6,7 +6,9 @@ module.exports = defineConfig({
devServer: {
proxy: {
'/api': {
target: 'http://43.143.211.42:7003',
// target: 'http://43.143.211.42:7003',
target: 'http://43.143.211.42:7004',
// target: 'http://43.143.211.42:7005',
changeOrigin: true,
// secure: false,
pathRewrite: { '^/api': '' },
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!