V 1.1.2 新增了生图包 以及各种转发和接口
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
public class AddOrModifyTokenModel
|
||||
{
|
||||
/// <summary>
|
||||
/// token
|
||||
/// </summary>
|
||||
[Required]
|
||||
[StringLength(64)]
|
||||
public required string Token { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 实际使用的Token
|
||||
/// </summary>
|
||||
public required string UseToken { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 日限制
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required int DailyLimit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总限制
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required int TotalLimit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 并发限制
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required int ConcurrencyLimit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用天数
|
||||
/// </summary>
|
||||
[Required]
|
||||
public required int UseDayCount { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
public class MJSubmitImageModel
|
||||
{
|
||||
/// <summary>
|
||||
/// bot 类型,mj(默认)或niji
|
||||
/// MID_JOURNEY | 枚举值: NIJI_JOURNEY
|
||||
/// </summary>
|
||||
public string? BotType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词。
|
||||
/// </summary>
|
||||
public string Prompt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 垫图base64数组。
|
||||
/// </summary>
|
||||
public List<string>? Base64Array { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 账号过滤
|
||||
/// </summary>
|
||||
public AccountFilter? AccountFilter { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 自定义参数。
|
||||
/// </summary>
|
||||
public string? State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 回调地址, 为空时使用全局notifyHook。
|
||||
/// </summary>
|
||||
public string? NotifyHook { get; set; }
|
||||
}
|
||||
|
||||
public class AccountFilter
|
||||
{
|
||||
/// <summary>
|
||||
/// 过滤指定实例的账号
|
||||
/// </summary>
|
||||
public string? InstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 账号模式 RELAX | FAST | TURBO
|
||||
/// </summary>
|
||||
public List<GenerationSpeedMode>? Modes { get; set; } = new List<GenerationSpeedMode>();
|
||||
|
||||
/// <summary>
|
||||
/// 账号是否 remix(Midjourney Remix)
|
||||
/// </summary>
|
||||
public bool? Remix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 账号是否 remix(Nijiourney Remix)
|
||||
/// </summary>
|
||||
public bool? NijiRemix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 账号过滤时,remix 自动提交视为账号的 remix 为 false
|
||||
/// </summary>
|
||||
public bool? RemixAutoConsidered { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 生成速度模式枚举.
|
||||
/// </summary>
|
||||
public enum GenerationSpeedMode
|
||||
{
|
||||
RELAX,
|
||||
FAST,
|
||||
TURBO
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
using LMS.Repository.DB;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
public class MJTaskCallbackModel
|
||||
{
|
||||
public string Id { get; set; }
|
||||
|
||||
public string? Action { get; set; }
|
||||
|
||||
public MJTaskStatus? Status { get; set; }
|
||||
|
||||
public string? Prompt { get; set; }
|
||||
|
||||
public string? PromptEn { get; set; }
|
||||
|
||||
public string? Description { get; set; }
|
||||
|
||||
public long? SubmitTime { get; set; }
|
||||
|
||||
public long? StartTime { get; set; }
|
||||
|
||||
public long? FinishTime { get; set; }
|
||||
|
||||
public string? Progress { get; set; }
|
||||
|
||||
public string? ImageUrl { get; set; }
|
||||
|
||||
public string? FailReason { get; set; }
|
||||
|
||||
public ResponseProperties? Properties { get; set; }
|
||||
}
|
||||
|
||||
public class ResponseProperties
|
||||
{
|
||||
public string? FinalPrompt { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
// Models/SyncResult.cs
|
||||
public class SyncResult
|
||||
{
|
||||
public int TotalTokenCount { get; set; }
|
||||
public int ActiveTokenCount { get; set; }
|
||||
public int RecordsUpdated { get; set; }
|
||||
}
|
||||
|
||||
public class TaskStatistics
|
||||
{
|
||||
public int TotalTasks { get; set; } = 0;
|
||||
public int CompletedTasks { get; set; } = 0;
|
||||
public int FailedTasks { get; set; } = 0;
|
||||
public int InProgressTasks { get; set; } = 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using LMS.Common.Extensions;
|
||||
using LMS.Repository.DB;
|
||||
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
// Models/TokenCacheItem.cs
|
||||
public class TokenCacheItem
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string Token { get; set; }
|
||||
public string UseToken { get; set; } // 实际请求使用的Token
|
||||
public int DailyLimit { get; set; }
|
||||
public int TotalLimit { get; set; }
|
||||
public int ConcurrencyLimit { get; set; } // 新增:并发限制
|
||||
public DateTime CreatedAt { get; set; }
|
||||
public DateTime? ExpiresAt { get; set; }
|
||||
public int DailyUsage { get; set; }
|
||||
public int TotalUsage { get; set; }
|
||||
public DateTime LastActivityTime { get; set; } = BeijingTimeExtension.GetBeijingTime();
|
||||
public string? HistoryUse { get; set; } // 历史使用记录
|
||||
|
||||
public int CurrentlyExecuting { get; set; } = 0;
|
||||
}
|
||||
|
||||
public class TokenAndTaskCollection : TokenCacheItem
|
||||
{
|
||||
public List<MJApiTasks> TaskCollections { get; set; } = [];
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
public class TokenCacheStats
|
||||
{
|
||||
public int TotalTokens { get; set; }
|
||||
public int ActiveTokens { get; set; }
|
||||
public int InactiveTokens { get; set; }
|
||||
public int TotalDailyUsage { get; set; }
|
||||
public int TotalUsage { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
// 查询结果映射类
|
||||
public class TokenQueryResult
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string Token { get; set; }
|
||||
public string UseToken { get; set; } // 实际请求使用的Token
|
||||
public int DailyLimit { get; set; }
|
||||
public int TotalLimit { get; set; }
|
||||
public int ConcurrencyLimit { get; set; }
|
||||
public DateTime CreatedAt { get; set; }
|
||||
public DateTime? ExpiresAt { get; set; }
|
||||
public int DailyUsage { get; set; }
|
||||
public int TotalUsage { get; set; }
|
||||
public DateTime LastActivityTime { get; set; }
|
||||
|
||||
public string? HistoryUse { get; set; } // 历史使用记录
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
namespace LMS.Repository.MJPackage
|
||||
{
|
||||
public class TokenUsageData
|
||||
{
|
||||
public long TokenId { get; set; }
|
||||
public DateTime Date { get; set; }
|
||||
public int DailyUsage { get; set; }
|
||||
public int TotalUsage { get; set; }
|
||||
public DateTime LastActivityTime { get; set; }
|
||||
public string? HistoryUse { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user