Browse Source

修改origin数据抽取 参数错误

dev_shibei_match
jianjun 5 years ago
parent
commit
b2f0e7a34f
  1. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/IndexDictController.java
  2. 151
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/IndexDictController.java

@ -44,7 +44,7 @@ public class IndexDictController {
* @return * @return
*/ */
@PostMapping("initFromExcel") @PostMapping("initFromExcel")
public Result<String> testTx(@RequestPart("file") MultipartFile file,@RequestParam("customerId") String customerId) { public Result<String> testTx(@RequestPart("file") MultipartFile file, @RequestParam(value = "customerId", required = false) String customerId) {
ExcelReader excelReader = null; ExcelReader excelReader = null;
try { try {
InputStream inputStream = null; InputStream inputStream = null;

151
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java

@ -2,9 +2,12 @@ package com.epmet.service.evaluationindex.extract.todata.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
import com.epmet.service.evaluationindex.extract.todata.*; import com.epmet.service.evaluationindex.extract.todata.*;
import com.epmet.service.stats.DimCustomerPartymemberService;
import com.epmet.service.stats.DimCustomerService; import com.epmet.service.stats.DimCustomerService;
import com.epmet.util.DimIdGenerator; import com.epmet.util.DimIdGenerator;
import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.google.common.util.concurrent.ThreadFactoryBuilder;
@ -41,12 +44,14 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService {
private DimCustomerService dimCustomerService; private DimCustomerService dimCustomerService;
@Autowired @Autowired
private GroupExtractService groupExtractService; private GroupExtractService groupExtractService;
@Autowired
private DimCustomerPartymemberService dimCustomerPartymemberService;
@Override @Override
public void extractAll(ExtractOriginFormDTO extractOriginFormDTO) { public void extractAll(ExtractOriginFormDTO extractOriginFormDTO) {
String customerId = extractOriginFormDTO.getCustomerId(); String customerId = extractOriginFormDTO.getCustomerId();
if (StringUtils.isBlank(extractOriginFormDTO.getStartDate())||StringUtils.isBlank(extractOriginFormDTO.getEndDate())) { if (StringUtils.isBlank(extractOriginFormDTO.getDateId()) && (StringUtils.isBlank(extractOriginFormDTO.getStartDate()) && StringUtils.isBlank(extractOriginFormDTO.getEndDate()))) {
//如果没有设置开始日期、结束日期,默认查询昨天 //如果没有设置开始日期、结束日期,默认查询昨天
extractOriginFormDTO.setDateId(DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1))); extractOriginFormDTO.setDateId(DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1)));
} }
@ -77,116 +82,142 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService {
} }
private void submitJob(ExtractOriginFormDTO param) { private void submitJob(ExtractOriginFormDTO param) {
boolean isRange = StringUtils.isBlank(param.getDateId()) ? true : false;
List<String> daysBetween = null;
if (isRange) {
daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate());
}
List<String> finalDaysBetween = daysBetween;
threadPool.submit(() -> { threadPool.submit(() -> {
if(StringUtils.isNotBlank(param.getDateId())){ CustomerIdAndDateIdFormDTO formDTO = new CustomerIdAndDateIdFormDTO();
formDTO.setCustomerId(param.getCustomerId());
if (!isRange) {
try { try {
groupExtractService.extractGroupData(param); formDTO.setDateId(param.getDateId());
dimCustomerPartymemberService.statsPartyMember(formDTO);
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【党员数据】发生异常,参数:" + JSON.toJSONString(formDTO), e);
} }
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ } else {
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); for (int i = 0; i < finalDaysBetween.size(); i++) {
for (int i = 0; i < daysBetween.size(); i++) { String dateDimId = finalDaysBetween.get(i);
String dateDimId = daysBetween.get(i); formDTO.setDateId(dateDimId);
param.setDateId(dateDimId); dimCustomerPartymemberService.statsPartyMember(formDTO);
groupExtractService.extractGroupData(param);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【党员数据】发生异常,参数:" + JSON.toJSONString(param), e);
} }
} }
}); });
threadPool.submit(() -> { threadPool.submit(() -> {
log.info("extractAll start param:{}", JSON.toJSONString(param)); ExtractOriginFormDTO paramNew = ConvertUtils.sourceToTarget(param, ExtractOriginFormDTO.class);
if(StringUtils.isNotBlank(param.getDateId())){ if (!isRange) {
try { try {
factOriginTopicMainDailyService.topicCleaning(param); groupExtractService.extractGroupData(paramNew);
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ } else {
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); for (int i = 0; i < finalDaysBetween.size(); i++) {
for (int i = 0; i < daysBetween.size(); i++) { String dateDimId = finalDaysBetween.get(i);
String dateDimId = daysBetween.get(i); paramNew.setDateId(dateDimId);
param.setDateId(dateDimId); groupExtractService.extractGroupData(paramNew);
log.info("extractAll cal param:{}", JSON.toJSONString(param));
factOriginTopicMainDailyService.topicCleaning(param);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
} }
log.info("extractAll end param:{}", JSON.toJSONString(param));
}); });
threadPool.submit(() -> { threadPool.submit(() -> {
if(StringUtils.isNotBlank(param.getDateId())){ log.debug("extractAll start param:{}", JSON.toJSONString(param));
ExtractOriginFormDTO paramNew = ConvertUtils.sourceToTarget(param, ExtractOriginFormDTO.class);
if (!isRange) {
try { try {
issueExtractService.issueExtractMain(param); factOriginTopicMainDailyService.topicCleaning(paramNew);
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【议题数据主表】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
} else {
try { try {
issueExtractService.issueExtractLog(param); for (int i = 0; i < finalDaysBetween.size(); i++) {
String dateDimId = finalDaysBetween.get(i);
paramNew.setDateId(dateDimId);
log.info("extractAll cal param:{}", JSON.toJSONString(paramNew));
factOriginTopicMainDailyService.topicCleaning(paramNew);
}
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【议题数据附表】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
}
} }
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ log.info("extractAll end param:{}", JSON.toJSONString(paramNew));
});
threadPool.submit(() -> {
ExtractOriginFormDTO paramNew = ConvertUtils.sourceToTarget(param, ExtractOriginFormDTO.class);
if (!isRange) {
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); issueExtractService.issueExtractMain(paramNew);
for (int i = 0; i < daysBetween.size(); i++) { } catch (Exception e) {
String dateDimId = daysBetween.get(i); log.error("抽取【议题数据主表】发生异常,参数:" + JSON.toJSONString(paramNew), e);
param.setDateId(dateDimId); }
issueExtractService.issueExtractMain(param); try {
issueExtractService.issueExtractLog(paramNew);
} catch (Exception e) {
log.error("抽取【议题数据附表】发生异常,参数:" + JSON.toJSONString(paramNew), e);
}
} else {
try {
for (int i = 0; i < finalDaysBetween.size(); i++) {
String dateDimId = finalDaysBetween.get(i);
paramNew.setDateId(dateDimId);
issueExtractService.issueExtractMain(paramNew);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【议题数据主表】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【议题数据主表】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); for (int i = 0; i < finalDaysBetween.size(); i++) {
for (int i = 0; i < daysBetween.size(); i++) { String dateDimId = finalDaysBetween.get(i);
String dateDimId = daysBetween.get(i); paramNew.setDateId(dateDimId);
param.setDateId(dateDimId); issueExtractService.issueExtractLog(paramNew);
issueExtractService.issueExtractLog(param);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【议题数据附表】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【议题数据附表】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
} }
}); });
threadPool.submit(() -> { threadPool.submit(() -> {
if(StringUtils.isNotBlank(param.getDateId())){ ExtractOriginFormDTO paramNew = ConvertUtils.sourceToTarget(param, ExtractOriginFormDTO.class);
if (!isRange) {
try { try {
projectExtractService.saveOriginProjectDaily(param); projectExtractService.saveOriginProjectDaily(paramNew);
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
try { try {
projectExtractService.extractProjectPeriodData(param); projectExtractService.extractProjectPeriodData(paramNew);
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
}else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ } else {
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); for (int i = 0; i < finalDaysBetween.size(); i++) {
for (int i = 0; i < daysBetween.size(); i++) { String dateDimId = finalDaysBetween.get(i);
String dateDimId = daysBetween.get(i); paramNew.setDateId(dateDimId);
param.setDateId(dateDimId); projectExtractService.saveOriginProjectDaily(paramNew);
projectExtractService.saveOriginProjectDaily(param);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
try { try {
List<String> daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); for (int i = 0; i < finalDaysBetween.size(); i++) {
for (int i = 0; i < daysBetween.size(); i++) { String dateDimId = finalDaysBetween.get(i);
String dateDimId = daysBetween.get(i); paramNew.setDateId(dateDimId);
param.setDateId(dateDimId); projectExtractService.extractProjectPeriodData(paramNew);
projectExtractService.extractProjectPeriodData(param);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(paramNew), e);
} }
} }
}); });

Loading…
Cancel
Save