package com.jpsoft.shinestar.modules.business.entity;

import java.io.Serializable;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import org.springframework.data.annotation.Transient;
import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;

/**
 * 描述:business_supplement_work的实体类
 */
@Data
@ApiModel(value = "business_supplement_work的实体类")
public class SupplementWork {
    @ApiModelProperty(value = "")
    private String id;
    @ApiModelProperty(value = "申请补卡人员角色id")
    private String personPopedomId;
    @ApiModelProperty(value = "流程实例编号")
    private String procinstId;
    @ApiModelProperty(value = "补卡的班次编号")
    private String workShiftId;
    @ApiModelProperty(value = "考勤日期")
    private String attendanceDate;
    @ApiModelProperty(value = "类别(上班-1，下班-2)")
    private String classify;
    @ApiModelProperty(value = "审核类型（1：个人申请，2：批量申请）")
    private String type;
    @ApiModelProperty(value = "审核状态（0：审核中，1：同意，2：退回，3：拒绝，4：无需审核）")
    private String status;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    @ApiModelProperty(value = "提交时间")
    private Date submitTime;
    @ApiModelProperty(value = "申请理由")
    private String reason;
    @ApiModelProperty(value = "图片")
    private String imageUrl;
    @ApiModelProperty(value = "创建人")
    private String createBy;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    @ApiModelProperty(value = "是否删除")
    private Boolean delFlag = false;

    @Transient
    private  String personName;

    @Transient
    private  String companyName;

    @Transient
    private String shiftName;

    @Transient
    private String supplementTime;

    @Transient
    private List<Map> members;
}