package com.yifu.cloud.plus.v1.yifu.archives.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import java.io.Serializable;
import java.util.Date;

/**
 * @Author fxj
 * @Date 2022/7/1
 * @Description
 * @Version 1.0
 */
@Data
public class ContractAlertConfirmResVo implements Serializable {
	@ExcelAttribute(name = "项目名称")
	@Schema(description = "项目名称")
	@ExcelProperty("项目名称")
	private String deptName;

	@ExcelAttribute(name = "项目编码")
	@Schema(description = "项目编码")
	@ExcelProperty("项目编码")
	private String deptNo;
	/**
	 * 主键
	 */
	@TableId(type = IdType.ASSIGN_ID)
	@ExcelAttribute(name = "主键" )
	@Schema(description ="主键")
	@ExcelIgnore
	private String id;
	/**
	 * 员工名称
	 */
	@ExcelAttribute(name = "员工名称" )
	@Schema(description ="员工名称")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("员工名称")
	private String empName;

	/**
	 * 身份证号
	 */
	@ExcelAttribute(name = "身份证号" )
	@Schema(description ="身份证号")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("身份证号")
	private String empIdcard;
	/**
	 * 上一份合同起止日期
	 */
	@Schema(description = "上一份合同起止日期")
	private String lastContractEndAndStart;
	/**
	 * 就职岗位
	 */
	@ExcelAttribute(name = "就职岗位" )
	@Schema(description ="就职岗位")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("就职岗位")
	private String post;

	/**
	 * 合同类型
	 */
	@ExcelAttribute(name = "合同类型" )
	@Schema(description ="合同类型")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("合同类型")
	private String contractType;
	/**
	 * 签署甲方
	 */
	@ExcelAttribute(name = "签署甲方", maxLength = 50)
	@Length(max = 50, message = "签署甲方不能超过50个字符")
	@ExcelProperty("签署甲方")
	@Schema(description = "签署甲方")
	private String signatory;
	/**
	 * 签署方式
	 */
	@ExcelAttribute(name = "签署方式", maxLength = 32)
	@ExcelProperty("签署方式")
	@Schema(description = "签署方式1线下签0电子签")
	private String signType;
	/**
	 * 合同开始日期
	 */
	@ExcelAttribute(name = "合同开始日期" )
	@Schema(description ="合同开始日期")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("合同开始日期")
	private String contractStart;

	/**
	 * 合同截止日期
	 */
	@ExcelAttribute(name = "合同截止日期" )
	@Schema(description ="合同截止日期")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("合同截止日期")
	private String contractEnd;

	/**
	 * 合同截止日期-续签
	 */
	@ExcelAttribute(name = "合同截止日期-续签" )
	@Schema(description ="合同截止日期-续签")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("合同截止日期-续签")
	private String contractEndNew;

	/**
	 * 合同开始日期-续签
	 */
	@ExcelAttribute(name = "合同开始日期-续签" )
	@Schema(description ="合同开始日期-续签")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@HeadFontStyle(fontHeightInPoints = 11)
	@ExcelProperty("合同开始日期-续签")
	private String contractStartNew;


	/**
	 * 合同ID
	 */
	@ExcelAttribute(name = "合同ID" , isExport = false)
	@Schema(description ="合同ID")
	@ExcelIgnore
	private String contractId;



	@ExcelAttribute(name = "错误信息")
	@Schema(description = "错误信息")
	@ExcelProperty("错误信息")
	private String errorMsg;

	

}
