You've already forked FrameTour-BE
feat(notify): 添加批量查询用户授权余额功能
- 新增批量查询用户授权余额接口 /api/mobile/notify/auth/batch-remaining - 实现批量检查用户对多个模板的授权记录功能 - 添加景区所有场景及模板列表查询接口并支持缓存 - 优化授权记录查询性能,使用批量查询替代逐个查询 - 新增批量查询请求对象 BatchRemainingCountReq 和响应对象 WechatSubscribeAllScenesResp - 在数据层添加批量查询用户授权记录的 SQL 映射 - 实现缓存管理机制,支持所有场景模板配置的缓存读写与清理
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
package com.ycwl.basic.model.mobile.notify.req;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 批量查询用户授权余额请求
|
||||
*
|
||||
* @Author: System
|
||||
* @Date: 2026/01/10
|
||||
*/
|
||||
@Data
|
||||
public class BatchRemainingCountReq {
|
||||
|
||||
/**
|
||||
* 通知模板ID列表(微信 wechatTemplateId)
|
||||
*/
|
||||
@NotEmpty(message = "模板ID列表不能为空")
|
||||
private List<String> templateIds;
|
||||
|
||||
/**
|
||||
* 景区ID
|
||||
*/
|
||||
@NotNull(message = "景区ID不能为空")
|
||||
private Long scenicId;
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package com.ycwl.basic.model.mobile.notify.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 景区所有场景及其订阅消息模板列表(静态配置,不含用户授权信息)
|
||||
* 用户授权信息通过 /api/mobile/notify/auth/batch-remaining 接口获取
|
||||
*
|
||||
* @Author: System
|
||||
* @Date: 2026/01/10
|
||||
*/
|
||||
@Data
|
||||
public class WechatSubscribeAllScenesResp {
|
||||
|
||||
private Long scenicId;
|
||||
|
||||
private List<SceneWithTemplates> scenes;
|
||||
|
||||
@Data
|
||||
public static class SceneWithTemplates {
|
||||
/**
|
||||
* 场景标识
|
||||
*/
|
||||
private String sceneKey;
|
||||
|
||||
/**
|
||||
* 该场景下的模板列表
|
||||
*/
|
||||
private List<StaticTemplateInfo> templates;
|
||||
}
|
||||
|
||||
/**
|
||||
* 静态模板信息(不含用户授权信息,可缓存)
|
||||
*/
|
||||
@Data
|
||||
public static class StaticTemplateInfo {
|
||||
/**
|
||||
* 逻辑模板键(业务固定)
|
||||
*/
|
||||
private String templateKey;
|
||||
|
||||
/**
|
||||
* 微信订阅消息模板ID(tmplId)
|
||||
*/
|
||||
private String wechatTemplateId;
|
||||
|
||||
/**
|
||||
* 前端展示标题
|
||||
*/
|
||||
private String title;
|
||||
|
||||
/**
|
||||
* 前端展示描述
|
||||
*/
|
||||
private String description;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user