业务场景:用于在金蝶EAS客户端消息中心中的即时消息。
通过代码可以给特定用户发送通知消息,用户登录系统后在消息中心可以查看到。
-
/**
-
* 系统通知,用于后台
-
* @param ctx 上下文
-
* @param sender 发送人(用户名称)
-
* @param title 消息标题
-
* @param body 消息内容
-
* @param receiver 接收人(用户主键,多个时用分号分割)
-
*
-
*/
-
public static void notice(Context ctx, String sender, String title, String body, String receiver){
-
SenderAgent service = SenderAgent.getSenderAgent();
-
Message message = MessageFactory.newMessage("kingdee.workflow");
-
Locale[] locales = getContextLocale(ctx);
-
for(int i = 0; i < locales.length; i++){
-
// 此处循环设置多语言消息
-
Locale locale = locales[i];
-
message.setLocaleStringHeader("sender", sender, locale); //发送人名称
-
message.setLocaleStringHeader("title", title, locale); //消息标题
-
message.setLocaleStringHeader("body", body, locale); //消息内容
-
}
-
message.setIntHeader("type", MsgType.NOTICE_VALUE); //消息类型,通知
-
message.setIntHeader("bizType", MsgBizType.XITONGOFFICE_VALUE); //业务类型
-
message.setIntHeader("sourceStatus", MsgSourceStatus.EMPTY_VALUE); //任务状态
-
message.setIntHeader("priority", MsgPriority.HIGH_VALUE); //优先级
-
message.setStringHeader("databaseCenter", ctx.getAIS()); //数据中心
-
message.setStringHeader("solution", ctx.getSolution()); //解决方案
-
message.setStringHeader("receiver", receiver); //接收人
-
service.sendMessage(message);
-
}
-
/**
-
* 系统通知,用于后台
-
* @param ctx 上下文
-
* @param sender 发送人(用户名称)
-
* @param title 消息标题
-
* @param body 消息内容
-
* @param receiver 接收人(用户主键,多个时用分号分割)
-
*
-
*/
-
public static void notice(Context ctx, String sender, String title, StringBuffer body, String receiver){
-
SenderAgent service = SenderAgent.getSenderAgent();
-
Message message = MessageFactory.newMessage("kingdee.workflow");
-
Locale[] locales = getContextLocale(ctx);
-
for(int i = 0; i < locales.length; i++){
-
// 此处循环设置多语言消息
-
Locale locale = locales[i];
-
message.setLocaleStringHeader("sender", sender, locale); //发送人名称
-
message.setLocaleStringHeader("title", title, locale); //消息标题
-
message.setLocaleStringHeader("body", body.toString(), locale); //消息内容
-
}
-
message.setIntHeader("type", MsgType.NOTICE_VALUE); //消息类型,通知
-
message.setIntHeader("bizType", MsgBizType.XITONGOFFICE_VALUE); //业务类型
-
message.setIntHeader("sourceStatus", MsgSourceStatus.EMPTY_VALUE); //任务状态
-
message.setIntHeader("priority", MsgPriority.HIGH_VALUE); //优先级
-
message.setStringHeader("databaseCenter", ctx.getAIS()); //数据中心
-
message.setStringHeader("solution", ctx.getSolution()); //解决方案
-
message.setStringHeader("receiver", receiver); //接收人
-
service.sendMessage(message);
-
}