package com.jpsoft.shinestar.modules.base.dao;

import java.math.BigDecimal;
import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.jpsoft.shinestar.modules.base.entity.ApplicationExamine;
import java.util.Map;
import com.jpsoft.shinestar.modules.common.dto.Sort;

@Repository
public interface ApplicationExamineDAO {
	int insert(ApplicationExamine entity);
	int update(ApplicationExamine entity);
	int exist(String id);
	ApplicationExamine get(String id);
	int delete(String id);
	List<ApplicationExamine> list();
	List<ApplicationExamine> search(Map<String, Object> searchParams, List<Sort> sortList);

    List<ApplicationExamine> findByApplicationCompanyAndRole(@Param("applicationCompanyId") String applicationCompanyId, @Param("applicationRoleId") String applicationRoleId);

    List<ApplicationExamine> findByApplicationCompanyAndRoleAndType(@Param("companyId")String companyId, @Param("personRoleId")String personRoleId,@Param("type") String type);

    List<ApplicationExamine> findByApplicationCompanyAndRoleAndTypeAndDays(String companyId, String personRoleId, String type, Integer level, BigDecimal days);
}