package com.ruoyi.tjfx.mapper;
import com.ruoyi.tjfx.entity.TjfxAnalysisDataDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;


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

@Mapper
public interface TjfxAnalysisDataMapper {

    List<Map<String, Object>> select(TjfxAnalysisDataDTO tjfxAnalysisDataDTO);



    List<Map<String, Object>> selectByShop(TjfxAnalysisDataDTO tjfxAnalysisDataDTO);




    List<Map<String, Object>> selectMonth(@Param("sql") String sql, @Param("productCodeList") List<String> productCodeList, @Param("brandList") List<String> brandList, @Param("shopNameList") List<String> shopNameList, @Param("customerNameList") List<String> customerNameList, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("category") String category);


    List<Map<String, Object>> selectByCustomer(@Param("productCodeList") List<String> productCodeList,
                                               @Param("brandList") List<String> brandList,
                                               @Param("shopNameList") List<String> shopNameList,
                                               @Param("customerNameList") List<String> customerNameList,
                                               @Param("startDate") String startDate,
                                               @Param("endDate") String endDate,
                                               @Param("category") String category,
                                               @Param("sql") String sql);

    List<Map<String, Object>> selectByProduct(@Param("productCodeList") List<String> productCodeList, @Param("brandList") List<String> brandList, @Param("shopNameList") List<String> shopNameList, @Param("customerNameList") List<String> customerNameList, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("category") String category, @Param("sql") String sql);

    List<Map<String, Object>> selectBySpecification(@Param("productCodeList") List<String> productCodeList, @Param("brandList") List<String> brandList, @Param("shopNameList") List<String> shopNameList, @Param("customerNameList") List<String> customerNameList, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("category") String category, @Param("sql") String sql);

    List<Map<String, Object>> selectByBrand(@Param("productCodeList") List<String> productCodeList, @Param("brandList") List<String> brandList, @Param("shopNameList") List<String> shopNameList, @Param("customerNameList") List<String> customerNameList, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("category") String category, @Param("sql") String sql);

    List<Map<String, Object>> selectByShopName(@Param("productCodeList") List<String> productCodeList, @Param("brandList") List<String> brandList, @Param("shopNameList") List<String> shopNameList, @Param("customerNameList") List<String> customerNameList, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("category") String category, @Param("sql") String sql);













}
