Browse Source

Merge remote-tracking branch 'origin/dev_issue_project' into dev_issue_project

# Conflicts:
#	epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
#	epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml
dev_shibei_match
wangchao 5 years ago
parent
commit
87ef588bdd
  1. 25
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CheckTopicPublisherFormDTO.java
  2. 19
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/ShouldVoteCountFormDTO.java
  3. 2
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java
  4. 35
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteRedisFormDTO.java
  5. 19
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CheckTopicPublisherResultDTO.java
  6. 18
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/ShouldVoteCountResultDTO.java
  7. 5
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java
  8. 14
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
  9. 24
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java
  10. 14
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java
  11. 27
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteDetailRedis.java
  12. 47
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java
  13. 20
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
  14. 13
      epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml
  15. 21
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java
  16. 14
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
  17. 19
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ShouldVoteCountFormDTO.java
  18. 18
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ShouldVoteCountResultDTO.java
  19. 25
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CheckTopicPublisherFormDTO.java
  20. 22
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CheckTopicPublisherResultDTO.java
  21. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java
  22. 7
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java
  23. 8
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java
  24. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
  25. 13
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
  26. 14
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java
  27. 8
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
  28. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
  29. 13
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml
  30. 12
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml

25
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CheckTopicPublisherFormDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class CheckTopicPublisherFormDTO implements Serializable {
private static final long serialVersionUID = 2599592072265715951L;
/**
* 话题Id
*/
private String topicId;
/**
* 创建人
*/
private String createdBy;
}

19
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/ShouldVoteCountFormDTO.java

@ -0,0 +1,19 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class ShouldVoteCountFormDTO implements Serializable {
private static final long serialVersionUID = 413887792872039432L;
/**
* 网格id
*/
private String gridId;
}

2
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java

