package com.doumee.dao.business;
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.doumee.dao.business.model.Goods;
|
import com.doumee.dao.web.request.goods.GoodsRequest;
|
import com.doumee.dao.web.response.goods.GoodsInfoResponse;
|
import com.github.yulichang.base.mapper.MPJJoinMapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
/**
|
* @author 江蹄蹄
|
* @date 2023/03/21 15:48
|
*/
|
public interface GoodsMapper extends MPJJoinMapper<Goods> {
|
|
|
|
@Select(" select g.* , " +
|
"(( select count(1) from goodsorder_detail gd inner join goods_sku gs on gd.GOODS_SKU_ID = gs.id where gs.GOODS_ID = g.`id` )+ g.SALENUM) as realSaleNum ," +
|
" ifnull(( select min(gs.PRICE) from goods_sku gs where gs.GOODS_ID = g.id ),0) as minPrice " +
|
" from goods g " +
|
" ${ew.customSqlSegment} ")
|
IPage<GoodsInfoResponse> goodsPage(IPage<GoodsRequest> page, @Param(Constants.WRAPPER) Wrapper wrapper);
|
|
|
@Select(" select g.* , " +
|
"(( select count(1) from goodsorder_detail gd inner join goods_sku gs on gd.GOODS_SKU_ID = gs.id where gs.GOODS_ID = g.`id` )+ g.SALENUM) as realSaleNum ," +
|
" ifnull(( select min(gs.PRICE) from goods_sku gs where gs.GOODS_ID = g.id ),0) as minPrice " +
|
" from goods g " +
|
" where g.ISDELETED = 0 and g.id = #{id} ")
|
GoodsInfoResponse getGoodsInfo(@Param("id") Integer id);
|
|
}
|