package com.bonus.canteen.core.kitchen.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bonus.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import com.bonus.common.core.web.domain.BaseEntity;

/**
 * 厨房设备生命周期对象 kitchen_device_life
 * 
 * @author xsheng
 * @date 2025-06-16
 */


@Data
@ToString
public class KitchenDeviceLife extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 设备Id */
    @Excel(name = "设备Id")
    @ApiModelProperty(value = "设备Id")
    private Long deviceId;

    /** 设备安装时间 */
    @ApiModelProperty(value = "设备安装时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "设备安装时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date installTime;

    /** 设备寿命计算方式: 1-按自然日计算,2-按使用时长计算 */
    @Excel(name = "设备寿命计算方式: 1-按自然日计算,2-按使用时长计算")
    @ApiModelProperty(value = "设备寿命计算方式: 1-按自然日计算,2-按使用时长计算")
    private Integer lifeType;

    /** 设备剩余生命时长(小时) */
    @Excel(name = "设备剩余生命时长(小时)")
    @ApiModelProperty(value = "设备剩余生命时长(小时)")
    private BigDecimal lifeRemaining;

    /** 设备寿命临期告警时长 */
    @Excel(name = "设备寿命临期告警时长")
    @ApiModelProperty(value = "设备寿命临期告警时长")
    private BigDecimal lifeWarning;

    /** 设备寿命结束时间 */
    @ApiModelProperty(value = "设备寿命结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "设备寿命结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lifeEndTime;

    /** 设备寿命临期告警时间 */
    @ApiModelProperty(value = "设备寿命临期告警时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "设备寿命临期告警时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lifeWarningTime;


}
