package com.hxzk.gps.controller.ThreeModel; import cn.dev33.satoken.annotation.SaCheckLogin; import com.hxzk.gps.controller.Map.Results.MarsResult; import com.hxzk.gps.controller.Map.dto.MarsTreeTableDto; import com.hxzk.gps.controller.ThreeModel.Results.ThreeModelResult; import com.hxzk.gps.controller.ThreeModel.deo.ThreeModelDeo; import com.hxzk.gps.entity.Map.TbMarsHomeset; import com.hxzk.gps.entity.ThreeModel.TbThreemodel; import com.hxzk.gps.service.ThreeModel.TbThreemodelService; import com.hxzk.gps.util.Result.ReturnMessage; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import org.springframework.stereotype.Controller; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.nio.file.Files; import java.nio.file.InvalidPathException; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** *
* 前端控制器 *
* * @author YuZhiTong * @since 2025-09-03 */ @RestController @RequestMapping("/Threemodel") public class TbThreemodelController { @Autowired TbThreemodelService tbThreemodelService; @Value("${upload.dir-Map-ThreeJS}") private String dirMapThree; @SaCheckLogin @ApiOperation(value = "平台用三维模型列表接口", notes = "该接口提供了平台三维地图配置的信息查询功能") @PostMapping("FindThreemodel") public ThreeModelResult FindThreemodel(@RequestBody ThreeModelDeo threeModelDeo){ return tbThreemodelService.FindThreemodel(threeModelDeo); } @SaCheckLogin @ApiOperation(value = "平台三维模型配置新增接口", notes = "该接口提供了平台三维模型配置新增功能") @PostMapping("add") public ReturnMessage add(@RequestBody TbThreemodel tbThreemodel){ return tbThreemodelService.add(tbThreemodel); } @SaCheckLogin @ApiOperation(value = "平台三维模型配置修改接口", notes = "该接口提供了平台三维模型配置修改功能") @PostMapping("update") public ReturnMessage update(@RequestBody TbThreemodel tbThreemodel){ return tbThreemodelService.update(tbThreemodel); } @PostMapping("upload") public ReturnMessage upload( @RequestParam("files") MultipartFile[] files, // 修改这里 @RequestParam(value = "departmentId", required = false) String departmentId, @RequestParam(value = "filename", required = false) String filename, @RequestParam(value = "id", required = false) String id, HttpServletRequest request) { ReturnMessage result = new ReturnMessage(); try { // 检查是否有文件上传 if (files == null || files.length == 0) { result.setCode(400); result.setMsg("未找到上传的文件"); return result; } // 创建上传目录 String uploadDir = dirMapThree; if (filename != null && !filename.trim().isEmpty()) { uploadDir = uploadDir + "//" + filename.trim(); } Path uploadPath = Paths.get(uploadDir); if (!Files.exists(uploadPath)) { Files.createDirectories(uploadPath); } List