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 = "OaApprovalApplicationStorageVehicleDTO", description = "车辆资产入库申请DTO")
|
public class OaApprovalApplicationStorageVehicleDTO extends OaApprovalApplicationStorageDTO {
|
|
@ApiModelProperty(value = "车辆资产明细列表")
|
@Valid
|
@Size(min = 1, message = "资产明细不能为空")
|
private List<VehicleAssetItemDTO> assetItems;
|
|
@Data
|
@ApiModel(value = "VehicleAssetItemDTO", description = "车辆资产明细DTO")
|
public static class VehicleAssetItemDTO {
|
|
// 资产主表字段
|
@ApiModelProperty(value = "资产原编码")
|
private String assetOriginalCode;
|
|
@ApiModelProperty(value = "资产名称")
|
@NotBlank(message = "资产名称不能为空")
|
private String assetName;
|
|
@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 = "权属单位/部门ID")
|
private Integer ownershipDeptId;
|
|
@ApiModelProperty(value = "使用人")
|
private String userName;
|
|
@ApiModelProperty(value = "使用部门/位置ID")
|
private Integer useDeptId;
|
|
@ApiModelProperty(value = "仓库ID")
|
private Integer warehouseId;
|
|
@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;
|
|
// 车辆资产扩展表字段
|
@ApiModelProperty(value = "车牌号")
|
private String licensePlate;
|
|
@ApiModelProperty(value = "车辆识别代码")
|
private String vinCode;
|
|
@ApiModelProperty(value = "发动机号")
|
private String engineNumber;
|
|
@ApiModelProperty(value = "排量")
|
private String displacement;
|
|
@ApiModelProperty(value = "编制情况")
|
private String staffingSituation;
|
|
@ApiModelProperty(value = "产地")
|
private String origin;
|
|
@ApiModelProperty(value = "取得日期")
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
private LocalDate acquisitionDate;
|
|
@ApiModelProperty(value = "产权形式")
|
private String propertyRightForm;
|
}
|
}
|