package com.microservices.zone.detail.domain.vo;

import com.alibaba.fastjson2.JSONObject;
import com.microservices.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author otto
 */

@Data
@ApiModel("专区详情数据对象")
public class ZoneDetailDataVo extends BaseEntity {
    @ApiModelProperty(value = "特色专区主键")
    private Long id;

    /**
     * 所属组织Id
     */
    @ApiModelProperty(value = "所属组织Id")
    private Long deptId;
    /**
     * 特色专区名称
     */
    @ApiModelProperty(value = "特色专区名称")
    private String name;
    /** 特色专区标识 */
    @ApiModelProperty(value = "特色专区标识")
    private String key;
    @ApiModelProperty(value = "banner主标题")
    private String mainTitle;
    @ApiModelProperty(value = "banner副标题")
    private String subTitle;
    @ApiModelProperty(value = "专区一级标题")
    private String firstTitle;
    @ApiModelProperty(value = "banner列表")
    private String bannerList;
    @ApiModelProperty(value = "专区二级标题")
    private String introductionTitle;
    @ApiModelProperty(value = "专区简介")
    private String introductionContent;
    @ApiModelProperty(value = "专区简介图")
    private String introductionImage;
    @ApiModelProperty(value = "首页会员展示个数")
    private Long homepageMembershipSize;
    @ApiModelProperty(value = "首页项目展示个数")
    private Long homepageProjectSize;
    @ApiModelProperty(value = "首页新闻展示个数")
    private Long homepageCmsSize;
    @ApiModelProperty(value = "需展示的项目Key列表")
    private String gitlinkProjectKeys;
    @ApiModelProperty(value = "新闻数")
    private Long cmsCount;
    @ApiModelProperty(value = "会员数")
    private Long memberCount;
    @ApiModelProperty(value = "项目数")
    private Long projectCount;

    /**
     * 帮助中心板块标题
     */
    @ApiModelProperty(value = "帮助中心板块标题")
    private String helperTitle;

    /**
     * 帮助中心板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "帮助中心板块是否展示（0:不展示，1：展示） ")
    private Integer helperShow;

    /**
     * 资讯板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "资讯板块是否展示（0:不展示，1：展示） ")
    private Integer cmsShow;

    /**
     * 项目板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "项目板块是否展示（0:不展示，1：展示）")
    private Integer projectShow;

    /**
     * 会员板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "会员板块是否展示（0:不展示，1：展示）")
    private Integer memberShow;

    /** 合作伙伴板块是否展示（0:不展示，1：展示） */
    @ApiModelProperty(value = "合作伙伴板块是否展示（0:不展示，1：展示）")
    private Integer partnersShow;

    @ApiModelProperty(value = "专项项目板块是否展示（0:不展示，1：展示）")
    private Integer specialProjectShow;

    @ApiModelProperty(value = "首页专项项目标题")
    private String homepageSpecialProjectTitle;

    @ApiModelProperty(value = "资源板块是否展示（0:不展示，1：展示）")
    private Integer resourceShow;

    @ApiModelProperty(value = "首页资源标题")
    private String homepageResourceTitle;

    /** 首页资讯标题 */
    @ApiModelProperty(value = "首页资讯标题")
    private String homepageCmsTitle;

    /** 首页项目标题 */
    @ApiModelProperty(value = "首页项目标题")
    private String homepageProjectTitle;

    /** 首页会员标题 */
    @ApiModelProperty(value = "首页会员标题")
    private String homepageMemberTitle;

    /**
     * 首页合作伙伴标题
     */
    @ApiModelProperty(value = "首页合作伙伴标题")
    private String homepagePartnersTitle;

    /**
     * 专区模板
     */
    @ApiModelProperty(value = "专区模板")
    private String template;
    /**
     * 专区是否发布（0:未发布，1：已发布）
     */
    @ApiModelProperty(value = "专区是否发布（0:未发布，1：已发布）")
    private Integer isPublish;
    /**
     * 专区访问地址
     */
    @ApiModelProperty(value = "专区访问地址")
    private String zoneUrl;
    /**
     * 专区对应GitLink项目
     */
    @ApiModelProperty(value = "专区对应GitLink项目")
    private JSONObject gitlinkProject;

    /**
     * 是否需要审核（0：不需要，1：需要）
     */
    @ApiModelProperty(value = "是否需要审核，（0：不需要审核，1：需要审核")
    private Integer docNeedAudit;

    /**
     * 是否需要审核（0：不需要，1：需要）
     */
    @ApiModelProperty(value = "资源是否需要审核（0:不需要审核，1：需要审核）")
    private Integer resourceNeedAudit;

    /**
     * 资讯是否锁定中（0：未锁定，1：锁定）
     */
    @ApiModelProperty(value = "资讯是否锁定中（0：未锁定，1：锁定）")
    private Integer isLockCms;


    /**
     * 资讯板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "资讯板块是否展示（0:不展示，1：展示）")
    private Integer sectionCmsShow;

    /**
     * 项目板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "项目板块是否展示（0:不展示，1：展示）")
    private Integer sectionProjectShow;

    /**
     * 会员板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "会员板块是否展示（0:不展示，1：展示）")
    private Integer sectionMemberShow;

    /**
     * 帮助中心板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "帮助中心板块是否展示（0:不展示，1：展示）")
    private Integer sectionHelperShow;

    /**
     * 资讯板块标题
     */
    @ApiModelProperty(value = "资讯板块标题")
    private String sectionCmsTitle;

    /**
     * 项目板块标题
     */
    @ApiModelProperty(value = "项目板块标题")
    private String sectionProjectTitle;

    /**
     * 会员板块标题
     */
    @ApiModelProperty(value = "会员板块标题")
    private String sectionMemberTitle;

    /**
     * 帮助中心板块标题
     */
    @ApiModelProperty(value = "帮助中心板块标题")
    private String sectionHelperTitle;


    /**
     * 首页板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "首页板块是否展示（0:不展示，1：展示）")
    private Integer sectionHomepageShow;

    /**
     * 资源板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "资源板块是否展示（0:不展示，1：展示）")
    private Integer sectionResourceShow;


    /**
     * 数据集板块是否展示（0:不展示，1：展示）
     */
    @ApiModelProperty(value = "数据集板块是否展示（0:不展示，1：展示）")
    private Integer sectionDataSetShow;


    /**
     * 首页板块标题
     */
    @ApiModelProperty(value = "首页板块标题")
    private String sectionHomepageTitle;

    /**
     * 资源板块标题
     */
    @ApiModelProperty(value = "资源板块标题")
    private String sectionResourceTitle;
    /**
     * 数据集板块标题
     */
    @ApiModelProperty(value = "数据集板块标题")
    private String sectionDataSetTitle;

    /**
     * 近一周的文章新增发布数
     */
    @ApiModelProperty(value = "近一周的文章新增发布数")
    private Long weekArticles = 0L;

    /**
     * 近一周UV数（点击去重）
     */
    @ApiModelProperty(value = "近一周UV数（点击去重）")
    private Long weekUV = 0L;

    /**
     * 近一周PV数（总访问量）
     */
    @ApiModelProperty(value = "近一周PV数（总访问量）")
    private Long weekPV = 0L;
}
