/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.oa.dao;

import com.jeeplus.common.persistence.CrudDao;
import com.jeeplus.common.persistence.annotation.MyBatisDao;
import com.jeeplus.modules.oa.entity.OaAttendance;
import com.jeeplus.modules.oa.entity.OaAttendanceRule;
import com.jeeplus.modules.sys.entity.Office;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 考勤表DAO接口
 * @author 孟祥越
 * @version 2017-05-10
 */
@MyBatisDao
public interface OaAttendanceDao extends CrudDao<OaAttendance> {

	public List<OaAttendanceRule> findListByrule(OaAttendanceRule rule);
	
	public List<Office> findListByCompany(Office company);

	public List<OaAttendance> findByCompany(OaAttendance oaAttendance);

	public List<OaAttendance> findListByUser(OaAttendance oaAttendance);

    List getCreateDateList(Map<String, String> map);

    List<OaAttendance> findByCompany2(Map<String, Object> map);

    List<String> getCompanyList();

	List<OaAttendance> getOaAttendanceList(@Param("companyId") String companyId, @Param("signDate") Date signDate);

	OaAttendance getOaAttendanceByCompanyIdAndUserIdAndSignDate(Map<String, Object> map);

	List getCreateDateList1(Map<String, String> map);

	List<OaAttendance> findByCompany1(Map<String, String> map);
	public List getCreateDateListAll(Map<String,String> map);
	public List findByCompanyAll(Map<String,String> map);
	public List<OaAttendance> findByManage(Map<String,Object> map);
	public List<OaAttendance> findByCompanySelf(Map<String,Object> map);
}