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:
glz
2026-06-05 15:16:49 +08:00
parent 634c4eccfd
commit f9b79417a0
13 changed files with 1118 additions and 92 deletions

View File

@ -8,58 +8,90 @@ namespace QYZH.InteractiveMagazine.Models.Entity
[SugarTable("CommunityMessage")]
public partial class CommunityMessage : SqlSugarBaseEntity
{
public CommunityMessage(){
public CommunityMessage()
{
}
}
/// <summary>
/// Desc:期刊Id
/// Default:
/// Nullable:False
/// </summary>
public long JournalId {get;set;}
public long JournalId { get; set; }
/// <summary>
/// Desc:用户Id
/// Default:
/// Nullable:False
/// </summary>
public long UserId { get; set; }
/// <summary>
/// Desc:消息内容
/// Default:
/// Nullable:False
/// </summary>
public string Content {get;set;}
/// <summary>
/// Desc:配图
/// Default:
/// Nullable:True
/// </summary>
public string ImageUrl {get;set;}
/// <summary>
/// Desc:用户实例期刊Id
/// Default:
/// Nullable:False
/// </summary>
public long UserJournalId { get; set; }
/// <summary>
/// Desc:期刊任务Id
/// Default:
/// Nullable:False
/// </summary>
public long JournalTaskId { get; set; }
/// <summary>
/// Desc:用户期刊任务回答Id
/// Default:
/// Nullable:False
/// </summary>
public long JournalTaskAnswerId { get; set; }
/// <summary>
/// Desc:消息内容
/// Default:
/// Nullable:False
/// </summary>
public string Content { get; set; }
/// <summary>
/// Desc:排序
/// Default:0
/// Nullable:False
/// </summary>
public int SortOrder {get;set;}
/// <summary>
/// Desc:配图
/// Default:
/// Nullable:True
/// </summary>
public string ImageUrl { get; set; }
/// <summary>
/// Desc:是否启用
/// Default:b'1'
/// Nullable:False
/// </summary>
public bool IsActive {get;set;}
/// <summary>
/// Desc:排序
/// Default:0
/// Nullable:False
/// </summary>
public int SortOrder { get; set; }
/// <summary>
/// Desc:消息类型: Article, Quote, Announcement
/// Default:Article
/// Nullable:False
/// </summary>
public string Type {get;set;}
/// <summary>
/// Desc:是否启用
/// Default:b'1'
/// Nullable:False
/// </summary>
public bool IsActive { get; set; }
/// <summary>
/// Desc:状态: Draft, Published
/// Default:Draft
/// Nullable:False
/// </summary>
public string Status {get;set;}
/// <summary>
/// Desc:消息类型: Article, Quote, Announcement
/// Default:Article
/// Nullable:False
/// </summary>
public string Type { get; set; }
/// <summary>
/// Desc:点赞数
/// Default:0
/// Nullable:False
/// </summary>
public int LikeCount { get; set; }
/// <summary>
/// Desc:是否是精选消息
/// Default:0
/// Nullable:False
/// </summary>
public int IsFeatured { get; set; }
}
}

View File

@ -0,0 +1,38 @@
using SqlSugar;
namespace QYZH.InteractiveMagazine.Models.Entity
{
///<summary>
///点赞记录表
///</summary>
[SugarTable("MessageLike")]
public partial class CommunityMessageLike : SqlSugarBaseEntity
{
public CommunityMessageLike()
{
}
/// <summary>
/// Desc:用户Id
/// Default:
/// Nullable:False
/// </summary>
public long UserId { get; set; }
/// <summary>
/// Desc:消息Id
/// Default:
/// Nullable:False
/// </summary>
public long MessageId { get; set; }
/// <summary>
/// Desc:点赞类型
/// Default:Like
/// Nullable:False
/// </summary>
public string Type { get; set; }
}
}

View File

@ -9,7 +9,7 @@ namespace QYZH.InteractiveMagazine.Models.Entity
///
///</summary>
[SugarTable("DotFile")]
public partial class DotFile
public partial class DotFile : SqlSugarBaseEntity
{
public DotFile(){

View File

@ -1,43 +0,0 @@
using SqlSugar;
namespace QYZH.InteractiveMagazine.Models.Entity
{
///<summary>
///点赞记录表
///</summary>
[SugarTable("MessageLike")]
public partial class MessageLike : SqlSugarBaseEntity
{
public MessageLike(){
}
/// <summary>
/// Desc:用户Id
/// Default:
/// Nullable:False
/// </summary>
public long UserId {get;set;}
/// <summary>
/// Desc:消息Id
/// Default:
/// Nullable:False
/// </summary>
public long MessageId {get;set;}
/// <summary>
/// Desc:点赞类型
/// Default:Like
/// Nullable:False
/// </summary>
public string Type {get;set;}
/// <summary>
/// Desc:状态: Liked, Cancelled
/// Default:Liked
/// Nullable:False
/// </summary>
public string Status {get;set;}
}
}

View File

@ -29,14 +29,6 @@ namespace QYZH.InteractiveMagazine.Models.Entity
[SugarColumn(ColumnName = "JournalId")]
public long JournalId { get; set; }
/// <summary>
/// Desc:实例化期刊Id扫码获取的具体期刊实例可为空表示绑定到期刊模板本身
/// Default:
/// Nullable:True
/// </summary>
[SugarColumn(ColumnName = "JournalInstanceId", IsNullable = true)]
public long? JournalInstanceId { get; set; }
/// <summary>
/// Desc:关联类型: Read(已读), Favorite(收藏), Subscribe(订阅)
/// Default:Read