@ -16,7 +16,7 @@ public class VoteFormDTO implements Serializable {
/**
* 话题Id
*/
private String IssueId;
private String issueId;
/**
* 态度 - opposition反对support赞成

35
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteRedisFormDTO.java

@ -0,0 +1,35 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* 表决数量缓存
*/
@Data
public class VoteRedisFormDTO implements Serializable {
private static final long serialVersionUID = -5046512100380206719L;
/**
* 支持数量
*/
private Integer supportAmount = 0;
/**
* 反对数量
*/
private Integer oppositionAmount = 0;
/**
* 应表决数
*/
private Integer shouldVoteCount = 0;
/**
* 议题id
*/
private String issueId;
}

19
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CheckTopicPublisherResultDTO.java

@ -0,0 +1,19 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Auth zxc
*/
@Data
public class CheckTopicPublisherResultDTO implements Serializable {
private static final long serialVersionUID = 9130115335145168458L;
/**
* 校验本人是不是话题发起人
*/
private Integer checkTopicPublisher;
}

18
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/ShouldVoteCountResultDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class ShouldVoteCountResultDTO implements Serializable {
private static final long serialVersionUID = 8811890380460710438L;
/**
* 应表决数
*/
private Integer shouldVoteCount;
}

5
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java

@ -59,4 +59,9 @@ public interface IssueConstant {
String GOV_PRJECT_EXCEPTION = "议题转项目,获取项目数据失败";
String ISSUE_VOTING_EXCEPTION = "非表决中议题,不允许转成项目";
String ISSUE_SHIFT_PROJECT_EXCEPTION = "议题已转项目,不允许再次操作";
String SUPPORT = "support";
String OPPOSE = "opposition";
String REDIS_KEY = "epmet:issue:";
}

14
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java

@ -22,6 +22,11 @@ import com.epmet.dto.IssueDTO;
import com.epmet.dto.form.CommonIssueListFormDTO;
import com.epmet.dto.form.IssueDetailFormDTO;
import com.epmet.dto.form.ShiftProjectListFromDTO;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.dto.result.ClosedIssueListGovResultDTO;
import com.epmet.dto.result.ClosedIssueListResultDTO;
import com.epmet.dto.result.IssueResultDTO;
import com.epmet.dto.result.VotingIssueListResultDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IssueEntity;
import org.apache.ibatis.annotations.Mapper;
@ -88,7 +93,14 @@ public interface IssueDao extends BaseDao<IssueEntity> {
* @date 2020.05.14 13:34
**/
List<ClosedIssueListGovResultDTO> selectClosedListGov(CommonIssueListFormDTO issueListFormDTO);
/**
* @Description 判断某人是不是议题发起人
* @param formDTO
* @author zxc
*/
Integer checkIssuePublisher(VoteFormDTO formDTO);
/**
* @Description 生成昨日的议题日统计信息
* @param

24
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java

@ -2,7 +2,12 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CheckTopicPublisherFormDTO;
import com.epmet.dto.form.ShouldVoteCountFormDTO;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.dto.result.AgencyGridResultDTO;
import com.epmet.dto.result.CheckTopicPublisherResultDTO;
import com.epmet.dto.result.ShouldVoteCountResultDTO;
import com.epmet.feign.fallback.ResiGroupFeignClientFallBack;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO;
@ -10,6 +15,7 @@ import com.epmet.resi.group.dto.topic.result.GovTopicIssueInfoResultDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @Description 调用resi-group服务
@ -37,4 +43,20 @@ public interface ResiGroupFeignClient {
@PostMapping("/resi/group/topic/topicinfoforissuedetailgov")
Result<GovTopicIssueInfoResultDTO> topicInfoForIssueDetailGov(GovTopicIssueInfoFormDTO govTopicIssueInfoFormDTO);
}
/**
* @Description 获取应表决数
* @param formDTO
* @author zxc
*/
@PostMapping("/resi/group/group/shouldvotecount")
Result<ShouldVoteCountResultDTO> shouldVoteCount(@RequestBody ShouldVoteCountFormDTO formDTO);
/**
* @Description 校验本人是不是话题发起人
* @param formDTO
* @author zxc
*/
@PostMapping("/resi/group/topic/checktopicpublisher")
Result<CheckTopicPublisherResultDTO> checkTopicPublisher(@RequestBody CheckTopicPublisherFormDTO formDTO);
}

14
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java

@ -3,7 +3,11 @@ package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CheckTopicPublisherFormDTO;
import com.epmet.dto.form.ShouldVoteCountFormDTO;
import com.epmet.dto.result.AgencyGridResultDTO;
import com.epmet.dto.result.CheckTopicPublisherResultDTO;
import com.epmet.dto.result.ShouldVoteCountResultDTO;
import com.epmet.feign.ResiGroupFeignClient;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO;
@ -25,4 +29,14 @@ public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient {
public Result<GovTopicIssueInfoResultDTO> topicInfoForIssueDetailGov(GovTopicIssueInfoFormDTO govTopicIssueInfoFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "topicInfoForIssueDetailGov", govTopicIssueInfoFormDTO);
}
@Override
public Result<ShouldVoteCountResultDTO> shouldVoteCount(ShouldVoteCountFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "shouldVoteCount", formDTO);
}
@Override
public Result<CheckTopicPublisherResultDTO> checkTopicPublisher(CheckTopicPublisherFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "checkTopicPublisher", formDTO);
}
}

27
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/redis/IssueVoteDetailRedis.java

