From 04a91a1a0157e22e395535b4bf40681d4b66e996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Thu, 9 Apr 2026 14:10:01 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=BC=98=E5=8C=96=E3=80=91=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=94=B6=E8=97=8F=E5=A4=B9=E6=A0=B9=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E6=9C=AA=E5=BA=94=E7=94=A8=E5=A4=9A=E8=AF=AD?= =?UTF-8?q?=E8=A8=80=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/TicketController.java | 36 +++++++++++++++---- .../gongfu/controller/TicketController.java | 29 +++++++++++++-- 2 files changed, 57 insertions(+), 8 deletions(-) diff --git a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java index 1a3a492a..4e9a20d1 100644 --- a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java +++ b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java @@ -11,6 +11,7 @@ import com.nflg.mobilebroken.admin.annotation.ApiMark; import com.nflg.mobilebroken.admin.publisher.TicketEventPublisher; import com.nflg.mobilebroken.admin.service.ShengWangService; import com.nflg.mobilebroken.admin.service.SsePushService; +import com.nflg.mobilebroken.admin.service.impl.AliYunTranslate; import com.nflg.mobilebroken.common.constant.*; import com.nflg.mobilebroken.common.exception.NflgException; import com.nflg.mobilebroken.common.pojo.ApiResult; @@ -155,6 +156,9 @@ public class TicketController extends ControllerBase { @Resource private ILanguageService languageService; + @Resource + private AliYunTranslate aliYunTranslate; + /** * 获取问题类型 * @return 问题类型列表 @@ -180,7 +184,17 @@ public class TicketController extends ControllerBase { @GetMapping("getFavorites") @ApiMark(moduleName = "工单管理", apiName = "获取收藏夹", isPublic = true) public ApiResult getFavorites(@RequestParam(defaultValue = "0") Integer id) { - return ApiResult.success(ticketFavoritesService.getMBList(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id)); + FavoritesVO vo = ticketFavoritesService.getMBList(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id); + if (id == 0) { + String languageCode = MultilingualUtil.getLanguage(); + if (!StrUtil.equals(languageCode, Constant.DEFAULT_LANGUAGE_CODE)) { + Language language = languageService.lambdaQuery().eq(Language::getCode, languageCode).one(); + if (Objects.nonNull(language)) { + vo.setName(aliYunTranslate.translateWord(vo.getName(), language.getTranslateCode())); + } + } + } + return ApiResult.success(vo); } /** @@ -190,7 +204,17 @@ public class TicketController extends ControllerBase { */ @GetMapping("getFavoritesTree") public ApiResult getFavoritesTree(@RequestParam(defaultValue = "0") Integer id) { - return ApiResult.success(ticketFavoritesService.getTree(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id)); + FavoritesVO vo = ticketFavoritesService.getTree(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id); + if (id == 0) { + String languageCode = MultilingualUtil.getLanguage(); + if (!StrUtil.equals(languageCode, Constant.DEFAULT_LANGUAGE_CODE)) { + Language language = languageService.lambdaQuery().eq(Language::getCode, languageCode).one(); + if (Objects.nonNull(language)) { + vo.setName(aliYunTranslate.translateWord(vo.getName(), language.getTranslateCode())); + } + } + } + return ApiResult.success(vo); } /** @@ -611,7 +635,7 @@ public class TicketController extends ControllerBase { .setDeviceAddress(ticket.getDeviceAddress()) .setImages(images) // .setFiles(files) - .setMeasures(ticketSolutionService.getSolutionMeasures(Long.valueOf(ticket.getId()),Constant.DEFAULT_LANGUAGE_CODE).getMeasures()); + .setMeasures(ticketSolutionService.getSolutionMeasures(Long.valueOf(ticket.getId()), Constant.DEFAULT_LANGUAGE_CODE).getMeasures()); Map variables = new HashMap<>(); variables.put("ticket", vo); // 渲染HTML @@ -944,7 +968,7 @@ public class TicketController extends ControllerBase { @ApiMark(moduleName = "工单管理", apiName = "保存工单解决方案措施") public ApiResult saveSolutionMeasures(@Valid @RequestBody SolutionMeasuresSaveRequest request) { Ticket ticket = ticketSolutionService.saveSolutionMeasures(request); - List audits = ticketSolutionAuditService.getByTicket(request.getTicketId(),MultilingualUtil.getLanguage()); + List audits = ticketSolutionAuditService.getByTicket(request.getTicketId(), MultilingualUtil.getLanguage()); audits.forEach(audit -> { if (Objects.equals(audit.getState(), 0)) { adminMessageService.add( @@ -978,7 +1002,7 @@ public class TicketController extends ControllerBase { @GetMapping("getSolutionReviewDepartment") @ApiMark(moduleName = "工单管理", apiName = "获取工单解决方案评审部门") public ApiResult> getSolutionReviewDepartment(@Valid @RequestParam @NotNull Integer ticketId) { - return ApiResult.success(ticketSolutionAuditService.getByTicket(Long.valueOf(ticketId),MultilingualUtil.getLanguage())); + return ApiResult.success(ticketSolutionAuditService.getByTicket(Long.valueOf(ticketId), MultilingualUtil.getLanguage())); } /** @@ -1239,7 +1263,7 @@ public class TicketController extends ControllerBase { } } //解决方案审核 - List reviewDepartments = ticketSolutionAuditService.getByTicket(Long.valueOf(ticketId),MultilingualUtil.getLanguage()) + List reviewDepartments = ticketSolutionAuditService.getByTicket(Long.valueOf(ticketId), MultilingualUtil.getLanguage()) .stream() .filter(vo -> StrUtil.isNotBlank(vo.getUserName())) .collect(Collectors.toList()); diff --git a/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/TicketController.java b/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/TicketController.java index f5803f59..d500c276 100644 --- a/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/TicketController.java +++ b/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/TicketController.java @@ -22,6 +22,7 @@ import com.nflg.mobilebroken.gongfu.pojo.vo.SolutionImageVO; import com.nflg.mobilebroken.gongfu.publisher.TicketEventPublisher; import com.nflg.mobilebroken.gongfu.service.ShengWangService; import com.nflg.mobilebroken.gongfu.service.SsePushService; +import com.nflg.mobilebroken.gongfu.service.impl.AliYunTranslate; import com.nflg.mobilebroken.repository.entity.*; import com.nflg.mobilebroken.repository.service.*; import com.nflg.mobilebroken.starter.annotation.MethodInfoMark; @@ -144,9 +145,13 @@ public class TicketController extends ControllerBase { @Resource private DeepSeekTranslate deepSeekTranslate; + @Resource private ILanguageService languageService; + @Resource + private AliYunTranslate aliYunTranslate; + /** * 获取问题类型 * @return 问题类型列表 @@ -172,7 +177,17 @@ public class TicketController extends ControllerBase { @GetMapping("getFavorites") @ApiMark(moduleName = "工单管理", apiName = "获取收藏夹", isPublic = true) public ApiResult getFavorites(@RequestParam(defaultValue = "0") Integer id) { - return ApiResult.success(ticketFavoritesService.getGFList(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id)); + FavoritesVO vo = ticketFavoritesService.getGFList(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id); + if (id == 0) { + String languageCode = MultilingualUtil.getLanguage(); + if (!StrUtil.equals(languageCode, Constant.DEFAULT_LANGUAGE_CODE)) { + Language language = languageService.lambdaQuery().eq(Language::getCode, languageCode).one(); + if (Objects.nonNull(language)) { + vo.setName(aliYunTranslate.translateWord(vo.getName(), language.getTranslateCode())); + } + } + } + return ApiResult.success(vo); } /** @@ -182,7 +197,17 @@ public class TicketController extends ControllerBase { */ @GetMapping("getFavoritesTree") public ApiResult getFavoritesTree(@RequestParam(defaultValue = "0") Integer id) { - return ApiResult.success(ticketFavoritesService.getTree(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id)); + FavoritesVO vo = ticketFavoritesService.getTree(AdminUserUtil.getUserId(), Constant.FROM_ADMIN, id); + if (id == 0) { + String languageCode = MultilingualUtil.getLanguage(); + if (!StrUtil.equals(languageCode, Constant.DEFAULT_LANGUAGE_CODE)) { + Language language = languageService.lambdaQuery().eq(Language::getCode, languageCode).one(); + if (Objects.nonNull(language)) { + vo.setName(aliYunTranslate.translateWord(vo.getName(), language.getTranslateCode())); + } + } + } + return ApiResult.success(vo); } /**