我是如何4个小时搞定一个比赛成绩查询微信端的

我的一个老同事,转行做教育行业,主办了一个省的比赛项目,给我打电话时,比赛刚结束,觉得直接微信公众号发个文章,把参赛选手的成绩放在一个表格里面,比较Low,另外可能有些小的机构组织者自己复制他们的选手成绩,就直接发给选手了,官方的公众号就是失去上千个选手的关注。

老同事开玩笑说发个红包,让我给她搞定,要第二天成绩一出来就能查。

心想有我的旺财C# .NET代码生成器,就一个表的事,80%的代码一键就生成了,剩下10%弄点后台代码,其它的都是前端的美化了。正巧晚上没有电话会议,就一口答应了,可是没想到3个小时居然没搞定。前端美化,特别是弄张顶部的图花费了我不少时间。

废话少说,先上截图吧,不然看文字你会看不下去,看完图,待我慢慢说来。

查询界面

结果页面(iPhone7和iPhone8)

管理员登录

新增及查看页面

老同事的电话上,我让她提供所要显示的成绩信息,就是列一个Excel表,把表头给我。然后告诉我根据什么来查询。

当天拿到的表结构如下:

我新增了3个字段,简单记录一下查询次数、首次查询时间和最近查询时间。

接着用代码生成器一键生成代码:

业务代码:除ScoreManager..Manual.cs文件外,都是自动生成的

Web页面及代码:Exam目录里的全部自动生成的,下面2个Exam.aspx和Score.aspx是手动创建的。

查询成绩的核心代码为复制现成的,手写一部分,如下:

读数据库的,就是纯SQL啦

前端部分,主要就是Exam.aspx和Score.aspx,涉及到一个上面的图,原始图如下,太宽了,得裁剪出来,不然文字都看不清楚,另外底部加点渐变。

功能真得很简单,因为时间紧张,做到这个程度已经让老同事惊讶,当然了第二天做了点文字、标题、数据导入、个别记录的修改,但核心的开发用了晚上的4个小时完成,多亏了不断完善的代码生成器。当然了,很多生成的代码和功能并未用到,特别是各种操作的权限管理、缓存等等。

如果时间来得及,这个比赛成绩查询小系统还可以做得更加完美

比方说:

  1. 记录查询者的IP地址信息,并获知其地理位置、省份城市等信息并保存
  2. 每次查询记录都保存到单独的表
  3. 用户查询时,可以多增加几个查询条件,并后台可以配置,如参赛码、比赛名称(可选)
  4. 管理员后台可以Excel/CSV导入记录
  5. 选手查询成绩后,如果中奖可以提交快递收货信息
  6. 选手查询成绩后,可生成图片转发到朋友圈炫耀等
  7. PC端也做上,特别是UI要针对PC

让高效技术帮助更多人

浪费了1个多小时写这篇文章,其实也没啥技术含量。但这么一个简单的功能,其实很多类似的竞赛、比赛、考试等都可以直接用,对考生、选手、举办方都会受益。

有类似需求的朋友,可以联系我量身定制贵组织的比赛/考试/竞赛成绩查询系统,体验快速、高效的技术服务。

Loading