物流园区、海关监管场所等场站需要对进出车辆进行管控,需要一套软硬件结合的系统,能够采集车辆信息并根据一定规则进行判断,是否允许车辆进出。
该系统主要功能有:
1.场站配置:定义场站基本信息;对于海关监管场所,场站编号由海关分配,在上报过车数据起到标识作用。
2.卡口配置:定义场站内每个卡口的基本信息;对于海关监管场所内的货车卡口,卡口编号由海关分配,在上报过车数据时起到标识作用。同时可配置卡口内的硬件信息,使系统可接收硬件上报数据或控制硬件。
3.白名单配置:对于大部分物流园区和海关监管场所内的行政卡口,一般只需要根据车牌号判定是否允许进出场站,该功能可录入允许进入场站的车牌号及其有效时间。
4.过卡查询:提供多种查询条件(车牌号、箱号、报关单号、卡口、时间等)查询历史过车记录,详情中可查看车牌号图片、箱号图片。
该系统功能路径如下:
1.系统部署完成后,依次录入场站信息、卡口信息。
2.按需录入白名单。
3.有车辆出入卡口时,卡口内架设的硬件自动采集车辆信息并上报,系统研判之后,控制卡口硬件给出反馈(打开道闸或者通过LED屏幕、喇叭提示不允许通过)。
4.按需查看过车记录。
该系统开发人员有2人,历时6个月,本人负责整体业务需求分析,架构设计,开发技术选型,以及主要开发工作。
该系统划分为3大组件:
1.管理平台前端:采用Vue3 + Element Plus技术栈,负责系统的管理和配置。 一个项目部署一套。
2.管理平台后端:采用Spring Boot + MyBatis Flex + Minio技术栈,负责系统的业务逻辑和数据存储。 一个项目部署一套。
3.硬件对接后端:采用Spring Boot + MyBatis Flex + LiteFlow技术栈,负责与硬件设备的对接。 一个项目部署与卡口数量相同的套数。
该系统立项时被要求设计为有以下特性:
1.高功能扩展性:同一功能需要适配不同厂商的设备,以便后续扩展和替换。
2.高业务灵活性:需要支持不同的过车业务场景,例如海关监管场所的货车卡口需要采集车牌号、箱号、重量,再经过海关API研判;而行政卡口只需要采集车牌号在系统内部白名单研判即可。
对于第一个特性,本人通过面向接口编程思想,将所有的业务功能都通过接口进行定义,相同功能的不同厂商设备实现同一种功能接口。
对于第二个特性,本人通过引入LiteFlow规则引擎,将功能按照实际业务需求进行编排,实现了高灵活性。