

package com.lutao.cloud.oil.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.lutao.cloud.common.core.util.MessageInfo;
import com.lutao.cloud.oil.pojo.param.BaseParam;
import com.lutao.cloud.oil.pojo.vo.MapDisplayVO;
import com.lutao.cloud.oil.pojo.vo.PlatformInfoCountVO;
import com.lutao.cloud.oil.pojo.vo.SeaPlatformOverallSituationVO;
import com.lutao.entity.PlatformInfo;

import java.util.List;

/**
 * 平台详情
 *
 * @author guoyc
 * @date 2023-07-20 10:56:48
 */
public interface PlatformInfoService extends IService<PlatformInfo> {

    /**
     * 海上平台（设施）总体情况
     *
     * @param param 参数
     * @return {@link MessageInfo}<{@link SeaPlatformOverallSituationVO}>
     */
    MessageInfo<SeaPlatformOverallSituationVO> querySeaPlatformOverallSituation(BaseParam param);

    /**
     * 地图数据显示
     *
     * @param param 参数
     * @return {@link MessageInfo}<{@link List}<{@link MapDisplayVO}>>
     */
    MessageInfo<IPage<MapDisplayVO>> queryMapDisplay(Page page, BaseParam param);

    /**
     * 平台数量统计
     *
     * @param param param
     * @return {@link MessageInfo}<{@link PlatformInfoCountVO}>
     */
    MessageInfo<List<PlatformInfoCountVO>> queryPlatformNumber(BaseParam param);
}
