From 79ed7ae44f947d2b7720c42512b5f1de56fca228 Mon Sep 17 00:00:00 2001 From: zhangbaojian <1065122561@qq.com> Date: Mon, 17 Apr 2023 18:51:44 +0800 Subject: [PATCH] =?UTF-8?q?zbj//1.=E8=B5=84=E6=BA=90=E7=AE=A1=E7=90=86=20?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E8=B5=84=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/njcn/oss/constant/OssPath.java | 5 ++ .../njcn/system/pojo/po/Resinformation.java | 75 +++++++++++++++++++ pqs-system/system-boot/pom.xml | 6 ++ .../ResourceAdministrationController.java | 49 ++++++++++++ .../mapper/ResourceAdministrationMapper.java | 16 ++++ .../mapping/ResourceAdministrationMapper.xml | 4 + .../IResourceAdministrationService.java | 17 +++++ .../ResourceAdministrationServiceImpl.java | 53 +++++++++++++ 8 files changed, 225 insertions(+) create mode 100644 pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/Resinformation.java create mode 100644 pqs-system/system-boot/src/main/java/com/njcn/system/controller/ResourceAdministrationController.java create mode 100644 pqs-system/system-boot/src/main/java/com/njcn/system/mapper/ResourceAdministrationMapper.java create mode 100644 pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/ResourceAdministrationMapper.xml create mode 100644 pqs-system/system-boot/src/main/java/com/njcn/system/service/IResourceAdministrationService.java create mode 100644 pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/ResourceAdministrationServiceImpl.java diff --git a/pqs-common/common-oss/src/main/java/com/njcn/oss/constant/OssPath.java b/pqs-common/common-oss/src/main/java/com/njcn/oss/constant/OssPath.java index 3178d68c2..b438e8b07 100644 --- a/pqs-common/common-oss/src/main/java/com/njcn/oss/constant/OssPath.java +++ b/pqs-common/common-oss/src/main/java/com/njcn/oss/constant/OssPath.java @@ -67,4 +67,9 @@ public interface OssPath { * 装置模板 */ String DEV_MODEL = "algorithm/devModel/"; + + /*** + * 资源管理文件 + */ + String RESOURCEADMINISTRATION = "resourceAdministration/"; } diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/Resinformation.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/Resinformation.java new file mode 100644 index 000000000..03fb4c56b --- /dev/null +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/Resinformation.java @@ -0,0 +1,75 @@ +package com.njcn.system.pojo.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + *

+ * + *

