System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及信息处理,尤其涉及一种数据导出方法、装置、设备及存储介质。
技术介绍
1、目前在对报表进行查询后通常是通过手动下载的方式进行数据导出,或通过单独配置数据的方式将查询数据推送给相应的人员,但是这两种数据导出方式难以满足复杂的业务场景(如需推送多个人员的场景)。
2、可见,现有技术还有待改进和提高。
技术实现思路
1、为了克服现有技术的不足,本专利技术的目的在于提供一种数据导出方法、装置、设备及存储介质,其可自动化对数据进行提取、处理和分发,提高数据导出的效率,整个流程无需用户手动干预,操作简便,降低了人为因素的影响。
2、本专利技术第一方面提供了一种数据导出方法,包括:获取用户需求信息,并根据用户需求信息进行模板配置和推送配置,以得到模板配置数据和推送配置数据;获取用户查询指令,并根据用户查询指令获取相应的sql文件数据;根据模板配置数据对sql文件数据进行文件转换,以得到excel文件数据;根据excel文件数据生成推送信息,并根据推送配置数据对推送信息进行推送处理。
3、可选的,在本专利技术第一方面的第一种实现方式中,所述获取用户需求信息,并根据用户需求信息进行模板配置和推送配置,以得到模板配置数据和推送配置数据,包括:获取用户需求信息,并从用户需求信息中提取得到模板需求信息和推送需求信息;根据模板需求信息对初始sheet页面配置页面样式和功能函数,以得到模板配置数据;根据推送需求信息对初始推送任务配置推送频次和推送人员信息,以得
4、可选的,在本专利技术第一方面的第二种实现方式中,所述获取用户查询指令,并根据用户查询指令获取相应的sql文件数据,包括:获取用户查询指令,并从用户查询指令中获取sql查询语句和api接口地址;利用requests库调用api接口地址所对应的服务端,通过pycryptodome模块获取服务端的连接字符串,并基于sqlite3和连接字符串建立加密传输通道;通过sql查询语句和加密传输通道从服务端定位到相应的文件位置,并提取得到sql文件数据。
5、可选的,在本专利技术第一方面的第三种实现方式中,所述根据模板配置数据对sql文件数据进行文件转换,以得到excel文件数据,包括:从sql文件数据中提取出数据元素,并对数据元素进行整合处理和格式化处理,以得到预处理数据;从预处理数据中提取出sql插入元素,并根据模板配置数据将sql插入元素插入至预设的excel模板文件中,以形成excel插入文件;对excel插入文件进行文件渲染,以得到excel文件数据。
6、可选的,在本专利技术第一方面的第四种实现方式中,所述从预处理数据中提取出sql插入元素,并根据模板配置数据将sql插入元素插入至预设的excel模板文件中,以形成excel插入文件,包括:从模板配置数据中提取出合并逻辑规则,并基于合并逻辑规则生成纵向合并逻辑和横向合并逻辑;基于openpyxl库将sql插入元素写入预设的excel模板文件中,以得到初始excel文件;基于纵向合并逻辑和横向合并逻辑对初始excel文件进行合并处理,以得到excel插入文件。
7、可选的,在本专利技术第一方面的第五种实现方式中,所述对excel插入文件进行文件渲染,以得到excel文件数据,包括:从excel插入文件中确定合计行的位置,并对该合计行进行背景配置;对背景配置后的excel插入文件中的数据值进行比较,对满足预设序列的数据值进行颜色标记;对颜色标记后的excel插入文件进行边框修正,以得到excel修正文件;从excel插入文件中提取出同类的数据值,并根据该同类的数据值生成图表数据;对excel修正文件和图表数据进行自动排版,以得到excel文件数据。
8、可选的,在本专利技术第一方面的第六种实现方式中,所述根据excel文件数据生成推送信息,并根据推送配置数据对推送信息进行推送处理,包括:根据用户查询指令获取相应的时间戳信息,并根据该时间错信息生成推送名称信息;通过pil图像处理库将excel文件数据的格式转换为图片格式,并对图片格式的excel文件数据叠加预设的水印信息,以得到传输内容信息;根据推送名称信息对传输内容信息进行名称修改,以得到上传文件;通过加密算法对上传文件进行加密处理,利用http post接口将加密后的上传文件存储至预设存储端,并获取预设存储端所反馈的下载链接;根据下载链接和预设推送模板生成推送信息;根据推送配置数据获取相关人员的api接口地址,并根据推送信息和各个api接口地址进行推送处理。
9、本专利技术第二方面提供了一种数据导出装置,包括:配置模块,用于获取用户需求信息,并根据用户需求信息进行模板配置和推送配置,以得到模板配置数据和推送配置数据;查询模块,用于获取用户查询指令,并根据用户查询指令获取相应的sql文件数据;转换模块,用于根据模板配置数据对sql文件数据进行文件转换,以得到excel文件数据;推送模块,用于根据excel文件数据生成推送信息,并根据推送配置数据对推送信息进行推送处理。
10、可选的,在本专利技术第二方面的第一种实现方式中,所述配置模块包括:提取单元,用于获取用户需求信息,并从用户需求信息中提取得到模板需求信息和推送需求信息;第一配置单元,用于根据模板需求信息对初始sheet页面配置页面样式和功能函数,以得到模板配置数据;第二配置单元,用于根据推送需求信息对初始推送任务配置推送频次和推送人员信息,以得到推送配置数据。
11、可选的,在本专利技术第二方面的第二种实现方式中,所述查询模块包括:获取单元,用于获取用户查询指令,并从用户查询指令中获取sql查询语句和api接口地址;加密单元,用于利用requests库调用api接口地址所对应的服务端,通过pycryptodome模块获取服务端的连接字符串,并基于sqlite3和连接字符串建立加密传输通道;定位单元,用于通过sql查询语句和加密传输通道从服务端定位到相应的文件位置,并提取得到sql文件数据。
12、可选的,在本专利技术第二方面的第三种实现方式中,所述转换模块包括:预处理单元,用于从sql文件数据中提取出数据元素,并对数据元素进行整合处理和格式化处理,以得到预处理数据;元素单元,用于从预处理数据中提取出sql插入元素,并根据模板配置数据将sql插入元素插入至预设的excel模板文件中,以形成excel插入文件;渲染单元,用于对excel插入文件进行文件渲染,以得到excel文件数据。
13、可选的,在本专利技术第二方面的第四种实现方式中,所述元素单元包括:逻辑部,用于从模板配置数据中提取出合并逻辑规则,并基于合并逻辑规则生成纵向合并逻辑和横向合并逻辑;写入部,用于基于openpyxl库将sql插入元素写入预设的excel模板文件中,以得到初始excel文件;合并部,用于基于纵向合并逻辑和横向合并逻辑对初始excel文件进行合并处理,以得到excel插入文件。
14、可选的,在本专利技术第二方面的第本文档来自技高网...
【技术保护点】
1.一种数据导出方法,其特征在于,包括:
2.根据权利要求1所述的数据导出方法,其特征在于,所述获取用户需求信息,并根据用户需求信息进行模板配置和推送配置,以得到模板配置数据和推送配置数据,包括:
3.根据权利要求1所述的数据导出方法,其特征在于,所述获取用户查询指令,并根据用户查询指令获取相应的SQL文件数据,包括:
4.根据权利要求1所述的数据导出方法,其特征在于,所述根据模板配置数据对SQL文件数据进行文件转换,以得到EXCEL文件数据,包括:
5.根据权利要求4所述的数据导出方法,其特征在于,所述从预处理数据中提取出SQL插入元素,并根据模板配置数据将SQL插入元素插入至预设的EXCEL模板文件中,以形成EXCEL插入文件,包括:
6.根据权利要求4所述的数据导出方法,其特征在于,所述对EXCEL插入文件进行文件渲染,以得到EXCEL文件数据,包括:
7.根据权利要求1所述的数据导出方法,其特征在于,所述根据EXCEL文件数据生成推送信息,并根据推送配置数据对推送信息进行推送处理,包括:
9.一种数据导出设备,其特征在于,所述数据导出设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-7中任一项所述数据导出方法的各个步骤。
...【技术特征摘要】
1.一种数据导出方法,其特征在于,包括:
2.根据权利要求1所述的数据导出方法,其特征在于,所述获取用户需求信息,并根据用户需求信息进行模板配置和推送配置,以得到模板配置数据和推送配置数据,包括:
3.根据权利要求1所述的数据导出方法,其特征在于,所述获取用户查询指令,并根据用户查询指令获取相应的sql文件数据,包括:
4.根据权利要求1所述的数据导出方法,其特征在于,所述根据模板配置数据对sql文件数据进行文件转换,以得到excel文件数据,包括:
5.根据权利要求4所述的数据导出方法,其特征在于,所述从预处理数据中提取出sql插入元素,并根据模板配置数据将sql插入元素插入至预设的excel模板文件中,...
【专利技术属性】
技术研发人员:赵珂,苏战营,洪月,黄子轩,李晓军,朱立诚,
申请(专利权)人:上海乾臻信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。