using SqlSugar; using Volo.Abp.Domain.Entities.Auditing; using Yi.Framework.AiHub.Domain.Shared.Enums; namespace Yi.Framework.AiHub.Domain.Entities.Chat; [SugarTable("Ai_ImageStoreTask")] public class ImageStoreTaskAggregateRoot : FullAuditedAggregateRoot { /// /// 提示词 /// [SugarColumn(ColumnDataType = StaticConfig.CodeFirst_BigString)] public string Prompt { get; set; } /// /// 参考图PrefixBase64(带前缀,如 data:image/png;base64,xxx) /// [SugarColumn(IsJson = true, ColumnDataType = StaticConfig.CodeFirst_BigString)] public List ReferenceImagesPrefixBase64 { get; set; } /// /// 参考图url /// [SugarColumn(IsJson = true)] public List ReferenceImagesUrl { get; set; } /// /// 图片绝对路径 /// public string? StoreUrl { get; set; } /// /// 任务状态 /// public TaskStatusEnum TaskStatus { get; set; } = TaskStatusEnum.Processing; /// /// 用户id /// public Guid UserId { get; set; } /// /// 用户名称 /// public string? UserName { get; set; } /// /// 模型id /// public string ModelId { get; set; } /// /// 错误信息 /// [SugarColumn(ColumnDataType = StaticConfig.CodeFirst_BigString)] public string? ErrorInfo { get; set; } /// /// 发布状态 /// public PublishStatusEnum PublishStatus { get; set; } = PublishStatusEnum.Unpublished; /// /// 分类标签 /// [SugarColumn(IsJson = true)] public List Categories { get; set; } = new(); /// /// 是否匿名 /// public bool IsAnonymous { get; set; } = false; /// /// 密钥id /// public Guid? TokenId { get; set; } /// /// 设置成功 /// /// public void SetSuccess(string storeUrl) { TaskStatus = TaskStatusEnum.Success; StoreUrl = storeUrl; } /// /// 设置发布 /// /// /// public void SetPublish(bool isAnonymous,List categories) { this.PublishStatus = PublishStatusEnum.Published; this.IsAnonymous = isAnonymous; this.Categories = categories; } }