BOOS账号管理页面调整

This commit is contained in:
雷校云
2026-02-27 10:35:52 +08:00
parent 9ff79f3d3f
commit cec71cec63
6 changed files with 189 additions and 123 deletions

View File

@@ -2,14 +2,14 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" href="/logo.png" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="校准系统后台管理系统" />
<meta name="description" content="BOOS助手" />
<meta
name="keywords"
content="vue,element-plus,typescript,vue-element-admin,vue3-element-admin"
/>
<title>校准系统后台管理系统</title>
<title>BOOS助手</title>
</head>
<body>

View File

@@ -20,6 +20,20 @@ export const ApiAccountsId = (id: string) => {
})
}
// 获取指定电脑中浏览器环境名称列表
export const ApiWorkersBrowsers = (id: string) => {
const formData = new FormData()
formData.append('worker_id', id)
return request({
url: `/api/workers/browsers`,
method: 'post',
data: formData,
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
// 绑定账号到电脑
export const ApiAccountsAdd = (data: any) => {
const formData = new FormData()

View File

@@ -0,0 +1,21 @@
import request from '@/utils/request'
/*
* 电脑管理
* */
// 获取所有电脑列表
export const ApiWorkers = () => {
return request({
url: `/api/workers`,
method: 'get'
})
}
// 获取指定电脑详情
export const ApiWorkersWorkerId = (worker_id: string) => {
return request({
url: `/api/workers/${worker_id}`,
method: 'get'
})
}

View File

@@ -2,14 +2,13 @@
<div class="logo">
<transition enter-active-class="animate__animated animate__fadeInLeft">
<router-link :key="+collapse" class="wh-full flex-center" to="/">
<span v-if="!collapse" class="title">校准后台管理系统</span>
<span v-if="!collapse" class="title">BOOS助手</span>
</router-link>
</transition>
</div>
</template>
<script lang="ts" setup>
import logo from '@/assets/logo.png'
import { defineProps } from 'vue'
defineProps({

View File

@@ -308,115 +308,115 @@ export const constantRoutes: RouteRecordRaw[] = [
}
}
]
},
// 注册平台登记
{
path: '/filingRegistration',
name: 'FilingRegistration',
component: Layout,
meta: {
title: '注册平台登记',
icon: 'setting',
permissionIdentifier: 'FilingRegistration'
},
children: [
{
path: 'registrationPlatform',
name: 'RegistrationPlatform',
component: () => import('@/views/calibration/registrationPlatform/index.vue'),
meta: {
title: '注册平台登记',
permissionIdentifier: 'FilingRegistration:RegistrationPlatform:view'
}
}
]
},
// 公告
{
path: '/notice',
name: 'Notice',
component: Layout,
meta: {
title: '公告管理',
icon: 'setting',
permissionIdentifier: 'Notice'
},
children: [
{
path: 'announcementManagement',
name: 'AnnouncementManagement',
component: () => import('@/views/calibration/announcementManagement/index.vue'),
meta: {
title: '公告管理',
permissionIdentifier: 'Notice:AnnouncementManagement:view'
}
}
]
},
// 律所标准文件
{
path: '/lawyer-file',
name: 'LawyerFile',
component: Layout,
meta: {
title: '律所标准文件',
icon: 'setting',
permissionIdentifier: 'LawyerFile'
},
children: [
{
path: 'lawFirmStandardDocuments',
name: 'LawFirmStandardDocuments',
component: () => import('@/views/calibration/lawFirmStandardDocuments/index.vue'),
meta: {
title: '律所标准文件',
permissionIdentifier: 'LawyerFile:LawFirmStandardDocuments:view'
}
}
]
},
{
path: '/lmportantSchedule',
name: 'LmportantSchedule',
component: Layout,
meta: {
title: '日程管理',
icon: 'setting',
permissionIdentifier: 'LmportantSchedule'
},
children: [
{
path: 'lmportantScheduleManagement',
name: 'LmportantScheduleManagement',
component: () => import('@/views/calibration/lmportantScheduleManagement/index.vue'),
meta: {
title: '日程管理',
permissionIdentifier: 'LmportantSchedule:LmportantScheduleManagement:view'
}
}
]
},
{
path: '/system',
name: 'System',
component: Layout,
meta: {
title: '制度管理',
icon: 'setting',
permissionIdentifier: 'System'
},
children: [
{
path: 'systemManagement',
name: 'SystemManagement',
component: () => import('@/views/calibration/systemManagement/index.vue'),
meta: {
title: '制度管理',
permissionIdentifier: 'System:SystemManagement:view'
}
}
]
}
// 注册平台登记
// {
// path: '/filingRegistration',
// name: 'FilingRegistration',
// component: Layout,
// meta: {
// title: '注册平台登记',
// icon: 'setting',
// permissionIdentifier: 'FilingRegistration'
// },
// children: [
// {
// path: 'registrationPlatform',
// name: 'RegistrationPlatform',
// component: () => import('@/views/calibration/registrationPlatform/index.vue'),
// meta: {
// title: '注册平台登记',
// permissionIdentifier: 'FilingRegistration:RegistrationPlatform:view'
// }
// }
// ]
// },
// // 公告
// {
// path: '/notice',
// name: 'Notice',
// component: Layout,
// meta: {
// title: '公告管理',
// icon: 'setting',
// permissionIdentifier: 'Notice'
// },
// children: [
// {
// path: 'announcementManagement',
// name: 'AnnouncementManagement',
// component: () => import('@/views/calibration/announcementManagement/index.vue'),
// meta: {
// title: '公告管理',
// permissionIdentifier: 'Notice:AnnouncementManagement:view'
// }
// }
// ]
// },
// // 律所标准文件
// {
// path: '/lawyer-file',
// name: 'LawyerFile',
// component: Layout,
// meta: {
// title: '律所标准文件',
// icon: 'setting',
// permissionIdentifier: 'LawyerFile'
// },
// children: [
// {
// path: 'lawFirmStandardDocuments',
// name: 'LawFirmStandardDocuments',
// component: () => import('@/views/calibration/lawFirmStandardDocuments/index.vue'),
// meta: {
// title: '律所标准文件',
// permissionIdentifier: 'LawyerFile:LawFirmStandardDocuments:view'
// }
// }
// ]
// },
// {
// path: '/lmportantSchedule',
// name: 'LmportantSchedule',
// component: Layout,
// meta: {
// title: '日程管理',
// icon: 'setting',
// permissionIdentifier: 'LmportantSchedule'
// },
// children: [
// {
// path: 'lmportantScheduleManagement',
// name: 'LmportantScheduleManagement',
// component: () => import('@/views/calibration/lmportantScheduleManagement/index.vue'),
// meta: {
// title: '日程管理',
// permissionIdentifier: 'LmportantSchedule:LmportantScheduleManagement:view'
// }
// }
// ]
// },
// {
// path: '/system',
// name: 'System',
// component: Layout,
// meta: {
// title: '制度管理',
// icon: 'setting',
// permissionIdentifier: 'System'
// },
// children: [
// {
// path: 'systemManagement',
// name: 'SystemManagement',
// component: () => import('@/views/calibration/systemManagement/index.vue'),
// meta: {
// title: '制度管理',
// permissionIdentifier: 'System:SystemManagement:view'
// }
// }
// ]
// }
]
/**

View File

@@ -7,11 +7,29 @@
label-width="auto"
label-position="top"
>
<el-form-item label="环境名称" prop="browser_name">
<el-input v-model="formData.browser_name" placeholder="请输入" />
</el-form-item>
<el-form-item label="电脑标识" prop="worker_id">
<el-input v-model="formData.worker_id" placeholder="请输入" />
<el-select
v-model="formData.worker_id"
placeholder="请选择"
@change="onApiWorkersBrowsers(formData.worker_id)"
>
<el-option
v-for="(item, index) in workerIdList"
:key="index"
:label="item.worker_name"
:value="item.worker_id"
/>
</el-select>
</el-form-item>
<el-form-item label="环境名称" prop="browser_name">
<el-select v-model="formData.browser_name" placeholder="请选择">
<el-option
v-for="(item, index) in browserNameList"
:key="index"
:label="item.name"
:value="item.name"
/>
</el-select>
</el-form-item>
</el-form>
</div>
@@ -20,6 +38,8 @@
<script lang="ts" setup>
import { ElMessage } from 'element-plus'
import { deepCloneByJSON } from '@/utils/auxiliaryFunction'
import { ApiWorkers } from '@/api/ComputerManagement'
import { ApiWorkersBrowsers } from '@/api/BoosAccountManagement'
const props = defineProps({
newData: {
@@ -34,16 +54,28 @@ const formData = reactive<any>({
browser_name: '',
worker_id: ''
})
const browserNameList = ref<any[]>([])
const workerIdList = ref<any[]>([])
const formRules = reactive<any>({
Printingpurpose: [{ required: true, message: '请选择', trigger: 'blur' }],
case_id: [{ required: true, message: '请输入', trigger: 'blur' }],
Reason: [{ required: true, message: '请输入', trigger: 'blur' }],
seal_number: [{ required: true, message: '请输入', trigger: 'blur' }],
seal_type: [{ required: true, message: '请选择', trigger: 'blur' }],
file: [{ required: true, message: '请选择', trigger: 'blur' }]
browser_name: [{ required: true, message: '请选择', trigger: 'blur' }],
worker_id: [{ required: true, message: '请选择', trigger: 'blur' }]
})
const onApiWorkers = () => {
ApiWorkers().then((res) => {
workerIdList.value = res.data
})
}
const onApiWorkersBrowsers = (id: string) => {
ApiWorkersBrowsers(id).then((res) => {
browserNameList.value = res.data
})
}
onMounted(() => {
onApiWorkers()
setFormData(props.newData)
})