package com.huimv.management.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.huimv.common.utils.PageUtils;
import com.huimv.management.entity.YearPigBaseEntity;
import com.huimv.management.entity.vo.CountOut;

import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.InvocationTargetException;
import java.rmi.MarshalledObject;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 年猪基本
 *
 * @author yinhao
 * @email yinhao@163.com
 * @date 2021-05-07 15:32:42
 */
public interface YearPigBaseService extends IService<YearPigBaseEntity> {

    PageUtils queryPage(Map<String, Object> params);



    //查一只猪的上下两代
    Map<String ,Object> queryPageByRelationship(Map<String, Object> params) throws IllegalAccessException, NoSuchMethodException, InvocationTargetException;









    void batchLairage(String[] eartags,Integer periodId);



    void such(Integer[] ids);

    Integer findByoutFenceStatus(int i, Integer farmId);

    List<CountOut> suchStatistics(String startTime, String endTime, Integer farmId);

    List<CountOut> suchStatisteicsMonth(String startTime, String endTime, int parseInt);

    /**
     * 转栏
     * @param map
     * @param request
     */
    void transferPeriod(HashMap<String, Object> map, HttpServletRequest request);

    Integer countByPeriodId(Integer currentPeriodId);

    PageUtils fattenList(Map<String, Object> params);

    /**
     * 手机端转栏
     * @param map
     * @param request
     */
    void transferPeriodClient(HashMap<String, Object> map, HttpServletRequest request);

    Integer findByFosterStatus(int i, Integer formFarmId);

    void suchApp(String[] ids);

    HashMap<String, Integer> statisticsAll(Map<String, Object> params);
}

