|
|
@@ -95,9 +95,10 @@
|
|
|
|
|
|
<el-table-column prop="status" label="状态" width="100">
|
|
|
<template #default="{ row }">
|
|
|
- <el-tag :type="row.status === 1 ? 'success' : 'danger'">
|
|
|
- {{ row.status === 1 ? '开启' : '关闭' }}
|
|
|
-</el-tag>
|
|
|
+<!-- <el-tag :type="row.status === 1 ? 'success' : 'danger'">-->
|
|
|
+<!-- {{ row.status === 1 ? '开启' : '关闭' }}-->
|
|
|
+<!--</el-tag>-->
|
|
|
+ <el-switch v-model="row.status" :active-value="1" :inactive-value="0" @change="handleStatusChange(row)" />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
|
|
|
@@ -315,7 +316,13 @@ show-word-limit
|
|
|
Delete,
|
|
|
View
|
|
|
} from '@element-plus/icons-vue'
|
|
|
- import {addInterface, deleteInterface, queryInterface, updateInterface} from "../../commom/api/interfaceInfo.js";
|
|
|
+ import {
|
|
|
+ addInterface,
|
|
|
+ deleteInterface,
|
|
|
+ onlineInterface,
|
|
|
+ queryInterface,
|
|
|
+ updateInterface
|
|
|
+ } from "../../commom/api/interfaceInfo.js";
|
|
|
|
|
|
// 响应式数据
|
|
|
const loading = ref(false)
|
|
|
@@ -621,6 +628,34 @@ show-word-limit
|
|
|
}
|
|
|
return types[method] || 'info'
|
|
|
}
|
|
|
+ const handleStatusChange = async (interfaceInfo) =>{
|
|
|
+ console.log(interfaceInfo)
|
|
|
+ if(interfaceInfo.status === 1){
|
|
|
+ //上线
|
|
|
+ onlineInterface({
|
|
|
+ id:interfaceInfo.id
|
|
|
+ }).then(res=>{
|
|
|
+ if(res.code===200){
|
|
|
+ ElMessage.success(res.msg)
|
|
|
+ }else{
|
|
|
+ interfaceInfo.status = 0
|
|
|
+ ElMessage.error(res.msg)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }else{
|
|
|
+ //下线
|
|
|
+ onlineInterface({
|
|
|
+ id:interfaceInfo.id
|
|
|
+ }).then(res=>{
|
|
|
+ if(res.code===200){
|
|
|
+ ElMessage.success(res.msg)
|
|
|
+ }else{
|
|
|
+ interfaceInfo.status = 1
|
|
|
+ ElMessage.error(res.msg)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
// 生命周期
|
|
|
onMounted(() => {
|