package com.chinaweal.aiccs.aiccs.seriousillegal.entity.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.chinaweal.aiccs.common.util.DateUtils;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDate;

/**
 * 外单位列严记录修改
 *
 * @author lroyia
 * @since 2026/3/11 11:12
 **/
@Data
@Accessors(chain = true)
@ApiModel("外单位列严记录修改")
public class EOtIlldisdetailTempModifyDto implements Serializable {

    private final static long serialVersionUID = 1L;

    /**
     * 业务号
     */
    @NotBlank
    @ApiModelProperty(value = "业务号", required = true)
    private String bizseq;

    /**
     * 列入/移出，用于判断bizseq的查询方式
     */
    @NotBlank
    @ApiModelProperty(value = "列入/移出，用于判断bizseq的查询方式（0：列入；1：移出）", required = true)
    private String bizType;

    /**
     * 类别（代码标识符：DD999，新增）
     */
    @ApiModelProperty(value = "类别（代码标识符：DD999，新增）")
    private String infotype;

    /**
     * 来源类别
     */
    @ApiModelProperty("来源类别（直接用中文）")
    private String sourcetype;

    /**
     * 是否经过听证程序(1是0否)
     */
    @ApiModelProperty("是否经过听证程序(1是0否)")
    private String ishea;

    /**
     * 当事人听证中提出的主要意见
     */
    @TableField("HEAOP")
    @ApiModelProperty("当事人听证中提出的主要意见")
    private String heaop;

    /**
     * 听证意见
     */
    @ApiModelProperty("听证意见")
    private String heaopinionl;

    /**
     * 行政复议机关
     */
    @ApiModelProperty("行政复议机关")
    private String reconsiderationorg;

    /**
     * 人民政府
     */
    @ApiModelProperty("人民政府")
    private String governmentorg;

    /**
     * 诉讼机关
     */
    @ApiModelProperty("诉讼机关")
    private String litiorg;

    /**
     * 作出判决的人民法院司法文书标题
     */
    @ApiModelProperty("作出判决的人民法院司法文书标题")
    private String juddoctitle;

    /**
     * 作出判决的人民法院司法文书文号
     */
    @ApiModelProperty("作出判决的人民法院司法文书文号")
    private String juddocno;

    /**
     * 列入事由/情形（代码标识符：CD73）
     */
    @ApiModelProperty(value = "列入事由/情形（代码标识符：CD73）")
    private String serillrea;

    /**
     * 列入事实理由
     */
    @ApiModelProperty("列入事实理由")
    private String serreasons;

    /**
     * 列入日期
     */
    @TableField("ABNTIME")
    @JsonFormat(pattern = DateUtils.DATE_DEFAULT_FORMAT, timezone = "GMT+8")
    @ApiModelProperty(value = "列入日期", example = "2024-01-01")
    private LocalDate abntime;

    /**
     * 移出事由（代码标识符：CD74）
     */
    @ApiModelProperty(value = "移出事由（代码标识符：CD74）")
    private String remexcpres;

    /**
     * 移出事实理由
     */
    @ApiModelProperty("移出事实理由")
    private String remreasons;

    /**
     * 移出日期
     */
    @JsonFormat(pattern = DateUtils.DATE_DEFAULT_FORMAT, timezone = "GMT+8")
    @ApiModelProperty(value = "移出日期", example = "2024-01-01")
    private LocalDate remdate;
}
