package com.zhyc.module.dairyProducts.mapper;

import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis;
import org.apache.ibatis.annotations.Param;

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

public interface NpSheepMilkAnalysisMapper {

    /**
     * 按筛选天数screenDays统计并返回所有羊只的奶产量分析
     */
    List<NpSheepMilkAnalysis> selectAnalysisForExport(@Param("screenDays") Integer screenDays);

    /**
     * 根据羊只ID查询羊只奶产量分析信息，返回Map结构
     */
    Map<String, Object> selectNpSheepMilkAnalysisBySheepId(@Param("sheepId") String sheepId);

    /**
     * 根据管理耳标筛选，返回distinct的sheepId列表
     * 修改处：参数改为对象，支持 allEarNumbers
     */
    List<String> selectDistinctSheepIds(NpSheepMilkAnalysis analysis);

    /**
     * 修改处：新增耳号模糊查询接口
     */
    List<String> searchEarNumbers(@Param("query") String query);

    /**
     * 根据羊只ID查询羊只档案信息，返回Map结构
     */
    Map<String, Object> selectSheepFileBySheepId(@Param("sheepId") String sheepId);

    /**
     * 根据羊只ID查询挤奶班次数据，返回List<Map>
     */
    List<Map<String, Object>> selectMilkRecordsBySheepId(@Param("sheepId") String sheepId);

    /**
     * 导出奶产量分析记录
     */
    List<NpSheepMilkAnalysis> selectNpSheepMilkAnalysisForExport(NpSheepMilkAnalysis analysis);

}