klxedu / blog

2 stars 0 forks source link

产品系统通知项目自定义实现过程 #42

Open songhuiqing88 opened 6 years ago

songhuiqing88 commented 6 years ago

通知/消息

<groupId>org.gtiles.components</groupId>
    <artifactId>gtiles-components-message</artifactId>

模型及模版配置

}

## 调用
### 界面调用
- 请求:/workbench/notifySender/send.json
- 参数
  -  modelCode   业务唯一编码
  -  bizId   业务ID
### 后台自动调用
- 使用 **org.gtiles.components.message.sender.service.INotifySender**接口的 **saveNotify**方法发送通知。
- 方法参数
  - **modelCode** 业务唯一编码,在INotifyBizService 的实现类中的support方法中定义的编码
  - **bizId** 业务ID,例如:班级ID、课程ID,在INotifyBizService 的实现类中的获取通知用户方法的参数

## 接口源代码参考
```java
/**
 * 通知业务Service
 * @author SHQ
 *
 */
public interface INotifyBizService {

    /**
     * 获取通知用户列表
     * @param params 参数序列,目前涉及业务ID
     * @return 用户ID数组
     */
    String[] getNotifyUsers(String... params);

    /**
     * 获取通知管理员用户列表
     * @param params 参数序列,目前涉及业务ID
     * @return 用户ID数组
     */
    String[] getNotifyAdminUsers(String... params);

    /**
     * 获取通知参数对象
     * @param params 参数序列,目前涉及业务ID
     * @return
     * 返回对象说明:<br>
     * 1、定义对象实现 {@link org.gtiles.components.message.sender.INotifyParam}接口<br>
     * 2、对象属性使用注解 {@code @NotifyParam}({@link org.gtiles.components.message.sender.annotation.NotifyParam}),其中key为参数标识,value为参数说明
     */
    INotifyParam getNofifyParam(String... params);

    /**
     * 是否支持
     * @param bizCode 新增业务唯一编码
     * @return
     */
    boolean support(String bizCode);
}