package com.huatek.busi.service;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

import com.huatek.busi.vo.BusiStabilityIndexVo;
import com.huatek.busi.vo.BusiStabilityVo;
import com.huatek.busi.vo.stability.BusiCapacitanceEquipmentImStabilityVo;
import com.huatek.busi.vo.stability.BusiLightningrodimStabilityVo;
import com.huatek.busi.vo.stability.BusiOilStabilityVo;
import com.huatek.busi.vo.stability.BusiSF6StabilityVo;

/**
 * 稳定性指标 Service
 *
 * @author anker_cheng
 * @date Jul 29, 2019 2:13:56 PM
 */
public interface BusiStabilityService {

   
	
	/** 
	* @Title: insertBusiStability 
	* @Description: 保存铁芯夹件稳定性指标 
	* @createDate: Aug 1, 2019 10:57:27 AM
	* @param    vo 
	* @return   Boolean    
	*/ 
	public Boolean insertIegcBusiStability(BusiStabilityVo vo);
	
	/** 
	* @Title: insertLightningrodImStability 
	* @Description: 保存避雷器稳定性指标 
	* @createDate: Aug 1, 2019 10:57:27 AM
	* @param    vo 
	* @return   Boolean    
	*/ 
	public Boolean insertLightningrodImStability( BusiLightningrodimStabilityVo vo);
	
	
	/** 
	* @Title: insertCapacitanceImStability 
	* @Description: 保存容性稳定性指标 
	* @createDate: Sep 18, 2019 1:44:17 PM
	* @param   vo
	* @return   Boolean    
	*/ 
	public Boolean insertCapacitanceImStability(BusiCapacitanceEquipmentImStabilityVo vo);
	
	
	/** 
	* @Title: insertSF6Stability 
	* @Description: TODO 
	* @createDate: Sep 18, 2019 2:09:50 PM
	* @param   保存SF6稳定性指标 
	* @return   Boolean    
	*/ 
	public Boolean insertSF6Stability(BusiSF6StabilityVo vo);

	
	
	/** 
	* @Title: findByEquipmentId 
	* @Description: 保存稳定性指标 
	* @createDate: Aug 1, 2019 10:57:27 AM
	* @param    sensorCode 
	* @return    List<BusiStabilityIndexVo>    
	*/ 
	public List<BusiStabilityIndexVo> findBySensorCode(String sensorCode);

	Map<String, Object> findStabilityMapBySensorCode(String sensorCode);

	BusiStabilityIndexVo findStabilityMapByCondition(String sensorCode,String indexType);
	/** 
	* @Title: getEquipmentData 
	* @Description: 获取稳定性数据
	* @createDate: Sep 29, 2019 3:50:51 PM
	* @param   
	* @return   List<?>    
	*/ 
	public List<?> getEquipmentData(String sensorCode, String status, String type, LocalDateTime begin,
			LocalDateTime end);

	
	/** 
	* @Title: getStabilityBySensorCodeAndStatus 
	* @Description: 根据传感器编码和运行状态获取数据 
	* @createDate: Sep 29, 2019 3:51:49 PM
	* @param   
	* @return   Map<String,Object>    
	*/ 
	Map<String, Object> getStabilityBySensorCodeAndStatus(String type, String sensorCode, String  runState);

    /**
     * 获取稳定性Map
     * 
     * @param sensorCode
     *            传感器编码
     * @param runState
     *            工作状态
     * @return map
     */
    Map<String, Object> getStabilityBySensorCodeAndStatus(String sensorCode, String runState);
    
    /** 
	* @Title: insertOilStability 
	* @Description: 保存油色谱稳定性 
	* @createDate: Dec 10, 2019 10:42:50 AM
	* @param   
	* @return   Boolean    
	* @throws 
	*/ 
	public Boolean insertOilStability(BusiOilStabilityVo vo);
}
