Sfoglia il codice sorgente

修那个照片组上传

hyy 7 mesi fa
parent
commit
f1a25a308e

+ 6 - 3
yudao-module-museums/yudao-module-museums-api/src/main/java/cn/iocoder/yudao/module/museums/enums/ErrorCodeConstants.java

@@ -10,9 +10,10 @@ import cn.iocoder.yudao.framework.common.exception.ErrorCode;
 public class ErrorCodeConstants {
     // ========== 标本管理 1-016-000-000 ==========
     public static final ErrorCode SPECIMEN_INFO_NOT_EXISTS = new ErrorCode(1-016-000-000, "标本管理不存在");
-    public static final ErrorCode SPECIMEN_INFO_LIST_IS_EMPTY = new ErrorCode(1-016-000-001, "标本管理不存在");
+    public static final ErrorCode SPECIMEN_INFO_LIST_IS_EMPTY = new ErrorCode(1-016-000-001, "标本excel列表为空");
     public static final ErrorCode UPLOADED_FOLDER_CANNOT_EMPTY = new ErrorCode(1-016-000-002, "上传的压缩包不能为空");
     public static final ErrorCode INVALID_IMAGE_FORMAT = new ErrorCode(1-016-000-003, "图片格式无效");
+    public static final ErrorCode SPECIMEN_NUMBER_ALREADY_EXISTS_CANNOT_ADDED = new ErrorCode(1-016-000-004, "标本编号已存在,无法新增");
     // ========== 标本出库回库信息 1-016-001-000 ==========
     public static final ErrorCode SPECIMEN_OUTBOUND_NOT_EXISTS = new ErrorCode(1-016-001-000, "标本出库回库信息不存在");
     public static final ErrorCode NO_PERMISSION_VIEW_NON_RETURNED_SPECIMENS = new ErrorCode(1-016-001-001, "没有权限查看非已回库的标本出库信息");
@@ -20,11 +21,13 @@ public class ErrorCodeConstants {
     public static final ErrorCode SPECIMEN_IS_LENDING_OUT = new ErrorCode(1-016-001-003, "标本当前状态为借出中,无法进行出库操作");
     public static final ErrorCode USER_NOT_HAVE_THE_RIGHT_FIRST_INSTANCE = new ErrorCode(1-016-001-004, "用户没有一审权限");
     public static final ErrorCode USER_NOT_HAVE_THE_RIGHT_SECOND_INSTANCE = new ErrorCode(1-016-001-005, "用户没有二审权限");
-//    public static final ErrorCode USER_NOT_HAVE_THE_RIGHT_SECOND_INSTANCE = new ErrorCode(1-016-001-005, "用户没有二审权限");
+    public static final ErrorCode INVALID_APPROVAL_STATUS = new ErrorCode(1-016-001-005, "无效的审批状态");
 
     // ========== 博物馆照片组 1-016-002-000 ==========
     public static final ErrorCode PHOTO_GROUP_NOT_EXISTS = new ErrorCode(1-016-002-000, "博物馆照片组不存在");
-    public static final ErrorCode PHOTO_GROUP_UPLOAD_FAILED = new ErrorCode(1-016-000-003, "照片组上传失败");
+    public static final ErrorCode PHOTO_GROUP_UPLOAD_FAILED = new ErrorCode(1-016-002-001, "照片组上传失败");
+    public static final ErrorCode PHOTO_GROUP_PACKAGE_FAILED_DECOMPRESS = new ErrorCode(1-016-002-002, "照片组上传失败");
+    public static final ErrorCode PHOTO_GROUP_MUST_BE_COMPRESSED_PACKAGE = new ErrorCode(1-016-002-003, "请上传图片压缩包");
 
     // ========== 博物馆文件管理 1-016-003-000 ==========
     public static final ErrorCode DOCUMENT_NOT_EXISTS = new ErrorCode(1-016-003-000, "博物馆文件管理不存在");

+ 4 - 4
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/PhotoGroupController.java

@@ -106,10 +106,10 @@ public class PhotoGroupController {
     @Operation(summary = "创建博物馆照片组(压缩包)")
     @PreAuthorize("@ss.hasPermission('museums:photo-group:create')")
     public CommonResult<Integer> importPhotoGroup(
-            @NotEmpty @RequestPart("groupName") String groupName,
-            @RequestPart(value = "groupDescription", required = false) String groupDescription, // 设置为非必填
-            @RequestPart(value = "groupDate", required = false) LocalDateTime groupDate, // 设置为非必填
-            @RequestPart("file") MultipartFile file) {
+            @NotEmpty @RequestParam("groupName") String groupName,
+            @RequestParam(value = "groupDescription", required = false) String groupDescription, // 设置为非必填
+            @RequestParam(value = "groupDate", required = false) LocalDateTime groupDate, // 设置为非必填
+            @RequestParam("file") MultipartFile file) {
 
         try {
             // 调用服务层创建照片组并上传照片

+ 2 - 2
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/SpecimenOutboundController.java

@@ -75,7 +75,7 @@ public class SpecimenOutboundController {
             req.setTwoApproveUsers(operatorId);
             req.setTwoApprovalTime(now);
         } else {
-            throw new IllegalArgumentException("无效的审批状态");
+            throw exception(INVALID_APPROVAL_STATUS);
         }
         // 调用更新状态方法
         specimenOutboundService.updateStatus(req);
@@ -98,7 +98,7 @@ public class SpecimenOutboundController {
             specimenOutboundService.recompileSpecimenOutbound(updateReqVO);
             return success(true);
         } else {
-            throw new IllegalArgumentException("无效的审批状态,无法编辑");
+            throw exception(INVALID_APPROVAL_STATUS);
         }
     }
 

+ 2 - 4
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photogroup/PhotoGroupServiceImpl.java

@@ -84,7 +84,6 @@ public class PhotoGroupServiceImpl implements PhotoGroupService {
         photoGroupMapper.deleteById(id);
     }
 
-
     private void validatePhotoGroupExists(Integer id) {
         if (photoGroupMapper.selectById(id) == null) {
             throw exception(PHOTO_GROUP_NOT_EXISTS);
@@ -107,7 +106,7 @@ public class PhotoGroupServiceImpl implements PhotoGroupService {
     public Integer importPhotoGroup(String groupName, String groupDescription, LocalDateTime groupDate, MultipartFile file) throws Exception {
         // 校验文件类型
         if (!file.getOriginalFilename().endsWith(".zip")) {
-            throw new IllegalArgumentException("上传文件必须是压缩包");
+            throw exception(PHOTO_GROUP_MUST_BE_COMPRESSED_PACKAGE);
         }
 
         // 插入照片组信息
@@ -149,8 +148,7 @@ public class PhotoGroupServiceImpl implements PhotoGroupService {
                 }
             }
         } catch (Exception e) {
-            // 捕获异常并重新抛出,事务会自动回滚
-            throw new Exception("照片上传或解压失败: " + e.getMessage(), e);
+            throw exception(PHOTO_GROUP_PACKAGE_FAILED_DECOMPRESS);
         } finally {
             // 清理临时文件
             FileUtils.deleteDirectory(tempDir); // 使用 FileUtils 清理

+ 2 - 4
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/specimeninfo/SpecimenInfoServiceImpl.java

@@ -67,7 +67,7 @@ public class SpecimenInfoServiceImpl implements SpecimenInfoService {
     public String createSpecimenInfo(SpecimenInfoSaveReqVO createReqVO) {
         // 校验标本编号是否已存在
         if (specimenInfoMapper.existsByNumber(createReqVO.getSpecimenNumber())) {
-            return "标本编号已存在,无法新增";
+            throw exception(SPECIMEN_NUMBER_ALREADY_EXISTS_CANNOT_ADDED);
         }
 
         // 插入新标本信息
@@ -78,11 +78,9 @@ public class SpecimenInfoServiceImpl implements SpecimenInfoService {
         LogRecordContext.putVariable("specimenInfo", specimenInfo);
 
         // 返回新创建的标本ID
-        return "标本创建成功 " + specimenInfo.getId();
+        return "标本创建成功,标本ID:" + specimenInfo.getId();
     }
 
-
-
 //    @Override
 //    public void updateSpecimenInfo(SpecimenInfoSaveReqVO updateReqVO) {
 //        // 校验存在

+ 1 - 1
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/specimenoutbound/SpecimenOutboundServiceImpl.java

@@ -255,7 +255,7 @@ public class SpecimenOutboundServiceImpl implements SpecimenOutboundService {
         // 记录日志上下文
         LogRecordContext.putVariable("existingSpecimen", existingSpecimen); // 添加更新后的出库单对象
 
-        return "标本ID"+existingSpecimen.getInfoId()+"出库成功";
+        return "标本ID"+existingSpecimen.getInfoId()+"出库成功";
     }
 
     //用来填写回库表单,为方便添加数据,现在先用上面这段