package com.ruoyi.web.modules.store.service;

import java.util.List;
import java.util.Map;
import com.ruoyi.web.modules.store.domain.BizShop;
import com.ruoyi.web.modules.store.dto.MerchantAccountUpdateDTO;
import com.ruoyi.web.modules.store.dto.ShopCreateDTO;
import com.ruoyi.web.modules.store.dto.ShopUpdateDTO;
import com.ruoyi.web.modules.store.vo.MerchantAccountManageVO;
import com.ruoyi.web.modules.store.vo.ShopDeleteCheckVO;
import com.ruoyi.web.modules.store.dto.SellerShopProfileDTO;
import com.ruoyi.web.modules.store.vo.SellerShopProfileVO;
import com.ruoyi.web.modules.store.vo.SellerShopEmployeeStatsVO;
import com.ruoyi.web.modules.store.vo.ShopDetailVO;
import com.ruoyi.web.modules.store.vo.ShopListVO;

/**
 * 店铺服务
 */
public interface IShopService
{
    List<ShopListVO> selectShopList(BizShop query);

    ShopDetailVO selectShopDetail(Long shopId);

    Long createShop(ShopCreateDTO dto, String operator);

    Map<String, Object> updateShop(ShopUpdateDTO dto, String operator);

    ShopDeleteCheckVO deleteCheck(Long shopId);

    void deleteShopByIds(Long[] shopIds, String operator);

    MerchantAccountManageVO getMerchantAccount(Long merchantId);

    Map<String, Object> updateMerchantAccount(Long merchantId, MerchantAccountUpdateDTO dto, String operator);

    SellerShopProfileVO selectSellerShopProfile(Long shopId);

    void updateSellerShopProfile(Long shopId, SellerShopProfileDTO dto, String operator);

    SellerShopEmployeeStatsVO selectSellerEmployeeStats(Long shopId);

}
