package com.ruoyi.predict.mapper;

import com.ruoyi.predict.domain.Projectplan;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * ProjectplanMapper接口
 * 
 * @author hlf
 * @date 2022-08-30
 */
public interface ProjectplanMapper 
{
    /**
     * 查询Projectplan
     * 
     * @param id ProjectplanID
     * @return Projectplan
     */
    public Projectplan selectProjectplanById(Long id);

    /**
     * 查询Projectplan列表
     * 
     * @param projectplan Projectplan
     * @return Projectplan集合
     */
    public List<Projectplan> selectProjectplanList(Projectplan projectplan);

    /**
     * 新增Projectplan
     * 
     * @param projectplan Projectplan
     * @return 结果
     */
    public int insertProjectplan(Projectplan projectplan);

    /**
     * 修改Projectplan
     * 
     * @param projectplan Projectplan
     * @return 结果
     */
    public int updateProjectplan(Projectplan projectplan);

    /**
     * 删除Projectplan
     * 
     * @param id ProjectplanID
     * @return 结果
     */
    public int deleteProjectplanById(Long id);

    /**
     * 批量删除Projectplan
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteProjectplanByIds(String[] ids);

    Long selectNewData();

    int checkProjectplanUnique(@Param("windpower") Long windpower, @Param("projectid") String projectid, @Param("year") Long year, @Param("month") Long month);

    List<Projectplan> selectProjectplan(@Param("windplantNo") Long windplantNo, @Param("year") Long year, @Param("month") Long month);

    List<Projectplan> selectProjectplanByYear(@Param("windplantNo") Long windplantNo, @Param("year") Long year);

    List<Projectplan> selectProjectplanByProjectNo(@Param("windplantNo") Long windplantNo, @Param("projectid") String projectid, @Param("year") Long year, @Param("month") Long month);
}
