parent
e0c62ae8f2
commit
7c1281a689
|
|
@ -1249,33 +1249,33 @@ public class TicketController extends ControllerBase {
|
||||||
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getState(), TicketState.Processing.getState()))
|
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getState(), TicketState.Processing.getState()))
|
||||||
.throwMessage("当前工单状态不允许请求通话");
|
.throwMessage("当前工单状态不允许请求通话");
|
||||||
Integer handlerUserId = Arrays.stream(ticket.getHandle().split(",")).map(Integer::parseInt).findFirst().get();
|
Integer handlerUserId = Arrays.stream(ticket.getHandle().split(",")).map(Integer::parseInt).findFirst().get();
|
||||||
if (StrUtil.equals(Constant.FROM_APP,ticket.getUserPlatform())) {
|
if (StrUtil.equals(Constant.FROM_APP, ticket.getUserPlatform())) {
|
||||||
VUtils.trueThrowBusinessError(!Objects.equals(AdminUserUtil.getUserId(), handlerUserId))
|
VUtils.trueThrowBusinessError(!Objects.equals(AdminUserUtil.getUserId(), handlerUserId))
|
||||||
.throwMessage("不是工单主负责人无权限呼叫");
|
.throwMessage("不是工单主负责人无权限呼叫");
|
||||||
}else {
|
} else {
|
||||||
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId()) && !Objects.equals(AdminUserUtil.getUserId(), handlerUserId))
|
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId()) && !Objects.equals(AdminUserUtil.getUserId(), handlerUserId))
|
||||||
.throwMessage("无权限呼叫");
|
.throwMessage("无权限呼叫");
|
||||||
}
|
}
|
||||||
VUtils.trueThrowBusinessError(ticketCallService.isInCall(ticket.getUserId())).throwMessage("对方正在通话中");
|
VUtils.trueThrowBusinessError(ticketCallService.isInCall(ticket.getUserId())).throwMessage("对方正在通话中");
|
||||||
boolean userIdCreate=StrUtil.equals(ticket.getUserPlatform(),Constant.FROM_ADMIN) && Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId());
|
boolean userIdCreate = StrUtil.equals(ticket.getUserPlatform(), Constant.FROM_ADMIN) && Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId());
|
||||||
Integer sendUserId=0,receiveUserId=0;
|
Integer sendUserId = 0, receiveUserId = 0;
|
||||||
String sendUserFrom,receiveUserFrom;
|
String sendUserFrom, receiveUserFrom;
|
||||||
if (userIdCreate){
|
if (userIdCreate) {
|
||||||
sendUserId=ticket.getUserId();
|
sendUserId = ticket.getUserId();
|
||||||
receiveUserId=handlerUserId;
|
receiveUserId = handlerUserId;
|
||||||
sendUserFrom=Constant.FROM_ADMIN;
|
sendUserFrom = Constant.FROM_ADMIN;
|
||||||
receiveUserFrom=Constant.FROM_ADMIN;
|
receiveUserFrom = Constant.FROM_ADMIN;
|
||||||
}else {
|
} else {
|
||||||
sendUserId=handlerUserId;
|
sendUserId = handlerUserId;
|
||||||
receiveUserId=ticket.getUserId();
|
receiveUserId = ticket.getUserId();
|
||||||
sendUserFrom=Constant.FROM_ADMIN;
|
sendUserFrom = Constant.FROM_ADMIN;
|
||||||
receiveUserFrom=Constant.FROM_APP;
|
receiveUserFrom = Constant.FROM_APP;
|
||||||
}
|
}
|
||||||
ticketCallService.add(ticketId, sendUserId,sendUserFrom, receiveUserId, receiveUserFrom);
|
ticketCallService.add(ticketId, sendUserId, sendUserFrom, receiveUserId, receiveUserFrom);
|
||||||
AdminUser adminUser = adminUserService.getById(handlerUserId);
|
AdminUser adminUser = adminUserService.getById(sendUserId);
|
||||||
uniPushService.send(new UniPushMessage()
|
uniPushService.send(new UniPushMessage()
|
||||||
.setSenderId("admin-uid-" + handlerUserId)
|
.setSenderId("admin-uid-" + sendUserId)
|
||||||
.setReceiverId(ticket.getUserPlatform()+"-uid-" + ticket.getUserId())
|
.setReceiverId(receiveUserFrom + "-uid-" + receiveUserId)
|
||||||
.setSendData(new UniPushMessageBody()
|
.setSendData(new UniPushMessageBody()
|
||||||
.setTitle("视频通话")
|
.setTitle("视频通话")
|
||||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||||
|
|
@ -1289,10 +1289,10 @@ public class TicketController extends ControllerBase {
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
if (StrUtil.equals(Constant.FROM_APP,ticket.getUserPlatform())) {
|
if (StrUtil.equals(Constant.FROM_APP, ticket.getUserPlatform())) {
|
||||||
ssePushService.sendTicketCallToApp(adminUser, ticket.getUserId(), ticketId);
|
ssePushService.sendTicketCallToApp(adminUser, ticket.getUserId(), ticketId);
|
||||||
}else {
|
} else {
|
||||||
ssePushService.sendTicketCallToAdmin(adminUser, ticket.getUserId(), ticketId);
|
ssePushService.sendTicketCallToAdmin(adminUser, receiveUserId, ticketId);
|
||||||
}
|
}
|
||||||
ticketEventPublisher.publishTicketCallBeginEvent(ticketId, adminUser.getUserName());
|
ticketEventPublisher.publishTicketCallBeginEvent(ticketId, adminUser.getUserName());
|
||||||
return ApiResult.success();
|
return ApiResult.success();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue