Browse Source

Merge branch 'feature/yujt_points' into feature/syp_workLog

origin/dept_screen
yujt 5 years ago
parent
commit
86963cb06c
  1. 21
      epdc-cloud-api/pom.xml
  2. 71
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java
  3. 100
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiCommentController.java
  4. 50
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java
  5. 83
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java
  6. 18
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiItemController.java
  7. 45
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiTopicCommentController.java
  8. 30
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java
  9. 80
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java
  10. 72
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java
  11. 33
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java
  12. 34
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java
  13. 24
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  14. 10
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java
  15. 0
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/.gitkeep
  16. 37
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ApiResidentConfigController.java
  17. 37
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ApiWorkResidentConfigController.java
  18. 94
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ResidentConfigController.java
  19. 65
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/dao/ResidentConfigDao.java
  20. 61
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/entity/ResidentConfigEntity.java
  21. 68
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/excel/ResidentConfigExcel.java
  22. 117
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/service/ResidentConfigService.java
  23. 121
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/service/impl/ResidentConfigServiceImpl.java
  24. 53
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/controller/ApiNewsController.java
  25. 12
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/service/NewsService.java
  26. 11
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/service/impl/NewsServiceImpl.java
  27. 59
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/controller/ApiPointsController.java
  28. 63
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/feign/PointsFeignClient.java
  29. 38
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/feign/fallback/PointsFeignClientFallback.java
  30. 45
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/service/PointsService.java
  31. 39
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/service/impl/PointsServiceImpl.java
  32. 27
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/AppUserService.java
  33. 29
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java
  34. 8
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java
  35. 24
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java
  36. 10
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java
  37. 8
      epdc-cloud-api/src/main/resources/application-test.yml
  38. 8
      epdc-cloud-api/src/main/resources/application.yml
  39. 75
      epdc-cloud-api/src/main/resources/mapper/ResidentConfigDao.xml

21
epdc-cloud-api/pom.xml

@ -101,6 +101,13 @@
<version>${epdc-cloud-commons.version}</version>
</dependency>
<!-- commons end -->
<dependency>
<groupId>com.esua.epdc.yushan</groupId>
<artifactId>epdc-commons-points-tools</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
<build>
@ -197,6 +204,10 @@
<!--数据分析端小程序-->
<analysis.wx.ma.appId>wxb61fe7aced26ba7b</analysis.wx.ma.appId>
<analysis.wx.ma.secret>373c305e69b78f4d575d355fddb05146</analysis.wx.ma.secret>
<rocketmq.name.server>47.104.85.99:9876</rocketmq.name.server>
<rocketmq.producer.group>yushan-pointsGroup</rocketmq.producer.group>
<rocketmq.consumer.points.group>yushan-pointsGroup</rocketmq.consumer.points.group>
</properties>
</profile>
@ -221,7 +232,7 @@
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<nacos.ip>192.168.0.15</nacos.ip>
<nacos.ip>47.104.85.99</nacos.ip>
<nacos.namespace>de000340-5fc4-45aa-bdbc-dd96852012ad</nacos.namespace>
<!--公众号配置-->
@ -238,6 +249,10 @@
<!--数据分析端小程序-->
<analysis.wx.ma.appId>wxb61fe7aced26ba7b</analysis.wx.ma.appId>
<analysis.wx.ma.secret>373c305e69b78f4d575d355fddb05146</analysis.wx.ma.secret>
<rocketmq.name.server>47.104.85.99:9876</rocketmq.name.server>
<rocketmq.producer.group>yushan-pointsGroup</rocketmq.producer.group>
<rocketmq.consumer.points.group>yushan-pointsGroup</rocketmq.consumer.points.group>
</properties>
</profile>
@ -280,6 +295,10 @@
<!--数据分析端小程序-->
<analysis.wx.ma.appId>wxb61fe7aced26ba7b</analysis.wx.ma.appId>
<analysis.wx.ma.secret>373c305e69b78f4d575d355fddb05146</analysis.wx.ma.secret>
<rocketmq.name.server>172.16.1.242:9876;172.16.1.243:9876</rocketmq.name.server>
<rocketmq.producer.group>yushan-pointsGroup</rocketmq.producer.group>
<rocketmq.consumer.points.group>yushan-pointsGroup</rocketmq.consumer.points.group>
</properties>
</profile>
</profiles>

71
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java

@ -2,16 +2,16 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGridResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO;
import com.elink.esua.epdc.dto.epdc.result.UserInvitationRecordResultDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.form.*;
import com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO;
import com.elink.esua.epdc.dto.result.EpdcAppRegisterCallbackDTO;
import com.elink.esua.epdc.dto.result.EpdcCompleteUserInfoDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.AppUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -234,6 +234,38 @@ public class ApiAppUserController {
return appUserService.completeUserInfo(tokenDto, formDto);
}
/**
* 居民完善个人信息-保存
*
* @param tokenDto
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO>
* @author work@yujt.net.cn
* @date 2019/10/26 13:41
*/
@PostMapping("user/completeResidentInfo")
@RecordUserBehavior(behavior = BehaviorEnum.PERFECT_RESIDENT_INFO, referenceId = "#{tokenDto.getUserId}", userId = "#{tokenDto.getUserId}")
public Result<EpdcAppAuthorizationDTO> completeResidentInfo(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.completeUserInfo(tokenDto, formDto);
}
/**
* 党员完善个人信息-保存
*
* @param tokenDto
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO>
* @author work@yujt.net.cn
* @date 2019/10/26 13:41
*/
@PostMapping("user/completePartyInfo")
@RecordUserBehavior(behavior = BehaviorEnum.PERFECT_PARTY_INFO, referenceId = "#{tokenDto.getUserId}", userId = "#{tokenDto.getUserId}")
public Result<EpdcAppAuthorizationDTO> completePartyInfo(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.completeUserInfo(tokenDto, formDto);
}
/**
* 用于用户完善个人信息页面获取个人信息
*
@ -281,10 +313,10 @@ public class ApiAppUserController {
* @date 2019/12/13 14:41
*/
@PostMapping("volunteer/authenticate")
@RecordUserBehavior(behavior = BehaviorEnum.VOLUNTEER_PERFECT_INFO, referenceId = "#{tokenDto.getUserId}", userId = "#{tokenDto.getUserId}")
public Result volunteerAuthenticate(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteVolunteerInfoFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.volunteerAuthenticate(tokenDto, formDto);
}
@ -301,4 +333,35 @@ public class ApiAppUserController {
ValidatorUtils.validateEntity(formDto);
return appUserService.getUserWxPhone(formDto);
}
/**
* 积分排名接口0-网格1-街道
* 根据用户表积分做排行
*
* @param userDetail
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserRankingResultDTO>
* @Author zhangyong
* @Date 13:35 2020-06-01
**/
@GetMapping("userPointsRanking/list")
public Result<EpdcAppUserRankingResultDTO> listUserPointsRanking(@LoginUser TokenDto userDetail, EpdcAppUserRankingFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.listUserPointsRanking(userDetail, formDto);
}
/**
* 积分中心页面-积分等级排名
* 返回当前用户的排名 当前街道的前N名用户排名
*
* @param userDetail, formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserGradeRankingResultDTO>
* @Author zhangyong
* @Date 10:59 2020-06-24
**/
@GetMapping("user/gradeRanking/list")
public Result<EpdcAppUserGradeRankingResultDTO> listUserGradesRanking(@LoginUser TokenDto userDetail, EpdcAppUserGradeRankingFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
return appUserService.listUserGradesRanking(userDetail, formDTO);
}
}

100
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiCommentController.java

