Browse Source

Merge branch 'develop' of http://112.74.196.215:3000/Tech2/data-daq into develop

wangzaijun 7 months ago
parent
commit
1e9c3d195a
19 changed files with 145 additions and 38 deletions
  1. 6 0
      service-base/pom.xml
  2. 16 5
      service-base/src/main/java/com/simuwang/base/common/util/EmailUtil.java
  3. 9 8
      service-base/src/main/java/com/simuwang/base/common/util/ExcelUtil.java
  4. 2 2
      service-base/src/main/java/com/simuwang/base/config/ShiroConfig.java
  5. 3 0
      service-base/src/main/java/com/simuwang/base/pojo/dos/EmailFundAssetDO.java
  6. 4 0
      service-base/src/main/java/com/simuwang/base/pojo/dos/EmailFundNavDO.java
  7. 2 0
      service-base/src/main/java/com/simuwang/base/pojo/dos/EmailParseInfoDO.java
  8. 22 0
      service-base/src/main/java/com/simuwang/base/pojo/dto/query/EmailParseQuery.java
  9. 12 0
      service-base/src/main/java/com/simuwang/base/pojo/dto/query/ParseDetailPageQuery.java
  10. 4 0
      service-base/src/main/java/com/simuwang/base/pojo/vo/EmailFundAssetVO.java
  11. 4 0
      service-base/src/main/java/com/simuwang/base/pojo/vo/EmailFundNavVO.java
  12. 11 1
      service-base/src/main/java/com/simuwang/base/pojo/vo/EmailParseInfoVO.java
  13. 9 3
      service-base/src/main/resources/mapper/CompanyEmailHistoryMapper.xml
  14. 4 4
      service-base/src/main/resources/mapper/DeletionInfoMapper.xml
  15. 9 1
      service-base/src/main/resources/mapper/EmailFundAssetMapper.xml
  16. 8 1
      service-base/src/main/resources/mapper/EmailFundNavMapper.xml
  17. 18 9
      service-base/src/main/resources/mapper/EmailParseInfoMapper.xml
  18. 1 2
      service-manage/src/main/java/com/simuwang/manage/init/QuartzConfig.java
  19. 1 2
      service-manage/src/main/java/com/simuwang/manage/service/impl/EmailConfigServiceImpl.java

+ 6 - 0
service-base/pom.xml

@@ -230,6 +230,12 @@
         <dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-mail</artifactId>
             <artifactId>spring-boot-starter-mail</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.eclipse.angus</groupId>
+                    <artifactId>jakarta.mail</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         </dependency>
     </dependencies>
     </dependencies>
 
 

+ 16 - 5
service-base/src/main/java/com/simuwang/base/common/util/EmailUtil.java

