现在有这个业务类型于发单子
客户发送一条派单任务 比如有10个用户(团队) 一个任务只能有一个用户进行接受 客户发送派单任务 然后发个消息通过微信公众号通知用户 这边用户只有5分钟时间进行接单如果接单了这个任务就结束了如果在5分钟内没有接单 就自动发送第二个用户接单了就完成了。
然后客户有新的任务就要从第三个用户进行通知 就这样进行依次通知】
如果这个任务10个用户都没有接单就挂起通知客户让他重新派单
怎么保证这个通知用户信息不能短了?
有人做过这个业务吗?
现在有这个业务类型于发单子
客户发送一条派单任务 比如有10个用户(团队) 一个任务只能有一个用户进行接受 客户发送派单任务 然后发个消息通过微信公众号通知用户 这边用户只有5分钟时间进行接单如果接单了这个任务就结束了如果在5分钟内没有接单 就自动发送第二个用户接单了就完成了。
然后客户有新的任务就要从第三个用户进行通知 就这样进行依次通知】
如果这个任务10个用户都没有接单就挂起通知客户让他重新派单
怎么保证这个通知用户信息不能短了?
有人做过这个业务吗?
不能短了是什么意思?
这个场景有很多思路可以解决
说个思路,你可以在缓存里面定义一个map,key为任务单号,value为接单客户号
当新来一个单时,缓存里新建一个映射,并想id为1的客户派单,并在此时创建一个定时任务,定时5分钟
如果5分钟内1接单了,在缓存删除次记录
5分钟后定时任务触发,查找缓存,此订单有记录说明没人接,重复上一步派单,并再度生成一个定时任务,如果没有记录则不进行操作
当定时任务发现客户派完了,就反馈重新派单