@ -17,10 +17,17 @@
package com.epmet.redis;
import cn.hutool.core.bean.BeanUtil;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.constant.IssueConstant;
import com.epmet.dto.form.VoteRedisFormDTO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Map;
/**
* 议题表决记录表
*
@ -36,12 +43,24 @@ public class IssueVoteDetailRedis {
}
public void set(){
public void set(VoteRedisFormDTO vote){
String key = IssueConstant.REDIS_KEY +vote.getIssueId();
//bean to map
Map<String, Object> map = BeanUtil.beanToMap(vote, false, true);
redisUtils.hMSet(key, map);
}
public String get(String id){
return null;
public VoteRedisFormDTO get(String issueId){
VoteRedisFormDTO voteRedis = new VoteRedisFormDTO();
String key = IssueConstant.REDIS_KEY + issueId;
Map<String, Object> stringObjectMap = redisUtils.hGetAll(key);
if (stringObjectMap.size()== NumConstant.ZERO || stringObjectMap == null){
return new VoteRedisFormDTO();
}
voteRedis.setShouldVoteCount(Integer.valueOf(stringObjectMap.get("shouldVoteCount").toString()));
voteRedis.setSupportAmount(Integer.valueOf(stringObjectMap.get("supportAmount").toString()));
voteRedis.setOppositionAmount(Integer.valueOf(stringObjectMap.get("oppositionAmount").toString()));
return voteRedis;
}
}

47
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java

@ -17,6 +17,7 @@
package com.epmet.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -26,13 +27,19 @@ import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.constant.IssueConstant;
import com.epmet.dao.IssueDao;
import com.epmet.dao.IssueVoteDetailDao;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueVoteDetailDTO;
import com.epmet.dto.form.CheckVoteFormDTO;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.CheckTopicPublisherResultDTO;
import com.epmet.dto.result.JoinVoteResultDTO;
import com.epmet.dto.result.ShouldVoteCountResultDTO;
import com.epmet.entity.IssueVoteDetailEntity;
import com.epmet.feign.ResiGroupFeignClient;
import com.epmet.redis.IssueVoteDetailRedis;
import com.epmet.service.IssueService;
import com.epmet.service.IssueVoteDetailService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
@ -55,6 +62,12 @@ public class IssueVoteDetailServiceImpl extends BaseServiceImpl<IssueVoteDetailD
@Autowired
private IssueVoteDetailRedis issueVoteDetailRedis;
@Autowired
private ResiGroupFeignClient resiGroupFeignClient;
@Autowired
private IssueService issueService;
@Autowired
private IssueDao issueDao;
@Override
public PageData<IssueVoteDetailDTO> page(Map<String, Object> params) {
@ -118,6 +131,25 @@ public class IssueVoteDetailServiceImpl extends BaseServiceImpl<IssueVoteDetailD
public void vote(VoteFormDTO formDTO) {
IssueVoteDetailEntity entity = new IssueVoteDetailEntity();
BeanUtils.copyProperties(formDTO,entity);
VoteRedisFormDTO redisData = issueVoteDetailRedis.get(formDTO.getIssueId());
if (redisData==null){
VoteRedisFormDTO voteRedisFormDTO = new VoteRedisFormDTO();
voteRedisFormDTO.setIssueId(formDTO.getIssueId());
issueVoteDetailRedis.set(voteRedisFormDTO);
redisData = issueVoteDetailRedis.get(formDTO.getIssueId());
}
redisData.setIssueId(formDTO.getIssueId());
if (formDTO.getAttitude().equals(IssueConstant.SUPPORT)){
redisData.setSupportAmount(redisData.getSupportAmount()+1);
}else {
redisData.setOppositionAmount(redisData.getOppositionAmount()+1);
}
IssueDTO issueDTO = issueService.get(formDTO.getIssueId());
ShouldVoteCountFormDTO shouldVoteCount = new ShouldVoteCountFormDTO();
shouldVoteCount.setGridId(issueDTO.getGridId());
ShouldVoteCountResultDTO data = resiGroupFeignClient.shouldVoteCount(shouldVoteCount).getData();
redisData.setShouldVoteCount(data.getShouldVoteCount());
issueVoteDetailRedis.set(redisData);
Integer checkoutVoteCount = baseDao.checkoutVote(formDTO);
if (checkoutVoteCount==0){
baseDao.insert(entity);
@ -137,8 +169,17 @@ public class IssueVoteDetailServiceImpl extends BaseServiceImpl<IssueVoteDetailD
VoteFormDTO formDTO = new VoteFormDTO();
formDTO.setIssueId(checkVoteFormDTO.getIssueId());
formDTO.setCreatedBy(checkVoteFormDTO.getUserId());
//校验本人是不是 议题发表人
Integer issuePublisher = issueDao.checkIssuePublisher(formDTO);
//校验本人是不是 话题发起人
IssueDTO issueDTO = issueService.get(checkVoteFormDTO.getIssueId());
CheckTopicPublisherFormDTO checkTopicPublisher = new CheckTopicPublisherFormDTO();
checkTopicPublisher.setCreatedBy(checkVoteFormDTO.getUserId());
checkTopicPublisher.setTopicId(issueDTO.getSourceId());
CheckTopicPublisherResultDTO publisherResult = resiGroupFeignClient.checkTopicPublisher(checkTopicPublisher).getData();
//校验是否投过票
Integer checkoutVoteCount = baseDao.checkoutVote(formDTO);
if (checkoutVoteCount > NumConstant.ZERO){
if (checkoutVoteCount > NumConstant.ZERO || issuePublisher > NumConstant.ZERO || publisherResult.getCheckTopicPublisher() > NumConstant.ZERO){
resultDTO.setJoinVote(true);
}else {
resultDTO.setJoinVote(false);

20
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java

@ -34,15 +34,18 @@ import com.epmet.dto.PolyLineDTO;
import com.epmet.dto.form.EvaluationListFormDTO;
import com.epmet.dto.form.IssueIdFormDTO;
import com.epmet.dto.form.UserResiInfoListFormDTO;
import com.epmet.dto.form.VoteRedisFormDTO;
import com.epmet.dto.result.EvaluationListResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.dto.result.VoteResultDTO;
import com.epmet.dto.result.VotingTrendResultDTO;
import com.epmet.entity.IssueVoteStatisticalEntity;
import com.epmet.feign.EpmetUserFeignClient;
import com.epmet.redis.IssueVoteDetailRedis;
import com.epmet.redis.IssueVoteStatisticalRedis;
import com.epmet.service.IssueVoteStatisticalService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -70,6 +73,8 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl<IssueVoteSt
private IssueSatisfactionDetailDao issueSatisfactionDetailDao;
@Autowired
private EpmetUserFeignClient userFeignClient;
@Autowired
private IssueVoteDetailRedis issueVoteDetailRedis;
@Override
public PageData<IssueVoteStatisticalDTO> page(Map<String, Object> params) {
@ -138,7 +143,10 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl<IssueVoteSt
voteResultDTO.setVoteFlag(false);
}else {
voteResultDTO.setVoteFlag(true);
VoteRedisFormDTO redisData = issueVoteDetailRedis.get(issueId.getIssueId());
voteResultDTO.setVoteType(voteStatus);
voteResultDTO.setSupportCount(redisData.getSupportAmount());
voteResultDTO.setOppositionCount(redisData.getOppositionAmount());
}
}
return voteResultDTO;
@ -153,11 +161,13 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl<IssueVoteSt
@Override
public VotingTrendResultDTO votingTrend(IssueIdFormDTO issueId) {
//应表决数暂时从issue_vote_statistical查询
VotingTrendResultDTO votingTrendResultDTO = issueVoteStatisticalDao.votingTrend(issueId);
if (votingTrendResultDTO!=null){
List<PolyLineDTO> polyLineDTOS = issueVoteStatisticalDao.polyLineData(issueId);
votingTrendResultDTO.setPolyLine(polyLineDTOS);
}
// VotingTrendResultDTO votingTrendResultDTO = issueVoteStatisticalDao.votingTrend(issueId);
VoteRedisFormDTO voteRedisFormDTO = issueVoteDetailRedis.get(issueId.getIssueId());
VotingTrendResultDTO votingTrendResultDTO = new VotingTrendResultDTO();
BeanUtils.copyProperties(voteRedisFormDTO,votingTrendResultDTO);
votingTrendResultDTO.setRealityVoteCount(voteRedisFormDTO.getSupportAmount()+voteRedisFormDTO.getOppositionAmount());
List<PolyLineDTO> polyLineDTOS = issueVoteStatisticalDao.polyLineData(issueId);
votingTrendResultDTO.setPolyLine(polyLineDTOS);
return votingTrendResultDTO;
}

13
epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml

@ -53,6 +53,7 @@
DEL_FLAG = '0'
AND GRID_ID = #{gridId}
AND ISSUE_STATUS = 'shift_project'
ORDER BY UPDATED_TIME DESC
</select>
<!-- 新增议题 -->
@ -245,6 +246,18 @@
#{pageSize}
</select>
<!-- 判断某人是不是议题发起人 -->
<select id="checkIssuePublisher" resultType="integer" parameterType="com.epmet.dto.form.VoteFormDTO">
SELECT
COUNT(*) AS publisher
FROM
issue
WHERE
del_flag = 0
AND created_by = #{createdBy}
AND id = #{issueId}
</select>
<!-- 生成昨日的话题统计信息 -->
<select id="getIssueVotingStatistical" resultType="com.epmet.dto.result.IssuesToBeCountedResultDTO">

21
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java

@ -257,6 +257,27 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
List<StaffListResultDTO> staffList = dto.getStaffList();
List<CustomerStaffRoleResultDTO> roleList = dto.getRoleList();
//有时间再优化成jdk8的遍历方式
//5.0:先把在部门或网格下存在的人员在组织中去掉,组织中只展示在部门、网格下不存在的人员
//部门
Iterator<StaffListResultDTO> itDept = agencyStaffList.iterator();
while (itDept.hasNext()) {
StaffListResultDTO stf = itDept.next();
for (CustomerStaffDepartmentDTO dept : deptStaffs) {
if (dept.getUserId().equals(stf.getStaffId())) {
itDept.remove();
}
}
}
//网格
Iterator<StaffListResultDTO> itGrid = agencyStaffList.iterator();
while (itGrid.hasNext()) {
StaffListResultDTO stf = itGrid.next();
for (CustomerStaffGridDTO grid : gridStaffs) {
if (grid.getUserId().equals(stf.getStaffId())) {
itGrid.remove();
}
}
}
//5.1装载组织下人员数据
for(StaffListResultDTO sf : agencyStaffList){
//人员信息

14
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -91,7 +91,6 @@
AND pp.OPERATION != 'created'
WHERE
ps.DEL_FLAG = '0'
AND ps.IS_HANDLE = 'handle'
AND ps.STAFF_ID = #{userId}
GROUP BY ps.PROJECT_ID) psp ON p.ID = psp.PROJECT_ID
LEFT JOIN (
@ -105,18 +104,7 @@
GROUP BY PROJECT_ID) ps ON p.ID = ps.PROJECT_ID
LEFT JOIN project_process pp ON p.ID = pp.PROJECT_ID AND pp.OPERATION = 'close'
WHERE
NOT EXISTS (
SELECT
PROJECT_ID
FROM
project_staff
WHERE
DEL_FLAG = '0'
AND PROJECT_ID = p.ID
AND STAFF_ID = #{userId}
AND IS_HANDLE = 'unhandled'
)
AND p.DEL_FLAG = '0'
p.DEL_FLAG = '0'
ORDER BY p.CREATED_TIME ASC
LIMIT #{pageNo}, #{pageSize}
</select>

19
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ShouldVoteCountFormDTO.java

@ -0,0 +1,19 @@
package com.epmet.resi.group.dto.group.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class ShouldVoteCountFormDTO implements Serializable {
private static final long serialVersionUID = 413887792872039432L;
/**
* 网格id
*/
private String gridId;
}

