需求:

在总部邮箱出现问题的时候,邮件系统依然可以内部使用

实现思路

  1. 添加一张离线表T_Offline,

字段为id,offline,updateDate,offline默认为0,标识非离线状态,1为离线状态

  1. 超级管理员在系统管理中,可以控制离线表.
  2. 所有涉及到在线业务的,添加离线逻辑,根据离线表数据判断.
  3. 如果当前是离线状态, 发送邮件的时候, 不发送到队列,直接保存到数据库.
  4. 前台写邮件的时候,页面添加标识,比如[内部] 表示当前发送的为内部信息,并且有提示按钮,提示内部信息不会同步到邮箱.而且如果收件人不在用户列表中,不处理.
  5. mongodb中的Email表,添加字段, offline,默认为0,如果为空和0,则认为是正常邮件,1为离线邮件
  6. 发送内部消息的时候,直接把userEmail设置为对应的收件人.这样所有收件人都能看到这个消息了.
  7. 发件程序不需要做任何修改,收件程序每次接收邮件的时候检查下offline表,如果为离线状态,不做任何动作,正常状态下进行从服务器的邮件接收.

时间预估(预估时间包括部署测试)

  • 收件程序(武志强):2天
  • 发件逻辑(陈友):一周
  • 系统管理(陈友):2天
Comments
Write a Comment