1
0
Selaa lähdekoodia

基金关联文件查询,包含估值表和定期报告

chenjianhua 7 kuukautta sitten
vanhempi
commit
a3122e2327

+ 2 - 0
service-base/src/main/java/com/simuwang/base/mapper/EmailFileInfoMapper.java

@@ -2,6 +2,7 @@ package com.simuwang.base.mapper;
 
 import com.simuwang.base.pojo.dos.EmailFileInfoDO;
 import com.simuwang.base.pojo.dos.EmailParseInfoDO;
+import com.simuwang.base.pojo.vo.FundFileInfoVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -16,4 +17,5 @@ public interface EmailFileInfoMapper {
 
     List<EmailParseInfoDO> queryByEmailId(@Param("emailId") Integer emailId);
 
+    List<FundFileInfoVO> searchFundFileInfo(@Param("fundId") String fundId, @Param("fileType")Integer fileType);
 }

+ 21 - 0
service-base/src/main/java/com/simuwang/base/pojo/vo/FundFileInfoVO.java

@@ -0,0 +1,21 @@
+package com.simuwang.base.pojo.vo;
+
+import lombok.Data;
+
+/**
+ * 基金关联文件信息
+ * Author:   chenjianhua
+ * Date:     2024/9/13 9:51
+ * Description: ${DESCRIPTION}
+ */
+@Data
+public class FundFileInfoVO {
+
+    private String fundId;
+
+    private String fundName;
+
+    private String fileName;
+
+    private String filePath;
+}

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

