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 AgentRestService
private final org.modelmapper.ModelMapper
private final NoticeService
private final ThreadRestService
private final ThreadTransferTimeoutService
private final TopicCacheService
private final TopicRestService
private final ThreadTransferRepository
private final UidUtils
private final UserRestService
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaccept
(ThreadTransferRequest request) 接受转接请求private ThreadTransferEntity
buildTransferEntity
(ThreadTransferRequest request, UserEntity user) 构建转接实体cancel
(ThreadTransferRequest request) 取消转接请求create
(ThreadTransferRequest request, UserEntity user) 创建转接请求private ThreadTransferEntity
获取并验证转接实体private NoticeRequest
getNoticeRequestByStatus
(MessageStatusEnum status, String extra, String receiverUserUid, String orgUid) 根据状态获取通知请求private String
getReceiverUserUid
(UserProtobuf receiver) 获取接收者用户UIDprocessTransferAccept
(ThreadTransferRequest request, ThreadTransferEntity transferEntity) 处理转接接受的业务逻辑reject
(ThreadTransferRequest request) 拒绝转接请求void
sendNotificationForCreate
(ThreadTransferEntity transferEntity, String receiverUserUid, String orgUid) 发送创建转接的通知private void
sendTransferNotification
(ThreadTransferEntity transferEntity, MessageStatusEnum status, String receiverUserUid, String orgUid) 发送转接通知timeout
(ThreadTransferRequest request) 转接超时处理private ThreadEntity
updateThreadStatus
(ThreadTransferEntity transferEntity, ThreadTransferStatusEnum status) 更新会话转接状态private void
updateThreadTransferStatus
(ThreadEntity threadEntity, ThreadTransferStatusEnum status) 更新会话转接状态private ThreadEntity
validateThreadOwnership
(String threadUid, String userUid) 验证会话所有权private void
validateTransferState
(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
更新会话转接状态
-