18
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ShouldVoteCountResultDTO.java

@ -0,0 +1,18 @@
package com.epmet.resi.group.dto.group.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class ShouldVoteCountResultDTO implements Serializable {
private static final long serialVersionUID = 8811890380460710438L;
/**
* 应表决数
*/
private Integer shouldVoteCount;
}

25
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CheckTopicPublisherFormDTO.java

@ -0,0 +1,25 @@
package com.epmet.resi.group.dto.topic.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
*/
@Data
public class CheckTopicPublisherFormDTO implements Serializable {
private static final long serialVersionUID = 6574592704731427746L;
/**
* 话题Id
*/
private String topicId;
/**
* 创建人
*/
private String createdBy;
}

22
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CheckTopicPublisherResultDTO.java

@ -0,0 +1,22 @@
package com.epmet.resi.group.dto.topic.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Auth zxc
*/
@Data
public class CheckTopicPublisherResultDTO implements Serializable {
private static final long serialVersionUID = -6904613651832971580L;
/**
* 校验本人是不是话题发起人
*/
private Integer checkTopicPublisher;
}

11
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java

@ -22,7 +22,6 @@ import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.modules.group.redis.ResiGroupRedis;
import com.epmet.modules.group.service.ResiGroupService;
import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO;
import com.epmet.resi.group.dto.group.form.*;
@ -321,4 +320,14 @@ public class ResiGroupController {
public Result<CheckJoinTeamResultDTO> checkjointeam(@RequestBody GridIdFormDTO gridId){
return new Result<CheckJoinTeamResultDTO>().ok(resiGroupService.checkjointeam(gridId));
}
/**
* @Description 获取应表决数
* @param formDTO
* @author zxc
*/
@PostMapping("shouldvotecount")
public Result<ShouldVoteCountResultDTO> shouldVoteCount(@RequestBody ShouldVoteCountFormDTO formDTO){
return new Result<ShouldVoteCountResultDTO>().ok(resiGroupService.shouldVoteCount(formDTO));
}
}

