From 05fe558f722590aa706c2296c8a9a619d12b42be Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期一, 27 五月 2024 14:35:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java | 6 +
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java | 11 +
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java | 2
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IMemberLikeService.java | 16 ++
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/Article.java | 2
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/MemberLike.java | 62 ++++++++++
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/SensitiveWords.java | 2
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java | 5
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java | 1
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java | 11 -
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java | 2
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java | 34 ++++-
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/async/AsyncMethodService.java | 7
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java | 15 ++
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/MemberLikeMapper.xml | 5
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java | 3
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java | 21 +++
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java | 4
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java | 7 +
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constants/NotificationTypeConstant.java | 11 +
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java | 3
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java | 31 ++++-
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java | 2
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/MemberLikeMapper.java | 16 ++
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java | 15 ++
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java | 5
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java | 2
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/ArticleComments.java | 2
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java | 10 -
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/MemberLikeController.java | 20 +++
30 files changed, 278 insertions(+), 55 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constants/NotificationTypeConstant.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constants/NotificationTypeConstant.java
new file mode 100644
index 0000000..b5e2e23
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constants/NotificationTypeConstant.java
@@ -0,0 +1,11 @@
+package com.ruoyi.system.api.constants;
+
+/**
+ * @author mitao
+ * @date 2024/5/27
+ */
+public interface NotificationTypeConstant {
+
+ String SECKILL = "seckill";
+ String GROUP_PURCHASE = "group_purchase";
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java
index 660147e..f5dfd23 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java
@@ -1,7 +1,7 @@
package com.ruoyi.article.controller;
-import com.ruoyi.article.domain.pojo.Article;
+import com.ruoyi.article.domain.Article;
import com.ruoyi.article.dto.ArticleDTO;
import com.ruoyi.article.service.IArticleService;
import com.ruoyi.article.vo.ArticleCommentsVO;
@@ -12,9 +12,9 @@
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.poi.ss.formula.functions.T;
+import javax.annotation.Resource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
-
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/MemberLikeController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/MemberLikeController.java
new file mode 100644
index 0000000..9dc38ce
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/MemberLikeController.java
@@ -0,0 +1,20 @@
+package com.ruoyi.article.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 用户点赞关联表 前端控制器
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-05-27
+ */
+@RestController
+@RequestMapping("/member-like")
+public class MemberLikeController {
+
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java
index 44ef633..0f17b8d 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java
@@ -1,21 +1,16 @@
package com.ruoyi.article.controller;
-import com.ruoyi.article.domain.pojo.Article;
-import com.ruoyi.article.domain.pojo.SensitiveWords;
-import com.ruoyi.article.dto.ArticleDTO;
+import com.ruoyi.article.domain.SensitiveWords;
import com.ruoyi.article.service.ISensitiveWordsService;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.utils.page.PageDTO;
import io.swagger.annotations.ApiOperation;
+import java.util.List;
+import javax.annotation.Resource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
-
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
-
-import javax.annotation.Resource;
-import java.util.List;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/Article.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/Article.java
similarity index 98%
rename from ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/Article.java
rename to ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/Article.java
index 6aca620..b454e5e 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/Article.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/Article.java
@@ -1,4 +1,4 @@
-package com.ruoyi.article.domain.pojo;
+package com.ruoyi.article.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/ArticleComments.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/ArticleComments.java
similarity index 98%
rename from ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/ArticleComments.java
rename to ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/ArticleComments.java
index c744096..01597c6 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/ArticleComments.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/ArticleComments.java
@@ -1,4 +1,4 @@
-package com.ruoyi.article.domain.pojo;
+package com.ruoyi.article.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/MemberLike.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/MemberLike.java
new file mode 100644
index 0000000..1666013
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/MemberLike.java
@@ -0,0 +1,62 @@
+package com.ruoyi.article.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 用户点赞关联表
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-05-27
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("t_member_like")
+@ApiModel(value = "MemberLike对象", description = "用户点赞关联表")
+public class MemberLike implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty(value = "会员id")
+ private Long memberId;
+
+ @ApiModelProperty(value = "资讯id/评论id/回复id")
+ private Long articleId;
+
+ @ApiModelProperty(value = "1 点赞资讯,2 点赞评论, 3 点赞回复")
+ private Long type;
+
+ @ApiModelProperty(value = "创建者")
+ private String createBy;
+
+ @ApiModelProperty(value = "创建时间")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "更新者")
+ private String updateBy;
+
+ @ApiModelProperty(value = "更新时间")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
+ private Integer delFlag;
+
+ @ApiModelProperty(value = "点赞数")
+ private Long likeNum;
+
+
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/SensitiveWords.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/SensitiveWords.java
similarity index 97%
rename from ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/SensitiveWords.java
rename to ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/SensitiveWords.java
index 3a9e1e5..a07a293 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/SensitiveWords.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/SensitiveWords.java
@@ -1,4 +1,4 @@
-package com.ruoyi.article.domain.pojo;
+package com.ruoyi.article.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java
index 6543e59..f6af9fb 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java
@@ -1,7 +1,7 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ruoyi.article.domain.pojo.ArticleComments;
+import com.ruoyi.article.domain.ArticleComments;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java
index 2df9bcb..213c012 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java
@@ -1,7 +1,7 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ruoyi.article.domain.pojo.Article;
+import com.ruoyi.article.domain.Article;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/MemberLikeMapper.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/MemberLikeMapper.java
new file mode 100644
index 0000000..e1c0493
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/MemberLikeMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.article.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.article.domain.MemberLike;
+
+/**
+ * <p>
+ * 用户点赞关联表 Mapper 接口
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-05-27
+ */
+public interface MemberLikeMapper extends BaseMapper<MemberLike> {
+
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java
index 00a0c20..1c75036 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java
@@ -1,7 +1,7 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ruoyi.article.domain.pojo.SensitiveWords;
+import com.ruoyi.article.domain.SensitiveWords;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java
index f94bad4..39ce0b5 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.article.domain.pojo.ArticleComments;
import com.ruoyi.article.dto.ArticleCommentsDTO;
+import com.ruoyi.article.domain.ArticleComments;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java
index 9624520..5b522b4 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java
@@ -1,11 +1,10 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.article.domain.pojo.Article;
+import com.ruoyi.article.domain.Article;
import com.ruoyi.article.dto.ArticleDTO;
import com.ruoyi.article.vo.ArticleCommentsVO;
import com.ruoyi.common.core.utils.page.PageDTO;
-import com.ruoyi.system.api.domain.MemberAddress;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IMemberLikeService.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IMemberLikeService.java
new file mode 100644
index 0000000..b5d537a
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IMemberLikeService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.article.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.article.domain.MemberLike;
+
+/**
+ * <p>
+ * 用户点赞关联表 服务类
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-05-27
+ */
+public interface IMemberLikeService extends IService<MemberLike> {
+
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java
index e495227..3c1a2f9 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java
@@ -1,8 +1,7 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.article.domain.pojo.SensitiveWords;
-
+import com.ruoyi.article.domain.SensitiveWords;
import java.util.List;
/**
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java
index 55ac505..b16b40c 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.article.domain.pojo.Article;
import com.ruoyi.article.domain.pojo.ArticleComments;
+import com.ruoyi.article.domain.Article;
import com.ruoyi.article.dto.ArticleDTO;
import com.ruoyi.article.mapper.ArticleMapper;
import com.ruoyi.article.service.IArticleCommentsService;
@@ -23,6 +24,7 @@
import util.HuaWeiOBSUtil;
import javax.annotation.Resource;
+import org.springframework.stereotype.Service;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.ArrayList;
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java
new file mode 100644
index 0000000..a855882
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java
@@ -0,0 +1,21 @@
+package com.ruoyi.article.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.article.domain.MemberLike;
+import com.ruoyi.article.mapper.MemberLikeMapper;
+import com.ruoyi.article.service.IMemberLikeService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 用户点赞关联表 服务实现类
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-05-27
+ */
+@Service
+public class MemberLikeServiceImpl extends ServiceImpl<MemberLikeMapper, MemberLike> implements
+ IMemberLikeService {
+
+}
diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
index 4f6387f..0aed3ed 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
@@ -2,17 +2,13 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.article.domain.pojo.Article;
-import com.ruoyi.article.domain.pojo.SensitiveWords;
+import com.ruoyi.article.domain.SensitiveWords;
import com.ruoyi.article.mapper.SensitiveWordsMapper;
import com.ruoyi.article.service.ISensitiveWordsService;
-import com.ruoyi.common.core.utils.page.PageDTO;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
import java.util.List;
+import javax.annotation.Resource;
+import org.springframework.stereotype.Service;
/**
* <p>
diff --git a/ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/MemberLikeMapper.xml b/ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/MemberLikeMapper.xml
new file mode 100644
index 0000000..0606ed7
--- /dev/null
+++ b/ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/MemberLikeMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.article.mapper.MemberLikeMapper">
+
+</mapper>
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
index 3043837..94848fe 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
@@ -29,6 +29,12 @@
private final IAuctionGoodsService auctionGoodsService;
+ /**
+ * 获取拍卖商品列表的分页数据
+ *
+ * @param query 拍卖商品查询对象
+ * @return PageDTO<AuctionGoodsVO>
+ */
@ApiOperation(value = "获取拍卖商品列表的分页数据", notes = "获取拍卖商品列表的分页数据")
@PostMapping("/page")
public R<PageDTO<AuctionGoodsVO>> getAuctionGoodsPage(
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
index 78d5e68..0433a57 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
@@ -15,6 +15,11 @@
* @since 2024-05-16
*/
public interface IAuctionGoodsService extends IService<AuctionGoods> {
-
+ /**
+ * 获取拍卖商品列表的分页数据
+ *
+ * @param query 拍卖商品查询对象
+ * @return PageDTO<AuctionGoodsVO>
+ */
PageDTO<AuctionGoodsVO> getAuctionGoodsPage(AuctionGoodsQuery query);
}
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
index ae47f33..ef6fd3c 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -36,6 +36,12 @@
@Resource
private GoodsSkuClient goodsSkuClient;
+ /**
+ * 获取拍卖商品列表的分页数据
+ *
+ * @param query 拍卖商品查询对象
+ * @return PageDTO<AuctionGoodsVO>
+ */
@Override
public PageDTO<AuctionGoodsVO> getAuctionGoodsPage(AuctionGoodsQuery query) {
Set<Long> goodsSkuIdList = null;
@@ -45,7 +51,8 @@
goodsSkuIdList = goodsSku.stream().map(GoodsSku::getId)
.collect(Collectors.toSet());
}
- this.lambdaQuery().select(AuctionGoods::getId, AuctionGoods::getGoodsSkuId,
+ Page<AuctionGoods> page = this.lambdaQuery()
+ .select(AuctionGoods::getId, AuctionGoods::getGoodsSkuId,
AuctionGoods::getListingStatus, AuctionGoods::getStartStatus,
AuctionGoods::getStartTime, AuctionGoods::getEndTime,
AuctionGoods::getAuctionStock, AuctionGoods::getMinimumMarkupAmount).in(
@@ -57,6 +64,6 @@
.eq(StringUtils.isNotNull(query.getStartStatus()), AuctionGoods::getStartStatus,
query.getStartStatus())
.page(new Page<>(query.getPageCurr(), query.getPageSize()));
- return null;
+ return PageDTO.of(page, AuctionGoodsVO.class);
}
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java
index ebad70f..373ceb6 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.controller.inner;
+import com.fasterxml.jackson.core.JsonProcessingException;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.goods.service.IGoodsGroupPurchaseService;
@@ -35,7 +36,12 @@
@InnerAuth
@GetMapping("/start/{groupPurchaseId}")
R<?> startGroupPurchase(@PathVariable("groupPurchaseId") Long groupPurchaseId) {
- goodsGroupPurchaseService.startGroupPurchase(groupPurchaseId);
+ try {
+ goodsGroupPurchaseService.startGroupPurchase(groupPurchaseId);
+ } catch (JsonProcessingException e) {
+ log.error("团购商品开始团购失败", e);
+ return R.fail("团购商品开始团购失败");
+ }
return R.ok();
}
@@ -47,7 +53,12 @@
@InnerAuth
@GetMapping("/end/{groupPurchaseId}")
R<?> endGroupPurchase(@PathVariable("groupPurchaseId") Long groupPurchaseId) {
- goodsGroupPurchaseService.endGroupPurchase(groupPurchaseId);
+ try {
+ goodsGroupPurchaseService.endGroupPurchase(groupPurchaseId);
+ } catch (JsonProcessingException e) {
+ log.error("团购商品开始团购失败", e);
+ return R.fail("团购商品结束团购失败");
+ }
return R.ok();
}
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java
index 2b97060..09533e1 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.controller.inner;
+import com.fasterxml.jackson.core.JsonProcessingException;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.goods.service.IGoodsSeckillService;
@@ -45,7 +46,12 @@
@InnerAuth
@GetMapping("/start/{seckillId}")
R<?> startSeckill(@PathVariable("seckillId") Long seckillId) {
- goodsSeckillService.startSeckill(seckillId);
+ try {
+ goodsSeckillService.startSeckill(seckillId);
+ } catch (JsonProcessingException e) {
+ log.error("秒杀开始异常", e);
+ return R.fail();
+ }
return R.ok();
}
@@ -57,7 +63,12 @@
@InnerAuth
@GetMapping("/end/{seckillId}")
R<?> endSeckill(@PathVariable("seckillId") Long seckillId) {
- goodsSeckillService.endSeckill(seckillId);
+ try {
+ goodsSeckillService.endSeckill(seckillId);
+ } catch (JsonProcessingException e) {
+ log.error("秒杀结束异常", e);
+ return R.fail();
+ }
return R.ok();
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java
index 04a1f71..1550c37 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.fasterxml.jackson.core.JsonProcessingException;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.goods.controller.management.dto.GoodsGroupPurchaseDTO;
import com.ruoyi.goods.controller.management.dto.GoodsGroupPurchaseQuery;
@@ -53,14 +54,14 @@
*
* @param groupPurchaseId 团购商品id
*/
- void startGroupPurchase(Long groupPurchaseId);
+ void startGroupPurchase(Long groupPurchaseId) throws JsonProcessingException;
/**
* 团购商品结束团购
*
* @param groupPurchaseId 团购商品id
*/
- void endGroupPurchase(Long groupPurchaseId);
+ void endGroupPurchase(Long groupPurchaseId) throws JsonProcessingException;
/**
* 立即结束团购
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java
index fa85f00..eb363f7 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.fasterxml.jackson.core.JsonProcessingException;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.goods.controller.management.dto.GoodsSeckillDTO;
import com.ruoyi.goods.controller.management.dto.GoodsSeckillQuery;
@@ -61,12 +62,12 @@
*
* @param seckillId 秒杀id
*/
- void startSeckill(Long seckillId);
+ void startSeckill(Long seckillId) throws JsonProcessingException;
/**
* 结束秒杀
*
* @param seckillId 秒杀id
*/
- void endSeckill(Long seckillId);
+ void endSeckill(Long seckillId) throws JsonProcessingException;
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/async/AsyncMethodService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/async/AsyncMethodService.java
index a0a2954..975ab4c 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/async/AsyncMethodService.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/async/AsyncMethodService.java
@@ -13,13 +13,14 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Async;
-import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
/**
* @author mitao
* @date 2024/5/24
*/
-@Component
+@Service
@Slf4j
@RequiredArgsConstructor
public class AsyncMethodService {
@@ -28,6 +29,7 @@
private final SysUserClient sysUserClient;
@Async
+ @Transactional(rollbackFor = Exception.class)
public void seckillScheduleTask(GoodsSeckill goodsSeckill) {
LocalDateTime startTime = goodsSeckill.getStartTime();
LocalDateTime endTime = goodsSeckill.getEndTime();
@@ -50,6 +52,7 @@
}
@Async
+ @Transactional(rollbackFor = Exception.class)
public void groupPurchaseScheduleTask(GoodsGroupPurchase groupPurchase) {
LocalDateTime startTime = groupPurchase.getStartTime();
LocalDateTime endTime = groupPurchase.getEndTime();
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
index dbb37c1..69dc106 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
@@ -2,6 +2,8 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.core.enums.GroupStatusEnum;
import com.ruoyi.common.core.enums.ListingStatusEnum;
import com.ruoyi.common.core.enums.PaymentMethodEnum;
@@ -18,15 +20,19 @@
import com.ruoyi.goods.service.IGoodsGroupPurchaseService;
import com.ruoyi.goods.service.IGoodsSkuService;
import com.ruoyi.goods.service.async.AsyncMethodService;
-import com.ruoyi.system.api.WebSocketUsers;
+import com.ruoyi.system.api.constants.NotificationTypeConstant;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.dto.ListStatusDTO;
import com.ruoyi.system.api.feignClient.OrderClient;
+import java.time.LocalDateTime;
import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import util.WebSocketUsers;
/**
* <p>
@@ -44,6 +50,8 @@
private final OrderClient orderClient;
private final IGoodsSkuService goodsSkuService;
private final AsyncMethodService asyncMethodService;
+ // 创建一个静态共享的ObjectMapper实例以重用
+ private static final ObjectMapper objectMapper = new ObjectMapper();
/**
* 获取团购商品列表的分页数据
*
@@ -148,15 +156,19 @@
* @param groupPurchaseId 团购商品id
*/
@Override
- public void startGroupPurchase(Long groupPurchaseId) {
+ public void startGroupPurchase(Long groupPurchaseId) throws JsonProcessingException {
log.info(">>>>>>>>>>>>>>>>>>>>{}团购商品开始团购<<<<<<<<<<<<<<<<<<<<", groupPurchaseId);
GoodsGroupPurchase groupPurchase = this.getById(groupPurchaseId);
if (StringUtils.isNotNull(groupPurchase)) {
this.lambdaUpdate().set(GoodsGroupPurchase::getStartStatus, StartStatusEnum.STARTED)
.eq(GoodsGroupPurchase::getId, groupPurchaseId).update();
- //TODO 通知小程序
- WebSocketUsers.sendMessageToUsersByText(
- "团购商品" + groupPurchase.getGoodsSkuName() + "开始团购");
+ Map<String, Object> map = new ConcurrentHashMap<>();
+ map.put("notification_type", NotificationTypeConstant.GROUP_PURCHASE);
+ map.put("notification_time", LocalDateTime.now());
+ map.put("message_type", "start");
+ String msg = objectMapper.writeValueAsString(map);
+ WebSocketUsers.sendMessageToUsersByText(msg);
+ log.info("===================>发送websocket通知,消息体{}", msg);
}
}
@@ -166,15 +178,19 @@
* @param groupPurchaseId 团购商品id
*/
@Override
- public void endGroupPurchase(Long groupPurchaseId) {
+ public void endGroupPurchase(Long groupPurchaseId) throws JsonProcessingException {
log.info(">>>>>>>>>>>>>>>>>>>>{}团购商品结束团购<<<<<<<<<<<<<<<<<<<<", groupPurchaseId);
GoodsGroupPurchase groupPurchase = this.getById(groupPurchaseId);
if (StringUtils.isNotNull(groupPurchase)) {
this.lambdaUpdate().set(GoodsGroupPurchase::getStartStatus, StartStatusEnum.ENDED)
.eq(GoodsGroupPurchase::getId, groupPurchaseId).update();
- //TODO 通知小程序
- WebSocketUsers.sendMessageToUsersByText(
- "团购商品" + groupPurchase.getGoodsSkuName() + "结束团购");
+ Map<String, Object> map = new ConcurrentHashMap<>();
+ map.put("notification_type", NotificationTypeConstant.GROUP_PURCHASE);
+ map.put("notification_time", LocalDateTime.now());
+ map.put("message_type", "end");
+ String msg = objectMapper.writeValueAsString(map);
+ WebSocketUsers.sendMessageToUsersByText(msg);
+ log.info("===================>发送websocket通知,消息体{}", msg);
}
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
index 8cf04e0..60955b8 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
@@ -2,6 +2,8 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.core.constant.CacheConstants;
import com.ruoyi.common.core.enums.StartStatusEnum;
import com.ruoyi.common.core.exception.ServiceException;
@@ -17,18 +19,22 @@
import com.ruoyi.goods.service.IGoodsSeckillService;
import com.ruoyi.goods.service.IGoodsSkuService;
import com.ruoyi.goods.service.async.AsyncMethodService;
-import com.ruoyi.system.api.WebSocketUsers;
+import com.ruoyi.system.api.constants.NotificationTypeConstant;
import com.ruoyi.system.api.domain.GoodsSeckill;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.dto.ListStatusDTO;
import com.ruoyi.system.api.feignClient.OrderClient;
import com.ruoyi.system.api.feignClient.SysUserClient;
+import java.time.LocalDateTime;
import java.util.List;
+import java.util.Map;
import java.util.Optional;
+import java.util.concurrent.ConcurrentHashMap;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import util.WebSocketUsers;
/**
* <p>
@@ -48,6 +54,8 @@
private final RedisService redisService;
private final SysUserClient sysUserClient;
private final AsyncMethodService asyncMethodService;
+ // 创建一个静态共享的ObjectMapper实例以重用
+ private static final ObjectMapper objectMapper = new ObjectMapper();
@Override
@Transactional(rollbackFor = Exception.class)
public void addGoodsSeckill(GoodsSeckillDTO dto) {
@@ -147,7 +155,7 @@
* @param seckillId 秒杀id
*/
@Override
- public void startSeckill(Long seckillId) {
+ public void startSeckill(Long seckillId) throws JsonProcessingException {
log.info(">>>>>>>>>>>>>>>>>>>>{}秒杀开始<<<<<<<<<<<<<<<<<<<<", seckillId);
GoodsSeckill goodsSeckill = this.getById(seckillId);
//秒杀商品不能为空且状态为未开始
@@ -162,7 +170,13 @@
goodsSeckill.getSeckillStock());
}
//推送秒杀开始消息
- WebSocketUsers.sendMessageToUsersByText("秒杀活动已开始");
+ Map<String, Object> map = new ConcurrentHashMap<>();
+ map.put("notification_type", NotificationTypeConstant.SECKILL);
+ map.put("notification_time", LocalDateTime.now());
+ map.put("message_type", "start");
+ String msg = objectMapper.writeValueAsString(map);
+ WebSocketUsers.sendMessageToUsersByText(msg);
+ log.info("===================>发送websocket通知,消息体{}", msg);
}
/**
@@ -171,7 +185,7 @@
* @param seckillId 秒杀id
*/
@Override
- public void endSeckill(Long seckillId) {
+ public void endSeckill(Long seckillId) throws JsonProcessingException {
log.info(">>>>>>>>>>>>>>>>>>>>{}秒杀结束<<<<<<<<<<<<<<<<<<<<", seckillId);
GoodsSeckill goodsSeckill = this.getById(seckillId);
if (StringUtils.isNotNull(goodsSeckill)
@@ -182,7 +196,12 @@
// 将秒杀商品从缓存中移除
redisService.deleteObject(CacheConstants.SECKILL_GOODS + goodsSeckill.getId());
}
- //TODO websocket 推送秒杀结束消息
- WebSocketUsers.sendMessageToUsersByText("秒杀活动已结束");
+ Map<String, Object> map = new ConcurrentHashMap<>();
+ map.put("notification_type", NotificationTypeConstant.SECKILL);
+ map.put("notification_time", LocalDateTime.now());
+ map.put("message_type", "end");
+ String msg = objectMapper.writeValueAsString(map);
+ WebSocketUsers.sendMessageToUsersByText(msg);
+ log.info("===================>发送websocket通知,消息体{}", msg);
}
}
--
Gitblit v1.7.1