瀏覽代碼

修复一些圈子接口bug问题

fangzhen 7 月之前
父節點
當前提交
4a4f3ff5dc

+ 2 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java

@@ -84,6 +84,8 @@ public class SysProfileController extends BaseController
         {
             CommunityUserInfo communityUserInfo = communityUserInfoMapper.selectOne(new QueryWrapper<CommunityUserInfo>().eq("user_id",currentUser.getUserId()));
             communityUserInfo.setProfile(currentUser.getProfile());
+            communityUserInfo.setBirthday(user.getBirthday());
+            communityUserInfo.setTags(user.getTags());
             communityUserInfo.setUpdateBy(currentUser.getUserId());
             communityUserInfo.setUpdateTime(DateUtils.parseDate(DateUtils.getTime()));
             //更新前端用户的个人简介信息

+ 40 - 6
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java

@@ -1,18 +1,21 @@
 package com.ruoyi.common.core.domain.entity;
 
-import java.util.Date;
-import java.util.List;
-import javax.validation.constraints.*;
-
 import com.baomidou.mybatisplus.annotation.TableField;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.annotation.Excel;
 import com.ruoyi.common.annotation.Excel.ColumnType;
 import com.ruoyi.common.annotation.Excel.Type;
 import com.ruoyi.common.annotation.Excels;
 import com.ruoyi.common.core.domain.BaseEntity;
 import com.ruoyi.common.xss.Xss;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.validation.constraints.Email;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 用户对象 sys_user
@@ -65,6 +68,21 @@ public class SysUser extends BaseEntity {
     @TableField(exist = false)
     private String profile;
 
+    /**
+     * 生日
+     */
+    @Excel(name = "生日")
+    @TableField(exist = false)
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date birthday;
+
+    /**
+     * 标签
+     */
+    @Excel(name = "标签")
+    @TableField(exist = false)
+    private String tags;
+
     /**
      * 用户性别
      */
@@ -309,6 +327,22 @@ public class SysUser extends BaseEntity {
         this.roleId = roleId;
     }
 
+    public Date getBirthday() {
+        return birthday;
+    }
+
+    public void setBirthday(Date birthday) {
+        this.birthday = birthday;
+    }
+
+    public String getTags() {
+        return tags;
+    }
+
+    public void setTags(String tags) {
+        this.tags = tags;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)

+ 28 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityArticleController.java

@@ -53,6 +53,8 @@ public class CommunityArticleController extends BaseController {
 
     @Autowired
     private CommunityClassCircleMapper communityClassCircleMapper;
+    @Autowired
+    private CommunityUserInfoMapper communityUserInfoMapper;
 
 
     /**
@@ -271,7 +273,10 @@ public class CommunityArticleController extends BaseController {
         for (CommunityUserCircle communityUserCircle : communityUserCircles) {
             circleIds.add(communityUserCircle.getCircleId());
         }
-        List<CommunityCircle> communityCircles = communityCircleMapper.selectBatchIds(circleIds);
+        List<CommunityCircle> communityCircles = null;
+        if (!circleIds.isEmpty()) {
+            communityCircles = communityCircleMapper.selectBatchIds(circleIds);
+        }
         return AjaxResult.success(communityCircles);
     }
 
@@ -365,4 +370,26 @@ public class CommunityArticleController extends BaseController {
         return AjaxResult.success();
     }
 
+    /**
+     * 更新用户背景图片
+     *
+     * @param backImage 背景图url
+     * @return 是否成功
+     */
+    @ApiOperation("更新用户背景图片")
+    @PostMapping("/uploadBackImage")
+    public AjaxResult uploadBackImage(@RequestParam("backImage") String backImage) {
+        if (backImage == null) {
+            return AjaxResult.error("背景图不能为空");
+        }
+
+        Long userId = SecurityUtils.getLoginUser().getUserId();
+        CommunityUserInfo communityUserInfo = communityUserInfoMapper.selectOne(new QueryWrapper<CommunityUserInfo>().eq("user_id", userId));
+        if (Objects.isNull(communityUserInfo) || Objects.isNull(communityUserInfo.getId())) {
+            return AjaxResult.error("系统出错");
+        }
+        communityUserInfo.setBackImage(backImage);
+        communityUserInfoMapper.updateById(communityUserInfo);
+        return AjaxResult.success("背景图片上传成功!");
+    }
 }

+ 75 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityCollection.java

@@ -0,0 +1,75 @@
+package com.ruoyi.generator.domain.Community;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.hibernate.validator.constraints.Length;
+
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+* 我的合集
+* @TableName community_collection
+*/
+@Data
+@TableName("community_collection")
+public class CommunityCollection implements Serializable {
+
+    /**
+    * 唯一id
+    */
+    @NotNull(message="[唯一id]不能为空")
+    @ApiModelProperty("唯一id")
+    @TableId("id")
+    private Long id;
+    /**
+    * 用户id
+    */
+    @ApiModelProperty("用户id")
+    private Long userId;
+    /**
+    * 合集名称
+    */
+    @Size(max= 100,message="编码长度不能超过100")
+    @ApiModelProperty("合集名称")
+    @Length(max= 100,message="编码长度不能超过100")
+    private String collectionName;
+    /**
+    * 合集简介
+    */
+    @Size(max= -1,message="编码长度不能超过-1")
+    @ApiModelProperty("合集简介")
+    @Length(max= -1,message="编码长度不能超过-1")
+    private String collectionProfile;
+    /**
+    * 封面图片地址
+    */
+    @Size(max= 255,message="编码长度不能超过255")
+    @ApiModelProperty("封面图片地址")
+    @Length(max= 255,message="编码长度不能超过255")
+    private String images;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    private Long createBy;
+    /**
+    * 更新人
+    */
+    @ApiModelProperty("更新人")
+    private Long updateBy;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    private Date createTime;
+    /**
+    * 更新时间
+    */
+    @ApiModelProperty("更新时间")
+    private Date updateTime;
+}

+ 17 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityUserInfo.java

@@ -3,6 +3,7 @@ package com.ruoyi.generator.domain.Community;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -28,11 +29,27 @@ public class CommunityUserInfo {
      */
     @ApiModelProperty("用户id")
     private Long userId;
+    /**
+     * 生日
+     */
+    @ApiModelProperty("生日")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date birthday;
+    /**
+     * 标签
+     */
+    @ApiModelProperty("标签")
+    private String tags;
     /**
      * 简介
      */
     @ApiModelProperty("简介")
     private String profile;
+    /**
+     * 背景图
+     */
+    @ApiModelProperty("背景图")
+    private String backImage;
     /**
      * 创建人
      */

+ 32 - 23
ruoyi-generator/src/main/java/com/ruoyi/generator/service/CommunityArticleServiceImpl.java

@@ -8,7 +8,10 @@ import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.generator.domain.Community.*;
 import com.ruoyi.generator.mapper.community.*;
-import com.ruoyi.generator.vo.*;
+import com.ruoyi.generator.vo.CommunityArticleVo;
+import com.ruoyi.generator.vo.CommunityCircleVo;
+import com.ruoyi.generator.vo.CommunityUserInfoVo;
+import com.ruoyi.generator.vo.CommunityUserLikeVo;
 import com.ruoyi.system.mapper.SysUserMapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -18,8 +21,10 @@ import org.springframework.stereotype.Service;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.text.ParseException;
-import java.util.*;
-import java.util.stream.Collectors;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
 
 /**
  * 业务 服务层实现
@@ -342,27 +347,31 @@ public class CommunityArticleServiceImpl extends ServiceImpl<CommunityArticleMap
         for (CommunityClassCircle aClass : classes) {
             circleIds.add(aClass.getCircleId());
         }
-        List<CommunityCircle> communityCircles = communityCircleMapper.selectBatchIds(circleIds);
-        //复制到Vo对象中
-        List<CommunityCircleVo> communityCircleVos = new ArrayList<>();
-        CommunityCircleVo communityCircleVo = null;
-        for (CommunityCircle communityCircle : communityCircles) {
-            communityCircleVo = new CommunityCircleVo();
-            BeanUtils.copyProperties(communityCircle, communityCircleVo);
-
-            //获取当前用户是否有关注这些圈子
-            CommunityUserCircle communityUserCircles = communityUserCircleMapper
-                    .selectOne(new QueryWrapper<CommunityUserCircle>()
-                            .eq("circle_id", communityCircle.getId())
-                            .eq("user_id", SecurityUtils.getLoginUser().getUserId())
-                            .eq("is_delete", 0));
-            if (Objects.isNull(communityUserCircles) || Objects.isNull(communityUserCircles.getId())) {
-                //没找到关注数据,则设为false,反之则true
-                communityCircleVo.setLike(false);
-            } else {
-                communityCircleVo.setLike(true);
+
+        List<CommunityCircleVo> communityCircleVos = null;
+        if(!circleIds.isEmpty()){
+            List<CommunityCircle> communityCircles = communityCircleMapper.selectBatchIds(circleIds);
+            //复制到Vo对象中
+            communityCircleVos = new ArrayList<>();
+            CommunityCircleVo communityCircleVo = null;
+            for (CommunityCircle communityCircle : communityCircles) {
+                communityCircleVo = new CommunityCircleVo();
+                BeanUtils.copyProperties(communityCircle, communityCircleVo);
+
+                //获取当前用户是否有关注这些圈子
+                CommunityUserCircle communityUserCircles = communityUserCircleMapper
+                        .selectOne(new QueryWrapper<CommunityUserCircle>()
+                                .eq("circle_id", communityCircle.getId())
+                                .eq("user_id", SecurityUtils.getLoginUser().getUserId())
+                                .eq("is_delete", 0));
+                if (Objects.isNull(communityUserCircles) || Objects.isNull(communityUserCircles.getId())) {
+                    //没找到关注数据,则设为false,反之则true
+                    communityCircleVo.setLike(false);
+                } else {
+                    communityCircleVo.setLike(true);
+                }
+                communityCircleVos.add(communityCircleVo);
             }
-            communityCircleVos.add(communityCircleVo);
         }
         return communityCircleVos;
     }

+ 16 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/vo/CommunityUserInfoVo.java

@@ -36,11 +36,27 @@ public class CommunityUserInfoVo implements Serializable {
      */
     @ApiModelProperty("头像地址")
     private String avatar;
+    /**
+     * 生日
+     */
+    @ApiModelProperty("生日")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date birthday;
+    /**
+     * 标签
+     */
+    @ApiModelProperty("标签")
+    private String tags;
     /**
      * 简介
      */
     @ApiModelProperty("简介")
     private String profile;
+    /**
+     * 背景图
+     */
+    @ApiModelProperty("背景图")
+    private String backImage;
     /**
      * 关注数量
      */