本模块为健康管理小程序提供后端服务支持,包含登录、用户管理、微信功能等核心功能。
jeecgboot-boot-applet/
├── src/main/java/org/jeecg/modules/
│ ├── applet/ # 小程序核心模块
│ │ ├── controller/ # 控制器层
│ │ │ ├── AppletLoginController.java # 登录控制器
│ │ │ ├── AppletUserController.java # 用户控制器
│ │ │ └── WxAppletController.java # 微信控制器
│ │ └── service/ # 服务层
│ │ ├── AppletLoginService.java # 登录服务
│ │ ├── AppletUserService.java # 用户服务
│ │ └── WxAppletService.java # 微信服务
│ └── common/
│ └── wxUtils/ # 微信工具类
│ ├── WxHttpUtils.java # 微信HTTP工具
│ └── WxHttpClientUtil.java # 微信HTTP客户端
└── src/main/resources/
└── application-applet.yml # 小程序配置文件
POST /applet/login/wxLogin
- 微信小程序登录POST /applet/login/getPhoneNumber
- 获取用户手机号POST /applet/login/refreshToken
- 刷新tokenPOST /applet/login/logout
- 退出登录GET /applet/login/checkLogin
- 检查登录状态// 小程序登录
wx.login({
success: (res) => {
if (res.code) {
// 发送 res.code 到后台换取 openId, sessionKey, unionId
wx.request({
url: 'http://your-domain/applet/login/wxLogin',
method: 'POST',
data: {
code: res.code
},
success: (result) => {
console.log('登录成功', result.data);
// 保存token
wx.setStorageSync('token', result.data.result.token);
}
});
}
}
});
GET /applet/user/info
- 获取用户信息POST /applet/user/update
- 更新用户信息GET /applet/user/health
- 获取健康信息POST /applet/user/health/update
- 更新健康信息GET /applet/user/member
- 获取会员信息// 获取用户信息
wx.request({
url: 'http://your-domain/applet/user/info',
method: 'GET',
data: {
userId: 'applet_user_id'
},
header: {
'Authorization': 'Bearer ' + wx.getStorageSync('token')
},
success: (result) => {
console.log('用户信息', result.data);
}
});
POST /applet/wx/qrcode
- 获取小程序码POST /applet/wx/subscribe/send
- 发送订阅消息GET /applet/wx/config
- 获取小程序配置GET /applet/wx/check
- 检查微信服务器GET /applet/wx/user/info
- 获取微信用户信息// 获取小程序码
wx.request({
url: 'http://your-domain/applet/wx/qrcode',
method: 'POST',
data: {
scene: 'user_id_123',
page: 'pages/index/index'
},
success: (result) => {
console.log('小程序码', result.data);
}
});
在 application-applet.yml
中配置微信小程序信息:
applet:
wechat:
mpAppId: your_applet_appid
mpAppSecret: your_applet_secret
pay:
mchId: your_mch_id
mchKey: your_mch_key
可以通过环境变量覆盖配置:
export WECHAT_MP_APPID=your_applet_appid
export WECHAT_MP_APPSECRET=your_applet_secret
export WECHAT_MCH_ID=your_mch_id
export WECHAT_MCH_KEY=your_mch_key
可以通过配置文件控制功能模块的启用:
applet:
features:
login: true # 登录功能
userInfo: true # 用户信息功能
healthInfo: true # 健康信息功能
member: true # 会员功能
subscribe: true # 订阅消息功能
qrcode: true # 小程序码功能
applet:
security:
tokenExpireTime: 7200 # token过期时间(秒)
refreshTokenExpireTime: 604800 # 刷新token过期时间(秒)
enableTokenBlacklist: true # 启用token黑名单
所有小程序接口都使用了 @IgnoreAuth
注解,表示不需要登录验证。在实际使用中,可以根据需要添加token验证。
applet:
logging:
level: INFO
logWxApi: true # 记录微信API调用日志
logUserAction: true # 记录用户操作日志
applet:
cache:
accessTokenExpire: 7000 # 微信access_token缓存时间(秒)
userInfoExpire: 3600 # 用户信息缓存时间(秒)
qrcodeExpire: 86400 # 小程序码缓存时间(秒)
当前版本使用模拟数据,实际使用时需要:
applet_user
applet_health_info
applet_member_info
已集成以下微信API:
/sns/jscode2session
/wxa/business/getuserphonenumber
/cgi-bin/token
/wxa/getwxacodeunlimit
/cgi-bin/message/subscribe/send
所有接口都包含完整的异常处理:
如需添加新功能,可以:
service
包下创建新的服务类controller
包下创建对应的控制器mvn clean package -Dmaven.test.skip=true
java -jar jeecgboot-boot-applet.jar --spring.profiles.active=prod
FROM openjdk:8-jre-alpine
COPY jeecgboot-boot-applet.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/app.jar"]
http://your-domain/swagger-ui.html
如有问题,请联系开发团队或查看项目文档。