From 4c3a2e87d0272a111d0f091a6c350de6ce477604 Mon Sep 17 00:00:00 2001 From: bunny <1319900154@qq.com> Date: Mon, 14 Oct 2024 16:00:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=82=AE=E4=BB=B6=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/system/email/EmailTemplateAddDto.java | 4 ++++ .../system/email/EmailTemplateUpdateDto.java | 6 ++++- .../dao/entity/system/EmailTemplate.java | 3 +++ .../dao/vo/system/email/EmailTemplateVo.java | 11 ++++++++++ .../controller/EmailUsersController.java | 8 +++++++ .../services/service/EmailUsersService.java | 9 ++++++++ .../service/impl/EmailUsersServiceImpl.java | 22 ++++++++++++++++--- service/src/main/resources/application.yml | 2 +- .../resources/mapper/EmailTemplateMapper.xml | 3 ++- 9 files changed, 62 insertions(+), 6 deletions(-) diff --git a/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateAddDto.java b/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateAddDto.java index fd0ef25..696784d 100644 --- a/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateAddDto.java +++ b/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateAddDto.java @@ -20,6 +20,10 @@ public class EmailTemplateAddDto { @NotNull(message = "模板名称不能为空") private String templateName; + @Schema(name = "emailUser", title = "配置邮件用户") + @NotNull(message = "配置邮件用户不能为空") + private Long emailUser; + @Schema(name = "subject", title = "主题") @NotBlank(message = "主题不能为空") @NotNull(message = "主题不能为空") diff --git a/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateUpdateDto.java b/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateUpdateDto.java index 404939d..0b30f46 100644 --- a/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateUpdateDto.java +++ b/dao/src/main/java/cn/bunny/dao/dto/system/email/EmailTemplateUpdateDto.java @@ -18,12 +18,16 @@ public class EmailTemplateUpdateDto { @Schema(name = "id", title = "主键") @NotNull(message = "id不能为空") private Long id; - + @Schema(name = "templateName", title = "模板名称") @NotBlank(message = "模板名称不能为空") @NotNull(message = "模板名称不能为空") private String templateName; + @Schema(name = "emailUser", title = "配置邮件用户") + @NotNull(message = "配置邮件用户不能为空") + private Long emailUser; + @Schema(name = "subject", title = "主题") @NotBlank(message = "主题不能为空") @NotNull(message = "主题不能为空") diff --git a/dao/src/main/java/cn/bunny/dao/entity/system/EmailTemplate.java b/dao/src/main/java/cn/bunny/dao/entity/system/EmailTemplate.java index 0b1165a..056a819 100644 --- a/dao/src/main/java/cn/bunny/dao/entity/system/EmailTemplate.java +++ b/dao/src/main/java/cn/bunny/dao/entity/system/EmailTemplate.java @@ -25,6 +25,9 @@ public class EmailTemplate extends BaseEntity { @Schema(name = "templateName", title = "模板名称") private String templateName; + @Schema(name = "emailUser", title = "模板名称") + private Long emailUser; + @Schema(name = "subject", title = "主题") private String subject; diff --git a/dao/src/main/java/cn/bunny/dao/vo/system/email/EmailTemplateVo.java b/dao/src/main/java/cn/bunny/dao/vo/system/email/EmailTemplateVo.java index d9e9a50..a9984b5 100644 --- a/dao/src/main/java/cn/bunny/dao/vo/system/email/EmailTemplateVo.java +++ b/dao/src/main/java/cn/bunny/dao/vo/system/email/EmailTemplateVo.java @@ -1,6 +1,9 @@ package cn.bunny.dao.vo.system.email; import cn.bunny.dao.vo.BaseVo; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; @@ -15,6 +18,14 @@ public class EmailTemplateVo extends BaseVo { @Schema(name = "templateName", title = "模板名称") private String templateName; + @Schema(name = "emailUser", title = "配置邮件用户") + @JsonFormat(shape = JsonFormat.Shape.STRING) + @JSONField(serializeUsing = ToStringSerializer.class) + private Long emailUser; + + @Schema(name = "emailUsername", title = "邮箱账户") + private String emailUsername; + @Schema(name = "subject", title = "主题") private String subject; diff --git a/service/src/main/java/cn/bunny/services/controller/EmailUsersController.java b/service/src/main/java/cn/bunny/services/controller/EmailUsersController.java index 5b43671..e4f5eb4 100644 --- a/service/src/main/java/cn/bunny/services/controller/EmailUsersController.java +++ b/service/src/main/java/cn/bunny/services/controller/EmailUsersController.java @@ -20,6 +20,7 @@ import org.springframework.web.bind.annotation.*; import reactor.core.publisher.Mono; import java.util.List; +import java.util.Map; /** *

@@ -50,6 +51,13 @@ public class EmailUsersController { return Mono.just(Result.success(pageResult)); } + @Operation(summary = "获取所有邮箱配置用户", description = "获取所有邮箱配置用户") + @GetMapping("getAllMailboxConfigurationUsers") + public Mono>>> getAllMailboxConfigurationUsers() { + List> list = emailUsersService.getAllMailboxConfigurationUsers(); + return Mono.just(Result.success(list)); + } + @Operation(summary = "添加邮箱用户发送配置", description = "添加邮箱用户发送配置") @PostMapping("addEmailUsers") public Mono> addEmailUsers(@Valid @RequestBody EmailUsersAddDto dto) { diff --git a/service/src/main/java/cn/bunny/services/service/EmailUsersService.java b/service/src/main/java/cn/bunny/services/service/EmailUsersService.java index c78d300..78234f6 100644 --- a/service/src/main/java/cn/bunny/services/service/EmailUsersService.java +++ b/service/src/main/java/cn/bunny/services/service/EmailUsersService.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import jakarta.validation.Valid; import java.util.List; +import java.util.Map; /** *

@@ -57,4 +58,12 @@ public interface EmailUsersService extends IService { * @param dto 邮箱用户更新状态表单 */ void updateEmailUserStatus(EmailUserUpdateStatusDto dto); + + /** + * * 获取所有邮箱配置用户 + * + * @return 邮件用户列表 + */ + List> getAllMailboxConfigurationUsers(); + } diff --git a/service/src/main/java/cn/bunny/services/service/impl/EmailUsersServiceImpl.java b/service/src/main/java/cn/bunny/services/service/impl/EmailUsersServiceImpl.java index eb35d7c..047269d 100644 --- a/service/src/main/java/cn/bunny/services/service/impl/EmailUsersServiceImpl.java +++ b/service/src/main/java/cn/bunny/services/service/impl/EmailUsersServiceImpl.java @@ -22,7 +22,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** *

@@ -71,9 +73,8 @@ public class EmailUsersServiceImpl extends ServiceImpl emailUsersList = list(Wrappers.lambdaQuery().eq(EmailUsers::getEmail, dto.getEmail())); if (!emailUsersList.isEmpty()) throw new BunnyException(ResultCodeEnum.EMAIL_EXIST); @@ -112,7 +113,7 @@ public class EmailUsersServiceImpl extends ServiceImpl ids) { // 判断数据请求是否为空 if (ids.isEmpty()) throw new BunnyException(ResultCodeEnum.REQUEST_IS_EMPTY); - + baseMapper.deleteBatchIdsWithPhysics(ids); } @@ -130,4 +131,19 @@ public class EmailUsersServiceImpl extends ServiceImpl> getAllMailboxConfigurationUsers() { + return list().stream().map(emailUsers -> { + Map map = new HashMap<>(); + map.put("key", emailUsers.getEmail()); + map.put("value", emailUsers.getId().toString()); + return map; + }).toList(); + } } diff --git a/service/src/main/resources/application.yml b/service/src/main/resources/application.yml index a7be05d..2920804 100644 --- a/service/src/main/resources/application.yml +++ b/service/src/main/resources/application.yml @@ -67,7 +67,7 @@ spring: quartz: job-store-type: jdbc jdbc: - initialize-schema: always + initialize-schema: embedded auto-startup: true wait-for-jobs-to-complete-on-shutdown: true overwrite-existing-jobs: false diff --git a/service/src/main/resources/mapper/EmailTemplateMapper.xml b/service/src/main/resources/mapper/EmailTemplateMapper.xml index 4353098..e3e7576 100644 --- a/service/src/main/resources/mapper/EmailTemplateMapper.xml +++ b/service/src/main/resources/mapper/EmailTemplateMapper.xml @@ -11,6 +11,7 @@ + @@ -19,7 +20,7 @@ - id, create_time, update_time, create_user, update_user, is_deleted, template_name, subject, body, type, is_default + id, create_time, update_time, create_user, update_user, is_deleted, template_name, email_user, subject, body, type, is_default