hyy пре 7 месеци
родитељ
комит
fd1f11d34b
11 измењених фајлова са 57 додато и 37 уклоњено
  1. 7 2
      yudao-module-museums/yudao-module-museums-api/src/main/java/cn/iocoder/yudao/module/museums/enums/ErrorCodeConstants.java
  2. 2 2
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/photogroup/PhotoGroupController.java
  3. 8 10
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/SpecimenOutboundController.java
  4. 9 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundOutgoingReqVO.java
  5. 8 3
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundPageReqVO.java
  6. 9 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundRespVO.java
  7. 4 1
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundSaveReqVO.java
  8. 4 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundWithInfoRespVO.java
  9. 4 0
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/dataobject/specimenoutbound/SpecimenOutboundDO.java
  10. 1 18
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photogroup/PhotoGroupService.java
  11. 1 1
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photogroup/PhotoGroupServiceImpl.java

+ 7 - 2
yudao-module-museums/yudao-module-museums-api/src/main/java/cn/iocoder/yudao/module/museums/enums/ErrorCodeConstants.java

@@ -15,8 +15,13 @@ public class ErrorCodeConstants {
     public static final ErrorCode INVALID_IMAGE_FORMAT = new ErrorCode(1-016-000-003, "图片格式无效");
     // ========== 标本出库回库信息 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-000, "没有权限查看非已回库的标本出库信息");
-    public static final ErrorCode SPECIMEN_IS_LENDING_OUT = new ErrorCode(1-016-001-000, "标本当前状态为借出中,无法进行出库操作");
+    public static final ErrorCode NO_PERMISSION_VIEW_NON_RETURNED_SPECIMENS = new ErrorCode(1-016-001-001, "没有权限查看非已回库的标本出库信息");
+    public static final ErrorCode SPECIMEN_OUTBOUND_ORDER_NOT_EXISTS = new ErrorCode(1-016-001-002, "标本出库单信息不存在");
+    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, "用户没有二审权限");
+
     // ========== 博物馆照片组 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, "照片组上传失败");

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

