feat: add medal module and optimize community entities
1. 新增勋章管理全流程功能,包含实体、DTO、服务层、控制器 2. 重构DotFile实体继承基础实体类 3. 删除UserJournal的无用JournalInstanceId字段 4. 重构CommunityMessage实体字段并新增点赞数、精选标记字段 5. 新增社区点赞、评论、模板言论实体并替换旧有实体文件 6. 更新gitignore忽略PROJECT_STRUCTURE.md文件
This commit is contained in:
247
QYZH.InteractiveMagazine.Models/Dto/Medal/MedalDto.cs
Normal file
247
QYZH.InteractiveMagazine.Models/Dto/Medal/MedalDto.cs
Normal file
@ -0,0 +1,247 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Dto;
|
||||
|
||||
/// <summary>
|
||||
/// 勋章创建/更新输入
|
||||
/// </summary>
|
||||
public class MedalInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 勋章名称
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获得条件描述
|
||||
/// </summary>
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片地址
|
||||
/// </summary>
|
||||
public string? ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 条件类型: EvolutionCount, FeedingCount等
|
||||
/// </summary>
|
||||
public string ConditionType { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 条件阈值
|
||||
/// </summary>
|
||||
public int ConditionValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int SortOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章的类型: Pet, Community
|
||||
/// </summary>
|
||||
public string Type { get; set; } = "Pet";
|
||||
|
||||
/// <summary>
|
||||
/// 书id
|
||||
/// </summary>
|
||||
public long JournalId { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 勋章输出
|
||||
/// </summary>
|
||||
public class MedalOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键ID
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章名称
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获得条件描述
|
||||
/// </summary>
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片地址
|
||||
/// </summary>
|
||||
public string? ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 条件类型
|
||||
/// </summary>
|
||||
public string ConditionType { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 条件阈值
|
||||
/// </summary>
|
||||
public int ConditionValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int SortOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章的类型
|
||||
/// </summary>
|
||||
public string Type { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 书id
|
||||
/// </summary>
|
||||
public long JournalId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建人
|
||||
/// </summary>
|
||||
public string? CreatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreatedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新人
|
||||
/// </summary>
|
||||
public string? UpdatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime? UpdatedAt { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 勋章分页查询输入
|
||||
/// </summary>
|
||||
public class MedalQueryInput : PageQueryModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 勋章名称(模糊查询)
|
||||
/// </summary>
|
||||
public string? Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章的类型: Pet, Community
|
||||
/// </summary>
|
||||
public string? Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 条件类型
|
||||
/// </summary>
|
||||
public string? ConditionType { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 微信端勋章列表输出(含拥有状态)
|
||||
/// </summary>
|
||||
public class WxMedalListOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 勋章ID
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章名称
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获得条件描述
|
||||
/// </summary>
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片地址
|
||||
/// </summary>
|
||||
public string? ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 条件类型
|
||||
/// </summary>
|
||||
public string ConditionType { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 条件阈值
|
||||
/// </summary>
|
||||
public int ConditionValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int SortOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章的类型
|
||||
/// </summary>
|
||||
public string Type { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否已拥有
|
||||
/// </summary>
|
||||
public bool IsOwned { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获得时间(未拥有则为null)
|
||||
/// </summary>
|
||||
public DateTime? AwardedAt { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 微信端用户已拥有勋章输出
|
||||
/// </summary>
|
||||
public class WxUserMedalOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 勋章ID
|
||||
/// </summary>
|
||||
public long MedalId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章名称
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获得条件描述
|
||||
/// </summary>
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片地址
|
||||
/// </summary>
|
||||
public string? ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 勋章的类型
|
||||
/// </summary>
|
||||
public string Type { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获得时间
|
||||
/// </summary>
|
||||
public DateTime? AwardedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态: Awarded, Revoked
|
||||
/// </summary>
|
||||
public string Status { get; set; } = string.Empty;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 微信端激活勋章输入
|
||||
/// </summary>
|
||||
public class WxMedalActivateInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 勋章ID
|
||||
/// </summary>
|
||||
public long MedalId { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user