package com.ruoyi.demo.service;


import com.github.pagehelper.PageInfo;

import com.ruoyi.demo.entity.BrandCityTier;
import com.ruoyi.demo.entity.bo.*;
import com.ruoyi.demo.entity.vo.BrandEvolveVo;
import com.ruoyi.demo.entity.vo.ListQueryBody;
import com.ruoyi.demo.entity.vo.OpcloseTimeVo;
import com.ruoyi.demo.entity.vo.TimeVo;

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

public interface BrandService {
    List<BrandSearch> searchByLikeName(String text);

    BrandInfo searchByBrandId(String brandId, String userId);

    BrandProperty searchPropertyByBrandId(String brandId);

    List<BrandSimilar> searchSimilarByBrandId(String brandId);

    List<BrandStatus> searchStatusByBrandId(String brandId);

    BrandDistribution searchDistributionByBrandId(String brandId);

    List<BrandProvinceBo> searchProvinceByBrandId(String brandId);

    BrandDisCloud searchDisCloudByBrandId(String brandId);

    PageInfo<List<BrandSearch>> searchListByMulti(ListQueryBody body, String userId);

    List<BrandTotal> searchTotal(Integer pageSize);

    List<BrandGeoLabelBo> searchGeoLabel(String brandId);

    List<BrandEvolveVo> searchEvolveByMulti(List<String> addrCodes, List<String> typeCodes, List<String> brandIds);

    Map<String, List<BrandEvolveVo>> searchEvolveByMulti2Map(List<String> addrCodes, List<String> typeCodes, List<String> brandIds);

    List<OpcloseTimeVo> searchOpenTims(List<String> brandIds, List<String> addrCodes, List<String> typeCodeBys);

    List<OpcloseTimeVo> searchCloseTims(List<String> brandIds, List<String> addrCodes, List<String> typeCodeBys);

    List<BrandCityTier> getCityTier(String brandId);

    List<TimeVo> searchNew(List<String> addrCodes, List<String> industryCodes);
}
