package com.ankaibei.workFlow.webadmin.ankaibei.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.web.multipart.MultipartFile;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author
 * @version 1.0
 * @description: 差旅费用申请记录
 * @date 2022/9/26 16:05
 */
@Data
public class TravelExpenseVo implements Serializable {
    //主键id
    private Integer id;
    //项目名称
    private String projectName;
    //申请人/提交人
    private String applicant;
    //开始时间
    @JsonFormat(timezone = "UTC", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginTime;
    //结束时间
    @JsonFormat(timezone = "UTC", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    //出发地点
    private String startSite;
    //目的地
    private String endSite;
    //交通类型和费用的主体信息包含（交通工具，金额，同行人员，备注）
    private List<TravelExpenseSubject> subject;
    //住宿费
    private BigDecimal accommodationFee;
    //住宿天数
    private Integer accommodationDays;
    //合计费用（住宿）
    private BigDecimal totalFee;
    //住宿记录发票(存上传发票地址)
    private String dormitoryInvoice;
    //备注（住宿）
    private String accommodationRemark;
    //住宿人员
    private String accommodationPerson;
    //餐饮金额
    private BigDecimal repastFee;
    //备注（餐饮）
    private String repastRemark;
    //餐饮记录发票(存上传发票地址)
    private String repastInvoice;
    //用餐人员
    private String repastPerson;
    //此次记录的总费用
    private BigDecimal totalMoney;

    @Data
    public static class TravelExpenseSubject {
        //交通工具,金额,同行人员，备注
        private String vehicle;
        private BigDecimal amount;
        private String entourage;
        private String remark;
        //交通记录发票(存上传发票地址)
        private String trafficInvoice;
    }
}
