msg.py 992 B

123456789101112131415161718192021222324252627282930
  1. from typing import Optional
  2. from sql.msg import get_msg_list, get_msg_count, write_msg, get_user_msg_count
  3. import core.user
  4. def load_message_list(limit: Optional[int] = None, offset: Optional[int] = None, show_secret: bool = False):
  5. msg = get_msg_list(limit=limit, offset=offset, show_secret=show_secret)
  6. ret = []
  7. for i in msg:
  8. ret.append(Message(i[0], core.user.User(i[2], None, None, i[1]), i[3], i[5], i[4]))
  9. return ret
  10. class Message:
  11. def __init__(self, msg_id, auth: "core.user.User", context, secret, update_time):
  12. self.msg_id = msg_id
  13. self.auth = auth
  14. self.context = context
  15. self.secret = secret
  16. self.update_time = update_time
  17. @staticmethod
  18. def get_msg_count(auth: "core.user" = None):
  19. if auth is None:
  20. return get_msg_count()
  21. return get_user_msg_count(auth.get_user_id())
  22. def create_msg(self):
  23. return write_msg(self.auth.get_user_id(), self.context, self.secret)