Bladeren bron

改数据库了

hyy 7 maanden geleden
bovenliggende
commit
5e9248fa09
10 gewijzigde bestanden met toevoegingen van 160 en 311 verwijderingen
  1. 0 12
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundConfirmReqVO.java
  2. 0 66
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundOutgoingReqVO.java
  3. 32 21
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundPageReqVO.java
  4. 39 46
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundRespVO.java
  5. 1 1
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundReturnReqVO.java
  6. 27 57
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundSaveReqVO.java
  7. 31 21
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/controller/admin/specimenoutbound/vo/SpecimenOutboundWithInfoRespVO.java
  8. 28 51
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/dataobject/specimenoutbound/SpecimenOutboundDO.java
  9. 0 29
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/specimenoutbound/SpecimenOutboundMapper.java
  10. 2 7
      yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/service/specimenoutbound/SpecimenOutboundServiceImpl.java

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

@@ -11,17 +11,5 @@ public class SpecimenOutboundConfirmReqVO {
 
     @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
     private Long id;
-//
-//    @Schema(description = "审批状态", example = "2")
-//    private Integer status;
-//
-//    @Schema(description = "出库员", requiredMode = Schema.RequiredMode.REQUIRED)
-//    private Long operator;
-//
-//    @Schema(description = "出库时间")
-//    private LocalDateTime outgoingTime;
-//
-//    @Schema(description = "标本状态(已出库、已回库、出库审批中)", example = "2")
-//    private Integer sampleStatus;
 
 }

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

