public interface UserMessageManager
限定符和类型 | 方法和说明 |
---|---|
void |
deleteReadMessage() |
void |
deleteSystemMessageByCategory(long userId,
int messageCategory)
根据消息分类清空人员系统消息
|
void |
deleteSystemMessageByUser(long userId)
清空人员系统消息
|
void |
deleteUserMessageForM3(java.util.List<java.lang.Long> ids)
没m3按id更新history已读状态时删除对应的usermessage
|
java.util.List<UserHistoryMessage> |
getAllSystemMessages(long userInternalID,
java.lang.String condition,
java.lang.String textfield,
java.lang.String textfield1)
获取当前全部的系统消息列表
|
java.util.List<UserHistoryMessage> |
getAllSystemMessages(long userInternalID,
java.lang.String condition,
java.lang.String textfield,
java.lang.String textfield1,
java.lang.Boolean isPage) |
java.util.List<UserHistoryMessage> |
getAllSystemMessages(long userInternalID,
java.lang.String condition,
java.lang.String textfield,
java.lang.String textfield1,
java.lang.Boolean isPage,
java.lang.String readType) |
int |
getCachedUserCount()
消息缓存中已缓存的用户个数
|
int |
getCommentZishu() |
java.util.Map<java.lang.String,java.lang.String> |
getMessageLinkTypes() |
java.lang.String |
getNewMessagesAndOnlineSize() |
int |
getNotReadSystemMessageCount(long userInternalID)
获取用户未读消息个数
|
java.util.List<UserHistoryMessage> |
getSystemHistoryMessages(FlipInfo fi,
java.util.Map<java.lang.String,java.lang.String> params)
根据条件获取人员历史消息
|
java.util.List<Ent_UserMessage> |
getUnresolvedMessagesForMB(long userInternalID) |
UserHistoryMessage |
getUserHistoryMsgById(java.lang.Long id)
根据历史消息id获取历史消息
|
java.lang.String |
getUserOnlineMessage() |
int |
getWaitingParseQLength()
获取等待解析的队列长度
|
int |
getWaitingSaveQLength()
获取等待入库的队列长度
|
void |
initMessageState() |
boolean |
isCachedUserMessage(long userInternalID)
用户消息是否被缓存
|
void |
processPcAndMobileOnlineAtSameTime(java.lang.Long userId,
java.lang.String pLang,
java.lang.String userAgentFrom,
java.util.Map<Constants.login_sign,OnlineUser.LoginInfo> loginInfoMapper,
java.lang.String loginType)
异步处理:登录时PC和移动端同时在线时的消息提醒
|
void |
removeAllMessages(long userInternalID)
清空我接收到的消息
|
void |
removeMessage(java.lang.String condition,
java.lang.Long longfield)
根据消息的保留时间或每人的最大消息数量清除消息
|
void |
removeMessage(java.lang.String startTime,
java.lang.String endTime)
根据消息阅读状态及时间段清除消息
|
void |
saveMessage(Ent_UserMessage msg)
保存消息
|
void |
savePatchHistory(java.util.List<UserHistoryMessage> ms)
批量保存历史消息记录
|
void |
sendMessage(UserMessage userMessage)
发送消息
|
void |
sendSystemMessage(MessageContent content,
ApplicationCategoryEnum messageCategroy,
long senderId,
java.util.Collection<MessageReceiver> receivers,
java.lang.Object... messageFilterArgs)
发送系统消息
实现策略:先调用异步任务接口TaskManager.sendTaskToQueue,然后由异步任务调度器调度消息解析器,然后写入消息表 |
void |
sendSystemMessage(MessageContent content,
ApplicationCategoryEnum messageCategroy,
long senderId,
MessageReceiver receiver,
java.lang.Object... messageFilterArgs)
发送系统消息
实现策略:先调用异步任务接口TaskManager.sendTaskToQueue,然后由异步任务调度器调度消息解析器,然后写入消息表 |
void |
sendSystemMessage(MessageContent content,
int messageCategroy,
long senderId,
java.util.Collection<MessageReceiver> receivers,
java.lang.Object... messageFilterArgs)
发送系统消息
实现策略:先调用异步任务接口TaskManager.sendTaskToQueue,然后由异步任务调度器调度消息解析器,然后写入消息表 |
void |
sendSystemMessage(MessageContent content,
int messageCategroy,
long senderId,
java.util.Date creationDate,
java.util.Collection<MessageReceiver> receivers,
java.lang.Object... messageFilterArgs)
发送系统消息
实现策略:先调用异步任务接口TaskManager.sendTaskToQueue,然后由异步任务调度器调度消息解析器,然后写入消息表 |
void |
startAyncEngine()
启动消息异步处理引擎
|
void |
stopAyncEngine()
停止消息异步处理引擎
|
void |
updateSystemMessageCountByCategory(long userId,
int messageCategory)
根据消息分类更新人员系统消息计数状态
|
void |
updateSystemMessageCountByUser(long userId)
更新人员系统消息计数状态
|
void |
updateSystemMessageState(long id)
根据消息ID更新系统消息未读状态
|
void |
updateSystemMessageStateByCategory(long userId,
int messageCategory)
根据消息分类更新人员系统消息未读状态
|
void |
updateSystemMessageStateByUser(long userId)
更新人员系统消息未读状态
|
void |
updateSystemMessageStateByUserAndReference(long userInternalID,
long referenceId)
更新指定用户指定业务的消息状态。
|
void initMessageState()
void deleteReadMessage()
java.util.List<UserHistoryMessage> getAllSystemMessages(long userInternalID, java.lang.String condition, java.lang.String textfield, java.lang.String textfield1) throws BusinessException
userInternalID
- 用户内部IDcondition
- 查询条件,默认为null,支持:用户姓名,消息内容,时间段textfield
- textfield1
- BusinessException
java.util.List<UserHistoryMessage> getAllSystemMessages(long userInternalID, java.lang.String condition, java.lang.String textfield, java.lang.String textfield1, java.lang.Boolean isPage) throws BusinessException
java.util.List<UserHistoryMessage> getAllSystemMessages(long userInternalID, java.lang.String condition, java.lang.String textfield, java.lang.String textfield1, java.lang.Boolean isPage, java.lang.String readType) throws BusinessException
void sendMessage(UserMessage userMessage) throws BusinessException
userMessage
- BusinessException
void sendSystemMessage(MessageContent content, ApplicationCategoryEnum messageCategroy, long senderId, MessageReceiver receiver, java.lang.Object... messageFilterArgs) throws BusinessException
content
- 消息体messageCategroy
- 消息所属应用分类
在com.seeyon.ctp.common.constants.ApplicationCategoryEnum中定义senderId
- 发送在和IDreceiver
- 接收者messageFilterArgs
- 消息转移的参数,与对应的UserMessageFilter对应BusinessException
ApplicationCategoryEnum
void sendSystemMessage(MessageContent content, ApplicationCategoryEnum messageCategroy, long senderId, java.util.Collection<MessageReceiver> receivers, java.lang.Object... messageFilterArgs) throws BusinessException
content
- 消息体messageCategroy
- 消息所属应用分类
在com.seeyon.ctp.common.constants.ApplicationCategoryEnum中定义senderId
- 发送在和IDreceivers
- 接收者messageFilterArgs
- 消息转移的参数,与对应的UserMessageFilter对应BusinessException
ApplicationCategoryEnum
void sendSystemMessage(MessageContent content, int messageCategroy, long senderId, java.util.Collection<MessageReceiver> receivers, java.lang.Object... messageFilterArgs) throws BusinessException
content
- 消息体messageCategroy
- 消息所属应用分类
在com.seeyon.ctp.common.constants.ApplicationCategoryEnum中定义
如果是插件,需要在插件定义文件中配置applicationCategory属性senderId
- 发送在和IDreceivers
- 接收者messageFilterArgs
- 消息转移的参数,与对应的UserMessageFilter对应BusinessException
ApplicationCategoryEnum
void sendSystemMessage(MessageContent content, int messageCategroy, long senderId, java.util.Date creationDate, java.util.Collection<MessageReceiver> receivers, java.lang.Object... messageFilterArgs) throws BusinessException
content
- 消息体messageCategroy
- 消息所属应用分类
在com.seeyon.ctp.common.constants.ApplicationCategoryEnum中定义
如果是插件,需要在插件定义文件中配置applicationCategory属性senderId
- 发送在和IDcreationDate
- 发送时间receivers
- 接收者messageFilterArgs
- 消息转移的参数,与对应的UserMessageFilter对应BusinessException
ApplicationCategoryEnum
void saveMessage(Ent_UserMessage msg) throws BusinessException
msg
- BusinessException
void removeAllMessages(long userInternalID) throws BusinessException
userInternalID
- BusinessException
void removeMessage(java.lang.String startTime, java.lang.String endTime) throws BusinessException
startTime
- endTime
- isRead
- BusinessException
void removeMessage(java.lang.String condition, java.lang.Long longfield) throws BusinessException
condition
- longfield
- BusinessException
java.lang.String getNewMessagesAndOnlineSize()
int getCommentZishu()
void updateSystemMessageStateByUserAndReference(long userInternalID, long referenceId)
userInternalID
- 用户IdreferenceId
- 业务标识int getWaitingSaveQLength()
int getWaitingParseQLength()
int getCachedUserCount()
boolean isCachedUserMessage(long userInternalID)
userInternalID
- java.util.List<Ent_UserMessage> getUnresolvedMessagesForMB(long userInternalID) throws BusinessException
java.lang.String getUserOnlineMessage() throws BusinessException
java.util.Map<java.lang.String,java.lang.String> getMessageLinkTypes()
void savePatchHistory(java.util.List<UserHistoryMessage> ms)
ms
- void processPcAndMobileOnlineAtSameTime(java.lang.Long userId, java.lang.String pLang, java.lang.String userAgentFrom, java.util.Map<Constants.login_sign,OnlineUser.LoginInfo> loginInfoMapper, java.lang.String loginType)
userId
- pLang
- userAgentFrom
- loginInfoMapper
- UserHistoryMessage getUserHistoryMsgById(java.lang.Long id) throws BusinessException
id
- BusinessException
int getNotReadSystemMessageCount(long userInternalID) throws BusinessException
void deleteUserMessageForM3(java.util.List<java.lang.Long> ids) throws BusinessException
ids
- BusinessException
void startAyncEngine()
void stopAyncEngine()
java.util.List<UserHistoryMessage> getSystemHistoryMessages(FlipInfo fi, java.util.Map<java.lang.String,java.lang.String> params) throws BusinessException
fi
- 分页信息params
- userId 人员ID
isAt @我的,1
isReply 回复我的,1
isTrack 跟踪事项的,1
important 重要程度值
senderIds 指定人id,以逗号分隔(领导的,指定他人)
templateIds 指定模板id,以逗号分隔BusinessException
void updateSystemMessageStateByUser(long userId) throws BusinessException
userId
- 人员IDBusinessException
void updateSystemMessageCountByUser(long userId) throws BusinessException
userId
- 人员IDBusinessException
void updateSystemMessageStateByCategory(long userId, int messageCategory) throws BusinessException
userId
- 人员IDmessageCategory
- 消息分类BusinessException
void updateSystemMessageCountByCategory(long userId, int messageCategory) throws BusinessException
userId
- 人员IDmessageCategory
- 消息分类BusinessException
void updateSystemMessageState(long id) throws BusinessException
id
- 消息IDBusinessException
void deleteSystemMessageByUser(long userId) throws BusinessException
userId
- 人员IDBusinessException
void deleteSystemMessageByCategory(long userId, int messageCategory) throws BusinessException
userId
- 人员IDmessageCategory
- 消息分类BusinessException