package com.ard.work.point.tiles3d.controller; import java.util.List; import jakarta.servlet.http.HttpServletResponse; import com.ard.common.core.domain.R; import com.ard.common.security.annotation.InnerAuth; import com.ard.work.point.tiles3d.mapper.ArdTiles3dMapper; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.ard.common.log.annotation.Log; import com.ard.common.log.enums.BusinessType; import com.ard.common.security.annotation.RequiresPermissions; import com.ard.work.api.domian.ArdTiles3d; import com.ard.work.point.tiles3d.service.IArdTiles3dService; import com.ard.common.core.web.controller.BaseController; import com.ard.common.core.web.domain.AjaxResult; import com.ard.common.core.utils.poi.ExcelUtil; import com.ard.common.core.web.page.TableDataInfo; /** * 三维实景Controller * * @author ruoyi * @date 2024-09-11 */ @Tag(name = "三维实景") @RestController @RequestMapping("/tiles3d") public class ArdTiles3dController extends BaseController { @Autowired private IArdTiles3dService ardTiles3dService; @Autowired private ArdTiles3dMapper ardTiles3dMapper; /** * 查询三维实景列表 */ @Operation(summary = "查询三维实景列表") @RequiresPermissions("point:tiles3d:list") @GetMapping("/list") public TableDataInfo list(ArdTiles3d ardTiles3d) { startPage(); List list = ardTiles3dService.selectArdTiles3dList(ardTiles3d); return getDataTable(list); } /** * 查询三维实景列表 */ @InnerAuth @GetMapping("/list/all/{deptId}") public R> listAll(@PathVariable("deptId") Long deptId) { ArdTiles3d ardTiles3d = new ArdTiles3d(); ardTiles3d.setDeptId(deptId); List list = ardTiles3dMapper.selectArdTiles3dListByDept(ardTiles3d); return R.ok(list); } /** * 导出三维实景列表 */ @Operation(summary = "导出三维实景列表") @RequiresPermissions("point:tiles3d:export") @Log(title = "三维实景", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, ArdTiles3d ardTiles3d) { List list = ardTiles3dService.selectArdTiles3dList(ardTiles3d); ExcelUtil util = new ExcelUtil(ArdTiles3d.class); util.exportExcel(response, list, "三维实景数据"); } /** * 获取三维实景详细信息 */ @Operation(summary = "获取三维实景详细信息") @RequiresPermissions("point:tiles3d:query") @GetMapping(value = "/{tilesId}") public AjaxResult getInfo(@PathVariable("tilesId") String tilesId) { return success(ardTiles3dService.selectArdTiles3dByTilesId(tilesId)); } /** * 新增三维实景 */ @Operation(summary = "新增三维实景") @RequiresPermissions("point:tiles3d:add") @Log(title = "三维实景", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ArdTiles3d ardTiles3d) { return toAjax(ardTiles3dService.insertArdTiles3d(ardTiles3d)); } /** * 修改三维实景 */ @Operation(summary = "修改三维实景") @RequiresPermissions("point:tiles3d:edit") @Log(title = "三维实景", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ArdTiles3d ardTiles3d) { return toAjax(ardTiles3dService.updateArdTiles3d(ardTiles3d)); } /** * 删除三维实景 */ @Operation(summary = "删除三维实景") @RequiresPermissions("point:tiles3d:remove") @Log(title = "三维实景", businessType = BusinessType.DELETE) @DeleteMapping("/{tilesIds}") public AjaxResult remove(@PathVariable String[] tilesIds) { return toAjax(ardTiles3dService.deleteArdTiles3dByTilesIds(tilesIds)); } }