Ver código fonte

收藏状态修改

wxd 3 semanas atrás
pai
commit
7c62b40ac7

+ 20 - 1
alien-entity/src/main/java/shop/alien/entity/second/vo/SecondGoodsVo.java

@@ -11,6 +11,8 @@ import lombok.Data;
 import shop.alien.entity.second.SecondGoods;
 
 import java.text.SimpleDateFormat;
+import java.util.Arrays;
+import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
@@ -62,7 +64,6 @@ public class SecondGoodsVo extends SecondGoods {
     @TableField(exist = false)
     private String categoryTwoName;
 
-
     /** -------------------- 搜索入参 -------------------- */
 
     @TableField(exist = false)
@@ -98,6 +99,24 @@ public class SecondGoodsVo extends SecondGoods {
         return getTimeAgo(getReleaseTime());
     }
 
+    @JsonProperty("topicList")
+    public List<String> parseTopic() {
+        return parseTopic(getTopic());
+    }
+
+    /**
+     * 解析话题列表
+     *
+     * @param topic 话题列表字符串
+     * @return 解析后的话题列表
+     */
+    public List<String> parseTopic(String topic) {
+        if (topic != null && !topic.isEmpty()) {
+            return Arrays.asList(topic.split(","));
+        } else {
+            return Collections.emptyList();
+        }
+    }
 
     /**
      * 返回时间描述,根据发布时间计算距离现在多久。

+ 16 - 0
alien-second/src/main/java/shop/alien/second/controller/SecondGoodsController.java

@@ -1,6 +1,7 @@
 package shop.alien.second.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
@@ -114,6 +115,8 @@ public class SecondGoodsController {
         JSONObject data = JwtUtil.getCurrentUserInfo();
         if (null != data) {
             int userId = data.getInteger("userId");
+            String phone = data.getString("phone");
+            secondGoodsVo.setUserPhone(phone);
             result = R.data(secondGoodsService.searchGoodsList(page, userId,secondGoodsVo), "查询成功");
         }
         return result;
@@ -216,5 +219,18 @@ public class SecondGoodsController {
         return R.data(secondGoodsService.getUserGoodsPage(page,secondGoodsVo));
     }
 
+    /**
+     * 获取商品草稿数量
+     */
+    @GetMapping("/getDraftCount")
+    @ApiOperation("获取商品草稿数量")
+    public R<Integer> getDraftCount(@ApiParam("商品id") @RequestParam Integer goodsId) {
+        // 获取商品草稿数量
+        QueryWrapper<SecondGoods> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda()
+                .eq(SecondGoods::getId, goodsId)
+                .eq(SecondGoods::getGoodsStatus, 0); // 0-草稿
+        return R.data(secondGoodsService.count(queryWrapper));
+    }
 
 }

+ 9 - 13
alien-second/src/main/java/shop/alien/second/service/impl/SecondGoodsServiceImpl.java

@@ -357,13 +357,13 @@ public class SecondGoodsServiceImpl extends ServiceImpl<SecondGoodsMapper, Secon
         // 判空
         if (CollectionUtil.isNotEmpty(searchGoodsList.getRecords())) {
             // 批量设置商品图片信息
-            batchSetGoodsImages(searchGoodsList);
+//            batchSetGoodsImages(searchGoodsList);
             // 批量设置用户信息
             batchSetUserInfo(searchGoodsList);
             // 批量设置收藏状态
-            batchSetCollectStatus(searchGoodsList, userId);
+            batchSetCollectStatus(searchGoodsList,secondGoodsVo.getUserPhone(), userId);
             // 批量设置点赞状态
-            batchSetLikeStatus(searchGoodsList, userId);
+            batchSetLikeStatus(searchGoodsList,secondGoodsVo.getUserPhone(), userId);
         }
         return searchGoodsList;
     }
@@ -372,11 +372,9 @@ public class SecondGoodsServiceImpl extends ServiceImpl<SecondGoodsMapper, Secon
      * 批量设置收藏状态
      * @param searchGoodsList 搜索结果列表
      * @param userId 用户ID(登录用户)
+     * @param phone 手机号
      */
-    private void batchSetLikeStatus(IPage<SecondGoodsVo> searchGoodsList, Integer userId) {
-        // 获取用户信息
-        LifeUser lifeUser = lifeUserMapper.selectById(userId);
-        String phone = lifeUser.getUserPhone();
+    private void batchSetLikeStatus(IPage<SecondGoodsVo> searchGoodsList, String phone, Integer userId) {
         // 批量设置点赞状态
         searchGoodsList.getRecords().forEach(goods -> {
             if (userId != null) {
@@ -396,18 +394,16 @@ public class SecondGoodsServiceImpl extends ServiceImpl<SecondGoodsMapper, Secon
      * 批量设置收藏状态
      * @param searchGoodsList 搜索结果列表
      * @param userId 用户ID(登录用户)
+     * @param phone 手机号
      */
-    private void batchSetCollectStatus(IPage<SecondGoodsVo> searchGoodsList, Integer userId) {
-        // 获取用户信息
-        LifeUser lifeUser = lifeUserMapper.selectById(userId);
-        String phone = lifeUser.getUserPhone();
+    private void batchSetCollectStatus(IPage<SecondGoodsVo> searchGoodsList,String phone, Integer userId) {
         // 批量设置收藏状态
         searchGoodsList.getRecords().forEach(goods -> {
             if (userId != null) {
                 LambdaUpdateWrapper<LifeCollect> updateWrapper = new LambdaUpdateWrapper<>();
                 updateWrapper.eq(LifeCollect::getUserId, "user_"+phone)
-                        // TODo 商品ID
-                        .eq(LifeCollect::getGoodsId, goods.getId());
+                        .eq(LifeCollect::getBusinessType, 1)
+                        .eq(LifeCollect::getBusinessId, goods.getId());
                         if (lifeCollectMapper.selectCount(updateWrapper) > 0) {
                             goods.setCollectStatus(1);
                         }