|
@@ -900,78 +900,133 @@ public class EmailParseService {
|
|
}
|
|
}
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
- public EmailParseCountBoardVO searchEmailCount(DataboardQuery databoardQuery) {
|
|
|
|
|
|
+ public List<NameValueVO> searchEmailCount(DataboardQuery databoardQuery) {
|
|
List<Map<String, Object>> dataList = emailParseInfoMapper.searchEmailDataBoard(databoardQuery);
|
|
List<Map<String, Object>> dataList = emailParseInfoMapper.searchEmailDataBoard(databoardQuery);
|
|
- EmailParseCountBoardVO result = new EmailParseCountBoardVO();
|
|
|
|
- Integer total = 0;
|
|
|
|
|
|
+ List<NameValueVO> result = new ArrayList<>();
|
|
|
|
+ Long total = 0L;
|
|
for(Map<String, Object> data : dataList){
|
|
for(Map<String, Object> data : dataList){
|
|
|
|
+ NameValueVO vo = new NameValueVO();
|
|
if(1 == ((Integer)data.get("parse_status")).intValue()){
|
|
if(1 == ((Integer)data.get("parse_status")).intValue()){
|
|
- result.setSuccess(((Long)data.get("total")).intValue());
|
|
|
|
|
|
+ vo.setValue((Long) data.get("total"));
|
|
|
|
+ vo.setName("解析成功");
|
|
}else{
|
|
}else{
|
|
- result.setFail(((Long)data.get("total")).intValue());
|
|
|
|
|
|
+ vo.setValue((Long) data.get("total"));
|
|
|
|
+ vo.setName("解析失败");
|
|
}
|
|
}
|
|
- total+=((Long)data.get("total")).intValue();
|
|
|
|
|
|
+ total+=(Long)data.get("total");
|
|
|
|
+ result.add(vo);
|
|
}
|
|
}
|
|
- result.setTotal(total);
|
|
|
|
|
|
+ NameValueVO vo = new NameValueVO();
|
|
|
|
+ vo.setName("解析总数");
|
|
|
|
+ vo.setValue(total);
|
|
|
|
+ result.add(vo);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
- public EmailParseTypeBoardVO searchEmailTypeCount(DataboardQuery databoardQuery) {
|
|
|
|
|
|
+ public List<NameValueVO> searchEmailTypeCount(DataboardQuery databoardQuery) {
|
|
//邮件类型,1-净值,2-估值表,3-定期报告
|
|
//邮件类型,1-净值,2-估值表,3-定期报告
|
|
List<Map<String, Object>> dataList = emailParseInfoMapper.searchEmailTypeCount(databoardQuery);
|
|
List<Map<String, Object>> dataList = emailParseInfoMapper.searchEmailTypeCount(databoardQuery);
|
|
- EmailParseTypeBoardVO result = new EmailParseTypeBoardVO();
|
|
|
|
|
|
+ List<NameValueVO> result = new ArrayList<>();
|
|
Integer total = 0;
|
|
Integer total = 0;
|
|
for(Map<String, Object> data : dataList){
|
|
for(Map<String, Object> data : dataList){
|
|
|
|
+ NameValueVO vo = new NameValueVO();
|
|
Integer emailType = (Integer) data.get("email_type");
|
|
Integer emailType = (Integer) data.get("email_type");
|
|
Long totalType = (Long)data.get("total");
|
|
Long totalType = (Long)data.get("total");
|
|
if(1 == emailType){
|
|
if(1 == emailType){
|
|
- result.setNav(totalType.intValue());
|
|
|
|
|
|
+ vo.setName("净值规模");
|
|
|
|
+ vo.setValue(totalType);
|
|
}else if(2 == emailType){
|
|
}else if(2 == emailType){
|
|
- result.setValuation(totalType.intValue());
|
|
|
|
|
|
+ vo.setName("估值表");
|
|
|
|
+ vo.setValue(totalType);
|
|
}else{
|
|
}else{
|
|
- result.setReport(totalType.intValue());
|
|
|
|
|
|
+ vo.setName("定期报告");
|
|
|
|
+ vo.setValue(totalType);
|
|
}
|
|
}
|
|
- total+=totalType.intValue();
|
|
|
|
|
|
+ result.add(vo);
|
|
}
|
|
}
|
|
- result.setTotal(total);
|
|
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
public EmailParseFailAnalysisVO parseFailAnalysis(DataboardQuery databoardQuery) {
|
|
public EmailParseFailAnalysisVO parseFailAnalysis(DataboardQuery databoardQuery) {
|
|
- EmailParseFailAnalysisVO emailParseFailAnalysisVO = new EmailParseFailAnalysisVO();
|
|
|
|
- NavFailAnalysisVO navFailAnalysisVO = new NavFailAnalysisVO();
|
|
|
|
|
|
+ EmailParseFailAnalysisVO result = new EmailParseFailAnalysisVO();
|
|
|
|
+ //净值规模
|
|
|
|
+ List<NameValueVO> navNameValueVOS = new ArrayList<>();
|
|
|
|
+ NameValueVO pdfNoDataVO = new NameValueVO();
|
|
|
|
+ databoardQuery.setEmailType(1);
|
|
Long pdfNoData = emailParseInfoMapper.countpdfNoData(databoardQuery,"无法从PDF文件中获取到数据");
|
|
Long pdfNoData = emailParseInfoMapper.countpdfNoData(databoardQuery,"无法从PDF文件中获取到数据");
|
|
- navFailAnalysisVO.setPdfNoData(pdfNoData);
|
|
|
|
|
|
+ pdfNoDataVO.setName("无法从PDF文件中获取到数据");
|
|
|
|
+ pdfNoDataVO.setValue(pdfNoData);
|
|
|
|
+ navNameValueVOS.add(pdfNoDataVO);
|
|
|
|
+ NameValueVO priceDateMissVO = new NameValueVO();
|
|
Long priceDateMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"缺少净值日期");
|
|
Long priceDateMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"缺少净值日期");
|
|
- navFailAnalysisVO.setPriceDateMiss(priceDateMiss);
|
|
|
|
|
|
+ priceDateMissVO.setValue(priceDateMiss);
|
|
|
|
+ priceDateMissVO.setName("缺少净值日期");
|
|
|
|
+ navNameValueVOS.add(priceDateMissVO);
|
|
|
|
+ NameValueVO navMissVO = new NameValueVO();
|
|
Long navMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"单位净值和累计净值和资产净值均缺失");
|
|
Long navMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"单位净值和累计净值和资产净值均缺失");
|
|
- navFailAnalysisVO.setNavMiss(navMiss);
|
|
|
|
|
|
+ navMissVO.setName("单位净值和累计净值和资产净值均缺失");
|
|
|
|
+ navMissVO.setValue(navMiss);
|
|
|
|
+ navNameValueVOS.add(navMissVO);
|
|
|
|
+ NameValueVO fundNameNumberMissVO = new NameValueVO();
|
|
Long fundNameNumberMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"单位净值和累计净值和资产净值均缺失");
|
|
Long fundNameNumberMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"单位净值和累计净值和资产净值均缺失");
|
|
- navFailAnalysisVO.setFundNameNumberMiss(fundNameNumberMiss);
|
|
|
|
- emailParseFailAnalysisVO.setNavFailAnalysisVO(navFailAnalysisVO);
|
|
|
|
- ValuationFailAnalysisVO valuationFailAnalysisVO = new ValuationFailAnalysisVO();
|
|
|
|
|
|
+ fundNameNumberMissVO.setName("单位净值和累计净值和资产净值均缺失");
|
|
|
|
+ fundNameNumberMissVO.setValue(fundNameNumberMiss);
|
|
|
|
+ navNameValueVOS.add(fundNameNumberMissVO);
|
|
|
|
+ result.setNavFailAnalysisVO(navNameValueVOS);
|
|
|
|
+ //估值表规模
|
|
|
|
+ databoardQuery.setEmailType(2);
|
|
|
|
+ List<NameValueVO> valuationNameValueVOS = new ArrayList<>();
|
|
|
|
+ NameValueVO fileTypeErrorVO = new NameValueVO();
|
|
Long fileTypeError = emailParseInfoMapper.countpdfNoData(databoardQuery,"文件格式错误");
|
|
Long fileTypeError = emailParseInfoMapper.countpdfNoData(databoardQuery,"文件格式错误");
|
|
- valuationFailAnalysisVO.setFileTypeError(fileTypeError);
|
|
|
|
|
|
+ fileTypeErrorVO.setName("文件格式错误");
|
|
|
|
+ fileTypeErrorVO.setValue(fileTypeError);
|
|
|
|
+ valuationNameValueVOS.add(fileTypeErrorVO);
|
|
|
|
+ NameValueVO columnMissVO = new NameValueVO();
|
|
Long columnMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"无市值列或无数量列");
|
|
Long columnMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"无市值列或无数量列");
|
|
- valuationFailAnalysisVO.setColumnMiss(columnMiss);
|
|
|
|
|
|
+ columnMissVO.setName("无市值列或无数量列");
|
|
|
|
+ columnMissVO.setValue(columnMiss);
|
|
|
|
+ valuationNameValueVOS.add(columnMissVO);
|
|
|
|
+ NameValueVO numbericMissVO = new NameValueVO();
|
|
Long numbericMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"非数值数据");
|
|
Long numbericMiss = emailParseInfoMapper.countpdfNoData(databoardQuery,"非数值数据");
|
|
- valuationFailAnalysisVO.setNumbericMiss(numbericMiss);
|
|
|
|
|
|
+ numbericMissVO.setName("非数值数据");
|
|
|
|
+ numbericMissVO.setValue(numbericMiss);
|
|
|
|
+ valuationNameValueVOS.add(numbericMissVO);
|
|
|
|
+ NameValueVO noDataVO = new NameValueVO();
|
|
Long noData = emailParseInfoMapper.countpdfNoData(databoardQuery,"无数据");
|
|
Long noData = emailParseInfoMapper.countpdfNoData(databoardQuery,"无数据");
|
|
- valuationFailAnalysisVO.setNoData(noData);
|
|
|
|
|
|
+ noDataVO.setValue(noData);
|
|
|
|
+ noDataVO.setName("无数据");
|
|
|
|
+ valuationNameValueVOS.add(noDataVO);
|
|
|
|
+ NameValueVO templateErrorVO = new NameValueVO();
|
|
Long templateError = emailParseInfoMapper.countpdfNoData(databoardQuery,"模板不支持");
|
|
Long templateError = emailParseInfoMapper.countpdfNoData(databoardQuery,"模板不支持");
|
|
- valuationFailAnalysisVO.setTemplateError(templateError);
|
|
|
|
- emailParseFailAnalysisVO.setValuationFailAnalysisVO(valuationFailAnalysisVO);
|
|
|
|
- ReportFailAnalysisVO reportFailAnalysisVO = new ReportFailAnalysisVO();
|
|
|
|
|
|
+ templateErrorVO.setValue(templateError);
|
|
|
|
+ templateErrorVO.setName("模板不支持");
|
|
|
|
+ valuationNameValueVOS.add(templateErrorVO);
|
|
|
|
+ result.setValuationFailAnalysisVO(valuationNameValueVOS);
|
|
|
|
+ //定期报告
|
|
|
|
+ databoardQuery.setEmailType(3);
|
|
|
|
+ List<NameValueVO> reportNameValueVOS = new ArrayList<>();
|
|
|
|
+ NameValueVO scannedFileVO = new NameValueVO();
|
|
Long scannedFile = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告为扫描件");
|
|
Long scannedFile = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告为扫描件");
|
|
- reportFailAnalysisVO.setScannedFile(scannedFile);
|
|
|
|
|
|
+ scannedFileVO.setName("报告为扫描件");
|
|
|
|
+ scannedFileVO.setValue(scannedFile);
|
|
|
|
+ reportNameValueVOS.add(scannedFileVO);
|
|
|
|
+ NameValueVO errorAmacFileTypeVO = new NameValueVO();
|
|
Long errorAmacFileType = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告不是基协统一格式");
|
|
Long errorAmacFileType = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告不是基协统一格式");
|
|
- reportFailAnalysisVO.setErrorAmacFileType(errorAmacFileType);
|
|
|
|
|
|
+ errorAmacFileTypeVO.setName("报告不是基协统一格式");
|
|
|
|
+ errorAmacFileTypeVO.setValue(errorAmacFileType);
|
|
|
|
+ reportNameValueVOS.add(errorAmacFileTypeVO);
|
|
|
|
+ NameValueVO watermarkFileErrorVO = new NameValueVO();
|
|
Long watermarkFileError = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告水印干扰导致部分没有解析");
|
|
Long watermarkFileError = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告水印干扰导致部分没有解析");
|
|
- reportFailAnalysisVO.setWatermarkFileError(watermarkFileError);
|
|
|
|
|
|
+ watermarkFileErrorVO.setName("报告水印干扰导致部分没有解析");
|
|
|
|
+ watermarkFileErrorVO.setValue(watermarkFileError);
|
|
|
|
+ reportNameValueVOS.add(watermarkFileErrorVO);
|
|
|
|
+ NameValueVO noReportVO = new NameValueVO();
|
|
Long noReport = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告不是定期报告");
|
|
Long noReport = emailParseInfoMapper.countpdfNoData(databoardQuery,"报告不是定期报告");
|
|
- reportFailAnalysisVO.setNoReport(noReport);
|
|
|
|
- emailParseFailAnalysisVO.setReportFailAnalysisVO(reportFailAnalysisVO);
|
|
|
|
- return emailParseFailAnalysisVO;
|
|
|
|
|
|
+ noReportVO.setName("报告不是定期报告");
|
|
|
|
+ noReportVO.setValue(noReport);
|
|
|
|
+ reportNameValueVOS.add(noReportVO);
|
|
|
|
+ result.setReportFailAnalysisVO(reportNameValueVOS);
|
|
|
|
+ return result;
|
|
}
|
|
}
|
|
|
|
|
|
public EmailParseDataViewVO dataOverview(DataboardQuery databoardQuery) {
|
|
public EmailParseDataViewVO dataOverview(DataboardQuery databoardQuery) {
|