This commit is contained in:
chenhaodong
2026-06-18 00:03:29 +08:00
parent 51d8827315
commit 109204734a
9 changed files with 65 additions and 762 deletions
+5
View File
@@ -1,3 +1,8 @@
<!--
@Description 描述:
@Author D吕贺034244311
@Date 20260615
-->
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
+5
View File
@@ -1,3 +1,8 @@
<!--
@Description 描述:
@Author D吕贺034244311
@Date 20260615
-->
import { post } from '@/utils/request' import { post } from '@/utils/request'
export function saveData(data) { export function saveData(data) {
-49
View File
@@ -1,49 +0,0 @@
import { post } from '@/utils/request'
// 更新或者保存数据
export function updateData(data) {
return post('/lsjqcxx/lsj-qcgl/save', data)
}
// 更新或者保存数据
export function saveData(data) {
return post('/lsjqcxx/lsj-qcgl/save', data)
}
// 借出申请
export function jcsqData(data) {
return post('/lsjqcxx/lsj-qcgl/jcsq', data)
}
// 器材返还
export function jcfhData(data) {
return post('/lsjqcxx/lsj-qcgl/jcfh', data)
}
// 器材报修
export function jcbxData(data) {
return post('/lsjqcxx/lsj-qcgl/jcbx', data)
}
// 器材报修审核
export function jcbxshData(data) {
return post('/lsjqcxx/lsj-qcgl/jcbxsh', data)
}
// 器材验收确认
export function jcqsqrData(data) {
return post('/lsjqcxx/lsj-qcgl/jcysqr', data)
}
// 器材报废
export function jcbfData(data) {
return post('/lsjqcxx/lsj-qcgl/jcbf', data)
}
// 删除数据
export function deleteData(data) {
return post('/lsjqcxx/lsj-qcgl/delete', data)
}
// 查询所有数据
export function userList(){
return post('/lsjqcxx/lsj-qcgl/queryAll', null)
}
// 分页查询
export function pageList(data){
return post('/lsjqcxx/lsj-qcgl/paging', data)
}
-26
View File
@@ -1,26 +0,0 @@
import { post } from '@/utils/request'
// 更新或者保存数据
export function updateData(data) {
return post('/lsjqcxx/lsj-qcxx/save', data)
}
// 更新或者保存数据
export function saveData(data) {
return post('/lsjqcxx/lsj-qcxx/save', data)
}
// 删除数据
export function deleteData(data) {
return post('/lsjqcxx/lsj-qcxx/delete', data)
}
// 查询所有数据
export function userList(){
return post('/lsjqcxx/lsj-qcxx/queryAll', null)
}
// 分页查询
export function pageList(data){
return post('/lsjqcxx/lsj-qcxx/paging', data)
}
-28
View File
@@ -1,28 +0,0 @@
import { post } from '@/utils/request'
export function pagingTree(data) {
return post('/exam/api/sys/depart/paging', data)
}
export function fetchTree(data) {
return post('/exam/api/sys/depart/tree', data)
}
export function fetchDetail(id) {
const data = { id: id }
return post('/exam/api/sys/depart/detail', data)
}
export function deleteData(ids) {
const data = { ids: ids }
return post('/exam/api/sys/depart/delete', data)
}
export function saveData(data) {
return post('/exam/api/sys/depart/save', data)
}
export function sortData(id, sort) {
const data = { id: id, sort: sort }
return post('/exam/api/sys/depart/sort', data)
}
-18
View File
@@ -1,18 +0,0 @@
import { post } from '@/utils/request'
// 获取个人去向信息
export function queryData() {
return post('/quxiang/quxiang/queryData', {})
}
// 获取市级list
export function getSsList(data) {
return post('api/dicywzdControl/dicywzd/getSsList', data)
}
// 获取区级list
export function getSqList(data) {
return post('api/dicywzdControl/dicywzd/getSqList', data)
}
export function saveData(data) {
return post('/quxiang/quxiang/saveData', data)
}
-344
View File
@@ -1,344 +0,0 @@
<!-- 器材报修验收-->
<!-- 库管员业务管理页面 这里操作报修验收 验收后设置状态为验收完成--><!-- 管理员器材报修审核-->
<template>
<div>
<data-table
ref="pagingTable"
:options="options"
:list-query="listQuery"
@multi-actions="handleMultiAction"
>
<template slot="filter-content">
<el-input v-model="listQuery.params.id" style="width: 200px" placeholder="搜索学生编码" class="filter-item"/>
<el-input v-model="listQuery.params.xm" style="width: 200px" placeholder="搜索学生姓名" class="filter-item"/>
<el-select v-model="listQuery.params.nj" style="width: 200px" placeholder="搜索年级" class="filter-item">
<el-option
v-for="item in njDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="listQuery.params.yuanxi" style="width: 200px" placeholder="搜索学院" class="filter-item" @change="changeXy">
<el-option
v-for="item in yxDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="listQuery.params.zhuanye" style="width: 200px" placeholder="搜索专业" class="filter-item" @change="changgeZy">
<el-option
v-for="item in selectZyData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="listQuery.params.banji" style="width: 200px" placeholder="搜索班级" class="filter-item" >
<el-option
v-for="item in selectBjData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
<!-- <el-input v-model="listQuery.params.qctype" style="width: 200px" placeholder="搜索器材种类" class="filter-item"/>-->
<!-- <el-button class="filter-item" type="primary" icon="el-icon-plus" @click="handleAdd">
添加
</el-button>-->
</template>
<template slot="data-columns">
<el-table-column align="center" label="学生编号" prop="id"/>
<template slot-scope="scope">
<a style="color: #1890ff" @click="handleUpdate(scope.row)">{{ scope.row.id }}</a>
</template>
<el-table-column align="center" label="学生姓名" prop="xm">
</el-table-column>
<el-table-column :formatter="dataFormatter" align="center" label="性别" prop="xb" class-name="DIC_XB"/>
<el-table-column :formatter="dataFormatter" align="center" label="年级" prop="nj" class-name="DIC_NJ"/>
<el-table-column :formatter="dataFormatter" align="center" label="学院" prop="yuanxi" class-name="DIC_XY"
width="150px"/>
<el-table-column :formatter="dataFormatter" align="center" label="专业" prop="zhuanye" class-name="DIC_ZY"
width="150px"/>
<el-table-column :formatter="dataFormatter" align="center" label="班级" prop="banji" class-name="DIC_BJ"
width="100px"/>
<el-table-column :formatter="dataFormatter" align="center" label="去向省" prop="txdzsf" class-name="DIC_SF"
width="100px"/>
<el-table-column :formatter="dataFormatter" align="center" label="去向市" prop="txdzs" class-name="DIC_SS"
width="100px"/>
<el-table-column align="center" label="操作">
<template slot-scope="scope">
<a style="color: #1890ff" @click="handleUpdate(scope.row)">
<el-button link type="primary" size="small"
>编辑
</el-button>
</a>
</template>
</el-table-column>
</template>
</data-table>
<!-- 编辑按钮按下-->
<el-dialog :visible.sync="dialogVisible" title="编辑人员信息" width="500px">
<el-form :model="formData" label-position="left" label-width="100px">
<el-form-item label="器材编号">
<el-input v-model="formData.id" disabled="disabled"/>
</el-form-item>
<el-form-item label="器材名">
<el-input v-model="formData.qcmc" disabled="disabled"/>
</el-form-item>
<el-form-item label="器材类型">
<el-select v-model="formData.qctype" placeholder="请选器材类型" disabled="disabled">
<!-- <el-option
v-for="item in treeData"
:key="item.value"
:label="item.text"
:value="item.value" >
</el-option>-->
</el-select>
</el-form-item>
<el-form-item label="主管教师">
<el-select v-model="formData.teacherid" placeholder="请选主管教师" disabled="disabled">
<!-- <el-option
v-for="item in teacherData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>-->
</el-select>
</el-form-item>
<el-form-item label="附言">
<el-input v-model="formData.bz" disabled="disabled"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="handleUpCancel"> </el-button>
<el-button type="primary" @click="handleSave"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import DataTable from '@/components/DataTable'
import MeetRole from '@/components/MeetRole'
// import { jcqsqrData} from '@/api/sys/baseqcgl/baseqcgl'
import DepartTreeSelect from '@/components/DepartTreeSelect'
import {fetchTree} from '@/api/sys/depart/depart'
import {getSelectOptions} from '@/api/sys/dict/dict'
import {dataFormatter} from '@/utils'
import {getBjList, getZyList} from "@/api/sys/grxxgl/grxxgl";
export default {
name: 'BysxxglList',
components: {
DepartTreeSelect,
DataTable,
MeetRole
},
data() {
return {
defaultProps: {
value: 'value',
text: 'text',
label: 'deptName',
children: 'children'
},
qcglData: {},
dialogVisible: false,// 编辑是否显示
listQuery: {
current: 0,
size: 10,
total: 0,
params: {}
},
formData: {
avatar: ''
},
selectZyData:[],// 查询专业字典
selectBjData:[],// 查询班级字典
xbDicData: [], // 性别字典 DIC_XB
mzDicData: [],// 民族字典 DIC_MZ
pyfxDicData: [],// 培养方向字典 DIC_PYFX
zzmmDicData: [],// 政治面貌字典 DIC_ZZMM
njDicData: [],// 年级字典 DIC_NJ
yxDicData: [],// 院系字典 DIC_XY
zyDicData: [],// 专业字典 DIC_ZY
bjDicData: [],// 班级字典 DIC_BJ
dwxzData: [],// 单位性质 DIC_DWXZ
dwhyData: [],// 单位行业 DIC_DWHY
sssfData: [],// 所在省份 DIC_SF
ssssData: [],// 所在市 DIC_SS
sssqData: [],// 所在区 DIC_SQ
options: {
// 列表请求URL
listUrl: '/student/student/paging',
// 删除
deleteUrl: '/lsjqcxx/lsj-qcgl/delete',
// 批量操作列表
multiActions: [
{
value: 'delete',
label: '删除'
}
]
}
}
},
// 页面初始化
created() {
getSelectOptions('DIC_XB').then(response => {
// 性别字典
this.xbDicData = response.data
})
getSelectOptions('DIC_MZ').then(response => {
// 教师民族字典字典
this.mzDicData = response.data
})
getSelectOptions('DIC_PYFX').then(response => {
// 培养方向字典
this.pyfxDicData = response.data
})
getSelectOptions('DIC_ZZMM').then(response => {
// 政治面貌字典
this.zzmmDicData = response.data
})
getSelectOptions('DIC_NJ').then(response => {
// 年级字典
this.njDicData = response.data
})
getSelectOptions('DIC_XY').then(response => {
// 院系字典
this.yxDicData = response.data
})
getSelectOptions('DIC_ZY').then(response => {
// 专业字典
this.zyDicData = response.data
this.selectZyData = response.data
})
getSelectOptions('DIC_BJ').then(response => {
// 班级字典
this.bjDicData = response.data
this.selectBjData =response.data
})
getSelectOptions('DIC_DWXZ').then(response => {
// 单位性质字典
this.dwxzData = response.data
})
getSelectOptions('DIC_DWHY').then(response => {
// 单位行业字典字典
this.dwhyData = response.data
})
getSelectOptions('DIC_SF').then(response => {
// 所在省份字典
this.sssfData = response.data
})
getSelectOptions('DIC_SS').then(response => {
// 所在市字典
this.ssssData = response.data
})
getSelectOptions('DIC_SQ').then(response => {
// 所在区字典
this.sssqData = response.data
})
},
// 方法
methods: {
// 格式化字典
dataFormatter,
// 根据学院获取专业list
changeXy(){
getZyList(this.form).then((response) => {
this.listQuery.params.zhuanye='' // 专业输入框清空
this.listQuery.params.banji='' // 班级输入框清空
this.selectZyData=[] // 重置专业字典
this.selectBjData=[] // 班级字典清空
this.selectZyData = response.data // 专业字典重新赋值
})
},
// 根据专业获取班级list
changgeZy(){
getBjList(this.form).then((response) =>{
this.listQuery.params.banji='' // 班级输入框清空
this.selectBjData=[] // 班级字典清空
this.selectBjData = response.data
})
},
//借出申请按钮按下
handleUpdate(row) {
this.dialogVisible = true
this.formData = row
// this.formData.roles = row.roleIds.split(',')
//this.formData.password = null
},
//取消按钮按下
handleUpCancel() {
this.dialogVisible = false;
},
departSelected(data) {
this.formData.id = data.id
console.log(data + "----depart")
},
// 确认返还按钮按下 入参返还教师id 返还备注信息 返还器材编号
handleSave() {
//this.qcglData=this.formData;
this.qcglData.bz = this.formData.bz;// 库存数量
this.qcglData.teacherid = this.formData.teacherid; // 教师id
this.qcglData.id = this.formData.id;//器材id
this.qcglData.jcqcid = this.formData.jcqcid;//器材id
jcqsqrData(this.qcglData).then((response) => {
this.$message({
type: 'success',
message: '验收成功!'
}, {
type: 'error',
message: response.msg
})
this.dialogVisible = false
this.dialogVisibleb = false
this.dialogVisiblec = false
this.$refs.pagingTable.getList()
console.log('handlesave')
})
},
// 批量操作监听
handleMultiAction(obj) {
if (obj.opt === 'cancel') {
this.handleCancelOrder(obj.ids)
}
}
}
}
</script>
-297
View File
@@ -1,297 +0,0 @@
<template>
<div style="width: 30%;margin: 4% 10%">
<el-form ref="form" :model="form" label-position="left" label-width="100px">
<el-form-item label="姓名">
<el-input v-model="form.xm"></el-input>
</el-form-item>
<el-form-item label="身份证号">
<el-input v-model="form.sfzh"></el-input>
</el-form-item>
<el-form-item label="年级">
<el-select v-model="form.nj" placeholder="请选择年级">
<el-option
v-for="item in njDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="院系">
<el-select v-model="form.yuanxi" placeholder="请选择院系" @change="changeXy">
<el-option
v-for="item in yxDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="专业">
<el-select v-model="form.zhuanye" placeholder="请选择专业" @change="changgeZy">
<el-option
v-for="item in zyDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="班级">
<el-select v-model="form.banji" placeholder="请选择班级">
<el-option
v-for="item in bjDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="性别">
<el-select v-model="form.xb" placeholder="请选择性别">
<el-option
v-for="item in xbDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="民族">
<el-select v-model="form.mz" placeholder="请选择民族">
<el-option
v-for="item in mzDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="政治面貌">
<el-select v-model="form.zzmm" placeholder="请选择政治面貌">
<el-option
v-for="item in zzmmDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="培养方向">
<el-select v-model="form.pyfx" placeholder="请选择培养方向">
<el-option
v-for="item in pyfxDicData"
:key="item.value"
:label="item.text"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="户籍所在地">
<el-input v-model="form.hjszd" placeholder="请输入户籍所在地"></el-input>
</el-form-item>
<el-form-item label="学号">
<el-input v-model="form.xh" placeholder="请输入学号"></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="form.sjh" placeholder="请输入手机号"></el-input>
</el-form-item>
<el-form-item label="邮箱">
<el-input v-model="form.email" placeholder="请输入邮箱"></el-input>
</el-form-item>
<!-- <el-form-item label="即时配送">
<el-switch v-model="form.delivery"></el-switch>
</el-form-item>
<el-form-item label="活动性质">
<el-checkbox-group v-model="form.type">
<el-checkbox label="美食/餐厅线上活动" name="type"></el-checkbox>
<el-checkbox label="地推活动" name="type"></el-checkbox>
<el-checkbox label="线下主题活动" name="type"></el-checkbox>
<el-checkbox label="单纯品牌曝光" name="type"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label="特殊资源">
<el-radio-group v-model="form.resource">
<el-radio label="线上品牌商赞助"></el-radio>
<el-radio label="线下场地免费"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="活动形式">
<el-input type="textarea" v-model="form.desc"></el-input>
</el-form-item>-->
<el-form-item>
<el-button type="primary" @click="onSubmit">更新个人信息</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script>
import DataTable from '@/components/DataTable'
import MeetRole from '@/components/MeetRole'
import {queryData,saveData, getZyList, getBjList} from '@/api/sys/grxxgl/grxxgl'
import DepartTreeSelect from '@/components/DepartTreeSelect'
// import { fetchTree } from '@/api/sys/depart/depart'
import {getSelectOptions} from '@/api/sys/dict/dict'
import {dataFormatter} from '@/utils'
export default {
name: 'qrxxgl',
components: {
DepartTreeSelect,
DataTable,
MeetRole
},
data() {
return {
form: {
zhuanye: '',
userid: '',
xb: '',
sfzh: '',
email: '',
id: '',
xh: '',
banji: '',
nj: '',
pyfx: '',
hjszd: '',
yuanxi: '',
zzmm: '',
xm: '',
mz: '',
sjh: ''
},
xbDicData: [], // 性别字典 DIC_XB
mzDicData: [],// 民族字典 DIC_MZ
pyfxDicData: [],// 培养方向字典 DIC_PYFX
zzmmDicData: [],// 政治面貌字典 DIC_ZZMM
njDicData: [],// 年级字典 DIC_NJ
yxDicData: [],// 院系字典 DIC_XY
zyDicData: [],// 专业字典 DIC_ZY
bjDicData: [],// 班级字典 DIC_BJ
defaultProps: {
value: 'value',
text: 'text',
label: 'deptName',
children: 'children'
},
}
},
// 页面初始化
created() {
getSelectOptions('DIC_XB').then(response => {
// 性别字典
this.xbDicData = response.data
})
getSelectOptions('DIC_MZ').then(response => {
// 教师民族字典字典
this.mzDicData = response.data
})
getSelectOptions('DIC_PYFX').then(response => {
// 培养方向字典
this.pyfxDicData = response.data
})
getSelectOptions('DIC_ZZMM').then(response => {
// 政治面貌字典
this.zzmmDicData = response.data
})
getSelectOptions('DIC_NJ').then(response => {
// 年级字典
this.njDicData = response.data
})
getSelectOptions('DIC_XY').then(response => {
// 院系字典
this.yxDicData = response.data
})
getSelectOptions('DIC_ZY').then(response => {
// 专业字典
this.zyDicData = response.data
})
getSelectOptions('DIC_BJ').then(response => {
// 班级字典
this.bjDicData = response.data
})
queryData().then((response) =>{
if(response.data){
this.form=response.data;
}
})
},
// 方法
methods: {
// 根据学院获取专业list
changeXy(){
getZyList(this.form).then((response) => {
this.form.zhuanye='' // 专业输入框清空
this.form.banji='' // 班级输入框清空
this.zyDicData=[] // 重置专业字典
this.bjDicData=[] // 班级字典清空
this.zyDicData = response.data // 专业字典重新赋值
})
},
// 根据专业获取班级list
changgeZy(){
getBjList(this.form).then((response) =>{
this.form.banji='' // 班级输入框清空
this.bjDicData=[] // 班级字典清空
this.bjDicData = response.data
})
},
onSubmit() {
saveData(this.form).then((response) =>{
this.$message({
type: 'success',
message: '更新成功!'
},{
type:'error',
message: response.msg
})
})
},
//取消按钮按下
handleUpCancel() {
this.dialogVisible = false;
},
departSelected(data) {
this.formData.id = data.id
console.log(data + "----depart")
},
// 批量操作监听
handleMultiAction(obj) {
if (obj.opt === 'cancel') {
this.handleCancelOrder(obj.ids)
}
}
}
}
</script>
+55
View File
@@ -1125,3 +1125,58 @@ Caused by: java.lang.ClassNotFoundException: Cannot find class: com.bc.exam.modu
2026-06-17 23:33:10.173 INFO 18172 --- [Thread-10] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler' 2026-06-17 23:33:10.173 INFO 18172 --- [Thread-10] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler'
2026-06-17 23:33:10.175 INFO 18172 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closing ... 2026-06-17 23:33:10.175 INFO 18172 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closing ...
2026-06-17 23:33:10.177 INFO 18172 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closed 2026-06-17 23:33:10.177 INFO 18172 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closed
2026-06-17 23:33:13.136 INFO 23440 --- [main] com.bc.exam.ExamApplication : Starting ExamApplication on yx with PID 23440 (D:\git\exam-jyt\exam-api\target\classes started by 75514 in D:\git\exam-jyt)
2026-06-17 23:33:13.138 INFO 23440 --- [main] com.bc.exam.ExamApplication : The following profiles are active: dev
2026-06-17 23:33:13.889 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'scheduledConfig' of type [com.bc.exam.config.ScheduledConfig$$EnhancerBySpringCGLIB$$e22232b1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:13.899 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroConfig' of type [com.bc.exam.config.ShiroConfig$$EnhancerBySpringCGLIB$$e3617af5] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:13.938 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroRealm' of type [com.bc.exam.ability.shiro.ShiroRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.086 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'securityManager' of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.107 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'authorizationAttributeSourceAdvisor' of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.137 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$2ea58efa] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.150 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure' of type [com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure$$EnhancerBySpringCGLIB$$4851846c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.153 INFO 23440 --- [main] c.a.d.s.b.a.DruidDataSourceAutoConfigure : Init DruidDataSource
2026-06-17 23:33:14.203 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.241 INFO 23440 --- [main] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} inited
2026-06-17 23:33:14.241 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dataSource' of type [com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceWrapper] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.276 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.283 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration' of type [org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration$$EnhancerBySpringCGLIB$$c3198a04] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.289 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.transaction-org.springframework.boot.autoconfigure.transaction.TransactionProperties' of type [org.springframework.boot.autoconfigure.transaction.TransactionProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.291 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'platformTransactionManagerCustomizers' of type [org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.291 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration$DataSourceTransactionManagerConfiguration' of type [org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration$DataSourceTransactionManagerConfiguration$$EnhancerBySpringCGLIB$$dba62769] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.298 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionManager' of type [org.springframework.jdbc.datasource.DataSourceTransactionManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.299 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionAopConfig' of type [com.bc.exam.config.TransactionAopConfig$$EnhancerBySpringCGLIB$$25416682] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.306 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'txAdvice' of type [org.springframework.transaction.interceptor.TransactionInterceptor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.306 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'advisor' of type [org.springframework.aop.support.DefaultPointcutAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.391 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.apache.shiro.spring.boot.autoconfigure.ShiroBeanAutoConfiguration' of type [org.apache.shiro.spring.boot.autoconfigure.ShiroBeanAutoConfiguration$$EnhancerBySpringCGLIB$$41be6caa] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.394 INFO 23440 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'eventBus' of type [org.apache.shiro.event.support.DefaultEventBus] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2026-06-17 23:33:14.705 INFO 23440 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8101 (http)
2026-06-17 23:33:14.724 INFO 23440 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2026-06-17 23:33:14.725 INFO 23440 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.17]
2026-06-17 23:33:14.809 INFO 23440 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2026-06-17 23:33:14.810 INFO 23440 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1636 ms
2026-06-17 23:33:16.182 INFO 23440 --- [main] o.s.s.c.ThreadPoolTaskScheduler : Initializing ExecutorService 'taskScheduler'
2026-06-17 23:33:16.189 INFO 23440 --- [main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService
2026-06-17 23:33:16.191 INFO 23440 --- [main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'asyncExecutor'
2026-06-17 23:33:16.199 INFO 23440 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity<springfox.documentation.spring.web.json.Json> springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)]
2026-06-17 23:33:16.522 INFO 23440 --- [main] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html]
2026-06-17 23:33:16.664 INFO 23440 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed
2026-06-17 23:33:16.688 INFO 23440 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
2026-06-17 23:33:16.736 INFO 23440 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references
2026-06-17 23:33:16.925 INFO 23440 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pagingUsingPOST_1
2026-06-17 23:33:16.930 INFO 23440 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1
2026-06-17 23:33:16.983 INFO 23440 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8101 (http) with context path ''
2026-06-17 23:33:16.986 INFO 23440 --- [main] com.bc.exam.ExamApplication : Started ExamApplication in 4.147 seconds (JVM running for 4.608)
2026-06-17 23:33:16.989 INFO 23440 --- [main] com.bc.exam.ExamApplication :
----------------------------------------------------------
系统启动成功,访问路径如下:
本地路径: http://127.0.0.1:8101/
API文档: http://127.0.0.1:8101/doc.html
----------------------------------------------------------
2026-06-17 23:33:18.736 INFO 23440 --- [http-nio-8101-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2026-06-17 23:33:18.736 INFO 23440 --- [http-nio-8101-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2026-06-17 23:33:18.746 INFO 23440 --- [http-nio-8101-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 10 ms
2026-06-17 23:43:58.248 INFO 23440 --- [Thread-10] o.s.s.concurrent.ThreadPoolTaskExecutor : Shutting down ExecutorService 'asyncExecutor'
2026-06-17 23:43:58.248 INFO 23440 --- [Thread-10] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler'
2026-06-17 23:43:58.248 INFO 23440 --- [Thread-10] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler'
2026-06-17 23:43:58.250 INFO 23440 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closing ...
2026-06-17 23:43:58.251 INFO 23440 --- [Thread-10] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closed