Browse Source

照片组时间

hyy 3 months ago
parent
commit
d57002c276
18 changed files with 38 additions and 87 deletions
  1. 2 6
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/PhotoGroupController.java
  2. 0 19
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/vo/CreatePhotoGroupWithPhotosReqVO.java
  3. 5 5
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/vo/PhotoGroupSaveReqVO.java
  4. 1 2
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photos/PhotosController.java
  5. 3 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photos/vo/PhotosPageReqVO.java
  6. 3 10
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/SpecimenInfoController.java
  7. 3 3
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoExportRespVO.java
  8. 0 1
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoPageReqVO.java
  9. 0 2
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoRespVO.java
  10. 16 3
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoSaveReqVO.java
  11. 0 8
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenOutboundFormRespVO.java
  12. 2 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundSaveReqVO.java
  13. 0 1
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/photogroup/PhotoGroupMapper.java
  14. 1 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/photos/PhotosMapper.java
  15. 0 2
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photogroup/PhotoGroupServiceImpl.java
  16. 1 9
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photos/PhotosService.java
  17. 1 14
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photos/PhotosServiceImpl.java
  18. 0 2
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/specimeninfo/SpecimenInfoServiceImpl.java

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

@@ -1,6 +1,5 @@
 package cn.iocoder.yudao.module.museums.controller.admin.photogroup;
 
-import cn.iocoder.yudao.module.museums.service.photos.PhotosService;
 import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
 import org.springframework.validation.annotation.Validated;