+ * + * @author zbj + * @since 2023-04-17 + */ +@Data +@TableName("pqs_resinformation") +public class Resinformation { + + /** + * 资源序号 + */ + @TableField(value = "id") + private String id; + + /** + * 资源名称 + */ + @TableField(value = "name") + private String name; + + /** + * 资源描述 + */ + @TableField(value = "description") + private String description; + + /** + * 资源路径 + */ + @TableField(value = "res_url") + private String url; + + /** + * 数据更新人ID(外键user表) + */ + @TableField(value = "updateuser") + private String updateUser; + + /** + * 数据更新时间 + */ + @TableField(value = "updatetime") + private LocalDateTime updateTime; + + /** + * 数据状态(0: 删除; 1: 正常) + */ + @TableField(value = "state") + private Integer state; + + /** + * 系统类型Guid + */ + @TableField(value = "systype") + private String systemType; + + /** + * 资源类型 + */ + @TableField(value = "type") + private String type; + +} diff --git a/pqs-system/system-boot/pom.xml b/pqs-system/system-boot/pom.xml index fd3b05e46..9d1c1ed2a 100644 --- a/pqs-system/system-boot/pom.xml +++ b/pqs-system/system-boot/pom.xml @@ -52,6 +52,12 @@ okio 2.8.0 + + com.njcn + common-oss + 1.0.0 + compile + diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ResourceAdministrationController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ResourceAdministrationController.java new file mode 100644 index 000000000..c98742291 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ResourceAdministrationController.java @@ -0,0 +1,49 @@ +package com.njcn.system.controller; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.system.service.IResourceAdministrationService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.*; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestPart; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + + +/** + * @version 1.0.0 + * @author: zbj + * @date: 2023/04/17 + */ +@Slf4j +@Api(tags = "资源管理") +@RestController +@RequestMapping("/resourceAdministration") +@RequiredArgsConstructor +public class ResourceAdministrationController extends BaseController { + + private final IResourceAdministrationService iResourceAdministrationService; + + /** + * 上传资源 + */ + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/uploadFile") + @ApiOperation("上传资源") + public HttpResult uploadFile(@ApiParam(value = "文件", required = true)@RequestPart("multipartFile") MultipartFile multipartFile, + @ApiParam(value = "资源名称", required = true)String name, + @ApiParam(value = "资源类型", required = true) String type, + @ApiParam(value = "资源描述", required = false)String describe, + @ApiParam(value = "系统类型Guid", required = true) String systemType) { + String methodDescribe = getMethodDescribe("uploadFile"); + Boolean flag = iResourceAdministrationService.uploadFile(multipartFile, name, type, describe, systemType); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, flag, methodDescribe); + } +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/ResourceAdministrationMapper.java b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/ResourceAdministrationMapper.java new file mode 100644 index 000000000..d858a4e97 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/ResourceAdministrationMapper.java @@ -0,0 +1,16 @@ +package com.njcn.system.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.system.pojo.po.Resinformation; +import org.apache.ibatis.annotations.Mapper; + +/** + * @version 1.0.0 + * @author: zbj + * @date: 2023/04/17 + */ +@Mapper +public interface ResourceAdministrationMapper extends BaseMapper { + +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/ResourceAdministrationMapper.xml b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/ResourceAdministrationMapper.xml new file mode 100644 index 000000000..5882096fe --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/ResourceAdministrationMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/IResourceAdministrationService.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IResourceAdministrationService.java new file mode 100644 index 000000000..65bf7d118 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IResourceAdministrationService.java @@ -0,0 +1,17 @@ +package com.njcn.system.service; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.system.pojo.po.Resinformation; +import org.springframework.web.multipart.MultipartFile; + +/** + * @version 1.0.0 + * @author: zbj + * @date: 2023/04/17 + */ +public interface IResourceAdministrationService extends IService { + + Boolean uploadFile(MultipartFile multipartFile, String name, String type, String describe,String systemType); + +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/ResourceAdministrationServiceImpl.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/ResourceAdministrationServiceImpl.java new file mode 100644 index 000000000..6bf1def06 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/ResourceAdministrationServiceImpl.java @@ -0,0 +1,53 @@ +package com.njcn.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.oss.constant.OssPath; +import com.njcn.oss.utils.FileStorageUtil; +import com.njcn.system.mapper.ResourceAdministrationMapper; +import com.njcn.system.pojo.po.Resinformation; +import com.njcn.system.service.IResourceAdministrationService; +import com.njcn.web.utils.RequestUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.time.LocalDateTime; +import java.util.Objects; + +/** + * @version 1.0.0 + * @author: zbj + * @date: 2023/04/17 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class ResourceAdministrationServiceImpl extends ServiceImpl implements IResourceAdministrationService { + + private final ResourceAdministrationMapper resourceAdministrationMapper; + + private final FileStorageUtil fileStorageUtil; + + @Override + public Boolean uploadFile(MultipartFile multipartFile, String name, String type, String describe, String systemType) { + //通过封装好的文件工具类来传入文件和文件夹名称来获取文件路径 + String url = fileStorageUtil.uploadMultipart(multipartFile, OssPath.RESOURCEADMINISTRATION); + //创建对象 + Resinformation resinformation = new Resinformation(); + resinformation.setName(name); + if (Objects.nonNull(describe)) { + resinformation.setDescription(describe); + } + resinformation.setUrl(url); + //获取用户id + String userIndex = RequestUtil.getUserIndex(); + //String userIndex = "123456"; + resinformation.setUpdateUser(userIndex); + resinformation.setUpdateTime(LocalDateTime.now()); + resinformation.setState(1); + resinformation.setSystemType(systemType); + resinformation.setType(type); + return this.save(resinformation); + } +}