package cn.com.victorysoft.business.condition.dao;

import cn.com.victorysoft.business.condition.dto.AdjustPlanSummary;
import cn.com.victorysoft.business.condition.dto.AdjustPlanSummaryType;
import cn.com.victorysoft.business.condition.entity.AdjustPlan;
import cn.com.victorysoft.business.condition.entity.Gzlx;
import cn.com.victorysoft.business.condition.param.GzlxParam;
import cn.com.victorysoft.business.sys.param.UnitBlockMonthWellPageParam;
import cn.com.victorysoft.business.sys.param.UnitMonthParam;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface AdjustPlanDao {
    List<AdjustPlan> selectList(UnitBlockMonthWellPageParam param);

    List<Gzlx> selectGzlx(GzlxParam param);

    int deleteByPrimaryKey(AdjustPlan key);

    int deleteByMonth(String month);

    int insert(AdjustPlan record);

    AdjustPlan selectByPrimaryKey(AdjustPlan key);

    int updateByPrimaryKeySelective(AdjustPlan record);

    int updateByPrimaryKey(AdjustPlan record);

    AdjustPlan generateByWellname(@Param("wellname") String wellname, @Param("month") String month);

    List<AdjustPlanSummary> summary(@Param("param") UnitMonthParam param, @Param("unitColumn") String unitColumn);

    List<AdjustPlanSummaryType> summaryType(@Param("param") UnitMonthParam param, @Param("unitColumn") String unitColumn);
}