@@ -47,9 +46,6 @@ public class PhotoGroupController {
     @Resource
     private PhotoGroupService photoGroupService;
 
-    @Resource
-    private PhotosService photosService;
-
     @PostMapping("/create")
     @Operation(summary = "创建博物馆照片组")
     @PreAuthorize("@ss.hasPermission('museums:photo-group:create')")
@@ -109,8 +105,8 @@ public class PhotoGroupController {
     @PreAuthorize("@ss.hasPermission('museums:photo-group:create')")
     public CommonResult<Integer> importPhotoGroup(
             @NotEmpty @RequestParam("groupName") String groupName,
-            @RequestParam(value = "groupDescription", required = false) String groupDescription, // 设置为非必填
-            @RequestParam(value = "groupDate", required = false) String groupDateStr, // 设置为非必填
+            @RequestParam(value = "groupDescription", required = false) String groupDescription,
+            @RequestParam(value = "groupDate", required = false) String groupDateStr,
             @RequestParam("file") MultipartFile file) {
 
         LocalDateTime groupDate = null;

+ 0 - 19
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/vo/CreatePhotoGroupWithPhotosReqVO.java

@@ -1,19 +0,0 @@
-package cn.iocoder.yudao.module.museums.controller.admin.photogroup.vo;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.ToString;
-import org.springframework.web.multipart.MultipartFile;
-@Schema(description = "管理后台 - 博物馆照片组分页 Request VO")
-@Data
-@EqualsAndHashCode(callSuper = false)
-@ToString(callSuper = true)
-public class CreatePhotoGroupWithPhotosReqVO {
-
-    @Schema(description = "照片组", example = "你说的对")
-    private PhotoGroupSaveReqVO photoGroupSaveReqVO;
-
-    @Schema(description = "照片url", example = "你说的对")
-    private MultipartFile photoFile;
-}

+ 5 - 5
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/vo/PhotoGroupSaveReqVO.java

@@ -15,13 +15,13 @@ public class PhotoGroupSaveReqVO {
     private Integer id;
 
     @Schema(description = "照片组名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
-    @NotEmpty(message = "照片组名称不能为空") // 保持必填
+    @NotEmpty(message = "照片组名称不能为空")
     private String groupName;
 
-    @Schema(description = "照片组时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) // 设置为非必填
-    private LocalDateTime groupDate; // 添加该属性,非必填
+    @Schema(description = "照片组时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    private LocalDateTime groupDate;
 
-    @Schema(description = "照片组简介", example = "你说的对", requiredMode = Schema.RequiredMode.NOT_REQUIRED) // 设置为非必填
-    private String groupDescription; // 添加该属性,非必填
+    @Schema(description = "照片组简介", example = "你说的对", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    private String groupDescription;
 
 }

+ 1 - 2
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photos/PhotosController.java

@@ -49,12 +49,11 @@ public class PhotosController {
     public CommonResult<Boolean> createPhotos(@Valid @RequestBody PhotosSaveReqVO createReqVO) {
         List<String> photoUrlList = createReqVO.getPhotoUrl();
         for (String url :photoUrlList){
-            photosService.TcreatePhotos(url,createReqVO.getGroupId());
+            photosService.createPhotos(url,createReqVO.getGroupId());
         }
         return success(true);
     }
 
-
     @PutMapping("/update")
     @Operation(summary = "更新博物馆照片")
     @PreAuthorize("@ss.hasPermission('museums:photos:update')")

+ 3 - 0
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photos/vo/PhotosPageReqVO.java

@@ -15,6 +15,9 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
 @ToString(callSuper = true)
 public class PhotosPageReqVO extends PageParam {
 
+    @Schema(description = "照片组表id", example = "5803")
+    private Integer id;
+
     @Schema(description = "照片组表id", example = "5803")
     private Integer groupId;
 

+ 3 - 10
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/SpecimenInfoController.java

@@ -1,14 +1,11 @@
 package cn.iocoder.yudao.module.museums.controller.admin.specimeninfo;
 
-import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants;
 import cn.iocoder.yudao.module.museums.enums.common.*;
-import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO;
 import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogReqVO;
 import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogRespVO;
 import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO;
 import cn.iocoder.yudao.module.system.service.logger.OperateLogService;
 import io.swagger.v3.oas.annotations.Parameters;
-import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
 import org.springframework.validation.annotation.Validated;
@@ -19,14 +16,10 @@ import io.swagger.v3.oas.annotations.Operation;
 
 import javax.validation.*;
 import javax.servlet.http.*;
-import java.io.File;
 import java.math.BigDecimal;
 import java.net.URLEncoder;
-import java.nio.file.Files;
-import java.time.LocalDateTime;
 import java.util.*;
 import java.io.IOException;
-import java.util.stream.Collectors;
 
 import cn.iocoder.yudao.framework.common.pojo.PageParam;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
@@ -155,7 +148,7 @@ public class SpecimenInfoController {
                         .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose())  // 主要用途(工业原料/药用/建材/科学研究/观赏/其它)
                         .purpose("科学普及;对比研究")  // 具体用途
                         .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus())  // 馆藏状态(在馆/展陈/借出)
-                        .imageName("image1.jpg、image3.jpg、image3.jpg")  // 图片资料(图件名称)
+                        .imageName("image1.jpg、image2.jpg、image3.jpg")  // 图片资料(图件名称)
                         .description("这是一个矿石标本")  // 文献资料
                         .notes("备注信息")  // 备注
                         .build()
@@ -166,8 +159,8 @@ public class SpecimenInfoController {
     @PostMapping("/import-specimen-with-images")
     @Operation(summary = "导入标本及其图片")
     @Parameters({
-            @Parameter(name = "file", description = "Excel 文件", required = false),
-            @Parameter(name = "imageFile", description = "压缩包文件", required = false),
+            @Parameter(name = "file", description = "Excel 文件"),
+            @Parameter(name = "imageFile", description = "压缩包文件"),
             @Parameter(name = "updateSupport", description = "是否支持更新,默认为 false", example = "true")
     })
     @PreAuthorize("@ss.hasPermission('museums:specimen-info:import')")

+ 3 - 3
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoExportRespVO.java

@@ -162,9 +162,9 @@ public class SpecimenInfoExportRespVO {
     @ExcelProperty("创建时间")
     private LocalDateTime createTime;
 
-    @Schema(description = "注销原因", example = "不香")
-    @ExcelProperty("注销原因")
-    private String deletedReason;
+//    @Schema(description = "注销原因", example = "不香")
+//    @ExcelProperty("注销原因")
+//    private String deletedReason;
 
     //    @Schema(description = "图片路径")
     //    @ExcelProperty("图片路径")

+ 0 - 1
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoPageReqVO.java

@@ -4,7 +4,6 @@ import lombok.*;
 import java.util.*;
 import io.swagger.v3.oas.annotations.media.Schema;
 import cn.iocoder.yudao.framework.common.pojo.PageParam;
-import java.math.BigDecimal;
 import org.springframework.format.annotation.DateTimeFormat;
 import java.time.LocalDateTime;
 

+ 0 - 2
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoRespVO.java

@@ -4,8 +4,6 @@ import cn.iocoder.yudao.module.museums.enums.DictTypeConstants;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
-import java.math.BigDecimal;
-import org.springframework.format.annotation.DateTimeFormat;
 import java.time.LocalDateTime;
 import com.alibaba.excel.annotation.*;
 import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;

+ 16 - 3
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenInfoSaveReqVO.java

@@ -5,8 +5,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
 import javax.validation.constraints.*;
-import java.math.BigDecimal;
-import org.springframework.format.annotation.DateTimeFormat;
 import java.time.LocalDateTime;
 
 @Schema(description = "管理后台 - 标本管理新增/修改 Request VO")
@@ -17,7 +15,7 @@ public class SpecimenInfoSaveReqVO {
     private Integer id;
 
     @Schema(description = "标本类型(矿物、岩石矿石、化石、陨石)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
-    @NotNull(message = "标本类型(矿物、岩石矿石、化石、陨石)不能为空")
+    @NotNull(message = "标本类型不能为空")
     @DiffLogField(name = "标本类型")
     private Integer specimenType;
 
@@ -71,21 +69,27 @@ public class SpecimenInfoSaveReqVO {
     private Integer preservationType;
 
     @Schema(description = "尺寸")
+    @DiffLogField(name = "尺寸")
     private String size;
 
     @Schema(description = "重量")
+    @DiffLogField(name = "重量")
     private String weight;
 
     @Schema(description = "来源(采购、捐赠、采集)")
+    @DiffLogField(name = "来源")
     private Integer source;
 
     @Schema(description = "标本提供者(供应商、捐赠人、采集人)")
+    @DiffLogField(name = "标本提供者")
     private String provider;
 
     @Schema(description = "具体用途")
+    @DiffLogField(name = "具体用途")
     private String purpose;
 
     @Schema(description = "文献资料")
+    @DiffLogField(name = "文献资料")
     private String description;
 
     @Schema(description = "馆藏状态(在馆、借出、展陈)", example = "2")
@@ -93,6 +97,7 @@ public class SpecimenInfoSaveReqVO {
     private Integer collectionStatus;
 
     @Schema(description = "备注")
+    @DiffLogField(name = "备注")
     private String notes;
 
     @Schema(description = "图片名称", example = "芋艿")
@@ -102,18 +107,23 @@ public class SpecimenInfoSaveReqVO {
     private List<String> imagePath;
 
     @Schema(description = "入库操作员")
+    @DiffLogField(name = "入库操作员")
     private String operator;
 
     @Schema(description = "入库时间")
+    @DiffLogField(name = "入库时间")
     private LocalDateTime entryDate;
 
     @Schema(description = "发现时间")
+    @DiffLogField(name = "发现时间")
     private LocalDateTime discoveryTime;
 
     @Schema(description = "降落时间")
+    @DiffLogField(name = "降落时间")
     private LocalDateTime fallTime;
 
     @Schema(description = "入藏时间(购买、捐赠、采集时间)")
+    @DiffLogField(name = "入藏时间")
     private LocalDateTime acquisitionTime;
 
     @Schema(description = "注销原因", example = "坏了")
@@ -129,6 +139,7 @@ public class SpecimenInfoSaveReqVO {
     private String specimenPrice;
 
     @Schema(description = "主要用途(工业原料/药用/建材/科学研究/观赏/其它)", example = "1")
+    @DiffLogField(name = "主要用途")
     private Integer mainPurpose;
 
     @Schema(description = "保存状态(完整/受损/严重受损/无实物)", example = "1")
@@ -136,8 +147,10 @@ public class SpecimenInfoSaveReqVO {
     private Integer saveStatus;
 
     @Schema(description = "省")
+    @DiffLogField(name = "省")
     private String economize;
 
     @Schema(description = "国家")
+    @DiffLogField(name = "国家")
     private String country;
 }

+ 0 - 8
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimeninfo/vo/SpecimenOutboundFormRespVO.java

@@ -1,16 +1,8 @@
 package cn.iocoder.yudao.module.museums.controller.admin.specimeninfo.vo;
 
-import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
-import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
-import cn.iocoder.yudao.module.museums.enums.DictTypeConstants;
-import com.alibaba.excel.annotation.ExcelProperty;
-import com.mzt.logapi.starter.annotation.DiffLogField;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
-
-import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
-import java.util.List;
 
 @Schema(description = "管理后台 - 标本出库单 Request VO")
 @Data

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

@@ -21,6 +21,7 @@ public class SpecimenOutboundSaveReqVO {
 
     @Schema(description = "申请出库的标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
     @NotEmpty(message = "申请出库的标本编号不能为空")
+    @DiffLogField(name = "申请出库的标本编号")
     private List<String> number;
 
     @Schema(description = "申请人姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
@@ -57,6 +58,7 @@ public class SpecimenOutboundSaveReqVO {
     private String attachments;
 
     @Schema(description = "审批状态", example = "2")
+    @DiffLogField(name = "审批状态")
     private Integer status;
 
     @Schema(description = "出库备注信息")

+ 0 - 1
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/photogroup/PhotoGroupMapper.java

@@ -25,7 +25,6 @@ public interface PhotoGroupMapper extends BaseMapperX<PhotoGroupDO> {
                 .eqIfPresent(PhotoGroupDO::getGroupDescription, reqVO.getGroupDescription())
                 .eqIfPresent(PhotoGroupDO::getCreatedAt, reqVO.getCreatedAt())
                 .betweenIfPresent(PhotoGroupDO::getCreateTime, reqVO.getCreateTime())
-                .eqIfPresent(PhotoGroupDO::getUploadPhotos, reqVO.getUploadPhotos())
                 .orderByDesc(PhotoGroupDO::getId));
     }
 

+ 1 - 0
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/photos/PhotosMapper.java

@@ -22,6 +22,7 @@ public interface PhotosMapper extends BaseMapperX<PhotosDO> {
 
     default PageResult<PhotosDO> selectPage(PhotosPageReqVO reqVO) {
         return selectPage(reqVO, new LambdaQueryWrapperX<PhotosDO>()
+                .eqIfPresent(PhotosDO::getId, reqVO.getId())
                 .eqIfPresent(PhotosDO::getGroupId, reqVO.getGroupId())
                 .eqIfPresent(PhotosDO::getPhotoUrl, reqVO.getPhotoUrl())
                 .eqIfPresent(PhotosDO::getCreatedAt, reqVO.getCreatedAt())

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

@@ -160,6 +160,4 @@ public class PhotoGroupServiceImpl implements PhotoGroupService {
 
         return groupId;
     }
-
-
 }

+ 1 - 9
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photos/PhotosService.java

@@ -15,15 +15,7 @@ import org.springframework.web.multipart.MultipartFile;
  */
 public interface PhotosService {
 
-    /**
-     * 创建博物馆照片
-     *
-     * @param createReqVO 创建信息
-     * @return 编号
-     */
-    Integer createPhotos(@Valid PhotosSaveReqVO createReqVO);
-
-     Integer TcreatePhotos(String photoUrl,Integer groupId);
+     Integer createPhotos(String photoUrl,Integer groupId);
     /**
      * 更新博物馆照片
      *

+ 1 - 14
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photos/PhotosServiceImpl.java

@@ -1,7 +1,5 @@
 package cn.iocoder.yudao.module.museums.service.photos;
 
-
-import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.museums.service.photogroup.PhotoGroupServiceImpl;
 import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
@@ -9,9 +7,7 @@ import javax.annotation.Resource;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
 
-import java.io.ByteArrayOutputStream;
 import java.util.*;
-import java.util.zip.ZipEntry;
 import java.util.zip.ZipInputStream;
 
 import cn.iocoder.yudao.module.museums.controller.admin.photos.vo.*;
@@ -39,15 +35,7 @@ public class PhotosServiceImpl implements PhotosService {
     @Resource
     private PhotoGroupServiceImpl photoGroupServiceImpl;
 
-    @Override
-    public Integer createPhotos(PhotosSaveReqVO createReqVO) {
-        for (String url :createReqVO.getPhotoUrl()){
-            TcreatePhotos(url,createReqVO.getGroupId());
-        }
-        return null;
-    }
-
-    public Integer TcreatePhotos(String photoUrl,Integer groupId){
+    public Integer createPhotos(String photoUrl,Integer groupId){
         // 插入
         PhotosDO photos = new PhotosDO();
         photos.setPhotoUrl(photoUrl);
@@ -112,5 +100,4 @@ public class PhotosServiceImpl implements PhotosService {
         }
         return allPhotoIds;
     }
-
 }

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

@@ -213,7 +213,6 @@ public class SpecimenInfoServiceImpl implements SpecimenInfoService {
         return true;
     }
 
-
     @Override
     @Transactional(rollbackFor = Exception.class)
     public SpecimenImportRespVO importSpecimenImages(MultipartFile file) throws Exception {
@@ -259,7 +258,6 @@ public class SpecimenInfoServiceImpl implements SpecimenInfoService {
                     if (specimenInfoReqVO != null) {
                         // 上传图片并获取 URL
                         String imagePath = fileApi.createFile(Files.readAllBytes(newFile.toPath()));
-                        // TODO 禁止单独上传图片zip
                         // 确保 imagePath 有效且不为空
                         if (imagePath != null && !imagePath.trim().isEmpty()) {
                             // 添加新上传的路径