From fadc42f2c2dc3cddc8da5e911f377db8fa046c09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=98=89=E5=A4=9A=E5=AE=9D=E5=AE=9D?= Date: Tue, 13 Jan 2026 10:24:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=88=A0=E9=99=A4=E4=BB=A3=E7=90=86?= =?UTF-8?q?=E5=95=86=E6=97=B6=E5=90=8C=E6=97=B6=E5=88=A0=E9=99=A4=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=A7=92=E8=89=B2=E5=85=B3=E7=B3=BB=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../teach/mp/admin/service/AdminAgentService.java | 10 +++++++++- .../com/seer/teach/user/api/UserInfoServiceApi.java | 3 +++ .../com/seer/teach/user/entity/UserRoleEntity.java | 6 +++--- .../teach/user/admin/api/UserInfoServiceApiImpl.java | 11 +++++++++++ 4 files changed, 26 insertions(+), 4 deletions(-) diff --git a/seer-mp/seer-mp-service-admin/src/main/java/com/seer/teach/mp/admin/service/AdminAgentService.java b/seer-mp/seer-mp-service-admin/src/main/java/com/seer/teach/mp/admin/service/AdminAgentService.java index 4622ecb..fa50fcf 100644 --- a/seer-mp/seer-mp-service-admin/src/main/java/com/seer/teach/mp/admin/service/AdminAgentService.java +++ b/seer-mp/seer-mp-service-admin/src/main/java/com/seer/teach/mp/admin/service/AdminAgentService.java @@ -22,6 +22,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Objects; @Slf4j @RequiredArgsConstructor @@ -74,7 +75,7 @@ public class AdminAgentService { boolean userIdByMobile = userInfoServiceApi.getUserIdByMobile(req.getContactPhone()); AssertUtils.isTrue(userIdByMobile, ResultCodeEnum.AGENT_IS_EXISTS); MpAgentEntity agentEntity = AgentConvert.INSTANCE.convertOneSave(req); - boolean result = mpAgentService.saveAgent(agentEntity,req.getPassword()); + boolean result = mpAgentService.saveAgent(agentEntity, req.getPassword()); log.info("保存代理商结果: {}", result); return result; } @@ -124,10 +125,17 @@ public class AdminAgentService { log.warn("删除代理商时,ID列表为空"); return false; } + List agentList = mpAgentService.lambdaQuery().in(MpAgentEntity::getId, ids) + .select(MpAgentEntity::getContactUserId).list(); + List contactUserIdList = agentList.stream().map(MpAgentEntity::getContactUserId) + .filter(Objects::nonNull).toList(); + log.info("待删除代理商关联的用户ID列表: {}", contactUserIdList); boolean result = mpAgentService.removeByIds(ids); log.info("删除代理商结果: {}", result); if (result) { log.info("删除代理商成功,ID列表: {}", ids); + // 删除关联的用户数据 + userInfoServiceApi.deleteUserRoleByUserId(contactUserIdList); } return result; } diff --git a/seer-user/seer-user-api/src/main/java/com/seer/teach/user/api/UserInfoServiceApi.java b/seer-user/seer-user-api/src/main/java/com/seer/teach/user/api/UserInfoServiceApi.java index 6983f0a..8225b1e 100644 --- a/seer-user/seer-user-api/src/main/java/com/seer/teach/user/api/UserInfoServiceApi.java +++ b/seer-user/seer-user-api/src/main/java/com/seer/teach/user/api/UserInfoServiceApi.java @@ -195,4 +195,7 @@ public interface UserInfoServiceApi { @GetMapping("/getUserIdByMobile") boolean getUserIdByMobile(@RequestParam("mobile") String mobile); + @DeleteMapping("/deleteUserRoleByUserIds") + boolean deleteUserRoleByUserId(@RequestParam("userIds") List userIds); + } \ No newline at end of file diff --git a/seer-user/seer-user-data-model/src/main/java/com/seer/teach/user/entity/UserRoleEntity.java b/seer-user/seer-user-data-model/src/main/java/com/seer/teach/user/entity/UserRoleEntity.java index 3bde009..33b5259 100644 --- a/seer-user/seer-user-data-model/src/main/java/com/seer/teach/user/entity/UserRoleEntity.java +++ b/seer-user/seer-user-data-model/src/main/java/com/seer/teach/user/entity/UserRoleEntity.java @@ -4,9 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.seer.teach.common.entity.BaseEntity; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Builder; -import lombok.Getter; -import lombok.Setter; +import lombok.*; /** *

@@ -21,6 +19,8 @@ import lombok.Setter; @TableName("za_user_role") @Schema(name = "UserRoleEntity对象", description = "") @Builder +@NoArgsConstructor +@AllArgsConstructor public class UserRoleEntity extends BaseEntity { /** diff --git a/seer-user/seer-user-service/src/main/java/com/seer/teach/user/admin/api/UserInfoServiceApiImpl.java b/seer-user/seer-user-service/src/main/java/com/seer/teach/user/admin/api/UserInfoServiceApiImpl.java index b71c3b6..5086f6e 100644 --- a/seer-user/seer-user-service/src/main/java/com/seer/teach/user/admin/api/UserInfoServiceApiImpl.java +++ b/seer-user/seer-user-service/src/main/java/com/seer/teach/user/admin/api/UserInfoServiceApiImpl.java @@ -327,6 +327,17 @@ public class UserInfoServiceApiImpl implements UserInfoServiceApi { return one == null; } + @Override + public boolean deleteUserRoleByUserId(List userIds) { + log.info("删除用户角色,用户id{}", userIds); + List userRolesList = userRoleService.lambdaQuery().in(UserRoleEntity::getUserId, userIds).list(); + List ids = userRolesList.stream().map(UserRoleEntity::getId).filter(Objects::nonNull).toList(); + log.info("准备删除角色记录,ID列表: {}", ids); + boolean result = userRoleService.removeByIds(ids); + log.info("删除角色结果: {}", result); + return result; + } + /** * 推送更新孩子信息的MQ消息 *