package cn.iocoder.yudao.module.system.controller.admin.assets.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 资产 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AssetsRespVO {

    @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "30782")
    @ExcelProperty("id")
    private Long id;

    @Schema(description = "资产名称", example = "赵六")
    @ExcelProperty("资产名称")
    private String name;

    @Schema(description = "资产编号")
    @ExcelProperty("资产编号")
    private String assetsNo;

    @Schema(description = "资产状态 -1无状态 0空闲 1使用中 2维修 3损坏 （资产类型按单件时候有意义）", example = "1")
    @ExcelProperty("资产状态 -1无状态 0空闲 1使用中 2维修 3损坏 （资产类型按单件时候有意义）")
    private Integer status;

    @Schema(description = "资产单位")
    @ExcelProperty("资产单位")
    private String util;

    @Schema(description = "资产价格")
    @ExcelProperty("资产价格")
    private BigDecimal amount;

    @Schema(description = "库存")
    @ExcelProperty("库存")
    private Integer stock;

    @Schema(description = "资产类型id", example = "5169")
    @ExcelProperty("资产类型id")
    private Long typeId;

    @Schema(description = "其余信息(json)")
    @ExcelProperty("其余信息(json)")
    private String itemJson;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "资产类型 0按量 1按单件")
    private Integer type;
}