CompanyEmailConfigServiceImpl.java 3.7 KB

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