1. 新增皮肤按进化阶段分组的输出DTO 2. 新增宠物相关便捷查询接口并实现对应控制器 3. 新增OSS图片搬运辅助类,实现临时文件迁移逻辑 4. 为商品、宠物相关服务添加OSS图片自动迁移功能 5. 调整微信授权同步逻辑移除异步等待 6. 更新配置文件中的微信密钥和OSS存储信息 7. 注册SDK服务到DI容器
154 lines
3.9 KiB
C#
154 lines
3.9 KiB
C#
using QYZH.InteractiveMagazine.Models.Enum;
|
||
|
||
namespace QYZH.InteractiveMagazine.Models.Dto.Pet;
|
||
|
||
/// <summary>
|
||
/// 皮肤创建/更新输入
|
||
/// </summary>
|
||
public class PetSkinInput
|
||
{
|
||
/// <summary>
|
||
/// 所属宠物模板Id
|
||
/// </summary>
|
||
public long TemplateId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 皮肤名称
|
||
/// </summary>
|
||
public string Name { get; set; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// 描述/特效说明
|
||
/// </summary>
|
||
public string? Description { get; set; }
|
||
|
||
/// <summary>
|
||
/// 稀有度: Normal, Rare, Epic, Legendary
|
||
/// </summary>
|
||
public string Rarity { get; set; } = "Normal";
|
||
|
||
/// <summary>
|
||
/// 排序权重
|
||
/// </summary>
|
||
public int SortOrder { get; set; }
|
||
|
||
/// <summary>
|
||
/// 皮肤类型: Normal, Limited, Event
|
||
/// </summary>
|
||
public string Type { get; set; } = PetSkinTypeEnum.Normal.ToString();
|
||
|
||
/// <summary>
|
||
/// 封面图片地址
|
||
/// </summary>
|
||
public string? CoverImageUrl { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 皮肤输出
|
||
/// </summary>
|
||
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;
|
||
/// <summary>
|
||
/// 封面图片地址
|
||
/// </summary>
|
||
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; }
|
||
|
||
/// <summary>
|
||
/// 关联的皮肤图片列表
|
||
/// </summary>
|
||
public List<PetSkinImageOutput>? Images { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 皮肤分页查询输入
|
||
/// </summary>
|
||
public class PetSkinQueryInput : PageQueryModel
|
||
{
|
||
/// <summary>
|
||
/// 所属宠物模板Id(必填)
|
||
/// </summary>
|
||
public long TemplateId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 皮肤名称(模糊搜索)
|
||
/// </summary>
|
||
public string? Name { get; set; }
|
||
|
||
/// <summary>
|
||
/// 稀有度: Normal, Rare, Epic, Legendary
|
||
/// </summary>
|
||
public string? Rarity { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 皮肤图片创建/更新输入
|
||
/// </summary>
|
||
public class PetSkinImageInput
|
||
{
|
||
/// <summary>
|
||
/// 皮肤Id
|
||
/// </summary>
|
||
public long SkinId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 进化阶段Id
|
||
/// </summary>
|
||
public long EvolutionStageId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 图片地址
|
||
/// </summary>
|
||
public string ImageUrl { get; set; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// 图片顺序(动画帧序号)
|
||
/// </summary>
|
||
public int SortOrder { get; set; }
|
||
|
||
/// <summary>
|
||
/// 图片类型: Normal, Special
|
||
/// </summary>
|
||
public string Type { get; set; } = PetSkinImageTypeEnum.Normal.ToString();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 皮肤图片输出
|
||
/// </summary>
|
||
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; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 皮肤按进化阶段分组的图片输出(每阶段包含阶段信息和图片列表)
|
||
/// </summary>
|
||
public class SkinEvolutionStageOutput
|
||
{
|
||
public long EvolutionId { get; set; }
|
||
public string StageName { get; set; } = string.Empty;
|
||
public int StageLevel { get; set; }
|
||
public int RequiredGrowth { get; set; }
|
||
public long? PreviousEvolutionId { get; set; }
|
||
public List<PetSkinImageOutput> Images { get; set; } = new();
|
||
}
|