using QYZH.InteractiveMagazine.Models.Enum;
namespace QYZH.InteractiveMagazine.Models.Dto.Pet;
///
/// 皮肤创建/更新输入
///
public class PetSkinInput
{
///
/// 所属宠物模板Id
///
public long TemplateId { get; set; }
///
/// 皮肤名称
///
public string Name { get; set; } = string.Empty;
///
/// 描述/特效说明
///
public string? Description { get; set; }
///
/// 稀有度: Normal, Rare, Epic, Legendary
///
public string Rarity { get; set; } = "Normal";
///
/// 排序权重
///
public int SortOrder { get; set; }
///
/// 皮肤类型: Normal, Limited, Event
///
public string Type { get; set; } = PetSkinTypeEnum.Normal.ToString();
///
/// 封面图片地址
///
public string? CoverImageUrl { get; set; }
}
///
/// 皮肤输出
///
public class PetSkinOutput
{
public long Id { get; set; }
public long TemplateId { get; set; }
public string Name { get; set; } = string.Empty;
public string? Description { get; set; }
public string Rarity { get; set; } = string.Empty;
public int SortOrder { get; set; }
public string Type { get; set; } = string.Empty;
///
/// 封面图片地址
///
public string? CoverImageUrl { get; set; }
public string? CreatedBy { get; set; }
public DateTime CreatedAt { get; set; }
public string? UpdatedBy { get; set; }
public DateTime? UpdatedAt { get; set; }
///
/// 关联的皮肤图片列表
///
public List? Images { get; set; }
}
///
/// 皮肤分页查询输入
///
public class PetSkinQueryInput : PageQueryModel
{
///
/// 所属宠物模板Id(必填)
///
public long TemplateId { get; set; }
///
/// 皮肤名称(模糊搜索)
///
public string? Name { get; set; }
///
/// 稀有度: Normal, Rare, Epic, Legendary
///
public string? Rarity { get; set; }
}
///
/// 皮肤图片创建/更新输入
///
public class PetSkinImageInput
{
///
/// 皮肤Id
///
public long SkinId { get; set; }
///
/// 进化阶段Id
///
public long EvolutionStageId { get; set; }
///
/// 图片地址
///
public string ImageUrl { get; set; } = string.Empty;
///
/// 图片顺序(动画帧序号)
///
public int SortOrder { get; set; }
///
/// 图片类型: Normal, Special
///
public string Type { get; set; } = PetSkinImageTypeEnum.Normal.ToString();
}
///
/// 皮肤图片输出
///
public class PetSkinImageOutput
{
public long Id { get; set; }
public long SkinId { get; set; }
public long EvolutionStageId { get; set; }
public string ImageUrl { get; set; } = string.Empty;
public int SortOrder { get; set; }
public string Type { get; set; } = string.Empty;
public string? CreatedBy { get; set; }
public DateTime CreatedAt { get; set; }
public string? UpdatedBy { get; set; }
public DateTime? UpdatedAt { get; set; }
}