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.business.project.domain.JyProject;
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 DriveApplyDTO extends BaseDTO {

    private static final long serialVersionUID = 1L;

    /**
     * 关联项目id
     */
    private String projectId;
    @Excel(name = "用车项目",width = 16)
    private String projectName;

    /**
     * 用车人员id
     */
    private String useMen;
    @Excel(name = "用车人员",width = 16)
    private String userName;

    /**
     * 用车起使时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "用车开始时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date useStartTime;

    /**
     * 用车截至时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "用车结束时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date useEndTime;

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

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

    /**
     * 申请人
     */
    private String createById;
    private String updateById;
    /**
     * 申请人部门
     */
    private String createOffice;

    /**
     * 申请人部门
     */
    private String officeId;
    @Excel(name = "申请人",width = 16)
    private String createName;
    @Excel(name = "申请人部门",width = 16)
    private String officeName;

    @Excel(name = "申请时间",width = 16,exportFormat = "yyyy-MM-dd")
    private Date createTime;
    @Excel(name = "状态",width = 16)
    private String driveApplyStatus;

    private String status;

    /**
     * 用车原因
     */
    private String useReason;

    private List<JyProject> projectList;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date[] useDate;

    private List<WorkAttachmentInfo> files;
    private List<WorkAttachmentInfo> accountFiles;


    /**
     * 用车结算
     */
    private String taskIdAccount;
    private String processDefinitionIdAccount;
    private String procInsIdAccount;
    private String accountStatus;
    private String startMileage;
    private String endMileage;
    private String mileageCount;
    private String accountId;
    private String applyId;






}