@@ -105,7 +105,7 @@ public class PhotoGroupController {
     @PostMapping("/import-package")
     @Operation(summary = "创建博物馆照片组(压缩包)")
     @PreAuthorize("@ss.hasPermission('museums:photo-group:create')")
-    public CommonResult<Integer> createePhotoGroup(
+    public CommonResult<Integer> importPhotoGroup(
             @NotEmpty @RequestPart("groupName") String groupName,
             @RequestPart(value = "groupDescription", required = false) String groupDescription, // 设置为非必填
             @RequestPart(value = "groupDate", required = false) LocalDateTime groupDate, // 设置为非必填
@@ -113,7 +113,7 @@ public class PhotoGroupController {
 
         try {
             // 调用服务层创建照片组并上传照片
-            Integer groupId = photoGroupService.createePhotoGroup(groupName, groupDescription, groupDate, file);
+            Integer groupId = photoGroupService.importPhotoGroup(groupName, groupDescription, groupDate, file);
 
             // 返回上传成功的结果,附带照片组ID
             return CommonResult.success(groupId);

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

@@ -28,7 +28,7 @@ import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
 import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
 import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
 import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
-import static cn.iocoder.yudao.module.museums.enums.ErrorCodeConstants.NO_PERMISSION_VIEW_NON_RETURNED_SPECIMENS;
+import static cn.iocoder.yudao.module.museums.enums.ErrorCodeConstants.*;
 
 import cn.iocoder.yudao.module.museums.controller.admin.specimenoutbound.vo.*;
 import cn.iocoder.yudao.module.museums.dal.dataobject.specimenoutbound.SpecimenOutboundDO;
@@ -62,16 +62,16 @@ public class SpecimenOutboundController {
         // 验证审批类型
         if (req.getStatus() == 1 || req.getStatus() == 2) {
             // 一审逻辑
-//            if (!permissionApi.hasAnyRoles(operatorId, "deputy_leader")) {
-//                throw new IllegalArgumentException("用户没有一审权限");
-//            }
+            if (!permissionApi.hasAnyRoles(operatorId, "deputy_leader")) {
+                throw exception(USER_NOT_HAVE_THE_RIGHT_FIRST_INSTANCE);
+            }
             req.setApproveUsers(operatorId);
             req.setApprovalTime(now);
         } else if (req.getStatus() == 5 || req.getStatus() == 6) {
             // 二审逻辑
-//            if (!permissionApi.hasAnyRoles(operatorId, "leadership")) {
-//                throw new IllegalArgumentException("用户没有二审权限");
-//            }
+            if (!permissionApi.hasAnyRoles(operatorId, "leadership")) {
+                throw exception(USER_NOT_HAVE_THE_RIGHT_SECOND_INSTANCE);
+            }
             req.setTwoApproveUsers(operatorId);
             req.setTwoApprovalTime(now);
         } else {
@@ -119,7 +119,6 @@ public class SpecimenOutboundController {
         return success(true);
     }
 
-
     @DeleteMapping("/delete")
     @Operation(summary = "删除标本出库回库信息")
     @Parameter(name = "id", description = "编号", required = true)
@@ -236,9 +235,8 @@ public class SpecimenOutboundController {
         SpecimenOutboundWithInfoRespVO specimenOutbound = specimenOutboundService.getSpecimenOutboundWithInfo(id);
 
         if (specimenOutbound == null) {
-            throw exception(NO_PERMISSION_VIEW_NON_RETURNED_SPECIMENS);
+            throw exception(SPECIMEN_OUTBOUND_ORDER_NOT_EXISTS);
         }
         return success(specimenOutbound);
     }
-
 }

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

@@ -2,10 +2,13 @@ package cn.iocoder.yudao.module.museums.controller.admin.specimenoutbound.vo;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import javax.validation.constraints.NotEmpty;
 import java.time.LocalDateTime;
 
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
 @Schema(description = "管理后台 - 根据出库登记情况统计本年标本出库信息/修改 Request VO")
 @Data
 
@@ -45,6 +48,12 @@ public class SpecimenOutboundOutgoingReqVO {
     @Schema(description = "出库时间")
     private LocalDateTime outgoingTime;
 
+    @Schema(description = "预计领取时间")
+    private LocalDateTime expectedCollectionTime;
+
+    @Schema(description = "预计退还时间")
+    private LocalDateTime estimatedReturnTime;
+
     @Schema(description = "标本情况")
     private String specimenCondition;
 

+ 8 - 3
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundPageReqVO.java

@@ -31,6 +31,14 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] applicationDate;
 
+    @Schema(description = "预计退还时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] estimatedReturnTime;
+
+    @Schema(description = "预计领取时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] expectedCollectionTime;
+
     @Schema(description = "申请出库的用途")
     private String applicationUsage;
 
@@ -80,7 +88,4 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @Schema(description = "审批员")
     private Long approveUsers;
 
-    @Schema(description = "预计退还时间")
-    private LocalDateTime estimatedReturnTime;
-
 }

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

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.module.museums.controller.admin.specimenoutbound.vo;
 
+import com.mzt.logapi.starter.annotation.DiffLogField;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
@@ -38,6 +39,14 @@ public class SpecimenOutboundRespVO {
     @ExcelProperty("申请日期")
     private LocalDateTime applicationDate;
 
+    @Schema(description = "预计退还时间")
+    @ExcelProperty("预计退还时间")
+    private LocalDateTime estimatedReturnTime;
+
+    @Schema(description = "预计领取时间")
+    @ExcelProperty("预计领取时间")
+    private LocalDateTime expectedCollectionTime;
+
     @Schema(description = "申请出库的用途", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("申请出库的用途")
     private String applicationUsage;

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

@@ -55,9 +55,12 @@ public class SpecimenOutboundSaveReqVO {
     private String remarks;
 
     @Schema(description = "预计退还时间")
-    @DiffLogField(name = "预计退还时间时间")
+    @DiffLogField(name = "预计退还时间")
     private LocalDateTime estimatedReturnTime;
 
+    @Schema(description = "预计领取时间")
+    @DiffLogField(name = "预计领取时间")
+    private LocalDateTime expectedCollectionTime;
 
 
 //    @Schema(description = "出库时间")

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

@@ -52,6 +52,10 @@ public class SpecimenOutboundWithInfoRespVO {
     @ExcelProperty("标本情况")
     private String specimenCondition;
 
+    @Schema(description = "预计退还时间")
+    @ExcelProperty("预计退还时间")
+    private LocalDateTime estimatedReturnTime;
+
     @Schema(description = "关联标本信息列表")
     @ExcelProperty("关联标本信息")
     private List<SpecimenOutboundFormRespVO> specimenInfoList;

+ 4 - 0
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/dataobject/specimenoutbound/SpecimenOutboundDO.java

@@ -121,6 +121,10 @@ public class SpecimenOutboundDO extends BaseDO {
      * 预计退还时间
      */
     private LocalDateTime estimatedReturnTime;
+    /**
+     * 预计领取时间
+     */
+    private LocalDateTime expectedCollectionTime;
 
 
     /**

+ 1 - 18
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/photogroup/PhotoGroupService.java

@@ -26,7 +26,6 @@ public interface PhotoGroupService {
      */
     Integer createPhotoGroup(@Valid PhotoGroupSaveReqVO createReqVO);
 
-
     /**
      * 创建博物馆照片组
      *
@@ -36,10 +35,7 @@ public interface PhotoGroupService {
      * @param file 上传的压缩包文件
      * @return 照片组编号
      */
-    Integer createePhotoGroup(@NotEmpty String groupName, String groupDescription, LocalDateTime groupDate, MultipartFile file) throws Exception;
-
-
-
+    Integer importPhotoGroup(@NotEmpty String groupName, String groupDescription, LocalDateTime groupDate, MultipartFile file) throws Exception;
 
     /**
      * 更新博物馆照片组
@@ -70,17 +66,4 @@ public interface PhotoGroupService {
      * @return 博物馆照片组分页
      */
     PageResult<PhotoGroupDO> getPhotoGroupPage(PhotoGroupPageReqVO pageReqVO);
-
-
-//    /**
-//     * 创建博物馆照片组
-//     *
-//     * @param createReqVO 创建信息
-//     * @return 编号
-//     */
-//    Integer createePhotoGroup(@Valid PhotoGroupSaveReqVO createReqVO);
-
-
-
-
 }

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

@@ -104,7 +104,7 @@ public class PhotoGroupServiceImpl implements PhotoGroupService {
 
     @Override
     @Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
-    public Integer createePhotoGroup(String groupName, String groupDescription, LocalDateTime groupDate, MultipartFile file) throws Exception {
+    public Integer importPhotoGroup(String groupName, String groupDescription, LocalDateTime groupDate, MultipartFile file) throws Exception {
         // 校验文件类型
         if (!file.getOriginalFilename().endsWith(".zip")) {
             throw new IllegalArgumentException("上传文件必须是压缩包");