添加controller层定义

This commit is contained in:
孙小云 2026-01-20 13:20:39 +08:00
parent 4a2a6c3c0a
commit aa328169e3
12 changed files with 342 additions and 0 deletions

View File

@ -0,0 +1,37 @@
package com.ruoyi.device.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.device.api.domain.AircraftDetailVO;
import com.ruoyi.device.service.api.IAircraftService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* 无人机Controller
*
* @author ruoyi
* @date 2026-01-20
*/
@RestController
@RequestMapping("/aircraft")
public class AircraftController extends BaseController
{
@Autowired
private IAircraftService aircraftService;
/**
* 查看无人机详情
*
* @param aircraftId 无人机ID
* @return 无人机详情
*/
@InnerAuth
@GetMapping("/detail/{aircraftId}")
public R<AircraftDetailVO> getAircraftDetail(@PathVariable("aircraftId") Long aircraftId)
{
AircraftDetailVO aircraftDetail = aircraftService.getAircraftDetail(aircraftId);
return R.ok(aircraftDetail);
}
}

View File

@ -0,0 +1,55 @@
package com.ruoyi.device.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.device.api.domain.DockDetailVO;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.service.api.IDockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 机场Controller
*
* @author ruoyi
* @date 2026-01-20
*/
@RestController
@RequestMapping("/dock")
public class DockController extends BaseController
{
@Autowired
private IDockService dockService;
/**
* 搜索机场
*
* @param dockStatus 机场状态
* @param dockId 机场ID
* @return 机场列表
*/
@InnerAuth
@GetMapping("/search")
public R<List<DockVO>> searchDocks(@RequestParam(required = false) String dockStatus, @RequestParam(required = false) Long dockId)
{
List<DockVO> dockList = dockService.searchDocks(dockStatus, dockId);
return R.ok(dockList);
}
/**
* 查看机场详情
*
* @param dockId 机场ID
* @return 机场详情
*/
@InnerAuth
@GetMapping("/detail/{dockId}")
public R<DockDetailVO> getDockDetail(@PathVariable("dockId") Long dockId)
{
DockDetailVO dockDetail = dockService.getDockDetail(dockId);
return R.ok(dockDetail);
}
}

View File

@ -0,0 +1,99 @@
package com.ruoyi.device.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.api.domain.GroupVO;
import com.ruoyi.device.service.api.IGroupService;
import com.ruoyi.device.service.dto.GroupDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 分组Controller
*
* @author ruoyi
* @date 2026-01-20
*/
@RestController
@RequestMapping("/group")
public class GroupController extends BaseController
{
@Autowired
private IGroupService groupService;
/**
* 创建分组
*
* @param groupVO 分组信息
* @return 分组ID
*/
@InnerAuth
@PostMapping("/create")
public R<Long> createGroup(@RequestBody GroupVO groupVO)
{
GroupDTO dto = new GroupDTO();
dto.setGroupName(groupVO.getGroupName());
Long groupId = groupService.createGroup(dto);
return R.ok(groupId);
}
/**
* 删除分组
*
* @param groupId 分组ID
* @return 结果
*/
@InnerAuth
@DeleteMapping("/delete/{groupId}")
public R<Void> deleteGroup(@PathVariable("groupId") Long groupId)
{
groupService.deleteGroup(groupId);
return R.ok();
}
/**
* 切换机场所在的分组
*
* @param dockId 机场ID
* @param groupId 分组ID
* @return 结果
*/
@InnerAuth
@PutMapping("/switch/{dockId}/{groupId}")
public R<Void> switchDockGroup(@PathVariable("dockId") Long dockId, @PathVariable("groupId") Long groupId)
{
groupService.switchDockGroup(dockId, groupId);
return R.ok();
}
/**
* 查看分组下的机场
*
* @param groupId 分组ID
* @return 机场列表
*/
@InnerAuth
@GetMapping("/docks/{groupId}")
public R<List<DockVO>> getDocksByGroupId(@PathVariable("groupId") Long groupId)
{
List<DockVO> dockList = groupService.getDocksByGroupId(groupId);
return R.ok(dockList);
}
/**
* 查看所有分组
*
* @return 分组ID列表
*/
@InnerAuth
@GetMapping("/list")
public R<List<Long>> getAllGroupIds()
{
List<Long> groupIds = groupService.getAllGroupIds();
return R.ok(groupIds);
}
}

View File

@ -0,0 +1,11 @@
package com.ruoyi.device.controller.convert;
/**
* 无人机Controller转换器
*
* @author ruoyi
* @date 2026-01-20
*/
public class AircraftControllerConvert
{
}

View File

@ -0,0 +1,11 @@
package com.ruoyi.device.controller.convert;
/**
* 机场Controller转换器
*
* @author ruoyi
* @date 2026-01-20
*/
public class DockControllerConvert
{
}

View File

@ -0,0 +1,11 @@
package com.ruoyi.device.controller.convert;
/**
* 分组Controller转换器
*
* @author ruoyi
* @date 2026-01-20
*/
public class GroupControllerConvert
{
}

View File

@ -1,5 +1,6 @@
package com.ruoyi.device.service.api; package com.ruoyi.device.service.api;
import com.ruoyi.device.api.domain.AircraftDetailVO;
import com.ruoyi.device.service.dto.AircraftDTO; import com.ruoyi.device.service.dto.AircraftDTO;
import java.util.List; import java.util.List;
@ -26,4 +27,12 @@ public interface IAircraftService
* @return 无人机 * @return 无人机
*/ */
AircraftDTO selectAircraftByAircraftId(Long aircraftId); AircraftDTO selectAircraftByAircraftId(Long aircraftId);
/**
* 查看无人机详情
*
* @param aircraftId 无人机ID
* @return 无人机详情
*/
AircraftDetailVO getAircraftDetail(Long aircraftId);
} }

