MoDaqApplicationTests.java 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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 letterTest() {
  22. MailboxInfoDTO emailInfoDTO = this.buildMailbox("*@simuwang.com", "*");
  23. Date startDate = DateUtil.parse("2025-06-09 14:55:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  24. Date endDate = DateUtil.parse("2025-06-09 18:56:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  25. try {
  26. List<String> folderNames = ListUtil.list(false);
  27. // folderNames.add("其他文件夹/报告公告");
  28. folderNames.add("INBOX");
  29. emailParseService.parseEmail(emailInfoDTO, startDate, endDate,
  30. folderNames, ListUtil.of(EmailTypeConst.REPORT_LETTER_EMAIL_TYPE));
  31. } catch (Exception e) {
  32. throw new RuntimeException(e);
  33. }
  34. }
  35. @Test
  36. public void reportTest() {
  37. MailboxInfoDTO emailInfoDTO = this.buildMailbox("*@simuwang.com", "*");
  38. Date startDate = DateUtil.parse("2025-06-09 14:40:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  39. Date endDate = DateUtil.parse("2025-06-09 18:56:00", DateConst.YYYY_MM_DD_HH_MM_SS);
  40. try {
  41. List<String> folderNames = ListUtil.list(false);
  42. // folderNames.add("其他文件夹/报告公告");
  43. folderNames.add("INBOX");
  44. emailParseService.parseEmail(emailInfoDTO, startDate, endDate,
  45. folderNames, EmailTypeConst.REPORT_EMAIL_TYPES);
  46. } catch (Exception e) {
  47. throw new RuntimeException(e);
  48. }
  49. }
  50. // @Test
  51. // public void testReparseEmail() {
  52. // emailParseApiService.reparseEmail(23);
  53. // }
  54. private MailboxInfoDTO buildMailbox(String account, String pwd) {
  55. MailboxInfoDTO emailInfoDTO = new MailboxInfoDTO();
  56. emailInfoDTO.setUserId(1);
  57. emailInfoDTO.setAccount(account);
  58. emailInfoDTO.setPassword(pwd);
  59. emailInfoDTO.setHost("imap.exmail.qq.com");
  60. emailInfoDTO.setPort("993");
  61. emailInfoDTO.setProtocol("imap");
  62. return emailInfoDTO;
  63. }
  64. }