@@ -1,66 +0,0 @@
-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
-
-public class SpecimenOutboundOutgoingReqVO {
-    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
-    private Long id;
-
-    @Schema(description = "关联到总表中的标本ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
-    @NotEmpty(message = "关联到总表中的标本ID不能为空")
-    private String infoId;
-
-    @Schema(description = "中文名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-//    @NotEmpty(message = "中文名称不能为空")
-    private String chinese;
-
-    @Schema(description = "申请出库的标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
-//    @NotEmpty(message = "申请出库的标本编号不能为空")
-    private String number;
-
-    @Schema(description = "申请人或申请单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @NotEmpty(message = "申请人或申请单位不能为空")
-    private String applicantName;
-
-    @Schema(description = "申请时间")
-    private LocalDateTime applicationDate;
-
-    @Schema(description = "申请出库的用途", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotEmpty(message = "申请出库的用途不能为空")
-    private String applicationUsage;
-
-    @Schema(description = "审批状态", example = "2")
-    private Integer status;
-
-    @Schema(description = "备注信息")
-    private String remarks;
-
-    @Schema(description = "出库时间")
-    private LocalDateTime outgoingTime;
-
-    @Schema(description = "预计领取时间")
-    private LocalDateTime expectedCollectionTime;
-
-    @Schema(description = "预计退还时间")
-    private LocalDateTime estimatedReturnTime;
-
-    @Schema(description = "标本情况")
-    private String specimenCondition;
-
-    @Schema(description = "标本状态(已出库、已回库、出库审批中)", example = "2")
-    private Integer sampleStatus;
-
-    @Schema(description = "出库员")
-    private Long operator;
-
-}

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

@@ -18,29 +18,31 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @Schema(description = "关联到总表中的标本ID", example = "1")
     private String infoId;
 
-    @Schema(description = "中文名称", example = "张三")
-    private String chinese;
-
     @Schema(description = "申请出库的标本编号")
     private String number;
 
-    @Schema(description = "申请人或申请单位", example = "张三")
+    @Schema(description = "申请人姓名", example = "张三")
     private String applicantName;
 
-    @Schema(description = "申请日期")
-    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
-    private LocalDateTime[] applicationDate;
+    @Schema(description = "申请单位", example = "地质博物馆")
+    private String applicationUsage;
+
+    @Schema(description = "电话号码", example = "19900000001")
+    private String phoneNumber;
+
+    @Schema(description = "研究项目名称", example = "研究")
+    private String projectName;
 
-    @Schema(description = "预计退还时间")
+    @Schema(description = "项目开始时间")
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
-    private LocalDateTime[] estimatedReturnTime;
+    private LocalDateTime[] startTime;
 
-    @Schema(description = "预计领取时间")
+    @Schema(description = "项目结束时间")
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
-    private LocalDateTime[] expectedCollectionTime;
+    private LocalDateTime[] endTime;
 
-    @Schema(description = "申请出库的用途")
-    private String applicationUsage;
+    @Schema(description = "出库备注信息")
+    private String outboundRemarks;
 
     @Schema(description = "出库附件上传")
     private String attachments;
@@ -48,13 +50,9 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @Schema(description = "审批状态", example = "2")
     private Integer status;
 
-    @Schema(description = "备注信息")
+    @Schema(description = "回库备注信息")
     private String remarks;
 
-    @Schema(description = "出库时间")
-    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
-    private LocalDateTime[] outgoingTime;
-
     @Schema(description = "标本情况")
     private String specimenCondition;
 
@@ -65,12 +63,19 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @Schema(description = "回库附件上传")
     private String sampleStatus;
 
-    @Schema(description = "驳回原因", example = "27504")
+    @Schema(description = "一审驳回原因", example = "27504")
     private String processInstanceId;
 
+    @Schema(description = "二审驳回原因", example = "27504")
+    private String rejectionReasons;
+
     @Schema(description = "出库员")
     private Long operator;
 
+    @Schema(description = "出库时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] outgoingTime;
+
     @Schema(description = "退还人")
     private String returner;
 
@@ -81,11 +86,17 @@ public class SpecimenOutboundPageReqVO extends PageParam {
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] returnDate;
 
-    @Schema(description = "审时间")
+    @Schema(description = "审时间")
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] approvalTime;
 
-    @Schema(description = "审批员")
+    @Schema(description = "二审时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] twoApprovalTime;
+
+    @Schema(description = "一审批员")
     private Long approveUsers;
 
+    @Schema(description = "二审批员")
+    private Long twoApproveUsers;
 }

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

@@ -23,33 +23,37 @@ public class SpecimenOutboundRespVO {
     @ExcelProperty("关联到总表中的标本ID")
     private String infoId;
 
-    @Schema(description = "中文名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @ExcelProperty("中文名称")
-    private String chinese;
-
     @Schema(description = "申请出库的标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("申请出库的标本编号")
     private String number;
 
-    @Schema(description = "申请人或申请单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @ExcelProperty("申请人或申请单位")
+    @Schema(description = "申请人姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
+    @ExcelProperty("申请人姓名")
     private String applicantName;
 
-    @Schema(description = "申请日期")
-    @ExcelProperty("申请日期")
-    private LocalDateTime applicationDate;
+    @Schema(description = "申请单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "地质博物馆")
+    @ExcelProperty("申请单位")
+    private String applicationUsage;
 
-    @Schema(description = "预计退还时间")
-    @ExcelProperty("预计退还时间")
-    private LocalDateTime estimatedReturnTime;
+    @Schema(description = "电话号码", requiredMode = Schema.RequiredMode.REQUIRED, example = "19900000000")
+    @ExcelProperty("电话号码")
+    private String phoneNumber;
 
-    @Schema(description = "预计领取时间")
-    @ExcelProperty("预计领取时间")
-    private LocalDateTime expectedCollectionTime;
+    @Schema(description = "研究项目名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "研究")
+    @ExcelProperty("研究项目名称")
+    private String projectName;
 
-    @Schema(description = "申请出库的用途", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("申请出库的用途")
-    private String applicationUsage;
+    @Schema(description = "项目开始时间")
+    @ExcelProperty("项目开始时间")
+    private LocalDateTime startTime;
+
+    @Schema(description = "项目结束时间")
+    @ExcelProperty("项目结束时间")
+    private LocalDateTime endTime;
+
+    @Schema(description = "出库备注信息")
+    @ExcelProperty("出库备注信息")
+    private String outboundRemarks;
 
     @Schema(description = "出库附件上传")
     @ExcelProperty("出库附件上传")
@@ -60,14 +64,10 @@ public class SpecimenOutboundRespVO {
     @DictFormat("museums_specimen_info") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中
     private Integer status;
 
-    @Schema(description = "备注信息")
-    @ExcelProperty("备注信息")
+    @Schema(description = "回库备注信息")
+    @ExcelProperty("回库备注信息")
     private String remarks;
 
-    @Schema(description = "出库时间")
-    @ExcelProperty("出库时间")
-    private LocalDateTime outgoingTime;
-
     @Schema(description = "标本情况")
     @ExcelProperty("标本情况")
     private String specimenCondition;
@@ -76,14 +76,18 @@ public class SpecimenOutboundRespVO {
     @ExcelProperty("创建时间")
     private LocalDateTime createTime;
 
-    @Schema(description = "库附件上传", example = "2")
-    @ExcelProperty(value = "库附件上传")
+    @Schema(description = "库附件上传", example = "2")
+    @ExcelProperty(value = "库附件上传")
     private String sampleStatus;
 
-    @Schema(description = "驳回原因", example = "27504")
-    @ExcelProperty("驳回原因")
+    @Schema(description = "一审驳回原因", example = "27504")
+    @ExcelProperty("一审驳回原因")
     private String processInstanceId;
 
+    @Schema(description = "二审驳回原因", example = "27504")
+    @ExcelProperty("二审驳回原因")
+    private String rejectionReasons;
+
     @Schema(description = "出库员")
     @ExcelProperty("出库员")
     private Long operator;
@@ -100,26 +104,15 @@ public class SpecimenOutboundRespVO {
     @ExcelProperty("退还日期")
     private LocalDateTime returnDate;
 
-    @Schema(description = "审时间")
-    @ExcelProperty("审时间")
+    @Schema(description = "审时间")
+    @ExcelProperty("审时间")
     private LocalDateTime approvalTime;
 
-    @Schema(description = "审批员")
-    @ExcelProperty("审批员")
+    @Schema(description = "审批员")
+    @ExcelProperty("审批员")
     private Long approveUsers;
 
-    @Schema(description = "图片路径")
-    @ExcelProperty("图片路径")
-    private String imagePath;
-
-    @Schema(description = "存放位置")
-    @ExcelProperty("存放位置")
-    private String storageLocation;
-
-    @Schema(description = "标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("标本编号")
-    private String specimenNumber;
-
-
-
+    @Schema(description = "二审批员")
+    @ExcelProperty("二审批员")
+    private Long twoApproveUsers;
 }

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

@@ -28,7 +28,7 @@ public class SpecimenOutboundReturnReqVO {
     @Schema(description = "点收人")
     private String receiver;
 
-    @Schema(description = "备注信息")
+    @Schema(description = "回库备注信息")
     private String remarks;
 
     @Schema(description = "回库附件上传")

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

@@ -18,31 +18,40 @@ public class SpecimenOutboundSaveReqVO {
     @Schema(description = "关联到总表中的标本ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
     @NotEmpty(message = "关联到总表中的标本ID不能为空")
     @DiffLogField(name = "关联到总表中的标本ID")
-//    private String infoId;
     private List<String> infoId;
 
-    @Schema(description = "中文名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-//    @NotEmpty(message = "中文名称不能为空")
-    private String chinese;
-
     @Schema(description = "申请出库的标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
 //    @NotEmpty(message = "申请出库的标本编号不能为空")
     private String number;
 
-    @Schema(description = "申请人或申请单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @NotEmpty(message = "申请人或申请单位不能为空")
-    @DiffLogField(name = "申请人(单位)")
+    @Schema(description = "申请人姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
+    @NotEmpty(message = "申请人姓名不能为空")
+    @DiffLogField(name = "申请人姓名")
     private String applicantName;
 
-    @Schema(description = "申请时间")
-    @DiffLogField(name = "申请时间")
-    private LocalDateTime applicationDate;
-
-    @Schema(description = "申请出库的用途", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotEmpty(message = "申请出库的用途不能为空")
-    @DiffLogField(name = "申请出库的用途")
+    @Schema(description = "申请人单位", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotEmpty(message = "申请人单位不能为空")
+    @DiffLogField(name = "申请人单位")
     private String applicationUsage;
 
+    @Schema(description = "电话号码", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotEmpty(message = "电话号码不能为空")
+    @DiffLogField(name = "电话号码")
+    private String phoneNumber;
+
+    @Schema(description = "研究项目名称", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotEmpty(message = "研究项目名称不能为空")
+    @DiffLogField(name = "研究项目名称")
+    private String projectName;
+
+    @Schema(description = "项目开始时间")
+    @DiffLogField(name = "项目开始时间")
+    private LocalDateTime startTime;
+
+    @Schema(description = "项目结束时间")
+    @DiffLogField(name = "项目结束时间")
+    private LocalDateTime endTime;
+
     @Schema(description = "出库附件上传")
     @DiffLogField(name = "出库附件上传")
     private String attachments;
@@ -50,47 +59,8 @@ public class SpecimenOutboundSaveReqVO {
     @Schema(description = "审批状态", example = "2")
     private Integer status;
 
-    @Schema(description = "备注信息")
-    @DiffLogField(name = "备注信息")
-    private String remarks;
-
-    @Schema(description = "预计退还时间")
-    @DiffLogField(name = "预计退还时间")
-    private LocalDateTime estimatedReturnTime;
-
-    @Schema(description = "预计领取时间")
-    @DiffLogField(name = "预计领取时间")
-    private LocalDateTime expectedCollectionTime;
-
-
-//    @Schema(description = "出库时间")
-//    private LocalDateTime outgoingTime;
-//
-//    @Schema(description = "标本情况")
-//    private String specimenCondition;
-//
-//    @Schema(description = "标本状态(已出库、已回库、出库审批中)", example = "2")
-//    private Integer sampleStatus;
-//
-//    @Schema(description = "驳回原因", example = "反对")
-//    private String processInstanceId;
-//
-//    @Schema(description = "出库员")
-//    private Long operator;
-//
-//    @Schema(description = "退还人")
-//    private String returner;
-//
-//    @Schema(description = "点收人")
-//    private String receiver;
-//
-//    @Schema(description = "退还日期")
-//    private LocalDateTime returnDate;
-//
-//    @Schema(description = "审批时间")
-//    private LocalDateTime approvalTime;
-//
-//    @Schema(description = "审批员")
-//    private Long approveUsers;
+    @Schema(description = "出库备注信息")
+    @DiffLogField(name = "出库备注信息")
+    private String outboundRemarks;
 
 }

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

@@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.museums.controller.admin.specimeninfo.vo.Specimen
 import cn.iocoder.yudao.module.museums.dal.dataobject.specimeninfo.SpecimenInfoDO;
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
+import com.mzt.logapi.starter.annotation.DiffLogField;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
@@ -24,37 +25,46 @@ public class SpecimenOutboundWithInfoRespVO {
     @ExcelProperty("关联到总表中的标本ID")
     private String infoId;
 
-    @Schema(description = "中文名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @ExcelProperty("中文名称")
-    private String chinese;
-
     @Schema(description = "申请出库的标本编号", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("申请出库的标本编号")
     private String number;
 
-    @Schema(description = "申请人或申请单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
-    @ExcelProperty("申请人或申请单位")
+    @Schema(description = "申请人姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
+    @ExcelProperty("申请人姓名")
     private String applicantName;
 
-    @Schema(description = "申请日期")
-    @ExcelProperty("申请日期")
-    private LocalDateTime applicationDate;
-
-    @Schema(description = "申请出库的用途", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("申请出库的用途")
+    @Schema(description = "申请人单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "地质博物馆")
+    @ExcelProperty("申请人单位")
     private String applicationUsage;
 
-    @Schema(description = "备注信息")
-    @ExcelProperty("备注信息")
-    private String remarks;
+    @Schema(description = "电话号码", requiredMode = Schema.RequiredMode.REQUIRED, example = "19900000000")
+    @ExcelProperty("电话号码")
+    private String phoneNumber;
+
+    @Schema(description = "研究项目名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "研究")
+    @ExcelProperty("研究项目名称")
+    private String projectName;
+
+    @Schema(description = "项目开始时间")
+    @ExcelProperty("项目开始时间")
+    private LocalDateTime startTime;
+
+    @Schema(description = "项目结束时间")
+    @ExcelProperty("项目结束时间")
+    private LocalDateTime endTime;
+
+    @Schema(description = "出库附件上传")
+    @DiffLogField(name = "出库附件上传")
+    private String attachments;
 
-    @Schema(description = "标本情况")
-    @ExcelProperty("标本情况")
-    private String specimenCondition;
+    @Schema(description = "出库备注信息")
+    @ExcelProperty("出库备注信息")
+    private String outboundRemarks;
 
-    @Schema(description = "预计退还时间")
-    @ExcelProperty("预计退还时间")
-    private LocalDateTime estimatedReturnTime;
+    @Schema(description = "审批状态", example = "2")
+    @ExcelProperty(value = "审批状态", converter = DictConvert.class)
+    @DictFormat("museums_specimen_info") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中
+    private Integer status;
 
     @Schema(description = "关联标本信息列表")
     @ExcelProperty("关联标本信息")

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

@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.museums.dal.dataobject.specimenoutbound;
 import lombok.*;
 
 import java.time.LocalDateTime;
+import java.util.List;
 
 import com.baomidou.mybatisplus.annotation.*;
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
@@ -31,26 +32,38 @@ public class SpecimenOutboundDO extends BaseDO {
      * 关联到总表中的标本ID
      */
     private String infoId;
-    /**
-     * 中文名称
-     */
-    private String chinese;
     /**
      * 申请出库的标本编号
      */
     private String number;
     /**
-     * 申请人或申请单位
+     * 申请人姓名
      */
     private String applicantName;
     /**
-     * 申请日期
+     * 申请单位
      */
-    private LocalDateTime applicationDate;
+    private String applicationUsage;
     /**
-     * 申请出库的用途
+     * 电话号码
      */
-    private String applicationUsage;
+    private String phoneNumber;
+    /**
+     * 研究项目名称
+     */
+    private String projectName;
+    /**
+     * 项目开始时间
+     */
+    private LocalDateTime startTime;
+    /**
+     * 项目结束时间
+     */
+    private LocalDateTime endTime;
+    /**
+     * 出库备注
+     */
+    private String outboundRemarks;
     /**
      * 出库附件上传
      */
@@ -65,10 +78,6 @@ public class SpecimenOutboundDO extends BaseDO {
      * 备注信息
      */
     private String remarks;
-    /**
-     * 出库时间
-     */
-    private LocalDateTime outgoingTime;
     /**
      * 标本情况
      */
@@ -89,6 +98,10 @@ public class SpecimenOutboundDO extends BaseDO {
      * 出库员
      */
     private Long operator;
+    /**
+     * 出库时间
+     */
+    private LocalDateTime outgoingTime;
     /**
      * 退还人
      */
@@ -110,47 +123,11 @@ public class SpecimenOutboundDO extends BaseDO {
      */
     private LocalDateTime twoApprovalTime;
     /**
-     * 一审批
+     * 一审批
      */
     private Long approveUsers;
     /**
-     * 二审批
+     * 二审批
      */
     private Long twoApproveUsers;
-    /**
-     * 预计退还时间
-     */
-    private LocalDateTime estimatedReturnTime;
-    /**
-     * 预计领取时间
-     */
-    private LocalDateTime expectedCollectionTime;
-
-
-    /**
-     * 存放位置
-     */
-    @TableField(exist = false)
-    private String storageLocation;
-    /**
-     * 中文名称
-     */
-    @TableField(exist = false)
-    private String chineseName;
-    /**
-     * 图片路径
-     */
-    @TableField(exist = false)
-    private String imagePath;
-    /**
-     * 标本类型
-     */
-    @TableField(exist = false)
-    private Integer specimenType;
-    /**
-     * 标本编号
-     */
-    @TableField(exist = false)
-    private String specimenNumber;
-
 }

+ 0 - 29
yudao-module-museums/yudao-module-museums-biz/src/main/java/cn/iocoder/yudao/module/museums/dal/mysql/specimenoutbound/SpecimenOutboundMapper.java

@@ -22,10 +22,8 @@ public interface SpecimenOutboundMapper extends BaseMapperX<SpecimenOutboundDO>
     default PageResult<SpecimenOutboundDO> selectPage(SpecimenOutboundPageReqVO reqVO) {
         return selectPage(reqVO, new LambdaQueryWrapperX<SpecimenOutboundDO>()
                 .likeIfPresent(SpecimenOutboundDO::getInfoId, reqVO.getInfoId())
-                .likeIfPresent(SpecimenOutboundDO::getChinese, reqVO.getChinese())
                 .likeIfPresent(SpecimenOutboundDO::getNumber, reqVO.getNumber())
                 .likeIfPresent(SpecimenOutboundDO::getApplicantName, reqVO.getApplicantName())
-                .betweenIfPresent(SpecimenOutboundDO::getApplicationDate, reqVO.getApplicationDate())
                 .likeIfPresent(SpecimenOutboundDO::getApplicationUsage, reqVO.getApplicationUsage())
                 .likeIfPresent(SpecimenOutboundDO::getAttachments, reqVO.getAttachments())
                 .eqIfPresent(SpecimenOutboundDO::getStatus, reqVO.getStatus())
@@ -45,18 +43,6 @@ public interface SpecimenOutboundMapper extends BaseMapperX<SpecimenOutboundDO>
 
     }
 
-
-//    /**
-//     * 根据年份统计已出库和已回库的标本信息
-//     *
-//     * @param year 年份
-//     * @return 标本出库信息列表
-//     */
-//    @Select("SELECT * FROM museums_specimen_outbound " +
-//            "WHERE (status = 3 OR status = 4) " +
-//            "AND YEAR(application_date) = #{year} " +
-//            "AND deleted = 0")
-//    List<SpecimenOutboundOutgoingReqVO> selectOutgoingStatisticsByYear(int year);
       List<Map<String, Object>> selectMonthlyOutboundStatistics(int year);
       List<Map<String, Object>> getMonthlyReturnStatistics(int year);
 
@@ -78,21 +64,6 @@ public interface SpecimenOutboundMapper extends BaseMapperX<SpecimenOutboundDO>
     @Select("SELECT * FROM museums_specimen_outbound WHERE deleted = 0")
     List<SpecimenOutboundDO> getOutboundRecords();
 
-//    @Select({
-//            "<script>",
-//            "SELECT so.*, si.specimen_number, si.image_path, si.storage_location ",
-//            "FROM museums_specimen_outbound so ",
-//            "JOIN museums_specimen_info si ON so.info_id = si.id ",
-//            "WHERE so.info_id IN ",
-//            "<foreach item='id' collection='infoIds' open='(' separator=',' close=')'>",
-//            "#{id}",
-//            "</foreach>",
-//            "</script>"
-//    })
-//    List<SpecimenOutboundDO> selectByIds(@Param("infoIds") List<Long> infoIds);
-
-
-    // TODO selectByIds 干嘛还单独写一个这个
     @Select({
             "<script>",
             "SELECT so.*, si.specimen_number, si.image_path, si.storage_location ",

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

@@ -20,10 +20,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.museums.dal.mysql.specimenoutbound.SpecimenOutboundMapper;
 
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -372,7 +369,7 @@ public class SpecimenOutboundServiceImpl implements SpecimenOutboundService {
         }
 
         // 查询关联的标本信息
-        String infoIds = specimenOutbound.getInfoId(); // 获取 info_id,假设是字符串
+        String infoIds = specimenOutbound.getInfoId();
         // 处理 infoId 字段
         infoIds = infoIds.replaceAll("[\\[\\] ]", ""); // 移除方括号和空格
         List<Long> idList = Arrays.stream(infoIds.split(","))
@@ -387,9 +384,7 @@ public class SpecimenOutboundServiceImpl implements SpecimenOutboundService {
         // 手动复制出库信息属性
         response.setId(specimenOutbound.getId());
         response.setInfoId(specimenOutbound.getInfoId());
-        response.setChinese(specimenOutbound.getChinese());
         response.setApplicantName(specimenOutbound.getApplicantName());
-        response.setApplicationDate(specimenOutbound.getApplicationDate());
         response.setApplicationUsage(specimenOutbound.getApplicationUsage());
         // 设置所有关联的标本信息
         response.setSpecimenInfoList(specimenInfoList);