package com.simuwang.daq.service; import cn.hutool.core.collection.CollUtil; import com.simuwang.base.mapper.EmailFileInfoMapper; import com.simuwang.base.mapper.EmailParseInfoMapper; import com.simuwang.base.pojo.dos.EmailParseInfoDO; import com.simuwang.base.pojo.dto.MailboxInfoDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; /** * @author mozuwen * @date 2024-09-12 * @description 邮件解析服务对外接口实现层 */ @Service public class EmailParseApiServiceImpl implements EmailParseApiService { private static final Logger log = LoggerFactory.getLogger(EmailParseApiServiceImpl.class); private final EmailParseService emailParseService; private final EmailParseInfoMapper emailParseInfoMapper; private final EmailFileInfoMapper emailFileInfoMapper; public EmailParseApiServiceImpl(EmailParseService emailParseService, EmailParseInfoMapper emailParseInfoMapper, EmailFileInfoMapper emailFileInfoMapper) { this.emailParseService = emailParseService; this.emailParseInfoMapper = emailParseInfoMapper; this.emailFileInfoMapper = emailFileInfoMapper; } @Override public void parseEmail(MailboxInfoDTO mailboxInfoDTO, Date startDate, Date endDate) { emailParseService.parseEmail(mailboxInfoDTO, startDate, endDate); } @Override public void reparseEmail(Integer emailId) { // 查询邮件信息 EmailParseInfoDO emailParseInfoDO = emailParseInfoMapper.queryById(emailId); if (emailParseInfoDO == null) { log.info("邮件不存在 ->邮件id:{}", emailId); return; } List emailParseInfoDOList = emailFileInfoMapper.queryByEmailId(emailId); if (CollUtil.isNotEmpty(emailParseInfoDOList)) { log.info("该邮件不存在附件 -> 邮件id:{}", emailId); return; } // todo 走解析流程 } }