package com.hai.service;

import com.github.pagehelper.PageInfo;
import com.hai.entity.HighMerchantStore;
import com.hai.model.GasSelfBuiltStationModel;
import com.hai.model.HighMerchantStoreModel;

import java.util.List;
import java.util.Map;

/**
 * @Author 胡锐
 * @Description 门店服务
 * @Date 2021/3/9 20:15
 **/
public interface HighMerchantStoreService {
 
    /**
     * @Author 胡锐
     * @Description 增加门店
     * @Date 2021/3/9 20:26
     **/
    void insertMerchantStore(HighMerchantStoreModel highMerchantStore) throws Exception;

    /**
     * @Author 胡锐
     * @Description 批量增加门店
     * @Date 2021/3/26 20:20
     **/
    void insertMerchantStoreList(List<HighMerchantStoreModel> highMerchantStoreList) throws Exception;

    /**
     * @Author 胡锐
     * @Description 修改门店
     * @Date 2021/3/12 22:15
     **/
    void updateMerchantStore(HighMerchantStoreModel highMerchantStore) throws Exception;

    /**
     * 修改门店
     * @param highMerchantStore
     * @throws Exception
     */
    void updateMerchantStoreDetail(HighMerchantStore highMerchantStore) throws Exception;

    /**
     * @Author 胡锐
     * @Description 删除门店
     * @Date 2021/3/10 22:24
     **/
    void deleteMerchantStore(Long id);

    /**
     * @Author 胡锐
     * @Description 根据id查询
     * @Date 2021/3/9 20:26
     **/
    HighMerchantStoreModel getMerchantStoreById(Long id);

    /**
     * 根据key 查询
     * @param storeKey
     * @return
     */
    HighMerchantStoreModel getMerchantStoreByKey(String storeKey);

    /**
     *
     * @param storeKey
     * @return
     */
    HighMerchantStore getMerStoreDetailByKey(String storeKey);

    /**
     * 根据查询
     * @param id
     * @return
     */
    HighMerchantStore getDetailById(Long id);

    /**
     * 查询门店列表
     * @param merId
     * @return
     */
    List<HighMerchantStore> getStoreListByMer(Long merId);

    /**
     * @Author 胡锐
     * @Description 查询门店列表
     * @Date 2021/3/9 20:26
     **/
    List<HighMerchantStore> getMerchantStoreList(Map<String, Object> map);

    /**
     * @Author 胡锐
     * @Description 查询门店列表(计算精度)
     * @Date 2021/4/1 20:34
     **/
    List<HighMerchantStore> getStoreListByLongitude(Map<String, Object> map);

    /**
     * 查询自建站 油站
     * @param map
     * @return
     */
    List<GasSelfBuiltStationModel> getGasSelfBuiltStationList(Map<String, Object> map);
}
