package com.tourism.webadmin.back.vo;

import com.tourism.common.core.base.vo.BaseVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Map;

/**
 * 投诉内容管理VO视图对象。
 *
 * @author 吃饭睡觉
 * @date 2024-09-06
 */
@Schema(description = "投诉内容管理VO视图对象")
@Data
@EqualsAndHashCode(callSuper = true)
public class TourImComplaitVo extends BaseVo {

    /**
     * id。
     */
    @Schema(description = "id")
    private String id;

    /**
     * 举报类型id。
     */
    @Schema(description = "举报类型id")
    private String typeId;

    /**
     * 类型为其他违规的理由。
     */
    @Schema(description = "类型为其他违规的理由")
    private String elseTypeReason;

    /**
     * 举报对象 1用户 2群组。
     */
    @Schema(description = "举报对象 1用户 2群组")
    private Integer objectType;

    /**
     * 举报描述。
     */
    @Schema(description = "举报描述")
    private String description;

    /**
     * 举报图片 最多三张。
     */
    @Schema(description = "举报图片 最多三张")
    private String image;

    /**
     * 用户id。
     */
    @Schema(description = "用户id")
    private String userId;

    /**
     * 群组id。
     */
    @Schema(description = "群组id")
    private String groupId;

    /**
     * typeId 字典关联数据。
     */
    @Schema(description = "typeId 字典关联数据")
    private Map<String, Object> typeIdDictMap;

    /**
     * userId 字典关联数据。
     */
    @Schema(description = "userId 字典关联数据")
    private Map<String, Object> userIdDictMap;

    /**
     * groupId 字典关联数据。
     */
    @Schema(description = "groupId 字典关联数据")
    private Map<String, Object> groupIdDictMap;

    /**
     * objectType 全局字典关联数据。
     */
    @Schema(description = "objectType 全局字典关联数据")
    private Map<String, Object> objectTypeDictMap;
}
