1. 将bj_power_wms_client的前端代码、配置及网关逻辑全部迁移到bj_power_wms主项目 2. 删除原库房客户端相关的所有文件与配置 3. 更新README与部署文档,说明合并后的服务架构 4. 新增Web配置项支持自动打开浏览器开关,统一服务端口为8890
3.2 KiB
修订说明:本文档 2026-09-07 经确认修订——原项目E(库房客户端)并入项目C,其余内容保留原始说明。
项目构成:
一共有四个项目。这个项目分别是
项目A:bj_power_dashboard 项目a是一个看板系统,是一段H5的前端代码,它的数据来源于项目B,来源于MES系统。
项目B:bj_power_mes 项目B,MES系统是一个智能产线的控制系统。Go语言加vue代码。
项目C:bj_power_wms 项目C,WMS仓库系统。Go语言加vue代码,前后端一体(go:embed 内嵌前端,8890 一个服务同时提供页面与API)。
项目D:bj_power_workstation 项目D,12个工位终端软件,Go语言加vue代码。(单独项目因为有拧紧枪:丹尼科尔网络型控制器走 TCP/UDP 报文,浏览器读不了;且终端需离线可用——拧紧数据本地 SQLite 缓存、点击完成才上报 MES)。此项目的go,不谢任何业务,仅连接硬件设备采集数据
项目E:bj_power_wms_client 项目E,WMS仓库系统。Go语言加vue代码。(单独项目因为有扫码枪)。此项目的go,不谢任何业务,仅连接硬件设备采集数据
→ 项目E 已于 2026-09-07 并入项目C并删除。原因:库房扫码枪为 USB 键盘口(HID)设备,浏览器页面输入框直接读取,不需要独立的本地客户端程序;出入库两台台式机浏览器直接访问 WMS 8890 即可。
注意: 各项目通过api交互,并且写死 token ,模拟授权。有登录页面的项目的接口,要和项目之间交互的api分开。
注意,各项目都可以单独编译、单独部署。项目放在一个git,一个文件夹里。
整个厂房构成: 1、仓库,库房。有两台台式机,每个台式机一个显示屏。这两个工位分为出库和入库。两台电脑浏览器直接访问 WMS(项目C,页面+API一体),数据来源于wms系统;库房扫码枪为USB键盘口设备,页面输入框直接读取。 2、厂房大门口放着看板系统。也就是一个大显示器,还有一台主机。部署的是项目A。 3、自动产线有12个工位。一个工位,一个触控一体机。触控一体机上面安装着项目D。没有安装数据库,它的记忆数据来源于项目B。 4、3台pad,产线负责人手里面会拿一个iPad。这个iPad输入MES的地址,也就是项目B的前端地址。所以项目B的前端需要适配,自适应平板、手机、台式机。 5、WMS,项目c,也有一个显示器。可以显示,产线的状态也可以控制,包括工单、工件、AGV
补充: 1、 技术文档说:1台台式机,不是2台 ? 我说的是对的,两台 2、采纳:看板走Redis,MES业务走PostgreSQL,redis采用1分钟过期模式,业务变更会刷新Redis,如果没刷新也会过期,重新查数据库补充,防止击穿同一个redis的key只允许一个查询达到数据库 3、wms和mes,独立数据库。需要对方的数据是通过api查询 4、拧紧数据:分两部分,工位终端实时显示拧紧数据,并自己缓存(接受你的sqlite建议),点击完成时,才上报到mes。历史数据来源于mes,工位终端不存储数据。 5、半成品流转,提醒的好