现状
目前市面上过磅软件基本和十年前的没有什么变化,基本还都是C/S模式,这里的C/S不是Client/Server,而是Client/SQL Server,本地装一个SQL Server数据库,安全稳定都谈不上,客户也是真不懂,花大钱买的软件无法更新,没有售后,不能跟随业务变化进行优化升级。
云智磅ERP是钉钉上架的一款SaaS模式的过磅软件,以每年收取服务费方式对客户提供优质服务。
云智磅目前版本也是C/S模式,这里的S是直接调用Web服务器,electron做底座,界面用Vue开发的,客户端原来用C#写过一个,后来用QT写过一个,相同的缺点,界面有些丑,技术栈多,不利于小团队做,
底座提供自动更新、打印、控制IO设备、车号识别、视频预览、抓拍图片、语音播报及读取仪表串口数据功能。
Vue编写无人值守过磅业务逻辑部分,用状态机控制过磅流程,Vue页面部署在远端服务器,如果有功能更新,修补Bug,无需重新打包客户端,直接刷新页面即可。
存在的问题
- 客户端过磅业务逻辑在客户端软件中,很多数据没有上云,仅仅是将最终过磅记录发送到服务器,磅重变化历史数据丢失。
- 客户端电脑容易发生故障,经常有断网、串口松动、客户端电脑中毒等问题。 目前不能实时查看客户过磅情况,对客户端电脑健康状况无法监控。
- 无法对客户端过磅端发送数据,不能做干预和操控。
重构
过磅云端微服务
- WebSocket服务
- 打印模板(需要从base中移到weigh中)
- 创建管理客户端,管理设备信息、配置管理(需要从v1中移到weight中)
- 过磅业务
服务端采用COLA框架,通过负载均衡保证分布式高可用。
electron底座功能
- 自动更新
- 根据DeviceName读取setting配置
- 打印(串口打印、web模板打印)
- io控制器
- 车号识别(海康、post请求)
- 语音播报
- 重量串口数据
web过磅页面功能:
- aliyunIot,是否可以移到底座?
- 封装打印?(能否移到底座)
- 图片上传?(能否移到底座,调用sdk抓拍?)
- 称重数据解析(能否移到底座)
阿里云物联网平台
- 提供设备属性变更、事件上报、状态变更等消息队列服务。
- 为云端提供与设备通讯协议。
- 简化物联网设备开发难度,提供物模型及物模型SDK。
云智磅ERP是钉钉上架的一款SaaS模式的过磅软件,8个人的小团队。