Merge branch 'feature/bug-632' into test

This commit is contained in:
曹鹏飞 2025-08-28 20:37:44 +08:00
commit e634c4c789
1 changed files with 9 additions and 11 deletions

View File

@ -1258,24 +1258,22 @@ public class TicketController extends ControllerBase {
VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在"); VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
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(); List<Integer> handlerUserIds = Arrays.stream(ticket.getHandle().split(",")).map(Integer::parseInt).collect(Collectors.toList());
if (StrUtil.equals(Constant.FROM_APP, ticket.getUserPlatform())) { VUtils.trueThrowBusinessError(!(handlerUserIds.contains(AdminUserUtil.getUserId())
VUtils.trueThrowBusinessError(!Objects.equals(AdminUserUtil.getUserId(), handlerUserId)) || (StrUtil.equals(ticket.getUserPlatform(), Constant.FROM_APP)
.throwMessage("不是工单主负责人无权限呼叫"); && Objects.equals(AdminUserUtil.getUserId(), ticket.getUserId()))))
} else {
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId()) && !Objects.equals(AdminUserUtil.getUserId(), handlerUserId))
.throwMessage("无权限呼叫"); .throwMessage("无权限呼叫");
} Integer handlerUserId = handlerUserIds.get(0);
boolean userIdCreate = StrUtil.equals(ticket.getUserPlatform(), Constant.FROM_ADMIN) && Objects.equals(ticket.getUserId(), AdminUserUtil.getUserId()); boolean userIsCreate = 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 (userIsCreate) {
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 = AdminUserUtil.getUserId();
receiveUserId = ticket.getUserId(); receiveUserId = ticket.getUserId();
sendUserFrom = Constant.FROM_ADMIN; sendUserFrom = Constant.FROM_ADMIN;
receiveUserFrom = Constant.FROM_APP; receiveUserFrom = Constant.FROM_APP;