EmailConfigController.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package com.simuwang.manage.api.email;
  2. import com.simuwang.base.common.page.TableDataInfo;
  3. import com.simuwang.base.pojo.vo.IdVO;
  4. import com.simuwang.base.pojo.vo.MailboxInfoTableVO;
  5. import com.simuwang.base.pojo.vo.MailboxInfoVO;
  6. import com.simuwang.manage.api.base.BaseController;
  7. import com.simuwang.manage.service.EmailConfigService;
  8. import com.smppw.common.pojo.ResultVo;
  9. import com.smppw.common.pojo.enums.status.ResultCode;
  10. import org.slf4j.Logger;
  11. import org.slf4j.LoggerFactory;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.RequestBody;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.RequestParam;
  16. import org.springframework.web.bind.annotation.RestController;
  17. import java.util.List;
  18. /**
  19. * 接收邮箱配置管理
  20. * Author: chenjianhua
  21. * Date: 2024/9/9 11:40
  22. * Description: ${DESCRIPTION}
  23. */
  24. @RestController
  25. @RequestMapping("/v1/email")
  26. public class EmailConfigController extends BaseController {
  27. @Autowired
  28. private EmailConfigService emailConfigService;
  29. private static final Logger logger = LoggerFactory.getLogger(EmailConfigController.class);
  30. /**
  31. * 页面展示查询
  32. * @param email
  33. * @return
  34. */
  35. @RequestMapping("search-email-list")
  36. public TableDataInfo searchEmailConfigList(@RequestParam(value = "email",required = false)String email){
  37. List<MailboxInfoTableVO> result = emailConfigService.searchEmailConfigList(email);
  38. return getDataTable(result);
  39. }
  40. /**
  41. * 保存邮箱配置
  42. * @param mailboxInfoVO
  43. * @return
  44. */
  45. @RequestMapping("save-email-config")
  46. public ResultVo saveEmailConfig(@RequestBody MailboxInfoVO mailboxInfoVO){
  47. ResultVo vo = new ResultVo(ResultCode.SAVE_SUCCESS.getCode());
  48. try{
  49. if(mailboxInfoVO.getId() == null && !emailConfigService.checkEmailUnique(mailboxInfoVO.getEmail())){
  50. vo.setCode(ResultCode.SAVE_FAILED.getCode());
  51. vo.setMsg("邮箱地址已存在,无需添加");
  52. return vo;
  53. }
  54. emailConfigService.saveEmailConfig(mailboxInfoVO);
  55. }catch (Exception e){
  56. vo.setCode(ResultCode.SAVE_FAILED.getCode());
  57. logger.error(e.getMessage(),e);
  58. }
  59. return vo;
  60. }
  61. /**
  62. * 批量删除邮箱配置
  63. * @param idVO
  64. * @return
  65. */
  66. @RequestMapping("delete-email-config")
  67. public ResultVo deleteEmailConfig(@RequestBody IdVO idVO){
  68. ResultVo vo = new ResultVo(ResultCode.DELETE_SUCCESS.getCode());
  69. try{
  70. emailConfigService.deleteEmailConfig(idVO.getIdList());
  71. }catch (Exception e){
  72. logger.error(e.getMessage(),e);
  73. vo.setCode(ResultCode.DELETE_FAILED.getCode());
  74. }
  75. return vo;
  76. }
  77. /**
  78. * 邮箱连接测试
  79. * @param mailboxInfoVO
  80. * @return
  81. */
  82. @RequestMapping("connect-test")
  83. public ResultVo connectTest(@RequestBody MailboxInfoVO mailboxInfoVO){
  84. ResultVo vo = new ResultVo(ResultCode.SUCCESS.getCode());
  85. String msg = "";
  86. try{
  87. msg = emailConfigService.connectTest(mailboxInfoVO);
  88. vo.setMsg(msg);
  89. }catch (Exception e){
  90. vo.setMsg(e.getMessage());
  91. }
  92. return vo;
  93. }
  94. }