No Description

tea.yu 66a5caf719 修复BUG单WA04-59,新增天气功能,获取小孩接口增加返回天气,定位上报接口返回天气。 1 month ago
api-location b31fd8bac4 定位上报新增电量 3 months ago
api-message f3f96a0d4a 修复BUG单W301H-687-增加根据消息类型区分通知标题逻辑,增加根据消息类型白名单添加离线消息,调整IOS推送通道为生产环境并延长超时时间为60秒 1 month ago
api-user bb4c1f5f2f 修复BUG单-W301H-561,增加添加好友时返回对应结果类型 1 month ago
api-websocket 6e31f03062 修复W301H-598BUG,进出围栏告警无效问题 1 month ago
app-gateway dfcec9e717 暂时屏蔽与手机验证码相关业务;手表会话功能增加日志 5 months ago
business-application 66a5caf719 修复BUG单WA04-59,新增天气功能,获取小孩接口增加返回天气,定位上报接口返回天气。 1 month ago
business-common 66a5caf719 修复BUG单WA04-59,新增天气功能,获取小孩接口增加返回天气,定位上报接口返回天气。 1 month ago
business-domain 66a5caf719 修复BUG单WA04-59,新增天气功能,获取小孩接口增加返回天气,定位上报接口返回天气。 1 month ago
business-infrastructure 66a5caf719 修复BUG单WA04-59,新增天气功能,获取小孩接口增加返回天气,定位上报接口返回天气。 1 month ago
document 10b7a60385 消息保存 9 months ago
gradle 101ea463e9 部署 mirrors.cloud.tencent.com/ 9 months ago
.gitignore 65094cd4da 性别跟称呼 9 months ago
Makefile b8486c0ea7 端口冲突问题 9 months ago
README.md 10b7a60385 消息保存 9 months ago
build.gradle c56bef554f gps定位部分逻辑 6 months ago
gradlew b4789b3083 New Architecture 9 months ago
settings.gradle 8b966aedc3 改名 9 months ago

README.md

WA04

该项目架构从 COLA 5 的基础上进行了修改,主要修改了以下几个地方:

  • 项目布局发生了变化,不再是一个单一的项目,而是一个多模块的项目,每个模块都是一个独立的项目,可以单独运行,也可以作为一个模块被其他模块引用。
  • 项目的依赖管理发生了变化,使用 Gradle 进行依赖管理。
  • 没有使用 COLA 的组件库,我们自己构建了适合的组件库

结构变化

Infrastructure

基础实施层(Infrastructure Layer)

  1. Configuration: Springboot 的配置。
  2. DTO: 系统的传输对象,包含请求、响应还有数据库的Model。
  3. Adapter: 整个系统的对外的处理逻辑,里面有具体的技术细节,追求简化和剥离业务逻辑,要求跟逻辑区分。
  4. Repository 数据仓库,写 Mysql 数据的 Mapper,在 Mybatis 里叫 Mapper,在JPA里叫 Repository。

Api

接口层(Api Layer),负责提供和接受外部的请求比如 Restful,RabbitMQ Messaging

  1. api-websocket: 负责 Websocket 长链接的会话保持,处理简单的消息下行。
  2. api-user: 系统的认证和授权,还有用户相关的API提供,比如小孩相关、设备相关的信息CURD的接口。 api-user 拥有整个系统大部分的逻辑。
  3. api-message: 提供消息上行接口和拉取消息接口,消息从客户端HTTP接口产生后在 api-message 里RabbitMQ发送至消息队列。
  4. api-location: 系统定位服务处理定位相关业务逻辑,如电子围栏、IOT 定位。同时也拥有产生定位消息的能力。

架构图

img.png

路径上下文

img2.png

启动项目

TODO

Reference