package com.djhk.uav.uav.service;


import com.alibaba.fastjson.JSONObject;
import com.djhk.common.api.domain.vo.FileVo;
import com.djhk.common.core.domain.R;
import com.djhk.common.core.page.TableDataInfo;
import com.djhk.uav.airspace.domain.UavInfo;
import org.springframework.web.multipart.MultipartFile;

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

/**
 * 无人机信息维护   Service接口
 *
 * @author jiachengshuai
 * @date 2022-08-25
 */
public interface IUavInfoService
{

    /**
     * 查询信息维护列表
     *
     * @param uavInfo 信息维护
     * @return 信息维护集合
     */
    public R<List<UavInfo>>  selectUavInfoList(Map<String, Object> param);

    TableDataInfo selectUavTableData(Map<String, Object> param);

    R<UavInfo> selectUavInfoById(Long id);

    R insertUavInfo(UavInfo uavInfo);

    R updateUavInfo(UavInfo uavInfo);

    R deleteUavInfoByIds(Long[] ids);

    R<UavInfo> getInfoByUavNum(String uavNum);

    R<List<UavInfo>> getOnlineDocks();

    R<UavInfo> getUavOnline(String uavNum);

    void pushUavPose(JSONObject jsonObject);

    R getDocksInfo(String[] dockNums);

    R editInfo(Map<String,Object> map);

    FileVo uploadFile(MultipartFile file);
}
