note/work/教育产业/青少年活动报名中心.md
2025-11-19 10:16:05 +08:00

118 lines
7.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 苏州市青少年竞赛报名平台
## 需求update-20240918
### 比赛列表接口
1. 需增加主办方;
2. 排序:默认需根据报名截止时间降序排序;
3. 报名状态筛选:默认显示所有报名状态;后端根据当前时间返回报名状态(未开始、报名中、已截止);
4. 比赛分组gradeType比如小学组、初中组、高中组要可以筛选。如果比赛没有设置分组则默认显示所有比赛。
5.
## 产品规划
### 家长用户端功能详细规划
#### **注册与登录**
1. 注册与登录:
- 打开登录页面时先判断用户环境。如果是微信环境则获取openid使用微信登录如果是其他环境则使用手机号登录。如果没有微信openid的则跳转到手机号登录页面。
- 手机号需获取手机验证码验证无需密码登录。使用手机号登录时如果是微信环境的则自动绑定微信openid。
- 登录成功后,跳转到登录前一个页面,或主页。
#### **个人中心**
1. 学生管理:
- 显示已绑定的学生。显示绑定学生按钮。
- 绑定学生:
- 输入学生姓名、身份证号,进行添加。根据学生身份证号、家长手机号,调用学籍库接口(根据学生身份证查询,返回的家长手机号与注册手机号匹配),获取学生信息。如果成功,则记录:姓名、性别、学校、年级、身份证号;如果失败,则提示错误信息(未查到、信息不匹配)。
- 拉取信息后,需上传学生照片(选填)。
- 绑定成功后,显示学生信息。
- 绑定多个学生。解绑学生。
2. 参赛情况
- 列表:姓名、比赛名称、报名时间、比赛状态、获奖情况。
- 详情:姓名、比赛名称、报名类型、报名组别、报名时间、参赛时间、比赛低点、比赛状态、获奖情况等;
- 根据比赛状态,增加功能按钮:已报名(增加取消按钮)、已审核、审核失败(增加审核失败原因,增加修改按钮)、已取消、已结束。
- 根据获奖情况,增加功能按钮:查看获奖证书。
3. 积分
- 显示积分,显示积分获得的来源。
#### **主页**
1. 比赛列表:图片+标题+状态:正在进行、即将开始、已结束。
2. 详情页:比赛名称、报名时间、报名截止时间、报名人数、报名方式、比赛地点、比赛介绍、报名方式、比赛奖项等。
- 点击报名按钮,跳转到报名页面。
#### **报名页面**
1. 选择报名的学生。如果未登录,跳转到登录页面;如果未绑定学生,则跳转到绑定学生页面。
2. 带出学生信息:学校、年级、姓名、身份证号(脱敏)、家长手机号(脱敏,可修改)、学生照片(如果没有照片,则必须上传。可修改)。
3. 选择个人报名,还是团队报名。
1. 个人报名:
- 比赛报名须知。
- 增加两个指导老师的信息:老师姓名、手机号。选填。
- 根据比赛设置,选择二级比赛类目(下拉框)。如有,则必填。
- 根据比赛设置,填写参赛证号(文本框),如有,则必填。
- 根据比赛设置,显示其他需要填写的内容。如有,则必填。
- 根据比赛设置,自动显示所属组别(低年级、初中组等。需在比赛设置里设置),无法更改。
- 全部信息填写结束。点击提交报名按钮后(需检查必填项),显示所有信息再次确认后,提交。
2. 团队报名:
- 参与团队:检查按钮:检查是否有其他成员邀请加入团队,如果有,则显示邀请信息,并提示“接受邀请”,或拒绝邀请。如果接受邀请,则比赛设置无需填写,直接显示比赛详情、团队详情,但如果有以下信息,则需要填写:参赛证号、其他必填的内容。确认参赛。邀请信息包括:邀请人学校、年级、姓名、身份证号(脱敏)、手机号(脱敏)、参加的比赛名称、类目(如有)、团队编号。
- 创建团队:如果没有其他成员邀请,则点击“创建团队”按钮,填写团队信息和报名信息。
- 团队信息:点击增加团队成员按钮,填写团队成员姓名、身份证号。
- 参赛信息:与“个人报名”一致:指导老师、类目、参赛证号等;
- 确认团队信息后,点击提交报名按钮,提交报名信息。
4. 点击提交报名按钮,提交报名信息。
### 管理端功能详细规划
#### **登录与权限管理**
- 常规后台管理帐号登录。无需特殊权限。不给其他老师使用。无需考虑额外的权限。
#### **竞赛管理**
1. 发布比赛:
- 比赛名称标题、简介(生成一级比赛类目)
- 可选是否有二级比赛类目,如果有,则添加类目名称
- 报名开始时间、报名结束时间
- 可选是否支持团队报名
- 可选是否需要参赛证号
- 可选是否需要添加备注1、备注2备注的名称和内容
- 组别设置xx年级对应xx组别
- 比赛详情页:标题图片、详情介绍等。
- 竞赛编号生成规则:前缀、日期、随机数。
- 点击发布按钮,发布成功。生成竞赛号码。
- 查看、编辑、删除等其他功能;
2. 报名管理:
- 比赛筛选:对一、二级比赛类目进行筛选,查看报名信息。
- 手动增加单条报名信息。唯一性:一次竞赛只允许一个人报,不存在一个竞赛里出现两次相同的身份证号;
- 批量导入excel报名信息。需对唯一性进行检查。
- 批量导出。
- 对单条信息进行修改、删除等。
3. 审核管理:
- 比赛筛选:对一、二级比赛类目进行筛选,查看报名人员信息。
- 团队、个人筛选。
- 审核筛选:未审核、审核通过、未到报名截止期、审核失败、已过期(未审核但比赛已开始)等。
4. 获奖管理:
- 获奖信息:比赛名称(编号)、获奖人姓名、身份证号、奖项、颁发单位、颁奖时间、获得的积分数量等。
- 增加奖状模版功能。上传奖状模版,系统自动生成奖状。
- 增加单条获奖信息。
- 批量导入excel获奖信息。需对唯一性进行检查。
#### **家长与学生管理**
1. 家长管理
- 手机号、微信openid、注册日期、最后登录日期、绑定学生数量等。
- 增删改查。
2. 学生管理
- 学生信息姓名、性别、学校、年级、身份证号、家长手机号、学生照片base64url
- 增删改查。
3. 积分管理
- 积分规则每报名成功一次获得10积分。
- 积分规则:根据获奖情况,获得不同积分。
- 积分明细(姓名、身份证号、获得的积分数量、来源、获得时间等)。
- 积分汇总:显示学生的积分总和。
## 业务逻辑
### 审核逻辑
### 团队比赛:
- 团队报名:由某一个学生作为主邀请人,在报名时选择团队比赛,并填写团队成员的姓名、身份证号。
- 系统自动生成一个团队号码,并将填写的团队成员信息绑定到这个团队号码。
- 学生报名时,系统检索学生是否有团队邀请,如果有,则提示学生邀请信息;如果接受邀请,则将学生信息绑定到团队号码,复用团队报名信息,报名成功。
- 邀请人可以查看团队成员信息。
- 审核如果以团队报名则必须至少2个人报名成功如果只有1个主邀请人没有其他被邀请人接受邀请则本次报名失败如果有至少有1个人接受了邀请其他人未接受或拒绝接受邀请则本次报名成功。