MoDaqApplicationTests.java 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package com.smppw.modaq;
  2. import cn.hutool.core.collection.ListUtil;
  3. import cn.hutool.core.date.DateUtil;
  4. import com.smppw.modaq.application.service.EmailParseApiService;
  5. import com.smppw.modaq.common.conts.DateConst;
  6. import com.smppw.modaq.common.conts.EmailTypeConst;
  7. import com.smppw.modaq.domain.dto.MailboxInfoDTO;
  8. import com.smppw.modaq.domain.service.EmailParseService;
  9. import org.junit.jupiter.api.Test;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.boot.test.context.SpringBootTest;
  12. import java.util.Date;
  13. import java.util.List;
  14. @SpringBootTest(classes = MoDaqApplication.class)
  15. public class MoDaqApplicationTests {
  16. @Autowired
  17. private EmailParseService emailParseService;
  18. @Autowired
  19. private EmailParseApiService emailParseApiService;
  20. @Test
  21. public void test() {
  22. MailboxInfoDTO emailInfoDTO = this.buildMailbox("", "");
  23. Date startDate = DateUtil.parse("2024-10-10 15:00:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  24. Date endDate = DateUtil.parse("2024-10-10 16:40:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  25. try {
  26. emailParseService.parseEmail(emailInfoDTO, startDate, endDate, null, null);
  27. } catch (Exception e) {
  28. throw new RuntimeException(e);
  29. }
  30. }
  31. @Test
  32. public void reportTest() {
  33. MailboxInfoDTO emailInfoDTO = this.buildMailbox("**@simuwang.com", "**");
  34. Date startDate = DateUtil.parse("2025-05-07 10:20:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  35. Date endDate = DateUtil.parse("2025-05-07 19:42:05", DateConst.YYYY_MM_DD_HH_MM_SS);
  36. try {
  37. List<String> folderNames = ListUtil.list(false);
  38. // folderNames.add("其他文件夹/报告公告");
  39. folderNames.add("INBOX");
  40. emailParseService.parseEmail(emailInfoDTO, startDate, endDate,
  41. folderNames, EmailTypeConst.REPORT_EMAIL_TYPES);
  42. } catch (Exception e) {
  43. throw new RuntimeException(e);
  44. }
  45. }
  46. @Test
  47. public void testReparseEmail() {
  48. emailParseApiService.reparseEmail(23);
  49. }
  50. private MailboxInfoDTO buildMailbox(String account, String pwd) {
  51. MailboxInfoDTO emailInfoDTO = new MailboxInfoDTO();
  52. emailInfoDTO.setUserId(1);
  53. emailInfoDTO.setAccount(account);
  54. emailInfoDTO.setPassword(pwd);
  55. emailInfoDTO.setHost("imap.exmail.qq.com");
  56. emailInfoDTO.setPort("993");
  57. emailInfoDTO.setProtocol("imap");
  58. return emailInfoDTO;
  59. }
  60. }