@ -2,17 +2,20 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.comment.CommentStatementFormDTO;
import com.elink.esua.epdc.dto.comment.form.CommentFormDTO;
import com.elink.esua.epdc.dto.comment.form.EventCommentsFormDTO;
import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.CommentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* 移动端接口-评论模块
*
* @Author WJP
* @Date 2019/9/9 09:45
*/
@ -25,13 +28,14 @@ public class ApiCommentController {
/**
* 提交评论或回复接口
*
* @param userDetail
* @param commentFormDTO
* @return
*/
@PostMapping("submit")
public Result submit(@LoginUser TokenDto userDetail, @RequestBody CommentFormDTO commentFormDTO) {
return commentService.submit(userDetail,commentFormDTO);
return commentService.submit(userDetail, commentFormDTO);
}
/**
@ -39,10 +43,100 @@ public class ApiCommentController {
*/
@PostMapping("statement")
public Result statement(@LoginUser TokenDto userDetail, @RequestBody CommentStatementFormDTO commentStatementFormDTO) {
return commentService.statement(userDetail,commentStatementFormDTO);
return commentService.statement(userDetail, commentStatementFormDTO);
}
/**
* 提交议题评论
*
* @param userDetail
* @param commentFormDTO
* @return
*/
@PostMapping("issueCom")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_COMMENT, referenceId = "#{commentFormDTO.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueCom(@LoginUser TokenDto userDetail, @RequestBody CommentFormDTO commentFormDTO) {
return commentService.submit(userDetail, commentFormDTO);
}
/**
* 提交议题回复接口
*
* @param userDetail
* @param commentFormDTO
* @return
*/
@PostMapping("issueComReply")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_COMMENT_REPLY, referenceId = "#{commentFormDTO.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueComReply(@LoginUser TokenDto userDetail, @RequestBody CommentFormDTO commentFormDTO) {
return commentService.submit(userDetail, commentFormDTO);
}
/**
* 提交项目评论接口
*
* @param userDetail
* @param commentFormDTO
* @return
*/
@PostMapping("itemCom")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_COMMENT, referenceId = "#{commentFormDTO.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemCom(@LoginUser TokenDto userDetail, @RequestBody CommentFormDTO commentFormDTO) {
return commentService.submit(userDetail, commentFormDTO);
}
/**
* 提交项目回复接口
*
* @param userDetail
* @param commentFormDTO
* @return
*/
@PostMapping("itemComReply")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_COMMENT_REPLY, referenceId = "#{commentFormDTO.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemComReply(@LoginUser TokenDto userDetail, @RequestBody CommentFormDTO commentFormDTO) {
return commentService.submit(userDetail, commentFormDTO);
}
/**
* 议题评论点赞
*/
@PostMapping("issueComLike")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_COMMENT_SUPPORT, referenceId = "#{commentStatementFormDTO.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueComLike(@LoginUser TokenDto userDetail, @RequestBody CommentStatementFormDTO commentStatementFormDTO) {
return commentService.statement(userDetail, commentStatementFormDTO);
}
/**
* 议题评论点踩
*/
@PostMapping("issueComUnlike")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_COMMENT_OPPOSITION, referenceId = "#{commentStatementFormDTO.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueComUnlike(@LoginUser TokenDto userDetail, @RequestBody CommentStatementFormDTO commentStatementFormDTO) {
return commentService.statement(userDetail, commentStatementFormDTO);
}
/**
* 项目评论点赞
*/
@PostMapping("itemComLike")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_COMMENT_SUPPORT, referenceId = "#{commentStatementFormDTO.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemComLike(@LoginUser TokenDto userDetail, @RequestBody CommentStatementFormDTO commentStatementFormDTO) {
return commentService.statement(userDetail, commentStatementFormDTO);
}
/**
* 项目评论点踩
*/
@PostMapping("itemComUnlike")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_COMMENT_OPPOSITION, referenceId = "#{commentStatementFormDTO.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemComUnlike(@LoginUser TokenDto userDetail, @RequestBody CommentStatementFormDTO commentStatementFormDTO) {
return commentService.statement(userDetail, commentStatementFormDTO);
}
/**
* 评论列表
*
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO>
* @Author: liuchuang
@ -50,7 +144,7 @@ public class ApiCommentController {
*/
@GetMapping("list")
public Result<EventCommentsResultDTO> listOfComments(@LoginUser TokenDto userDetail, EventCommentsFormDTO formDto) {
return commentService.listOfComments(userDetail,formDto);
return commentService.listOfComments(userDetail, formDto);
}
}

