Class ThreadTransferService
java.lang.Object
com.bytedesk.service.thread_transfer.ThreadTransferService
会话转接业务服务类
负责处理会话转接的核心业务逻辑
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class转接接受上下文 -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AgentRestServiceprivate final org.modelmapper.ModelMapperprivate final NoticeServiceprivate final ThreadRestServiceprivate final ThreadTransferTimeoutServiceprivate final TopicCacheServiceprivate final TopicRestServiceprivate final ThreadTransferRepositoryprivate final UidUtilsprivate final UserRestService -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaccept(ThreadTransferRequest request) 接受转接请求private ThreadTransferEntitybuildTransferEntity(ThreadTransferRequest request, UserEntity user) 构建转接实体cancel(ThreadTransferRequest request) 取消转接请求create(ThreadTransferRequest request, UserEntity user) 创建转接请求private ThreadTransferEntity获取并验证转接实体private NoticeRequestgetNoticeRequestByStatus(MessageStatusEnum status, String extra, String receiverUserUid, String orgUid) 根据状态获取通知请求private StringgetReceiverUserUid(UserProtobuf receiver) 获取接收者用户UIDprocessTransferAccept(ThreadTransferRequest request, ThreadTransferEntity transferEntity) 处理转接接受的业务逻辑reject(ThreadTransferRequest request) 拒绝转接请求voidsendNotificationForCreate(ThreadTransferEntity transferEntity, String receiverUserUid, String orgUid) 发送创建转接的通知private voidsendTransferNotification(ThreadTransferEntity transferEntity, MessageStatusEnum status, String receiverUserUid, String orgUid) 发送转接通知timeout(ThreadTransferRequest request) 转接超时处理private ThreadEntityupdateThreadStatus(ThreadTransferEntity transferEntity, ThreadTransferStatusEnum status) 更新会话转接状态private voidupdateThreadTransferStatus(ThreadEntity threadEntity, ThreadTransferStatusEnum status) 更新会话转接状态private ThreadEntityvalidateThreadOwnership(String threadUid, String userUid) 验证会话所有权private voidvalidateTransferState(ThreadTransferEntity transferEntity) 验证转接状态,确保可以进行状态变更
-
Field Details
-
transferRepository
-
modelMapper
private final org.modelmapper.ModelMapper modelMapper -
uidUtils
-
noticeService
-
agentRestService
-
topicRestService
-
threadRestService
-
userRestService
-
topicCacheService
-
timeoutService
-
-
Constructor Details
-
ThreadTransferService
public ThreadTransferService()
-
-
Method Details
-
create
创建转接请求 -
accept
接受转接请求 -
reject
拒绝转接请求 -
cancel
取消转接请求 -
timeout
转接超时处理 -
sendNotificationForCreate
public void sendNotificationForCreate(ThreadTransferEntity transferEntity, String receiverUserUid, String orgUid) 发送创建转接的通知 -
getAndValidateTransferEntity
获取并验证转接实体 -
validateTransferState
验证转接状态,确保可以进行状态变更 -
updateThreadStatus
private ThreadEntity updateThreadStatus(ThreadTransferEntity transferEntity, ThreadTransferStatusEnum status) 更新会话转接状态 -
getReceiverUserUid
获取接收者用户UID -
sendTransferNotification
private void sendTransferNotification(ThreadTransferEntity transferEntity, MessageStatusEnum status, String receiverUserUid, String orgUid) 发送转接通知 -
getNoticeRequestByStatus
private NoticeRequest getNoticeRequestByStatus(MessageStatusEnum status, String extra, String receiverUserUid, String orgUid) 根据状态获取通知请求 -
processTransferAccept
private ThreadTransferService.TransferAcceptContext processTransferAccept(ThreadTransferRequest request, ThreadTransferEntity transferEntity) 处理转接接受的业务逻辑 -
validateThreadOwnership
验证会话所有权 -
buildTransferEntity
构建转接实体 -
updateThreadTransferStatus
更新会话转接状态
-