'考试管理人员管理'

This commit is contained in:
esacpe
2025-09-24 17:35:24 +08:00
parent c23bcb30df
commit 7d5a18597a
22 changed files with 420 additions and 145 deletions

View File

@ -16,22 +16,23 @@
<el-descriptions-item label="培训结束时间">{{ formData.jssj }}</el-descriptions-item>
</el-descriptions>
<el-descriptions column="2" border class="label" label-width="120px">
<el-descriptions-item label="培训日期">{{ courseInfo.pxrq }}</el-descriptions-item>
<el-descriptions-item label="培训时间">{{ courseInfo.pxsj }}</el-descriptions-item>
<el-descriptions-item label="课程名称">{{ courseInfo.kcmc }}</el-descriptions-item>
<el-descriptions-item label="组织单位">{{ courseInfo.zzdw }}</el-descriptions-item>
<el-descriptions-item label="授课教员">{{ courseInfo.skjy }}</el-descriptions-item>
<el-descriptions-item label="培训内容">{{ courseInfo.pxnr }}</el-descriptions-item>
<el-descriptions-item label="培训人员" :span="2">{{ courseInfo.ypxry }}</el-descriptions-item>
<template v-for="item in pageData.pxkcList" :key="item.id">
<el-descriptions column="2" border class="label" label-width="120px">
<el-descriptions-item label="培训日期">{{ item.pxrq }}</el-descriptions-item>
<el-descriptions-item label="培训时间">{{ item.pxsj }}</el-descriptions-item>
<el-descriptions-item label="课程名称">{{ item.kcmc }}</el-descriptions-item>
<el-descriptions-item label="组织单位">{{ item.zzdw }}</el-descriptions-item>
<el-descriptions-item label="授课教员">{{ item.skjy }}</el-descriptions-item>
<el-descriptions-item label="培训内容">{{ item.pxnr }}</el-descriptions-item>
<el-descriptions-item label="已培训人员" :span="2">{{ item.ypxry }}</el-descriptions-item>
<el-descriptions-item label="培训照片" :span="2">
<div class="imgWrapper">
<Upload v-model="courseInfo.pxzp" />
<Upload v-model="item.pxzp" />
</div>
</el-descriptions-item>
</el-descriptions>
</template>
<!-- <el-descriptions title="考试人员" column="2" border class="mt20"> -->
<div class="label">培训保安人员</div>
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
@ -41,7 +42,10 @@
<el-link type="warning" @click="addEdit('updata', row)">删除</el-link>
</template>
</MyTable>
<!-- </el-descriptions> -->
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
...pageData.pageConfiger,
total: pageData.total
}" />
</div>
</div>
@ -51,6 +55,7 @@
import { ref, computed, reactive, getCurrentInstance } from 'vue'
import { qcckPost } from "@/api/qcckApi.js";
import MyTable from '@/components/aboutTable/MyTable.vue';
import Pages from "@/components/aboutTable/Pages.vue"
import Upload from "@/components/MyComponents/Upload/index.vue"
const { proxy } = getCurrentInstance()
@ -83,7 +88,8 @@ const dialogVisible = computed({
})
const pageData = reactive({
tableData: [{}],
tableData: [],
pxkcList: [],
keyCount: 0,
tableConfiger: {
haveControls: false,
@ -113,14 +119,36 @@ const close = () => {
dialogVisible.value = false
}
// 根据项目id获取培训课程
const getPxkcList = async ({ id }) => {
const res = await qcckPost({ pxxmid: id }, `/mosty-base/baxx/pxkc/list`)
if (res) {
pageData.pxkcList = res
}
}
// 获取保安信息培训课程管理详情
const getbaInfo = async () => {
const res = await qcckPost({}, `/mosty-base/baxx/pxkc/getInfo/${id}`)
const getbaInfo = async ({ id = '' }) => {
const res = await qcckPost({ id }, `/mosty-base/baxx/pxkc/getInfo/${id}`)
if (res) {
courseInfo.value = res
}
}
// 根据项目id获取培训人员
const getList = async ({ id = "" }) => {
const res = await qcckPost({
...pageData.pageConfiger,
pxxmid: id
}, `/mosty-base/baxx/pxry/page`)
if (res) {
console.log(res);
pageData.tableData = res.records || [];
pageData.total = res.total;
}
}
const open = (row = {}, type = 'view') => {
disabled.value = false
dialogVisible.value = true
@ -128,10 +156,9 @@ const open = (row = {}, type = 'view') => {
if (type === 'view') {
title.value = '保安线下考试详情'
visible.value = true
getbaInfo()
} else if (type === 'edit') {
title.value = '保安证申请'
visible.value = false
getbaInfo(row)
getPxkcList(row)
getList(row)
}
}