New file |
| | |
| | | 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; |
| | | } |
| | | } |