From 4b9dc71d162f3fcd79bc88b170154b7516fc4962 Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期四, 18 十二月 2025 13:37:14 +0800
Subject: [PATCH] 新增设备维修保养过程描述,上传对应附件
---
src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java | 37 +++++
src/main/java/com/ruoyi/common/enums/StorageAttachmentRecordType.java | 4
src/main/java/com/ruoyi/device/controller/DeviceRepairController.java | 11 -
src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java | 4
src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java | 35 ++++-
src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java | 7 +
src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java | 60 +--------
src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java | 69 +----------
src/main/java/com/ruoyi/device/service/IDeviceRepairService.java | 4
src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java | 30 ++++
src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java | 13 -
src/main/java/com/ruoyi/project/common/CommonController.java | 36 ++---
12 files changed, 137 insertions(+), 173 deletions(-)
diff --git a/src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java b/src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java
index de2c096..5cbfb01 100644
--- a/src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java
+++ b/src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java
@@ -1,6 +1,7 @@
package com.ruoyi.basic.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.basic.dto.StorageBlobDTO;
import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.common.constant.StorageAttachmentConstants;
import com.ruoyi.common.enums.StorageAttachmentRecordType;
@@ -23,7 +24,7 @@
* @param fileType 鏂囦欢绫诲瀷
* @return 鏂囦欢淇℃伅鍒楄〃
*/
- List<StorageAttachment> selectStorageAttachments(Long recordId, StorageAttachmentRecordType recordType, StorageAttachmentConstants fileType);
+ List<StorageAttachment> selectStorageAttachments(Long recordId, StorageAttachmentRecordType recordType, String fileType);
/**
* 淇濆瓨閫氱敤鏂囦欢涓婁紶鐨勯檮浠朵俊鎭�
@@ -34,6 +35,8 @@
*/
public void saveStorageAttachment(List<StorageAttachment> attachments, Long recordId, StorageAttachmentRecordType recordType, StorageAttachmentConstants fileType);
+ public void saveStorageAttachmentByStorageBlob(List<StorageBlobDTO> storageBlobs, Long recordId, StorageAttachmentRecordType recordType, String fileType);
+
public void saveStorageAttachment(List<StorageAttachment> attachments, Long recordId, StorageAttachmentRecordType recordType, String fileType);
@@ -43,4 +46,6 @@
* @return 鍒犻櫎缁撴灉
*/
public int deleteStorageAttachment(StorageAttachment storageAttachment);
+
+ public int deleteStorageAttachmentAndBlob(StorageAttachment storageAttachment);
}
diff --git a/src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java b/src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java
index 0d126c7..c405285 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java
@@ -3,9 +3,9 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.basic.dto.StorageBlobDTO;
-import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.basic.mapper.StorageAttachmentMapper;
import com.ruoyi.basic.mapper.StorageBlobMapper;
+import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.basic.pojo.StorageBlob;
import com.ruoyi.basic.service.StorageAttachmentService;
import com.ruoyi.basic.service.StorageBlobService;
@@ -43,17 +43,17 @@
private MinioUtils minioUtils;
@Override
- public List<StorageAttachment> selectStorageAttachments(Long recordId, StorageAttachmentRecordType recordType, StorageAttachmentConstants fileType) {
+ public List<StorageAttachment> selectStorageAttachments(Long recordId, StorageAttachmentRecordType recordType, String fileType) {
List<StorageAttachment> storageAttachments = storageAttachmentMapper.selectList(new LambdaQueryWrapper<StorageAttachment>()
.eq(StorageAttachment::getRecordId, recordId)
.eq(StorageAttachment::getRecordType, recordType.ordinal())
- .eq(StorageAttachment::getName, fileType.toString()));
+ .eq(StorageAttachment::getName, fileType));
if (storageAttachments != null) {
for (StorageAttachment storageAttachment : storageAttachments) {
StorageBlob storageBlob = storageBlobMapper.selectById(storageAttachment.getStorageBlobId());
StorageBlobDTO storageBlobDTO = new StorageBlobDTO();
BeanUtils.copyProperties(storageBlob, storageBlobDTO);
- storageBlobDTO.setUrl(minioUtils.getPreviewUrl(storageBlob.getBucketName(), storageBlob.getBucketName(), true));
+ storageBlobDTO.setUrl(minioUtils.getPreviewUrl(storageBlob.getBucketFilename(), storageBlob.getBucketName(), true));
storageAttachment.setStorageBlobDTO(storageBlobDTO);
}
}
@@ -74,7 +74,26 @@
attachment.setStorageBlobId(storageBlob.getId());
storageAttachmentMapper.insert(attachment);
}
+ }
+ @Override
+ public void saveStorageAttachmentByStorageBlob(List<StorageBlobDTO> storageBlobs, Long recordId, StorageAttachmentRecordType recordType, String fileType) {
+ // 鍒犻櫎鏃у浘
+ deleteStorageAttachment(new StorageAttachment(fileType, (long) recordType.ordinal(), recordId));
+ for (StorageBlobDTO storageBlobDTO : storageBlobs) {
+ StorageAttachment attachment = new StorageAttachment(
+ fileType,
+ (long) recordType.ordinal(),
+ recordId
+ );
+ attachment.setStorageBlobDTO(storageBlobDTO);
+ // 缁戝畾鍏宠仈璁板綍
+ attachment.setName(fileType);
+ attachment.setRecordType((long) recordType.ordinal());
+ attachment.setRecordId(recordId);
+ attachment.setStorageBlobId(storageBlobDTO.getId());
+ storageAttachmentMapper.insert(attachment);
+ }
}
@Override
@@ -96,8 +115,16 @@
@Override
public int deleteStorageAttachment(StorageAttachment storageAttachment) {
// 鍏堝垹闄ゆ槑缁嗚〃
- storageBlobService.deleteStorageBlobs(storageAttachment);
+ return storageAttachmentMapper.delete(new LambdaQueryWrapper<StorageAttachment>()
+ .eq(StorageAttachment::getRecordId, storageAttachment.getRecordId())
+ .eq(StorageAttachment::getRecordType, storageAttachment.getRecordType())
+ .eq(StorageAttachment::getName, storageAttachment.getName()));
+ }
+ @Override
+ public int deleteStorageAttachmentAndBlob(StorageAttachment storageAttachment) {
+ // 鍏堝垹闄ゆ槑缁嗚〃
+ storageBlobService.deleteStorageBlobs(storageAttachment);
return storageAttachmentMapper.delete(new LambdaQueryWrapper<StorageAttachment>()
.eq(StorageAttachment::getRecordId, storageAttachment.getRecordId())
diff --git a/src/main/java/com/ruoyi/common/enums/StorageAttachmentRecordType.java b/src/main/java/com/ruoyi/common/enums/StorageAttachmentRecordType.java
index a4b889d..6194062 100644
--- a/src/main/java/com/ruoyi/common/enums/StorageAttachmentRecordType.java
+++ b/src/main/java/com/ruoyi/common/enums/StorageAttachmentRecordType.java
@@ -12,7 +12,9 @@
Template("Template","鑼冧緥"),
Archives("Archives","鏂囨。绠$悊"),
InspectionTasks("InspectionTasks","鐢熶骇宸℃"),
- QrCodeScanRecords("QrCodeScanRecords","浜岀淮鐮佹壂鐮佽褰曟枃浠�");
+ QrCodeScanRecords("QrCodeScanRecords","浜岀淮鐮佹壂鐮佽褰曟枃浠�"),
+ DeviceRepairImage("DeviceRepairImage","璁惧鎶ヤ慨鍥剧墖"),
+ DeviceMaintenanceImage("DeviceMaintenanceImage","璁惧淇濆吇鍥剧墖");
private final String code;
diff --git a/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java b/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java
index 37ce27d..71fd2ce 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java
@@ -3,13 +3,9 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.device.dto.DeviceMaintenanceDto;
-import com.ruoyi.device.dto.DeviceRepairDto;
import com.ruoyi.device.pojo.DeviceLedger;
-import com.ruoyi.device.pojo.DeviceMaintenance;
-import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.device.service.IDeviceMaintenanceService;
-import com.ruoyi.device.service.IDeviceRepairService;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
@@ -17,7 +13,6 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
import java.util.Arrays;
@Api(tags = "璁惧淇濆吇")
@@ -40,7 +35,7 @@
@PostMapping()
@ApiModelProperty("娣诲姞璁惧淇濆吇")
- public AjaxResult add(@RequestBody DeviceMaintenance deviceMaintenance) {
+ public AjaxResult add(@RequestBody DeviceMaintenanceDto deviceMaintenance) {
DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId());
deviceMaintenance.setDeviceName(byId.getDeviceName());
deviceMaintenance.setDeviceModel(byId.getDeviceModel());
@@ -55,7 +50,7 @@
@PutMapping ()
@ApiModelProperty("淇敼璁惧淇濆吇")
- public AjaxResult update(@RequestBody DeviceMaintenance deviceMaintenance) {
+ public AjaxResult update(@RequestBody DeviceMaintenanceDto deviceMaintenance) {
DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId());
deviceMaintenance.setDeviceName(byId.getDeviceName());
deviceMaintenance.setDeviceModel(byId.getDeviceModel());
@@ -64,8 +59,10 @@
@PostMapping ("maintenance")
@ApiModelProperty("淇敼璁惧淇濆吇")
- public AjaxResult maintenance(@RequestBody DeviceMaintenance deviceMaintenance) {
+ public AjaxResult maintenance(@RequestBody DeviceMaintenanceDto deviceMaintenance) {
+ DeviceMaintenanceDto byId = deviceMaintenanceService.detailById(deviceMaintenance.getId());
deviceMaintenance.setStatus(1);
+ deviceMaintenance.setFiles(byId.getFiles());
return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance);
}
diff --git a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
index 5c3dd58..e02e223 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
@@ -3,8 +3,6 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.device.dto.DeviceRepairDto;
-import com.ruoyi.device.pojo.DeviceLedger;
-import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.device.service.IDeviceRepairService;
import com.ruoyi.framework.web.domain.AjaxResult;
@@ -14,7 +12,6 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
import java.util.Arrays;
@Api(tags = "璁惧鎶ヤ慨绠$悊")
@@ -36,7 +33,7 @@
@PostMapping()
@ApiModelProperty("娣诲姞璁惧鎶ヤ慨")
- public AjaxResult add( @RequestBody DeviceRepair deviceRepair) {
+ public AjaxResult add( @RequestBody DeviceRepairDto deviceRepair) {
return deviceRepairService.saveDeviceRepair(deviceRepair);
}
@@ -49,14 +46,16 @@
@PutMapping ()
@ApiModelProperty("淇敼璁惧鎶ヤ慨")
- public AjaxResult update( @RequestBody DeviceRepair deviceRepair) {
+ public AjaxResult update( @RequestBody DeviceRepairDto deviceRepair) {
return deviceRepairService.updateDeviceRepair(deviceRepair);
}
@PostMapping ("repair")
@ApiModelProperty("璁惧缁翠慨")
- public AjaxResult repair( @RequestBody DeviceRepair deviceRepair) {
+ public AjaxResult repair( @RequestBody DeviceRepairDto deviceRepair) {
+ DeviceRepairDto deviceRepairDto = deviceRepairService.detailById(deviceRepair.getId());
deviceRepair.setStatus(1);
+ deviceRepair.setFiles(deviceRepairDto.getFiles());
return deviceRepairService.updateDeviceRepair(deviceRepair);
}
diff --git a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
index b10f1e9..1c64da2 100644
--- a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
+++ b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
@@ -1,73 +1,27 @@
package com.ruoyi.device.dto;
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.device.pojo.DeviceMaintenance;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import java.time.LocalDateTime;
+import java.util.List;
@Data
-public class DeviceMaintenanceDto {
-
-
- @ApiModelProperty("璁惧淇濆吇id")
-
- private Long id;
-
- @ApiModelProperty("璁惧鍙拌处id")
- private Long deviceLedgerId;
-
- @ApiModelProperty("璁惧鍚嶇О")
- private String deviceName;
-
- @ApiModelProperty("瑙勬牸鍨嬪彿")
- private String deviceModel;
+public class DeviceMaintenanceDto extends DeviceMaintenance {
@ApiModelProperty("璁″垝淇濆吇鏃ユ湡")
private String maintenancePlanTimeReq;
-
- @ApiModelProperty("璁″垝淇濆吇鏃ユ湡")
- private LocalDateTime maintenancePlanTime;
@ApiModelProperty("瀹為檯淇濆吇浜�")
private String maintenanceActuallyName;
@ApiModelProperty("瀹為檯淇濆吇鏃ユ湡")
- private LocalDateTime maintenanceActuallyTime;
-
- @ApiModelProperty("瀹為檯淇濆吇鏃ユ湡")
private String maintenanceActuallyTimeReq;
-
- @ApiModelProperty("淇濆吇缁撴灉 0 缁翠慨 1 瀹屽ソ")
- private Integer maintenanceResult;
-
- @ApiModelProperty("鐘舵�� 0 寰呬繚鍏� 1 瀹岀粨")
- private Integer status;
-
- @ApiModelProperty("鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @ApiModelProperty("鏇存柊鏃堕棿")
- @TableField(fill = FieldFill.UPDATE)
- private LocalDateTime updateTime;
-
- @ApiModelProperty("鍒涘缓浜�")
- @TableField(fill = FieldFill.INSERT)
- private String createUser;
-
- @ApiModelProperty("鏇存柊浜�")
- @TableField(fill = FieldFill.UPDATE)
- private String updateUser;
-
- @ApiModelProperty("绉熸埛id")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
- @ApiModelProperty("鍒涘缓浜哄悕绉�")
- private String createUserName;
@ApiModelProperty("淇濆吇杩涘害鎻忚堪")
private String maintenanceProcessDesc;
+
+ @ApiModelProperty("璁惧鍥剧墖")
+ private List<StorageBlobDTO> files;
}
diff --git a/src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java b/src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java
index 507c395..cdc89eb 100644
--- a/src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java
+++ b/src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java
@@ -1,76 +1,21 @@
package com.ruoyi.device.dto;
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.device.pojo.DeviceRepair;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import java.time.LocalDateTime;
-import java.util.Date;
+import java.util.List;
@Data
-public class DeviceRepairDto {
+public class DeviceRepairDto extends DeviceRepair {
- @ApiModelProperty("璁惧鎶ヤ慨id")
- private Long id;
+ @ApiModelProperty("璁惧鍥剧墖")
+ private List<StorageBlobDTO> files;
- @ApiModelProperty("璁惧鍙拌处id")
- private Long deviceLedgerId;
-
- @ApiModelProperty("璁惧鍚嶇О")
- private String deviceName;
-
- @ApiModelProperty("璁惧鍨嬪彿")
- private String deviceModel;
-
- @ApiModelProperty("鎶ヤ慨鏃堕棿")
- private Date repairTime;
-
private String repairTimeStr;
-
- @ApiModelProperty("鎶ヤ慨浜�")
- private String repairName;
-
- @ApiModelProperty("鎶ヤ慨鍐呭")
- private String remark;
-
- @ApiModelProperty("缁翠慨浜�")
- private String maintenanceName;
-
- @ApiModelProperty("缁翠慨鏃堕棿")
- private Date maintenanceTime;
-
- private String maintenanceTimeStr;
-
- @ApiModelProperty("缁翠慨缁撴灉")
- private String maintenanceResult;
-
- @ApiModelProperty("鐘舵��")
- private Integer status;
-
- @ApiModelProperty("鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @ApiModelProperty("鏇存柊鏃堕棿")
- @TableField(fill = FieldFill.UPDATE)
- private LocalDateTime updateTime;
-
- @ApiModelProperty("鍒涘缓浜�")
- @TableField(fill = FieldFill.INSERT)
- private String createUser;
-
- @ApiModelProperty("鏇存柊浜�")
- @TableField(fill = FieldFill.UPDATE)
- private String updateUser;
-
- @ApiModelProperty("绉熸埛id")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
- @ApiModelProperty("淇濆吇杩涘害鎻忚堪")
- private String maintenanceProcessDesc;
+ private String maintenanceTimeStr ;
}
diff --git a/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java b/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java
index 82db913..77fc6b7 100644
--- a/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java
+++ b/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java
@@ -13,9 +13,9 @@
IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto);
- AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance);
+ AjaxResult saveDeviceRepair(DeviceMaintenanceDto deviceMaintenance);
- AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance);
+ AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenanceDto deviceMaintenance);
void export(HttpServletResponse response, Long[] ids);
diff --git a/src/main/java/com/ruoyi/device/service/IDeviceRepairService.java b/src/main/java/com/ruoyi/device/service/IDeviceRepairService.java
index 5877ffd..a27c032 100644
--- a/src/main/java/com/ruoyi/device/service/IDeviceRepairService.java
+++ b/src/main/java/com/ruoyi/device/service/IDeviceRepairService.java
@@ -14,9 +14,9 @@
IPage<DeviceRepairDto> queryPage(Page page, DeviceRepairDto deviceRepairDto);
- AjaxResult saveDeviceRepair(DeviceRepair deviceRepair);
+ AjaxResult saveDeviceRepair(DeviceRepairDto deviceRepair);
- AjaxResult updateDeviceRepair(DeviceRepair deviceRepair);
+ AjaxResult updateDeviceRepair(DeviceRepairDto deviceRepair);
void export(HttpServletResponse response, Long[] ids);
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
index 011d32b..06b8c1d 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
@@ -4,6 +4,11 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.basic.pojo.StorageAttachment;
+import com.ruoyi.basic.service.StorageAttachmentService;
+import com.ruoyi.common.constant.StorageAttachmentConstants;
+import com.ruoyi.common.enums.StorageAttachmentRecordType;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.device.dto.DeviceMaintenanceDto;
@@ -12,13 +17,14 @@
import com.ruoyi.device.pojo.DeviceMaintenance;
import com.ruoyi.device.service.IDeviceMaintenanceService;
import com.ruoyi.framework.web.domain.AjaxResult;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
+import java.util.stream.Collectors;
@Service
@@ -28,6 +34,8 @@
@Autowired
private DeviceMaintenanceMapper deviceMaintenanceMapper;
+ @Autowired
+ private StorageAttachmentService storageAttachmentService;
@Override
public IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto) {
@@ -36,8 +44,11 @@
}
@Override
- public AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance) {
+ public AjaxResult saveDeviceRepair(DeviceMaintenanceDto deviceMaintenance) {
boolean save = this.save(deviceMaintenance);
+ storageAttachmentService.saveStorageAttachmentByStorageBlob(deviceMaintenance.getFiles(),
+ deviceMaintenance.getId(), StorageAttachmentRecordType.DeviceMaintenanceImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
if (save){
return AjaxResult.success();
}
@@ -45,8 +56,11 @@
}
@Override
- public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance) {
+ public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenanceDto deviceMaintenance) {
if (this.updateById(deviceMaintenance)) {
+ storageAttachmentService.saveStorageAttachmentByStorageBlob(deviceMaintenance.getFiles(),
+ deviceMaintenance.getId(), StorageAttachmentRecordType.DeviceMaintenanceImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
return AjaxResult.success();
}
return AjaxResult.error();
@@ -70,7 +84,13 @@
@Override
public DeviceMaintenanceDto detailById(Long id) {
-
- return deviceMaintenanceMapper.detailById(id);
+ DeviceMaintenanceDto deviceMaintenanceDto = deviceMaintenanceMapper.detailById(id);
+ List<StorageAttachment> storageAttachments = storageAttachmentService.selectStorageAttachments(id, StorageAttachmentRecordType.DeviceMaintenanceImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
+ if (CollectionUtils.isNotEmpty(storageAttachments)) {
+ List<StorageBlobDTO> storageBlobs = storageAttachments.stream().map(StorageAttachment::getStorageBlobDTO).collect(Collectors.toList());
+ deviceMaintenanceDto.setFiles(storageBlobs);
+ }
+ return deviceMaintenanceDto;
}
}
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java
index 1f09d07..e9fddfb 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java
@@ -3,14 +3,17 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.basic.pojo.StorageAttachment;
+import com.ruoyi.basic.service.StorageAttachmentService;
+import com.ruoyi.common.constant.StorageAttachmentConstants;
+import com.ruoyi.common.enums.StorageAttachmentRecordType;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.device.dto.DeviceDefectRecordDto;
import com.ruoyi.device.dto.DeviceRepairDto;
import com.ruoyi.device.execl.DeviceRepairExeclDto;
-import com.ruoyi.device.mapper.DeviceDefectRecordMapper;
import com.ruoyi.device.mapper.DeviceRepairMapper;
-import com.ruoyi.device.pojo.DeviceDefectRecord;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.DeviceDefectRecordService;
@@ -19,6 +22,7 @@
import com.ruoyi.framework.web.domain.AjaxResult;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -26,6 +30,7 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.util.stream.Collectors;
@Service
@AllArgsConstructor
@@ -38,6 +43,8 @@
private DeviceRepairMapper deviceRepairMapper;
@Autowired
private IDeviceLedgerService deviceLedgerService;
+ @Autowired
+ private StorageAttachmentService storageAttachmentService;
@Override
public IPage<DeviceRepairDto> queryPage(Page page, DeviceRepairDto deviceRepairDto) {
@@ -45,19 +52,22 @@
}
@Override
- public AjaxResult saveDeviceRepair(DeviceRepair deviceRepair) {
+ public AjaxResult saveDeviceRepair(DeviceRepairDto deviceRepair) {
DeviceLedger byId = deviceLedgerService.getById(deviceRepair.getDeviceLedgerId());
deviceRepair.setDeviceName(byId.getDeviceName());
deviceRepair.setDeviceModel(byId.getDeviceModel());
- boolean save = this.save(deviceRepair);
- if (save){
+ int save = deviceRepairMapper.insert(deviceRepair);
+ storageAttachmentService.saveStorageAttachmentByStorageBlob(deviceRepair.getFiles(),
+ deviceRepair.getId(), StorageAttachmentRecordType.DeviceRepairImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
+ if (save == 1){
return AjaxResult.success();
}
return AjaxResult.error();
}
@Override
- public AjaxResult updateDeviceRepair(DeviceRepair deviceRepair) {
+ public AjaxResult updateDeviceRepair(DeviceRepairDto deviceRepair) {
if (this.updateById(deviceRepair)) {
Long id = deviceRepair.getId();
//
@@ -71,6 +81,9 @@
deviceDefectRecordService.updateByDDR(deviceDefectRecord);
});
}
+ storageAttachmentService.saveStorageAttachmentByStorageBlob(deviceRepair.getFiles(),
+ deviceRepair.getId(), StorageAttachmentRecordType.DeviceRepairImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
return AjaxResult.success();
}
return AjaxResult.error();
@@ -112,8 +125,14 @@
@Override
public DeviceRepairDto detailById(Long id) {
-
- return deviceRepairMapper.detailById(id);
+ DeviceRepairDto deviceRepairDto = deviceRepairMapper.detailById(id);
+ List<StorageAttachment> storageAttachments = storageAttachmentService.selectStorageAttachments(id, StorageAttachmentRecordType.DeviceRepairImage,
+ StorageAttachmentConstants.StorageAttachmentImage);
+ if (CollectionUtils.isNotEmpty(storageAttachments)) {
+ List<StorageBlobDTO> storageBlobs = storageAttachments.stream().map(StorageAttachment::getStorageBlobDTO).collect(Collectors.toList());
+ deviceRepairDto.setFiles(storageBlobs);
+ }
+ return deviceRepairDto;
}
}
diff --git a/src/main/java/com/ruoyi/project/common/CommonController.java b/src/main/java/com/ruoyi/project/common/CommonController.java
index 21fa5ec..67cbc0b 100644
--- a/src/main/java/com/ruoyi/project/common/CommonController.java
+++ b/src/main/java/com/ruoyi/project/common/CommonController.java
@@ -1,24 +1,6 @@
package com.ruoyi.project.common;
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
import com.ruoyi.basic.service.StorageBlobService;
-import com.ruoyi.framework.web.domain.R;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
@@ -26,6 +8,20 @@
import com.ruoyi.framework.config.RuoYiConfig;
import com.ruoyi.framework.config.ServerConfig;
import com.ruoyi.framework.web.domain.AjaxResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
/**
* 閫氱敤璇锋眰澶勭悊
@@ -84,9 +80,9 @@
*/
@PostMapping("/minioUploads")
@ApiOperation(value = "minio閫氱敤涓婁紶璇锋眰")
- public AjaxResult minioUploadFiles(List<MultipartFile> files, String bucketName, Long type) throws Exception
+ public AjaxResult minioUploadFiles(@RequestParam("file") MultipartFile file, @RequestParam("bucketName") String bucketName, @RequestParam("type") Long type) throws Exception
{
- return AjaxResult.success(storageBlobService.updateStorageBlobs(files, bucketName,type));
+ return AjaxResult.success(storageBlobService.updateStorageBlobs(new ArrayList<>(Arrays.asList(file)), bucketName,type));
}
/**
--
Gitblit v1.9.3