Beispiel #1
0
 def mail_db_order(self, instance, mail_action, personnel, source_app):
     mail_list = self.get_mail_list(instance)
     data_dict = copy.deepcopy(instance.__dict__)
     for field in ['_state', 'createtime', 'updatetime']:
         data_dict.pop(field)
     send_mail.delay(mail_list=mail_list,
                     personnel=personnel.username,
                     instance_id=instance.id,
                     remark=instance.remark,
                     status=instance.status,
                     data_dict=data_dict,
                     source_app=source_app,
                     desc_cn=mail_action.desc_cn)
Beispiel #2
0
 def mail_inception(self, instance, mail_action, personnel, source_app):
     if (instance.env == self.env_prd) and mail_action.value:
         mail_list = self.get_mail_list(instance)
         send_mail.delay(
             mail_list=mail_list,
             personnel=personnel.username,
             instance_id=instance.id,
             remark=instance.remark,
             sql_content=instance.sql_content,
             db_name=instance.db.name,
             status=instance.status,
             source_app=source_app,
             desc_cn=mail_action.desc_cn
         )
Beispiel #3
0
 def mail(self, sqlobj, mailtype):
     if sqlobj.env == self.env_prd:  # 线上环境,发邮件提醒
         username = self.request.user.username
         treater = sqlobj.treater  # 执行人
         commiter = sqlobj.commiter  # 提交人
         mailto_users = [treater, commiter]
         mailto_users = list(
             set(mailto_users))  # 去重(避免提交人和执行人是同一人,每次收2封邮件的bug)
         mailto_list = [
             u.email for u in User.objects.filter(username__in=mailto_users)
         ]
         # 发送邮件,并判断结果
         send_mail.delay(mailto_list, username, sqlobj.id, sqlobj.remark,
                         mailtype, sqlobj.sql_content, sqlobj.db.name)
Beispiel #4
0
 def mail(self, sqlobj, mail_type):
     mail_action = MailActions.objects.get(name=mail_type)
     if (sqlobj.env == self.env_prd) and mail_action.value:
         user = self.request.user
         treater = sqlobj.treater
         commiter = sqlobj.commiter
         admin_mail = user.admin_mail
         mailto_users = [treater, commiter, admin_mail]
         mailto_users = list(set(mailto_users))
         mailto_list = [
             u.email for u in User.objects.filter(username__in=mailto_users)
         ]
         send_mail.delay(mailto_list, user.username, sqlobj.id,
                         sqlobj.remark, mail_type, sqlobj.sql_content,
                         sqlobj.db.name)
Beispiel #5
0
 def mail(self, instance, mail_type, personnel):
     try:
         mail_action = MailActions.objects.get(name=mail_type)
     except Exception:
         return
     if (instance.env == self.env_prd) and mail_action.value:
         commiter = instance.commiter
         treater = instance.treater
         user = User.objects.get(username=commiter)
         admin_mail = user.admin_mail.username if user.admin_mail else None
         mail_users = [commiter, treater, admin_mail]
         mail_list_extend = self.get_extend_mail_list(user)
         mail_list = [
             u.email for u in User.objects.filter(username__in=mail_users)
         ]
         mail_list.extend(mail_list_extend)
         mail_list = list(set(mail_list))
         send_mail.delay(mail_list, personnel.username, instance.id,
                         instance.remark, mail_type, instance.sql_content,
                         instance.db.name)