package com.ruoyi.web.modules.home.mapper;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.ruoyi.web.modules.category.vo.CategoryVisibleChildVO;
import com.ruoyi.web.modules.home.dto.ShopProfileRowDTO;
import com.ruoyi.web.modules.home.vo.HomeHotGoodsVO;

/**
 * C 端店铺主页 Mapper
 */
public interface ShopAppMapper
{
    ShopProfileRowDTO selectProfileByShopId(@Param("shopId") Long shopId);

    List<CategoryVisibleChildVO> selectShopLevel2Tabs(@Param("shopId") Long shopId,
            @Param("level1Id") Long level1Id);

    List<HomeHotGoodsVO> selectShopGoods(@Param("shopId") Long shopId,
            @Param("shopCategoryId") Long shopCategoryId, @Param("keyword") String keyword);

    int countFollow(@Param("memberId") Long memberId, @Param("shopId") Long shopId);

    int insertFollow(@Param("memberId") Long memberId, @Param("shopId") Long shopId);

    int deleteFollow(@Param("memberId") Long memberId, @Param("shopId") Long shopId);

    int insertShopStats(@Param("shopId") Long shopId);

    int incrementFansCount(@Param("shopId") Long shopId);

    int decrementFansCount(@Param("shopId") Long shopId);
}