@@ -70,6 +70,9 @@ public class EmailUtil {
             } else if ("BASE64DecoderStream".equals(contentClass)) {
             } else if ("BASE64DecoderStream".equals(contentClass)) {
                 if (StrUtil.isNotBlank(part.getFileName())) {
                 if (StrUtil.isNotBlank(part.getFileName())) {
                     String fileName = MimeUtility.decodeText(part.getFileName());
                     String fileName = MimeUtility.decodeText(part.getFileName());
+                    if (!isSupportedFileType(fileName)) {
+                        continue;
+                    }
                     emailContentInfoDTO.setFileName(fileName);
                     emailContentInfoDTO.setFileName(fileName);
 
 
                     String realPath = filePath + emailDate + fileName;
                     String realPath = filePath + emailDate + fileName;
@@ -111,6 +114,13 @@ public class EmailUtil {
         return emailContentInfoDTOList;
         return emailContentInfoDTOList;
     }
     }
 
 
+    private static boolean isSupportedFileType(String fileName) {
+        if (StrUtil.isBlank(fileName)) {
+            return false;
+        }
+        return ExcelUtil.isZip(fileName) || ExcelUtil.isExcel(fileName) || ExcelUtil.isPdf(fileName) || ExcelUtil.isHTML(fileName);
+    }
+
     /**
     /**
      * 根据日期过滤邮件
      * 根据日期过滤邮件
      *
      *
@@ -246,7 +256,8 @@ public class EmailUtil {
         }
         }
         return props;
         return props;
     }
     }
-    public static  void senEmail(MailboxInfoDTO mailboxInfoDTO, String emails, File file, JavaMailSender javaMailSender) throws Exception {
+
+    public static void senEmail(MailboxInfoDTO mailboxInfoDTO, String emails, File file, JavaMailSender javaMailSender) throws Exception {
         logger.info("send email begin .........");
         logger.info("send email begin .........");
         // 根据Session 构建邮件信息
         // 根据Session 构建邮件信息
         MimeMessage message = javaMailSender.createMimeMessage();
         MimeMessage message = javaMailSender.createMimeMessage();
@@ -254,8 +265,8 @@ public class EmailUtil {
         Address from = new InternetAddress(mailboxInfoDTO.getAccount());
         Address from = new InternetAddress(mailboxInfoDTO.getAccount());
         String[] emailArr = emails.split(";");
         String[] emailArr = emails.split(";");
         Address[] toArr = new Address[emailArr.length];
         Address[] toArr = new Address[emailArr.length];
-        for(int idx=0;idx<emailArr.length;idx++){
-            if(StringUtils.isNotEmpty(emailArr[idx])){
+        for (int idx = 0; idx < emailArr.length; idx++) {
+            if (StringUtils.isNotEmpty(emailArr[idx])) {
                 Address to = new InternetAddress(emailArr[idx]);
                 Address to = new InternetAddress(emailArr[idx]);
                 toArr[idx] = to;
                 toArr[idx] = to;
             }
             }
@@ -270,10 +281,10 @@ public class EmailUtil {
         BodyPart bodyPart = new MimeBodyPart();
         BodyPart bodyPart = new MimeBodyPart();
         logger.info("组装 htmlText.........");
         logger.info("组装 htmlText.........");
         // 邮件内容
         // 邮件内容
-        String htmlText ="<p>您好,附件为产品的数据未发送到最新,麻烦尽快发送缺失的数据。若是产品清算或者有其他原因不再发送数据,还请将产品的清算日期或者不再发送数据的原因发送给我们,非常感谢~\n</p>";
+        String htmlText = "<p>您好,附件为产品的数据未发送到最新,麻烦尽快发送缺失的数据。若是产品清算或者有其他原因不再发送数据,还请将产品的清算日期或者不再发送数据的原因发送给我们,非常感谢~\n</p>";
         bodyPart.setContent(htmlText, "text/html;charset=utf-8");
         bodyPart.setContent(htmlText, "text/html;charset=utf-8");
         //设置附件
         //设置附件
-        BodyPart filePart=new MimeBodyPart();
+        BodyPart filePart = new MimeBodyPart();
         filePart.setFileName(file.getName());
         filePart.setFileName(file.getName());
         filePart.setDataHandler(
         filePart.setDataHandler(
                 new DataHandler(
                 new DataHandler(

+ 9 - 8
service-base/src/main/java/com/simuwang/base/common/util/ExcelUtil.java

@@ -6,7 +6,6 @@ import cn.hutool.core.util.StrUtil;
 import com.simuwang.base.common.conts.DateConst;
 import com.simuwang.base.common.conts.DateConst;
 import org.apache.poi.hssf.usermodel.*;
 import org.apache.poi.hssf.usermodel.*;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.ss.usermodel.*;
-import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.jsoup.nodes.Element;
 import org.jsoup.nodes.Element;
 import org.jsoup.select.Elements;
 import org.jsoup.select.Elements;
@@ -18,7 +17,6 @@ import java.text.NumberFormat;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
-import java.util.UUID;
 
 
 import org.apache.commons.compress.archivers.ArchiveEntry;
 import org.apache.commons.compress.archivers.ArchiveEntry;
 import org.apache.commons.compress.archivers.ArchiveInputStream;
 import org.apache.commons.compress.archivers.ArchiveInputStream;
@@ -29,18 +27,21 @@ public class ExcelUtil {
 
 
     private static final Logger logger = LoggerFactory.getLogger(ExcelUtil.class);
     private static final Logger logger = LoggerFactory.getLogger(ExcelUtil.class);
 
 
-    public static boolean isExcel(String name) {
-        return name.endsWith("xls") || name.endsWith("xlsx");
+    public static boolean isExcel(String fileName) {
+        return StrUtil.isNotBlank(fileName) && (fileName.endsWith("xls") || fileName.endsWith("xlsx"));
     }
     }
 
 
-    public static boolean isPdf(String name) {
-        return name.endsWith("pdf") || name.endsWith("PDF");
+    public static boolean isPdf(String fileName) {
+        return StrUtil.isNotBlank(fileName) && (fileName.endsWith("pdf") || fileName.endsWith("PDF"));
     }
     }
 
 
-    public static boolean isZip(String filePath) {
-        return filePath.endsWith("zip") || filePath.endsWith("ZIP");
+    public static boolean isZip(String fileName) {
+        return StrUtil.isNotBlank(fileName) && (fileName.endsWith("zip") || fileName.endsWith("ZIP"));
     }
     }
 
 
+    public static boolean isHTML(String fileName) {
+        return StrUtil.isNotBlank(fileName) && fileName.endsWith("html");
+    }
     public static Sheet getSheet(File file, int sheetIndex) {
     public static Sheet getSheet(File file, int sheetIndex) {
         if (file == null || !file.exists()) {
         if (file == null || !file.exists()) {
             return null;
             return null;

+ 2 - 2
service-base/src/main/java/com/simuwang/base/config/ShiroConfig.java

@@ -149,8 +149,8 @@ public class ShiroConfig {
         map.put("/v1/test/**", "anon");
         map.put("/v1/test/**", "anon");
         map.put("/v1/login", "anon");
         map.put("/v1/login", "anon");
         map.put("/v1/rsa-key", "anon");
         map.put("/v1/rsa-key", "anon");
-        map.put("/v1/**", "jwt");
-        map.put("/**", "jwt");
+        map.put("/v1/**", "anon");
+        map.put("/**", "anon");
         return map;
         return map;
     }
     }
 
 

+ 3 - 0
service-base/src/main/java/com/simuwang/base/pojo/dos/EmailFundAssetDO.java

@@ -96,6 +96,8 @@ public class EmailFundAssetDO {
 
 
     private String emailTitle;
     private String emailTitle;
 
 
+    private String emailId;
+
     public EmailFundAssetVO toVo() {
     public EmailFundAssetVO toVo() {
         EmailFundAssetVO vo = new EmailFundAssetVO();
         EmailFundAssetVO vo = new EmailFundAssetVO();
         vo.setId(this.id);
         vo.setId(this.id);
@@ -109,6 +111,7 @@ public class EmailFundAssetDO {
         vo.setAssetNet(this.assetNet);
         vo.setAssetNet(this.assetNet);
         vo.setAssetShare(this.assetShare);
         vo.setAssetShare(this.assetShare);
         vo.setEmailTitle(this.emailTitle);
         vo.setEmailTitle(this.emailTitle);
+        vo.setEmailId(this.emailId);
         return vo;
         return vo;
     }
     }
 }
 }

+ 4 - 0
service-base/src/main/java/com/simuwang/base/pojo/dos/EmailFundNavDO.java

@@ -92,6 +92,9 @@ public class EmailFundNavDO {
 
 
     private String emailTitle;
     private String emailTitle;
 
 
+
+    private String emailId;
+
     public EmailFundNavVO toVo() {
     public EmailFundNavVO toVo() {
         EmailFundNavVO vo = new EmailFundNavVO();
         EmailFundNavVO vo = new EmailFundNavVO();
         vo.setId(this.id);
         vo.setId(this.id);
@@ -103,6 +106,7 @@ public class EmailFundNavDO {
         vo.setPriceDate(this.priceDate==null?null:DateUtils.format(this.priceDate, DateUtils.YYYY_MM_DD));
         vo.setPriceDate(this.priceDate==null?null:DateUtils.format(this.priceDate, DateUtils.YYYY_MM_DD));
         vo.setCumulativeNavWithdrawal(this.cumulativeNavWithdrawal);
         vo.setCumulativeNavWithdrawal(this.cumulativeNavWithdrawal);
         vo.setNav(this.nav);
         vo.setNav(this.nav);
+        vo.setEmailId(this.emailId);
         vo.setIsStored(this.isStored);
         vo.setIsStored(this.isStored);
         vo.setExceptionStatus(this.exceptionStatus);
         vo.setExceptionStatus(this.exceptionStatus);
         vo.setUpateTime(DateUtils.format(this.updateTime, DateUtils.YYYY_MM_DD_HH_MM_SS));
         vo.setUpateTime(DateUtils.format(this.updateTime, DateUtils.YYYY_MM_DD_HH_MM_SS));

+ 2 - 0
service-base/src/main/java/com/simuwang/base/pojo/dos/EmailParseInfoDO.java

@@ -84,6 +84,8 @@ public class EmailParseInfoDO {
         vo.setEmailTitle(this.emailTitle);
         vo.setEmailTitle(this.emailTitle);
         vo.setEmailType(this.emailType);
         vo.setEmailType(this.emailType);
         vo.setParseStatus(this.parseStatus);
         vo.setParseStatus(this.parseStatus);
+        vo.setEmailDate(DateUtils.format(this.emailDate,DateUtils.YYYY_MM_DD_HH_MM_SS));
+        vo.setSenderEmail(this.senderEmail);
         vo.setParseDate(DateUtils.format(this.parseDate,DateUtils.YYYY_MM_DD_HH_MM_SS));
         vo.setParseDate(DateUtils.format(this.parseDate,DateUtils.YYYY_MM_DD_HH_MM_SS));
         vo.setId(this.id);
         vo.setId(this.id);
         return vo;
         return vo;

+ 22 - 0
service-base/src/main/java/com/simuwang/base/pojo/dto/query/EmailParseQuery.java

@@ -10,6 +10,19 @@ import com.smppw.common.pojo.enums.TimeRange;
  * @description 角色用户关联的分页接口请求参数
  * @description 角色用户关联的分页接口请求参数
  */
  */
 public class EmailParseQuery extends PageQuery {
 public class EmailParseQuery extends PageQuery {
+
+    /**
+     * ID
+     */
+    private Integer id;
+    /**
+     * 收件邮箱
+     */
+    private String email;
+    /**
+     * 发送邮箱
+     */
+    private String senderEmail;
     /**
     /**
      * 邮箱主题
      * 邮箱主题
      */
      */
@@ -37,6 +50,15 @@ public class EmailParseQuery extends PageQuery {
      * 结束日期
      * 结束日期
      */
      */
     private String endDate;
     private String endDate;
+    /**
+     * 邮件发送开始时间
+     */
+    private String emailStartDate;
+    /**
+     * 邮件发送结束时间
+     */
+    private String emailEndDate;
+
 
 
     public String getEmailTitle() {
     public String getEmailTitle() {
         return emailTitle;
         return emailTitle;

+ 12 - 0
service-base/src/main/java/com/simuwang/base/pojo/dto/query/ParseDetailPageQuery.java

@@ -45,6 +45,18 @@ public class ParseDetailPageQuery extends PageQuery {
      * 邮件标题
      * 邮件标题
      */
      */
     private String emailTitle;
     private String emailTitle;
+    /**
+     * 邮件ID
+     */
+    private String emailId;
+
+    public String getEmailId() {
+        return emailId;
+    }
+
+    public void setEmailId(String emailId) {
+        this.emailId = emailId;
+    }
 
 
     public String getFundName() {
     public String getFundName() {
         return fundName;
         return fundName;

+ 4 - 0
service-base/src/main/java/com/simuwang/base/pojo/vo/EmailFundAssetVO.java

@@ -65,4 +65,8 @@ public class EmailFundAssetVO {
      * 邮件标题
      * 邮件标题
      */
      */
     private String emailTitle;
     private String emailTitle;
+    /**
+     * 邮件ID
+     */
+    private String emailId;
 }
 }

+ 4 - 0
service-base/src/main/java/com/simuwang/base/pojo/vo/EmailFundNavVO.java

@@ -66,4 +66,8 @@ public class EmailFundNavVO {
      * 邮件标题
      * 邮件标题
      */
      */
     private String emailTitle;
     private String emailTitle;
+    /**
+     * 邮件ID
+     */
+    private String emailId;
 }
 }

+ 11 - 1
service-base/src/main/java/com/simuwang/base/pojo/vo/EmailParseInfoVO.java

@@ -15,10 +15,20 @@ public class EmailParseInfoVO {
      */
      */
     private Integer id;
     private Integer id;
     /**
     /**
-     * 邮箱地址
+     * 收件人邮箱地址
      */
      */
     private String email;
     private String email;
     /**
     /**
+     * 发件人邮箱地址
+     */
+    private String senderEmail;
+
+    /**
+     * 邮件日期
+     */
+    private String emailDate;
+
+    /**
      * 解析日期
      * 解析日期
      */
      */
     private String parseDate;
     private String parseDate;

+ 9 - 3
service-base/src/main/resources/mapper/CompanyEmailHistoryMapper.xml

@@ -41,7 +41,7 @@
             cec.email,
             cec.email,
             maxce.send_time,
             maxce.send_time,
             maxce.send_remark,
             maxce.send_remark,
-            maxce.send_status
+            ifnull(maxce.send_status,-1) as send_status
         FROM
         FROM
         PPW_EMAIL.company_email_config cec
         PPW_EMAIL.company_email_config cec
         JOIN PPW_EMAIL.pvn_company_info c
         JOIN PPW_EMAIL.pvn_company_info c
@@ -55,9 +55,12 @@
         <if test="email != null and email !=''">
         <if test="email != null and email !=''">
             and cec.email like concat('%',#{email},'%')
             and cec.email like concat('%',#{email},'%')
         </if>
         </if>
-        <if test="sendStatus != null">
+        <if test="sendStatus != null and sendStatus != -1">
             and maxce.send_status=#{sendStatus}
             and maxce.send_status=#{sendStatus}
         </if>
         </if>
+        <if test="sendStatus == -1">
+            and maxce.send_status is null
+        </if>
         order by maxce.send_time desc
         order by maxce.send_time desc
         limit #{offset},#{pageSize}
         limit #{offset},#{pageSize}
     </select>
     </select>
@@ -79,9 +82,12 @@
         <if test="email != null and email !=''">
         <if test="email != null and email !=''">
             and cec.email like concat('%',#{email},'%')
             and cec.email like concat('%',#{email},'%')
         </if>
         </if>
-        <if test="sendStatus != null">
+        <if test="sendStatus != null and sendStatus != -1">
             and maxce.send_status=#{sendStatus}
             and maxce.send_status=#{sendStatus}
         </if>
         </if>
+        <if test="sendStatus == -1">
+            and maxce.send_status is null
+        </if>
     </select>
     </select>
 
 
     <select id="searchEmailHistory" resultMap="BaseResultMap">
     <select id="searchEmailHistory" resultMap="BaseResultMap">

+ 4 - 4
service-base/src/main/resources/mapper/DeletionInfoMapper.xml

@@ -98,7 +98,7 @@
             and (c.company_name like concat('%',#{companyName},'%') or c.company_short_name like concat('%',#{companyName},'%'))
             and (c.company_name like concat('%',#{companyName},'%') or c.company_short_name like concat('%',#{companyName},'%'))
         </if>
         </if>
         <if test="fundName != null and fundName !=''">
         <if test="fundName != null and fundName !=''">
-            and (info.fund_name like concat('%',#{fundName},'%') or info.fund_short_name like concat('%',#{fundName},'%'))
+            and (info.fund_name like concat('%',#{fundName},'%') or info.fund_short_name like concat('%',#{fundName},'%') or info.fund_id like concat('%',#{fundName},'%'))
         </if>
         </if>
         <if test="deletionType != null and deletionType != -1">
         <if test="deletionType != null and deletionType != -1">
             and d.deletion_type=#{deletionType}
             and d.deletion_type=#{deletionType}
@@ -154,7 +154,7 @@
             and (c.company_name like concat('%',#{companyName},'%') or c.company_short_name like concat('%',#{companyName},'%'))
             and (c.company_name like concat('%',#{companyName},'%') or c.company_short_name like concat('%',#{companyName},'%'))
         </if>
         </if>
         <if test="fundName != null and fundName !=''">
         <if test="fundName != null and fundName !=''">
-            and (info.fund_name like concat('%',#{fundName},'%') or info.fund_short_name like concat('%',#{fundName},'%'))
+            and (info.fund_name like concat('%',#{fundName},'%') or info.fund_short_name like concat('%',#{fundName},'%')  or info.fund_id like concat('%',#{fundName},'%'))
         </if>
         </if>
         <if test="deletionType != null and deletionType != -1">
         <if test="deletionType != null and deletionType != -1">
             and d.deletion_type=#{deletionType}
             and d.deletion_type=#{deletionType}
@@ -186,13 +186,13 @@
     <select id="searchFundDeletionList" resultMap="BaseMap"
     <select id="searchFundDeletionList" resultMap="BaseMap"
             parameterType="com.simuwang.base.pojo.dto.query.FundDeletionPageQuery">
             parameterType="com.simuwang.base.pojo.dto.query.FundDeletionPageQuery">
         select id,fund_id,deletion_type,deletion_date,remark,isvalid,creatorid,updaterid,createtime,updatetime
         select id,fund_id,deletion_type,deletion_date,remark,isvalid,creatorid,updaterid,createtime,updatetime
-        from PPW_EMAIL.deletion_info where isvalid=1 and fund_id=#{fundId} and remark is null
+        from PPW_EMAIL.deletion_info where isvalid=1 and fund_id=#{fundId}
         limit #{offset},#{pageSize}
         limit #{offset},#{pageSize}
     </select>
     </select>
     <select id="countFundDeletionList" resultType="java.lang.Long"
     <select id="countFundDeletionList" resultType="java.lang.Long"
             parameterType="com.simuwang.base.pojo.dto.query.FundDeletionPageQuery">
             parameterType="com.simuwang.base.pojo.dto.query.FundDeletionPageQuery">
         select count(1)
         select count(1)
-            from PPW_EMAIL.deletion_info where isvalid=1 and fund_id=#{fundId} and remark is null
+            from PPW_EMAIL.deletion_info where isvalid=1 and fund_id=#{fundId}
     </select>
     </select>
     <select id="selectFundDeletionInfoVOList" resultType="com.simuwang.base.pojo.dos.FundDeletionInfoDO"
     <select id="selectFundDeletionInfoVOList" resultType="com.simuwang.base.pojo.dos.FundDeletionInfoDO"
             parameterType="java.util.List">
             parameterType="java.util.List">

+ 9 - 1
service-base/src/main/resources/mapper/EmailFundAssetMapper.xml

@@ -18,6 +18,7 @@
         <result column="updaterid" property="updaterId"/>
         <result column="updaterid" property="updaterId"/>
         <result column="updatetime" property="updateTime"/>
         <result column="updatetime" property="updateTime"/>
         <result column="email_title" property="emailTitle"/>
         <result column="email_title" property="emailTitle"/>
+        <result column="email_id" property="emailId"/>
     </resultMap>
     </resultMap>
 
 
     <insert id="batchInsert" parameterType="com.simuwang.base.pojo.dos.EmailFundAssetDO">
     <insert id="batchInsert" parameterType="com.simuwang.base.pojo.dos.EmailFundAssetDO">
@@ -55,7 +56,8 @@
                         asset.is_stored,
                         asset.is_stored,
                         asset.exception_status,
                         asset.exception_status,
                         asset.updatetime,
                         asset.updatetime,
-                        parse.email_title
+                        parse.email_title,
+                        parse.id as email_id
         from PPW_EMAIL.email_fund_asset asset
         from PPW_EMAIL.email_fund_asset asset
         join PPW_EMAIL.email_file_info file
         join PPW_EMAIL.email_file_info file
         on asset.file_id = file.id
         on asset.file_id = file.id
@@ -83,6 +85,9 @@
         <if test="emailTitle != null and emailTitle != ''">
         <if test="emailTitle != null and emailTitle != ''">
             and parse.email_title like concat('%',#{emailTitle},'%')
             and parse.email_title like concat('%',#{emailTitle},'%')
         </if>
         </if>
+        <if test="emailId != null">
+            and parse.id =#{emailId}
+        </if>
         <if test="exceptionStatusList != null">
         <if test="exceptionStatusList != null">
             and asset.exception_status in
             and asset.exception_status in
             <foreach collection="exceptionStatusList" index="index" item="exceptionStatus" separator="," open="(" close=")">
             <foreach collection="exceptionStatusList" index="index" item="exceptionStatus" separator="," open="(" close=")">
@@ -123,6 +128,9 @@
         <if test="emailTitle != null and emailTitle != ''">
         <if test="emailTitle != null and emailTitle != ''">
             and parse.email_title like concat('%',#{emailTitle},'%')
             and parse.email_title like concat('%',#{emailTitle},'%')
         </if>
         </if>
+        <if test="emailId != null">
+            and parse.id =#{emailId}
+        </if>
         <if test="exceptionStatusList != null">
         <if test="exceptionStatusList != null">
             and asset.exception_status in
             and asset.exception_status in
             <foreach collection="exceptionStatusList" index="index" item="exceptionStatus" separator="," open="(" close=")">
             <foreach collection="exceptionStatusList" index="index" item="exceptionStatus" separator="," open="(" close=")">

+ 8 - 1
service-base/src/main/resources/mapper/EmailFundNavMapper.xml

@@ -58,7 +58,8 @@
             nav.exception_status,
             nav.exception_status,
             nav.is_stored,
             nav.is_stored,
             nav.updatetime,
             nav.updatetime,
-            parse.email_title
+            parse.email_title,
+            parse.id as email_id
         FROM
         FROM
             PPW_EMAIL.email_fund_nav nav
             PPW_EMAIL.email_fund_nav nav
             join PPW_EMAIL.email_file_info file
             join PPW_EMAIL.email_file_info file
@@ -93,6 +94,9 @@
         <if test="emailTitle != null and emailTitle != ''">
         <if test="emailTitle != null and emailTitle != ''">
             and parse.email_title like concat('%',#{emailTitle},'%')
             and parse.email_title like concat('%',#{emailTitle},'%')
         </if>
         </if>
+        <if test="emailId != null">
+            and parse.id=#{emailId}
+        </if>
         order by nav.updatetime desc
         order by nav.updatetime desc
         limit #{offset},#{pageSize}
         limit #{offset},#{pageSize}
     </select>
     </select>
@@ -143,6 +147,9 @@
         <if test="emailTitle != null and emailTitle != ''">
         <if test="emailTitle != null and emailTitle != ''">
             and parse.email_title like concat('%',#{emailTitle},'%')
             and parse.email_title like concat('%',#{emailTitle},'%')
         </if>
         </if>
+        <if test="emailId != null">
+            and parse.id=#{emailId}
+        </if>
         ) a
         ) a
     </select>
     </select>
     <select id="countNoStoreNav" resultType="java.lang.Integer" parameterType="java.lang.String">
     <select id="countNoStoreNav" resultType="java.lang.Integer" parameterType="java.lang.String">

+ 18 - 9
service-base/src/main/resources/mapper/EmailParseInfoMapper.xml

@@ -15,6 +15,7 @@
         <result column="createtime" property="createTime"/>
         <result column="createtime" property="createTime"/>
         <result column="updaterid" property="updaterId"/>
         <result column="updaterid" property="updaterId"/>
         <result column="updatetime" property="updateTime"/>
         <result column="updatetime" property="updateTime"/>
+        <result column="sender_email" property="senderEmail"/>
     </resultMap>
     </resultMap>
 
 
 
 
@@ -31,14 +32,6 @@
         where isvalid = 1
         where isvalid = 1
           and id = #{id}
           and id = #{id}
     </update>
     </update>
-    <resultMap id="TableResultMap" type="com.simuwang.base.pojo.vo.EmailParseInfoVO">
-        <id column="id" property="id"/>
-        <result column="email" property="email"/>
-        <result column="parse_date" property="parseDate" />
-        <result column="email_title" property="emailTitle"/>
-        <result column="email_type" property="emailType"/>
-        <result column="parse_status" property="parseStatus"/>
-    </resultMap>
     <sql id="selectEmailParse">
     <sql id="selectEmailParse">
         SELECT
         SELECT
             epi.id,
             epi.id,
@@ -52,7 +45,8 @@
             epi.creatorid,
             epi.creatorid,
             epi.createtime,
             epi.createtime,
             epi.updatetime,
             epi.updatetime,
-            epi.updaterid
+            epi.updaterid,
+            epi.sender_email
         FROM
         FROM
             PPW_EMAIL.email_parse_info epi
             PPW_EMAIL.email_parse_info epi
     </sql>
     </sql>
@@ -75,6 +69,21 @@
             <if test="endDate !=null and endDate != ''">
             <if test="endDate !=null and endDate != ''">
                 and epi.parse_date <![CDATA[ <= ]]> #{endDate}
                 and epi.parse_date <![CDATA[ <= ]]> #{endDate}
             </if>
             </if>
+            <if test="emailStartDate !=null and emailStartDate != ''">
+                and epi.email_date <![CDATA[ >= ]]> #{startDate}
+            </if>
+            <if test="emailEndDate !=null and emailEndDate != ''">
+                and epi.email_date <![CDATA[ <= ]]> #{emailEndDate}
+            </if>
+            <if test="id !=null">
+                and epi.id = #{id}
+            </if>
+            <if test="email !=null and email !=''">
+                and epi.email like concat('%',#{email},'%')
+            </if>
+            <if test="senderEmail !=null and senderEmail !=''">
+                and epi.sender_email like concat('%',#{senderEmail},'%')
+            </if>
         </where>
         </where>
     </sql>
     </sql>
     <select id="searchEmailList" resultMap="BaseResultMap">
     <select id="searchEmailList" resultMap="BaseResultMap">

+ 1 - 2
service-manage/src/main/java/com/simuwang/manage/init/QuartzConfig.java

@@ -71,9 +71,8 @@ public class QuartzConfig implements ApplicationRunner {
                 paramDTO.setAccount(mailboxInfoDO.getEmail());
                 paramDTO.setAccount(mailboxInfoDO.getEmail());
                 String password = mailboxInfoDO.getPassword();
                 String password = mailboxInfoDO.getPassword();
                 try{
                 try{
-                    String publicKey = this.properties.getSecurityRsa().getPublicKey();
                     String privateKey = this.properties.getSecurityRsa().getPrivateKey();
                     String privateKey = this.properties.getSecurityRsa().getPrivateKey();
-                    password = new RSA(privateKey, publicKey).decryptStr(password, KeyType.PrivateKey);
+                    password = new RSA(privateKey, null).decryptStr(password, KeyType.PrivateKey);
                 }catch (Exception e){
                 }catch (Exception e){
                     logger.error(e.getMessage(),e);
                     logger.error(e.getMessage(),e);
                 }
                 }

+ 1 - 2
service-manage/src/main/java/com/simuwang/manage/service/impl/EmailConfigServiceImpl.java

@@ -111,9 +111,8 @@ public class EmailConfigServiceImpl implements EmailConfigService {
 
 
     private String getPassword(String password){
     private String getPassword(String password){
         try{
         try{
-            String publicKey = this.properties.getSecurityRsa().getPublicKey();
             String privateKey = this.properties.getSecurityRsa().getPrivateKey();
             String privateKey = this.properties.getSecurityRsa().getPrivateKey();
-            password = new RSA(privateKey, publicKey).decryptStr(password, KeyType.PrivateKey);
+            password = new RSA(privateKey, null).decryptStr(password, KeyType.PrivateKey);
         }catch (Exception e){
         }catch (Exception e){
             logger.error(e.getMessage(),e);
             logger.error(e.getMessage(),e);
         }
         }