package com.chinaweal.aiccs.aiccs.forcedCancellation.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

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

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 强制注销登记决定书送达公告表
 * </p>
 *
 * @author lwd
 * @since 生成时间（如：2025-10-22）
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(schema = "AICCS", value = "FORCE_LOGOUT_SERV_NOTICE")
public class ForceLogoutServNotice implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 强制注销登记决定书送达公告唯一标识ID，作为主键
     */
    @TableId("NOTICEID")
    private String noticeId;

    /**
     * 业务ID
     */
    @TableField("BIZSEQID")
    private String bizseqId;

    /**
     * 公告标题，格式要求：xxx市场监管局（或行政审批局）xxxx年xx月xx日强制注销登记决定书送达公告，需公示
     */
    @TableField("NOTICETITLE")
    private String noticeTitle;

    /**
     * 公告详细内容，包含送达对象、送达依据、异议方式等信息，需公示
     */
    @TableField("NOTICECONTENT")
    private String noticeContent;

    /**
     * 作出强制注销决定的机关编码，代码标识符：C01006，数据元标识符：D01016，需公示
     */
    @TableField("JUDAUTH")
    private String judAuth;

    /**
     * 作出决定机关的中文全称，与JUDAUTH编码一一对应
     */
    @TableField("JUDAUTH_CN")
    private String judAuthCn;

    /**
     * 公告正式发布的日期，数据元标识符：D05015，需公示
     */
    @TableField("ANNDATE")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate annDate;

    /**
     * 公告有效起始日期，数据元标识符：D05030，需公示
     */
    @TableField("NOTICEFROM")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate noticeFrom;

    /**
     * 公告有效截止日期，数据元标识符：D05031，需公示
     */
    @TableField("NOTICETO")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate noticeTo;

    /**
     * 决定书的信息化系统下载地址，由公司登记机关指定，需公示
     */
    @TableField("WEBSITE")
    private String website;

    /**
     * 二级部署时区分不同地市系统的标识，采用6位登记机关编码
     */
    @TableField("S_EXT_FROMNODE")
    private String sExtFromnode;

    /**
     * 数据初始化或更新的时间戳，记录数据最新操作时间（默认当前时间戳）
     */
    @TableField("S_EXT_DATATIME")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime sExtDatetime;

    /**
     * 创建时间
     */
    @TableField("CREATE_TIME")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField("LAUPTIME")
    private LocalDateTime lauptime;

}
