我版本低,打不开你给的demo,提供一下我想到的思路:
表1:合伙人表(完成每日任务数量/完成每周任务数量)
表2:合伙人任务表(任务情况,完成情况,完成时间)
表3:任务表(打上标记 新手/每日/每周/阶段)
命令1:新增合伙人的时候,将任务表的新手任务/每日任务/每周任务/阶段任务加上合伙人ID(循环服务端命令或者执行sql命令批量)插入到合伙人任务表
命令2:每天/每周凌晨定时任务,更新合伙人任务表,将合伙人之前的每日任务/每周任务的任务情况打上已过期,新增合伙人任务表,将新的每日任务/每周任务加上合伙人ID插入到合伙人任务表
命令3:点击完成后,更新合伙人任务表里面的任务完成情况,合伙人表 完成每日任务数量+1,完成每周任务数量+1
命令4:管理员页面 把合伙人列表拖出来,2个按钮,一:查看每日任务完成情况,查询合伙人任务表,日期等于当日即可;二:查看每周任务完成情况,查询合伙人任务表,用SELECT count FROM 表 WHERE datediff(week,[dateadd],getdate())=0,就获得当前一周之内完成的周任务数量。如果想查看历史全部的,就直接select合伙人表就行。
|