liusuyi
2025-11-18 5c2f353bfdaea493f043ea021c742f1b93bae46c
ard-admin/src/main/java/com/ard/web/controller/work/UavBaseController.java
@@ -1,13 +1,20 @@
package com.ard.web.controller.work;
import com.ard.common.core.controller.BaseController;
import com.ard.common.core.domain.AjaxResult;
import com.ard.common.core.page.TableDataInfo;
import com.ard.work.domain.dto.BoxHistoryDTO;
import com.ard.work.domain.dto.BoxPhotosDTO;
import com.ard.work.domain.dto.BoxSettingsDTO;
import com.ard.work.domain.entity.ArdDroneInfo;
import com.ard.work.domain.entity.ArdFlightTask;
import com.ard.work.domain.entity.ArdMedia;
import com.ard.work.domain.receiver.BoxHistoryReceiver;
import com.ard.work.domain.receiver.BoxPhotosReceiver;
import com.ard.work.domain.receiver.BoxInfoReceiver;
import com.ard.work.domain.receiver.BoxStreamUrlReceiver;
import com.ard.work.service.IArdFlightTaskService;
import com.ard.work.service.IArdMediaService;
import com.ard.work.service.ITyService;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSort;
@@ -16,6 +23,8 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import static com.ard.common.utils.PageUtils.startPage;
/**
 * UavBaseController
@@ -27,37 +36,60 @@
@ApiSort(value = 2)
@RequestMapping("/uav/base")
@RestController
public class UavBaseController {
public class UavBaseController extends BaseController {
    @Resource
    private ITyService tyService;
    @Resource
    private IArdFlightTaskService ardFlightTaskService;
    @Resource
    private IArdMediaService ardMediaService;
    @ApiOperation("获取天宇token信息")
    @ApiOperation("获取边缘服务器token信息")
    @ApiOperationSupport(order = 1)
    @GetMapping("/getToken")
    public AjaxResult getToken() {
        return AjaxResult.success(tyService.getAccessToken());
    @GetMapping("/getToken/{serverId}")
    public AjaxResult getToken(@PathVariable("serverId") String serverId) {
        return AjaxResult.success(tyService.getAccessToken(serverId));
    }
    @ApiOperation("获取天宇盒子列表")
    @ApiOperation("获取盒子列表")
    @ApiOperationSupport(order = 2)
    @GetMapping("/getBoxList")
    public AjaxResult getBoxList() {
        List<BoxInfoReceiver> BoxList = tyService.getBoxList();
        return AjaxResult.success(BoxList);
    public AjaxResult getBoxList(@RequestParam(required = false) String serverId) {
        if (serverId == null) {
            return AjaxResult.success(tyService.getBoxList());
        } else {
            return AjaxResult.success(tyService.getBoxList(serverId));
        }
    }
    @ApiOperation("获取飞行历史")
    @ApiOperationSupport(order = 3)
    @ApiOperationSupport(order = 4)
    @PostMapping("/getBoxHistory")
    public AjaxResult getBoxHistory(@RequestBody BoxHistoryDTO boxHistoryDTO) {
        List<BoxHistoryReceiver> boxHistory = tyService.getBoxHistory(boxHistoryDTO);
        return AjaxResult.success(boxHistory);
    }
    @ApiOperation("获取飞行架次")
    @ApiOperationSupport(order = 4)
    @GetMapping("/getFlightTask")
    public TableDataInfo getFlightTask(ArdFlightTask ardFlightTask) {
        startPage();
        List<ArdFlightTask> list = ardFlightTaskService.selectArdFlightTask(ardFlightTask);
        return getDataTable(list);
    }
    @ApiOperation("获取媒体数据")
    @ApiOperationSupport(order = 4)
    @GetMapping("/getMediaList")
    public TableDataInfo getMediaList(ArdMedia ardMedia) {
        startPage();
        List<ArdMedia> list = ardMediaService.selectArdMediaList(ardMedia);
        return getDataTable(list);
    }
    @ApiOperation("获取任务照片")
    @ApiOperationSupport(order = 4)
    @ApiOperationSupport(order = 5)
    @PostMapping("/getBoxPhotos")
    public AjaxResult getBoxPhotos(@RequestBody BoxPhotosDTO boxPhotosDTO) {
        List<BoxPhotosReceiver> boxPhotos = tyService.getBoxPhotos(boxPhotosDTO);
@@ -65,18 +97,28 @@
    }
    @ApiOperation("获取直播地址")
    @ApiOperationSupport(order = 5)
    @GetMapping("/getBoxList/{boxSn}")
    @ApiOperationSupport(order = 6)
    @GetMapping("/getBoxLiveUrl/{boxSn}")
    public AjaxResult getBoxLiveUrl(@PathVariable("boxSn") String boxSn) {
        BoxStreamUrlReceiver boxLiveUrl = tyService.getBoxLiveUrl(boxSn);
        return AjaxResult.success(boxLiveUrl);
    }
    @ApiOperation("修改云盒设置")
    @ApiOperationSupport(order = 7)
    @PostMapping("/updateBoxSettings")
    public AjaxResult updateBoxSettings(@RequestBody BoxSettingsDTO boxSettingsDTO) {
        Boolean state = tyService.updateBoxSettings(boxSettingsDTO);
        return AjaxResult.success(state);
    }
    @ApiOperation("根据[服务器id]获取边缘服务器盒子列表")
    @ApiOperationSupport(order = 8)
    @GetMapping("/getBoxSnToList/{id}")
    public TableDataInfo getBoxSnToList(@PathVariable("id") String id) {
        startPage();
        List<BoxInfoReceiver> boxList = tyService.getBoxSnToList(id);
        return getDataTable(boxList);
    }
}