From 15defa991fcd30b9fa60bab17d2230b5929bf2a2 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 14 九月 2026 17:20:20 +0800
Subject: [PATCH] update
---
backend/src/main/java/com/tourguide/modules/user/service/GuideApplicationService.java | 33 ++++++++++++++++++++++++++++-----
1 files changed, 28 insertions(+), 5 deletions(-)
diff --git a/backend/src/main/java/com/tourguide/modules/user/service/GuideApplicationService.java b/backend/src/main/java/com/tourguide/modules/user/service/GuideApplicationService.java
index 70c34a9..7e6a06d 100644
--- a/backend/src/main/java/com/tourguide/modules/user/service/GuideApplicationService.java
+++ b/backend/src/main/java/com/tourguide/modules/user/service/GuideApplicationService.java
@@ -7,7 +7,11 @@
import com.tourguide.common.exception.BusinessException;
import com.tourguide.modules.user.dto.GuideApplicationResponse;
import com.tourguide.modules.user.entity.GuideApplication;
+import com.tourguide.modules.user.entity.GuideTeam;
import com.tourguide.modules.user.mapper.GuideApplicationMapper;
+import com.tourguide.modules.user.mapper.GuideTeamMapper;
+import com.tourguide.modules.system.service.GuideNotificationService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
@@ -22,11 +26,27 @@
private static final int APPROVED = 1;
private static final int REJECTED = 2;
private final GuideApplicationMapper applicationMapper;
+ private final GuideTeamMapper teamMapper;
private final GuideUserService guideUserService;
+ private final GuideNotificationService notificationService;
+ private final GuideAuditSmsService auditSmsService;
- public GuideApplicationService(GuideApplicationMapper applicationMapper, GuideUserService guideUserService) {
+ public GuideApplicationService(GuideApplicationMapper applicationMapper, GuideUserService guideUserService,
+ GuideNotificationService notificationService,
+ GuideAuditSmsService auditSmsService) {
+ this(applicationMapper, null, guideUserService, notificationService, auditSmsService);
+ }
+
+ @Autowired
+ public GuideApplicationService(GuideApplicationMapper applicationMapper, GuideTeamMapper teamMapper,
+ GuideUserService guideUserService,
+ GuideNotificationService notificationService,
+ GuideAuditSmsService auditSmsService) {
this.applicationMapper = applicationMapper;
+ this.teamMapper = teamMapper;
this.guideUserService = guideUserService;
+ this.notificationService = notificationService;
+ this.auditSmsService = auditSmsService;
}
public PageResponse<GuideApplicationResponse> page(long page, long size, String keyword, Integer auditStatus,
@@ -51,7 +71,9 @@
public GuideApplicationResponse detail(Long id) {
GuideApplication application = applicationMapper.selectById(id);
if (application == null) { throw new BusinessException(404, "导游申请不存在"); }
- return GuideApplicationResponse.from(application);
+ GuideTeam team = application.getTeamId() == null || teamMapper == null
+ ? null : teamMapper.selectById(application.getTeamId());
+ return GuideApplicationResponse.from(application, team == null ? null : team.getTeamName());
}
@Transactional
@@ -64,9 +86,7 @@
if (application.getAuditStatus() == null || application.getAuditStatus() != PENDING) {
throw new BusinessException(409, "该申请已审核,请勿重复操作");
}
- if (auditStatus == APPROVED) {
- guideUserService.createFromApprovedApplication(application);
- }
+ if (auditStatus == APPROVED) guideUserService.createFromApprovedApplication(application);
LambdaUpdateWrapper<GuideApplication> update = new LambdaUpdateWrapper<GuideApplication>()
.eq(GuideApplication::getId, id)
.eq(GuideApplication::getAuditStatus, PENDING)
@@ -77,6 +97,9 @@
if (applicationMapper.update(null, update) != 1) {
throw new BusinessException(409, "该申请已被其他管理员处理");
}
+ com.tourguide.modules.user.entity.GuideUser guide = guideUserService.findByPhone(application.getMobile());
+ if (guide != null) notificationService.notifyAuditResult(guide.getId(), auditStatus == APPROVED);
+ auditSmsService.send(application.getMobile(), application.getRealName(), auditStatus == APPROVED);
return detail(id);
}
--
Gitblit v1.7.1