View File

@ -1,5 +1,7 @@
package com.ruoyi.device.service.api; package com.ruoyi.device.service.api;
import com.ruoyi.device.api.domain.DockDetailVO;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.service.dto.DockDTO; import com.ruoyi.device.service.dto.DockDTO;
import java.util.List; import java.util.List;
@ -26,4 +28,21 @@ public interface IDockService
* @return 机场 * @return 机场
*/ */
DockDTO selectDockByDockId(Long dockId); DockDTO selectDockByDockId(Long dockId);
/**
* 搜索机场
*
* @param dockStatus 机场状态
* @param dockId 机场ID
* @return 机场列表
*/
List<DockVO> searchDocks(String dockStatus, Long dockId);
/**
* 查看机场详情
*
* @param dockId 机场ID
* @return 机场详情
*/
DockDetailVO getDockDetail(Long dockId);
} }

View File

@ -1,5 +1,7 @@
package com.ruoyi.device.service.api; package com.ruoyi.device.service.api;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.api.domain.GroupVO;
import com.ruoyi.device.service.dto.GroupDTO; import com.ruoyi.device.service.dto.GroupDTO;
import java.util.List; import java.util.List;
@ -58,4 +60,42 @@ public interface IGroupService
* @return 结果 * @return 结果
*/ */
int deleteGroupByGroupIds(Long[] groupIds); int deleteGroupByGroupIds(Long[] groupIds);
/**
* 创建分组
*
* @param groupDTO 分组信息
* @return 分组ID
*/
Long createGroup(GroupDTO groupDTO);
/**
* 删除分组
*
* @param groupId 分组ID
*/
void deleteGroup(Long groupId);
/**
* 切换机场所在的分组
*
* @param dockId 机场ID
* @param groupId 分组ID
*/
void switchDockGroup(Long dockId, Long groupId);
/**
* 查看分组下的机场
*
* @param groupId 分组ID
* @return 机场列表
*/
List<DockVO> getDocksByGroupId(Long groupId);
/**
* 查看所有分组
*
* @return 分组ID列表
*/
List<Long> getAllGroupIds();
} }

View File

@ -1,5 +1,6 @@
package com.ruoyi.device.service.impl; package com.ruoyi.device.service.impl;
import com.ruoyi.device.api.domain.AircraftDetailVO;
import com.ruoyi.device.domain.api.IAircraftDomain; import com.ruoyi.device.domain.api.IAircraftDomain;
import com.ruoyi.device.domain.model.Aircraft; import com.ruoyi.device.domain.model.Aircraft;
import com.ruoyi.device.service.api.IAircraftService; import com.ruoyi.device.service.api.IAircraftService;
@ -36,4 +37,10 @@ public class AircraftServiceImpl implements IAircraftService
Aircraft model = aircraftDomain.selectAircraftByAircraftId(aircraftId); Aircraft model = aircraftDomain.selectAircraftByAircraftId(aircraftId);
return AircraftServiceConvert.toDTO(model); return AircraftServiceConvert.toDTO(model);
} }
@Override
public AircraftDetailVO getAircraftDetail(Long aircraftId)
{
return null;
}
} }

View File

@ -1,5 +1,7 @@
package com.ruoyi.device.service.impl; package com.ruoyi.device.service.impl;
import com.ruoyi.device.api.domain.DockDetailVO;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.domain.api.IDockDomain; import com.ruoyi.device.domain.api.IDockDomain;
import com.ruoyi.device.domain.model.Dock; import com.ruoyi.device.domain.model.Dock;
import com.ruoyi.device.service.api.IDockService; import com.ruoyi.device.service.api.IDockService;
@ -36,4 +38,16 @@ public class DockServiceImpl implements IDockService
Dock model = dockDomain.selectDockByDockId(dockId); Dock model = dockDomain.selectDockByDockId(dockId);
return DockServiceConvert.toDTO(model); return DockServiceConvert.toDTO(model);
} }
@Override
public List<DockVO> searchDocks(String dockStatus, Long dockId)
{
return null;
}
@Override
public DockDetailVO getDockDetail(Long dockId)
{
return null;
}
} }

View File

@ -1,5 +1,6 @@
package com.ruoyi.device.service.impl; package com.ruoyi.device.service.impl;
import com.ruoyi.device.api.domain.DockVO;
import com.ruoyi.device.domain.api.IGroupDomain; import com.ruoyi.device.domain.api.IGroupDomain;
import com.ruoyi.device.domain.model.Group; import com.ruoyi.device.domain.model.Group;
import com.ruoyi.device.service.api.IGroupService; import com.ruoyi.device.service.api.IGroupService;
@ -62,4 +63,32 @@ public class GroupServiceImpl implements IGroupService
{ {
return groupDomain.deleteGroupByGroupIds(groupIds); return groupDomain.deleteGroupByGroupIds(groupIds);
} }
@Override
public Long createGroup(GroupDTO groupDTO)
{
return null;
}
@Override
public void deleteGroup(Long groupId)
{
}
@Override
public void switchDockGroup(Long dockId, Long groupId)
{
}
@Override
public List<DockVO> getDocksByGroupId(Long groupId)
{
return null;
}
@Override
public List<Long> getAllGroupIds()
{
return null;
}
} }