feat(common): 修改ApiResult增加成功消息返回方法并调整WebComponent主键类型
- 在ApiResult类中新增successWithMessage静态方法用于返回带消息的成功结果 - 将WebComponent实体类的主键类型从Integer改为Long并使用ASSIGN_ID策略 - 相应修改WebComponent相关VO和Request类中的id字段类型为Long - 优化TicketController中通话邀请逻辑,添加用户状态检查和响应消息 - 修复MultilingualController中组件ID类型转换问题 - 调整TicketController中通话拒绝逻辑增加条件判断 - 清理多个控制器中多余的注释文档星号标记
This commit is contained in:
parent
bf343116dd
commit
3a0facbd9e
|
|
@ -230,7 +230,7 @@ public class MultilingualController extends ControllerBase {
|
|||
.setCreateTime(LocalDateTime.now());
|
||||
webComponentService.save(webComponent);
|
||||
}
|
||||
int componentId = webComponent.getId();
|
||||
Long componentId = webComponent.getId();
|
||||
d.remove("模块");
|
||||
d.remove("模块编号");
|
||||
d.remove("页面");
|
||||
|
|
|
|||
|
|
@ -1458,43 +1458,51 @@ public class TicketController extends ControllerBase {
|
|||
@Transactional
|
||||
@PostMapping("addCallUser")
|
||||
public ApiResult<Void> addCallUser(@Valid @RequestBody CallUserAddRequest request) {
|
||||
|
||||
AdminUser adminUser = adminUserService.getById(AdminUserUtil.getUserId());
|
||||
// TicketCall ticketCall = ticketCallService.lambdaQuery()
|
||||
// .eq(TicketCall::getTicketId, request.getTicketId())
|
||||
// .eq(TicketCall::getState, 1)
|
||||
// .one();
|
||||
// VUtils.trueThrowBusinessError(Objects.isNull(ticketCall)).throwMessage("未在通话中");
|
||||
List<String> userNames = new ArrayList<>();
|
||||
request.getUserIds().forEach(userId -> {
|
||||
AdminUser adminUser1 = adminUserService.getById(userId);
|
||||
if (Objects.nonNull(adminUser1)) {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId("admin-uid-" + adminUser.getId())
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(0)
|
||||
.setUserId(adminUser.getId())
|
||||
.setUserName(adminUser.getUserName())
|
||||
.setUserAvatar(adminUser.getAvatar())
|
||||
.setCategory("ticketCall")
|
||||
.setFrom("admin")
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
)
|
||||
)
|
||||
);
|
||||
ssePushService.sendTicketCallToAdmin(adminUser, userId, request.getTicketId());
|
||||
if (stringRedisTemplate.opsForHash().hasKey("ticket:shengwang:users", "2" + StrUtil.padPre(userId.toString(), 9, "0"))) {
|
||||
userNames.add(adminUser1.getUserName());
|
||||
} else {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId("admin-uid-" + adminUser.getId())
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(0)
|
||||
.setUserId(adminUser.getId())
|
||||
.setUserName(adminUser.getUserName())
|
||||
.setUserAvatar(adminUser.getAvatar())
|
||||
.setCategory("ticketCall")
|
||||
.setFrom("admin")
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
)
|
||||
)
|
||||
);
|
||||
ssePushService.sendTicketCallToAdmin(adminUser, userId, request.getTicketId());
|
||||
// ticketCallJoinService.add(ticketCall.getId(), userId, Constant.FROM_ADMIN);
|
||||
stringRedisTemplate.opsForSet().add(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), Constant.FROM_ADMIN + "-" + userId);
|
||||
stringRedisTemplate.expire(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), 1, TimeUnit.MINUTES);
|
||||
stringRedisTemplate.opsForSet().add(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), Constant.FROM_ADMIN + "-" + userId);
|
||||
stringRedisTemplate.expire(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), 1, TimeUnit.MINUTES);
|
||||
}
|
||||
}
|
||||
});
|
||||
return ApiResult.success();
|
||||
if (CollectionUtil.isEmpty(userNames)) {
|
||||
return ApiResult.success();
|
||||
} else {
|
||||
return ApiResult.successWithMessage("以下用户正在通话中:" + StrUtil.join(",", userNames));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1503,7 +1511,6 @@ public class TicketController extends ControllerBase {
|
|||
*/
|
||||
@GetMapping("call/joinChannel")
|
||||
public ApiResult<Void> joinChannel(@Valid @RequestParam @NotNull Long ticketId) throws IOException, InterruptedException {
|
||||
|
||||
TicketDTO ticket = ticketService.getDto(ticketId);
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
|
||||
VUtils.trueThrowBusinessError(!Objects.equals(ticket.getState(), TicketState.Processing.getState()))
|
||||
|
|
@ -1538,7 +1545,6 @@ public class TicketController extends ControllerBase {
|
|||
*/
|
||||
@PostMapping("call/hangUp")
|
||||
public ApiResult<Void> hangUp(@Valid @RequestBody TicketCallHangUpRequest request) {
|
||||
|
||||
TicketDTO ticket = ticketService.getDto(request.getTicketId());
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
|
||||
if (StrUtil.equals(request.getFrom(), Constant.FROM_ADMIN) && Objects.equals(request.getFromUserId(), AdminUserUtil.getUserId())) {
|
||||
|
|
@ -1565,22 +1571,24 @@ public class TicketController extends ControllerBase {
|
|||
}
|
||||
stringRedisTemplate.delete(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId());
|
||||
} else {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId(Constant.FROM_ADMIN + "-uid-" + AdminUserUtil.getUserId())//不重要
|
||||
.setReceiverId(request.getFrom() + "-uid-" + request.getFromUserId())
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent("视频通话拒接")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话拒接")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(ticket.getType())
|
||||
.setUserId(AdminUserUtil.getUserId())
|
||||
.setCategory("ticketCallReject")
|
||||
.setFrom("admin")
|
||||
)
|
||||
)
|
||||
);
|
||||
if (request.getReject()) {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId(Constant.FROM_ADMIN + "-uid-" + AdminUserUtil.getUserId())//不重要
|
||||
.setReceiverId(request.getFrom() + "-uid-" + request.getFromUserId())
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent("视频通话拒接")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话拒接")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(ticket.getType())
|
||||
.setUserId(AdminUserUtil.getUserId())
|
||||
.setCategory("ticketCallReject")
|
||||
.setFrom("admin")
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
stringRedisTemplate.opsForSet().remove(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), Constant.FROM_ADMIN + "-" + AdminUserUtil.getUserId());
|
||||
}
|
||||
taskScheduler.schedule(() -> {
|
||||
|
|
|
|||
|
|
@ -16,21 +16,28 @@ public class ApiResult<T> implements Serializable {
|
|||
private String type;
|
||||
private String message;
|
||||
private Object extras;
|
||||
private LocalDateTime time=LocalDateTime.now();
|
||||
private LocalDateTime time = LocalDateTime.now();
|
||||
private T result;
|
||||
|
||||
public static <T> ApiResult<T> success(T value) {
|
||||
ApiResult<T> vo = new ApiResult<>();
|
||||
vo.result = value;
|
||||
vo.code = STATE.Success.getState();
|
||||
vo.type=STATE.Success.getType();
|
||||
vo.type = STATE.Success.getType();
|
||||
return vo;
|
||||
}
|
||||
|
||||
public static ApiResult<Void> successWithMessage(String msg) {
|
||||
ApiResult<Void> vo = success();
|
||||
vo.message = msg;
|
||||
return vo;
|
||||
}
|
||||
|
||||
public static <T> ApiResult<PageData<T>> success(Collection<T> value, PageBaseQuery query, long total) {
|
||||
ApiResult<PageData<T>> vo = new ApiResult<>();
|
||||
PageData<T> data=new PageData<>();
|
||||
data.setItems(value);;
|
||||
PageData<T> data = new PageData<>();
|
||||
data.setItems(value);
|
||||
;
|
||||
data.setPage(query.getPage());
|
||||
data.setPageSize(query.getPageSize());
|
||||
data.setTotal((int) total);
|
||||
|
|
@ -53,12 +60,12 @@ public class ApiResult<T> implements Serializable {
|
|||
return vo;
|
||||
}
|
||||
|
||||
public static <T> ApiResult<T> error(int state,String msg,T value) {
|
||||
public static <T> ApiResult<T> error(int state, String msg, T value) {
|
||||
ApiResult<T> vo = new ApiResult<>();
|
||||
vo.result = value;
|
||||
vo.code = state;
|
||||
vo.type = msg;
|
||||
vo.message=msg;
|
||||
vo.message = msg;
|
||||
return vo;
|
||||
}
|
||||
|
||||
|
|
@ -71,7 +78,7 @@ public class ApiResult<T> implements Serializable {
|
|||
return vo;
|
||||
}
|
||||
|
||||
public static <T> ApiResult<T> error(int state, String type,String msg) {
|
||||
public static <T> ApiResult<T> error(int state, String type, String msg) {
|
||||
ApiResult<T> vo = new ApiResult<T>();
|
||||
vo.code = state;
|
||||
vo.type = type;
|
||||
|
|
@ -85,12 +92,13 @@ public class ApiResult<T> implements Serializable {
|
|||
vo.type = STATE.Success.getType();
|
||||
return vo;
|
||||
}
|
||||
|
||||
public static <T> ApiResult<T> error(STATE code, String msg) {
|
||||
return error(code.getState(),code.getType(), msg);
|
||||
return error(code.getState(), code.getType(), msg);
|
||||
}
|
||||
|
||||
public static <T> ApiResult<T> error(String msg) {
|
||||
return error(STATE.Error.getState(),STATE.Error.getType(), msg);
|
||||
return error(STATE.Error.getState(), STATE.Error.getType(), msg);
|
||||
}
|
||||
|
||||
public static <T> ApiResult<T> error(STATE code) {
|
||||
|
|
|
|||
|
|
@ -10,5 +10,5 @@ import javax.validation.constraints.NotNull;
|
|||
public class WebComponentUpdateRequest extends WebComponentAddRequest {
|
||||
|
||||
@NotNull
|
||||
private Integer id;
|
||||
private Long id;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import java.util.List;
|
|||
@Accessors(chain = true)
|
||||
public class WebComponentInfoVO {
|
||||
|
||||
private Integer id;
|
||||
private Long id;
|
||||
|
||||
//模块名称
|
||||
private String moduleName;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import java.time.LocalDateTime;
|
|||
@Accessors(chain = true)
|
||||
public class WebComponentVO {
|
||||
|
||||
private Integer id;
|
||||
private Long id;
|
||||
|
||||
//模块名称
|
||||
private String moduleName;
|
||||
|
|
|
|||
|
|
@ -140,7 +140,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取问题类型
|
||||
*
|
||||
* @return 问题类型列表
|
||||
*/
|
||||
@GetMapping("getQuestions")
|
||||
|
|
@ -151,7 +150,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取收藏夹
|
||||
*
|
||||
* @param id 收藏夹id,0为根节点
|
||||
* @return 收藏夹信息
|
||||
*/
|
||||
|
|
@ -163,7 +161,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取收藏夹树结构
|
||||
*
|
||||
* @param id 父级id,0为根节点
|
||||
* @return 树结构
|
||||
*/
|
||||
|
|
@ -174,7 +171,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 添加收藏夹
|
||||
*
|
||||
* @param request 请求信息
|
||||
* @return 无
|
||||
*/
|
||||
|
|
@ -187,7 +183,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 更新收藏夹名称
|
||||
*
|
||||
* @param request 请求信息
|
||||
*/
|
||||
@PostMapping("updateFavorites")
|
||||
|
|
@ -198,7 +193,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 删除收藏夹
|
||||
*
|
||||
* @param favoritesId 收藏夹id
|
||||
* @return 无
|
||||
*/
|
||||
|
|
@ -211,7 +205,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 移动收藏夹
|
||||
*
|
||||
* @param request 请求信息
|
||||
*/
|
||||
@PostMapping("moveFavorites")
|
||||
|
|
@ -222,7 +215,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 移动收藏夹工单
|
||||
*
|
||||
* @param request 请求信息
|
||||
*/
|
||||
@PostMapping("moveFavoritesTicket")
|
||||
|
|
@ -233,7 +225,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 关注工单
|
||||
*
|
||||
* @param request 请求信息
|
||||
**/
|
||||
@PostMapping("followTiket")
|
||||
|
|
@ -246,7 +237,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 取消关注工单
|
||||
*
|
||||
* @param ticketId 工单id
|
||||
**/
|
||||
@PostMapping("unfollowTicket")
|
||||
|
|
@ -257,7 +247,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取所有设备部件
|
||||
*
|
||||
* @param name 部件名称,模糊查询
|
||||
* @return 部件列表
|
||||
*/
|
||||
|
|
@ -277,7 +266,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 搜索工单
|
||||
*
|
||||
* @param request 请求参数
|
||||
* @return 工单列表
|
||||
*/
|
||||
|
|
@ -340,7 +328,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单根本原因分析
|
||||
*
|
||||
* @param ticketId 工单id
|
||||
* @return 根本原因分析
|
||||
*/
|
||||
|
|
@ -354,7 +341,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 导出搜索工单
|
||||
*
|
||||
* @param request 请求参数
|
||||
*/
|
||||
@PostMapping("exportSearchTicket")
|
||||
|
|
@ -367,7 +353,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 分派工单
|
||||
*
|
||||
* @param request 请求参数
|
||||
*/
|
||||
@PostMapping("assignmentTicket")
|
||||
|
|
@ -397,7 +382,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单处理人
|
||||
*
|
||||
* @param id 工单id
|
||||
* @return 工单处理人列表
|
||||
*/
|
||||
|
|
@ -409,7 +393,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 添加/删除工单处理人
|
||||
*
|
||||
* @param request 请求参数
|
||||
*/
|
||||
@PostMapping("addTicketHandle")
|
||||
|
|
@ -431,7 +414,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 完成工单
|
||||
*
|
||||
* @param ids 工单id列表
|
||||
*/
|
||||
@PostMapping("completeTicket")
|
||||
|
|
@ -463,7 +445,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 驳回工单
|
||||
*
|
||||
* @param ids 工单id列表
|
||||
*/
|
||||
@PostMapping("rejectTicket")
|
||||
|
|
@ -495,7 +476,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 撤销工单
|
||||
*
|
||||
* @param id 工单编号
|
||||
**/
|
||||
@GetMapping("revokedTicket")
|
||||
|
|
@ -506,7 +486,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 导出工单为pdf
|
||||
*
|
||||
* @param id 工单id
|
||||
*/
|
||||
@GetMapping("exportPdf")
|
||||
|
|
@ -615,7 +594,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单详情
|
||||
*
|
||||
* @param id 工单编号
|
||||
* @return 工单详情
|
||||
**/
|
||||
|
|
@ -784,7 +762,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单聊天记录
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
* @return 聊天记录
|
||||
**/
|
||||
|
|
@ -826,7 +803,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 设置聊天记录已读
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
**/
|
||||
@PostMapping("setChatMessageReaded")
|
||||
|
|
@ -837,7 +813,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 添加聊天记录
|
||||
*
|
||||
* @param request 请求信息
|
||||
**/
|
||||
@PostMapping("addChatMessage")
|
||||
|
|
@ -901,7 +876,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 撤回聊天记录
|
||||
*
|
||||
* @param request 请求信息
|
||||
**/
|
||||
@PostMapping("withdrawChatMessage")
|
||||
|
|
@ -916,7 +890,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单解决方案措施
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
* @return 解决方案措施
|
||||
**/
|
||||
|
|
@ -928,7 +901,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单解决方案评审部门
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
* @return 评审部门
|
||||
**/
|
||||
|
|
@ -940,7 +912,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 保存工单解决方案措施
|
||||
*
|
||||
* @param request 请求信息
|
||||
**/
|
||||
@PostMapping("saveSolutionMeasures")
|
||||
|
|
@ -954,7 +925,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 驳回工单解决方案
|
||||
*
|
||||
* @param request 请求信息
|
||||
**/
|
||||
@PostMapping("rejectSolution")
|
||||
|
|
@ -983,7 +953,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 通过工单解决方案
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
**/
|
||||
@GetMapping("passSolution")
|
||||
|
|
@ -1013,7 +982,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 导出工单报表
|
||||
*
|
||||
* @param request 请求参数
|
||||
*/
|
||||
@PostMapping("exportTicketReport")
|
||||
|
|
@ -1026,7 +994,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 导出工单详情为excel
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
*/
|
||||
@GetMapping("/exportTicketExcel")
|
||||
|
|
@ -1335,7 +1302,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单处理人
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
*/
|
||||
@GetMapping("/getHandlers")
|
||||
|
|
@ -1346,7 +1312,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 请求通话
|
||||
*
|
||||
* @param ticketId 工单编号
|
||||
*/
|
||||
@GetMapping("call")
|
||||
|
|
@ -1416,7 +1381,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 添加通话用户
|
||||
*
|
||||
* @param request 请求参数
|
||||
*/
|
||||
@Transactional
|
||||
|
|
@ -1428,36 +1392,45 @@ public class TicketController extends ControllerBase {
|
|||
// .eq(TicketCall::getState, 1)
|
||||
// .one();
|
||||
// VUtils.trueThrowBusinessError(Objects.isNull(ticketCall)).throwMessage("未在通话中");
|
||||
List<String> userNames = new ArrayList<>();
|
||||
request.getUserIds().forEach(userId -> {
|
||||
AdminUser adminUser1 = adminUserService.getById(userId);
|
||||
if (Objects.nonNull(adminUser1)) {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId("admin-uid-" + adminUser.getId())
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(1)
|
||||
.setUserId(adminUser.getId())
|
||||
.setUserName(adminUser.getUserName())
|
||||
.setUserAvatar(adminUser.getAvatar())
|
||||
.setCategory("ticketCall")
|
||||
.setFrom("admin")
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
)
|
||||
)
|
||||
);
|
||||
ssePushService.sendTicketCallToAdmin(adminUser, userId, request.getTicketId());
|
||||
if (stringRedisTemplate.opsForHash().hasKey("ticket:shengwang:users", "2" + StrUtil.padPre(userId.toString(), 9, "0"))) {
|
||||
userNames.add(adminUser1.getUserName());
|
||||
} else {
|
||||
uniPushService.send(new UniPushMessage()
|
||||
.setSenderId("admin-uid-" + adminUser.getId())
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
.setSendData(new UniPushMessageBody()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setPayload(new UniPushMessageCallPayload()
|
||||
.setTitle("视频通话")
|
||||
.setContent(adminUser.getUserName() + "请求与您视频通话")
|
||||
.setTicketId(String.valueOf(request.getTicketId()))
|
||||
.setTicketType(1)
|
||||
.setUserId(adminUser.getId())
|
||||
.setUserName(adminUser.getUserName())
|
||||
.setUserAvatar(adminUser.getAvatar())
|
||||
.setCategory("ticketCall")
|
||||
.setFrom("admin")
|
||||
.setReceiverId("admin-uid-" + userId)
|
||||
)
|
||||
)
|
||||
);
|
||||
ssePushService.sendTicketCallToAdmin(adminUser, userId, request.getTicketId());
|
||||
// ticketCallJoinService.add(ticketCall.getId(), userId, Constant.FROM_ADMIN);
|
||||
stringRedisTemplate.opsForSet().add(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), Constant.FROM_ADMIN + "-" + userId);
|
||||
stringRedisTemplate.expire(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), 1, TimeUnit.MINUTES);
|
||||
stringRedisTemplate.opsForSet().add(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), Constant.FROM_ADMIN + "-" + userId);
|
||||
stringRedisTemplate.expire(Constant.REDIS_KEY_TICKET_CALL_WAIT + request.getTicketId(), 1, TimeUnit.MINUTES);
|
||||
}
|
||||
}
|
||||
});
|
||||
return ApiResult.success();
|
||||
if (CollectionUtil.isEmpty(userNames)) {
|
||||
return ApiResult.success();
|
||||
} else {
|
||||
return ApiResult.successWithMessage("以下用户正在通话中:" + StrUtil.join(",", userNames));
|
||||
}
|
||||
}
|
||||
|
||||
// /**
|
||||
|
|
@ -1528,7 +1501,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取声网频道用户列表
|
||||
*
|
||||
* @param ticketId 工单ID
|
||||
* @return 用户列表
|
||||
*/
|
||||
|
|
@ -1539,7 +1511,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取处理人列表
|
||||
*
|
||||
* @return 处理人列表
|
||||
*/
|
||||
@GetMapping("getHandlerForSelect")
|
||||
|
|
@ -1549,7 +1520,6 @@ public class TicketController extends ControllerBase {
|
|||
|
||||
/**
|
||||
* 获取工单案例图片
|
||||
*
|
||||
* @param id 工单ID
|
||||
* @return 工单案例图片
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,12 +3,13 @@ package com.nflg.mobilebroken.repository.entity;
|
|||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
|
|
@ -25,8 +26,8 @@ public class WebComponent implements Serializable {
|
|||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Integer id;
|
||||
@TableId(value = "id", type = IdType.ASSIGN_ID)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模块名称
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
package com.nflg.mobilebroken.repository.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
|
|
@ -22,10 +25,13 @@ public class WebComponentTranslate implements Serializable {
|
|||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value = "id", type = IdType.ASSIGN_ID)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 组件id
|
||||
*/
|
||||
private Integer componentId;
|
||||
private Long componentId;
|
||||
|
||||
/**
|
||||
* 语言id
|
||||
|
|
|
|||
Loading…
Reference in New Issue