|
|
@ -45,15 +45,17 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { |
|
|
|
|
|
|
|
@Override |
|
|
|
public void extractAll(ExtractOriginFormDTO extractOriginFormDTO) { |
|
|
|
String dateId = extractOriginFormDTO.getDateId(); |
|
|
|
String customerId = extractOriginFormDTO.getCustomerId(); |
|
|
|
if (StringUtils.isBlank(dateId)) { |
|
|
|
dateId = DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1)); |
|
|
|
if (StringUtils.isBlank(extractOriginFormDTO.getStartDate())||StringUtils.isBlank(extractOriginFormDTO.getEndDate())) { |
|
|
|
//如果没有设置开始日期、结束日期,默认查询昨天
|
|
|
|
extractOriginFormDTO.setDateId(DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1))); |
|
|
|
} |
|
|
|
List<String> customerIds = new ArrayList<>(); |
|
|
|
if (StringUtils.isNotBlank(customerId)) { |
|
|
|
//指定某个客户
|
|
|
|
customerIds.add(customerId); |
|
|
|
} else { |
|
|
|
//查询全部客户
|
|
|
|
int pageNo = NumConstant.ONE; |
|
|
|
int pageSize = NumConstant.ONE_HUNDRED; |
|
|
|
customerIds = dimCustomerService.selectCustomerIdPage(pageNo, pageSize); |
|
|
@ -62,12 +64,12 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
String finalDateId = dateId; |
|
|
|
customerIds.forEach(cId -> { |
|
|
|
ExtractOriginFormDTO param = new ExtractOriginFormDTO(); |
|
|
|
param.setCustomerId(cId); |
|
|
|
param.setDateId(finalDateId); |
|
|
|
param.setDateId(extractOriginFormDTO.getDateId()); |
|
|
|
param.setStartDate(extractOriginFormDTO.getStartDate()); |
|
|
|
param.setEndDate(extractOriginFormDTO.getEndDate()); |
|
|
|
log.debug("extractAll param:{}", JSON.toJSONString(param)); |
|
|
|
submitJob(param); |
|
|
|
}); |
|
|
@ -76,33 +78,87 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { |
|
|
|
|
|
|
|
private void submitJob(ExtractOriginFormDTO param) { |
|
|
|
threadPool.submit(() -> { |
|
|
|
try { |
|
|
|
groupExtractService.extractGroupData(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
if(StringUtils.isNotBlank(param.getDateId())){ |
|
|
|
try { |
|
|
|
groupExtractService.extractGroupData(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ |
|
|
|
try{ |
|
|
|
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); |
|
|
|
for (int i = 0; i < daysBetween.size(); i++) { |
|
|
|
String dateDimId = daysBetween.get(i); |
|
|
|
param.setDateId(dateDimId); |
|
|
|
groupExtractService.extractGroupData(param); |
|
|
|
} |
|
|
|
}catch(Exception e){ |
|
|
|
log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
threadPool.submit(() -> { |
|
|
|
try { |
|
|
|
factOriginTopicMainDailyService.topicCleaning(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
if(StringUtils.isNotBlank(param.getDateId())){ |
|
|
|
try { |
|
|
|
factOriginTopicMainDailyService.topicCleaning(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ |
|
|
|
try { |
|
|
|
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); |
|
|
|
for (int i = 0; i < daysBetween.size(); i++) { |
|
|
|
String dateDimId = daysBetween.get(i); |
|
|
|
param.setDateId(dateDimId); |
|
|
|
factOriginTopicMainDailyService.topicCleaning(param); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
threadPool.submit(() -> { |
|
|
|
try { |
|
|
|
issueExtractService.issueExtractMain(param); |
|
|
|
issueExtractService.issueExtractLog(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
if(StringUtils.isNotBlank(param.getDateId())){ |
|
|
|
try { |
|
|
|
issueExtractService.issueExtractMain(param); |
|
|
|
issueExtractService.issueExtractLog(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ |
|
|
|
try { |
|
|
|
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); |
|
|
|
for (int i = 0; i < daysBetween.size(); i++) { |
|
|
|
String dateDimId = daysBetween.get(i); |
|
|
|
param.setDateId(dateDimId); |
|
|
|
issueExtractService.issueExtractMain(param); |
|
|
|
issueExtractService.issueExtractLog(param); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
threadPool.submit(() -> { |
|
|
|
try { |
|
|
|
projectExtractService.saveOriginProjectDaily(param); |
|
|
|
projectExtractService.extractProjectPeriodData(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
if(StringUtils.isNotBlank(param.getDateId())){ |
|
|
|
try { |
|
|
|
projectExtractService.saveOriginProjectDaily(param); |
|
|
|
projectExtractService.extractProjectPeriodData(param); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ |
|
|
|
try { |
|
|
|
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); |
|
|
|
for (int i = 0; i < daysBetween.size(); i++) { |
|
|
|
String dateDimId = daysBetween.get(i); |
|
|
|
param.setDateId(dateDimId); |
|
|
|
projectExtractService.saveOriginProjectDaily(param); |
|
|
|
projectExtractService.extractProjectPeriodData(param); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|