ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInformationController.java
@@ -4,25 +4,20 @@ import javax.servlet.http.HttpServletResponse; import com.ard.common.utils.poi.ExcelUtil; import com.ard.oss.model.MinioUploadResult; import com.ard.route.domain.route.ArdRouteInformation; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; 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 org.springframework.web.bind.annotation.*; import com.ard.common.annotation.Log; import com.ard.common.core.controller.BaseController; import com.ard.common.core.domain.AjaxResult; import com.ard.common.enums.BusinessType; import com.ard.route.service.IArdRouteInformationService; import com.ard.common.core.page.TableDataInfo; import org.springframework.web.multipart.MultipartFile; /** * 航线(kmz)Controller @@ -108,4 +103,15 @@ return toAjax(ardRouteInformationService.deleteArdRouteInformationByIds(ids)); } /** * 导入航线(kmz)文件 */ @ApiOperation("导入航线(kmz)文件") @PreAuthorize("@ss.hasPermi('route:information:upload')") @PostMapping("/upload") public AjaxResult upload(@RequestPart("file") MultipartFile file) { MinioUploadResult minioUploadResult = ardRouteInformationService.uploadArdRouteInformation(file); return success(minioUploadResult); } } ard-route/src/main/java/com/ard/route/service/IArdRouteInformationService.java
@@ -1,6 +1,8 @@ package com.ard.route.service; import com.ard.oss.model.MinioUploadResult; import com.ard.route.domain.route.ArdRouteInformation; import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -60,4 +62,12 @@ */ public int deleteArdRouteInformationById(String id); /** * 导入航线(kmz)文件 * * @param file 文件 * @return 结果 */ public MinioUploadResult uploadArdRouteInformation(MultipartFile file); } ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInformationServiceImpl.java
@@ -2,13 +2,18 @@ import java.util.List; import com.ard.common.utils.DateUtils; import com.ard.common.utils.file.FileUtils; import com.ard.common.utils.uuid.IdUtils; import com.ard.oss.model.MinioUploadResult; import com.ard.oss.service.impl.OssServiceContext; import com.ard.route.domain.route.ArdRouteInformation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ard.route.mapper.ArdRouteInformationMapper; import com.ard.route.service.IArdRouteInformationService; import org.springframework.web.multipart.MultipartFile; import static com.ard.route.util.ToolUtils.getFileNameWithoutExtension; /** * 航线(kmz)Service业务层处理 @@ -99,4 +104,30 @@ return ardRouteInformationMapper.deleteArdRouteInformationById(id); } /** * 导入航线(kmz)文件 * * @param file 文件 * @return 结果 */ @Override public MinioUploadResult uploadArdRouteInformation(MultipartFile file) { try { String url = ossService.upload("kmz",file); ArdRouteInformation information = new ArdRouteInformation(); information.setFileName(file.getOriginalFilename()); information.setFileNameNew(getFileNameWithoutExtension(url)); information.setUpPath(url); information.setUpFileSize((double) file.getSize()); insertArdRouteInformation(information); return MinioUploadResult.builder() .url(url) .newFileName(FileUtils.getName(url)) .originalFilename(file.getOriginalFilename()) .build(); }catch (Exception e){ return null; } } }