From d0b7220ebbc184acfeb9ed83e2d1423233430036 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期二, 16 九月 2025 18:31:40 +0800
Subject: [PATCH] 资产管理-采购申请-DTO

---
 ruoyi-system/src/main/java/com/ruoyi/system/dto/OaApprovalApplicationPurchaseDTO.java |  107 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 107 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/OaApprovalApplicationPurchaseDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/OaApprovalApplicationPurchaseDTO.java
new file mode 100644
index 0000000..aa5086b
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/OaApprovalApplicationPurchaseDTO.java
@@ -0,0 +1,107 @@
+package com.ruoyi.system.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.util.List;
+
+/**
+ * 采购申请DTO
+ *
+ * @author Claude
+ * @since 2025-09-16
+ */
+@Data
+@ApiModel(value = "OaApprovalApplicationPurchaseDTO", description = "采购申请DTO")
+public class OaApprovalApplicationPurchaseDTO {
+
+    @ApiModelProperty(value = "审批ID")
+    @NotNull(message = "审批ID不能为空")
+    private Integer approvalId;
+
+    @ApiModelProperty(value = "申请部门ID")
+    @NotNull(message = "申请部门不能为空")
+    private Integer deptId;
+
+    @ApiModelProperty(value = "申请部门名称")
+    @NotBlank(message = "申请部门名称不能为空")
+    private String deptName;
+
+    @ApiModelProperty(value = "申请人ID")
+    @NotNull(message = "申请人不能为空")
+    private Integer applicantUserId;
+
+    @ApiModelProperty(value = "申请人姓名")
+    @NotBlank(message = "申请人姓名不能为空")
+    private String applicantName;
+
+    @ApiModelProperty(value = "申请日期")
+    @NotNull(message = "申请日期不能为空")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private LocalDate applicationDate;
+
+    @ApiModelProperty(value = "采购说明")
+    @NotBlank(message = "采购说明不能为空")
+    @Size(max = 500, message = "采购说明不能超过500字符")
+    private String applicationReason;
+
+    @ApiModelProperty(value = "附件地址,多个使用英文逗号拼接")
+    private String attachmentUrl;
+
+    @ApiModelProperty(value = "事项标题")
+    @NotBlank(message = "事项标题不能为空")
+    private String title;
+
+    @ApiModelProperty(value = "资产类型ID")
+    @NotNull(message = "资产类型不能为空")
+    private Integer assetTypeId;
+
+    @ApiModelProperty(value = "采购总金额")
+    @NotNull(message = "采购总金额不能为空")
+    private BigDecimal totalAmount;
+
+    @ApiModelProperty(value = "采购资产明细列表")
+    @Valid
+    @Size(min = 1, message = "采购资产明细不能为空")
+    private List<PurchaseItemDTO> purchaseItems;
+
+    @Data
+    @ApiModel(value = "PurchaseItemDTO", description = "采购资产明细DTO")
+    public static class PurchaseItemDTO {
+
+        @ApiModelProperty(value = "资产名称")
+        @NotBlank(message = "资产名称不能为空")
+        private String assetName;
+
+        @ApiModelProperty(value = "资产类型ID")
+        @NotNull(message = "资产类型不能为空")
+        private Integer assetTypeId;
+
+        @ApiModelProperty(value = "规格型号")
+        private String spec;
+
+        @ApiModelProperty(value = "计量单位")
+        @NotBlank(message = "计量单位不能为空")
+        private String unit;
+
+        @ApiModelProperty(value = "数量")
+        @NotNull(message = "数量不能为空")
+        private Integer quantity;
+
+        @ApiModelProperty(value = "单价")
+        @NotNull(message = "单价不能为空")
+        private BigDecimal price;
+
+        @ApiModelProperty(value = "总金额")
+        @NotNull(message = "总金额不能为空")
+        private BigDecimal totalAmount;
+    }
+}
\ No newline at end of file

--
Gitblit v1.7.1