package com.ruoyi.device.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 使用记录对象 device_record_use
 * 
 * @author ruoyi
 * @date 2025-05-19
 */
public class RecordUse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long objId;

    /** 设备ID */
    @Excel(name = "设备ID")
    private String deviceId;

    /** 设备编码 */
    @Excel(name = "设备编码")
    private String deviceCode;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String deviceName;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private String deviceType;

    /** 开锁时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "开锁时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date openTime;

    /** 关锁时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "关锁时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date closeTime;

    /** 使用时间(小时) */
    @Excel(name = "使用时间(小时)")
    private double useTime;

    /** 默认使用时间 */
    @Excel(name = "默认使用时间")
    private double defaultTime;

    /** 计费价格 */
    @Excel(name = "计费价格")
    private double chargePrice;

    /** 超时状态 */
    @Excel(name = "超时状态")
    private String overtimeState;

    /** 使用状态 */
    @Excel(name = "使用状态")
    private String useState;

    /** 借用人 */
    @Excel(name = "借用人")
    private String useUser;

    /** 借用单位 */
    @Excel(name = "借用单位")
    private String useUnit;

    /** 统计年份 */
    private String queryYear;

    /** 统计月份 */
    private String queryMonth;

    /** 数据权限1 */
    private String deptId;

    /** 数据权限2 */
    private String userId;

    public void setObjId(Long objId) 
    {
        this.objId = objId;
    }

    public Long getObjId() 
    {
        return objId;
    }

    public void setDeviceId(String deviceId) 
    {
        this.deviceId = deviceId;
    }

    public String getDeviceId() 
    {
        return deviceId;
    }

    public void setDeviceCode(String deviceCode) 
    {
        this.deviceCode = deviceCode;
    }

    public String getDeviceCode() 
    {
        return deviceCode;
    }

    public void setDeviceName(String deviceName) 
    {
        this.deviceName = deviceName;
    }

    public String getDeviceName() 
    {
        return deviceName;
    }

    public void setDeviceType(String deviceType) 
    {
        this.deviceType = deviceType;
    }

    public String getDeviceType() 
    {
        return deviceType;
    }

    public void setOpenTime(Date openTime) 
    {
        this.openTime = openTime;
    }

    public Date getOpenTime() 
    {
        return openTime;
    }

    public void setCloseTime(Date closeTime) 
    {
        this.closeTime = closeTime;
    }

    public Date getCloseTime() 
    {
        return closeTime;
    }

    public void setUseTime(double useTime)
    {
        this.useTime = useTime;
    }

    public double getUseTime()
    {
        return useTime;
    }

    public void setDefaultTime(double defaultTime)
    {
        this.defaultTime = defaultTime;
    }

    public double getDefaultTime()
    {
        return defaultTime;
    }

    public void setChargePrice(double chargePrice)
    {
        this.chargePrice = chargePrice;
    }

    public double getChargePrice()
    {
        return chargePrice;
    }

    public void setOvertimeState(String overtimeState) 
    {
        this.overtimeState = overtimeState;
    }

    public String getOvertimeState() 
    {
        return overtimeState;
    }

    public void setUseState(String useState) 
    {
        this.useState = useState;
    }

    public String getUseState() 
    {
        return useState;
    }

    public void setUseUser(String useUser) 
    {
        this.useUser = useUser;
    }

    public String getUseUser() 
    {
        return useUser;
    }

    public void setUseUnit(String useUnit) 
    {
        this.useUnit = useUnit;
    }

    public String getUseUnit() 
    {
        return useUnit;
    }

    public void setQueryYear(String queryYear) 
    {
        this.queryYear = queryYear;
    }

    public String getQueryYear() 
    {
        return queryYear;
    }

    public void setQueryMonth(String queryMonth) 
    {
        this.queryMonth = queryMonth;
    }

    public String getQueryMonth() 
    {
        return queryMonth;
    }

    public void setDeptId(String deptId) 
    {
        this.deptId = deptId;
    }

    public String getDeptId() 
    {
        return deptId;
    }

    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("objId", getObjId())
            .append("deviceId", getDeviceId())
            .append("deviceCode", getDeviceCode())
            .append("deviceName", getDeviceName())
            .append("deviceType", getDeviceType())
            .append("openTime", getOpenTime())
            .append("closeTime", getCloseTime())
            .append("useTime", getUseTime())
            .append("defaultTime", getDefaultTime())
            .append("chargePrice", getChargePrice())
            .append("overtimeState", getOvertimeState())
            .append("useState", getUseState())
            .append("useUser", getUseUser())
            .append("useUnit", getUseUnit())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("queryYear", getQueryYear())
            .append("queryMonth", getQueryMonth())
            .append("deptId", getDeptId())
            .append("userId", getUserId())
            .toString();
    }
}
