From 04f24e0bbeeb6caa9754af0b6bab66a233570362 Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期一, 28 十一月 2022 14:45:30 +0800
Subject: [PATCH] Merge branch 'local_20221104' into huacheng_test
---
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java | 154 +++++++++++++++++++++++++++++++++++++-------------
1 files changed, 113 insertions(+), 41 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java
index baaf378..afb173f 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java
@@ -1,29 +1,28 @@
package com.panzhihua.applets.api;
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.List;
-import java.util.Optional;
-import java.util.TreeSet;
+import static java.util.stream.Collectors.toList;
+
+import java.util.*;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
import javax.annotation.Resource;
+import javax.validation.Valid;
-import com.panzhihua.common.model.vos.community.ComActActEvaluateVO;
+import cn.hutool.core.util.StrUtil;
+import com.panzhihua.applets.umf.UmfPayUtil;
+import com.panzhihua.common.constants.Constants;
+import com.panzhihua.common.constants.HttpStatus;
+import com.panzhihua.common.model.dtos.community.social.PageProjectDTO;
+import com.panzhihua.common.model.vos.community.rentHouse.WxPayOrderVO;
+import com.panzhihua.common.utlis.DateUtils;
+import io.swagger.annotations.ApiParam;
+import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@@ -36,6 +35,7 @@
import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.community.ComActActEvaluateVO;
import com.panzhihua.common.model.vos.community.ComActActRegistVO;
import com.panzhihua.common.model.vos.community.ComActActivityVO;
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
@@ -94,7 +94,22 @@
Object data = r.getData();
if (!ObjectUtils.isEmpty(data)) {
LoginUserInfoVO loginUserInfoVO = (LoginUserInfoVO)data;
+ //是否保存unionid
+// if (Objects.isNull(loginUserInfoVO.getUnionid()) || "无".equals(loginUserInfoVO.getUnionid())) {
+// return R.fail(HttpStatus.UNAUTHORIZED, "token过期");
+// }
R r1 = communityService.detailHouse(userId);
+ if(StringUtils.isNotEmpty(loginUserInfoVO.getIdCard())){
+ //查询实名用户绑定的实有人口地址
+ R r4=communityService.selectByIdCard(loginUserInfoVO.getIdCard());
+ if(R.isOk(r4)){
+ String address= (String) r4.getData();
+ if(StringUtils.isNotEmpty(address)){
+ loginUserInfoVO.setAddress(address);
+ r.setData(loginUserInfoVO);
+ }
+ }
+ }
if (null != communityId && 0 != communityId) {
R r2 = communityService.detailCommunity(communityId);
if (R.isOk(r2)) {
@@ -134,6 +149,7 @@
public R putUserAuthentication(@RequestBody @Validated(AddGroup.class) LoginUserInfoVO loginUserInfoVO) {
Long userId = this.getUserId();
loginUserInfoVO.setUserId(userId);
+ loginUserInfoVO.setCommunityId(this.getCommunityId());
R r = userService.putUserAuthentication(loginUserInfoVO);
if (R.isOk(r)) {
// 通过发通知
@@ -250,20 +266,20 @@
@ApiOperation(value = "我的活动", response = ComActActivityVO.class)
@GetMapping("listactivity")
- public R listActivity() {
+ public R listActivity(@RequestParam(value = "status", required = false) Integer status,@RequestParam(value = "type", required = false) Integer type) {
LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
Long userId = loginUserInfo.getUserId();
Long communityId = loginUserInfo.getCommunityId();
List<ComActActivityVO> comActActivityVOS = new ArrayList<>();
- R r = communityService.listActivity(userId);
- if (R.isOk(r)) {
+ R r = communityService.listActivity(userId, status,type);
+ if (R.isOk(r)&&r.getData()!=null) {
comActActivityVOS = (List<ComActActivityVO>)r.getData();
}
- R r1 = partyBuildingService.listActivity(userId, communityId);
- if (R.isOk(r1)) {
- List<ComActActivityVO> data = (List<ComActActivityVO>)r1.getData();
- comActActivityVOS.addAll(data);
- }
+// R r1 = partyBuildingService.listActivity(userId, communityId, status);
+// if (R.isOk(r1)&&r1.getData()!=null) {
+// List<ComActActivityVO> data = (List<ComActActivityVO>)r1.getData();
+// comActActivityVOS.addAll(data);
+// }
if (!ObjectUtils.isEmpty(comActActivityVOS)) {
String s = JSONArray.toJSONString(comActActivityVOS);
List<ComActActivityVO> comActActivityVOS1 = new ArrayList<>();
@@ -275,28 +291,53 @@
if (!ObjectUtils.isEmpty(comActActivityVOS)) {
List<ComActActivityVO> collect = comActActivityVOS.stream()
.sorted(Comparator.comparing(ComActActivityVO::getSingDate).reversed()).collect(Collectors.toList());
- //当前用户最近签到时间
+ //当前用户签到记录列表
R r2 = communityService.listSignInActivity(userId);
if (R.isOk(r2) && !ObjectUtils.isEmpty(r2.getData())) {
- ArrayList<ComActActRegistVO> comActActRegistVOS = JSONArray.parseArray(JSONArray.toJSONString(r2.getData()), ComActActRegistVO.class).stream()
- .sorted(Comparator.comparing(ComActActRegistVO::getCreateAt).reversed())
- .collect(Collectors.collectingAndThen(Collectors.toCollection(() ->
- new TreeSet<>(Comparator.comparing(f -> String.join("", f.getUserId().toString(), f.getActivityId().toString())))), ArrayList::new));
- collect.forEach(comActActivityVO -> comActActRegistVOS.forEach(activitySignInVO -> {
- if (comActActivityVO.getId().equals(activitySignInVO.getActivityId())) {
- comActActivityVO.setActivitySignInDate(activitySignInVO.getCreateAt());
+ List<ComActActRegistVO> comActActRegistVOS = JSONArray.parseArray(JSONArray.toJSONString(r2.getData()), ComActActRegistVO.class).stream()
+ .sorted(Comparator.comparing(ComActActRegistVO::getCreateAt).reversed()).collect(toList());
+ collect.forEach(comActActivityVO -> {
+ ArrayList<ComActActRegistVO> currentList = new ArrayList<>();
+ comActActRegistVOS.forEach(activitySignInVO -> {
+ if (comActActivityVO.getId().equals(activitySignInVO.getActivityId())) {
+ currentList.add(activitySignInVO);
+ if(activitySignInVO.getEndTime()!=null){
+ comActActivityVO.setIsComment(1);
+ if(comActActivityVO.getTimes()==null){
+ comActActivityVO.setTimes(1);
+ comActActivityVO.setAward(activitySignInVO.getAward());
+ }
+ else {
+ comActActivityVO.setTimes(comActActivityVO.getTimes()+1);
+ comActActivityVO.setAward(comActActivityVO.getAward() + activitySignInVO.getAward());
+ }
+ }
+ }
+ });
+ if (currentList.size() > 10) {
+ comActActivityVO.setActivitySignInList(currentList.subList(0, 10));
+ } else {
+ comActActivityVO.setActivitySignInList(currentList);
}
- }));
+ Integer limit = comActActivityVO.getLimit();
+ if(limit != null && limit>0 &¤tList.size()>0){
+ if(limit==currentList.size()&¤tList.get(currentList.size()-1).getEndTime()!=null){
+ comActActivityVO.setIsRegist(1);
+ }
+ }
+ });
}
//当前用户活动评分
R r3 = communityService.listEvaluate(userId);
if (R.isOk(r3) && !ObjectUtils.isEmpty(r3.getData())) {
List<ComActActEvaluateVO> comActActEvaluateVOS = JSONArray.parseArray(JSONArray.toJSONString(r3.getData()), ComActActEvaluateVO.class);
- collect.forEach(comActActivityVO -> comActActEvaluateVOS.forEach(comActActEvaluateVO -> {
- if (comActActEvaluateVO.getActivityId().equals(comActActivityVO.getId())) {
- comActActivityVO.setMyRating(comActActEvaluateVO.getStarLevel());
- }
- }));
+ collect.forEach(comActActivityVO -> {
+ List<ComActActEvaluateVO> evaluateVOS=comActActEvaluateVOS.stream().filter(comActActEvaluateVO -> comActActEvaluateVO.getActivityId().equals(comActActivityVO.getId())).collect(toList());
+ if(comActActivityVO.getSignCount()<=evaluateVOS.size()){
+ comActActivityVO.setIsComment(0);
+ }
+ comActActivityVO.setComActActEvaluateVOList(evaluateVOS);
+ });
}
return R.ok(collect);
}
@@ -359,8 +400,11 @@
public R addFeedback(@RequestBody @Validated(AddGroup.class) SysUserFeedbackDTO sysUserFeedbackDTO) {
// 微信内容审核
String msg = sysUserFeedbackDTO.getContent();
- if (!checkService.checkMessage(msg)) {
- return R.fail("内容违规");
+ if (StrUtil.isNotBlank(msg)) {
+ String result = checkService.checkMessageBy(msg, this.getLoginUserInfo().getOpenid(),this.getAppId());
+ if (StrUtil.isNotBlank(result)) {
+ return R.fail(501, "填写内容存在 " + result + " 违规信息");
+ }
}
LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
Long userId = loginUserInfo.getUserId();
@@ -388,7 +432,7 @@
}
// 判断用户是否已认证成功
- R certUser = partyBuildingService.userCertification(userId);
+ R certUser = partyBuildingService.userCertification(userId,communityId);
Object certUserInfo = certUser.getData();
AtomicBoolean userCertified = new AtomicBoolean(false);
@@ -423,6 +467,7 @@
} else {
partyBuildingMemberVO.setIdCard(loginUserInfo.getIdCard());
partyBuildingMemberVO.setName(loginUserInfo.getName());
+ partyBuildingMemberVO.setPhone(loginUserInfo.getPhone());
}
R r = partyBuildingService.addPartyBuildingMember(partyBuildingMemberVO);
@@ -435,7 +480,7 @@
// 党员认证查询
LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
Long userId = loginUserInfo.getUserId();
- R r = partyBuildingService.userCertification(userId);
+ R r = partyBuildingService.userCertification(userId,this.getCommunityId());
if (R.isOk(r)) {
List<PartyBuildingMemberVO> partyBuildingMemberVOList =
@@ -473,4 +518,31 @@
userArchivesVO.setUserId(userId);
return userService.updateUserArchives(userArchivesVO);
}
+
+ @ApiOperation(value = "分页查询用户报名的项目")
+ @PostMapping("project")
+ public R pageProjectWhichIsSignedByUser(@RequestBody @Valid PageProjectDTO pageProjectDTO) {
+ pageProjectDTO.setUserId(this.getUserId());
+ return communityService.pageProjectWhichIsSignedByUser(pageProjectDTO);
+ }
+
+ @ApiOperation("获取用户")
+ @GetMapping("selectAutomessageSysUserById")
+ public R selectAutomessageSysUserById(@RequestParam("id")Long id){
+ return communityService.selectAutomessageSysUserById(id);
+ }
+
+ @ApiOperation("新增投诉建议或问题留言")
+ @PostMapping("addFeedBack")
+ public R addFeedBack(@RequestBody SysUserFeedbackDTO sysUserFeedbackDTO){
+ sysUserFeedbackDTO.setCommunityId(null);
+ return userService.addFeedback(sysUserFeedbackDTO);
+ }
+
+ @ApiOperation("查看自己的投诉建议或问题留言记录")
+ @GetMapping("myFeedBack")
+ public R myFeedBack(@ApiParam("类型:1问题留言2投诉建议") @RequestParam(value = "type",required = false)Integer type,@RequestParam("propertyId")Long propertyId){
+ return userService.myFeedBack(this.getLoginUserInfo().getUserId(),type,propertyId);
+ }
+
}
--
Gitblit v1.7.1