package com.project.zcustom.mapper.unit;

import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.project.zcustom.domain.addional.LargeBuilding;
import com.project.zcustom.domain.addional.LargeBuildingControl;
import com.project.zcustom.domain.addional.LargeBuildingControlAmmeterDetail;
import com.project.zcustom.domain.addional.LargeBuildingLoadDetail;

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

@InterceptorIgnore(blockAttack = "true")
public interface PlatBuildingMapper {
    public int getCount();

    public String getPowerAndWaterMonth();

    public String getAirCondition();

    public String getTarget();

    public String useElectricity();

    public String greenElectricity();

    public String carbon();

    public String energyYear();

    public String powerYear();

    public String waterYear();

    public String frequency();

    public String patrol();

    public String patrolPoint();




    LargeBuildingControl getThisWeekElectricity();

    String getControlElevator();
    String getThisAmmeterDetail(String type);
    String getTodayElectricity();
    LargeBuildingControl getMonthElectricity();
    LargeBuildingControl getRoomLoad();
    LargeBuildingControl getWarnDevice();

    List<LargeBuildingLoadDetail> getRoomLoadDetail(Long kind, Long state);

    LargeBuildingControl getAbnormalPoint();
    String getWarnEvent();
    LargeBuildingControl getWarnState();

    String getPhotovoltaicPower();




    public int updatePowerAndWaterMonth(String res);

    public int updateAirCondition(String res);

    public int updateTarget(String res);

    public int updateUseElectricity(String res);

    public int updateGreenElectricity(String res);

    public int updateCarbon(String res);

    public int updateEnergyYear(String res);

    public int updatePowerYear(String res);

    public int updateWaterYear(String res);

    public int updateFrequency(String res);

    public int updatePatrol(String res);

    public int updatePatrolPoint(String res);

    public int updateBuilding(LargeBuilding largeBuilding);
    public int insertBuilding(LargeBuilding largeBuilding);

    public int getExist();
    public int updateAirNum(Long num);
    public Long getAirNum();
    public int addBuildingControl(LargeBuildingControl largeBuildingControl);

    public void deleteAmmeterDetails();
    public int addAmmeterDetails(List<LargeBuildingControlAmmeterDetail> list);
    public int updateBuildingControl(LargeBuildingControl largeBuildingControl);

    public void deleteLoadDetails();
    int addLoadDetails(List<LargeBuildingLoadDetail> list);
}