50
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
@ -9,6 +10,7 @@ import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.*;
import com.elink.esua.epdc.dto.group.result.*;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.GroupService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -16,7 +18,6 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*
* 移动端接口-社群模块
*
* @Authorliuchuang
@ -30,39 +31,38 @@ public class ApiGroupController {
private GroupService groupService;
/**
*
* 创建社群
*
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDetail, formDto]
* @author liuchuang
* @since 2019/10/17 13:58
*/
@PostMapping("create")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_CREATE_APPLICATION, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result createGroup(@LoginUser TokenDto userDetail, @RequestBody GroupCreateFormDTO formDto) {
return groupService.saveGroup(userDetail, formDto);
}
/**
*
* 解散社群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/10/21 9:51
*/
@PostMapping("disband")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_DISSOLUTION, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result disbandGroup(@LoginUser TokenDto userDetail, @RequestBody GroupSettingStateDTO formDto) {
return groupService.disbandGroup(userDetail, formDto);
}
/**
*
* 我的群列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO>>
* @params [userDetail]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO>>
* @author liuchuang
* @since 2019/10/21 17:20
*/
@ -72,11 +72,10 @@ public class ApiGroupController {
}
/**
*
* 推荐群列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO>>
* @params [userDetail]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO>>
* @author liuchuang
* @since 2019/10/22 13:53
*/
@ -86,11 +85,10 @@ public class ApiGroupController {
}
/**
*
* 社群详情
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO>>
* @params [userDetail, id]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO>>
* @author liuchuang
* @since 2019/10/22 15:14
*/
@ -100,39 +98,38 @@ public class ApiGroupController {
}
/**
*
* 修改群介绍
*
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDetail, formDto]
* @author liuchuang
* @since 2019/10/22 15:33
*/
@PostMapping("modifyIntroduction")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_MODIFY_INFO, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result modifyIntroduction(@LoginUser TokenDto userDetail, @RequestBody GroupIntroductionFormDTO formDto) {
return groupService.modifyIntroduction(userDetail, formDto);
}
/**
*
* 修改群头像
*
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDetail, formDto]
* @author liuchuang
* @since 2019/10/22 17:25
*/
@PostMapping("modifyAvatar")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_MODIFY_INFO, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result modifyAvatar(@LoginUser TokenDto userDetail, @RequestBody GroupModifyAvatarFormDTO formDto) {
return groupService.modifyAvatar(userDetail, formDto);
}
/**
*
* 社群成员列表待审核/审核通过
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/10/23 9:13
*/
@ -142,11 +139,10 @@ public class ApiGroupController {
}
/**
*
* 移除社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/10/23 10:35
*/
@ -156,11 +152,10 @@ public class ApiGroupController {
}
/**
*
* 退出社群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/10/23 10:40
*/
@ -170,11 +165,10 @@ public class ApiGroupController {
}
/**
*
* 添加成员列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @author liuchuang
* @since 2019/10/23 16:39
*/
@ -184,11 +178,10 @@ public class ApiGroupController {
}
/**
*
* 添加社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/11/6 9:17
*/
@ -198,11 +191,10 @@ public class ApiGroupController {
}
/**
*
* 审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/11/6 13:22
*/
@ -212,15 +204,15 @@ public class ApiGroupController {
}
/**
*
* 申请入群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/11/11 14:00
*/
@PostMapping("applyForGroup")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_JOIN_APPLICATION, referenceId = "#{formDto.getGroupId}", userId = "#{userDetail.getUserId}")
public Result applyForGroup(@LoginUser TokenDto userDetail, @RequestBody GroupApplyFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return groupService.applyForGroup(userDetail, formDto);

83
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.CategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
@ -10,6 +11,7 @@ import com.elink.esua.epdc.dto.issue.form.IssueFormDTO;
import com.elink.esua.epdc.dto.issue.form.IssuesAndEventsOfMineFormDTO;
import com.elink.esua.epdc.dto.issue.form.StatementFormDTO;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.IssueService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -22,6 +24,7 @@ import java.util.Map;
/**
* 移动端接口-议题模块
*
* @Author LC
* @Date 2019/9/6 20:04
*/
@ -34,20 +37,23 @@ public class ApiIssueController {
/**
* 发布事件
*
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: liuchuang
* @Date: 2019/9/8 15:36
*/
@PostMapping("submit")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_PUBLISH, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result submitEvent(@LoginUser TokenDto userDetail, @RequestBody EpdcEventSubmitFormDTO formDto) {
return issueService.saveEvent(userDetail, formDto);
}
/**
* 议题最新最热列表
*
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.issue.result.IssueResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.issue.result.IssueResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/7 12:08
*/
@ -58,6 +64,7 @@ public class ApiIssueController {
/**
* 图片上传
*
* @Params: [params]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
* @Author: liuchuang
@ -74,6 +81,7 @@ public class ApiIssueController {
/**
* 议题/
*
* @param userDetail
* @param formDto
* @return
@ -84,20 +92,84 @@ public class ApiIssueController {
formDto.setUserName(userDetail.getNickname());
return issueService.statement(formDto);
}
/**
* 议题赞
*
* @param userDetail
* @param formDto
* @return
*/
@PostMapping("issueSupport")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_SUPPORT, referenceId = "#{formDto.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueSupport(@LoginUser TokenDto userDetail, @RequestBody StatementFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setUserName(userDetail.getNickname());
return issueService.statement(formDto);
}
/**
* 议题踩
*
* @param userDetail
* @param formDto
* @return
*/
@PostMapping("issueOpposition")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_OPPOSITION, referenceId = "#{formDto.getIssueId}", userId = "#{userDetail.getUserId}")
public Result issueOpposition(@LoginUser TokenDto userDetail, @RequestBody StatementFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setUserName(userDetail.getNickname());
return issueService.statement(formDto);
}
/**
* 项目赞
*
* @param userDetail
* @param formDto
* @return
*/
@PostMapping("itemSupport")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_SUPPORT, referenceId = "#{formDto.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemSupport(@LoginUser TokenDto userDetail, @RequestBody StatementFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setUserName(userDetail.getNickname());
return issueService.statement(formDto);
}
/**
* 项目踩
*
* @param userDetail
* @param formDto
* @return
*/
@PostMapping("itemOpposition")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_OPPOSITION, referenceId = "#{formDto.getItemId}", userId = "#{userDetail.getUserId}")
public Result itemOpposition(@LoginUser TokenDto userDetail, @RequestBody StatementFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setUserName(userDetail.getNickname());
return issueService.statement(formDto);
}
/**
* 议题详情
*
* @Params: [userDetail, issueId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.issue.result.IssueDetailResultDTO>
* @Author: liuchuang
* @Date: 2019/9/9 11:16
*/
@GetMapping("detail/{issueId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_BROWSE, referenceId = "#{issueId}", userId = "#{userDetail.getUserId}")
public Result<IssueDetailResultDTO> issueDetail(@LoginUser TokenDto userDetail, @PathVariable String issueId) {
return issueService.getIssueDetail(userDetail, issueId);
}
/**
* 议题分类统计
*
* @Params: [userDetail, firstCategoryCode]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.issue.result.IssueCategoryStatisticsResultDTO>
* @Author: liuchuang
@ -110,8 +182,9 @@ public class ApiIssueController {
/**
* 议题处理进度
*
* @Params: [issueId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.issue.result.IssueHandleProgressResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.issue.result.IssueHandleProgressResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/9 13:14
*/
@ -122,8 +195,9 @@ public class ApiIssueController {
/**
* 我的议题和事件列表
*
* @Params: [formDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.issue.result.IssuesAndEventsOfMineResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.issue.result.IssuesAndEventsOfMineResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/17 16:11
*/
@ -134,6 +208,7 @@ public class ApiIssueController {
/**
* 事件详情
*
* @Params: [eventId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO>
* @Author: liuchuang
@ -148,7 +223,7 @@ public class ApiIssueController {
* 分类列表
*/
@GetMapping("category/list")
public Result<List<CategoryDTO>> categorylist(){
public Result<List<CategoryDTO>> categorylist() {
return issueService.categorylist();
}

18
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiItemController.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.EvaluationFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
@ -10,6 +11,7 @@ import com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemHandleProgressResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.ItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -18,6 +20,7 @@ import java.util.List;
/**
* 移动端接口-项目模块
*
* @Author LC
* @Date 2019/9/9 16:32
*/
@ -30,8 +33,9 @@ public class ApiItemController {
/**
* 项目列表
*
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/9 16:34
*/
@ -42,24 +46,28 @@ public class ApiItemController {
/**
* 项目详情
*
* @Params: [userDetail, itemId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: liuchuang
* @Date: 2019/9/10 20:42
*/
@GetMapping("detail/{itemId}")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_BROWSE, referenceId = "#{itemId}", userId = "#{userDetail.getUserId}")
public Result<ItemDetailResultDTO> itemDetail(@LoginUser TokenDto userDetail, @PathVariable String itemId) {
return itemService.getItemDetail(userDetail, itemId);
}
@PostMapping("evaluation")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_EVALUATION, referenceId = "#{evaluationFormDTO.getItemId}", userId = "#{userDetail.getUserId}")
public Result evaluation(@LoginUser TokenDto userDetail, @RequestBody EvaluationFormDTO evaluationFormDTO) {
return itemService.evaluation(userDetail,evaluationFormDTO);
return itemService.evaluation(userDetail, evaluationFormDTO);
}
/**
* 项目分类统计
*
* @Params: [userDetail, categoryCode]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO>
* @Author: liuchuang
@ -72,8 +80,9 @@ public class ApiItemController {
/**
* 项目处理进度
*
* @Params: [itemId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemHandleProgressResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemHandleProgressResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/17 11:09
*/
@ -84,8 +93,9 @@ public class ApiItemController {
/**
* 我的项目列表
*
* @Params: [userDetail, formDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: liuchuang
* @Date: 2019/9/17 13:27
*/

45
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiTopicCommentController.java

@ -2,17 +2,20 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.comment.TopicCommentFormDTO;
import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.TopicCommentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* 移动端接口-评论模块
*
* @Author WJP
* @Date 2019/9/9 09:45
*/
@ -28,7 +31,25 @@ public class ApiTopicCommentController {
*/
@PostMapping("submit")
public Result submit(@LoginUser TokenDto userDetail, @RequestBody TopicCommentFormDTO topicCommentFormDTO) {
return topicCommentService.submit(userDetail,topicCommentFormDTO);
return topicCommentService.submit(userDetail, topicCommentFormDTO);
}
/**
* 提交评论接口
*/
@PostMapping("topicCom")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_COMMENT, referenceId = "#{topicCommentFormDTO.getTopicId}", userId = "#{userDetail.getUserId}")
public Result topicCom(@LoginUser TokenDto userDetail, @RequestBody TopicCommentFormDTO topicCommentFormDTO) {
return topicCommentService.submit(userDetail, topicCommentFormDTO);
}
/**
* 提交回复接口
*/
@PostMapping("topicReply")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_COMMENT_REPLY, referenceId = "#{topicCommentFormDTO.getTopicId}", userId = "#{userDetail.getUserId}")
public Result topicReply(@LoginUser TokenDto userDetail, @RequestBody TopicCommentFormDTO topicCommentFormDTO) {
return topicCommentService.submit(userDetail, topicCommentFormDTO);
}
/**
@ -36,7 +57,25 @@ public class ApiTopicCommentController {
*/
@PostMapping("statement")
public Result statement(@LoginUser TokenDto userDetail, @RequestBody TopicCommentStatementFormDTO topicCommentStatementFormDTO) {
return topicCommentService.statement(userDetail,topicCommentStatementFormDTO);
return topicCommentService.statement(userDetail, topicCommentStatementFormDTO);
}
/**
* 评论
*/
@PostMapping("topicComLike")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_TOPIC_COMMENT_SUPPORT, referenceId = "#{topicCommentStatementFormDTO.getTopicId}", userId = "#{userDetail.getUserId}")
public Result topicComLike(@LoginUser TokenDto userDetail, @RequestBody TopicCommentStatementFormDTO topicCommentStatementFormDTO) {
return topicCommentService.statement(userDetail, topicCommentStatementFormDTO);
}
/**
* 评论
*/
@PostMapping("topicComUnlike")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_TOPIC_COMMENT_OPPOSITION, referenceId = "#{topicCommentStatementFormDTO.getTopicId}", userId = "#{userDetail.getUserId}")
public Result topicComUnlike(@LoginUser TokenDto userDetail, @RequestBody TopicCommentStatementFormDTO topicCommentStatementFormDTO) {
return topicCommentService.statement(userDetail, topicCommentStatementFormDTO);
}
/**
@ -44,7 +83,7 @@ public class ApiTopicCommentController {
*/
@GetMapping("list")
public Result<EventCommentsResultDTO> listOfComments(@LoginUser TokenDto userDetail, TopicCommentsFormDTO topicCommentsFormDTO) {
return topicCommentService.listOfComments(userDetail,topicCommentsFormDTO);
return topicCommentService.listOfComments(userDetail, topicCommentsFormDTO);
}
}

30
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.group.result.TopicAuditRecordResultDTO;
@ -11,6 +12,7 @@ import com.elink.esua.epdc.dto.topic.form.TopicCloseFormDTO;
import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO;
import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.TopicService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -19,7 +21,6 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
*
* 移动端接口-话题模块
*
* @Authorliuchuang
@ -33,26 +34,25 @@ public class ApiTopicController {
private TopicService topicService;
/**
*
* 发布话题
*
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDetail, formDto]
* @author liuchuang
* @since 2019/11/6 14:46
*/
@PostMapping("submit")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_TOPIC_PUBLISH, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result submit(@LoginUser TokenDto userDetail, @RequestBody TopicSubmitFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return topicService.saveTopic(userDetail, formDto);
}
/**
*
* 话题列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.topic.result.TopicListResultDTO>>
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.topic.result.TopicListResultDTO>>
* @author liuchuang
* @since 2019/11/11 15:04
*/
@ -63,11 +63,10 @@ public class ApiTopicController {
}
/**
*
* 我的话题列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.topic.result.TopicListResultDTO>>
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.topic.result.TopicListResultDTO>>
* @author liuchuang
* @since 2019/11/11 15:04
*/
@ -78,25 +77,24 @@ public class ApiTopicController {
}
/**
*
* 话题详情
*
* @params [id]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO>
* @params [id]
* @author liuchuang
* @since 2019/11/7 15:37
*/
@GetMapping("detail/{id}")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_BROWSE, referenceId = "#{id}", userId = "#{userDetail.getUserId}")
public Result<TopicDetailResultDTO> detail(@LoginUser TokenDto userDetail, @PathVariable("id") String id) {
return topicService.getTopicDetailById(userDetail, id);
}
/**
*
* 关闭话题
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [formDto]
* @author liuchuang
* @since 2019/11/7 16:10
*/
@ -107,11 +105,10 @@ public class ApiTopicController {
}
/**
*
* 话题审核记录
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.group.result.TopicAuditRecordResultDTO>>
* @params [topicId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.group.result.TopicAuditRecordResultDTO>>
* @author liuchuang
* @since 2019/11/8 9:39
*/
@ -121,26 +118,25 @@ public class ApiTopicController {
}
/**
*
* 转议题
*
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDetail, formDto]
* @author liuchuang
* @since 2019/11/8 10:37
*/
@PostMapping("changeToIssue")
@RecordUserBehavior(behavior = BehaviorEnum.GROUP_TOPIC_TO_EVENTS, referenceId = "#{formDto.getId}", userId = "#{userDetail.getUserId}")
public Result changeToIssue(@LoginUser TokenDto userDetail, @RequestBody TopicChangeToIssueFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return topicService.changeToIssue(userDetail, formDto);
}
/**
*
* 文件上传
*
* @params [file]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [file]
* @author liuchuang
* @since 2019/11/25 10:45
*/

80
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
@ -11,6 +12,7 @@ import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.WorkIssueService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -29,7 +31,8 @@ public class ApiWorkIssueController {
/**
*议题数据统计
* 议题数据统计
*
* @param formDto
* @return
*/
@ -40,6 +43,7 @@ public class ApiWorkIssueController {
/**
* 事件列表接口待回应/已驳回
*
* @param formDto
* @return
*/
@ -49,7 +53,8 @@ public class ApiWorkIssueController {
}
/**
*事件详情
* 事件详情
*
* @param id
* @return
*/
@ -59,7 +64,8 @@ public class ApiWorkIssueController {
}
/**
*事件分类
* 事件分类
*
* @return
*/
@GetMapping("event/categoryList")
@ -69,7 +75,8 @@ public class ApiWorkIssueController {
}
/**
*事件审核
* 事件审核
*
* @return
*/
@PostMapping("event/review")
@ -78,8 +85,32 @@ public class ApiWorkIssueController {
return workIssueService.review(dto);
}
/**
* 事件审核 - 通过
*
* @return
*/
@PostMapping("event/reviewPass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_PASS, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result reviewPass(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
/**
* 事件审核 -不通过
*
* @return
*/
@PostMapping("event/reviewNopass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_FAILED, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result reviewNopass(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
/**
* 工作端-议题待处理或者已关闭的最新最热列表
*
* @param formDto
* @return
*/
@ -93,35 +124,34 @@ public class ApiWorkIssueController {
* 工作端-议题详情
*/
@GetMapping("issue/detail/{issueId}")
public Result<WorkIssueDetailResultDTO> issueDetail(@PathVariable("issueId") String issueId){
public Result<WorkIssueDetailResultDTO> issueDetail(@PathVariable("issueId") String issueId) {
return workIssueService.selectOneWorkIssueDetail(issueId);
}
/**
* 工作端-事件评论列表
*
* @param formDTO
* @return
*/
@GetMapping("event/commentList")
public Result<List<WorkEventCommentResultDTO>> commentList(WorkEventCommentListFormDTO formDTO){
public Result<List<WorkEventCommentResultDTO>> commentList(WorkEventCommentListFormDTO formDTO) {
return workIssueService.selectWorkHotOrNewEventComment(formDTO);
}
/**
*
* 事件评论回复列表接口
*/
@GetMapping("event/commentReplyList")
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO){
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO) {
return workIssueService.commentReplyList(workCommentReplyFormDTO);
}
/**
*
* 议题处理进度(后台/工作端用)
*/
@GetMapping("issue/processList")
public Result<List<IssueProgressResultDTO>> processList(WorkProcessListFormDTO workProcessListFormDTO){
public Result<List<IssueProgressResultDTO>> processList(WorkProcessListFormDTO workProcessListFormDTO) {
return workIssueService.processList(workProcessListFormDTO);
}
@ -134,5 +164,35 @@ public class ApiWorkIssueController {
return workIssueService.handleSubmit(dto);
}
/**
* 议题待处理 - 回应
*/
@PostMapping("issue/response")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_RESPONSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result response(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
}
/**
* 议题待处理 - 关闭
*/
@PostMapping("issue/close")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_CLOSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result close(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
}
/**
* 议题待处理 -- 转项目
*/
@PostMapping("issue/toItem")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_TO_PROJECT, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result toItem(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
}
}

72
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java

@ -1,9 +1,11 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.WorkItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -12,6 +14,7 @@ import java.util.List;
/**
* 移动端接口-项目模块
*
* @Author LPF
* @Date 2019/11/18 13:32
*/
@ -24,6 +27,7 @@ public class ApiWorkItemController {
/**
* 项目统计
*
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO>
* @Author: lipengfei
@ -33,20 +37,23 @@ public class ApiWorkItemController {
public Result<ItemStatisticsResultDTO> itemStatistics(ItemStatisticsFormDTO formDto) {
return workItemService.getItemStatistics(formDto);
}
/**
* 项目列表
*
* @Params: [ formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("list")
public Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto) {
return workItemService.listItems( formDto);
return workItemService.listItems(formDto);
}
/**
* 项目详情
*
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
@ -56,8 +63,10 @@ public class ApiWorkItemController {
public Result<ItemDetailResultDTO> itemDetail(@PathVariable String id) {
return workItemService.getItemDetail(id);
}
/**
* 获取满意度评价结果
*
* @Params: [evaluationFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
@ -67,8 +76,10 @@ public class ApiWorkItemController {
public Result<List<ItemDeptEvaluateResultDTO>> evaluation(EvaluationFormDTO evaluationFormDTO) {
return workItemService.evaluation(evaluationFormDTO);
}
/**
* 获取可吹哨部门
*
* @Params: [evaluationFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
@ -83,8 +94,63 @@ public class ApiWorkItemController {
public Result handleSubmit(@RequestBody ItemHandleSubmitFormDTO dto) {
return workItemService.handleSubmit(dto);
}
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Description 项目处理 - 回应
* @Author songyunpeng
* @Date 2020/5/7
* @Param [dto]
**/
@PostMapping("response")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_RESPONSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result response(@RequestBody ItemHandleSubmitFormDTO dto) {
return workItemService.handleSubmit(dto);
}
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Description 项目处理 - 关闭
* @Author songyunpeng
* @Date 2020/5/7
* @Param [dto]
**/
@PostMapping("close")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_CLOSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result close(@RequestBody ItemHandleSubmitFormDTO dto) {
return workItemService.handleSubmit(dto);
}
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Description 项目处理 - 吹哨
* @Author songyunpeng
* @Date 2020/5/7
* @Param [dto]
**/
@PostMapping("whistle")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_WHISTLE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result whistle(@RequestBody ItemHandleSubmitFormDTO dto) {
return workItemService.handleSubmit(dto);
}
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Description 项目处理 - 结案
* @Author songyunpeng
* @Date 2020/5/7
* @Param [dto]
**/
@PostMapping("closeCase")
@RecordUserBehavior(behavior = BehaviorEnum.PROJECT_CLOSE_CASE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result closeCase(@RequestBody ItemHandleSubmitFormDTO dto) {
return workItemService.handleSubmit(dto);
}
/**
* 获取满意度评价部门
*
* @Params: [evaluationFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
@ -94,8 +160,10 @@ public class ApiWorkItemController {
public Result<List<ItemEvaluateDeptDTO>> evaluationDept(EvaluationFormDTO evaluationFormDTO) {
return workItemService.evaluationDept(evaluationFormDTO);
}
/**
* 项目处理进度
*
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei

33
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.WorkUserAuthorizationDTO;
import com.elink.esua.epdc.common.token.dto.WorkUserLoginDTO;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.Result;
@ -12,6 +13,7 @@ import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.form.EpdcWorkAppUserMaTokenFormDTO;
import com.elink.esua.epdc.dto.form.WorkAppMenuStatisticsFormDTO;
import com.elink.esua.epdc.dto.result.WorkAppMenuStatisticsResultDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.WorkUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -94,6 +96,33 @@ public class ApiWorkUserController {
return workUserService.authenticateResident(formDTO);
}
/**
* 认证用户用户信息审核 - -通过
*
* @param formDto
* @return
*/
@PostMapping("swagger/authenticateResidentPass")
@RecordUserBehavior(behavior = BehaviorEnum.RESIDENT_AUDIT_PASS, referenceId = "#{formDto.getUserId}", userId = "#{formDto.getUserId}")
public Result authenticateResidentPass(@RequestBody EpdcAppAuthenticateResidentFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return workUserService.authenticateResident(formDto);
}
/**
* 认证用户用户信息审核 - 不通过
*
* @param formDto
* @return
*/
@PostMapping("swagger/authenticateResidentNoPass")
@RecordUserBehavior(behavior = BehaviorEnum.RESIDENT_AUDIT_NO_PASS, referenceId = "#{formDto.getUserId}", userId = "#{formDto.getUserId}")
public Result authenticateResidentNoPass(@RequestBody EpdcAppAuthenticateResidentFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return workUserService.authenticateResident(formDto);
}
/***
* 用户列表
* @param workUserFromDto
@ -203,7 +232,7 @@ public class ApiWorkUserController {
/**
* @param []
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @describe: 判断是否更新头像
* @author wangtong
@ -215,7 +244,7 @@ public class ApiWorkUserController {
}
/**
* @param [avatar]
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @describe: 更新头像
* @author wangtong

34
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java

@ -4,12 +4,14 @@ import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.api.version.ApiVersion;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.form.EpdcAppUserRegisterFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppUserRegisterV3FormDTO;
import com.elink.esua.epdc.dto.form.v2.EpdcCompleteUserInfoFormV2DTO;
import com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import com.elink.esua.epdc.service.AppUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -69,4 +71,36 @@ public class ApiAppUserV2Controller {
ValidatorUtils.validateEntity(formDto);
return appUserService.completeUserInfo(tokenDto, formDto);
}
/**
* 完善居民信息不再进行验证手机号
*
* @param tokenDto
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO>
* @author work@yujt.net.cn
* @date 2020/2/20 17:11
*/
@PostMapping("user/" + Constant.VERSION_CONTROL + "/completeResidentInfo")
@RecordUserBehavior(behavior = BehaviorEnum.PERFECT_RESIDENT_INFO, referenceId = "#{tokenDto.getUserId}", userId = "#{tokenDto.getUserId}")
public Result<EpdcAppAuthorizationDTO> completeResidentInfo(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormV2DTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.completeUserInfo(tokenDto, formDto);
}
/**
* 完善党员信息不再进行验证手机号
*
* @param tokenDto
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO>
* @author work@yujt.net.cn
* @date 2020/2/20 17:11
*/
@PostMapping("user/" + Constant.VERSION_CONTROL + "/completePartyInfo")
public Result<EpdcAppAuthorizationDTO> completePartyInfo(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormV2DTO formDto) {
ValidatorUtils.validateEntity(formDto);
return appUserService.completeUserInfo(tokenDto, formDto);
}
}

24
epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java

@ -413,4 +413,28 @@ public interface UserFeignClient {
**/
@PostMapping(value = "app-user/usergridinvitationcode/updateInvitationCodeUrl", consumes = MediaType.APPLICATION_JSON_VALUE)
Result updateInvitationCodeUrl(UserGridInvitationCodeDTO userGridInvitationCodeDTO);
/**
* 积分排名接口0-网格1-街道
* 根据用户表积分做排行
*
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserRankingResultDTO>
* @Author zhangyong
* @Date 13:35 2020-06-01
**/
@GetMapping(value = "app-user/epdc-app/user/listUserPointsRanking/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<EpdcAppUserRankingResultDTO> selectListUserPointsRanking(EpdcAppUserRankingFormDTO formDto);
/**
* 积分中心页面-积分等级排名
* 返回当前用户的排名 当前街道的前N名用户排名
*
* @param formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserGradeRankingResultDTO>
* @Author zhangyong
* @Date 10:59 2020-06-24
**/
@GetMapping(value = "app-user/epdc-app/user/gradeRanking/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<EpdcAppUserGradeRankingResultDTO> selectListUserGradesRanking(EpdcAppUserGradeRankingFormDTO formDTO);
}

10
epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java

@ -202,4 +202,14 @@ public class UserFeignClientFallback implements UserFeignClient {
public Result updateInvitationCodeUrl(UserGridInvitationCodeDTO userGridInvitationCodeDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "updateInvitationCodeUrl", userGridInvitationCodeDTO);
}
@Override
public Result<EpdcAppUserRankingResultDTO> selectListUserPointsRanking(EpdcAppUserRankingFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "selectListUserPointsRanking", formDto);
}
@Override
public Result<EpdcAppUserGradeRankingResultDTO> selectListUserGradesRanking(EpdcAppUserGradeRankingFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "selectListUserGradesRanking", formDto);
}
}

0
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/.gitkeep

37
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ApiResidentConfigController.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.modules.api.controller;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO;
import com.elink.esua.epdc.modules.api.service.ResidentConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* APP 获取居民端配置
*
* @author zhangyong
* @date 2020/05/27 18:30
*/
@RestController
@RequestMapping("residentConfig")
public class ApiResidentConfigController {
@Autowired
private ResidentConfigService residentConfigService;
/**
* @Description 获取居民端配置
* @Author songyunpeng
* @Date 2020/6/9
* @Param [residentType]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>>
**/
@GetMapping("getResidentConfig")
public Result<List<ResidentConfigResultDTO>> getImgUrlList(String residentType){
return residentConfigService.listResidentConfig(residentType);
}
}

37
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ApiWorkResidentConfigController.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.modules.api.controller;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO;
import com.elink.esua.epdc.modules.api.service.ResidentConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* APP 获取居民端配置
*
* @author zhangyong
* @date 2020/05/27 18:30
*/
@RestController
@RequestMapping("work/residentConfig")
public class ApiWorkResidentConfigController {
@Autowired
private ResidentConfigService residentConfigService;
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>>
* @Description 获取小程序端配置
* @Author songyunpeng
* @Date 2020/6/9
* @Param [residentType]
**/
@GetMapping("swagger/getResidentConfig")
public Result<List<ResidentConfigResultDTO>> getImgUrlList(String residentType) {
return residentConfigService.listResidentConfig(residentType);
}
}

94
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/controller/ResidentConfigController.java

@ -0,0 +1,94 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.controller;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ExcelUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.ResidentConfigDTO;
import com.elink.esua.epdc.modules.api.excel.ResidentConfigExcel;
import com.elink.esua.epdc.modules.api.service.ResidentConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
@RestController
@RequestMapping("residentconfig")
public class ResidentConfigController {
@Autowired
private ResidentConfigService residentConfigService;
@GetMapping("page")
public Result<PageData<ResidentConfigDTO>> page(@RequestParam Map<String, Object> params) {
PageData<ResidentConfigDTO> page = residentConfigService.page(params);
return new Result<PageData<ResidentConfigDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<ResidentConfigDTO> get(@PathVariable("id") String id) {
ResidentConfigDTO data = residentConfigService.get(id);
return new Result<ResidentConfigDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody ResidentConfigDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
residentConfigService.save(dto);
return new Result();
}
@PutMapping
public Result update(@RequestBody ResidentConfigDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
residentConfigService.update(dto);
return new Result();
}
@DeleteMapping
public Result delete(@RequestBody String[] ids) {
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
residentConfigService.delete(ids);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<ResidentConfigDTO> list = residentConfigService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, ResidentConfigExcel.class);
}
}

65
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/dao/ResidentConfigDao.java

@ -0,0 +1,65 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.ResidentConfigDTO;
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO;
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
@Mapper
public interface ResidentConfigDao extends BaseDao<ResidentConfigEntity> {
/**
* @return java.util.List<com.elink.esua.epdc.dto.ResidentConfigDTO>
* @Description pc获取列表
* @Author songyunpeng
* @Date 2020/6/8
* @Param [params]
**/
List<ResidentConfigDTO> selectListResidentConfig(Map<String, Object> params);
/**
* @return java.util.List<com.elink.esua.epdc.dto.ResidentConfigDTO>
* @Description app根据类型获取居民配置列表
* @Author songyunpeng
* @Date 2020/6/8
* @Param [residentType]
**/
List<ResidentConfigResultDTO> selectListResidentConfigByResidentType(@Param(value = "residentType") String residentType);
/**
* @return com.elink.esua.epdc.dto.ResidentConfigDTO
* @Description 根据类型和编码获取配置
* @Author songyunpeng
* @Date 2020/6/8
* @Param [residentType, residentCode]
**/
ResidentConfigDTO selectResidentConfigDTOByTypeAndCode(String residentType, String residentCode);
}

61
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/entity/ResidentConfigEntity.java

@ -0,0 +1,61 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("epdc_resident_config")
public class ResidentConfigEntity extends BaseEpdcEntity {
private static final long serialVersionUID = 2487728661562100503L;
/**
* 配置类型
*/
private String residentType;
/**
* 配置编码
*/
private String residentCode;
/**
* 配置内容
*/
private String residentValue;
/**
* 排序
*/
private String sort;
/**
* 备注
*/
private String remark;
}

68
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/excel/ResidentConfigExcel.java

@ -0,0 +1,68 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
@Data
public class ResidentConfigExcel {
@Excel(name = "主键")
private String id;
@Excel(name = "配置类型")
private String residentType;
@Excel(name = "配置编码")
private String residentCode;
@Excel(name = "配置内容")
private String residentValue;
@Excel(name = "排序")
private String sort;
@Excel(name = "删除标识 0:未删除,1:删除")
private String delFlag;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
}

117
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/service/ResidentConfigService.java

@ -0,0 +1,117 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ResidentConfigDTO;
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO;
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity;
import java.util.List;
import java.util.Map;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
public interface ResidentConfigService extends BaseService<ResidentConfigEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<ResidentConfigDTO>
* @author generator
* @date 2020-06-08
*/
PageData<ResidentConfigDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<ResidentConfigDTO>
* @author generator
* @date 2020-06-08
*/
List<ResidentConfigDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return ResidentConfigDTO
* @author generator
* @date 2020-06-08
*/
ResidentConfigDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2020-06-08
*/
void save(ResidentConfigDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2020-06-08
*/
void update(ResidentConfigDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2020-06-08
*/
void delete(String[] ids);
/**
* app根据类型获取居民配置
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>>
* @Author songyunpeng
* @Date 2020/6/8
* @Param [residentType]
**/
Result<List<ResidentConfigResultDTO>> listResidentConfig(String residentType);
/**
* @return com.elink.esua.epdc.dto.ResidentConfigDTO
* @Description 根据类型和编码获取配置
* @Author songyunpeng
* @Date 2020/6/8
* @Param [residentType, residentCode]
**/
ResidentConfigDTO getResidentConfigDTOByTypeAndCode(String residentType, String residentCode);
}

121
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/api/service/impl/ResidentConfigServiceImpl.java

@ -0,0 +1,121 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.api.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ResidentConfigDTO;
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO;
import com.elink.esua.epdc.modules.api.dao.ResidentConfigDao;
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity;
import com.elink.esua.epdc.modules.api.service.ResidentConfigService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 居民端配置表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-06-08
*/
@Service
public class ResidentConfigServiceImpl extends BaseServiceImpl<ResidentConfigDao, ResidentConfigEntity> implements ResidentConfigService {
@Override
public PageData<ResidentConfigDTO> page(Map<String, Object> params) {
IPage<ResidentConfigDTO> page = getPage(params);
List<ResidentConfigDTO> list = baseDao.selectListResidentConfig(params);
return new PageData<>(list, page.getTotal());
}
@Override
public List<ResidentConfigDTO> list(Map<String, Object> params) {
List<ResidentConfigEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, ResidentConfigDTO.class);
}
private QueryWrapper<ResidentConfigEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<ResidentConfigEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public ResidentConfigDTO get(String id) {
ResidentConfigEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, ResidentConfigDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(ResidentConfigDTO dto) {
//校验同意类型下 编码是否重复
ResidentConfigDTO residentConfigDTOByTypeAndCode = getResidentConfigDTOByTypeAndCode(dto.getResidentType(), dto.getResidentCode());
if (residentConfigDTOByTypeAndCode != null) {
throw new RenException("同一类型下编码不能重复!");
}
ResidentConfigEntity entity = ConvertUtils.sourceToTarget(dto, ResidentConfigEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(ResidentConfigDTO dto) {
//校验同意类型下 编码是否重复
ResidentConfigDTO residentConfigDTOByTypeAndCode = getResidentConfigDTOByTypeAndCode(dto.getResidentType(), dto.getResidentCode());
//若是存在相同且ID不同的话代表编码重复!
if (residentConfigDTOByTypeAndCode != null && !residentConfigDTOByTypeAndCode.getId().equals(dto.getId())) {
throw new RenException("同一类型下编码不能重复!");
}
ResidentConfigEntity entity = ConvertUtils.sourceToTarget(dto, ResidentConfigEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public Result<List<ResidentConfigResultDTO>> listResidentConfig(String residentType) {
return new Result<List<ResidentConfigResultDTO>>().ok(baseDao.selectListResidentConfigByResidentType(residentType));
}
@Override
public ResidentConfigDTO getResidentConfigDTOByTypeAndCode(String residentType, String residentCode) {
return baseDao.selectResidentConfigDTOByTypeAndCode(residentType, residentCode);
}
}

53
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/controller/ApiNewsController.java

@ -2,11 +2,13 @@ package com.elink.esua.epdc.modules.news.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.modules.news.service.NewsService;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -49,7 +51,8 @@ public class ApiNewsController {
* @date 2019/9/6 14:58
*/
@GetMapping("notice/detail/{noticeId}")
public Result<EpdcNoticeDetailResultDTO> getNoticeDetail(@PathVariable("noticeId") String noticeId) {
@RecordUserBehavior(behavior = BehaviorEnum.NOTICE_BROWSE, referenceId = "#{noticeId}", userId = "#{userDetail.getUserId}")
public Result<EpdcNoticeDetailResultDTO> getNoticeDetail(@LoginUser TokenDto userDetail, @PathVariable("noticeId") String noticeId) {
return newsService.getNoticeDetail(noticeId);
}
@ -110,6 +113,36 @@ public class ApiNewsController {
return newsService.updateStatement(userDetail, newsStatementFromDTO);
}
/***
* @Description 点赞
* @Author qushutong
* @Date 2019/9/7 14:15
* @Param []
* @Return com.elink.esua.epdc.commons.tools.utils.Result
* @Exception
*
*/
@PostMapping("news/newsSupport")
@RecordUserBehavior(behavior = BehaviorEnum.NEWS_SUPPORT, referenceId = "#{newsStatementFromDTO.getNewsId}", userId = "#{userDetail.getUserId}")
public Result newsSupport(@LoginUser TokenDto userDetail, @RequestBody EpdcNewsStatementFromDTO newsStatementFromDTO) {
return newsService.updateStatement(userDetail, newsStatementFromDTO);
}
/***
* @Description 点踩
* @Author qushutong
* @Date 2019/9/7 14:15
* @Param []
* @Return com.elink.esua.epdc.commons.tools.utils.Result
* @Exception
*
*/
@PostMapping("news/newsOpposition")
@RecordUserBehavior(behavior = BehaviorEnum.NEWS_OPPOSITION, referenceId = "#{newsStatementFromDTO.getNewsId}", userId = "#{userDetail.getUserId}")
public Result newsOpposition(@LoginUser TokenDto userDetail, @RequestBody EpdcNewsStatementFromDTO newsStatementFromDTO) {
return newsService.updateStatement(userDetail, newsStatementFromDTO);
}
/***
* @Description 新闻浏览
* @Author qushutong
@ -120,9 +153,23 @@ public class ApiNewsController {
*
*/
@PostMapping("news/browse")
public Result modifyNewsBrowse(@RequestBody EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
public Result modifyNewsBrowse(@LoginUser TokenDto userDetail, @RequestBody EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
ValidatorUtils.validateEntity(newsBrowseFromDTO);
return newsService.modifyNewsBrowse(userDetail, newsBrowseFromDTO);
}
/**
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Description 新闻浏览有效加积分
* @Author songyunpeng
* @Date 2020/6/9
* @Param [userDetail, newsBrowseFromDTO]
**/
@PostMapping("news/browsePoints")
@RecordUserBehavior(behavior = BehaviorEnum.NEWS_BROWSE, referenceId = "#{newsBrowseFromDTO.getNewsId}", userId = "#{userDetail.getUserId}")
public Result browsePoints(@LoginUser TokenDto userDetail, @RequestBody EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
ValidatorUtils.validateEntity(newsBrowseFromDTO);
return newsService.modifyNewsBrowse(newsBrowseFromDTO);
return newsService.browsePoints(userDetail, newsBrowseFromDTO);
}
/**

12
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/service/NewsService.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.modules.news.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.*;
@ -90,7 +91,7 @@ public interface NewsService {
* @Exception
*
*/
Result modifyNewsBrowse(EpdcNewsBrowseFromDTO newsBrowseFromDTO);
Result modifyNewsBrowse(@LoginUser TokenDto userDetail,EpdcNewsBrowseFromDTO newsBrowseFromDTO);
/**
* 用户消息已读
@ -142,4 +143,13 @@ public interface NewsService {
* @date 2020/6/23 18:03
*/
Result<List<NewsCategoryResultDTO>> listCategoryBySection(String sectionCode);
/**
* @Description 新闻浏览有效时间内加积分接口
* @Author songyunpeng
* @Date 2020/6/9
* @Param [userDetail, newsBrowseFromDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result
**/
Result browsePoints(TokenDto userDetail, EpdcNewsBrowseFromDTO newsBrowseFromDTO);
}

11
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/news/service/impl/NewsServiceImpl.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.modules.news.service.impl;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.*;
@ -67,7 +68,7 @@ public class NewsServiceImpl implements NewsService {
}
@Override
public Result modifyNewsBrowse(EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
public Result modifyNewsBrowse(@LoginUser TokenDto userDetail, EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
return newsFeignClient.modifyNewsBrowse(newsBrowseFromDTO);
}
@ -101,4 +102,12 @@ public class NewsServiceImpl implements NewsService {
public Result<List<NewsCategoryResultDTO>> listCategoryBySection(String sectionCode) {
return newsFeignClient.listCategoryCodeBySection(sectionCode);
}
@Override
public Result browsePoints(TokenDto userDetail, EpdcNewsBrowseFromDTO newsBrowseFromDTO) {
if (userDetail != null) {
newsBrowseFromDTO.setUserId(userDetail.getUserId());
}
return new Result();
}
}

59
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/controller/ApiPointsController.java

@ -0,0 +1,59 @@
package com.elink.esua.epdc.modules.points.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO;
import com.elink.esua.epdc.modules.points.service.PointsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 移动端接口-积分管理模块
*
* @Author zhangyong
* @Date 2020-04-29
*/
@RestController
@RequestMapping("points")
public class ApiPointsController {
@Autowired
private PointsService pointsService;
/**
* 当前登录用户 积分记录接口
*
* @param: [userDetail, dto]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>>
* @Author: zy
* @Date: 2020-04-29
*/
@GetMapping("pointsRecord/list")
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(@LoginUser TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return pointsService.listPointsRecord(userDetail, formDto);
}
/**
* 积分排行接口0 周排行1 月排行
*
* @param: [userDetail, formDto]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO>
* @Author: zy
* @Date: 2020-04-30
*/
@GetMapping("pointsRanking/list")
public Result<EpdcAppPointsRankingResultDTO> listPointsRanking(@LoginUser TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return pointsService.listPointsRanking(userDetail, formDto);
}
}

63
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/feign/PointsFeignClient.java

@ -0,0 +1,63 @@
package com.elink.esua.epdc.modules.points.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO;
import com.elink.esua.epdc.modules.points.feign.fallback.PointsFeignClientFallback;
import com.elink.esua.epdc.pointcommons.tools.dto.PointsRuleResultDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* 积分管理模块
* @Author zhangyong
* @Date 2020-04-29
*/
@FeignClient(name = ServiceConstant.EPDC_POINTS_SERVER, fallback = PointsFeignClientFallback.class)
public interface PointsFeignClient {
/**
* 当前登录用户 积分记录接口
*
* @param formDto
* param pageIndex 必选 页码
* param pageSize 必选 页容量
* param userId 必选 用户ID
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>>
* @Author: zy
* @Date: 2020-04-29
*/
@GetMapping(value = "points/epdc-app/points/pointsRecord/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecordFeignClient(EpdcAppPointsRecordFormDTO formDto);
/**
* 积分排行接口0 周排行1 月排行
*
* @param formDto
* param pageIndex 必选 页码
* param pageSize 必选 页容量
* param rankingType 必选 排名方式0-1-
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO>
* @Author: zy
* @Date: 2020-04-30
*/
@GetMapping(value = "points/epdc-app/points/pointsRanking/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<EpdcAppPointsRankingResultDTO> listPointsRankingFeignClient(EpdcAppPointsRankingFormDTO formDto);
/**
* @Description 根据动作编码获取积分规则
* @Author songyunpeng
* @Date 2020/7/21
* @Param [behaviorCode]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.PointsRuleResultDTO>
**/
@GetMapping(value = "points/epdc-app/points/getPointsRuleByBehaviorCode/{behaviorCode}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<PointsRuleResultDTO> getPointsRuleByBehaviorCode(@PathVariable("behaviorCode") String behaviorCode);
}

38
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/feign/fallback/PointsFeignClientFallback.java

@ -0,0 +1,38 @@
package com.elink.esua.epdc.modules.points.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO;
import com.elink.esua.epdc.modules.points.feign.PointsFeignClient;
import com.elink.esua.epdc.pointcommons.tools.dto.PointsRuleResultDTO;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* 积分管理模块
* @Author zhangyong
* @Date 2020-04-29
*/
@Component
public class PointsFeignClientFallback implements PointsFeignClient {
@Override
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecordFeignClient(EpdcAppPointsRecordFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "listPointsRecordFeignClient", formDto);
}
@Override
public Result<EpdcAppPointsRankingResultDTO> listPointsRankingFeignClient(EpdcAppPointsRankingFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "listPointsRankingFeignClient", formDto);
}
@Override
public Result<PointsRuleResultDTO> getPointsRuleByBehaviorCode(String behaviorCode) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "getPointsRuleByBehaviorCode", behaviorCode);
}
}

45
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/service/PointsService.java

@ -0,0 +1,45 @@
package com.elink.esua.epdc.modules.points.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO;
import java.util.List;
/**
* 积分管理模块
* @Author zhangyong
* @Date 2020-04-29
*/
public interface PointsService {
/**
* 当前登录用户 积分记录接口
*
* @param formDto
* param pageIndex 必选 页码
* param pageSize 必选 页容量
* @param userDetail 必选 获取用户ID
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>>
* @Author: zy
* @Date: 2020-04-29
*/
Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto);
/**
* 积分排行接口0 周排行1 月排行
*
* @param formDto
* param pageIndex 必选 页码
* param pageSize 必选 页容量
* param rankingType 必选 排名方式0-1-
* @param userDetail 必选 获取用户信息
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO>
* @Author: zy
* @Date: 2020-04-30
*/
Result<EpdcAppPointsRankingResultDTO> listPointsRanking(TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto);
}

39
epdc-cloud-api/src/main/java/com/elink/esua/epdc/modules/points/service/impl/PointsServiceImpl.java

@ -0,0 +1,39 @@
package com.elink.esua.epdc.modules.points.service.impl;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO;
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO;
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO;
import com.elink.esua.epdc.modules.points.feign.PointsFeignClient;
import com.elink.esua.epdc.modules.points.service.PointsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 积分管理模块
* @Author zhangyong
* @Date 2020-04-29
*/
@Service
public class PointsServiceImpl implements PointsService {
@Autowired
private PointsFeignClient pointsFeignClient;
@Override
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
return pointsFeignClient.listPointsRecordFeignClient(formDto);
}
@Override
public Result<EpdcAppPointsRankingResultDTO> listPointsRanking(TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setNickName(userDetail.getNickname());
return pointsFeignClient.listPointsRankingFeignClient(formDto);
}
}

27
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/AppUserService.java

@ -3,9 +3,7 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGridResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO;
import com.elink.esua.epdc.dto.epdc.result.UserInvitationRecordResultDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.form.*;
import com.elink.esua.epdc.dto.form.v2.EpdcCompleteUserInfoFormV2DTO;
import com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO;
@ -280,4 +278,27 @@ public interface AppUserService {
* @date 2020/2/20 17:24
*/
Result<String> getUserWxPhone(EpdcAppUserMaInfoFormDTO formDto);
/**
* 积分排名接口0-网格1-街道
* 根据用户表积分做排行
*
* @param userDetail
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserRankingResultDTO>
* @Author zhangyong
* @Date 13:35 2020-06-01
**/
Result<EpdcAppUserRankingResultDTO> listUserPointsRanking(TokenDto userDetail, EpdcAppUserRankingFormDTO formDto);
/**
* 积分中心页面-积分等级排名
* 返回当前用户的排名 当前街道的前N名用户排名
*
* @param userDetail, formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcAppUserGradeRankingResultDTO>
* @Author zhangyong
* @Date 10:59 2020-06-24
**/
Result<EpdcAppUserGradeRankingResultDTO> listUserGradesRanking(TokenDto userDetail, EpdcAppUserGradeRankingFormDTO formDTO);
}

29
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java

@ -23,10 +23,7 @@ import com.elink.esua.epdc.dto.epdc.EpdcCompleteAppUserDTO;
import com.elink.esua.epdc.dto.epdc.EpdcGridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGridResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserRegisterInfoResultDTO;
import com.elink.esua.epdc.dto.epdc.result.UserInvitationRecordResultDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.form.*;
import com.elink.esua.epdc.dto.form.v2.EpdcCompleteUserInfoFormV2DTO;
import com.elink.esua.epdc.dto.group.form.GroupUserFormDTO;
@ -1418,4 +1415,28 @@ public class AppUserServiceImpl implements AppUserService {
}
return new Result().error("解析用户手机号失败");
}
@Override
public Result<EpdcAppUserRankingResultDTO> listUserPointsRanking(TokenDto userDetail, EpdcAppUserRankingFormDTO formDto) {
formDto.setUserId(userDetail.getUserId());
formDto.setRealName(userDetail.getRealName());
formDto.setPoints(userDetail.getPoints());
formDto.setDeptId(userDetail.getGridId());
return userFeignClient.selectListUserPointsRanking(formDto);
}
@Override
public Result<EpdcAppUserGradeRankingResultDTO> listUserGradesRanking(TokenDto userDetail, EpdcAppUserGradeRankingFormDTO formDTO) {
formDTO.setUserId(userDetail.getUserId());
formDTO.setNickName(userDetail.getNickname());
formDTO.setPointsTotle(userDetail.getPointsTotle());
Result<CompleteDeptDTO> deptInfo = adminFeignClient.getCompleteDept(userDetail.getGridId());
if (deptInfo.success()) {
formDTO.setStreetId(deptInfo.getData().getStreetId());
} else {
return new Result<EpdcAppUserGradeRankingResultDTO>().error("当前用户,无所属街道");
}
return userFeignClient.selectListUserGradesRanking(formDTO);
}
}

8
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java

@ -26,7 +26,6 @@ import org.springframework.stereotype.Service;
import java.util.List;
/**
*
* 社群模块
*
* @Authorliuchuang
@ -75,7 +74,12 @@ public class GroupServiceImpl implements GroupService {
groupUserFormDTO.setState(GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
formDto.setGroupUserFormDTO(groupUserFormDTO);
return groupFeignClient.createGroup(formDto);
Result result = groupFeignClient.createGroup(formDto);
if (result.success()) {
formDto.setId(String.valueOf(result.getData()));
}
return result;
// return groupFeignClient.createGroup(formDto);
}
@Override

24
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java

@ -31,6 +31,7 @@ import java.util.List;
/**
* 议题模块
*
* @Author LC
* @Date 2019/9/6 20:15
*/
@ -87,14 +88,21 @@ public class IssueServiceImpl implements IssueService {
formDto.setUserId(userDetail.getUserId());
formDto.setNickName(userDetail.getNickname());
formDto.setUserFace(userDetail.getFaceImg());
if (UserTagUtils.containIdentity(userDetail.getUserTagInfos(), UserTagEnum.PARTY_MEMBER)) {
formDto.setIsPartyMember(YesOrNoEnum.YES.value());
} else {
formDto.setIsPartyMember(YesOrNoEnum.NO.value());
}
if (UserTagUtils.containIdentity(userDetail.getUserTagInfos(), UserTagEnum.PARTY_MEMBER)) {
formDto.setIsPartyMember(YesOrNoEnum.YES.value());
} else {
formDto.setIsPartyMember(YesOrNoEnum.NO.value());
}
formDto.setMobile(userDetail.getMobile());
return issueFeignClient.submitEvent(formDto);
//事件ID返参赋值
Result result = issueFeignClient.submitEvent(formDto);
if (result.success()) {
formDto.setId(String.valueOf(result.getData()));
}
return result;
// return issueFeignClient.submitEvent(formDto);
}
@Override
@ -118,9 +126,9 @@ public class IssueServiceImpl implements IssueService {
wxMaSecCheckTask.checkImage(file);
// 转base64
in = new FileInputStream(file);
byte[] bytes=new byte[(int)file.length()];
byte[] bytes = new byte[(int) file.length()];
in.read(bytes);
base64 = "data:image/png;base64,"+Base64.getEncoder().encodeToString(bytes);
base64 = "data:image/png;base64," + Base64.getEncoder().encodeToString(bytes);
// 图片上传至OSS
UploadFormDTO formDTO = new UploadFormDTO();
formDTO.setBase64String(base64);

10
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java

@ -19,10 +19,10 @@ import com.elink.esua.epdc.utils.UserTagUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
*
* 话题模块
*
* @Authorliuchuang
@ -69,7 +69,13 @@ public class TopicServiceImpl implements TopicService {
formDto.setMobile(userDetail.getMobile());
formDto.setState(TopicStateEnum.TOPIC_STATE_IN_CONVERSATION.getValue());
return topicFeignClient.submit(formDto);
Result result = topicFeignClient.submit(formDto);
if (result.success()) {
formDto.setId(String.valueOf(result.getData()));
}
return result;
// return topicFeignClient.submit(formDto);
}
@Override

8
epdc-cloud-api/src/main/resources/application-test.yml

@ -1,4 +1,4 @@
nacos:
config:
server-addr: 47.104.224.45:8848
namespace: 6a3577b4-7b79-43f6-aebb-9c3f31263f6a
#nacos:
# config:
# server-addr: 47.104.224.45:8848
# namespace: 6a3577b4-7b79-43f6-aebb-9c3f31263f6a

8
epdc-cloud-api/src/main/resources/application.yml

@ -166,3 +166,11 @@ jwt:
secret: 7016867071f0ebf1c46f123eaaf4b9d6[elink.epdc]
#token有效时长,默认7天,单位秒
expire: 604800
rocketmq:
name-server: @rocketmq.name.server@
producer:
group: @rocketmq.producer.group@
consumer:
points-group: @rocketmq.consumer.points.group@

75
epdc-cloud-api/src/main/resources/mapper/ResidentConfigDao.xml

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.modules.api.dao.ResidentConfigDao">
<resultMap type="com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity" id="residentConfigMap">
<result property="id" column="ID"/>
<result property="residentType" column="RESIDENT_TYPE"/>
<result property="residentCode" column="RESIDENT_CODE"/>
<result property="residentValue" column="RESIDENT_VALUE"/>
<result property="sort" column="SORT"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="remark" column="REMARK"/>
</resultMap>
<select id="selectListResidentConfig" resultType="com.elink.esua.epdc.dto.ResidentConfigDTO">
select
ID,
RESIDENT_TYPE,
RESIDENT_CODE,
RESIDENT_VALUE,
SORT,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME,
REMARK
from epdc_resident_config
where DEL_FLAG = '0'
<if test="residentType!=null and residentType != ''">
and RESIDENT_TYPE = #{residentType}
</if>
ORDER BY SORT,CREATED_TIME DESC
</select>
<select id="selectListResidentConfigByResidentType" resultType="com.elink.esua.epdc.dto.result.ResidentConfigResultDTO">
SELECT
RESIDENT_TYPE,
RESIDENT_CODE,
RESIDENT_VALUE
FROM
`epdc_resident_config`
WHERE DEL_FLAG = 0
<if test="residentType!=null and residentType!=''">
and RESIDENT_TYPE = #{residentType}
</if>
ORDER BY SORT,CREATED_TIME DESC
</select>
<select id="selectResidentConfigDTOByTypeAndCode" resultType="com.elink.esua.epdc.dto.ResidentConfigDTO">
select
ID,
RESIDENT_TYPE,
RESIDENT_CODE,
RESIDENT_VALUE,
SORT,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME,
REMARK
from epdc_resident_config
where DEL_FLAG = '0' and RESIDENT_TYPE = #{residentType} and RESIDENT_CODE = #{residentCode}
</select>
</mapper>
Loading…
Cancel
Save