package com.nantian.cloud.dbcapp.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nantian.cloud.dbcapp.entity.ConfigureDataCollect;
import com.nantian.cloud.dbcapp.entity.ConfigureGaugeRelevance;
import com.nantian.cloud.dbcapp.vo.ConfigureGaugeVo;
import com.nantian.cloud.dbcapp.vo.RelevanceStateVo;

import java.util.List;


public interface ConfigureGaugeRelevanceService extends IService<ConfigureGaugeRelevance> {

    IPage<ConfigureGaugeVo> listState(Page page, String epc, String dataCode, String type);

    IPage<ConfigureGaugeRelevance> getList(Page page, String epc, String dataCode, String auditStatus);

    IPage<ConfigureGaugeVo> getGaugeByRelevance(Page page, String epc, String dataCode);

    IPage<ConfigureDataCollect> getConfigByRelevance(Page page, Long gaugeId);

    boolean updateDelete(List<Long> ids);

    List<RelevanceStateVo> relevanceState(String epc);

    void updateDeleteByEpcAndDataCode(String epc, String dataCode);

    IPage<ConfigureGaugeRelevance> listGroupByEpcAndDataCode(Page page, String epc, String dataCode, String auditStatus);

    boolean auditGroup(String epc, String dataCode, String auditStatus, String auditRemark, String username);

    int autoMatchRelevance();

    boolean updateMeterLevel(String enterpriseCode, String dataCode);
}
