Browse Source

Merge remote-tracking branch 'origin/dev'

dev_shibei_match
yinzuomei 4 years ago
parent
commit
609a6deefc
  1. 20
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/form/UpdateProjectSatisfactionScoreFormDTO.java
  2. 13
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java
  3. 13
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java
  4. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

20
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/form/UpdateProjectSatisfactionScoreFormDTO.java

@ -0,0 +1,20 @@
package com.epmet.dto.project.form;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 描述一下
*
* @author yinzuomei@elink-cn.com
* @date 2021/7/11 14:42
*/
@Data
public class UpdateProjectSatisfactionScoreFormDTO implements Serializable {
private static final long serialVersionUID = 8358341102854725024L;
private String projectId;
private String projectCustomerId;
private List<String> customerIdList;
}

13
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java

@ -23,6 +23,7 @@ import com.epmet.dto.extract.form.ExtractFactGridGovernDailyFromDTO;
import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.extract.form.ExtractScreenFormDTO;
import com.epmet.dto.indexcal.CalculateCommonFormDTO;
import com.epmet.dto.project.form.UpdateProjectSatisfactionScoreFormDTO;
import com.epmet.dto.screen.form.ScreenCentralZoneDataFormDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
import com.epmet.entity.evaluationindex.indexcoll.FactIndexGovrnAblityGridMonthlyEntity;
@ -957,9 +958,13 @@ public class DemoController {
* @Date 2021/6/23 15:55
**/
@PostMapping("update-satisfaction-core")
public Result updateProjectSatisfactionScore(@RequestBody List<String> customerIdList){
if(CollectionUtils.isNotEmpty(customerIdList)){
customerIdList.forEach(customerId->{
public Result updateProjectSatisfactionScore(@RequestBody UpdateProjectSatisfactionScoreFormDTO formDTO){
if(StringUtils.isNotBlank(formDTO.getProjectId())){
screenProjectSettleService.updateProjectSatisfactionScore(formDTO.getProjectCustomerId(),null,formDTO.getProjectId());
return new Result().ok("项目满意度得分更新成功");
}
if(CollectionUtils.isNotEmpty(formDTO.getCustomerIdList())){
formDTO.getCustomerIdList().forEach(customerId->{
screenProjectSettleService.updateProjectSatisfactionScore(customerId,null,null);
log.info("更新完成");
});
@ -967,7 +972,7 @@ public class DemoController {
List<String> customerIds=dimCustomerService.getAllCustomerId();
customerIds.forEach(customerId->{
screenProjectSettleService.updateProjectSatisfactionScore(customerId,null,null);
log.info("更新完成");
log.info("所有客户数据更新完成");
});
}
return new Result();

13
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java

@ -182,25 +182,32 @@ public class ScreenProjectSettleServiceImpl implements ScreenProjectSettleServic
*/
@Override
public void updateProjectSatisfactionScore(String customerId, String dateId,String projectId) {
log.info("customerId="+customerId+";dateId="+dateId+";projectId="+projectId);
if(StringUtils.isNotBlank(projectId)){
projectService.calProjectSatisfactionScore(customerId,projectId);
BigDecimal calProjectSatisfactionScore = projectService.calProjectSatisfactionScore(customerId, projectId);
log.warn("单独计算projectId=" + projectId + "满意度得分:" + calProjectSatisfactionScore);
targetDbService.updateProjectSatisfactionScore(projectId,calProjectSatisfactionScore);
return;
}
List<String> projectIds=new ArrayList<>();
if(StringUtils.isNotBlank(dateId)){
log.warn("按日期计算");
List<String> list=projectService.selectEvaluateProjectIds(customerId,dateId);
if(!CollectionUtils.isEmpty(list)){
projectIds.addAll(list);
}
}else{
log.warn("计算当前客户下,来源于议题已结案的项目对应的满意度得分");
// 只有来源于议题的项目,才有分数
List<String> closedProjectIds=projectService.selectClosedProjectIds(customerId,"issue","closed");
if(!CollectionUtils.isEmpty(closedProjectIds)){
projectIds.addAll(closedProjectIds);
}
}
projectIds.forEach(id->{
targetDbService.updateProjectSatisfactionScore(id,projectService.calProjectSatisfactionScore(customerId,id));
projectIds.forEach(id -> {
BigDecimal calProjectSatisfactionScore = projectService.calProjectSatisfactionScore(customerId, id);
log.warn("projectId=" + id + "满意度得分:" + calProjectSatisfactionScore);
targetDbService.updateProjectSatisfactionScore(id, calProjectSatisfactionScore);
});
}

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

@ -195,7 +195,7 @@
<!-- 查询当天(dateId)有评价记录的项目id -->
<select id="selectEvaluateProjectIds" parameterType="map" resultType="java.lang.String">
SELECT
psd.PROJECT_ID
distinct psd.PROJECT_ID
FROM
project_satisfaction_detail psd
WHERE

Loading…
Cancel
Save