mitao
1 天以前 03587b58b343956f910a653c37b9a7bcd84e4af9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package com.ruoyi.system.dto.asset;
 
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
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 CodeBuddy
 * @since 2025-09-17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "OaApprovalApplicationStorageGeneralDTO", description = "通用资产入库申请DTO")
public class OaApprovalApplicationStorageGeneralDTO extends OaApprovalApplicationStorageDTO {
 
    @ApiModelProperty(value = "通用资产明细列表")
    @Valid
    @Size(min = 1, message = "资产明细不能为空")
    private List<GeneralAssetItemDTO> assetItems;
 
    @Data
    @ApiModel(value = "GeneralAssetItemDTO", description = "通用资产明细DTO")
    public static class GeneralAssetItemDTO {
 
        // 资产主表字段
        @ApiModelProperty(value = "资产原编码")
        private String assetOriginalCode;
 
        @ApiModelProperty(value = "资产名称")
        @NotBlank(message = "资产名称不能为空")
        private String assetName;
 
        @ApiModelProperty(value = "类别")
        @NotBlank(message = "类别不能为空")
        private String category;
 
        @ApiModelProperty(value = "规格型号")
        private String specificationModel;
 
        @ApiModelProperty(value = "计量单位")
        @NotBlank(message = "计量单位不能为空")
        private String measurementUnit;
 
        @ApiModelProperty(value = "数量")
        @NotNull(message = "数量不能为空")
        private BigDecimal quantity;
 
        @ApiModelProperty(value = "单价")
        @NotNull(message = "单价不能为空")
        private BigDecimal unitPrice;
 
        @ApiModelProperty(value = "使用年限(年)")
        private Integer usefulLife;
 
        @ApiModelProperty(value = "总金额")
        private BigDecimal totalValue;
 
        @ApiModelProperty(value = "权属单位/部门名称")
        private String ownershipDeptName;
 
        @ApiModelProperty(value = "使用人")
        private String userName;
 
        @ApiModelProperty(value = "使用/位置类型 0-部门,1-仓库,2-录入地址")
        private Integer addressType;
 
        @ApiModelProperty(value = "使用部门/位置名称")
        private String useDeptName;
 
        @ApiModelProperty(value = "仓库名称")
        private String warehouseName;
 
        @ApiModelProperty(value = "所在位置")
        private String address;
 
        @ApiModelProperty(value = "资产状态")
        private String assetStatus;
 
        @ApiModelProperty(value = "备注")
        private String remarks;
 
        @ApiModelProperty(value = "入账状态")
        private String accountingStatus;
 
        @ApiModelProperty(value = "入账时间")
        @DateTimeFormat(pattern = "yyyy-MM-dd")
        private LocalDate accountingDate;
 
        @ApiModelProperty(value = "会计凭证号")
        private String accountingVoucherNo;
 
        @ApiModelProperty(value = "会计科目")
        private String accountingSubject;
 
        @ApiModelProperty(value = "入账金额")
        private BigDecimal accountingAmount;
    }
}