package org.security.trans.prevent.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.security.ht.entity.common.FlowEntity;

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

/**
 * 案件材料报送表实体类
 *
 * @author BladeX
 * @since 2022-07-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("T_PREVENT_MATERIAL")
@ApiModel(value = "PreventMaterial对象", description = "案件材料报送表")
public class PreventMaterial extends FlowEntity implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 类型;1-异常事件上报、2-处置情况上报、 3-重大事项报告
	 */
	@ApiModelProperty(value = "类型;1-异常事件上报、2-处置情况上报、3-重大事项报告")
	@TableField("TYPE")
	private String type;
	/**
	 * 任务ID
	 */
	@ApiModelProperty(value = "任务ID")
	@TableField("TASK_ID")
	private String taskId;
	/**
	 * 任务名称
	 */
	@ApiModelProperty(value = "任务名称")
	@TableField("TASK_NAME")
	private String taskName;
	/**
	 * 事件描述
	 */
	@ApiModelProperty(value = "事件描述")
	@TableField("CASE_DESCRIBE")
	private String caseDescribe;
	/**
	 * 处置时间
	 */
	@ApiModelProperty(value = "处置时间")
	@TableField("DEAL_TIME")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date dealTime;
	/**
	 * 处置结果
	 */
	@ApiModelProperty(value = "处置结果")
	@TableField("DEAL_RESULT")
	private String dealResult;
	/**
	 * 事件发生时间
	 */
	@ApiModelProperty(value = "事件发生时间")
	@TableField("OCCUR_TIME")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date occurTime;

	/**
	 * 删除标识
	 */
	@ApiModelProperty(value = "删除标识")
	@TableField("DEL_FLAG")
	private String delFlag;

	@ApiModelProperty(value = "机构ID")
	@TableField("DEPT_ID")
	private String deptId;

	@ApiModelProperty(value = "机构名称")
	@TableField("DEPT_NAME")
	private String deptName;
	/**
	 * 提报期限
	 */
	@ApiModelProperty(value = "提报期限")
	@TableField("DEADLINE")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date deadline;
	/**
	 * 提报用户
	 */
	@ApiModelProperty(value = "提报用户")
	@TableField("USER_ID")
	private String userId;
	/**
	 * 提报角色
	 */
	@ApiModelProperty(value = "提报角色")
	@TableField("ROLE_ID")
	private String roleId;
	/**
	 * 审批状态(0-待提交，1-审批中，2-审批通过
	 */
	@ApiModelProperty(value = "审批状态(0-待提交，1-审批中，2-审批通过)")
	@TableField("STATE")
	private String state;
	/**
	 * 业务状态(0-待提交，1-超时未提报，2-已提报，3-超时已提报)
	 */
	@ApiModelProperty(value = "业务状态(0-待提交，1-超时未提报，2-已提报，3-超时已提报)")
	@TableField("STATUS")
	private String status;

	/**
	 * 是否跨分行提交到总行
	 */
	@ApiModelProperty(value = "是否跨分行提交到总行")
	@TableField("CROSS_BRANCH")
	private Boolean crossBranch;
	/**
	 * 附件groupname
	 */
	@ApiModelProperty(value = "附件groupname")
	@TableField("GROUP_NAME")
	private String groupName;
	/**
	 * 提报时间
	 */
	@ApiModelProperty(value = "提报时间")
	@TableField("SUBMIT_TIME")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date submitTime;
}
