From b9da2005012dc46598a9c63245618780cf7a5c10 Mon Sep 17 00:00:00 2001 From: xyc <3422692813@qq.com> Date: Mon, 26 May 2025 15:40:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cms/domain/HitCompetitionStudentInfo.java | 3 + .../HitCompetitionStudentInfoServiceImpl.java | 12 +++- .../cms/HitCompetitionStudentInfoMapper.xml | 3 + ruoyi-ui/src/views/hit/school/index.vue | 2 +- ruoyi-ui/src/views/hit/stuInfo/index.vue | 17 ++++- .../src/views/officialWebsite/competition.vue | 67 +++++++++++++------ 6 files changed, 82 insertions(+), 22 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/cms/domain/HitCompetitionStudentInfo.java b/ruoyi-admin/src/main/java/com/ruoyi/cms/domain/HitCompetitionStudentInfo.java index 857c309..7159e62 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/cms/domain/HitCompetitionStudentInfo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/cms/domain/HitCompetitionStudentInfo.java @@ -98,6 +98,9 @@ public class HitCompetitionStudentInfo implements Serializable { @ApiModelProperty(value = "是否被选为参加初赛人员 (0: 否, 1: 是)") private Boolean isPreliminary; + @Excel(name = "国籍",dictType = "com_nationality") + private String nationality; + @ApiModelProperty(value = "备注") private String remark; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/cms/service/impl/HitCompetitionStudentInfoServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/cms/service/impl/HitCompetitionStudentInfoServiceImpl.java index b19d72b..0052170 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/cms/service/impl/HitCompetitionStudentInfoServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/cms/service/impl/HitCompetitionStudentInfoServiceImpl.java @@ -36,6 +36,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -100,7 +101,10 @@ public class HitCompetitionStudentInfoServiceImpl extends ServiceImpl(); + } hitCompetitionStudentInfo.setSchoolName(hitRegistrationTeachInfo.getSchoolName()); } PageUtils.startPage(); @@ -294,6 +298,12 @@ public class HitCompetitionStudentInfoServiceImpl extends ServiceImpl { it.isNull(HitCompetitionStudentInfo::getHitRegId).or().eq(HitCompetitionStudentInfo::getHitRegId, ""); }); + //判断当前学生是否是中国 + if (hitCompetitionStudentInfo.getNationality().equals("中国")) { + queryWrapper3.eq(HitCompetitionStudentInfo::getNationality, "中国"); + } else { + queryWrapper3.ne(HitCompetitionStudentInfo::getNationality, "中国"); + } List studentInfos = this.list(queryWrapper3); hitCompetitionStudentInfo.setTdStudentList(studentInfos); //查询是否存在已组队团队 diff --git a/ruoyi-admin/src/main/resources/mapper/cms/HitCompetitionStudentInfoMapper.xml b/ruoyi-admin/src/main/resources/mapper/cms/HitCompetitionStudentInfoMapper.xml index b8a09ac..5b1a86e 100644 --- a/ruoyi-admin/src/main/resources/mapper/cms/HitCompetitionStudentInfoMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/cms/HitCompetitionStudentInfoMapper.xml @@ -89,6 +89,7 @@ student_id_card, trials_score, is_preliminary, + nationality, remark, sex, del_flag, @@ -111,6 +112,7 @@ #{studentIdCard}, #{trialsScore}, #{isPreliminary}, + #{nationality}, #{remark}, #{sex}, #{delFlag}, @@ -138,6 +140,7 @@ student_id_card = #{studentIdCard}, trials_score = #{trialsScore}, is_preliminary = #{isPreliminary}, + nationality = #{nationality}, remark = #{remark}, sex = #{sex}, del_flag = #{delFlag}, diff --git a/ruoyi-ui/src/views/hit/school/index.vue b/ruoyi-ui/src/views/hit/school/index.vue index 6648434..8e15da7 100644 --- a/ruoyi-ui/src/views/hit/school/index.vue +++ b/ruoyi-ui/src/views/hit/school/index.vue @@ -269,7 +269,7 @@ export default { importTemplate() { let filename = '学校模板_' const url = 'school/exportSchoolTemplate' - filename = '学生成绩模板_' + filename = '学校导入模板_' this.download(url, {}, filename + new Date().getTime() + '.xlsx') }, /** 搜索按钮操作 */ diff --git a/ruoyi-ui/src/views/hit/stuInfo/index.vue b/ruoyi-ui/src/views/hit/stuInfo/index.vue index 81892f1..1563477 100644 --- a/ruoyi-ui/src/views/hit/stuInfo/index.vue +++ b/ruoyi-ui/src/views/hit/stuInfo/index.vue @@ -87,6 +87,11 @@ + + + @@ -167,6 +172,16 @@ + + + + + + @@ -233,7 +248,7 @@ import {listInfo, getInfo, delInfo, addInfo, updateInfo, updateTime, byId, editI import { getToken } from "@/utils/auth"; export default { name: "Info", - dicts: ["sys_user_sex", "school_name", "com_region","com_racetrack"], + dicts: ["sys_user_sex", "school_name", "com_region","com_racetrack","com_nationality"], data() { return { selectedTime: null, // 用户选择的个人赛截止时间 diff --git a/ruoyi-ui/src/views/officialWebsite/competition.vue b/ruoyi-ui/src/views/officialWebsite/competition.vue index 357ad71..377f93b 100644 --- a/ruoyi-ui/src/views/officialWebsite/competition.vue +++ b/ruoyi-ui/src/views/officialWebsite/competition.vue @@ -59,6 +59,17 @@ + + + + + + @@ -114,19 +125,6 @@ - - - - - - - - - - - - - 提交 @@ -173,6 +171,7 @@ v-for="item in dict.type.com_racetrack" :key="item.value" :label="item.value" + :disabled="item.disabled" > {{ item.label }} @@ -385,6 +384,17 @@ + + + + + + -

