package com.nantian.cloud.dbcapp.mapper.jly;

import com.nantian.cloud.dbcapp.vo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper
public interface EnergyInfoMapper {
    //同步在线采集新增计量器具信息，至应用分析系统
    void insertConfigureGauge(@Param("list") List<ConfigureGaugeVo> configureGaugeVos);

    //获取应用分析系统计量人员的企业编码
    List<String> getInfoEpc();

    //同步在线采集新增计量人员信息，至应用分析系统
    void insertCalculater(@Param("list") List<CompanyCalculaterVo> companyCalculaterVos);

    //同步在线采集新增计量设备信息，至应用分析系统
    void insertDevice(@Param("list") List<ConfigureDeviceVo> configureDeviceVos);

    void etlGauges(@Param("planId") String planId, @Param("epc") String epc);

    List<ConfigureGaugeVo> getGaugesByEtl(@Param("planId") String planId, @Param("epc") String epc);

    void etlCompanyCalculater(@Param("planId") String planId, @Param("epc") String epc);

    //获取应用分析系统计量器具引用id
    List<String> getIdsByGauge();

    //获取应用分析系统计量人员引用id
    List<String> getIdsByCalculater();

    //获取应用分析系统计量设备引用id
    List<String> getIdsByDevice();

    Integer selectToolByAreaAndIndustry(@Param("area")String area,@Param("industry")String industry);

    Map<Integer, Integer> getMeasureTol(String areaCode);

    Map<String, Integer> selectInstrumentsNum(String areaCode);

    Integer getSumTask(String areaCode);

    List<MobileTaskVO> getTaskList(@Param("name")String name, @Param("type")String type);

    List<MobileCompVO> getCompListByPlanId(String id);
}
