|
@ -5,7 +5,10 @@ import com.epmet.commons.tools.exception.RenException; |
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
import com.epmet.dao.evaluationindex.extract.FactOriginIssueMainDailyDao; |
|
|
import com.epmet.dao.evaluationindex.extract.FactOriginIssueMainDailyDao; |
|
|
|
|
|
import com.epmet.dao.stats.DimAgencyDao; |
|
|
import com.epmet.dto.extract.FactOriginIssueMainDailyDTO; |
|
|
import com.epmet.dto.extract.FactOriginIssueMainDailyDTO; |
|
|
|
|
|
import com.epmet.dto.extract.form.IssueMainDailyFormDTO; |
|
|
|
|
|
import com.epmet.dto.extract.result.AgencyInfoResultDTO; |
|
|
import com.epmet.dto.extract.result.IssueInfoResultDTO; |
|
|
import com.epmet.dto.extract.result.IssueInfoResultDTO; |
|
|
import com.epmet.dto.extract.result.TopicInfoResultDTO; |
|
|
import com.epmet.dto.extract.result.TopicInfoResultDTO; |
|
|
import com.epmet.service.Issue.IssueService; |
|
|
import com.epmet.service.Issue.IssueService; |
|
@ -15,6 +18,7 @@ import com.epmet.service.user.UserService; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.stereotype.Service; |
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
import org.springframework.util.CollectionUtils; |
|
|
import org.springframework.util.CollectionUtils; |
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
import java.util.ArrayList; |
|
@ -38,6 +42,8 @@ public class IssueExtractServiceImpl implements IssueExtractService { |
|
|
private UserService userService; |
|
|
private UserService userService; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private TopicService topicService; |
|
|
private TopicService topicService; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private DimAgencyDao dimAgencyDao; |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* @Description 议题抽取 |
|
|
* @Description 议题抽取 |
|
@ -47,18 +53,19 @@ public class IssueExtractServiceImpl implements IssueExtractService { |
|
|
* @date 2020/9/15 2:02 下午 |
|
|
* @date 2020/9/15 2:02 下午 |
|
|
*/ |
|
|
*/ |
|
|
@Override |
|
|
@Override |
|
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
public Boolean issueExtract(String customerId, String dateId) { |
|
|
public Boolean issueExtract(String customerId, String dateId) { |
|
|
|
|
|
|
|
|
// 议题信息查询
|
|
|
// 议题信息查询
|
|
|
List<IssueInfoResultDTO> listResult = issueService.selectIssueInfo(customerId, dateId); |
|
|
List<IssueInfoResultDTO> listResult = issueService.selectIssueInfo(customerId, dateId); |
|
|
List<FactOriginIssueMainDailyDTO> result = new ArrayList<>(); |
|
|
List<IssueMainDailyFormDTO> result = new ArrayList<>(); |
|
|
if (CollectionUtils.isEmpty(listResult)){ |
|
|
if (CollectionUtils.isEmpty(listResult)){ |
|
|
throw new RenException("查询议题信息为空"); |
|
|
throw new RenException("查询议题信息为空"); |
|
|
} |
|
|
} |
|
|
listResult.forEach(issue -> { |
|
|
listResult.forEach(issue -> { |
|
|
FactOriginIssueMainDailyDTO factOriginIssueMainDailyDTO = ConvertUtils.sourceToTarget(issue, FactOriginIssueMainDailyDTO.class); |
|
|
IssueMainDailyFormDTO issueMainDailyFormDTO = ConvertUtils.sourceToTarget(issue, IssueMainDailyFormDTO.class); |
|
|
factOriginIssueMainDailyDTO.setId(issue.getIssueId()); |
|
|
issueMainDailyFormDTO.setId(issue.getIssueId()); |
|
|
result.add(factOriginIssueMainDailyDTO); |
|
|
result.add(issueMainDailyFormDTO); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
// 创建议题人ID
|
|
|
// 创建议题人ID
|
|
@ -105,9 +112,21 @@ public class IssueExtractServiceImpl implements IssueExtractService { |
|
|
}); |
|
|
}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
// 查询pid
|
|
|
|
|
|
List<String> agencyIds = result.stream().map(r -> r.getAgencyId()).distinct().collect(Collectors.toList()); |
|
|
|
|
|
List<AgencyInfoResultDTO> agencyInfoList = dimAgencyDao.selectAgencyInfo(agencyIds); |
|
|
|
|
|
if (CollectionUtils.isEmpty(agencyInfoList)){ |
|
|
|
|
|
throw new RenException("查询组织上级ID集合为空......"); |
|
|
|
|
|
} |
|
|
|
|
|
result.forEach(r -> { |
|
|
|
|
|
agencyInfoList.forEach(pid -> { |
|
|
|
|
|
if (r.getAgencyId().equals(pid.getAgencyId())){ |
|
|
|
|
|
r.setPid(pid.getPid()); |
|
|
|
|
|
} |
|
|
|
|
|
}); |
|
|
|
|
|
}); |
|
|
|
|
|
issueMainDailyDao.deleteOldRecord(customerId, dateId); |
|
|
|
|
|
issueMainDailyDao.insertIssueMainList(result); |
|
|
return true; |
|
|
return true; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|