修改团队信息

+

修改团队信息

报名时间已超过七天 无法修改 @@ -464,6 +474,7 @@ :key="item.value" :label="item.value" :checked="checked" @change="checked=!checked" + :disabled="item.disabled" > {{ item.label }} @@ -571,7 +582,7 @@ export default { SwiperSlide, 'page-util': PageUtil }, - dicts: ['sys_user_sex', 'school_name', 'com_region', 'com_racetrack'], + dicts: ['sys_user_sex', 'school_name', 'com_region', 'com_racetrack','com_nationality'], name: 'HelloWorld', data() { @@ -614,6 +625,7 @@ export default { trialsScore: '', isPreliminary: '', racetrack: '', + nationality: '', // racetrackArr: [] }, showCompetition: false, @@ -672,7 +684,10 @@ export default { ], competition: [ {required: true, message: '赛事不能为空', trigger: 'blur'} - ] + ], + nationality: [ + {required: true, message: '国籍不能为空', trigger: 'blur'} + ], }, preliminaryFormRules: { @@ -803,9 +818,6 @@ export default { mounted() { console.log('组件创建') // 使用 JSON 穿透 Observer 查看原始值 - console.log('获取字典值', this.dict.type.com_racetrack) - console.log('字典原始数据:', JSON.parse(JSON.stringify(this.dict.type.com_racetrack))) - console.log('当前值原始数据:', JSON.parse(JSON.stringify(this.preliminaryForm.racetrackArr))) // 页面加载完毕调用 this.initPageData() // 在组件挂载后添加滚动监听 @@ -889,6 +901,23 @@ export default { } console.log('报名后的数据', this.preliminaryForm) this.preliminaryForm.competition = [] + // 如果nationality不是中国就禁用 + if (this.preliminaryForm.nationality !== '中国') { + console.log('赛道', this.dict.type.com_racetrack) + this.dict.type.com_racetrack.map(item => { + if (item.value == '3') { + item.disabled = false + } else { + item.disabled = true + } + }) + }else { + this.dict.type.com_racetrack.map(item => { + if (item.value == '3') { + item.disabled = true + } + }) + } this.updateSignUpForm(response.data)