package com.chinaweal.aiccs.aiccs.business.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.chinaweal.youfool.framework.springboot.json.LocalDateTimeStringSerializer;
import com.chinaweal.youfool.framework.springboot.mybatis.plus.SuperEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDate;

/**
 * <p>
 * 监管共用审批意见表
 * </p>
 *
 * @author quebh
 * @since 2023-05-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "xr_opinion")
@ApiModel(value = "XrOpinion对象", description = "监管共用审批意见表")
public class XrOpinion extends SuperEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 意见编号
     */
    @ApiModelProperty(value = "意见编号")
    @TableId
    @TableField("opinion_id")
    private String opinionId;

    /**
     * 流程记录id
     */
    @ApiModelProperty(value = "流程记录id")
    @TableField("activity_id")
    private String activityId;

    /**
     * 待办id
     */
    @ApiModelProperty(value = "待办id")
    @TableField("task_list_id")
    private String taskListId;
    /**
     * 意见类型(审批部门)
     */
    @ApiModelProperty(value = "意见类型(审批部门) handle 经办、examine审核、approve审批、end通过")
    @TableField("opinion_type")
    private String opinionType;

    /**
     * 承办人
     */
    @ApiModelProperty(value = "承办人")
    @TableField("handler")
    private String handler;

    /**
     * 承办人ID
     */
    @ApiModelProperty(value = "承办人ID")
    @TableField("handler_id")
    private String handlerId;

    /**
     * 审批意见
     */
    @ApiModelProperty(value = "审批意见")
    @TableField("opinion_content")
    private String opinionContent;

    /**
     * 承办时间
     */
    @ApiModelProperty(value = "承办时间")
    @JsonSerialize(using = LocalDateTimeStringSerializer.class)
    @TableField("handel_date")
    private LocalDate handelDate;

    /**
     * 送审(退卷)日期
     */
    @ApiModelProperty(value = "送审(退卷)日期")
    @JsonSerialize(using = LocalDateTimeStringSerializer.class)
    @TableField("trial_date")
    private LocalDate trialDate;

    /**
     * 是否同意 "0"不同意"1"同意"2"回退"3"转办
     */
    @ApiModelProperty(value = "是否同意")
    @TableField("agree")
    private String agree;

    /**
     * 地区代码
     */
    @ApiModelProperty(value = "地区代码")
    @TableField("area_code")
    private String areaCode;



    @ApiModelProperty(value = "行政处罚列入需要字段：上级是否已审批：0不是,1是")
    @TableField("approve")
    private String approve;


}
