瀏覽代碼

表情接口

fangqing 5 月之前
父節點
當前提交
7ffa22021a

+ 106 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityExpressionController.java

@@ -0,0 +1,106 @@
+package com.ruoyi.generator.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.exception.user.ProjectException;
+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.CommunityExpressionCategoryMapper;
+import com.ruoyi.generator.mapper.community.CommunityExpressionMapper;
+import com.ruoyi.generator.service.ICommunityNotificationService;
+import com.ruoyi.generator.service.ICommunityPrivacyService;
+import com.ruoyi.generator.vo.CommunityArticleCommentVo;
+import com.ruoyi.generator.vo.CommunityExpressionCategoryVo;
+import com.ruoyi.generator.vo.CommunityUserNotificationVo;
+import com.ruoyi.generator.vo.CommunityUserPrivacyVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 社区设置管理
+ *
+ * @author fangQing
+ */
+@Api(tags = "社区表情管理")
+@RestController
+@RequestMapping("/community/expression")
+public class CommunityExpressionController {
+
+
+    @Autowired
+    private CommunityExpressionCategoryMapper communityExpressionCategoryMapper;
+
+    @Autowired
+    private CommunityExpressionMapper communityExpressionMapper;
+
+
+   /* *//**
+     * 获取表情列表
+     * @param
+     * @return 获取表情列表
+     *//*
+    @ApiOperation("获取表情列表")
+    @GetMapping("/list")
+    //@Anonymous
+    public AjaxResult queryExpressionList() {
+        List<CommunityExpressionCategoryVo> expressionVos = new ArrayList<>();
+        try {
+            List<CommunityExpressionCategory>  communityExpressionCategories = communityExpressionCategoryMapper.selectList(new QueryWrapper<CommunityExpressionCategory>()
+                    .and((wrapper) -> {
+                        wrapper.ne("is_delete", true).or().isNull("is_delete");
+                    }).orderByAsc("create_time"));
+            CommunityExpressionCategoryVo communityExpressionCategoryVo = null;
+
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return AjaxResult.success(expressionVos);
+    }*/
+
+    /**
+     * 获取表情
+     * @param
+     * @return 获取表情
+     */
+    @ApiOperation("获取表情")
+    @GetMapping()
+    //@Anonymous
+    public AjaxResult queryExpression() {
+        List<CommunityExpressionCategoryVo> expressionVos = new ArrayList<>();
+        try {
+            List<CommunityExpressionCategory>  communityExpressionCategories = communityExpressionCategoryMapper.selectList(new QueryWrapper<CommunityExpressionCategory>()
+                    .and((wrapper) -> {
+                        wrapper.ne("is_delete", true).or().isNull("is_delete");
+                    }).orderByAsc("create_time"));
+            CommunityExpressionCategoryVo communityExpressionCategoryVo = null;
+            for (CommunityExpressionCategory communityExpressionCategory : communityExpressionCategories) {
+                communityExpressionCategoryVo = new CommunityExpressionCategoryVo();
+                System.out.println(communityExpressionCategory);
+                BeanUtils.copyProperties(communityExpressionCategory, communityExpressionCategoryVo);
+                expressionVos.add(communityExpressionCategoryVo);
+            }
+
+            for (CommunityExpressionCategoryVo expressionVo : expressionVos) {
+                //获取分类下的详细表情
+                List<CommunityExpression>  communityExpressions = communityExpressionMapper.selectList(new QueryWrapper<CommunityExpression>()
+                        .eq("category_id", expressionVo.getId())
+                        .and((wrapper) -> {
+                            wrapper.ne("is_delete", true).or().isNull("is_delete");
+                }));
+                expressionVo.setExpression(communityExpressions);
+            }
+        } catch (Exception e) {
+           e.printStackTrace();
+        }
+        return AjaxResult.success(expressionVos);
+    }
+
+
+}

+ 64 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityExpression.java

@@ -0,0 +1,64 @@
+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.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * 表情分类
+ * @author fangqing
+ * @date 2024/12/30 14:59
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("community_expression")
+public class CommunityExpression {
+
+    /**
+     * 唯一id
+     */
+    @NotNull(message="[唯一id]不能为空")
+    @ApiModelProperty("唯一id")
+    @TableId("id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    /**
+     * 分类ID
+     */
+    @ApiModelProperty("分类ID")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long categoryId;
+
+    /**
+     * 图片地址
+     */
+    @ApiModelProperty("图片地址")
+    private String imageUrl;
+
+    /**
+     * 表情名
+     */
+    @ApiModelProperty("表情名")
+    private String name;
+
+    /**
+     * 表情描述
+     */
+    @ApiModelProperty("表情描述")
+    private String description;
+
+    /** 是否删除 */
+    private boolean isDelete;
+
+}

+ 70 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityExpressionCategory.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.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * 表情分类
+ * @author fangqing
+ * @date 2024/12/30 14:59
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("community_expression_category")
+public class CommunityExpressionCategory {
+
+    /**
+     * 唯一id
+     */
+    @NotNull(message="[唯一id]不能为空")
+    @ApiModelProperty("唯一id")
+    @TableId("id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    /**
+     * 图片地址
+     */
+    @ApiModelProperty("图片地址")
+    private String imageUrl;
+
+    /**
+     * 表情名
+     */
+    @ApiModelProperty("表情名")
+    private String name;
+
+    /**
+     * 表情描述
+     */
+    @ApiModelProperty("表情描述")
+    private String description;
+
+    /** 是否删除 */
+    private boolean isDelete;
+
+    /** 创建者 */
+    private Long createBy;
+
+    /** 创建时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+    /** 更新者 */
+    private Long updateBy;
+
+    /** 更新时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 9 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/community/CommunityExpressionCategoryMapper.java

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

+ 9 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/community/CommunityExpressionMapper.java

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

+ 79 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/vo/CommunityExpressionCategoryVo.java

@@ -0,0 +1,79 @@
+package com.ruoyi.generator.vo;
+
+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 com.ruoyi.generator.domain.Community.CommunityExpression;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 表情分类
+ * @author fangqing
+ * @date 2024/12/30 14:59
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("community_expression_category")
+public class CommunityExpressionCategoryVo {
+
+    /**
+     * 唯一id
+     */
+    @NotNull(message="[唯一id]不能为空")
+    @ApiModelProperty("唯一id")
+    @TableId("id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    /**
+     * 图片地址
+     */
+    @ApiModelProperty("图片地址")
+    private String imageUrl;
+
+    /**
+     * 表情名
+     */
+    @ApiModelProperty("表情名")
+    private String name;
+
+    /**
+     * 表情描述
+     */
+    @ApiModelProperty("表情描述")
+    private String description;
+
+    /** 是否删除 */
+    private boolean isDelete;
+
+    /** 创建者 */
+    private Long createBy;
+
+    /** 创建时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+    /** 更新者 */
+    private Long updateBy;
+
+    /** 更新时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+
+
+    /**
+     * 表情包
+     */
+    @ApiModelProperty("评论首条回复")
+    private List<CommunityExpression> expression;
+}