package com.zcloud.fire.check.persistence.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.datascope.annotation.DataScope;
import com.jjb.saas.framework.datascope.annotation.DataScopes;
import com.zcloud.fire.check.persistence.dataobject.DataStatisticDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointStatisticDO;
import org.apache.ibatis.annotations.Mapper;

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

/**
 * web-infrastructure
 *
 * @Author zhaokai
 * @Date 2025-11-26 10:12:55
 */
@Mapper
@DataScopes({
        @DataScope(method = "getFirePointPage", menuPerms = ""),
})
public interface FirePointMapper extends BaseMapper<FirePointDO> {

    List<FirePointStatisticDO> countByFireRegionIdIn(List<String> fireRegionIds);

    IPage<FirePointDO> getFirePointPage(IPage<FirePointDO> iPage, Map<String, Object> params, String menuPerms);

    FirePointDO getInfoById(Long id);

    FirePointDO getInfoByUUId(String firePointId);

    List<DataStatisticDO> countByCorpinfoIds(List<Long> corpinfoIds);

    Long getFirePointCount(Map<String, Object> params);

    IPage<FirePointDeviceCountDO> listDevice(IPage<FirePointDeviceCountDO> iPage, Map<String, Object> params);
}

