package com.unis.base.server.service;

import java.util.List;

import com.unis.base.common.vo.DSbxxsjyClassifyVO;
import com.unis.base.common.vo.DSbxxsjyQueryVO;
import com.unis.base.common.vo.DSbxxsjyVO;
import com.unis.base.common.vo.EquipmentRecordsVO;
import com.unis.base.server.entity.DSbxxsjyDO;


/**
 * @author huangxing
 * @version 1.0
 * @Title: DSbxxsjyService
 * @ProjectName baseservice
 * @Description:
 * @date 2019/7/22 17:47
 */

public interface DSbxxsjyService {

	/**
	 * 根据参数获取设备列表
	 * @param dSbxxsjyVO
	 * @return
	 */
	List<DSbxxsjyVO> getDSbxxsjyList(DSbxxsjyQueryVO dSbxxsjyQueryVO);

	/**
	 * @param dSbxxsjyVO
	 * @param pageNum
	 * @param pageSize
	 * @return 分页获取列表
	 */
	List<DSbxxsjyVO> getDSbxxsjyPage(DSbxxsjyQueryVO dSbxxsjyQueryVO, Integer pageNum, Integer pageSize);

	/**
	 * 根据参数获取设备列表
	 * @param jgId
	 * @return
	 */
	List<DSbxxsjyVO> getDSbxxsjyListByJgId(String jgId);

	/**
	 * 根据库点获取设备信息列表
	 * @param kddm
	 * @return
	 */
	List<DSbxxsjyVO> getEquipmentListByKddm(String kddm);

	/**
	 * 根据设备编号获取设备信息
	 * @param cfbh 设备编号
	 * @return
	 */
	DSbxxsjyDO getDSbxxsjyInfoBysbbh(String sbbh);

	/**
	 * 更新设备信息
	 * @param dSbxxsjyVO
	 * @return
	 */
	int update(DSbxxsjyVO dSbxxsjyVO);

	/**
	 * 带状态更新
	 * @param dSbxxsjyVO
	 * @return
	 */
	int equipmentUpdate(DSbxxsjyVO dSbxxsjyVO);

	/**
	 * 删除设备信息
	 * @param cfbh
	 * @return
	 */
	int delete(String sbbh);

	/**
	 * 根据条件删除设备列表
	 * @param dSbxxsjyClassifyVO
	 * @return
	 */
	int deleteList(DSbxxsjyClassifyVO dSbxxsjyClassifyVO);

	/**
	 * 添加设备信息
	 * @param dAjxxsjyVO
	 * @return
	 */
	int insert(DSbxxsjyVO dAjxxsjyVO);

	/**
	 * 更改备案状态
	 * @param equipmentRecordsVO
	 * @return
	 */
    Integer updateFilingStatus(EquipmentRecordsVO equipmentRecordsVO);

	/**
	 * 备案设备主表数据
	 * @param dSbxxsjyVO
	 * @return
	 */
	int updateFiling(DSbxxsjyVO dSbxxsjyVO);
}
