using QYZH.InteractiveMagazine.Models.Enum;
namespace QYZH.InteractiveMagazine.Models.Dto.Pet;
///
/// 宠物模板创建/更新输入(包含进化链及图片)
///
public class PetTemplateInput
{
///
/// 模板名称
///
public string Name { get; set; } = string.Empty;
///
/// 模板描述
///
public string? Description { get; set; }
///
/// 模板图标地址
///
public string? IconUrl { get; set; }
///
/// 排序权重
///
public int SortOrder { get; set; }
///
/// 模板类型: Normal, Special, Limited
///
public string Type { get; set; } = PetTemplateTypeEnum.Normal.ToString();
///
/// 进化链列表(创建时一并传入,每个阶段含一组图片)
///
public List? Evolutions { get; set; }
}
///
/// 进化阶段输入(含该阶段的图片列表,用于模板创建时一并提交)
///
public class PetEvolutionStageInput
{
///
/// 阶段名称
///
public string StageName { get; set; } = string.Empty;
///
/// 阶段等级
///
public int StageLevel { get; set; }
///
/// 进化所需成长值
///
public int RequiredGrowth { get; set; }
///
/// 进化类型: Normal, Special
///
public string Type { get; set; } = PetEvolutionTypeEnum.Normal.ToString();
///
/// 该阶段对应的默认皮肤图片列表(其中 Type="Cover" 的为封面图)
///
public List? Images { get; set; }
}
///
/// 进化阶段图片输入(创建模板时使用)
///
public class PetStageImageInput
{
///
/// 图片地址
///
public string ImageUrl { get; set; } = string.Empty;
///
/// 图片顺序(动画帧序号)
///
public int SortOrder { get; set; }
///
/// 图片类型: Normal=普通帧, Cover=封面图
///
public string Type { get; set; } = PetSkinImageTypeEnum.Normal.ToString();
}
///
/// 宠物模板输出
///
public class PetTemplateOutput
{
public long Id { get; set; }
public string Name { get; set; } = string.Empty;
public string? Description { get; set; }
public long DefaultEvolutionId { get; set; }
public string? IconUrl { get; set; }
///
/// 封面图片地址(默认取初始阶段封面图)
///
public string? CoverImageUrl { get; set; }
public int SortOrder { get; set; }
public string Type { get; set; } = string.Empty;
public string Status { get; set; } = string.Empty;
public string? CreatedBy { get; set; }
public DateTime CreatedAt { get; set; }
public string? UpdatedBy { get; set; }
public DateTime? UpdatedAt { get; set; }
}
///
/// 宠物模板分页查询输入
///
public class PetTemplateQueryInput : PageQueryModel
{
///
/// 模板名称(模糊搜索)
///
public string? Name { get; set; }
///
/// 模板类型: Normal, Special, Limited
///
public string? Type { get; set; }
///
/// 状态: Active, Inactive
///
public string? Status { get; set; }
}