package com.ruoyi.info.quicklink.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.DictText;
import com.ruoyi.common.filepathsplicing.FilePathValue;
import com.ruoyi.info.quicklink.enums.JumpType;
import com.ruoyi.info.quicklink.enums.ResourceModel;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * 金刚区视图对象 tb_quick_link
 *
 * @author wuchao
 * @date 2023-12-20
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel("金刚区视图对象")
@ExcelIgnoreUnannotated
public class QuickLinkVo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ExcelProperty(value = "id")
    @ApiModelProperty("id")
    private Long id;

    /**
     * 位置
     */
    @DictText(dictType = "quick_link_location")
    @ApiModelProperty("位置")
    private String locationCode;
    private String locationCodeText;

    /**
     * 名称
     */
    @ExcelProperty(value = "名称")
    @ApiModelProperty("名称")
    private String name;

    /**
     * 图标
     */
    @FilePathValue
    @ExcelProperty(value = "图标")
    @ApiModelProperty("图标")
    private String icon;

    /**
     * 链接类型：
     * 0：内部链接；
     * 1：外部链接；
     * 2：资源入口；
     */
    @ExcelProperty(value = "链接类型： 0：内部链接； 1：外部链接； 2：资源入口；")
    @ApiModelProperty("链接类型： 0：内部链接； 1：外部链接； 2：资源入口；")
    private JumpType jumpType;

    /**
     * 内部链接（字典）
     */
    @ExcelProperty(value = "内部链接", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "字=典")
    @ApiModelProperty("内部链接（字典）")
    private String innerPageCode;

    /**
     * 外部链接
     */
    @ExcelProperty(value = "外部链接")
    @ApiModelProperty("外部链接")
    private String outsideAddress;

    /**
     * 资源入口：
     * 0：无
     */
    @ExcelProperty(value = "资源入口")
    @ApiModelProperty("内部资源具体模型（无0，公告1，积分商品2，景区3）")
    private ResourceModel resourceModel;

    /**
     * 资源标题
     */
    @ExcelProperty(value = "资源标题")
    @ApiModelProperty("资源标题")
    private String resourceModelTitle;

    /**
     * 资源ID
     */
    @ExcelProperty(value = "资源ID")
    @ApiModelProperty("资源ID")
    private Long resourceModelId;

    /**
     * 顺序
     */
    @ExcelProperty(value = "顺序")
    @ApiModelProperty("顺序")
    private Integer sequence;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    @ApiModelProperty("状态")
    private Boolean status;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    @ApiModelProperty("备注")
    private String remark;

}
