Browse Source

设置转议题的时间

dev_shibei_match
jianjun 4 years ago
parent
commit
d3b5580aa4
  1. 8
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
  2. 5
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
  3. 18
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java
  4. 10
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java
  5. 13
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java
  6. 22
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/StatsAchievementServiceImpl.java

8
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java

@ -293,4 +293,12 @@ public interface GovIssueOpenFeignClient {
@PostMapping(value = "/gov/issue/manage/votingissuedetail") @PostMapping(value = "/gov/issue/manage/votingissuedetail")
Result<GovIssueDetailResultDTO> votingissuedetail(@RequestBody IssueDetailFormDTO issueDetail); Result<GovIssueDetailResultDTO> votingissuedetail(@RequestBody IssueDetailFormDTO issueDetail);
/**
* @param customerId
* @Description 根据客户Id获取 议题列表
* @Author sun
**/
@PostMapping(value = "/gov/issue/getissuelist")
Result<List<IssueDTO>> getIssueList(@RequestParam String customerId);
} }

5
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java

@ -251,4 +251,9 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient
public Result<GovIssueDetailResultDTO> votingissuedetail(IssueDetailFormDTO issueDetail) { public Result<GovIssueDetailResultDTO> votingissuedetail(IssueDetailFormDTO issueDetail) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "votingissuedetail", issueDetail); return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "votingissuedetail", issueDetail);
} }
@Override
public Result<List<IssueDTO>> getIssueList(String customerId) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "getIssueList", customerId);
}
} }

18
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java

@ -12,10 +12,7 @@ import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import com.epmet.service.IssueService; import com.epmet.service.IssueService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
@ -246,5 +243,18 @@ public class IssueController {
return new Result<List<GroupClosedListResultDTO>>().ok(issueService.getClosedListByGroup(formDTO)); return new Result<List<GroupClosedListResultDTO>>().ok(issueService.getClosedListByGroup(formDTO));
} }
/**
* desc: 获取议题列表
*
* @param customerId
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.IssueDTO>>
* @author LiuJanJun
* @date 2021/4/27 10:19 上午
*/
@PostMapping("getissuelist")
public Result<List<IssueDTO>> getIssueList(@RequestParam String customerId) {
return new Result<List<IssueDTO>>().ok(issueService.getIssueList(customerId));
}
} }

10
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java

@ -315,4 +315,14 @@ public interface IssueService extends BaseService<IssueEntity> {
* @return java.util.List<com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO> * @return java.util.List<com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO>
*/ */
List<GroupClosedListResultDTO> getClosedListByGroup(AllIssueFormDTO formDTO); List<GroupClosedListResultDTO> getClosedListByGroup(AllIssueFormDTO formDTO);
/**
* desc: 根据客户Id获取议题列表
*
* @param customerId
* @return java.util.List<com.epmet.dto.IssueDTO>
* @author LiuJanJun
* @date 2021/4/27 10:23 上午
*/
List<IssueDTO> getIssueList(String customerId);
} }

13
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java

@ -1395,4 +1395,17 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
return baseDao.selectClosedListByTopic(formDTO); return baseDao.selectClosedListByTopic(formDTO);
} }
@Override
public List<IssueDTO> getIssueList(String customerId) {
QueryWrapper<IssueEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda()
.eq(IssueEntity::getCustomerId,customerId)
.eq(IssueEntity::getDelFlag,NumConstant.ZERO_STR);
List<IssueEntity> issueEntities = baseDao.selectList(queryWrapper);
if (CollectionUtils.isEmpty(issueEntities)){
return null;
}
return ConvertUtils.sourceToTarget(issueEntities,IssueDTO.class);
}
} }

22
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/StatsAchievementServiceImpl.java

@ -6,6 +6,8 @@ import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.CustomerDTO; import com.epmet.dto.CustomerDTO;
import com.epmet.dto.IssueDTO;
import com.epmet.feign.GovIssueOpenFeignClient;
import com.epmet.feign.OperCrmOpenFeignClient; import com.epmet.feign.OperCrmOpenFeignClient;
import com.epmet.modules.enums.AchievementTypeEnum; import com.epmet.modules.enums.AchievementTypeEnum;
import com.epmet.modules.group.dao.ResiGroupDao; import com.epmet.modules.group.dao.ResiGroupDao;
@ -29,6 +31,7 @@ import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -49,6 +52,8 @@ public class StatsAchievementServiceImpl extends AbstractStatsAchievementService
private ResiGroupDao resiGroupDao; private ResiGroupDao resiGroupDao;
@Autowired @Autowired
private OperCrmOpenFeignClient operCrmOpenFeignClient; private OperCrmOpenFeignClient operCrmOpenFeignClient;
@Autowired
private GovIssueOpenFeignClient govIssueOpenFeignClient;
/** /**
@ -73,6 +78,13 @@ public class StatsAchievementServiceImpl extends AbstractStatsAchievementService
log.warn("没有需要初始化的小组数据,customerId:{}", customerId); log.warn("没有需要初始化的小组数据,customerId:{}", customerId);
continue; continue;
} }
//3 获取客户下议题数据
Result<List<IssueDTO>> issueListResult = govIssueOpenFeignClient.getIssueList(customerId);
if (issueListResult == null || CollectionUtils.isEmpty(issueListResult.getData())) {
log.warn("没有需要初始化的小组转为议题的数据,customerId:{}", customerId);
continue;
}
Map<String, Date> issueCreateTimeMap = issueListResult.getData().stream().collect(Collectors.toMap(IssueDTO::getId, IssueDTO::getCreatedTime));
for (ResiGroupEntity groupEntity : groupEntities) { for (ResiGroupEntity groupEntity : groupEntities) {
//2.1 获取小组成员数据 //2.1 获取小组成员数据
String groupId = groupEntity.getId(); String groupId = groupEntity.getId();
@ -114,7 +126,7 @@ public class StatsAchievementServiceImpl extends AbstractStatsAchievementService
//设置实际达到成就时间 最后一条为未实现 所以-1 //设置实际达到成就时间 最后一条为未实现 所以-1
for (int j = 0; j < toIssueArriveList.size() - 1; j++) { for (int j = 0; j < toIssueArriveList.size() - 1; j++) {
toIssueArriveList.get(j).setArriveTime(toIssueTopicList.get(j).getCreatedTime()); toIssueArriveList.get(j).setArriveTime(issueCreateTimeMap.getOrDefault(toIssueTopicList.get(j).getIssueId(),new Date()));
} }
//2.6 计算出 话题被解决 达到的成就 //2.6 计算出 话题被解决 达到的成就
@ -127,9 +139,11 @@ public class StatsAchievementServiceImpl extends AbstractStatsAchievementService
for (int j = 0; j < resolveTopicArriveList.size() - 1; j++) { for (int j = 0; j < resolveTopicArriveList.size() - 1; j++) {
resolveTopicArriveList.get(j).setArriveTime(resolveTopicList.get(j).getCreatedTime()); resolveTopicArriveList.get(j).setArriveTime(resolveTopicList.get(j).getCreatedTime());
} }
saveOrUpdate(topicArriveList, true); List<ResiGroupAchievementStatsEntity> list = new ArrayList<>();
saveOrUpdate(toIssueArriveList, true); list.addAll(topicArriveList);
saveOrUpdate(resolveTopicArriveList, true); list.addAll(toIssueArriveList);
list.addAll(resolveTopicArriveList);
saveOrUpdate(list, true);
} }
} }

Loading…
Cancel
Save