Browse Source

feat:基金净值采集结果明细增加日志输出

mozuwen 5 tháng trước cách đây
mục cha
commit
9ffb7aedeb

+ 2 - 0
service-base/src/main/java/com/simuwang/base/pojo/dto/FundNavDataDTO.java

@@ -5,8 +5,10 @@ import com.alibaba.excel.annotation.ExcelProperty;
 import com.alibaba.excel.annotation.write.style.ColumnWidth;
 import com.alibaba.excel.annotation.write.style.HeadFontStyle;
 import lombok.Data;
+import lombok.ToString;
 
 @Data
+@ToString
 public class FundNavDataDTO {
 
     /**

+ 9 - 0
service-manage/src/main/java/com/simuwang/manage/service/competition/FundNavService.java

@@ -11,6 +11,8 @@ import com.simuwang.base.pojo.dto.FundNavDataDTO;
 import com.simuwang.base.pojo.dto.FundNavDeletionDTO;
 import com.simuwang.base.pojo.dto.TradeDateDTO;
 import com.simuwang.base.pojo.dto.competition.CompetitionBaseResultDTO;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -24,6 +26,8 @@ import java.util.stream.Collectors;
 @Service
 public class FundNavService {
 
+    private final static Logger log = LoggerFactory.getLogger(FundNavService.class);
+
     private final NavMapper navMapper;
     private final FundInfoMapper fundInfoMapper;
     private final AssetMapper assetMapper;
@@ -46,6 +50,7 @@ public class FundNavService {
         List<FundNavDataDTO> navDataDTOList = CollUtil.newArrayList();
         List<NavDO> navDOList = navMapper.queryAllNav(competitionId);
         if (CollUtil.isEmpty(navDOList)) {
+            log.info("无净值数据");
             return navDataDTOList;
         }
         // 过滤出周频的净值点
@@ -58,16 +63,20 @@ public class FundNavService {
         Map<String, FundAndCompanyInfoDO> fundIdCompanyNameMap = fundInfoCompanyNameList.stream().collect(Collectors.toMap(FundAndCompanyInfoDO::getFundId, v -> v));
         List<AssetDO> assetDOList = assetMapper.queryAssetByFundId(fundIdList);
         Map<String, List<AssetDO>> fundIdAssetMap = MapUtil.newHashMap();
+        log.info("查询基金规模数据");
         if (CollUtil.isNotEmpty(assetDOList)) {
             fundIdAssetMap = assetDOList.stream().collect(Collectors.groupingBy(AssetDO::getFundId));
+            log.info("fundIdAssetMap:{}",fundIdAssetMap);
         }
         Map<String, List<NavDO>> fundIdNavMap = navDOList.stream().collect(Collectors.groupingBy(NavDO::getFundId));
         for (Map.Entry<String, List<NavDO>> fundIdNavEntry : fundIdNavMap.entrySet()) {
             String fundId = fundIdNavEntry.getKey();
+            log.info("组装基金净值明细数据 -> 基金id:{}",fundId);
             List<NavDO> fundNavDoList = fundIdNavEntry.getValue();
             List<AssetDO> fundAssetDoList = fundIdAssetMap.get(fundId);
             FundAndCompanyInfoDO fundInfoDO = fundIdCompanyNameMap.get(fundId);
             List<FundNavDataDTO> fundNavDataDTOList = buildFundNavDataDTO(fundInfoDO, fundNavDoList, fundAssetDoList);
+            log.info("基金净值明细数据:{}",fundNavDataDTOList);
             navDataDTOList.addAll(fundNavDataDTOList);
         }
         return navDataDTOList;

+ 1 - 0
service-manage/src/main/java/com/simuwang/manage/task/CompetitionTask.java

@@ -138,6 +138,7 @@ public class CompetitionTask {
     public void outputFundNavDetail(Integer competitionId, String period) {
         List<FundNavDataDTO> navDataDTOList = fundNavService.getFungNavData(competitionId);
         if (CollUtil.isEmpty(navDataDTOList)) {
+            log.info("无净值数据,不输出基金净值采集结果明细表格");
             return;
         }
         String filePath = competitionConfig.getDirectory() + competitionConfig.getName() + "_" + period + "_基金净值采集结果明细_" + DateUtil.format(new Date(), DateConst.YYYYMMDD) + ".xlsx";