package cn.net.caoyao.cpzshandset.db.presenter;

import java.util.List;

import android.database.Cursor;
import cn.net.caoyao.cpzshandset.bean.UploadBean;

public interface UploadStatusDal {

	/**
	 * 插入提交状态到数据库
	 * @param b
	 */
	void insertUploadStatus(UploadBean b);
	/**
	 * 通过实践信息删除上传数据
	 * @param date
	 */
	void deleteUploadStatusByDate(String date);
	/**
	 * 查询所有的上传数据
	 * @param date
	 * @return
	 */
	List<UploadBean> queryAllUploadStatus(String date);
	/**
	 * 删除七天前的数据
	 */
	void delete7DaysBefore();
	/**
	 * 查询最近七天的提交状态信息
	 * @return
	 */
	List<UploadBean> queryUploadStatusFor7Days();
	/**
	 * 删除所有的提交状态信息
	 */
	void deleteAllUploadStatus();
	UploadBean getUploadBean(Cursor c);
	/**
	 * 查询七天内存在操作的日期
	 * @return
	 */
	List<String> queryUploadDateFor7Days();
	
	/**
	 * 根据日期和操作查询标签数量
	 * @param option_type
	 * @param date
	 * @return
	 */
	public int queryLabelCountByOptionAndDate(int option_type,String date);
	
	/**
	 * 插入提交状态的错误码
	 * @param b
	 */
	void insertErrorUploadStatus(int option_type,int error_code);
	/**
	 * 查询某个操作的错误码
	 * @param option_type
	 * @return
	 */
    UploadBean queryErrorUploadByOptionType(int option_type);
    
    void deleteErrorUploadStatusByOptionType(int option_type);
	
}
