package com.jeeplus.business.drive.service.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.core.service.dto.BaseDTO;
import com.jeeplus.sys.domain.WorkAttachmentInfo;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

@Data
public class DriveMaintainDTO extends BaseDTO {
    /**
     * 车辆信息id
     */
    private String driveInfoId;

    /**
     * 车辆维护类型
     */
    private String driveMaintainType;


    /**
     * 维护开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @Excel(name = "维护开始时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date startTime;

    /**
     * 维护结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @Excel(name = "维护结束时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date endTime;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 流程id
     */
    private String procInsId;
    /**
     * 流程信息
     */
    private String processDefinitionId;
    @TableField(exist = false)
    private String taskId;

    /**
     * 状态
     */
    private String status;

    /**
     * 车牌号
     */
    @Excel(name = "车牌号",width = 16)
    private String driveNumber;
    @Excel(name = "申请人",width = 16)
    private String createName;
    @Excel(name = "申请时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 维护时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date[] maintainDates;

    private String[] dates;


    private String createById;
    private String updateById;

    //附件
    private List<WorkAttachmentInfo> files;

    @Excel(name = "申请状态",width = 16)
    private String maintainStatus;
    @Excel(name = "维护类型",width = 16)
    private String maintainType;



}
