Merge branch 'feature/bug-528' into test
This commit is contained in:
commit
e65d8f9fc1
|
|
@ -571,6 +571,8 @@ public class TicketController extends ControllerBase {
|
|||
public ApiResult<Void> hangUp(@Valid @RequestBody TicketCallHangUpRequest request) {
|
||||
boolean flag=false;
|
||||
if (request.getReject()) {
|
||||
TicketCall ticketCall = ticketCallService.getLast(request.getTicketId());
|
||||
if (Objects.isNull(ticketCall)) return ApiResult.success();
|
||||
if (StrUtil.equals(request.getFrom(), Constant.FROM_APP) && Objects.equals(AppUserUtil.getUserId(), request.getFromUserId())) {
|
||||
AppUser appUser = appUserService.getById(AppUserUtil.getUserId());
|
||||
Ticket ticket = ticketService.getById(request.getTicketId());
|
||||
|
|
@ -592,7 +594,7 @@ public class TicketController extends ControllerBase {
|
|||
)
|
||||
);
|
||||
ssePushService.sendTicketCallCancelToAdmin(request.getTicketId(), handlerId, appUser);
|
||||
flag=ticketCallService.hangUp(request.getTicketId(), AppUserUtil.getUserId(), Constant.FROM_APP, true);
|
||||
flag = ticketCallService.hangUp(ticketCall.getId(), AppUserUtil.getUserId(), Constant.FROM_APP, true);
|
||||
}else {
|
||||
AppUser appUser = appUserService.getById(AppUserUtil.getUserId());
|
||||
Ticket ticket = ticketService.getById(request.getTicketId());
|
||||
|
|
@ -613,7 +615,7 @@ public class TicketController extends ControllerBase {
|
|||
)
|
||||
);
|
||||
ssePushService.sendTicketCallHangUpToAdmin(request.getTicketId(), request.getFromUserId(), appUser);
|
||||
flag=ticketCallJoinService.hangUp(request.getTicketId(), AppUserUtil.getUserId(), Constant.FROM_APP, true);
|
||||
flag = ticketCallJoinService.hangUp(ticketCall.getId(), AppUserUtil.getUserId(), Constant.FROM_APP, true);
|
||||
}
|
||||
}
|
||||
if (flag){
|
||||
|
|
|
|||
|
|
@ -20,4 +20,6 @@ public interface ITicketCallService extends IService<TicketCall> {
|
|||
void add(Integer ticketId, Integer callerUserId,String callerUserFrom, Integer calledUserId, String calledUserFrom);
|
||||
|
||||
boolean hangUp(@NotNull Integer ticketId, Integer userId, String from, boolean reject);
|
||||
|
||||
TicketCall getLast(@NotNull Integer ticketId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,11 +38,7 @@ public class TicketCallJoinServiceImpl extends ServiceImpl<TicketCallJoinMapper,
|
|||
@Transactional
|
||||
@Override
|
||||
public void join(Integer ticketId, Integer userId, String from) {
|
||||
TicketCall ticketCall = ticketCallService.lambdaQuery()
|
||||
.eq(TicketCall::getTicketId, ticketId)
|
||||
.ne(TicketCall::getState, 2)
|
||||
.last("limit 1")
|
||||
.one();
|
||||
TicketCall ticketCall = ticketCallService.getLast(ticketId);
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(ticketCall)).throwMessage("加入失败,通话已结束");
|
||||
TicketCallJoin ticketCallJoin = lambdaQuery()
|
||||
.eq(TicketCallJoin::getCallId, ticketCall.getId())
|
||||
|
|
@ -73,6 +69,7 @@ public class TicketCallJoinServiceImpl extends ServiceImpl<TicketCallJoinMapper,
|
|||
.ne(TicketCallJoin::getState, 2)
|
||||
.eq(TicketCallJoin::getUserId, userId)
|
||||
.eq(TicketCallJoin::getFrom, from)
|
||||
.orderByDesc(TicketCallJoin::getId)
|
||||
.last("limit 1")
|
||||
.one();
|
||||
boolean flag = false;
|
||||
|
|
|
|||
|
|
@ -60,11 +60,7 @@ public class TicketCallServiceImpl extends ServiceImpl<TicketCallMapper, TicketC
|
|||
|
||||
@Override
|
||||
public boolean hangUp(Integer ticketId, Integer userId, String from, boolean reject) {
|
||||
TicketCall ticketCall = lambdaQuery()
|
||||
.eq(TicketCall::getTicketId, ticketId)
|
||||
.ne(TicketCall::getState, 2)
|
||||
.last("limit 1")
|
||||
.one();
|
||||
TicketCall ticketCall = getLast(ticketId);
|
||||
boolean flag = false;
|
||||
if (Objects.nonNull(ticketCall)){
|
||||
if ((Objects.equals(ticketCall.getCallerUserId(), userId) && StrUtil.equals(ticketCall.getFrom(), Constant.FROM_APP))
|
||||
|
|
@ -80,4 +76,14 @@ public class TicketCallServiceImpl extends ServiceImpl<TicketCallMapper, TicketC
|
|||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TicketCall getLast(Integer ticketId) {
|
||||
return lambdaQuery()
|
||||
.eq(TicketCall::getTicketId, ticketId)
|
||||
.ne(TicketCall::getState, 2)
|
||||
.orderByDesc(TicketCall::getId)
|
||||
.last("limit 1")
|
||||
.one();
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue