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

import java.util.List;

import android.database.Cursor;

import cn.net.caoyao.cpzshandset.bean.ActivateBean;

public interface ActivateWithPackDal {
	public int insertActivatePack(ActivateBean activateBean);
	public List<ActivateBean> queryAllActivatePackList();
	public List<ActivateBean> queryAllActivatePackListByASC();
	public ActivateBean getActivatePackBean(Cursor c);
	public ActivateBean queryActivatePackBeanById(int id);
	public void updateActivatePack(ActivateBean activateBean);
	public void delActivatePackById(ActivateBean activateBean);
	/**
	 * 根据激活id更新激活的错误码
	 * 
	 * @param trainInvoice
	 */
	public void updateActivatePackErrorById(int errorCode,int id);
	/**
	 * 修改激活历史数据的状态
	 * @param status
	 * @param errorCode
	 * @param id
	 */
	public void updateActivatePackErrorStatusById(int status,int errorCode, int id);
	/**
	 * 是否在别的打包中作为子标签使用
	 * @param labelId
	 * @return
	 */
	public boolean isSubLabelInOtherPack(String labelId);
	/**
	 * 在别的打包中，作为包标签存在
	 * @param labelId
	 * @return
	 */
	public boolean isPackageIdInOtherPack(String labelId,int id);
	/**
	 * 作为packageId存在于激活打包列表中
	 * @param labelId
	 * @return
	 */
	public boolean isPackageIdInAWithPack(String labelId);
	/**
	 * 作为packageId存在于激活打包列表中
	 * @param labelId
	 * @return
	 */
	public boolean isExitPackageIdInAWithPack(String startLabel, String endLabel);
	/**
	 * 该标签存在其他激活单中
	 * @param labelId
	 * @return
	 */
	boolean packageIdIsExitInOtherActivate(String labelId, int id, boolean isCreate);
	
}
