用友政务表格技术开发案例:如何搭建预算一体表格系统

表格技术在财务和财政系统开发中得到了越来越广泛的应用。对于政务系统而言,处理性能、标准化编程接口和与主流前端框架的兼容度是系统开发者首要解决的问题,借助SpreadJS表格控件技术,从根本上解决了系统性能和产品易用性问题,为行政事业单位的用户提供了与 Excel 操作几乎一致的预算一体化产品。

用友政务预算一体化云平台简介

用友政务预算一体化云平台有效推动了全面预算制度改革,提升了财政信息化的支撑能力,创新地提出了“集中管控、分级运营”的产品设计思想,并建成了完整的技术中台、业务中台和数据中台。

用友政务表格技术开发案例:如何搭建预算一体表格系统

云平台固化了财政部及省财政标准规范,确保了规范标准的贯彻执行,并以管控的方式,让地方财政在上级财政的规范标准框架下,扩展形成本级财政规范标准,使各级财政可以在受控模式下,独立地对本级的一体化系统进行运营管理。

表格技术在该项目中的实践演示

预算一体化云平台包含基础信息库、项目库、预算编审和 表查询四个核心功能模块,这些功能模块均应用了SpreadJS表格控件技术,实现了高性能的数据计算、查询和展示。

用友政务表格技术开发案例:如何搭建预算一体表格系统

1. 基础信息录入表配置模型

用友政务表格技术开发案例:如何搭建预算一体表格系统

该模型用于维护云平台中的人员信息,借助SpreadJS表格控件技术,用友政务实现了动态列扩展和复杂多重表头设计。

2. 基础信息录入表展示

用友政务表格技术开发案例:如何搭建预算一体表格系统

该表保存了大量基础信息数据,在不借助高性能表格技术的前提下,超过一万行就会造成系统卡顿,用友政务通过使用葡萄城的SpreadJS表格控件,二次封装实现了系统分页和多层表头数据绑定,有效解决了性能问题。

3. 预算编制录入表配置模型

用友政务表格技术开发案例:如何搭建预算一体表格系统

预算一体化云平台的其他功能模块,如项目库申 、 表查询等,将于2020年10月14 日14:00的公开课分享中予以演示,欢迎大家 名参加,共同交流。

表格技术在该项目中的核心应用

1、 借助SpreadJS表格控件,实现格式化数据存储,完成前后端数据转换。

  • 表格SSJSON文件后端存储方案

    1. 关系型数据库ORACLE、达梦数据库使用CLOB字段存储

    2. 为了加快读取使用REDIS数据库作为缓存

  • 表格SSJSON文件前端存储方案
    1. 使用indexDB存储,要加上检查同步更新机制
    2. 第三方的封装控件使用开源的LocalForge来调用,非常方便
  • 表格SSJSON对象转换
    1. 尽量不要使用fastJson进行json到Bean转换,如果使用尽量使用高版本
    2. 建议使用JackSon进行转换,特别是对于复杂类型转换基本没有问题

用友政务表格技术开发案例:如何搭建预算一体表格系统

3、 结合SpreadJS可视化设计器,减少大量重复编码和测试,打通前端平台化开发的捷径。

用友政务表格技术开发案例:如何搭建预算一体表格系统

用友政务表格技术开发案例:如何搭建预算一体表格系统

4、 嵌入SpreadJS,实现表格数据的前端生成与导出,提升系统性能。

  1. 使用SpreadJS在前端生成数据的优点:

    • 减少服务端压力,提升系统性能
    • 基于SpreadJS表格控件,可以操作任意区域改变和合并样式
    • 利用基本接口改变部分区域或者进行大数据量时,计算几乎达到秒级
  2. SpreadJS在前端生成表格数据的方法:
    • 利用ssjson模板方式
    • 封装组件方式
    • 自由展现方式(基于SpreadJS的worksheet编程实现)
  3. 大数据量表格数据导出的要点:
    • 设置表格的style样式时,使用namedstyle方式会大量减少ssjson的大小,这样就不会在执行spread.toJson时导致浏览器崩溃(实测:30列表头,5万行数据不存在问题)
    • 结合后端java组件GcExcel生成Excel文件,以流的方式导出文件

表格技术在该项目搭建中体现的价值

  1. 统一基础数据:SpreadJS 是一款高度类似 Excel 的表格控件,可在线导入、导出xlsx文件,因此,通过SpreadJS保存的数据在Excel中也可正常使用。云平台以此为基础,建立了全国统一的逻辑库表及要素,平台基础数据符合三年规划业务规范和技术标准,为省级向财政部 送数据提供支撑。

  2. 大集中模式:用友财政云平台支持省财政系统与市县财政系统建设按时间、技术标准、软件应用进行统一,在物理上形成 “数据大集中”的模式,满足省财政厅统计查询各市县财政局数据的需求,使数据价值得到有效利用。

  3. 微服务架构:依靠SpreadJS纯前端组件的特性,用友财政云平台采用了微服务架构建设,将原有财政一体化业务拆分为几十个微服务,使系统具备了低成本快速扩容、新服务灵活发布、“不停服”变更、适应智能运维等优点。在应用设计方面,借助SpreadJS高性能的计算引擎和处理速度,系统并发处理能力和负载处理能力均得到提升,在保证性能的前提下,能够满足未来五年的交易高峰量。

  4. 智能运维:财政云平台提供统一的分级分区域运维能力,运用灵活的方式构建运维团队,为财政信息化建设提供全面的支撑,通过建立省级集中智能运维体系,化解大集中带来的集中化运维压力。

结语

借助高性能表格控件技术SpreadJS,用友政务在贯彻财政部关于推进预算管理一体化建设的工作要求下,紧抓业务技术标准规范这个关键,以核心业务管理要素为切入点,以微服务架构、前端开发技术为依托,打造了预算一体化云平台。

通过该平台,用友政务推动了全面深化预算制度改革,提升了财政信息化支撑能力,实现了以全省大集中的方式,对财政资金的全生命周期管理和动态监控,助力财政部门打造出新一代“数字财政”系统!

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月6日
下一篇 2021年1月6日

相关推荐

发表回复

登录后才能评论