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

import java.util.List;

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

@Repository
public interface ProcessActUserDAO {
	int insert(ProcessActUser entity);
	int update(ProcessActUser entity);
	int exist(String id);
	ProcessActUser get(String id);
	int delete(String id);
	List<ProcessActUser> list();
	List<ProcessActUser> findByActivityId(String activityId);
	List<String> findByActIdAndUserType(@Param("actId") String actId, @Param("userType") String userType);
	List<ProcessActUser> findItemByActIdAndUserType(@Param("actId") String actId, @Param("userType") String userType);
	List<ProcessActUser> findItemByActIdAndUserTypeAndSource(@Param("actId") String actId, @Param("userType") String userType,@Param("source") String source);
	List<String> findRelativePositionByActIdAndUserType(@Param("actId") String actId, @Param("userType") String userType);
	List<ProcessActUser> search(Map<String,Object> searchParams,List<Sort> sortList);

    List<ProcessActUser> findByActivityIdAndUserType(String activityId, String userType);
}