1.一种订阅报表生成方法,所述方法包括:获取订阅报表列表,从订阅报表列表中读取报表标识;
当所述报表标识对应的订阅报表为附件报表时,查找所述报表标识对应的报表数据和报表模板,所述附件报表为需要生成报表附件的订阅报表;
查找所述报表标识对应的机构处理线程和机构组装线程,获取所述机构处理线程的线程数量;
根据所述报表模板和所述线程数量将所述报表数据拆分成报表模块,根据所述报表模块生成附件模块生成任务,将所述附件模块生成任务分配至所述机构处理线程中,所述机构处理线程用于对所述附件模块生成任务进行处理,得到附件模块,包括:获取各机构处理线程的待处理任务数;根据所述待处理任务数将各机构处理线程进行忙闲等级的划分;筛选出忙闲等级与预设处理等级匹配的机构处理线程作为附件报表的处理线程;统计筛选出的作为附件报表的处理线程的数量;根据报表模板中的需要生成的图表数量及所述作为附件报表的处理线程的数量,将报表数据进行拆分,拆分为数量与所述作为附件报表的处理线程的数量一致的报表模块;当图表数量大于所述作为附件报表的处理线程的数量时,将报表模板中的多个图表划分为一个报表模块;根据划分后的报表模块查找对应的原始报表数据,根据报表模块和报表模块对应的原始模块数据生成附件模块生成任务,并将附件模块生成任务分配至各机构处理线程中进行处理,得到附件模块;
将所述附件模块发送至所述机构组装线程,所述机构组装线程用于在所述附件模块对应的订阅报表的其他附件模块已到达时,将接收到所述附件模块进行组装生成订阅报表;
查找所述报表标识对应的机构标识;
当存在与所述机构标识对应的定制报表格式时,根据所述定制报表格式和所述订阅报表生成报表转换任务;
将所述报表转换任务发送至格式转换线程进行处理得到定制附件报表;
在所述订阅报表中添加所述定制附件报表。
2.根据权利要求1所述的方法,其特征在于,所述在所述订阅报表中添加所述定制附件报表之后,包括:
当根据所述报表标识判断出所述订阅报表为共享报表时,对所述订阅报表进行加密处理;
将加密后的订阅报表发送至共享服务器;
接收所述共享服务器生成的与所述加密后的订阅报表对应的第一报表访问链接,将所述第一报表访问链接发送至所述报表标识对应的终端。
3.根据权利要求1所述的方法,其特征在于,所述在所述订阅报表中添加所述定制附件报表之后,包括:
当根据所述报表标识判断出所述订阅报表为非共享报表时,根据所述订阅报表生成订阅邮件;
获取当前订阅邮件的数据传输量;
当所述数据传输量超过预设传输阈值时,获取当前邮件发送等待队列中的邮件数据量,根据所述邮件数据量计算出预估发送等待时长;
获取所述报表标识对应的订阅时间,根据所述订阅时间计算预留发送时长;
当所述预留发送时长大于所述预估发送等待时长时,将所述订阅邮件添加至所述邮件发送等待队列中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:当所述预留发送时长小于所述预估发送等待时长时,根据所述订阅报表生成第二报表访问链接,将所述第二报表访问链接发送至所述报表标识对应的终端;
根据所述预留发送时长将所述订阅邮件插入所述邮件发送等待队列中。
5.一种订阅报表生成装置,其特征在于,所述装置包括:列表获取模块,用于获取订阅报表列表,从订阅报表列表中读取报表标识;
报表信息查找模块,用于当所述报表标识对应的订阅报表为附件报表时,查找所述报表标识对应的报表数据和报表模板,所述附件报表为需要生成报表附件的订阅报表;
线程数量获取模块,用于查找所述报表标识对应的机构处理线程和机构组装线程,获取所述机构处理线程的线程数量;
任务分配模块,用于根据所述报表模板和所述线程数量将所述报表数据拆分成报表模块,根据所述报表模块生成附件模块生成任务,将所述附件模块生成任务分配至所述机构处理线程中,所述机构处理线程用于对所述附件模块生成任务进行处理,得到附件模块,包括:获取各机构处理线程的待处理任务数;根据所述待处理任务数将各机构处理线程进行忙闲等级的划分;筛选出忙闲等级与预设处理等级匹配的机构处理线程作为附件报表的处理线程;统计筛选出的作为附件报表的处理线程的数量;根据报表模板中的需要生成的图表数量及所述作为附件报表的处理线程的数量,将报表数据进行拆分,拆分为数量与所述作为附件报表的处理线程的数量一致的报表模块;当图表数量大于所述作为附件报表的处理线程的数量时,将报表模板中的多个图表划分为一个报表模块;根据划分后的报表模块查找对应的原始报表数据,根据报表模块和报表模块对应的原始模块数据生成附件模块生成任务,并将附件模块生成任务分配至各机构处理线程中进行处理,得到附件模块;
报表组装模块,用于将所述附件模块发送至所述机构组装线程,所述机构组装线程用于在所述附件模块对应的订阅报表的其他附件模块已到达时,将接收到所述附件模块进行组装生成订阅报表;
机构标识查找模块,用于查找所述报表标识对应的机构标识;
转换任务生成模块,用于当存在与所述机构标识对应的定制报表格式时,根据所述定制报表格式和所述订阅报表生成报表转换任务;
定制报表生成模块,用于将所述报表转换任务发送至格式转换线程进行处理得到定制附件报表;
定制报表添加模块,用于在所述订阅报表中添加所述定制附件报表。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:加密模块,用于当根据所述报表标识判断出所述订阅报表为共享报表时,对所述订阅报表进行加密处理;
加密报表发送模块,用于将加密后的订阅报表发送至共享服务器;
报表链接发送模块,用于接收所述共享服务器生成的与所述加密后的订阅报表对应的第一报表访问链接,将所述第一报表访问链接发送至所述报表标识对应的终端。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:邮件生成模块,用于当根据所述报表标识判断出所述订阅报表为非共享报表时,根据所述订阅报表生成订阅邮件;
传输量获取模块,用于获取当前订阅邮件的数据传输量;
等待时长预估模块,用于当所述数据传输量超过预设传输阈值时,获取当前邮件发送等待队列中的邮件数据量,根据所述邮件数据量计算出预估发送等待时长;
预留时长计算模块,用于获取所述报表标识对应的订阅时间,根据所述订阅时间计算预留发送时长;
邮件添加模块,用于当所述预留发送时长大于所述预估发送等待时长时,将所述订阅邮件添加至所述邮件发送等待队列中。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:第二链接发送模块,用于当所述预留发送时长小于所述预估发送等待时长时,根据所述订阅报表生成第二报表访问链接,将所述第二报表访问链接发送至所述报表标识对应的终端;
邮件插入模块,用于根据所述预留发送时长将所述订阅邮件插入所述邮件发送等待队列中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。