7
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java

@ -155,4 +155,11 @@ public interface ResiGroupDao extends BaseDao<ResiGroupEntity> {
* @author zxc
*/
Integer checkjointeam(GridIdFormDTO gridId);
/**
* @Description 获取应表决数
* @param formDTO
* @author zxc
*/
ShouldVoteCountResultDTO shouldVoteCount(ShouldVoteCountFormDTO formDTO);
}

8
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java

@ -27,7 +27,6 @@ import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.result.*;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
@ -268,4 +267,11 @@ public interface ResiGroupService extends BaseService<ResiGroupEntity> {
* @author zxc
*/
CheckJoinTeamResultDTO checkjointeam(GridIdFormDTO gridId);
/**
* @Description 获取应表决数
* @param formDTO
* @author zxc
*/
ShouldVoteCountResultDTO shouldVoteCount(ShouldVoteCountFormDTO formDTO);
}

11
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java

@ -58,6 +58,7 @@ import com.epmet.resi.group.constant.MemberStateConstant;
import com.epmet.resi.group.dto.UserRoleDTO;
import com.epmet.resi.group.dto.group.*;
import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.form.ShouldVoteCountFormDTO;
import com.epmet.resi.group.dto.group.result.*;
import com.epmet.resi.group.dto.member.GroupMemeberOperationDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
@ -832,6 +833,16 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
return checkJoinTeamResultDTO;
}
/**
* @Description 获取应表决数
* @param formDTO
* @author zxc
*/
@Override
public ShouldVoteCountResultDTO shouldVoteCount(ShouldVoteCountFormDTO formDTO) {
return baseDao.shouldVoteCount(formDTO);
}
/**
* @Description 给加入此网格的网格长发送消息
* @param msg

13
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java

@ -4,6 +4,7 @@ import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.modules.topic.service.ResiTopicService;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
@ -192,6 +193,7 @@ public class ResiTopicController {
*/
@PostMapping(value = "selectdetail")
public Result<TopicInfoDTO> selectDetail(@RequestBody TopicInfoFormDTO topicInfo){
ValidatorUtils.validateEntity(topicInfo);
return new Result<TopicInfoDTO>().ok(topicService.selectDetail(topicInfo));
}
@ -247,4 +249,15 @@ public class ResiTopicController {
return new Result<GovTopicIssueInfoResultDTO>().ok(topicService.topicInfoForIssueDetailGov(govTopicIssueInfoFormDTO));
}
/**
* @Description 校验本人是不是话题发起人
* @param formDTO
* @author zxc
*/
@PostMapping("checktopicpublisher")
public Result<CheckTopicPublisherResultDTO> checkTopicPublisher(@RequestBody CheckTopicPublisherFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO);
return new Result<CheckTopicPublisherResultDTO>().ok(topicService.checkTopicPublisher(formDTO));
}
}

