diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java index c136164acc..eab4df7b72 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java @@ -24,6 +24,11 @@ public interface ServiceConstant { */ String EPMET_AUTH_SERVER = "epmet-auth-server"; + /** + * 文件对象模块 + */ + String EPMET_OSS_SERVER = "epmet-oss-server"; + /** * 用户管理模块 */ diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index a5c57a6531..dec03ba191 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -52,6 +52,7 @@ spring: - Path=${server.servlet.context-path}/oss/** filters: - StripPrefix=1 + - CpAuth=true #消息服务 - id: epmet-message-server uri: @gateway.routes.epmet-message-server.uri@ diff --git a/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/result/UploadImgResultDTO.java b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/result/UploadImgResultDTO.java new file mode 100644 index 0000000000..b93b58bb39 --- /dev/null +++ b/epmet-module/epmet-oss/epmet-oss-client/src/main/java/com/epmet/dto/result/UploadImgResultDTO.java @@ -0,0 +1,15 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 上传图片返参DTO + * @Author yinzuomei + * @Date 2020/4/7 12:35 + */ +@Data +public class UploadImgResultDTO implements Serializable { + private String url; +} diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java index dd7256c27b..2a51d935c8 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java @@ -8,23 +8,23 @@ package com.epmet.controller; -import com.google.gson.Gson; -import com.epmet.commons.tools.annotation.LogOperation; +import com.epmet.cloud.CloudStorageConfig; +import com.epmet.cloud.OssFactory; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.cloud.CloudStorageConfig; -import com.epmet.cloud.OssFactory; import com.epmet.commons.tools.validator.group.AliyunGroup; import com.epmet.commons.tools.validator.group.QcloudGroup; import com.epmet.commons.tools.validator.group.QiniuGroup; import com.epmet.dto.UploadDTO; +import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.entity.OssEntity; import com.epmet.enums.OssTypeEnum; import com.epmet.exception.ModuleErrorCode; +import com.epmet.remote.ParamsRemoteService; import com.epmet.service.OssService; import com.epmet.utils.ModuleConstant; -import com.epmet.remote.ParamsRemoteService; +import com.google.gson.Gson; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.io.FilenameUtils; @@ -106,7 +106,6 @@ public class OssController { //保存文件信息 OssEntity ossEntity = new OssEntity(); ossEntity.setUrl(url); - ossEntity.setCreateDate(new Date()); ossService.insertOssEntity(ossEntity); //文件信息 @@ -126,4 +125,15 @@ public class OssController { return new Result(); } + /** + * @param file + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 上传图片 + * @Date 2020/4/7 10:39 + **/ + @PostMapping("uploadimg") + public Result uploadImg(@RequestParam("file") MultipartFile file) { + return ossService.uploadImg(file); + } } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java index 3d57a9424e..79f8b14823 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java @@ -20,5 +20,4 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface OssDao extends BaseDao { - int insertOssEntity(String url); } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/entity/OssEntity.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/entity/OssEntity.java index a92a7a91bd..abeb56c49a 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/entity/OssEntity.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/entity/OssEntity.java @@ -9,7 +9,7 @@ package com.epmet.entity; import com.baomidou.mybatisplus.annotation.TableName; -import com.epmet.commons.mybatis.entity.BaseEntity; +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -21,7 +21,7 @@ import lombok.EqualsAndHashCode; @Data @EqualsAndHashCode(callSuper=false) @TableName("sys_oss") -public class OssEntity extends BaseEntity { +public class OssEntity extends BaseEpmetEntity { private static final long serialVersionUID = 1L; /** diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java index b688001b02..2195e4f0f1 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java @@ -10,7 +10,10 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.entity.OssEntity; +import org.springframework.web.multipart.MultipartFile; import java.util.Map; @@ -24,4 +27,6 @@ public interface OssService extends BaseService { PageData page(Map params); int insertOssEntity(OssEntity ossEntity); + + Result uploadImg(MultipartFile file); } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java index b235163e81..9e492044db 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java @@ -10,14 +10,21 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.cloud.OssFactory; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.Constant; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.Result; import com.epmet.dao.OssDao; +import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.entity.OssEntity; +import com.epmet.exception.ModuleErrorCode; import com.epmet.service.OssService; +import org.apache.commons.io.FilenameUtils; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import java.io.IOException; import java.util.Map; @Service @@ -34,6 +41,32 @@ public class OssServiceImpl extends BaseServiceImpl implement @Override public int insertOssEntity(OssEntity ossEntity) { - return baseDao.insertOssEntity(ossEntity.getUrl()); + return baseDao.insert(ossEntity); + } + + @Override + public Result uploadImg(MultipartFile file) { + if (file.isEmpty()) { + return new Result().error(ModuleErrorCode.UPLOAD_FILE_EMPTY); + } + //上传文件 + String extension = FilenameUtils.getExtension(file.getOriginalFilename()); + String url = null; + try { + url = OssFactory.build().uploadSuffix(file.getBytes(), extension); + } catch (IOException e) { + e.printStackTrace(); + return new Result().error("图片上传异常"); + + + } + //保存文件信息 + OssEntity ossEntity = new OssEntity(); + ossEntity.setUrl(url); + baseDao.insert(ossEntity); + //文件信息 + UploadImgResultDTO dto = new UploadImgResultDTO(); + dto.setUrl(url); + return new Result().ok(dto); } } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml b/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml index 57994ca119..2531640cb1 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml @@ -3,11 +3,4 @@ - - INSERT INTO `sys_oss` ( `url`, `creator`, `create_date` ) - VALUES - ( #{url}, - "1", - now( ) ) -