HostedEmailServiceImpl.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.simuwang.manage.service.impl;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.simuwang.base.common.support.MybatisPage;
  4. import com.simuwang.base.mapper.daq.HostedEmailInfoMapper;
  5. import com.simuwang.base.pojo.dos.ChannelInfoDO;
  6. import com.simuwang.base.pojo.dos.ChannelPageInfoDO;
  7. import com.simuwang.base.pojo.dos.HostedEmailInfoDO;
  8. import com.simuwang.base.pojo.dto.query.HostedEmailPageQuery;
  9. import com.simuwang.base.pojo.vo.ChannelPageInfoVO;
  10. import com.simuwang.base.pojo.vo.HostedEmailInfoVO;
  11. import com.simuwang.manage.service.HostedEmailService;
  12. import com.simuwang.shiro.utils.UserUtils;
  13. import com.smppw.common.pojo.ResultVo;
  14. import com.smppw.common.pojo.enums.status.ResultCode;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.stereotype.Service;
  17. import java.util.Date;
  18. import java.util.List;
  19. import java.util.Objects;
  20. import java.util.stream.Collectors;
  21. @Service
  22. public class HostedEmailServiceImpl implements HostedEmailService {
  23. @Autowired
  24. private HostedEmailInfoMapper hostedEmailInfoMapper;
  25. @Override
  26. public ResultVo saveHostEmail(HostedEmailInfoVO hostedEmailInfoVO) {
  27. ResultVo vo = new ResultVo(ResultCode.SAVE_SUCCESS.getCode());
  28. Integer userId = UserUtils.getLoginUser().getUserId();
  29. HostedEmailInfoDO hostedEmailInfoDO = BeanUtil.copyProperties(hostedEmailInfoVO,HostedEmailInfoDO.class);
  30. hostedEmailInfoDO.setUpdateTime(new Date());
  31. hostedEmailInfoDO.setUpdaterId(userId);
  32. hostedEmailInfoDO.setIsvalid(1);
  33. if(hostedEmailInfoDO.getId() == null){
  34. //判断渠道是否已经存在
  35. HostedEmailInfoDO oldHostedEmailInfoDO = hostedEmailInfoMapper.selectHostedEmailInfoDO(hostedEmailInfoDO.getEmail());
  36. if(oldHostedEmailInfoDO != null){
  37. vo.setCode(ResultCode.SAVE_FAILED.getCode());
  38. vo.setMsg("托管邮箱已经存在无需添加");
  39. vo.setData(false);
  40. return vo;
  41. }
  42. hostedEmailInfoDO.setCreatorId(userId);
  43. hostedEmailInfoDO.setCreateTime(new Date());
  44. hostedEmailInfoMapper.saveHostedEmailInfoDO(hostedEmailInfoDO);
  45. }else{
  46. hostedEmailInfoMapper.updateById(hostedEmailInfoDO);
  47. }
  48. vo.setData(true);
  49. return vo;
  50. }
  51. @Override
  52. public ResultVo deleteHostEmail(List<Integer> idList) {
  53. ResultVo vo = new ResultVo(ResultCode.DELETE_SUCCESS.getCode());
  54. Integer userId = UserUtils.getLoginUser().getUserId();
  55. hostedEmailInfoMapper.deleteHostEmail(idList,userId);
  56. vo.setData(true);
  57. return vo;
  58. }
  59. @Override
  60. public MybatisPage<HostedEmailInfoVO> searchHostEmailPage(HostedEmailPageQuery hostedEmailPageQuery) {
  61. List<HostedEmailInfoDO> dataList = hostedEmailInfoMapper.searchHostEmailPage(hostedEmailPageQuery);
  62. List<HostedEmailInfoVO> voList = dataList.stream().filter(Objects::nonNull).map(HostedEmailInfoDO::toVO).collect(Collectors.toList());
  63. long total = hostedEmailInfoMapper.countHostEmailPage(hostedEmailPageQuery);
  64. return MybatisPage.of(total, voList);
  65. }
  66. }