diff --git a/das/src/main/java/com/das/modules/data/controller/DataController.java b/das/src/main/java/com/das/modules/data/controller/DataController.java index a1374d19..7b24ded7 100644 --- a/das/src/main/java/com/das/modules/data/controller/DataController.java +++ b/das/src/main/java/com/das/modules/data/controller/DataController.java @@ -37,7 +37,7 @@ public class DataController { @PostMapping("/snapshot") public R>> querySnapshotValues(@RequestBody @Valid List param) { if (log.isDebugEnabled()){ - log.debug("/api/rtdbsvr/snapshot is calling"); + log.debug("/api/data/snapshot is calling"); log.debug("request params: {}", param); } return R.success(dataService.querySnapshotValues(param)); @@ -51,7 +51,7 @@ public class DataController { @PostMapping("/history") public R>>> queryTimeSeriesValues(@RequestBody @Valid TSValueQueryParam param) { if (log.isDebugEnabled()){ - log.debug("/api/rtdbsvr/history is calling"); + log.debug("/api/data/history is calling"); log.debug("request params: {}", param); } return R.success(dataService.queryTimeSeriesValues(param)); @@ -65,7 +65,7 @@ public class DataController { @PostMapping("/windows") public R>>> queryWindowsValues(@RequestBody @Valid WindowValueQueryParam param) { if (log.isDebugEnabled()){ - log.debug("/api/rtdbsvr/windows is calling"); + log.debug("/api/data/windows is calling"); log.debug("request params: {}", param); } return R.success(dataService.queryWindowsValues(param)); diff --git a/das/src/main/java/com/das/modules/equipment/controller/EquipmentController.java b/das/src/main/java/com/das/modules/equipment/controller/EquipmentController.java index 4373ec1a..7fa6a9f7 100644 --- a/das/src/main/java/com/das/modules/equipment/controller/EquipmentController.java +++ b/das/src/main/java/com/das/modules/equipment/controller/EquipmentController.java @@ -7,8 +7,11 @@ import com.das.common.exceptions.ServiceException; import com.das.common.result.R; import com.das.common.utils.PageDataInfo; import com.das.modules.equipment.domain.dto.SysEquipmentDto; +import com.das.modules.equipment.domain.dto.SysGenExtPropsDto; import com.das.modules.equipment.domain.vo.EquipmentTypeVo; import com.das.modules.equipment.domain.vo.SysEquipmentVo; +import com.das.modules.equipment.entity.SysEquipmentDocs; +import com.das.modules.equipment.entity.SysGenExtProps; import com.das.modules.equipment.service.SysEquipmentService; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; @@ -138,4 +141,63 @@ public class EquipmentController { sysEquipmentService.importSysEquipment(id, file); return R.success("导入成功"); } + + /** + * 新增设备附属属性 + * @return 所有附属属性 + */ + @PostMapping("/extProps/add") + public R addSysEquipmentExtProps(@RequestBody SysGenExtPropsDto sysGenExtPropsDto) { + //判断是否有权限 + boolean hasPermission = StpUtil.hasPermission(SysAuthorityIds.SYS_AUTHORITY_ID_DEVICE_MGR.toString()); + if(!hasPermission){ + return R.fail("没有设备管理权限"); + } + return R.success(sysEquipmentService.creatSysEquipmentExtProps(sysGenExtPropsDto)); + } + + /** + * 更新设备附属属性 + * @return 所有附属属性 + */ + @PostMapping("/extProps/update") + public R updateSysEquipmentExtProps(@RequestBody SysGenExtPropsDto sysGenExtPropsDto) { + //判断是否有权限 + boolean hasPermission = StpUtil.hasPermission(SysAuthorityIds.SYS_AUTHORITY_ID_DEVICE_MGR.toString()); + if(!hasPermission){ + return R.fail("没有设备管理权限"); + } + return R.success(sysEquipmentService.updateSysEquipmentExtProps(sysGenExtPropsDto)); + } + + /** + * 更新设备附属属性 + * @return 所有附属属性 + */ + @PostMapping("/extProps/query") + public R querySysEquipmentExtProps(@RequestBody SysGenExtPropsDto sysGenExtPropsDto) { + //判断是否有权限 + boolean hasPermission = StpUtil.hasPermission(SysAuthorityIds.SYS_AUTHORITY_ID_DEVICE_MGR.toString()); + if(!hasPermission){ + return R.fail("没有设备管理权限"); + } + return R.success(sysEquipmentService.querySysEquipmentExtProps(sysGenExtPropsDto.getId())); + } + + @PostMapping("/extProps/delete") + public R deleteSysEquipmentExtProps(@RequestBody SysGenExtPropsDto sysGenExtPropsDto) { + //判断是否有权限 + boolean hasPermission = StpUtil.hasPermission(SysAuthorityIds.SYS_AUTHORITY_ID_DEVICE_MGR.toString()); + if(!hasPermission){ + return R.fail("没有设备管理权限"); + } + sysEquipmentService.deleteSysEquipmentExtProps(sysGenExtPropsDto.getId()); + return R.success(); + } + + @RequestMapping(value = "/file/upload", method = RequestMethod.POST) + public R addFile(Long deviceId, String folderName, MultipartFile file) { + SysEquipmentDocs upload = sysEquipmentService.upload(deviceId, folderName, file); + return R.success(upload); + } } diff --git a/das/src/main/java/com/das/modules/equipment/domain/dto/SysGenExtPropsDto.java b/das/src/main/java/com/das/modules/equipment/domain/dto/SysGenExtPropsDto.java new file mode 100644 index 00000000..6f4201c1 --- /dev/null +++ b/das/src/main/java/com/das/modules/equipment/domain/dto/SysGenExtPropsDto.java @@ -0,0 +1,106 @@ +package com.das.modules.equipment.domain.dto; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SysGenExtPropsDto { + + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + + private String fanName; + + private String fanNumber; + + private String fanType; + + private String fanTypeDetails; + + private String pitchSystemModel; + + private String pitchSystemManufacturer; + + private String pitchSystemDetails; + + private String blade1Model; + + private String blade1Manufacturer; + + private String blade1Details; + + private String blade1BearingModel; + + private String blade1BearingManufacturer; + + private String blade1BearingDetails; + + private String blade2Model; + + private String blade2Manufacturer; + + private String blade2Details; + + private String blade2BearingModel; + + private String blade2BearingManufacturer; + + private String blade2BearingDetails; + + private String blade3Model; + + private String blade3Manufacturer; + + private String blade3Details; + + private String blade3BearingModel; + + private String blade3BearingManufacturer; + + private String blade3BearingDetails; + + private String mainBearingModel; + + private String mainBearingManufacturer; + + private String mainBearingDetails; + + private String gearboxModel; + + private String gearboxManufacturer; + + private String gearboxDetails; + + private String generatorModel; + + private String generatorManufacturer; + + private String generatorDetails; + + private String converterModel; + + private String converterManufacturer; + + private String converterDetails; + + private String mainControlSystemModel; + + private String mainControlSystemManufacturer; + + private String mainControlSystemSoftwareVersion; + + private String mainControlSystemSoftwareVersionDetails; + + private String towerBaseCabinetDetails; + + private String nacelleCabinetDetails; +} diff --git a/das/src/main/java/com/das/modules/equipment/entity/SysEquipmentDocs.java b/das/src/main/java/com/das/modules/equipment/entity/SysEquipmentDocs.java new file mode 100644 index 00000000..e4f3096f --- /dev/null +++ b/das/src/main/java/com/das/modules/equipment/entity/SysEquipmentDocs.java @@ -0,0 +1,36 @@ +package com.das.modules.equipment.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@TableName("sys_equipment_docs") +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SysEquipmentDocs { + + @TableId(value = "deviceid") + private Long deviceId; + + @TableField(value = "name") + private String name; + + @TableField(value = "url") + private String url; + /** + * 更新时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @TableField("update_time") + private Date updateTime; + +} diff --git a/das/src/main/java/com/das/modules/equipment/entity/SysGenExtProps.java b/das/src/main/java/com/das/modules/equipment/entity/SysGenExtProps.java new file mode 100644 index 00000000..5fa833fc --- /dev/null +++ b/das/src/main/java/com/das/modules/equipment/entity/SysGenExtProps.java @@ -0,0 +1,162 @@ +package com.das.modules.equipment.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@TableName("sys_gen_extprops") +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SysGenExtProps { + + @TableId(value = "id", type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + + @TableField(value = "fan_name") + private String fanName; + + @TableField(value = "fan_Number") + private String fanNumber; + + @TableField(value = "fan_type") + private String fanType; + + @TableField(value = "fan_type_details") + private String fanTypeDetails; + + // Pitch System + @TableField(value = "pitch_system_model") + private String pitchSystemModel; + + @TableField(value = "pitch_system_manufacturer") + private String pitchSystemManufacturer; + + @TableField(value = "pitch_system_details") + private String pitchSystemDetails; + + // Blade 1 + @TableField(value = "blade1_model") + private String blade1Model; + + @TableField(value = "blade1_manufacturer") + private String blade1Manufacturer; + + @TableField(value = "blade1_details") + private String blade1Details; + + @TableField(value = "blade1_bearing_model") + private String blade1BearingModel; + + @TableField(value = "blade1_bearing_manufacturer") + private String blade1BearingManufacturer; + + @TableField(value = "blade1_bearing_details") + private String blade1BearingDetails; + + // Blade 2 + @TableField(value = "blade2_model") + private String blade2Model; + + @TableField(value = "blade2_manufacturer") + private String blade2Manufacturer; + + @TableField(value = "blade2_details") + private String blade2Details; + + @TableField(value = "blade2_bearing_model") + private String blade2BearingModel; + + @TableField(value = "blade2_bearing_manufacturer") + private String blade2BearingManufacturer; + + @TableField(value = "blade2_bearing_details") + private String blade2BearingDetails; + + // Blade 3 + @TableField(value = "blade3_model") + private String blade3Model; + + @TableField(value = "blade3_manufacturer") + private String blade3Manufacturer; + + @TableField(value = "blade3_details") + private String blade3Details; + + @TableField(value = "blade3_bearing_model") + private String blade3BearingModel; + + @TableField(value = "blade3_bearing_manufacturer") + private String blade3BearingManufacturer; + + @TableField(value = "blade3_bearing_details") + private String blade3BearingDetails; + + // Main Bearing + @TableField(value = "main_bearing_model") + private String mainBearingModel; + + @TableField(value = "main_bearing_manufacturer") + private String mainBearingManufacturer; + + @TableField(value = "main_bearing_details") + private String mainBearingDetails; + + // Gearbox + @TableField(value = "gearbox_model") + private String gearboxModel; + + @TableField(value = "gearbox_manufacturer") + private String gearboxManufacturer; + + @TableField(value = "gearbox_details") + private String gearboxDetails; + + // Generator + @TableField(value = "generator_model") + private String generatorModel; + + @TableField(value = "generator_manufacturer") + private String generatorManufacturer; + + @TableField(value = "generator_details") + private String generatorDetails; + + // Converter + @TableField(value = "converter_model") + private String converterModel; + + @TableField(value = "converter_manufacturer") + private String converterManufacturer; + + @TableField(value = "converter_details") + private String converterDetails; + + // Main Control System + @TableField(value = "main_control_system_model") + private String mainControlSystemModel; + + @TableField(value = "main_control_system_manufacturer") + private String mainControlSystemManufacturer; + + @TableField(value = "main_control_system_software_version") + private String mainControlSystemSoftwareVersion; + + @TableField(value = "main_control_system_software_version_details") + private String mainControlSystemSoftwareVersionDetails; + + // Cabinet Details + + @TableField(value = "tower_base_cabinet_details") + private String towerBaseCabinetDetails; + + @TableField(value = "nacelle_cabinet_details") + private String nacelleCabinetDetails; +} diff --git a/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentDocsMapper.java b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentDocsMapper.java new file mode 100644 index 00000000..9ec6ce93 --- /dev/null +++ b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentDocsMapper.java @@ -0,0 +1,10 @@ +package com.das.modules.equipment.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.das.modules.equipment.entity.SysEquipmentDocs; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysEquipmentDocsMapper extends BaseMapper { + +} diff --git a/das/src/main/java/com/das/modules/equipment/mapper/SysGenExtPropsMapper.java b/das/src/main/java/com/das/modules/equipment/mapper/SysGenExtPropsMapper.java new file mode 100644 index 00000000..9ea8a705 --- /dev/null +++ b/das/src/main/java/com/das/modules/equipment/mapper/SysGenExtPropsMapper.java @@ -0,0 +1,10 @@ +package com.das.modules.equipment.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.das.modules.equipment.entity.SysGenExtProps; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysGenExtPropsMapper extends BaseMapper { + +} diff --git a/das/src/main/java/com/das/modules/equipment/service/SysEquipmentService.java b/das/src/main/java/com/das/modules/equipment/service/SysEquipmentService.java index 13543df9..b85657e9 100644 --- a/das/src/main/java/com/das/modules/equipment/service/SysEquipmentService.java +++ b/das/src/main/java/com/das/modules/equipment/service/SysEquipmentService.java @@ -2,7 +2,10 @@ package com.das.modules.equipment.service; import com.das.common.utils.PageDataInfo; import com.das.modules.equipment.domain.dto.SysEquipmentDto; +import com.das.modules.equipment.domain.dto.SysGenExtPropsDto; import com.das.modules.equipment.domain.vo.SysEquipmentVo; +import com.das.modules.equipment.entity.SysEquipmentDocs; +import com.das.modules.equipment.entity.SysGenExtProps; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import org.springframework.web.multipart.MultipartFile; @@ -28,4 +31,13 @@ public interface SysEquipmentService { void importSysEquipment(String parentEquipmentId,MultipartFile file) throws IOException, ParseException; + SysGenExtProps creatSysEquipmentExtProps(SysGenExtPropsDto sysGenExtPropsDto); + + SysGenExtProps updateSysEquipmentExtProps(SysGenExtPropsDto sysGenExtPropsDto); + + void deleteSysEquipmentExtProps(Long id); + + SysGenExtProps querySysEquipmentExtProps(Long id); + + SysEquipmentDocs upload(Long deviceId, String folderName, MultipartFile file); } diff --git a/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java b/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java index 80b14e14..2474085f 100644 --- a/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java +++ b/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.das.common.config.SessionUtil; import com.das.common.constant.EquipmentTypeIds; +import com.das.common.constant.FileConstants; import com.das.common.exceptions.ServiceException; import com.das.common.utils.BeanCopyUtils; import com.das.common.utils.PageDataInfo; @@ -17,16 +18,26 @@ import com.das.common.utils.PageQuery; import com.das.common.utils.SequenceUtils; import com.das.modules.auth.domain.vo.SysUserVo; import com.das.modules.auth.mapper.SysOrgMapper; +import com.das.modules.cache.domain.DeviceInfoCache; import com.das.modules.cache.service.CacheService; +import com.das.modules.cache.service.EquipmentCache; import com.das.modules.data.service.TDEngineService; import com.das.modules.data.service.impl.DataServiceImpl; import com.das.modules.equipment.domain.dto.SysEquipmentDto; +import com.das.modules.equipment.domain.dto.SysGenExtPropsDto; import com.das.modules.equipment.domain.excel.SysEquipmentExcel; import com.das.modules.equipment.domain.vo.SysEquipmentVo; import com.das.modules.equipment.entity.SysEquipment; +import com.das.modules.equipment.entity.SysEquipmentDocs; +import com.das.modules.equipment.entity.SysGenExtProps; +import com.das.modules.equipment.mapper.SysEquipmentDocsMapper; import com.das.modules.equipment.mapper.SysEquipmentMapper; +import com.das.modules.equipment.mapper.SysGenExtPropsMapper; import com.das.modules.equipment.mapper.SysIotModelMapper; import com.das.modules.equipment.service.SysEquipmentService; +import com.das.modules.fdr.config.MinioProperties; +import com.das.modules.fdr.service.MinioViewsServcie; +import jakarta.annotation.Resource; import jakarta.servlet.ServletOutputStream; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; @@ -73,6 +84,21 @@ public class SysEquipmentServiceImpl implements SysEquipmentService { @Autowired private TDEngineService tdEngineService; + @Autowired + private SysGenExtPropsMapper sysGenExtPropsMapper; + + @Autowired + private MinioViewsServcie minioViewsServcie; + + @Resource + private MinioProperties minioAutoProperties; + + @Autowired + private EquipmentCache equipmentCache; + + @Autowired + private SysEquipmentDocsMapper sysEquipmentDocsMapper; + @Override public SysEquipmentVo creatSysEquipment(SysEquipmentDto sysEquipmentDto) { //去除空格 @@ -358,4 +384,56 @@ public class SysEquipmentServiceImpl implements SysEquipmentService { } } + + @Override + public SysGenExtProps creatSysEquipmentExtProps(SysGenExtPropsDto sysGenExtPropsDto) { + if (sysGenExtPropsDto.getId() == null){ + throw new ServiceException("设备id不能为空"); + } + SysGenExtProps sysEquipmentExtProps = new SysGenExtProps(); + BeanCopyUtils.copy(sysGenExtPropsDto, sysEquipmentExtProps); + sysGenExtPropsMapper.insert(sysEquipmentExtProps); + return sysEquipmentExtProps; + } + + @Override + public SysGenExtProps updateSysEquipmentExtProps(SysGenExtPropsDto sysGenExtPropsDto) { + if (sysGenExtPropsDto.getId() == null){ + throw new ServiceException("设备id不能为空"); + } + SysGenExtProps sysEquipmentExtProps = new SysGenExtProps(); + BeanCopyUtils.copy(sysGenExtPropsDto, sysEquipmentExtProps); + sysGenExtPropsMapper.updateById(sysEquipmentExtProps); + return sysEquipmentExtProps; + } + + @Override + public void deleteSysEquipmentExtProps(Long id) { + sysGenExtPropsMapper.deleteById(id); + } + + @Override + public SysGenExtProps querySysEquipmentExtProps(Long id) { + return sysGenExtPropsMapper.selectById(id); + } + + @Override + public SysEquipmentDocs upload(Long deviceId, String folderName, MultipartFile file) { + DeviceInfoCache deviceInfoCache = equipmentCache.getDeviceInfoCacheById(deviceId); + String parent = FileConstants.FILE_SEPARATOR +"风机图片"+ FileConstants.FILE_SEPARATOR + deviceInfoCache.getDeviceCode(); + String url = minioViewsServcie.upload(minioAutoProperties.getPublicBucket(), parent, folderName, file); + String fileName = url.substring(url.lastIndexOf("/")); + SysEquipmentDocs sysEquipmentDocs = new SysEquipmentDocs(); + sysEquipmentDocs.setDeviceId(deviceId); + sysEquipmentDocs.setName(fileName); + sysEquipmentDocs.setUrl(url); + sysEquipmentDocs.setUpdateTime(new Date()); + SysEquipmentDocs sysEquipmentDocsInfo = sysEquipmentDocsMapper.selectById(deviceId); + if (sysEquipmentDocsInfo == null){ + sysEquipmentDocsMapper.insert(sysEquipmentDocs); + }else { + sysEquipmentDocsMapper.updateById(sysEquipmentDocs); + } + return sysEquipmentDocs; + } } diff --git a/das/src/main/java/com/das/modules/equipment/service/impl/SysIotModelServiceImpl.java b/das/src/main/java/com/das/modules/equipment/service/impl/SysIotModelServiceImpl.java index 40c56d9a..7e0a3b6c 100644 --- a/das/src/main/java/com/das/modules/equipment/service/impl/SysIotModelServiceImpl.java +++ b/das/src/main/java/com/das/modules/equipment/service/impl/SysIotModelServiceImpl.java @@ -150,9 +150,7 @@ public class SysIotModelServiceImpl implements SysIotModelService { PageQuery pageQuery = new PageQuery(); pageQuery.setPageNum(sysIotModelFieldDto.getPageNum()); pageQuery.setPageSize(sysIotModelFieldDto.getPageSize()); - log.info("查询物模型属性参数:{}",sysIotModelFieldDto); IPage iPage = sysIotModelFieldMapper.querySysIotModelFieldList(pageQuery.build(), sysIotModelFieldDto); - log.info("查询物模型属性返回总数{},:{}",iPage.getTotal(),iPage.getRecords()); return PageDataInfo.build(iPage.getRecords(), iPage.getTotal()); } diff --git a/das/src/main/java/com/das/modules/fdr/config/MinioConfig.java b/das/src/main/java/com/das/modules/fdr/config/MinioConfig.java index 92941ef5..4b93d1da 100644 --- a/das/src/main/java/com/das/modules/fdr/config/MinioConfig.java +++ b/das/src/main/java/com/das/modules/fdr/config/MinioConfig.java @@ -42,6 +42,14 @@ public class MinioConfig { createBucket(bucketName, minioClient); } } + String publicBucket = minioAutoProperties.getPublicBucket(); + if (!checkBucket(publicBucket, minioClient)) { + log.info("文件public桶[{}]不存在, 开始检查是否可以新建桶", publicBucket); + if (minioAutoProperties.isCreateBucket()) { + log.info("createBucket为{},开始新建public文件桶", minioAutoProperties.isCreateBucket()); + createBucket(publicBucket, minioClient); + } + } log.info("文件桶[{}]已存在, minio客户端连接成功!", bucketName); } else { throw new RuntimeException("桶不存在, 请检查桶名称是否正确或者将checkBucket属性改为false"); diff --git a/das/src/main/java/com/das/modules/fdr/config/MinioProperties.java b/das/src/main/java/com/das/modules/fdr/config/MinioProperties.java index 3ce7cfed..ea13bc90 100644 --- a/das/src/main/java/com/das/modules/fdr/config/MinioProperties.java +++ b/das/src/main/java/com/das/modules/fdr/config/MinioProperties.java @@ -40,6 +40,9 @@ public class MinioProperties { @Value("${minio.bucket}") private String bucket; + @Value("${minio.publicBucket}") + private String publicBucket; + /** * 桶不在的时候是否新建桶 */ diff --git a/das/src/main/java/com/das/modules/fdr/service/MinioViewsServcie.java b/das/src/main/java/com/das/modules/fdr/service/MinioViewsServcie.java index 20bb01c4..ac85e1b8 100644 --- a/das/src/main/java/com/das/modules/fdr/service/MinioViewsServcie.java +++ b/das/src/main/java/com/das/modules/fdr/service/MinioViewsServcie.java @@ -78,7 +78,7 @@ public class MinioViewsServcie { } - public String upload(String path, String folderName,MultipartFile file) { + public String upload(String bucketName, String path, String folderName,MultipartFile file) { String targetFile = null; try { // 上传一个空对象来模拟文件夹 @@ -87,14 +87,14 @@ public class MinioViewsServcie { ByteArrayInputStream bais = new ByteArrayInputStream(new byte[0]); minioClient.putObject( PutObjectArgs.builder() - .bucket(minioProperties.getBucket()) + .bucket(bucketName) .object(targetFile) .stream(bais, 0, -1) .build()); } else { targetFile= path +"/" + file.getOriginalFilename(); - uploadFile(minioProperties.getBucket(), file, targetFile, "application/octet-stream"); + uploadFile(bucketName, file, targetFile, "application/octet-stream"); } } catch (Exception e) { throw new RuntimeException(e); diff --git a/das/src/main/java/com/das/modules/fdr/service/impl/FaultRecorderServiceImpl.java b/das/src/main/java/com/das/modules/fdr/service/impl/FaultRecorderServiceImpl.java index f985fd55..56421928 100644 --- a/das/src/main/java/com/das/modules/fdr/service/impl/FaultRecorderServiceImpl.java +++ b/das/src/main/java/com/das/modules/fdr/service/impl/FaultRecorderServiceImpl.java @@ -14,6 +14,7 @@ import com.das.modules.curve.mapper.TheoreticalPowerCurveMapper; import com.das.modules.equipment.domain.excel.SheetInfoBean; import com.das.modules.equipment.entity.SysEquipment; import com.das.modules.equipment.mapper.SysEquipmentMapper; +import com.das.modules.fdr.config.MinioProperties; import com.das.modules.fdr.domain.FileNode; import com.das.modules.fdr.domain.SysFaultCodeDict; import com.das.modules.fdr.domain.SysFaultRecordingDesc; @@ -26,6 +27,7 @@ import com.das.modules.fdr.service.FaultRecorderService; import com.das.modules.fdr.service.MinioViewsServcie; import io.micrometer.common.util.StringUtils; import io.minio.MinioClient; +import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; @@ -52,6 +54,9 @@ public class FaultRecorderServiceImpl implements FaultRecorderService { @Autowired MinioClient minioClient; + @Resource + private MinioProperties minioAutoProperties; + @Autowired private SysEquipmentMapper sysEquipmentMapper; @@ -82,7 +87,7 @@ public class FaultRecorderServiceImpl implements FaultRecorderService { @Override public String upload(String parent, String folderName, MultipartFile file) { - return minioViewsServcie.upload(parent, folderName, file); + return minioViewsServcie.upload(minioAutoProperties.getBucket(), parent, folderName, file); } @Override diff --git a/das/src/main/resources/application.yml b/das/src/main/resources/application.yml index 8c8f6e94..ed5945e9 100644 --- a/das/src/main/resources/application.yml +++ b/das/src/main/resources/application.yml @@ -109,5 +109,6 @@ tdengine: minio: url: http://192.168.109.187:9000 bucket: das + publicBucket: das-public accessKey: das secretKey: zaq12WSX \ No newline at end of file