package com.fr.tx.common.dao;

import java.util.List;

import org.apache.ibatis.session.SqlSession;

import com.fr.tx.common.entity.EquipAdrEntity;
import com.fr.tx.common.entity.GunEntity;

public interface GunDao {
	
    public SqlSession getSession();
    
    /**
     * 画面检索
     * @param en
     * @return 查询内容
     */
    public List<GunEntity> search();
    
    /**
     * 画面检索
     * @param en
     * @return 查询内容
     */
    public List<GunEntity> searchForWeb();
    
    /**
     * 画面检索
     * @param en
     * @return 查询内容
     */
    public List<GunEntity> searchStartGun(GunEntity en);
    
    
    public List<GunEntity> searchAll();

    /**
     * 主键加载详细
     * @param pk 主键
     * @return 查询内容
     */
    public GunEntity getDetailByPk(String pk);

    /**
     * 枪号加载详细
     * @param pk 枪号
     * @return 查询内容
     */
    public GunEntity getDetailByGunNo(String pk);
    
    /**
     * 获取分页总数量
     * @param en
     * @return count
     */
    public int getCount(GunEntity en);
    
    /**
     * 更新
     * @param en
     * @return result
     */
    public int update(GunEntity en);
    
    /**
     * 更新预警状态
     * @param en
     * @return result
     */
    public int updateStatusTime(GunEntity en);
    /**
     * 更新修正系数
     * @param en
     * @return result
     */
    public int updatereregas(GunEntity en);
    
    /**
     * 插入
     * @param en
     * @return result
     */
    public int insert(GunEntity en);
    
    /**
     * 删除
     * @param en
     * @return result
     */
    public int delete(GunEntity en);

    /**
     * 更新状态
     * @param en
     * @return result
     */
    public int updateStatus(GunEntity en);
    
    /**
     * 更新通讯状态
     * @param linken
     */

	public int updateLink(GunEntity linken);

	public List<GunEntity> getregas();

	/**
	 * 获取总数量
	 * @param condition
	 * @return
	 */
	public int getTotalCount(GunEntity condition);

	/**
	 * 获取详细
	 * @param condition
	 * @return
	 */
	public List<GunEntity> getLimitData(GunEntity condition);
	/**
	 * 获取枪数据
	 * @param condition
	 * @return
	 */
	public List<GunEntity> getGunData(GunEntity en);
    /**
     * 查询连续预警持续时间
     * @return result
     * */
    public List<GunEntity> searchYjtime(GunEntity en);
    /**
	 * 配置画面更新检查重复
	 * @param condition
	 * @return
	 */
	public List<GunEntity> checkAddr(GunEntity en);
    /**
     * 配置画面更新数据
     * @param addr 地址
     * @return result
     */
    public int save(GunEntity en);
}
