|
@@ -502,6 +502,46 @@ class ReportPush(object):
|
|
|
finally:
|
|
|
return message
|
|
|
|
|
|
+ def report_push_test(self, task_key):
|
|
|
+ message = {}
|
|
|
+ try:
|
|
|
+ report_data = self.report_data_query(task_key)
|
|
|
+ message[1] = '数据查询成功:{}'.format(len(report_data))
|
|
|
+ time_rang = self.get_time_range(task_key)
|
|
|
+ xu = XlwtUtil()
|
|
|
+ send_info = xu.create_excel(report_data, time_rang, task_key)
|
|
|
+ message[2] = '报表文件生成成功'
|
|
|
+ email_util = EmailUtil()
|
|
|
+ title, content = self.get_title_content(task_key, time_rang)
|
|
|
+ logs = []
|
|
|
+ for value in send_info:
|
|
|
+ log_data = []
|
|
|
+ try:
|
|
|
+ if value[2]:
|
|
|
+ for mail in self.mails:
|
|
|
+ result = email_util.send_mail_by_admin(title, content, mail, value[2], value[3])
|
|
|
+ if result:
|
|
|
+ log_data = [value[0], value[1], value[2], 1, 'success!!!']
|
|
|
+ else:
|
|
|
+ result = email_util.send_mail_by_admin(title, content, mail, value[2], value[3])
|
|
|
+ if not result:
|
|
|
+ log_data = [value[0], value[1], value[2], -1, '第二次发送失败']
|
|
|
+ except Exception as e:
|
|
|
+ log_data = [value[0], value[1], value[2], -1, str(e)]
|
|
|
+ print(str(e))
|
|
|
+ logs.append(log_data)
|
|
|
+ message[3] = '邮件发送成功'
|
|
|
+ message['data'] = send_info
|
|
|
+ self.db.add_some(self.sql_6, logs)
|
|
|
+ self.db.close()
|
|
|
+ FileUtil.remove_files(7, xu.save_path)
|
|
|
+ except Exception as e:
|
|
|
+ print(str(e))
|
|
|
+ message['error'] = str(e)
|
|
|
+ pass
|
|
|
+ finally:
|
|
|
+ return message
|
|
|
+
|
|
|
def get_title_content(self, task_key, time_range):
|
|
|
if task_key in (1, 4):
|
|
|
return '移动案场订阅日报[{}]'.format(time_range[0]), '本期间内【{}】至【{}】的数据报告已经准备完成。请点击附件查阅。'.format(time_range[0], time_range[1])
|