package com.ruoyi.tc.entity.zztb;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.tc.baseClass.BaseClass;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * @author dong
 * @since 2025/3/18 9:50
 */
@Data
@ApiModel("数据资产自主填报")
@TableName(value = "asset_sjzc_cp_zztb")
public class AssetSjZztbPo {
    @ApiModelProperty("id")
    @TableId(value = "sj_id", type = IdType.AUTO)
    private Long sjId;

    @ApiModelProperty("资产id")
    private Long assetId;

    @ApiModelProperty("任务id")
    private Integer taskId;
    /**
     * 数据资产-数据库名称
     */
    @Excel(name = "*数据库名称", sort = 105)
    @Size(max = 50, message = "编码长度不能超过255")
    @ApiModelProperty("数据资产-数据库名称")
    private String sjzcSjkmc;
    /**
     * 数据资产-数据库类型
     */
    //@NotBlank
    @Excel(name = "*数据库类型", sort = 106, dictType = "database_type", comboReadDict = true)
    @Size(max = 50, message = "数据资产-数据库类型长度不能超过50")
    @ApiModelProperty("数据资产-数据库类型")
    private String sjzcSjklx;
    /**
     * 数据资产-端口
     */
    @Excel(name = "*数据库端口", sort = 107)
    //@NotBlank
    @Size(max = 50, message = "数据资产-端口长度不能超过50")
    @ApiModelProperty("数据资产-端口")
    private String sjzcDk;
    /**
     * 数据资产-数据库版本
     */
    @Excel(name = "*数据库版本", sort = 108)
    //@NotBlank
    @Size(max = 50, message = "数据资产-数据库版本长度不能超过255")
    @ApiModelProperty("数据资产-数据库版本")
    private String sjzcSjkbb;
    /**
     * 数据资产-数据库所在IP
     */
    @Excel(name = "*数据库所在IP", sort = 109)
    @Size(max = 50, message = "数据资产-数据库所在IP长度不能超过50")
    @ApiModelProperty("数据资产-数据库所在IP")
    private String sjzcSjkIp;
    /**
     * 数据资产-共享属性
     */
    //@NotNull
    @Excel(name = "*共享属性", dictType = "sjzc_gxsx", comboReadDict = true, sort = 110)
    @ApiModelProperty("数据资产-共享属性")
    private String sjzcGxsx;
    /**
     * 数据资产-开放属性
     */
    @Excel(name = "*开放属性", dictType = "sjzc_kfsx", comboReadDict = true, sort = 111)
    //@NotNull
    @ApiModelProperty("数据资产-开放属性")
    private String sjzcKfsx;
    /**
     * 数据资产-数据领域
     */
    //@NotNull
    @Excel(name = "*数据领域", dictType = "sjzc_sjly", comboReadDict = true, sort = 112)
    @ApiModelProperty("数据资产-数据领域")
    private String sjzcSjly;
    /**
     * 数据资产-更新周期
     */
    //@NotNull
    @Excel(name = "*更新周期", dictType = "sjzc_gxzq", comboReadDict = true, sort = 113)
    @ApiModelProperty("数据资产-更新周期")
    private String sjzcGxzq;
    /**
     * 数据资产-数据类型
     */
    //@NotBlank
    @Excel(name = "*数据类型", sort = 114)
    @Size(max = 255, message = "数据资产-数据类型长度不能超过255")
    @ApiModelProperty("数据资产-数据类型")
    private String sjzcSjlx;
    /**
     * 数据资产-数据量
     */
    //@NotBlank
    @Excel(name = "*数据量", sort = 115)
    @ApiModelProperty("数据资产-数据量")
    private Integer sjzcSjl;

    @Excel(name = "*数据量单位", sort = 116, dictType = "sjzc_sjldw", comboReadDict = true)
    @ApiModelProperty("数据资产-数据量单位")
    private String sjzcSjldw;
    /**
     * 数据资产-是否为涉密数据
     */
    //@NotNull
    @Excel(name = "*是否为涉密数据", dictType = "is_no", comboReadDict = true, sort = 117)
    @ApiModelProperty("数据资产-是否为涉密数据")
    private String sjzcSmsj;
    /**
     * 数据资产-数据是否出境
     */
    //@NotNull
    @Excel(name = "*数据是否出境", dictType = "is_no", comboReadDict = true, sort = 118)
    @ApiModelProperty("数据资产-数据是否出境")
    private String sjzcCj;
    /**
     * 数据资产-数据分级分类
     */
    //@NotNull
    @Excel(name = "*数据分级分类", dictType = "sjzc_sjfjfl", comboReadDict = true, sort = 119)
    @ApiModelProperty("数据资产-数据分级分类")
    private String sjzcSjfjfl;
    /**
     * 数据资产-数据重要程度
     */
    //@NotNull
    @Excel(name = "数据重要程度", dictType = "zc_xtzyx", comboReadDict = true, sort = 120)
    @ApiModelProperty("数据资产-数据重要程度")
    private String sjzcSjzycd;
    /**
     * 数据资产-数据描述
     */
    @Size(max = 500, message = "数据资产-数据描述长度不能超过500")
    @ApiModelProperty("数据资产-数据描述")
    @Excel(name = "数据描述", sort = 121)
    private String sjzcSjms;


    /**
     * 数据资产-是否涉及个人信息
     */
    @Size(max = 500, message = "数据资产-数据描述长度不能超过500")
    @ApiModelProperty("数据资产-是否涉及个人信息")
    @Excel(name = "数据资产-是否涉及个人信息", sort = 121)
    private String sfsjgrxx;


    /**
     * 数据资产-个人信息数据量
     */
    @Size(max = 500, message = "数据资产-数据描述长度不能超过500")
    @ApiModelProperty("数据资产-个人信息数据量")
    @Excel(name = "数据资产-个人信息数据量", sort = 121)
    private String grxxsjl;

}
