|
@@ -59,12 +59,14 @@ public class EmailParseService {
|
|
private final AssetMapper assetMapper;
|
|
private final AssetMapper assetMapper;
|
|
private final NavMapper navMapper;
|
|
private final NavMapper navMapper;
|
|
private final FundService fundService;
|
|
private final FundService fundService;
|
|
|
|
+ private final FundAliasMapper fundAliasMapper;
|
|
|
|
|
|
public EmailParseService(EmailTypeRuleMapper emailTypeRuleMapper, EmailRuleConfig emailRuleConfig,
|
|
public EmailParseService(EmailTypeRuleMapper emailTypeRuleMapper, EmailRuleConfig emailRuleConfig,
|
|
EmailFieldMappingMapper emailFieldMapper, EmailParserFactory emailParserFactory,
|
|
EmailFieldMappingMapper emailFieldMapper, EmailParserFactory emailParserFactory,
|
|
EmailParseInfoMapper emailParseInfoMapper, EmailFileInfoMapper emailFileInfoMapper,
|
|
EmailParseInfoMapper emailParseInfoMapper, EmailFileInfoMapper emailFileInfoMapper,
|
|
EmailFundNavMapper emailFundNavMapper, EmailFundAssetMapper emailFundAssetMapper,
|
|
EmailFundNavMapper emailFundNavMapper, EmailFundAssetMapper emailFundAssetMapper,
|
|
- AssetMapper assetMapper, NavMapper navMapper, FundService fundService) {
|
|
|
|
|
|
+ AssetMapper assetMapper, NavMapper navMapper, FundService fundService,
|
|
|
|
+ FundAliasMapper fundAliasMapper) {
|
|
this.emailTypeRuleMapper = emailTypeRuleMapper;
|
|
this.emailTypeRuleMapper = emailTypeRuleMapper;
|
|
this.emailRuleConfig = emailRuleConfig;
|
|
this.emailRuleConfig = emailRuleConfig;
|
|
this.emailFieldMapper = emailFieldMapper;
|
|
this.emailFieldMapper = emailFieldMapper;
|
|
@@ -76,6 +78,7 @@ public class EmailParseService {
|
|
this.assetMapper = assetMapper;
|
|
this.assetMapper = assetMapper;
|
|
this.navMapper = navMapper;
|
|
this.navMapper = navMapper;
|
|
this.fundService = fundService;
|
|
this.fundService = fundService;
|
|
|
|
+ this.fundAliasMapper = fundAliasMapper;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -359,7 +362,8 @@ public class EmailParseService {
|
|
if (CollUtil.isEmpty(fundNavDTO.getFundIdList())) {
|
|
if (CollUtil.isEmpty(fundNavDTO.getFundIdList())) {
|
|
List<String> fundIdList = fundService.getFundIdByNamesAndCode(fundNavDTO.getFundName(), fundNavDTO.getRegisterNumber());
|
|
List<String> fundIdList = fundService.getFundIdByNamesAndCode(fundNavDTO.getFundName(), fundNavDTO.getRegisterNumber());
|
|
if (CollUtil.isEmpty(fundIdList)) {
|
|
if (CollUtil.isEmpty(fundIdList)) {
|
|
- // todo 写到别名表fund_alias
|
|
|
|
|
|
+ // 判断是否写入别名管理表fund_alias
|
|
|
|
+ saveFundAlias(fundNavDTO.getFundName(), fundNavDTO.getRegisterNumber());
|
|
fundNavDTO.setParseStatus(NavParseStatusConst.NOT_MATCH);
|
|
fundNavDTO.setParseStatus(NavParseStatusConst.NOT_MATCH);
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
@@ -382,6 +386,15 @@ public class EmailParseService {
|
|
fundNavDTO.setParseStatus(NavParseStatusConst.SUCCESS);
|
|
fundNavDTO.setParseStatus(NavParseStatusConst.SUCCESS);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void saveFundAlias(String fundName, String registerNumber) {
|
|
|
|
+ List<FundAliasDO> fundAliasDOList = fundAliasMapper.queryFundByNameAndRegisterNumber(fundName, registerNumber);
|
|
|
|
+ if (CollUtil.isNotEmpty(fundAliasDOList)) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ log.info("写入别名表 -> 基金名称:{},备案编码:{}", fundName, registerNumber);
|
|
|
|
+ fundAliasMapper.insert(fundName, registerNumber);
|
|
|
|
+ }
|
|
|
|
+
|
|
private Integer saveEmailParseInfo(EmailParseInfoDO emailParseInfoDO) {
|
|
private Integer saveEmailParseInfo(EmailParseInfoDO emailParseInfoDO) {
|
|
if (emailParseInfoDO == null) {
|
|
if (emailParseInfoDO == null) {
|
|
return null;
|
|
return null;
|