14
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java

@ -20,15 +20,12 @@ package com.epmet.modules.topic.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicAndGroupResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicAttachmentsResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.*;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -148,4 +145,11 @@ public interface ResiTopicDao extends BaseDao<ResiTopicEntity> {
* @date 2020.05.14 17:02
**/
ResiTopicAttachmentsResultDTO selectTopicAndAttachments(@Param("topicId")String topicId);
/**
* @Description 校验本人是不是话题发起人
* @param formDTO
* @author zxc
*/
CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO);
}

8
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java

@ -30,6 +30,7 @@ import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.*;
import com.epmet.resi.group.dto.topic.result.*;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -256,4 +257,11 @@ public interface ResiTopicService extends BaseService<ResiTopicEntity> {
**/
GovTopicIssueInfoResultDTO topicInfoForIssueDetailGov(GovTopicIssueInfoFormDTO govTopicIssueInfoFormDTO);
/**
* @Description 校验本人是不是话题发起人
* @param formDTO
* @author zxc
*/
CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO);
}

11
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java

@ -69,6 +69,7 @@ import com.epmet.resi.group.dto.member.result.ResiGroupMemberInfoRedisResultDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.*;
import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO;
import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO;
import com.epmet.resi.group.dto.topic.result.*;
import org.apache.commons.lang3.StringUtils;
@ -1140,6 +1141,16 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
}
/**
* @Description 校验本人是不是话题发起人
* @param formDTO
* @author zxc
*/
@Override
public CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO) {
return resiTopicDao.checkTopicPublisher(formDTO);
}
}

13
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml

@ -309,4 +309,17 @@
AND
GRID_ID = #{gridId}
</select>
<!-- 获取应表决数 -->
<select id="shouldVoteCount" parameterType="com.epmet.resi.group.dto.group.form.ShouldVoteCountFormDTO" resultType="com.epmet.resi.group.dto.group.result.ShouldVoteCountResultDTO">
SELECT
COUNT(*) AS shouldVoteCount
FROM
resi_group_member rgm
LEFT JOIN resi_group rg ON rgm.resi_group_id = rg.id
WHERE
rgm.del_flag = 0
AND rg.del_flag = 0
AND rg.grid_id = #{gridId}
</select>
</mapper>

12
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml

@ -434,5 +434,17 @@
ORDER BY
attachment.SORT ASC
</select>
<!-- 校验本人是不是话题发起人 -->
<select id="checkTopicPublisher" parameterType="com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO" resultType="com.epmet.resi.group.dto.topic.result.CheckTopicPublisherResultDTO">
SELECT
COUNT(*) AS checkTopicPublisher
FROM
resi_topic
WHERE
del_flag = 0
AND created_by = #{createdBy}
AND id = #{topicId}
</select>
</mapper>

Loading…
Cancel
Save