package com.ruoyi.device.pojo; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; /** * 设备台账实体类 */ @Data @TableName("device_ledger") @Schema public class DeviceLedger { /** * 主键ID,自增 */ private Long id; /** * 设备名称 */ @Schema(description = "设备名称") private String deviceName; /** * 规格型号 */ @Schema(description = "规格型号") private String deviceModel; /** * 设备品牌 */ @Schema(description = "设备品牌") private String deviceBrand; /** * 存放位置 */ @Schema(description = "存放位置") private String storageLocation; /** * 供应商名称 */ private String supplierName; @Schema(description = "设备编号") private String uniqueCode; @Schema(description = "出厂编号") private String factoryNumber; @Schema(description = "制造厂商") private String manufacturer; @Schema(description = "资产原值") private BigDecimal originalAssetValue; @Schema(description = "购置日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate purchaseDate; @Schema(description = "启用日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate activationDate; @Schema(description = "主要技术参数") private String technicalParameters; @Schema(description = "主要用途") private String mainPurpose; @Schema(description = "责任人") private String responsiblePerson; @Schema(description = "建档日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate filingDate; /** * 单位 */ private String unit; /** * 数量 */ private BigDecimal number; /** * 含税单价 */ private BigDecimal taxIncludingPriceUnit; /** * 含税总价 */ private BigDecimal taxIncludingPriceTotal; /** * 税率 */ private BigDecimal taxRate; /** * 不含税总价 */ private BigDecimal unTaxIncludingPriceTotal; /** * 录入时间 */ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; /** * 更新时间 */ @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; /** * 录入人 */ @TableField(fill = FieldFill.INSERT) private Integer createUser; /** * 更新人 */ @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; /** * 租户ID */ @TableField(fill = FieldFill.INSERT) private Long tenantId; /* *************************** 运行管理 *************************** */ @Schema(description = "状态") private String status; @Schema(description = "计划运行时间") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate planRuntimeTime; @Schema(description = "开始运行时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime startRuntimeTime; @Schema(description = "结束运行时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime endRuntimeTime; @Schema(description = "运行时长") private String runtimeDuration; @Schema(description = "是否折旧 1-是 2-否") private Integer isDepr; @Schema(description = "每年折旧金额") private BigDecimal annualDepreciationAmount; @TableField(exist = false) @Schema(description = "累计折旧") private BigDecimal deprAmount; @TableField(exist = false) @Schema(description = "净值") private BigDecimal netValue; @Schema(description = "设备类型") private String type; @TableField(fill = FieldFill.INSERT) private Long deptId; }