package com.artfess.rescue.base.model;

import com.artfess.base.entity.BaseModel;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 车辆日志记录
 *
 * @company 阿特菲斯信息技术有限公司
 * @author 系统管理员
 * @since 2025-03-08
 */
@Data
@ApiModel(value="BizCarTaskLog对象", description="车辆日志记录")
public class BizCarTaskLog extends BaseModel<BizCarTaskLog> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    @TableId("ID_")
    private String id;

    @ApiModelProperty(value = "任务id")
    @TableField("TASK_ID_")
    private String taskId;

    @ApiModelProperty(value = "车牌")
    @TableField("CAR_CODE_")
    private String carCode;

    @ApiModelProperty(value = "开始里程")
    @TableField("START_MILEAGE_")
    private BigDecimal startMileage;

    @ApiModelProperty(value = "结束里程")
    @TableField("END_MILEAGE_")
    private BigDecimal endMileage;

    @ApiModelProperty(value = "是否使用 0.未使用 1.已使用")
    @TableField("IS_USE_")
    private Integer isUse;

    @ApiModelProperty(value = "备注")
    @TableField("REMARK_")
    private String remark;

    @ApiModelProperty(value = "任务类型(i:巡查救援 e:事件 r:救援)")
    @TableField("TASK_TYPE_")
    private String taskType;

    @ApiModelProperty(value = "巡检车辆外观 0.否 1.是")
    @TableField("CAR_APPEARANCE_")
    private String carAppearance;

    @ApiModelProperty(value = "巡检车辆引擎是否正常 0.否 1.是")
    @TableField("CAR_ENGINE_")
    private String carEngine;

    @ApiModelProperty(value = "巡检车辆消防设备是否正常 0.否 1.是")
    @TableField("CAR_FFE_")
    private String carFfe;

    @ApiModelProperty(value = "巡检车辆灯光设备是否正常 0.否 1.是")
    @TableField("CAR_LIGHT_")
    private String carLight;

    @ApiModelProperty(value = "巡检车辆操作仪器是否正常 0.否 1.是")
    @TableField("CAR_OP_")
    private String carOp;

    @ApiModelProperty(value = "是否已删，1已删除，0未删除")
    @TableField(value = "IS_DELE_", updateStrategy = FieldStrategy.NOT_EMPTY)
    @TableLogic
    private String isDele="0";

    @ApiModelProperty(value = "创建人组织名称")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_ORG_NAME_", fill= FieldFill.INSERT, select=true)
    private String createOrgName;

    @ApiModelProperty(value = "创建人组织Id")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_ORG_ID_", fill= FieldFill.INSERT, select=true)
    private String createOrgId;

    @ApiModelProperty(value = "创建人单位ID")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_COMPANY_ID_", fill= FieldFill.INSERT, select=false)
    private String createCompanyId;

    @ApiModelProperty(value = "创建人单位名称")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_COMPANY_NAME_", fill= FieldFill.INSERT, select=false)
    private String createCompanyName;

    @ApiModelProperty(value = "创建人姓名")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_NAME_", fill= FieldFill.INSERT, select=true)
    private String createName;

    @ApiModelProperty(value = "创建时间")
    @TableField(updateStrategy= FieldStrategy.NOT_NULL,value="CREATE_TIME_", fill= FieldFill.INSERT, select=true)
    private LocalDateTime createTime;

}
