feat()资产授权

dev-1
王熙朝 2024-05-01 09:14:17 +08:00
parent aa4a06151a
commit c3af4a6d0c
6 changed files with 122 additions and 33 deletions

View File

@ -110,4 +110,18 @@ export function listUserMiddle2(databaseName) {
}) })
} }
export function updateMiddle(mid,statusId) {
return request({
url: '/system/accredit/updateMiddle?mid=' + mid + "&statusId=" + statusId,
method: 'post'
})
}
export function updateUserMiddle(mid,statusId) {
return request({
url: '/system/accredit/updateUserMiddle?mid=' + mid + "&statusId=" + statusId,
method: 'post'
})
}

View File

@ -35,9 +35,13 @@
<el-table-column align="center" label="创建时间" prop="createTime"></el-table-column> <el-table-column align="center" label="创建时间" prop="createTime"></el-table-column>
<el-table-column align="center" label="操作" > <el-table-column align="center" label="操作" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-tooltip :content="'value:' + scope.row.statusId"></el-tooltip>
<el-switch <el-switch
style="display: block" style="display: block"
v-model="scope.row.isAuth" v-model="scope.row.statusId"
@change="updDept(scope.row)"
active-value="0"
inactive-value="1"
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
active-text="已授权" active-text="已授权"
@ -56,11 +60,14 @@
<el-table-column align="center" label="用户邮箱" prop="email"/> <el-table-column align="center" label="用户邮箱" prop="email"/>
<el-table-column align="center" label="用户手机号" prop="phonenumber"/> <el-table-column align="center" label="用户手机号" prop="phonenumber"/>
<el-table-column align="center" label="创建时间" prop="createTime" /> <el-table-column align="center" label="创建时间" prop="createTime" />
<el-table-column align="center" label="操作" prop="createTime" > <el-table-column align="center" label="操作" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
style="display: block" style="display: block"
v-model="scope.row.isAuth" v-model="scope.row.statusId"
@change="updUser(scope.row)"
active-value= "0"
inactive-value= "1"
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
active-text="已授权" active-text="已授权"
@ -76,7 +83,7 @@
</template> </template>
<script> <script>
import { listMiddle2, listUserMiddle2 } from '@/api/system/accredit' import { listMiddle2, listUserMiddle2, updateUserMiddle, updateMiddle } from '@/api/system/accredit'
export default { export default {
props: { props: {
@ -115,6 +122,29 @@ export default {
this.init() this.init()
}, },
methods: { methods: {
updDept(row) {
if (row.statusId == 0){
updateMiddle(row.mid,1).then(res => {
this.$message.success(res.data)
})
}else {
updateMiddle(row.mid,0).then(res => {
this.$message.success(res.data)
})
}
},
updUser(row) {
if (row.statusId == 0){
updateUserMiddle(row.mid,1).then(res => {
this.$message.success(res.data)
})
}else {
updateUserMiddle(row.mid,0).then(res => {
this.$message.success(res.data)
})
}
},
init() { init() {
this.baseInfo = this.stats this.baseInfo = this.stats
// //

View File

@ -48,11 +48,14 @@
<el-table-column label="部门负责人" prop="leader" ></el-table-column> <el-table-column label="部门负责人" prop="leader" ></el-table-column>
<el-table-column label="邮箱" prop="email" ></el-table-column> <el-table-column label="邮箱" prop="email" ></el-table-column>
<el-table-column label="创建时间" prop="createTime" ></el-table-column> <el-table-column label="创建时间" prop="createTime" ></el-table-column>
<el-table-column align="center" label="操作" prop="createTime" > <el-table-column align="center" label="操作" prop="statusId" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
style="display: block" style="display: block"
v-model="scope.row.isAuth" v-model="scope.row.statusId"
@change="updDept(scope.row)"
active-value="1"
inactive-value="0"
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
active-text="已授权" active-text="已授权"
@ -71,11 +74,12 @@
<el-table-column align="center" label="用户邮箱" prop="email"/> <el-table-column align="center" label="用户邮箱" prop="email"/>
<el-table-column align="center" label="用户手机号" prop="phonenumber"/> <el-table-column align="center" label="用户手机号" prop="phonenumber"/>
<el-table-column align="center" label="创建时间" prop="createTime" /> <el-table-column align="center" label="创建时间" prop="createTime" />
<el-table-column align="center" label="操作" prop="createTime" > <el-table-column align="center" label="操作" prop="statusId" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
style="display: block" style="display: block"
v-model="scope.row.mid" v-model="scope.row.statusId"
@change="updUser(scope.row)"
active-value="1" active-value="1"
inactive-value="0" inactive-value="0"
active-color="#13ce66" active-color="#13ce66"
@ -94,7 +98,7 @@
<script> <script>
import { listMiddle, listUserMiddle } from "@/api/system/accredit"; import { listMiddle, listUserMiddle ,updateUserMiddle, updateMiddle } from "@/api/system/accredit";
export default { export default {
props: { props: {
@ -124,7 +128,6 @@ export default {
asas: "", asas: "",
dataTotal: "", dataTotal: "",
}, },
// //
deptList: [], deptList: [],
// //
@ -137,6 +140,29 @@ export default {
this.init() this.init()
}, },
methods: { methods: {
updDept(row) {
if (row.mid,row.statusId === 0){
updateMiddle(row.mid,1).then(res => {
this.$message.success(res.data)
})
}else {
updateMiddle(row.mid,0).then(res => {
this.$message.success(res.data)
})
}
},
updUser(row) {
if (row.mid,row.statusId === 0){
updateUserMiddle(row.mid,1).then(res => {
this.$message.success(res.data)
})
}else {
updateUserMiddle(row.mid,0).then(res => {
this.$message.success(res.data)
})
}
},
init(){ init(){
this.baseInfo = this.stats this.baseInfo = this.stats
// //

View File

@ -4,10 +4,10 @@
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
<span>资产模型基本信息</span> <span>资产模型基本信息</span>
</div> </div>
<el-descriptions border :column="2"> <el-descriptions v-model="table" border :column="2">
<el-descriptions-item label="表名称">sys_user</el-descriptions-item> <el-descriptions-item label="表名称">{{ table.tableName }}</el-descriptions-item>
<el-descriptions-item label="表备注">用户表</el-descriptions-item> <el-descriptions-item label="表备注">{{ table.asas }}</el-descriptions-item>
<el-descriptions-item label="数据量">12536</el-descriptions-item> <el-descriptions-item label="数据量">{{ table.dataTotal }}</el-descriptions-item>
<el-descriptions-item label="是否核心"> <el-descriptions-item label="是否核心">
<el-tag size="small"></el-tag> <el-tag size="small"></el-tag>
</el-descriptions-item> </el-descriptions-item>
@ -167,6 +167,9 @@ export default {
tableParams: { tableParams: {
type: Object type: Object
}, },
// stats: {
// type: Object
// }
}, },
watch: { watch: {
handler(val) { handler(val) {
@ -180,6 +183,11 @@ export default {
return { return {
childrenList: [], childrenList: [],
databaseName: '', databaseName: '',
table: {
tableName: 'one',
asas: '单元格',
dataTotal: '3',
},
form: { form: {
tableName: '', tableName: '',
columnLassName: '', columnLassName: '',

View File

@ -115,7 +115,7 @@
</el-col> </el-col>
<el-col :span="24" style="margin-top: 20px"> <el-col :span="24" style="margin-top: 20px">
<el-tabs v-model="activeName" type="border-card" @tab-click="checkTableName"> <el-tabs v-model="activeName" type="border-card" @tab-click="checkTableName">
<el-tab-pane v-for="table in tableList" :label="table.tableName+'('+table.tableAsName+')'" <el-tab-pane v-for="table in tableList" :label="table.tableName+'('+table.asas+')'"
:name="table.tableName"> :name="table.tableName">
<overall-asset-structure v-if="table.tableName === tableParams.tableName" :table-params="tableParams"/> <overall-asset-structure v-if="table.tableName === tableParams.tableName" :table-params="tableParams"/>
</el-tab-pane> </el-tab-pane>
@ -136,6 +136,9 @@ export default {
title: { title: {
type: String, type: String,
default: "-" default: "-"
},
overallName: {
type: Array
} }
}, },
data() { data() {
@ -144,7 +147,9 @@ export default {
dictAddName: null, dictAddName: null,
dictMap: [], dictMap: [],
tableList: [], tableList: [],
listStatus: [],
tableParams: null, tableParams: null,
stats: null,
dictData: { dictData: {
dictCode: '', dictCode: '',
dictType: '', dictType: '',
@ -165,6 +170,7 @@ export default {
checkTableName(checkTab){ checkTableName(checkTab){
console.log(checkTab) console.log(checkTab)
this.tableParams = this.tableList.findLast(item => item.tableName === checkTab.name) this.tableParams = this.tableList.findLast(item => item.tableName === checkTab.name)
this.stats = this.type.find(item => item.tableName === checkTab.name)
}, },
updData(row) { updData(row) {
selectDictData(row).then(res => { selectDictData(row).then(res => {
@ -211,19 +217,20 @@ export default {
listDictType().then(res => { listDictType().then(res => {
this.dictMap = res.data this.dictMap = res.data
}) })
let rows = [ this.listStatus =this.overallName
{ // let rows = [
tableName: "sys_user", // {
tableAsName: "用户表" // tableName: "sys_user",
}, // asas: ""
{ // },
tableName: "sys_dept", // {
tableAsName: "部门表" // tableName: "sys_dept",
}, // asas: ""
]; // },
this.tableList = rows; // ];
this.activeName = rows[0].tableName; this.tableList = this.listStatus;
this.tableParams = rows[0] this.activeName = this.listStatus[0].tableName;
this.tableParams = this.listStatus[0]
} }
}, },
// - 访this", // - 访this",

View File

@ -16,8 +16,8 @@
<el-container> <el-container>
<el-main> <el-main>
<OverallAssets v-if="showAssets == null"/> <OverallAssets v-if="showAssets == null"/>
<overall-specific-assets v-if="showAssets === 'dataSource'" :title="title" /> <overall-specific-assets v-if="showAssets === 'dataSource'" :title="title" :overall-name="overallName"/>
<overall-asset-structure v-if="showAssets === 'dataTable'" :table-params="tableParams" :stats="stats" /> <overall-asset-structure v-if="showAssets === 'dataTable'" :table-params="tableParams"/>
</el-main> </el-main>
</el-container> </el-container>
</el-container> </el-container>
@ -43,7 +43,8 @@ export default {
showAssets: null, showAssets: null,
tableParams: null, tableParams: null,
stats: null, stats: null,
title: null title: null,
overallName: []
} }
}, },
methods: { methods: {
@ -62,11 +63,14 @@ export default {
this.title = data.name + '(' + data.databaseName + '-' + data.systemName + ')' this.title = data.name + '(' + data.databaseName + '-' + data.systemName + ')'
this.showAssets = data.type; this.showAssets = data.type;
this.stats = data this.stats = data
console.log(this.stats) if (data.type === 'dataSource') {
this.overallName = data.tableLists
}
if (data.type === 'dataTable'){
this.tableParams = { this.tableParams = {
tableName: data.tableName, tableName: data.tableName,
databaseName: data.databaseName databaseName: data.databaseName
}
} }
}, },
init() { init() {