This commit is contained in:
xyc 2025-05-20 11:27:27 +08:00
parent 1299cc1872
commit 777e07a5b0
7 changed files with 124 additions and 50 deletions

View File

@ -95,6 +95,9 @@ public class HitCompetitionStudentInfo implements Serializable {
@ApiModelProperty(value = "个人选拔赛分数")
private BigDecimal trialsScore;
@Excel(name = "赛道",readConverterExp = "1=常规赛道,2=产业赛道,3=国际赛道")
private Integer racetrack;
// @Excel(name = "是否被选为参加地区选拔赛人员", readConverterExp = "false=待审核,true=已入选",type = EXPORT)
@ApiModelProperty(value = "是否被选为参加初赛人员 (0: 否, 1: 是)")
private Boolean isPreliminary;
@ -160,4 +163,7 @@ public class HitCompetitionStudentInfo implements Serializable {
@TableField(exist = false)
private Boolean isUpdateTeam;
@TableField(exist = false)
private String racetrackStr;
}

View File

@ -6,12 +6,12 @@ spring:
druid:
# 主库数据源
master:
url: jdbc:mysql://61.156.90.46:3360/hgd_website?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true
# url: jdbc:mysql://localhost:3306/hgd_website?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true
username: obrhgd
# username: root
password: Obr7890&*()
# password: 123456
# url: jdbc:mysql://61.156.90.46:3360/hgd_website?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true
url: jdbc:mysql://fn.xuyuncong.fun:3360/hgd_website?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true
# username: obrhgd
username: hgd_website
# password: Obr7890&*()
password: ZSERXa7zHGGfmmBT
# 从库数据源
slave:
# 从数据源开关/默认关闭

View File

@ -34,21 +34,32 @@
<select id="selectHitCompetitionStudentInfoList" parameterType="HitCompetitionStudentInfo"
resultType="com.ruoyi.cms.domain.HitCompetitionStudentInfo">
select * from hit_competition_student_info
select *,
CASE
WHEN racetrack = '1' THEN '常规赛道'
WHEN racetrack = '2' THEN '产业赛道'
WHEN racetrack = '3' THEN '国际赛道'
ELSE ''
END racetrackStr
from hit_competition_student_info
<where>
<if test="hitRegId != null and hitRegId != ''"> and hit_reg_id = #{hitRegId}</if>
<if test="stuName != null and stuName != ''"> and stu_name like concat('%', #{stuName}, '%')</if>
<if test="schoolName != null and schoolName != ''"> and school_name = #{schoolName} </if>
<if test="collegeName != null and collegeName != ''"> and college_name like concat('%', #{collegeName}, '%')</if>
<if test="schoolName != null and schoolName != ''"> and school_name like concat('%', #{schoolName}, '%')</if>
<if test="major != null and major != ''"> and major = #{major}</if>
<if test="division != null and division != ''"> and division = #{division}</if>
<if test="phoneNumber != null and phoneNumber != ''"> and phone_number = #{phoneNumber}</if>
<if test="email != null and email != ''"> and email = #{email}</if>
<if test="studentIdCard != null and studentIdCard != ''"> and student_id_card = #{studentIdCard}</if>
<if test="trialsScore != null "> and trials_score = #{trialsScore}</if>
<if test="isPreliminary != null "> and is_preliminary = #{isPreliminary}</if>
<if test="year != null "> and create_time like concat(#{year},'%') </if>
<if test="hitRegId != null and hitRegId != ''">and hit_reg_id = #{hitRegId}</if>
<if test="stuName != null and stuName != ''">and stu_name like concat('%', #{stuName}, '%')</if>
<if test="schoolName != null and schoolName != ''">and school_name = #{schoolName}</if>
<if test="collegeName != null and collegeName != ''">and college_name like concat('%', #{collegeName},
'%')
</if>
<if test="schoolName != null and schoolName != ''">and school_name like concat('%', #{schoolName}, '%')
</if>
<if test="major != null and major != ''">and major = #{major}</if>
<if test="division != null and division != ''">and division = #{division}</if>
<if test="phoneNumber != null and phoneNumber != ''">and phone_number = #{phoneNumber}</if>
<if test="email != null and email != ''">and email = #{email}</if>
<if test="studentIdCard != null and studentIdCard != ''">and student_id_card = #{studentIdCard}</if>
<if test="trialsScore != null ">and trials_score = #{trialsScore}</if>
<if test="racetrack != null ">and racetrack = #{racetrack}</if>
<if test="isPreliminary != null ">and is_preliminary = #{isPreliminary}</if>
<if test="year != null ">and create_time like concat(#{year},'%')</if>
</where>
order by school_name desc
</select>
@ -85,6 +96,7 @@
<if test="studentIdCard != null">student_id_card,</if>
<if test="trialsScore != null">trials_score,</if>
<if test="isPreliminary != null">is_preliminary,</if>
<if test="racetrack != null">racetrack,</if>
<if test="remark != null">remark,</if>
<if test="sex != null">sex,</if>
<if test="delFlag != null">del_flag,</if>
@ -107,6 +119,7 @@
<if test="studentIdCard != null">#{studentIdCard},</if>
<if test="trialsScore != null">#{trialsScore},</if>
<if test="isPreliminary != null">#{isPreliminary},</if>
<if test="racetrack != null">#{racetrack},</if>
<if test="remark != null">#{remark},</if>
<if test="sex != null">#{sex},</if>
<if test="delFlag != null">#{delFlag},</if>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -30,6 +30,16 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="赛道" prop="year">
<el-select v-model="queryParams.racetrack" placeholder="请选择" clearable>
<el-option
v-for="item in racetrack"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -79,6 +89,7 @@
<el-table-column label="所属赛区" align="center" prop="division" />
<el-table-column label="手机号" align="center" prop="phoneNumber" />
<el-table-column label="邮箱" align="center" prop="email" />
<el-table-column label="赛道" align="center" prop="racetrackStr" />
<el-table-column label="学生证" align="center" prop="studentIdCard">
<template slot-scope="scope">
<image-preview :src="scope.row.studentIdCard" :width="50" :height="50" />
@ -228,6 +239,20 @@ export default {
ids: [],
//
single: true,
racetrack: [
{
label: '常规赛道',
value: 1
},
{
label: '产业赛道',
value: 2
},
{
label: '国际赛道',
value: 3
},
],
//
multiple: true,
//
@ -316,6 +341,9 @@ export default {
};
},
created() {
//
// console.log('',this.$route.query)
// this.queryParams.racetrack = this.$route.query.type
this.getList();
},
methods: {

View File

@ -79,6 +79,16 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="赛道" prop="racetrack">
<el-select v-model="signUpForm.racetrack" filterable allow-create default-first-option
placeholder="请选择学校名称"
>
<el-option v-for="item in racetrack" :key="item.value" :label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="院系名称" prop="collegeName">
<el-input v-model="signUpForm.collegeName"></el-input>
@ -486,10 +496,10 @@
</template>
<script>
import { getHomeUserInfo } from '@/api/system/user'
import { Swiper, SwiperSlide } from 'vue-awesome-swiper'
import {getHomeUserInfo} from '@/api/system/user'
import {Swiper, SwiperSlide} from 'vue-awesome-swiper'
import 'swiper/css/swiper.min.css'
import { getPageData, getCategoryByParentId, getbaseInfo } from '@/api/officialWebsite/getPageData'
import {getPageData, getCategoryByParentId, getbaseInfo} from '@/api/officialWebsite/getPageData'
import footers from '@/views/officialWebsite/Components/footer.vue'
import headers from '@/views/officialWebsite/Components/header.vue'
import PageUtil from '@/views/officialWebsite/Components/page'
@ -505,8 +515,8 @@ import {
refuseTeam,
editRegInfo, editCompetitionStudentInfo, updateRegInfo, editTeam
} from '@/api/officialWebsite/registerStudent'
import { getTab, getbanner } from '@/api/gw/home'
import { getToken } from '@/utils/auth'
import {getTab, getbanner} from '@/api/gw/home'
import {getToken} from '@/utils/auth'
export default {
components: {
@ -530,6 +540,20 @@ export default {
imgurl: process.env.VUE_APP_BASE_API,
//
studentForm: {},
racetrack: [
{
label: '常规赛道',
value: 1
},
{
label: '产业赛道',
value: 2
},
{
label: '国际赛道',
value: 3
},
],
//
teamForm: {
competition: []
@ -572,84 +596,87 @@ export default {
teacherList: [], //
rules: {
stuName: [
{ required: true, message: '姓名不能为空', trigger: 'blur' }
{required: true, message: '姓名不能为空', trigger: 'blur'}
],
schoolName: [
{ required: true, message: '学校名称不能为空', trigger: 'blur' }
{required: true, message: '学校名称不能为空', trigger: 'blur'}
],
studentId: [
{ required: true, message: '学号不能为空', trigger: 'blur' }
{required: true, message: '学号不能为空', trigger: 'blur'}
],
collegeName: [
{ required: true, message: '院系名称不能为空', trigger: 'blur' }
{required: true, message: '院系名称不能为空', trigger: 'blur'}
],
division: [
{ required: true, message: '所属赛区不能为空', trigger: 'blur' }
{required: true, message: '所属赛区不能为空', trigger: 'blur'}
],
major: [
{ required: true, message: '专业名称不能为空', trigger: 'blur' }
{required: true, message: '专业名称不能为空', trigger: 'blur'}
],
studentIdCard: [
{ required: true, message: '学生证/学生卡不能为空', trigger: 'blur' }
{required: true, message: '学生证/学生卡不能为空', trigger: 'blur'}
],
phoneNumber: [
{ required: true, message: '手机号不能为空', trigger: 'blur' },
{ pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号', trigger: 'blur' }
{required: true, message: '手机号不能为空', trigger: 'blur'},
{pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号', trigger: 'blur'}
],
email: [
{ required: true, message: '邮箱不能为空', trigger: 'blur' }
{required: true, message: '邮箱不能为空', trigger: 'blur'}
],
competition: [
{ required: true, message: '赛事不能为空', trigger: 'blur' }
{required: true, message: '赛事不能为空', trigger: 'blur'}
],
racetrack: [
{required: true, message: '赛道不能为空', trigger: 'blur'}
]
},
preliminaryFormRules: {
competition: [
{ required: true, message: '请选择至少一个赛事', trigger: 'change', type: 'array' }
{required: true, message: '请选择至少一个赛事', trigger: 'change', type: 'array'}
],
divisionLabel: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
division: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
schoolName: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
'ldTeacherInfo.teacherName': [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
teamName: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
teammateOne: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
teammateTwo: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
teacherOne: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
// teacherTwo: [
// { required: true, message: "", trigger: "blur" }
// ],
sampleConcat: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
sampleNumber: [
//
{ required: true, message: '不能为空', trigger: 'blur' },
{ pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'},
{pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号', trigger: 'blur'}
],
sampleAddress: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
],
uploadFile: [
{ required: true, message: '不能为空', trigger: 'blur' }
{required: true, message: '不能为空', trigger: 'blur'}
]
},
pageContext: '',