package cn.yw.video.videoalarm.dao;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import javax.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
import org.springframework.stereotype.Repository;
import com.ibatis.sqlmap.client.SqlMapClient;

import cn.base.dao.BaseSqlMapDAO;

@Repository("ywvideotaskrunresultDao")
public class YwvideotaskrunresultDao  extends BaseSqlMapDAO{

	/**
	 * 增加记录
	 */
	public void insert_Ywvideotaskrunresult(Map map) throws SQLException{
		this.insert("insert_Ywvideotaskrunresult",map);
	}
	
	/**
	 * 批处理增加记录
	 */
	public void batch_insert_Ywvideotaskrunresult(List batch) throws SQLException{
		this.insert("batch_insert_Ywvideotaskrunresult",batch);
	}
	 
	/**
	 * 修改记录
	 */
	public Integer update_Ywvideotaskrunresult(Map map) throws SQLException{
		return this.update("update_Ywvideotaskrunresult",map);
	}
	
	/**
	 * 删除记录
	 */
	public Integer delete_Ywvideotaskrunresult(Map map) throws SQLException{
		return this.delete("delete_Ywvideotaskrunresult",map);
	}
	
	/**
	 * 批处理删除记录
	 */
	
	public Integer batch_delete_Ywvideotaskrunresult(Map map) throws SQLException{
		return this.delete("batch_delete_Ywvideotaskrunresult",map);
	}
	
	/**
	 * 查询总数
	 */
	public Integer count_Ywvideotaskrunresult(Map map) throws SQLException{
		return (Integer)this.queryForObject("count_Ywvideotaskrunresult",map);
	}
	
	/**
	 * 查询列表记录
	 */
	
	public List<Map> query_Ywvideotaskrunresult(Map map) throws SQLException{
		return this.queryForPage("query_Ywvideotaskrunresult",map);
	}
	public List<Map> videoStatistics(Map map) throws SQLException{
		return this.queryForList("videoStatistics",map);
	}
	public List<Map> videoStatisticsLine(Map map) throws SQLException{
		if("1".equals(map.get("deviceType"))){
			if("1".equals(map.get("staticsType"))){
				return this.queryForList("videoStatisticsHour",map);
			}else if("2".equals(map.get("staticsType"))){
				return this.queryForList("videoStatisticsDay",map);
			}else{
				return this.queryForList("videoStatisticsMonth",map);
			}
		}else if("2".equals(map.get("deviceType"))){
			if("1".equals(map.get("staticsType"))){
				return this.queryForList("statisticsmachineHour",map);
			}else if("2".equals(map.get("staticsType"))){
				return this.queryForList("statisticsmachineDay",map);
			}else{
				return this.queryForList("statisticsmachineMonth",map);
			}
		}else{
			return null;
		}
		
	}
	
	/**
	 * 查询列表记录
	 */
	public Map get_Ywvideotaskrunresult(Map map) throws SQLException{
		return (Map) this.queryForObject("query_Ywvideotaskrunresult",map);
	}
}
