V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
sym134
V2EX  ›  程序员

签到需要放入到积分任务内吗

  •  
  •   sym134 · 2020-12-09 09:47:44 +08:00 · 2340 次点击
    这是一个创建于 1474 天前的主题,其中的信息可能已经有所发展或是发生改变。

    参考别人 app 界面 积分任务里面包含有签到,根据这个猜测应该是有个积分任务表和任务完成表,签到需要涉及到 7 天 14 天分别不同奖励,那需要个签到表咯,

    但我感觉每天签到任务完成表和签到记录表,记录的几乎一样多,这样是不是不妥, 如果单独拆出签到,那就不需要记录任务完成,但前端给任务数据就需要单独查询签到状态,在组合到积分任务里面,

    想来想去还是问问论坛老司机都怎么设计的😄

    14 条回复    2020-12-09 17:42:15 +08:00
    securityCoding
        1
    securityCoding  
       2020-12-09 10:07:45 +08:00
    1.积分活动配置表
    2.签到记录表
    3.用户积分表
    不需要任务完成表,前端不用做复杂的逻辑,读积分接口

    用户->签到记录表 -> 签到事件消息 -> 积分活动规则计算(同一用户消息顺序消费) -> 命中则发放积分
    sym134
        2
    sym134  
    OP
       2020-12-09 10:15:27 +08:00
    你的意思是 我通过关联积分记录表查是否完成任务?
    abersheeran
        3
    abersheeran  
       2020-12-09 10:17:44 +08:00
    积分任务里包含签到,是为了让你签到的时候看到其他任务还可以做,从而提升用户活跃度。请不要把客户端 UI 设计和数据库设计混为一谈。
    sym134
        4
    sym134  
    OP
       2020-12-09 10:20:37 +08:00
    @securityCoding 你的意思是 我通过关联积分记录表查是否完成任务?
    sym134
        5
    sym134  
    OP
       2020-12-09 10:22:10 +08:00
    @abersheeran 从数据库来设想我也认同这个方式,只是给前端提供任务数据的时候需要单独查询签到完成状态在拼装在一块,对吧
    abersheeran
        6
    abersheeran  
       2020-12-09 10:26:21 +08:00
    @sym134 嗯,接口自己拼一下比让前端请求两个接口要快得多。
    securityCoding
        7
    securityCoding  
       2020-12-09 10:28:18 +08:00
    @sym134 积分记录和任务不会存在关联查询场景 , 积分来源有很多而完成积分活动发放积分只是其中一种, 一般对于账户类型的数据会有两张表 , 账户表和账户流水表

    积分活动规则计算过程则需要关联签到记录表
    securityCoding
        8
    securityCoding  
       2020-12-09 10:32:40 +08:00
    签到
    活动
    积分
    这三个是可独立的业务领域 , 不应该揉在一起
    zarte
        9
    zarte  
       2020-12-09 10:50:12 +08:00
    前端获取积分任务表---》获取可用任务列表---》循环获取任务状态--》返回
    Lemeng
        10
    Lemeng  
       2020-12-09 10:55:59 +08:00
    怎么方便怎么来,随大流
    vx812574395
        11
    vx812574395  
       2020-12-09 11:07:20 +08:00 via iPhone
    这个太有必要了?
    ios 可以借鉴 wetoo
    Android 端可以借鉴 v2lf
    用的好像都是 flutter?
    xuanbg
        12
    xuanbg  
       2020-12-09 11:22:47 +08:00
    要什么签到记录表,都是垃圾数据。每个用户记一个签到时间、连签天数、累计天数就行了,签到时间为空或早于今天 0 点就能签到,否则就是已签到。
    sym134
        13
    sym134  
    OP
       2020-12-09 11:34:18 +08:00
    @xuanbg 之前网上看到大牛就是你说这个方式,但我是担心前端要个签到历史,这怎么办呀
    xuanbg
        14
    xuanbg  
       2020-12-09 17:42:15 +08:00
    所以,要和产品去确认有没有查看签到历史这个需求,有的话是看几天。如果无限的话,就只能一条条记录了。如果是看一周,那你搞 7 个字段存就是了。总之,能不存记录就不存记录。记录无限增长,实在是太可怕了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1356 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 17:09 · PVG 01:09 · LAX 09:09 · JFK 12:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.