赵长远
摘要:固定资产管理是企业中的一个重要组成部分,固定资产具有数量大、种类多、价值高、使用周期长、使用地点分散、管理难度大等特点。固定资产信息多由各部门资产管理员进行维护,存放地点填写不规范,非管理员用户无法明确其当前存放位置,盘点难度大,并且表格数据不够直观。经过调研之后主要研究了基于ThingJS平台的资产管理系统的设计,结合公司资产管理方式设计了一款有关资产管理的3D可视化web应用,ThingJS是一款面向物联网的3D可视化开发平台。
关键词:thingjs;3d;资产管理;可视化;web
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)35-0059-02
随着社会信息化程度的不断提高,计算机表格已无法满足大多数的资产管理场景需求,传统的表格维护,内容艰涩难懂,缺乏有效地可视化分析手段。随着WEB3D技术的快速发展,用户不再需要安装特定的应用,通过浏览器就可以快速访问3D场景,通过WEB3D技术可以实现对资产的可视化、智能化、人性化的创新管理。
管理的信息化、可视化是提升管理水平的一个重要方法,通过可视化、信息化的管理手段,可以实现管理的灵活高效,使用可视化、信息化的方式管理资产,能够实现提高资产管理的效率、准确获得资产使用状态数据、更加直观的位置信息以及追踪资产信息的变更轨迹等。
1 ThingJS平台概述
ThingJS是一款物联网可視化PssS开发平台,帮助物联网开发商轻松集成3D可视化界面。ThingJS名称源于物联网In-ternet of Things(IoT)中的Thing(物),ThingJS使用当今最热门的JavaScript语言进行开发。不仅可以针对单栋或多栋建筑组成的园区场景进行可视化开发,搭载丰富插件后,也可以针对地图界面场景进行开发。ThingJS广泛应用于数据中心、仓储、学校、医院、安防、预案等多种领域。
2 基于ThingJS平台的资产管理系统分析
2.1总体设计目标
这个系统主要为资产管理员以及普通用户提供了一个固定资产和易耗品的信息查询以及服务功能。根据企业实际需求,进行了详细的需求分析,这个系统提供了企业的各个园区的3D模型展示、资产存放位置定位、资产信息变更记录、地区统计、部门统计、语音介绍、易耗品的资产追踪等相关的功能,通过3D界面,建立与真实设备一致的3D模型,让资产管理更直观易用,快速定位目标设备、设备信息和资产状况,提升资产管理效率。
2.2系统架构
这个系统采用了基于JavaWeb的软件架构,采用前后端分离的开发模式,前端使用ThingJS提供3D场景的可视化支持,使用layui搭建整体页面,使用echarts图表化展示统计信息。后端使用JAX-RS、JPA、Hibernate等技术提供系统业务支持,使用讯飞语音生成语音介绍文件。
其中3D场景使用了ThingJS提供的CamBuilder工具进行搭建,通过三维实时互动技术,在数字化世界中构建一个真实世界的仿真场景。图例如下:
2.3主要功能模块
3D资产管理系统包括七大功能模块:
1)园区展示:对企业的主要园区进行3D园区搭建,在web页面中展示园区的整体概况,语音播放园区简介以及园区资产统计信息,可进入各个单独的建筑物,展示建筑楼层概况。可进入楼层,语音播报楼层相关简介信息,展示各个房间的分布情况,进入房间级别,可展示当前房间内资产详细信息。可通过人、部门、设备类型等相关信息,查询资产的分布情况,快速定位资产所在位置。
2)地区统计:实时统计所有资产在各园区的分布情况,包括园区中所有资产的数量、总额、资产所属部门等数据统计信息,可展开某地区的资产详情,通过资产存放地点信息快速定位资产在3D场景中的位置。
3)部门统计:统计各个部门的人员情况,及其人员关联的资产信息,可在3D场景中展示部门或人员的管理资产的地理位置分布。可通过姓名和资产编号检索管理的资产列表。
4)设备统计:实时展示资产按部门或设备类型分类统计信息,如:销售部使用的固定资产的资产总值、资产总数等,展示不同设备类型的资产总值、资产总数等。并且可以筛选指定部门和指定设备类型来查看数量金额统计、部门比例统计、位置统计以及设备列表等。
5)耗品统计:耗品资产区别于固定资产单独处理,这个部分统计功能同“设备统计”相似。其中在耗品列表中,可以选中部分耗品添加资产追踪任务,在资产追踪中会实时展示这个追踪任务关联耗品的状态信息、存放地点信息以及信息变更轨迹等等。
6)资产追踪:展示了当前用户关联的所有耗品追踪任务,可实时查看任务追踪的资产信息、设备使用状态和设备地点分布,并且可筛选指定的部门和设备类型,查看其状态变化和地点变化。可对任务中的耗品数据进行导出查看耗品的详细变更过程。
7)帮助功能:帮助功能中包含了对整个系统的介绍、界面简介、功能介绍以及操作流程等等,可以帮助用户快速熟悉这个系统的使用。
2.4 3D资产管理系统的UI设计
前端UI部分使用了经典模块化前端UI框架Layui设计了页面主体,并使用了Bootstrap定义页面相关组件,搭配JQuery和animate.css设计页面交互,使用echarts可视化资产统计信息。由于3D场景模块属于ThingJS项目,需单独部署,在主体页面中通过iframe引用3D场景页面,并使用HTML5提供的postMessage接口与嵌在iframe中的3D页面进行数据通信,例如:用户在3D场景中进入园区、进入建筑物、进入楼层时都可以通知主页面响应相关操作。页面是基于单页面应用进行设计的,没有页面跳转,局部刷新,提升了用户体验。由于3D场景渲染需要较多资源和时间,系统在用户首次进入系统时,就开始加载3D场景中的资源并进行缓存,减少用户首次进入3D场景页面的加载时间。