package com.zhgd.xmgl.modules.basicdata.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.io.Serializable;
import java.util.List;

/**
 * @Description: 系统资源-模块表
 * @author： pds
 * @date： 2023-02-09
 * @version： V1.0
 */
@Data
@TableName("base_module")
@ApiModel(value = "BaseModule实体类", description = "BaseModule")
public class BaseModule implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 模块主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "moduleId(主键ID)")
    private java.lang.Long moduleId;
    /**
     * 标签名称
     */
    @Excel(name = "标签名称", width = 15)
    @ApiModelProperty(value = "标签名称")
    private java.lang.String labelName;
    /**
     * 标签排序
     */
    @Excel(name = "标签排序", width = 15)
    @ApiModelProperty(value = "标签排序")
    private java.lang.Integer labelSortNum;
    /**
     * 模块名称
     */
    @Excel(name = "模块名称", width = 15)
    @ApiModelProperty(value = "模块名称")
    private java.lang.String moduleName;
    /**
     * 模块描述语句
     */
    @Excel(name = "模块描述语句", width = 15)
    @ApiModelProperty(value = "模块描述语句")
    private java.lang.String moduleDesc;
    /**
     * 模块类型，1jxjadmin模块 , 2政务模块，3企业模块，4项目模块
     */
    @Excel(name = "模块类型，1jxjadmin模块 , 2政务模块，3企业模块，4项目模块", width = 15)
    @ApiModelProperty(value = "模块类型，1jxjadmin模块 , 2政务模块，3企业模块，4项目模块")
    private java.lang.Integer moduleType;
    /**
     * 模块未选中图标
     */
    @Excel(name = "模块未选中图标", width = 15)
    @ApiModelProperty(value = "模块未选中图标")
    private java.lang.String moduleIconNormal;
    /**
     * 模块路径
     */
    @Excel(name = "模块路径", width = 15)
    @ApiModelProperty(value = "模块路径")
    private java.lang.String modulePath;
    /**
     * 选中时模块图标
     */
    @Excel(name = "选中时模块图标", width = 15)
    @ApiModelProperty(value = "选中时模块图标")
    private java.lang.String moduleIconChecked;
    /**
     * app端组件名
     */
    @Excel(name = "app端组件名", width = 15)
    @ApiModelProperty(value = "app端组件名")
    private java.lang.String appPlugin;
    /**
     * app端模块名称
     */
    @Excel(name = "app端模块名称", width = 15)
    @ApiModelProperty(value = "app端模块名称")
    private java.lang.String appName;
    /**
     * 是否APP端显示该模块，1是,2否
     */
    @Excel(name = "是否APP端显示该模块，1是,2否", width = 15)
    @ApiModelProperty(value = "是否APP端显示该模块，1是,2否")
    private java.lang.Integer appShow;
    /**
     * 样式版本 注：可根据不同的风格查询不同的菜单内容。  可根据不同的type前端展示不同的客户定制化风格内容
     */
    @Excel(name = "样式版本 注：可根据不同的风格查询不同的菜单内容。  可根据不同的type前端展示不同的客户定制化风格内容", width = 15)
    @ApiModelProperty(value = "样式版本 注：可根据不同的风格查询不同的菜单内容。  可根据不同的type前端展示不同的客户定制化风格内容")
    private java.lang.Integer styleType;
    /**
     * app端正常图标
     */
    @Excel(name = "app端正常图标", width = 15)
    @ApiModelProperty(value = "app端正常图标")
    private java.lang.String appIconNormal;
    /**
     * app端选中图标
     */
    @Excel(name = "app端选中图标", width = 15)
    @ApiModelProperty(value = "app端选中图标")
    private java.lang.String appIconChecked;
    /**
     * 是否是重要模块(重要模块展示在最前端）
     */
    @Excel(name = "是否是重要模块(重要模块展示在最前端）", width = 15)
    @ApiModelProperty(value = "是否是重要模块(重要模块展示在最前端）")
    private java.lang.String isImportantModule;
    /**
     * 风格名称 ：1:标准版; 2：星璇版本; 3：衢州版本
     */
    @Excel(name = "风格名称 ：1:标准版; 2：星璇版本; 3：衢州版本", width = 15)
    @ApiModelProperty(value = "风格名称 ：1:标准版; 2：星璇版本; 3：衢州版本")
    private java.lang.String styleTypeName;

    @Excel(name = "优先级 越小越靠前(排序字段)", width = 15)
    @ApiModelProperty(value = "优先级 越小越靠前(排序字段)")
    private java.lang.String priority;

    @TableField(exist = false)
    @ApiModelProperty(value = "模块类型名称")
    private String moduleTypeName;

    @TableField(exist = false)
    @ApiModelProperty(value = "模块拥有的菜单列表")
    private List<EntityMap> menuList;
}
