package com.mmc.pms.dao;

import com.mmc.pms.entity.*;
import com.mmc.pms.model.qo.GoodsInfoQO;
import com.mmc.pms.service.Impl.IndustryProductInventoryDO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Author small @Date 2023/5/16 15:14 @Version 1.0
 */
@Mapper
public interface MiniProgramProductMallDao {
  GoodsInfoDO getGoodsInfoByGoodsId(Integer goodsId);

  List<GoodsImgDO> listGoodsInfoByGoodsId(Integer goodsId);

  GoodsDetailDO getGoodsDetailByGoodsId(Integer goodsId);

  List<GoodsQaDO> listGoodsQaInfoByGoodsId(Integer goodsId);

  List<GoodsServiceDO> listGoodsServiceByGoodsId(Integer goodsId);

  List<MallProdSkuInfoDO> getMallProdInfoByGoodsId(Integer goodsId);

  List<MallProdSkuInfoSpecDO> listMallProdSkuInfoSpec(Integer goodsId);

  List<ProductSpecDO> listProductSpecInfo(List<Integer> collect);

  List<MallIndustrySkuInfoDO> getMallIndustrySkuInfo(Integer goodsInfoId);

  List<MallIndustrySkuInfoSpecDO> getIndustrySkuInfoSpec(Integer goodsInfoId);

  int countListGoodsByQO(GoodsInfoQO param);

  List<GoodsInfoDO> listGoodsByQO(GoodsInfoQO param);

  List<GoodsTypeDO> listIndustryIdBySort();

  List<IndustryProductInventoryDO> getIndustryProductInventory(Integer industrySpecId);

  List<InventorySpecDO> listInventorySpec(List<Integer> collect);

  ProductSpecDO getProductSpecDetail(Integer productSpecId);

  ProductSkuDO getProductSkuDetail(Integer productSkuId);
}
