feat:优化页面代码及版本升级报错处理
parent
c827a97c3b
commit
cb5ae00dc8
|
|
@ -5,7 +5,7 @@
|
|||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "run-p type-check \"build-only {@}\" --",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"build-only": "vite build",
|
||||
"type-check": "vue-tsc --build --force"
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ export function removeToken() {
|
|||
// 菜单信息
|
||||
export function getMenus() {
|
||||
let menu = sessionStorage.getItem(menuKey);
|
||||
console.info(menu);
|
||||
return menu ? JSON.parse(menu) : null;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,84 +0,0 @@
|
|||
import request from '@/utils/request'
|
||||
|
||||
export function page(params:any){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/page',
|
||||
method: 'get',
|
||||
params: params
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export function del(id:String){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/delete/' + id,
|
||||
method: 'delete',
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export function save(data:any){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/save',
|
||||
method: 'post',
|
||||
data
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export function execute(data:any){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/execute',
|
||||
method: 'post',
|
||||
data
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export function tables(params:any){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/tables',
|
||||
method: 'get',
|
||||
params: params
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export function columns(params:any){
|
||||
return new Promise((resolve, reject) => {
|
||||
request({
|
||||
url: '/lowcode/generator/columns',
|
||||
method: 'get',
|
||||
params: params
|
||||
}).then((res:any) => {
|
||||
resolve(res.data)
|
||||
}).catch((e:any) => {
|
||||
reject(e)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
|
@ -1,7 +1,15 @@
|
|||
<template>
|
||||
<router-view v-slot="{ Component }">
|
||||
<keep-alive :include="$global.visitedViews.filter(it => it.meta.keepAlive).map(it => it.path.substr(it.path.lastIndexOf('/') + 1))">
|
||||
<component :is="Component" :key="$route.path" />
|
||||
<!-- <router-view v-slot="{ Component }">-->
|
||||
<!-- <keep-alive :include="$global.visitedViews.filter(it => it.meta.keepAlive).map(it => it.path.substr(it.path.lastIndexOf('/') + 1))">-->
|
||||
<!-- <component :is="Component" :key="$route.path" />-->
|
||||
<!-- </keep-alive>-->
|
||||
<!-- </router-view>-->
|
||||
<!-- 保存include指定的组件,可保存多个-->
|
||||
<!-- <keep-alive :include="['A', 'B']">-->
|
||||
<!-- <router-view></router-view>-->
|
||||
<!-- </keep-alive>-->
|
||||
<!-- 缓存所有路由组件-->
|
||||
<keep-alive>
|
||||
<router-view></router-view>
|
||||
</keep-alive>
|
||||
</router-view>
|
||||
</template>
|
||||
|
|
@ -28,7 +28,21 @@
|
|||
],
|
||||
tableData: [],
|
||||
detailVisible: false,
|
||||
detail:{},
|
||||
detail: {
|
||||
module:'',
|
||||
status:'',
|
||||
method:'',
|
||||
takeUpTime:'',
|
||||
message:'',
|
||||
type:'',
|
||||
userName:'',
|
||||
uri:'',
|
||||
ip:'',
|
||||
createTime:'',
|
||||
reqParam:'',
|
||||
resParam:'',
|
||||
unusual:''
|
||||
},
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
|
|
@ -52,6 +66,7 @@
|
|||
state.page.size = e;
|
||||
operLogPage();
|
||||
}
|
||||
|
||||
function onCurrentChange(e) {
|
||||
state.page.current = e;
|
||||
operLogPage();
|
||||
|
|
@ -79,7 +94,8 @@
|
|||
</script>
|
||||
<template>
|
||||
<div class="operlog-container">
|
||||
<Table :data="state.tableData" :column="state.tableTitle" :operation="state.operation" :page="state.page" :loading="state.loading"
|
||||
<Table :data="state.tableData" :column="state.tableTitle" :operation="state.operation" :page="state.page"
|
||||
:loading="state.loading"
|
||||
@onSizeChange="onSizeChange" @onCurrentChange="onCurrentChange" @setCellColor="setCellColor">
|
||||
<template #column="scope">
|
||||
<el-button @click="onDetail(scope)" link style="color:var(--theme); padding:0;">详情</el-button>
|
||||
|
|
@ -87,7 +103,8 @@
|
|||
</Table>
|
||||
<el-dialog v-model="state.detailVisible" title="日志详情" :show-close="false" width="60%">
|
||||
<el-descriptions :column="3" border>
|
||||
<el-descriptions-item label-align="right" label="功能模块" :min-width="80">{{state.detail.module}}</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" label="功能模块" :min-width="80">{{ state.detail.module }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" label="操作状态">
|
||||
<el-tag v-if="state.detail.status == '1'" type="danger">异常</el-tag>
|
||||
<el-tag v-else type="success">成功</el-tag>
|
||||
|
|
@ -107,7 +124,8 @@
|
|||
<el-descriptions-item label-align="right" label="请求URL">{{ state.detail.uri }}</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" label="请求IP">{{ state.detail.ip }}</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" label="创建时间">{{ state.detail.createTime }}</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" :span="3" label="操作方法">{{state.detail.method}}</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" :span="3" label="操作方法">{{ state.detail.method }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="right" :span="3" label="请求参数">
|
||||
<div class="detail-text scroll-div">{{ state.detail.reqParam }}</div>
|
||||
</el-descriptions-item>
|
||||
|
|
@ -127,6 +145,7 @@
|
|||
max-height: 400px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.el-descriptions__label {
|
||||
width: 80px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -225,7 +225,7 @@
|
|||
</template>
|
||||
</Table>
|
||||
<el-dialog title="角色信息" v-model="form.roleVisible" :show-close="false" width="40%">
|
||||
<el-form :model="form.roleForm" ref="formRef" :rules="rules" label-width="80px" status-icon>
|
||||
<el-form :model="form.roleForm" ref="formRef" label-width="80px" status-icon>
|
||||
<el-form-item label="名称" prop="name" :rules="[{required: true,message:'请输入名称',trigger: 'blur'}]">
|
||||
<el-input v-model="form.roleForm.name" placeholder="请输入名称" style="width: 100%"/>
|
||||
</el-form-item>
|
||||
|
|
@ -258,7 +258,7 @@
|
|||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="auth.authVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="onAuthSubmit(authRef)">提交</el-button>
|
||||
<el-button type="primary" @click="onAuthSubmit()">提交</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
{
|
||||
"files": [],
|
||||
"compilerOptions": {
|
||||
"types": ["vite/client"]
|
||||
"types": ["vite/client"],
|
||||
"noImplicitAny": false
|
||||
},
|
||||
"include": [
|
||||
"src/**/*"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"extends": "@tsconfig/node20/tsconfig.json",
|
||||
"include": [
|
||||
"vite.config.*",
|
||||
"vite.config.ts",
|
||||
"vitest.config.*",
|
||||
"cypress.config.*",
|
||||
"nightwatch.conf.*",
|
||||
|
|
|
|||
Loading…
Reference in New Issue