系统的活动业务写在何处,如何与普通业务区分?

1. 业务环境:

以一个文章管理系统为例(基于Laravel)
大致有如下功能:
文章模块
会员模块
例如:
1.某天产品跑过来:给系统增加一个【积分模块】,会员纠错1篇文章获得100积分,会员撰写一篇文章获得500积分。

我直接就撸起袖子开始写代码了

2.某天产品经理又跑过来:给系统增加一个【会员纠错3篇文章额外获得100积分的奖励活动】,

这时候我就犯难了

2. 问题描述:

临时活动肯定是有时间限制,好用就一直存在,如果不好用肯定会剔除掉或者关闭该活动,那我该如何实现该功能呢?这种临时活动在系统中一般肯定不止一个,是直接按平常功能直接开发,还是区分系统固有功能和临时活动,望大佬们给个解惑

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 11

可以使用 队列 、 模型事件 ,这样对后期功能的扩展和代码的可读性比较好。

1年前 评论
晓飞 (楼主) 1年前

功能代码的话,写适配器来来开发模块吧

1年前 评论
晓飞 (楼主) 1年前
晓飞 (楼主) 1年前
deatil (作者) 1年前

最简单的可以采用switch case

1年前 评论
晓飞 (楼主) 1年前

事件,在有这些操作时,发送事件,然后这些活动监听这些事件。上面有人提到了模型事件,找个也比可行,不过还是建议直接在业务里面去自定义事件。

1年前 评论

再抽一层,新增一个任务的模块 用于对应事件触发时的进度推动以及奖励发放

1年前 评论

多建一个会员纠错记录/任务的表

if $user 纠错记录==0

      他第一次进行纠错 ,就开个任务

if $user 在会员纠错记录中已有了
        就+1条记录

if $user 

满3条就给他结算分

大概会这样
我会用多一两张数字库表去完成,感觉数据都看得见,比较放心

应该是一张表是记录所有纠错的记录
另外再建一张,是类似关系表,满3就不加了

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!