From b92edf56e7e25440e7c46b967aa5373a7a8b25c2 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期一, 14 三月 2022 09:22:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java |   98 +++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 86 insertions(+), 12 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 58bb6ce..f81a63c 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,16 +1,32 @@
 package com.panzhihua.applets.api;
 
-import java.util.*;
+import static java.util.stream.Collectors.toList;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 
+import com.panzhihua.common.constants.HttpStatus;
+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.*;
+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 com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
@@ -23,9 +39,20 @@
 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.*;
+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;
+import com.panzhihua.common.model.vos.community.ComActMicroWishVO;
+import com.panzhihua.common.model.vos.community.ComActVO;
+import com.panzhihua.common.model.vos.community.ComMngStructAreaVO;
+import com.panzhihua.common.model.vos.community.ComMngStructHouseVO;
 import com.panzhihua.common.model.vos.partybuilding.PartyBuildingMemberVO;
-import com.panzhihua.common.model.vos.user.*;
+import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO;
+import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
+import com.panzhihua.common.model.vos.user.UpdateUserArchivesVO;
+import com.panzhihua.common.model.vos.user.UserArchivesVO;
+import com.panzhihua.common.model.vos.user.UserPhoneVO;
 import com.panzhihua.common.service.community.CommunityService;
 import com.panzhihua.common.service.partybuilding.PartyBuildingService;
 import com.panzhihua.common.service.user.UserService;
@@ -71,7 +98,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)) {
@@ -111,6 +153,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)) {
             // 通过发通知
@@ -227,20 +270,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<>();
@@ -252,6 +295,37 @@
         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())) {
+                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);
+                            comActActivityVO.setIsComment(1);
+                        }
+                    });
+                    if (currentList.size() > 10) {
+                        comActActivityVO.setActivitySignInList(currentList.subList(0, 10));
+                    } else {
+                        comActActivityVO.setActivitySignInList(currentList);
+                    }
+                });
+            }
+            //当前用户活动评分
+            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 -> {
+                 List<ComActActEvaluateVO> evaluateVOS=comActActEvaluateVOS.stream().filter(comActActEvaluateVO -> comActActEvaluateVO.getActivityId().equals(comActActivityVO.getId())).collect(toList());
+                 if(comActActivityVO.getSignCount()<=evaluateVOS.size()){
+                     comActActivityVO.setIsComment(0);
+                 }
+                });
+            }
             return R.ok(collect);
         }
         return R.ok(comActActivityVOS);

--
Gitblit v1.7.1