1
0

CompanyEmailConfigServiceImpl.java 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package com.simuwang.manage.service.impl;
  2. import com.simuwang.base.common.enums.OpenStatusType;
  3. import com.simuwang.base.common.util.StringUtil;
  4. import com.simuwang.base.mapper.CompanyEmailConfigMapper;
  5. import com.simuwang.base.pojo.dos.CompanyEmailConfigDO;
  6. import com.simuwang.base.pojo.vo.CompanyEmailConfigVO;
  7. import com.simuwang.manage.service.CompanyEmailConfigService;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.util.ArrayList;
  11. import java.util.Date;
  12. import java.util.List;
  13. /**
  14. * FileName: CompanyEmailConfigServiceImpl
  15. * Author: chenjianhua
  16. * Date: 2024/9/7 12:55
  17. * Description: ${DESCRIPTION}
  18. */
  19. @Service
  20. public class CompanyEmailConfigServiceImpl implements CompanyEmailConfigService {
  21. @Autowired
  22. private CompanyEmailConfigMapper companyEmailConfigMapper;
  23. @Override
  24. public void saveCompanyEmailConfig(List<CompanyEmailConfigVO> companyEmailConfigVOS) {
  25. try{
  26. for(CompanyEmailConfigVO emailConfigVO : companyEmailConfigVOS){
  27. CompanyEmailConfigDO emailConfigDO = new CompanyEmailConfigDO();
  28. emailConfigDO.setCompanyId(emailConfigVO.getCompanyId());
  29. emailConfigDO.setCompanyName(emailConfigVO.getCompanyName());
  30. emailConfigDO.setEmail(emailConfigVO.getEmail());
  31. emailConfigDO.setOpenStatus(emailConfigVO.getOpenStatus());
  32. emailConfigDO.setIsvalid(1);
  33. emailConfigDO.setUpdateTime(new Date());
  34. CompanyEmailConfigDO oldEmailConfigDO = companyEmailConfigMapper.selectEmailConfig(emailConfigVO.getCompanyId(),emailConfigVO.getEmail());
  35. if(!StringUtil.isNull(oldEmailConfigDO)){
  36. emailConfigVO.setId(oldEmailConfigDO.getId());
  37. }
  38. if(emailConfigVO.getId() != null){
  39. emailConfigDO.setId(emailConfigVO.getId());
  40. companyEmailConfigMapper.updateCompanyEmailConfig(emailConfigDO);
  41. }else{
  42. emailConfigDO.setCreateTime(new Date());
  43. companyEmailConfigMapper.saveCompanyEmailConfig(emailConfigDO);
  44. }
  45. }
  46. }catch (Exception e){
  47. }
  48. }
  49. @Override
  50. public void deleteCompanyEmailConfig(Integer id) {
  51. CompanyEmailConfigDO configDO = companyEmailConfigMapper.selectById(id);
  52. if (configDO != null) {
  53. configDO.setIsvalid(0);
  54. configDO.setUpdateTime(new Date());
  55. companyEmailConfigMapper.updateById(configDO);
  56. }
  57. }
  58. @Override
  59. public void updateCompanyEmailConfig(CompanyEmailConfigVO companyEmailConfigVO) {
  60. CompanyEmailConfigDO configDO = companyEmailConfigMapper.selectCompanyEmailConfigById(companyEmailConfigVO.getId());
  61. if(configDO != null){
  62. configDO.setEmail(companyEmailConfigVO.getEmail());
  63. configDO.setCompanyId(companyEmailConfigVO.getCompanyId());
  64. configDO.setCompanyName(companyEmailConfigVO.getCompanyName());
  65. configDO.setUpdateTime(new Date());
  66. companyEmailConfigMapper.updateCompanyEmailConfig(configDO);
  67. }
  68. }
  69. @Override
  70. public void sendCompanyEmail(List<String> companyIdList) {
  71. for(String companyId : companyIdList){
  72. List<CompanyEmailConfigVO> configVOs = companyEmailConfigMapper.searchEmailConfigByCompanyId(companyId);
  73. if(configVOs .size() > 0){
  74. List<String> emailList = new ArrayList<>();
  75. for(CompanyEmailConfigVO configVO : configVOs){
  76. if(configVO.getOpenStatus().equals(OpenStatusType.YES.getCode())){
  77. //获取开启的邮箱地址
  78. emailList.add(configVO.getEmail());
  79. }
  80. }
  81. //把缺失数据的邮件发送到该公司名下的邮箱地址
  82. sendEmail(companyId,emailList);
  83. }
  84. }
  85. }
  86. //邮件校验处理
  87. private void sendEmail(String companyId, List<String> emailList) {
  88. }
  89. }