拍爱

rmessage.py 1.4KB

1234567891011121314151617181920212223242526272829303132333435
  1. # -*- coding: utf-8 -*-
  2. from message.models import SystemMessageDeleteInfo, SystemMessageReadInfo
  3. from utils.redis.connect import r
  4. from utils.redis.rkeys import SYSTEM_MESSAGE_DELETED_INFO, SYSTEM_MESSAGE_READ_INFO
  5. # 系统消息相关
  6. def set_system_message_read_info(user_id):
  7. """ 设置系统消息读取信息 """
  8. read_messages = SystemMessageReadInfo.objects.filter(user_id=user_id, status=True)
  9. read_message_ids = [msg.msg_id for msg in read_messages]
  10. r.setexjson(SYSTEM_MESSAGE_READ_INFO % user_id, r.REDIS_EXPIRED_ONE_MONTH, read_message_ids)
  11. return read_message_ids
  12. def get_system_message_read_info(user_id):
  13. """ 获取系统消息读取信息 """
  14. return r.getjson(SYSTEM_MESSAGE_READ_INFO % user_id, default='[]') or set_system_message_read_info(user_id)
  15. def set_system_message_delete_info(user_id):
  16. """ 设置系统消息删除信息 """
  17. deleted_messages = SystemMessageDeleteInfo.objects.filter(user_id=user_id, status=True)
  18. deleted_message_ids = [msg.msg_id for msg in deleted_messages]
  19. r.setexjson(SYSTEM_MESSAGE_DELETED_INFO % user_id, r.REDIS_EXPIRED_ONE_MONTH, deleted_message_ids)
  20. return deleted_message_ids
  21. def get_system_message_delete_info(user_id):
  22. """ 获取系统消息删除信息 """
  23. return r.getjson(SYSTEM_MESSAGE_DELETED_INFO % user_id, default='[]') or set_system_message_delete_info(user_id)