浏览代码

新增订阅/取订合集

fangqing 5 月之前
父节点
当前提交
a4a3e43705

+ 34 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityArticleController.java

@@ -93,6 +93,10 @@ public class CommunityArticleController extends BaseController {
     @Autowired
     private CommunityUserBlockMapper communityUserBlockMapper;
 
+    @Autowired
+    private ICommunityCollectionUserService communityCollectionUserService;
+
+
     /**
      * 获取文章列表信息
      */
@@ -926,6 +930,7 @@ public class CommunityArticleController extends BaseController {
      * 搜索关键字
      * @param content
      * @return 内容
+     * fangqing
      */
     @ApiOperation("查询关键词")
     @GetMapping("/trendingTopic")
@@ -939,4 +944,33 @@ public class CommunityArticleController extends BaseController {
         }
         return AjaxResult.success("获取成功!",trendingTops);
     }
+
+    /**
+     * 订阅/取订合集
+     * @param collectionUser
+     * @return 内容
+     * fangqing
+     */
+    @ApiOperation("订阅/取订合集")
+    @PostMapping("/subscribeCollection")
+    @Transactional
+    //@Anonymous
+    public AjaxResult subscribeCollection(@RequestBody CommunityCollectionUser collectionUser) {
+        if (Objects.isNull(collectionUser.getCollectionId()) ) {
+            return AjaxResult.error("参数异常!");
+        }
+
+        CommunityCollectionUser communityCollectionUser = null;
+        try {
+            communityCollectionUser = communityCollectionUserService.subscribeCollection(collectionUser);
+        } catch (Exception e) {
+            throw new ProjectException();
+        }
+
+        return AjaxResult.success(communityCollectionUser);
+    }
+
+
+
+
 }

+ 70 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityCollectionUser.java

@@ -0,0 +1,70 @@
+package com.ruoyi.generator.domain.Community;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+* 合集跟用户关联表
+* @TableName community_collection_user
+*/
+@Data
+@TableName("community_collection_user")
+public class CommunityCollectionUser implements Serializable {
+
+    /**
+    * 唯一id
+    */
+    @NotNull(message="[唯一id]不能为空")
+    @ApiModelProperty("唯一id")
+    @TableId("id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+    /**
+    * 合集id
+    */
+    @ApiModelProperty("合集id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long collectionId;
+    /**
+    * 文章id
+    */
+    @ApiModelProperty("用户id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long userId;
+    /**
+     * 是否删除
+     */
+    @ApiModelProperty("是否删除")
+    private boolean isDelete;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    private Long createBy;
+    /**
+    * 更新人
+    */
+    @ApiModelProperty("更新人")
+    private Long updateBy;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+    /**
+    * 更新时间
+    */
+    @ApiModelProperty("更新时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 11 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/community/CommunityCollectionUserMapper.java

@@ -0,0 +1,11 @@
+package com.ruoyi.generator.mapper.community;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.generator.domain.Community.CommunityCollectionArticle;
+import com.ruoyi.generator.domain.Community.CommunityCollectionUser;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface CommunityCollectionUserMapper extends BaseMapper<CommunityCollectionUser> {
+
+}

+ 49 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/service/CommunityCollectionUserImpl.java

@@ -0,0 +1,49 @@
+package com.ruoyi.generator.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.generator.domain.Community.CommunityCollectionUser;
+import com.ruoyi.generator.domain.Community.CommunityTagBlock;
+import com.ruoyi.generator.mapper.community.CommunityCollectionMapper;
+import com.ruoyi.generator.mapper.community.CommunityCollectionUserMapper;
+import com.ruoyi.generator.mapper.community.CommunityTagBlockMapper;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class CommunityCollectionUserImpl extends ServiceImpl<CommunityCollectionUserMapper, CommunityCollectionUser> implements ICommunityCollectionUserService {
+
+    @Autowired
+    private CommunityCollectionUserMapper communityCollectionUserMapper;
+
+    @Override
+    public CommunityCollectionUser subscribeCollection(CommunityCollectionUser communityCollectionUser) {
+        CommunityCollectionUser collectionUser = communityCollectionUserMapper.selectOne(new QueryWrapper<CommunityCollectionUser>()
+                .eq("user_id", communityCollectionUser.getUserId())
+                .eq("collection_id", communityCollectionUser.getCollectionId()));
+
+        if (collectionUser != null) {
+            Boolean isdelete = false;
+            //是否取关
+            if (!collectionUser.isDelete()) {
+               isdelete = true;
+            }
+            collectionUser.setDelete(isdelete);
+            collectionUser.setUpdateBy(communityCollectionUser.getUserId());
+            collectionUser.setUpdateTime(DateUtils.parseDate(DateUtils.getTime()));
+            communityCollectionUserMapper.updateById(collectionUser);
+            return collectionUser;
+        }
+
+        //新增记录
+        collectionUser = new CommunityCollectionUser();
+        BeanUtils.copyProperties(communityCollectionUser, collectionUser);
+        collectionUser.setCreateBy(communityCollectionUser.getUserId());
+        collectionUser.setCreateTime(DateUtils.parseDate(DateUtils.getTime()));
+        communityCollectionUserMapper.insert(collectionUser);
+        return collectionUser;
+
+    }
+}

+ 16 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/service/ICommunityCollectionUserService.java

@@ -0,0 +1,16 @@
+package com.ruoyi.generator.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.generator.domain.Community.CommunityCollectionArticle;
+import com.ruoyi.generator.domain.Community.CommunityCollectionUser;
+import com.ruoyi.generator.domain.Community.CommunityTagBlock;
+
+public interface ICommunityCollectionUserService extends IService<CommunityCollectionUser> {
+
+    /**
+     * 订阅/取订合集
+     * @param communityCollectionUser
+     * @return
+     */
+    CommunityCollectionUser subscribeCollection(CommunityCollectionUser communityCollectionUser);
+}