|
|
@@ -23,115 +23,229 @@ ui设计工具:即时设计
|
|
|
|
|
|
## 系统功能
|
|
|
|
|
|
-* 用户
|
|
|
|
|
|
- 1. (已开发)微信用户登录
|
|
|
|
|
|
- 说明:简单获取头像、微信openid、昵称,然后用于后台数据处理和前端显示即可
|
|
|
+### 基本概念
|
|
|
|
|
|
- 2. (已开发)昵称修改
|
|
|
|
|
|
- 3. (现阶段不支持该功能)头像修改
|
|
|
|
|
|
-* 打卡任务
|
|
|
+#### 打卡结算
|
|
|
|
|
|
- 1. (已开发)查询当前用户拥有的打卡任务列表
|
|
|
+* 打卡规则:计时、计数、单次打卡(计数的特例,只需计一次数)
|
|
|
|
|
|
- 显示内容:任务名称、任务描述、奖励数、全勤奖励标识、周末奖励标识、本周打卡记录,今日打卡情况
|
|
|
+* 计量单位:次数、分钟(自己设置)
|
|
|
|
|
|
- 说明:今日打卡情况未完成时的状态,根据不同的打卡类型有不同的显示
|
|
|
+* 结算周期:日、周、月、季、半年、年、用户自定义
|
|
|
|
|
|
- * 打卡类型:单次打卡,未完成显示“完成”
|
|
|
- * 打卡类型:计数,未完成显示“计数”,并且显示当前已打卡次数
|
|
|
- * 打卡类型:计时,未完成显示“计时”,并且显示当前已记录的打卡时间
|
|
|
+* 根据有没有结束时间分类:
|
|
|
|
|
|
- 2. (已开发)新建/编辑任务
|
|
|
+ * 任务式打卡任务(有结束时间)
|
|
|
+ * 普通打卡任务(没有结束时间)
|
|
|
|
|
|
- 显示内容:任务名称、奖励数、全勤奖励标识、周末奖励标识、任务描述,打卡类型,打卡配置(四种比较规则、两种数值类型)
|
|
|
+* 奖励规则:
|
|
|
|
|
|
- 说明:目前有3种打卡类型,打卡配置根据打卡类型的不同而有所变化,从而形成丰富的打卡规则
|
|
|
+ 1. 结算则给予奖励
|
|
|
+ 2. 完成则给予奖励
|
|
|
+ * 在打卡任务结束时,给予奖励
|
|
|
+ * 在周期结束时,给予奖励
|
|
|
+ 3. 按日期不同给予奖励-按照工作日、周末、法定节假日 给予不同的奖励
|
|
|
|
|
|
- * 打卡类型:单次打卡、计数、计时
|
|
|
- * 打卡配置:
|
|
|
- * 单次打卡:这个不需要额外配置
|
|
|
- * 计数:需要设置比较规则和数值
|
|
|
- * 计时:需要设置比较规则和时间
|
|
|
- * 比较规则:大于、小于、大于等于、小于等于
|
|
|
+* 结算规则
|
|
|
|
|
|
- 3. (已开发)删除任务
|
|
|
+ * 普通结算-满足比较条件就给予奖励,比较条件:大于等于、小于等于
|
|
|
|
|
|
- 4. (已开发)打卡
|
|
|
+ * 额外奖励-满足基本之后,打一次卡就有一次额外奖励
|
|
|
|
|
|
- 5. (已开发)补打卡
|
|
|
+ * 分段式结算
|
|
|
|
|
|
- 对于不同的打卡类型,都是默认直接完成打卡
|
|
|
+ 阶梯区间1-不同区间有不同的结算奖励
|
|
|
|
|
|
- 如果完全没有打过卡:按照当时的打卡规则,直接生成一条新的打卡记录和结算记录
|
|
|
+ 阶梯区间2-不同区间有不同的结算奖励
|
|
|
|
|
|
- 如果打过卡但是未完成的
|
|
|
+ 以此类推
|
|
|
|
|
|
- * 对于单次打卡:不存在这种情况
|
|
|
- * 对于计数打卡:修改打卡记录的数据并记录修改值和对应的状态位,修改结算记录并记录修改值和对应的状态位
|
|
|
- * 对于计时打卡:修改打卡记录的数据并记录修改值和对应的状态位,修改结算记录并记录修改值和对应的状态位
|
|
|
+ * 前置式结算-有一个起步时间,过了这个时间才会真正有结算奖励
|
|
|
+ * 完美式结算-在指定时间段范围内,只要有一个没有打卡则全部失败
|
|
|
|
|
|
- 6. (已开发,待自测)误打卡撤销
|
|
|
|
|
|
- 有两种情况:
|
|
|
|
|
|
- 1. 当天撤销
|
|
|
+#### 积分账户
|
|
|
|
|
|
- 对于单次打卡:直接删除打卡记录即可
|
|
|
+* 基本户:用于结算积分转入,或者兑换奖励
|
|
|
|
|
|
- 对于计数打卡:直接扣减次数(-1)即可,次数变成0即删除打卡记录
|
|
|
+* 一般户:专项专用,只能兑换指定奖励
|
|
|
|
|
|
- 对于计时打卡:直接删除打卡记录即可,然后重新再打卡即可
|
|
|
|
|
|
- 2. (这种情况应该不存在,打卡当时应该就能即时处理不会留到结算后)~~结算后撤销,对于不同的打卡类型,都是默认直接没有打过卡~~
|
|
|
|
|
|
- ~~删除对应记录,根据对应任务反向计算即可,并记录修改值和对应的状态位~~
|
|
|
+### 按页面划分
|
|
|
|
|
|
- 7. (已开发)归档
|
|
|
|
|
|
- 8. (已开发)针对单一任务查询时间范围内的打卡信息
|
|
|
|
|
|
- 显示内容:具体到天是否已打卡、打卡记录、打卡统计(打卡次数、全勤率)
|
|
|
+#### 当前任务视图(主页)
|
|
|
|
|
|
- 注意:这里在表增加一个状态值辅助判断
|
|
|
+1. 查询当前待使用的积分数、刮刮卡的投入与产出、已消耗积分数与总积分数的比值
|
|
|
|
|
|
-* 奖励
|
|
|
+2. 查询当前用户待打卡的打卡任务列表
|
|
|
|
|
|
- 1. (已开发)查询当前用户拥有的奖励数
|
|
|
+ 显示内容:任务名称、任务描述、奖励数、全勤奖励标识、周末奖励标识、本周打卡记录,今日打卡情况
|
|
|
|
|
|
- 显示内容:总奖励数、已领取奖励数、待领取奖励数
|
|
|
+ 说明:今日打卡情况未完成时的状态,根据不同的打卡类型有不同的显示
|
|
|
|
|
|
- 2. (已开发,全部领取需要前端部分支持)领取奖励(部分领取、一次性全部领取)
|
|
|
+ * 打卡类型:单次打卡,未完成则显示“完成”
|
|
|
+ * 打卡类型:计数,未完成则显示“计数”,并且显示当前已打卡次数
|
|
|
+ * 打卡类型:计时,未完成则显示“计时”,并且显示当前已记录的打卡时间
|
|
|
|
|
|
- 说明:全部领取功能通过前端页面支持,后端不需要额外开发
|
|
|
+3. 新建打卡任务
|
|
|
|
|
|
- 3. (已开发)按时间范围查询当前用户的领取奖励记录
|
|
|
|
|
|
-* 刮刮乐
|
|
|
|
|
|
- 1. (已开发)查询当前用户的投入刮刮乐信息
|
|
|
+#### 任务列表
|
|
|
|
|
|
- 显示内容:投入金额、中奖金额
|
|
|
+1. 查询打卡任务列表
|
|
|
|
|
|
- 2. (已开发)追加投入金额记录/中奖记录
|
|
|
+2. 新建/编辑打卡任务
|
|
|
|
|
|
- 3. (已开发)撤销投入金额记录/中奖记录
|
|
|
+ * 需要要任务排序功能
|
|
|
+ * 任务显示控制,可以控制过了某个时间点才出现,不要一下子就把当天的都列出来
|
|
|
|
|
|
- 4. (已开发)按时间范围的刮刮乐查询记录
|
|
|
+3. 删除任务
|
|
|
|
|
|
- 显示内容:投入金额记录、中奖记录
|
|
|
+4. 打卡
|
|
|
|
|
|
-* 结算
|
|
|
+5. 补打卡
|
|
|
|
|
|
- 1. (已完成)手动运维接口,可以指定具体结算日期
|
|
|
- 2. (已完成)按时间范围查询当前用户的结算记录
|
|
|
+ 对于不同的打卡类型,都是默认直接完成打卡
|
|
|
|
|
|
-* 系统
|
|
|
+ 如果完全没有打过卡:按照当时的打卡规则,直接生成一条新的打卡记录和结算记录
|
|
|
|
|
|
- 1. (已开发,待自测)每晚自动结算
|
|
|
+ 如果打过卡但是未完成的
|
|
|
+
|
|
|
+ * 对于单次打卡:不存在这种情况
|
|
|
+ * 对于计数打卡:修改打卡记录的数据并记录修改值和对应的状态位,修改结算记录并记录修改值和对应的状态位
|
|
|
+ * 对于计时打卡:修改打卡记录的数据并记录修改值和对应的状态位,修改结算记录并记录修改值和对应的状态位
|
|
|
+
|
|
|
+6. 误打卡撤销
|
|
|
+
|
|
|
+ 有两种情况:
|
|
|
+
|
|
|
+ 1. 当天撤销
|
|
|
+
|
|
|
+ 对于单次打卡:直接删除打卡记录即可
|
|
|
+
|
|
|
+ 对于计数打卡:直接扣减次数(-1)即可,次数变成0即删除打卡记录
|
|
|
+
|
|
|
+ 对于计时打卡:直接删除打卡记录即可,然后重新再打卡即可
|
|
|
+
|
|
|
+ 2. (这种情况应该不存在,打卡当时应该就能即时处理不会留到结算后)~~结算后撤销,对于不同的打卡类型,都是默认直接没有打过卡~~
|
|
|
+
|
|
|
+ ~~删除对应记录,根据对应任务反向计算即可,并记录修改值和对应的状态位~~
|
|
|
+
|
|
|
+7. 归档
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 打卡任务详情页
|
|
|
+
|
|
|
+针对单一任务查询时间范围内的打卡信息
|
|
|
+
|
|
|
+显示内容:具体到天是否已打卡、打卡记录、打卡统计(打卡次数、全勤率)
|
|
|
+
|
|
|
+注意:这里在表增加一个状态值辅助判断
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 数据
|
|
|
+
|
|
|
+1. 图表-积分变动表(增加、消耗)
|
|
|
+2. 图表-任务完成数
|
|
|
+3. 图表-某一天完成的打卡任务(通过日历选中)
|
|
|
+4. 图表-新用户,特权用户专属,看一下新用户的增加率
|
|
|
+5. 打卡任务的年视图的统计功能
|
|
|
+6. 增加刮刮乐刮次数的平均中奖记录、投入与产出比
|
|
|
+7. 增加自定义报表,能够自主选择是否显示报表
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 积分商城
|
|
|
+
|
|
|
+1. 兑换奖励列表(名称、所需积分),
|
|
|
+
|
|
|
+ 已知奖励:
|
|
|
+
|
|
|
+ * 双色球:增加号码自动生成
|
|
|
+
|
|
|
+ * 大乐透:增加号码自动生成
|
|
|
+
|
|
|
+ * 刮刮乐
|
|
|
+
|
|
|
+2. 创建奖励
|
|
|
+
|
|
|
+3. 删除奖励
|
|
|
+
|
|
|
+4. 兑换奖励
|
|
|
+
|
|
|
+5. 创建一般户
|
|
|
+
|
|
|
+6. 一般户关联指定奖励
|
|
|
+
|
|
|
+7. 删除一般户,删除时要把与指定奖励的关联关系也删除,并且把积分转入一般户
|
|
|
+
|
|
|
+8. 一般户与基本户的积分互转,需要记录对应的转积分日志
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 用户中心
|
|
|
+
|
|
|
+1. 微信用户登录,简单记录昵称和openId即可
|
|
|
+
|
|
|
+2. 昵称修改
|
|
|
+
|
|
|
+3. 注销
|
|
|
+
|
|
|
+4. 免责声明页面
|
|
|
+
|
|
|
+5. 关于我们页面
|
|
|
+
|
|
|
+6. 结算日志:按时间范围查询当前用户的结算记录
|
|
|
+
|
|
|
+7. 查询当前用户拥有的奖励数
|
|
|
+
|
|
|
+ 显示内容:总奖励数、已领取奖励数、待领取奖励数
|
|
|
+
|
|
|
+ 9. 按时间范围查询当前用户的领取奖励记录
|
|
|
+
|
|
|
+9. 查询当前用户的投入刮刮乐信息
|
|
|
+
|
|
|
+ 显示内容:投入金额、中奖金额
|
|
|
+
|
|
|
+10. 追加投入金额记录/中奖记录
|
|
|
+
|
|
|
+11. 撤销投入金额记录/中奖记录
|
|
|
+
|
|
|
+12. 按时间范围的刮刮乐查询记录
|
|
|
+
|
|
|
+ 显示内容:投入金额记录、中奖记录
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 系统
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+##### 定时任务
|
|
|
+
|
|
|
+1. 自动结算定时任务
|
|
|
+2. 自动打卡定时任务,要考虑怎么分辨没有打卡的问题
|
|
|
+3. 自动兑换定时任务
|
|
|
+4. 自动归档定时任务
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+##### 运维接口
|
|
|
+
|
|
|
+1. 清除缓存
|
|
|
+2. 调起定时任务
|
|
|
+3. 手动结算接口,需要防止重复手动结算
|
|
|
|
|
|
|
|
|
|