wangming 1 月之前
父节点
当前提交
42edca5bef

+ 8 - 6
yami-shop-api/src/main/java/com/yami/shop/api/controller/SkuController.java

@@ -10,8 +10,11 @@
 
 package com.yami.shop.api.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yami.shop.bean.app.dto.SkuDto;
 import com.yami.shop.bean.model.Sku;
+import com.yami.shop.bean.vo.SkuBuyTogetherOftenVo;
+import com.yami.shop.common.util.PageParam;
 import com.yami.shop.service.SkuService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -46,11 +49,10 @@ public class SkuController {
         return ResponseEntity.ok(skuDtoList);
     }
 
-//    @GetMapping("/buyTogetherOften")
-//    @ApiOperation(value = "商品详情-经常一起买")
-//    public ResponseEntity<IPage<SearchTerm>> buyTogetherOften(PageParam<SearchTerm> page) {
-////        IPage<SearchTerm> searchTermIPage = skuService.buyTogetherOften(page);
-//        return ResponseEntity.ok();
-//    }
+    @GetMapping("/buyTogetherOften")
+    @ApiOperation(value = "商品详情-经常一起买")
+    public ResponseEntity<IPage<SkuBuyTogetherOftenVo>> buyTogetherOften(PageParam<SkuBuyTogetherOftenVo> page, Long skuId) {
+        return ResponseEntity.ok(skuService.buyTogetherOften(page,skuId));
+    }
 
 }

+ 31 - 0
yami-shop-bean/src/main/java/com/yami/shop/bean/vo/SkuBuyTogetherOftenVo.java

@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2018-2999 广州亚米信息科技有限公司 All rights reserved.
+ *
+ * https://www.gz-yami.com/
+ *
+ * 未经允许,不可做商业用途!
+ *
+ * 版权所有,侵权必究!
+ */
+
+package com.yami.shop.bean.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class SkuBuyTogetherOftenVo {
+
+    @ApiModelProperty("sku_id")
+    private Long skuId;
+    @ApiModelProperty("prod_id")
+    private Long prodId;
+    @ApiModelProperty("商品名")
+    private String skuName;
+    @ApiModelProperty("图片")
+    private String pic;
+    @ApiModelProperty("渠道价")
+    private String channelProdPrice;
+    @ApiModelProperty("库存")
+    private String shopSkuStocks;
+}

+ 8 - 8
yami-shop-service/src/main/java/com/yami/shop/dao/SkuMapper.java

@@ -10,15 +10,15 @@
 
 package com.yami.shop.dao;
 
-import java.util.List;
-import java.util.Map;
-
-import com.yami.shop.bean.model.Product;
-import org.apache.ibatis.annotations.Param;
-
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yami.shop.bean.model.Sku;
+import com.yami.shop.bean.vo.SkuBuyTogetherOftenVo;
+import com.yami.shop.common.util.PageParam;
+import org.apache.ibatis.annotations.Param;
 
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.List;
+import java.util.Map;
 
 public interface SkuMapper extends BaseMapper<Sku> {
 
@@ -51,5 +51,5 @@ public interface SkuMapper extends BaseMapper<Sku> {
      */
     Sku selectByHbSkuId(@Param("hbSkuId") String hbSkuId);
 
-
+    IPage<SkuBuyTogetherOftenVo> buyTogetherOften(@Param("page") PageParam<SkuBuyTogetherOftenVo> page, @Param("skuId") Long skuId);
 }

+ 7 - 3
yami-shop-service/src/main/java/com/yami/shop/service/SkuService.java

@@ -10,11 +10,13 @@
 
 package com.yami.shop.service;
 
-import java.util.List;
-
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.yami.shop.bean.model.Sku;
-import org.springframework.cache.annotation.CacheEvict;
+import com.yami.shop.bean.vo.SkuBuyTogetherOftenVo;
+import com.yami.shop.common.util.PageParam;
+
+import java.util.List;
 
 /**
  * @author lgh on 2018/09/29.
@@ -62,4 +64,6 @@ public interface SkuService extends IService<Sku> {
     Sku getSkuBySkuId(Long skuId, Integer platform);
 
     void removeSkuCacheBySkuId(Long skuId, Long prodId);
+
+    IPage<SkuBuyTogetherOftenVo> buyTogetherOften(PageParam<SkuBuyTogetherOftenVo> page, Long skuId);
 }

+ 11 - 6
yami-shop-service/src/main/java/com/yami/shop/service/impl/SkuServiceImpl.java

@@ -10,18 +10,19 @@
 
 package com.yami.shop.service.impl;
 
-import java.util.List;
-
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yami.shop.bean.model.Sku;
+import com.yami.shop.bean.vo.SkuBuyTogetherOftenVo;
+import com.yami.shop.common.util.PageParam;
+import com.yami.shop.dao.SkuMapper;
+import com.yami.shop.service.SkuService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cache.annotation.CacheEvict;
-import org.springframework.cache.annotation.Cacheable;
 import org.springframework.cache.annotation.Caching;
 import org.springframework.stereotype.Service;
 
-import com.yami.shop.bean.model.Sku;
-import com.yami.shop.dao.SkuMapper;
-import com.yami.shop.service.SkuService;
+import java.util.List;
 
 /**
  * @author lgh on 2018/09/29.
@@ -66,4 +67,8 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
 
     }
 
+    @Override
+    public IPage<SkuBuyTogetherOftenVo> buyTogetherOften(PageParam<SkuBuyTogetherOftenVo> page, Long skuId) {
+        return skuMapper.buyTogetherOften(page, skuId);
+    }
 }

+ 15 - 0
yami-shop-service/src/main/resources/mapper/SkuMapper.xml

@@ -179,4 +179,19 @@
             update tz_sku set stocks = stocks + #{changeStocks} where sku_id = #{skuId}
         </foreach>
     </update>
+
+    <select id="buyTogetherOften" resultType="com.yami.shop.bean.vo.SkuBuyTogetherOftenVo">
+        SELECT b.sku_id, b.prod_id, b.sku_name, b.pic, c.channel_prod_price, d.shop_sku_stocks
+        FROM tz_order_item a
+                 LEFT JOIN tz_sku b on a.sku_id = b.sku_id
+                 LEFT JOIN tz_channel_prod c on a.sku_id = c.sku_id and c.is_delete = 0
+                 LEFT JOIN tz_shop_sku d on a.sku_id = d.sku_id and d.is_delete = 0
+        WHERE a.order_number in (SELECT order_number FROM tz_order_item WHERE sku_id = #{skuId})
+          and a.sku_id!=#{skuId}
+and b.`status`=1 and b.is_delete=0
+and d.sale_status=1
+        GROUP BY a.sku_id
+        ORDER BY a.rec_time desc, a.order_item_id desc
+    </select>
+
 </mapper>