Beispiel #1
0
 def send_msg_v1(self, user_id, eid, content):
     """
     发送消息
     :param user_id:
     :param eid:
     :param content:
     :return:
     """
     try:
         user = UserDao.get_user_by_user_id(user_id)
         add_emails = []
         if user.role == User.Role.MANAGER:
             # 发消息人是管理员, 给所有人发送
             users = UserDao.get_all_users()
             for user_ in users:
                 email = self.send_msg(user_id, '系统管理员', user_.id, content)
                 add_emails.append(email)
         elif user.role == User.Role.STUDENT:
             # 发消息人是老师, 给当前选实验的人发送
             students = UserDao.get_all_student()
             for student in students:
                 join_list = json.loads(student.join_experiments)
                 if eid in join_list:
                     # 当前用户选修了该实验
                     email = self.send_msg(user_id, user.username,
                                           student.id, content)
                     add_emails.append(email)
         db.session.bulk_save_objects(add_emails)
         db.session.commit()
     except Exception as e:
         db.session.rollback()
         raise Exception(str(e))
Beispiel #2
0
 def get_user_infos(self):
     users = UserDao.get_all_users()
     res = []
     for user in users:
         res.append({
             'id': user.id,
             'username': user.username,
             'role': User.Role.__label__.get(user.role, '未知'),
             'contacts': user.contacts if user.contacts else "无"
         })
     return res