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