| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 | from mysql_db import MysqlDBfrom sql import Sqlfrom report_public_funs_utils import ReportPublicFunsUtils as rpfufrom mail_content_text import MailContentText;class JianYeReport(object):    """        建业报表数据处理    """    def __init__(self):        self.db = MysqlDB('bi_report')    def get_city_house_id(self):        return self.db.select(Sql.sql_1)    def get_report_customers(self):        return self.db.select(Sql.sql_2)    def get_mail_title(self, type, name):        """            获取邮件名称        :param type:1:项目,2:集团,3:区域        :param name: 项目 区域名称        :return:        """        month_day = rpfu.get_montho_day()        if type == 1:            return '[{}]{}数据报表'.format(month_day, name)        elif type == 2:            return '[{}]建业云集团数据报表'.format(month_day)        elif type == 3:            return '[{}]建业云{}数据报表'.format(month_day, name)    def get_mail_content(self, customer_type):        """            根据客户类型获取邮件正文        :param customer_type:        :return:        """        if customer_type == 2:            return MailContentText.text_1        else:            return '本期的数据报告已经准备完成,请点击附件查阅.'    def table_one_data(self):        """            表一中的数据是表二数据的汇总        :return:        """        pass    def table_two_data(self):        pass    def table_three_data(self):        pass    def user_data_volume_statistics(self, time_range, house_ids):        """            用户浏览量,人数,新增获客,新增获点数据统计        :param time_range:        :param house_ids:        :return:        """        # 1:总浏览量        result = []        data_1_1 = self.db.select(Sql.sql_3, [time_range[0], time_range[1], house_ids])        number_1_1 = data_1_1[0][0]        data_1_2 = self.db.select(Sql.sql_4, [time_range[0], time_range[1], house_ids])        number_1_2 = data_1_2[0][0]        number_1 = rpfu.add(number_1_1, number_1_2)        result.append(number_1)        # 2: 总浏览人数        data_2 = self.db.select(Sql.sql_5, [time_range[0], time_range[1], house_ids, time_range[0], time_range[1], house_ids])        number_2 = data_2[0][0]        result.append(number_2)        # 3:新增获客        time_1 = time_range[0] + ' 00:00:00'        time_2 = time_range[1] + ' 23:59:59'        data_3 = self.db.select(Sql.sql_6, [time_1, time_2, house_ids, time_1, time_2, house_ids])        number_3 = data_3[0][0]        result.append(number_3)        # 4:新增获电        data_4 = self.db.select(Sql.sql_7, [time_1, time_2, house_ids, house_ids, time_1, time_2])        number_4 = data_4[0][0]        result.append(number_4)        return result    def send_mail_to_customer(self, task_key):        """            统计数据推送给客户        :param: task_key        :return:        """        passif __name__ == '__main__':    pass
 |