Class VisitorThreadService
java.lang.Object
com.bytedesk.core.base.BaseRestService<VisitorThreadEntity,VisitorThreadRequest,VisitorThreadResponse>
com.bytedesk.service.visitor_thread.VisitorThreadService
@Service
public class VisitorThreadService
extends BaseRestService<VisitorThreadEntity,VisitorThreadRequest,VisitorThreadResponse>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.modelmapper.ModelMapper
private final ThreadRestService
private final UidUtils
private final VisitorThreadRepository
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
autoRemindAgentOrCloseThread
(List<ThreadEntity> threads) TODO: 频繁查库,待优化 1.convertToResponse
(VisitorThreadEntity entity) create
(VisitorThreadRequest request) createAgentThread
(VisitorRequest visitorRequest, AgentEntity agent, String topic) createRobotThread
(VisitorRequest visitorRequest, RobotEntity robot, String topic) createWorkgroupThread
(VisitorRequest visitorRequest, WorkgroupEntity workgroup, String topic) void
delete
(VisitorThreadRequest entity) void
deleteByUid
(String uid) protected VisitorThreadEntity
doSave
(VisitorThreadEntity entity) existsByUid
(String uid) findFirstByTopic
(String topic) handleOptimisticLockingFailureException
(org.springframework.orm.ObjectOptimisticLockingFailureException e, VisitorThreadEntity entity) org.springframework.data.domain.Page<VisitorThreadResponse>
queryByOrg
(VisitorThreadRequest request) org.springframework.data.domain.Page<VisitorThreadResponse>
queryByUser
(VisitorThreadRequest request) reInitAgentThreadExtra
(ThreadEntity thread, AgentEntity agent) reInitRobotThreadExtra
(ThreadEntity thread, RobotEntity robot) reInitWorkgroupThreadExtra
(VisitorRequest visitorRequest, ThreadEntity thread, WorkgroupEntity workgroup) save
(VisitorThreadEntity entity) update
(ThreadEntity thread) update
(VisitorThreadRequest request) Methods inherited from class com.bytedesk.core.base.BaseRestService
getUidFromRequest, queryByUid, recover
-
Field Details
-
visitorThreadRepository
-
threadRestService
-
modelMapper
private final org.modelmapper.ModelMapper modelMapper -
uidUtils
-
-
Constructor Details
-
VisitorThreadService
public VisitorThreadService()
-
-
Method Details
-
queryByOrg
public org.springframework.data.domain.Page<VisitorThreadResponse> queryByOrg(VisitorThreadRequest request) - Specified by:
queryByOrg
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
queryByUser
public org.springframework.data.domain.Page<VisitorThreadResponse> queryByUser(VisitorThreadRequest request) - Specified by:
queryByUser
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
findByUid
@Cacheable(value="visitor_thread", key="#uid", unless="#result == null") public Optional<VisitorThreadEntity> findByUid(String uid) - Specified by:
findByUid
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
existsByUid
-
findFirstByTopic
@Cacheable(value="visitor_thread", key="#topic", unless="#result == null") public Optional<VisitorThreadEntity> findFirstByTopic(String topic) -
createWorkgroupThread
public ThreadEntity createWorkgroupThread(VisitorRequest visitorRequest, WorkgroupEntity workgroup, String topic) -
reInitWorkgroupThreadExtra
public ThreadEntity reInitWorkgroupThreadExtra(VisitorRequest visitorRequest, ThreadEntity thread, WorkgroupEntity workgroup) -
createAgentThread
public ThreadEntity createAgentThread(VisitorRequest visitorRequest, AgentEntity agent, String topic) -
reInitAgentThreadExtra
-
createRobotThread
public ThreadEntity createRobotThread(VisitorRequest visitorRequest, RobotEntity robot, String topic) -
reInitRobotThreadExtra
-
update
-
create
- Specified by:
create
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
update
- Specified by:
update
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
autoRemindAgentOrCloseThread
TODO: 频繁查库,待优化 1. 超时关闭会话 2. 超时未回复会话,发送会话超时提醒 -
save
- Overrides:
save
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
doSave
- Specified by:
doSave
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
deleteByUid
- Specified by:
deleteByUid
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
delete
- Specified by:
delete
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-
handleOptimisticLockingFailureException
public VisitorThreadEntity handleOptimisticLockingFailureException(org.springframework.orm.ObjectOptimisticLockingFailureException e, VisitorThreadEntity entity) -
convertToResponse
- Specified by:
convertToResponse
in classBaseRestService<VisitorThreadEntity,
VisitorThreadRequest, VisitorThreadResponse>
-