@@ -16,7 +16,7 @@ import java.util.Date;
 @Data
 public class FundReportFrequencyVO {
     /**
-     * 基金ID
+     * 基金ID,批量保存的时候使用逗号隔开
      */
     private String fundId;
     /**

+ 17 - 0
service-base/src/main/resources/mapper/EmailFileInfoMapper.xml

@@ -34,5 +34,22 @@
         where email - id = #{emailId}
           and isvalid = 1
     </select>
+    <select id="searchFundFileInfo" resultType="com.simuwang.base.pojo.vo.FundFileInfoVO">
+        SELECT DISTINCT
+            efn.fund_id as "fundId",
+            efn.fund_name as "fundName",
+            efi.file_name as "fileName",
+            efi.file_path as "filePath"
+        FROM
+            EMAIL_FILE_INFO efi
+                JOIN EMAIL_FUND_NAV efn
+                     ON efi.id = efn.file_id
+                JOIN EMAIL_PARSE_INFO epi
+                     ON epi.id = efi.email_id
+        WHERE efi.isvalid = 1
+          AND efn.isvalid = 1
+          AND epi.isvalid = 1
+          AND epi.EMAIL_TYPE = #{fileType} and efn.fund_id=#{fundId}
+    </select>
 
 </mapper>

+ 48 - 0
service-manage/src/main/java/com/simuwang/manage/api/email/ParseEmailDetailController.java

@@ -0,0 +1,48 @@
+package com.simuwang.manage.api.email;
+
+import com.simuwang.base.common.page.TableDataInfo;
+import com.simuwang.base.pojo.vo.EmailFundNavAssetVO;
+import com.simuwang.manage.api.base.BaseController;
+import com.simuwang.manage.service.EmailFundInfoService;
+import com.simuwang.manage.service.ParseEmailDetailService;
+import com.smppw.common.pojo.enums.TimeRange;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
+/**
+ *  数据详情
+ * Author:   chenjianhua
+ * Date:     2024/9/10 11:21
+ * Description: ${DESCRIPTION}
+ */
+@RestController
+@RequestMapping("/v1/detail")
+public class ParseEmailDetailController extends BaseController {
+
+    @Autowired
+    private ParseEmailDetailService parseEmailDetailService;
+
+    /**
+     * 数据详情页面展示查询接口
+     * @param fundName
+     * @param fundName
+     * @param exceptionStatus
+     * @param priceStartDate
+     * @param priceEndDate
+     * @param updateStartDate
+     * @param updateEndDate
+     * @return
+     */
+    @GetMapping("/search-nav-detail")
+    public TableDataInfo searchNavDetail(@RequestParam(value = "fundName",required = false)String fundName,
+                                         @RequestParam(value = "emailTitle",required = false)String emailTitle,
+                                         @RequestParam(value = "exceptionStatus",required = false)Integer exceptionStatus,
+                                         @RequestParam(value = "priceStartDate",required = false)String priceStartDate,
+                                         @RequestParam(value = "priceEndDate",required = false)String priceEndDate,
+                                         @RequestParam(value = "updateStartDate",required = false)String updateStartDate,
+                                         @RequestParam(value = "updateEndDate",required = false)String updateEndDate){
+        List<EmailFundNavAssetVO> result = parseEmailDetailService.searchNavDetail(fundName,emailTitle,exceptionStatus,priceStartDate,priceEndDate,updateStartDate,updateEndDate);
+        return getDataTable(result);
+    }
+}

+ 18 - 0
service-manage/src/main/java/com/simuwang/manage/api/fund/FundInformationController.java

@@ -1,13 +1,16 @@
 package com.simuwang.manage.api.fund;
 
 import com.simuwang.base.common.page.TableDataInfo;
+import com.simuwang.base.pojo.vo.FundFileInfoVO;
 import com.simuwang.base.pojo.vo.FundInformationVO;
 import com.simuwang.base.pojo.vo.FundReportFrequencyVO;
 import com.simuwang.manage.api.base.BaseController;
+import com.simuwang.manage.service.EmailFundInfoService;
 import com.simuwang.manage.service.FundInformationService;
 import com.simuwang.manage.service.FundReportFrequencyService;
 import com.smppw.common.pojo.ResultVo;
 import com.smppw.common.pojo.enums.status.ResultCode;
+import org.apache.ibatis.annotations.Param;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -34,6 +37,8 @@ public class FundInformationController extends BaseController {
 
     @Autowired
     private FundReportFrequencyService fundReportFrequencyService;
+    @Autowired
+    private EmailFundInfoService emailFundInfoService;
     /**
      * 基金搜索输入框查询
      * @param keyword
@@ -85,5 +90,18 @@ public class FundInformationController extends BaseController {
         }
         return vo;
     }
+    /**
+     * 查询基金关联的数据文件
+     * @param fundId 基金ID
+     * @param fileType  文件类型,估值表转2,定期报告传3
+     * @param pageNum
+     * @param pageSize
+     * @return
+     */
+    @GetMapping("/search-fund-file")
+    public TableDataInfo searchFundFileInfo(@RequestParam("fundId")String fundId,@RequestParam("fileType")Integer fileType,@RequestParam(value = "pageNum",required = false)Integer pageNum,@RequestParam(value ="pageSize",required = false)Integer pageSize){
+        List<FundFileInfoVO> result = emailFundInfoService.searchFundFileInfo(fundId,fileType);
+        return getDataTable(result);
+    }
 
 }

+ 15 - 0
service-manage/src/main/java/com/simuwang/manage/service/EmailFundInfoService.java

@@ -0,0 +1,15 @@
+package com.simuwang.manage.service;
+
+import com.simuwang.base.pojo.vo.FundFileInfoVO;
+
+import java.util.List;
+
+/**
+ * FileName: EmailFundInfoService
+ * Author:   chenjianhua
+ * Date:     2024/9/13 9:55
+ * Description: ${DESCRIPTION}
+ */
+public interface EmailFundInfoService {
+    List<FundFileInfoVO> searchFundFileInfo(String fundId, Integer fileType);
+}

+ 28 - 0
service-manage/src/main/java/com/simuwang/manage/service/impl/EmailFundInfoServiceImpl.java

@@ -0,0 +1,28 @@
+package com.simuwang.manage.service.impl;
+
+import com.simuwang.base.mapper.EmailFileInfoMapper;
+import com.simuwang.base.pojo.vo.FundFileInfoVO;
+import com.simuwang.manage.service.EmailFundInfoService;
+import org.checkerframework.checker.units.qual.A;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * FileName: EmailFundInfoServiceImpl
+ * Author:   chenjianhua
+ * Date:     2024/9/13 9:55
+ * Description: ${DESCRIPTION}
+ */
+@Service
+public class EmailFundInfoServiceImpl implements EmailFundInfoService {
+
+    @Autowired
+    private EmailFileInfoMapper emailFileInfoMapper;
+
+    @Override
+    public List<FundFileInfoVO> searchFundFileInfo(String fundId, Integer fileType) {
+        return emailFileInfoMapper.searchFundFileInfo(fundId,fileType);
+    }
+}