Merge branch 'feature/bug-528' into test

This commit is contained in:
曹鹏飞 2025-08-07 15:41:14 +08:00
commit 905284702c
1 changed files with 6 additions and 9 deletions

View File

@ -569,16 +569,15 @@ public class TicketController extends ControllerBase {
*/ */
@PostMapping("call/hangUp") @PostMapping("call/hangUp")
public ApiResult<Void> hangUp(@Valid @RequestBody TicketCallHangUpRequest request) { public ApiResult<Void> hangUp(@Valid @RequestBody TicketCallHangUpRequest request) {
boolean flag=false;
if (request.getReject()) {
TicketCall ticketCall = ticketCallService.getLast(request.getTicketId()); TicketCall ticketCall = ticketCallService.getLast(request.getTicketId());
if (request.getReject()) {
if (Objects.isNull(ticketCall)) return ApiResult.success(); if (Objects.isNull(ticketCall)) return ApiResult.success();
if (StrUtil.equals(request.getFrom(), Constant.FROM_APP) && Objects.equals(AppUserUtil.getUserId(), request.getFromUserId())) { if (StrUtil.equals(request.getFrom(), Constant.FROM_APP) && Objects.equals(AppUserUtil.getUserId(), request.getFromUserId())) {
AppUser appUser = appUserService.getById(AppUserUtil.getUserId()); AppUser appUser = appUserService.getById(AppUserUtil.getUserId());
Ticket ticket = ticketService.getById(request.getTicketId()); Ticket ticket = ticketService.getById(request.getTicketId());
int handlerId= Integer.parseInt(StrUtil.split(ticket.getHandle(), ",").stream().findFirst().get()); int handlerId = Integer.parseInt(StrUtil.split(ticket.getHandle(), ",").stream().findFirst().get());
uniPushService.send(new UniPushMessage() uniPushService.send(new UniPushMessage()
.setSenderId(ticket.getUserPlatform()+"-uid-" + appUser.getId()) .setSenderId(ticket.getUserPlatform() + "-uid-" + appUser.getId())
.setReceiverId("admin-uid-" + handlerId) .setReceiverId("admin-uid-" + handlerId)
.setSendData(new UniPushMessageBody() .setSendData(new UniPushMessageBody()
.setTitle("挂断视频通话") .setTitle("挂断视频通话")
@ -594,12 +593,11 @@ public class TicketController extends ControllerBase {
) )
); );
ssePushService.sendTicketCallCancelToAdmin(request.getTicketId(), handlerId, appUser); ssePushService.sendTicketCallCancelToAdmin(request.getTicketId(), handlerId, appUser);
flag = ticketCallService.hangUp(ticketCall.getId(), AppUserUtil.getUserId(), Constant.FROM_APP, true); } else {
}else {
AppUser appUser = appUserService.getById(AppUserUtil.getUserId()); AppUser appUser = appUserService.getById(AppUserUtil.getUserId());
Ticket ticket = ticketService.getById(request.getTicketId()); Ticket ticket = ticketService.getById(request.getTicketId());
uniPushService.send(new UniPushMessage() uniPushService.send(new UniPushMessage()
.setSenderId(ticket.getUserPlatform()+"-uid-" + appUser.getId()) .setSenderId(ticket.getUserPlatform() + "-uid-" + appUser.getId())
.setReceiverId("admin-uid-" + request.getFromUserId()) .setReceiverId("admin-uid-" + request.getFromUserId())
.setSendData(new UniPushMessageBody() .setSendData(new UniPushMessageBody()
.setTitle("拒绝视频通话") .setTitle("拒绝视频通话")
@ -615,10 +613,9 @@ public class TicketController extends ControllerBase {
) )
); );
ssePushService.sendTicketCallHangUpToAdmin(request.getTicketId(), request.getFromUserId(), appUser); ssePushService.sendTicketCallHangUpToAdmin(request.getTicketId(), request.getFromUserId(), appUser);
flag = ticketCallJoinService.hangUp(ticketCall.getId(), AppUserUtil.getUserId(), Constant.FROM_APP, true);
} }
} }
if (flag){ if (ticketCallJoinService.hangUp(ticketCall.getId(), AppUserUtil.getUserId(), Constant.FROM_APP, true)) {
ticketEventPublisher.publishTicketCallEndEvent(request.getTicketId()); ticketEventPublisher.publishTicketCallEndEvent(request.getTicketId());
} }
return ApiResult.success(); return ApiResult.success();