spiral abyss last data

This commit is contained in:
Lightczx
2024-06-17 17:07:03 +08:00
parent 75ea2b807f
commit d0b07f1308
3 changed files with 48 additions and 83 deletions

View File

@@ -13,7 +13,6 @@ internal sealed class PackageConvertStatus
public PackageConvertStatus(string name)
{
Name = name;
Description = name;
}
public PackageConvertStatus(string name, long bytesRead, long totalBytes)

View File

@@ -70,16 +70,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取总览数据
/// GET /Statistics/Overview
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>总览信息</returns>
public async ValueTask<HutaoResponse<Overview>> GetOverviewAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<Overview>> GetOverviewAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsOverviewLast
: HutaoEndpoints.StatisticsOverview;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsOverview)
.SetRequestUri(url)
.Get();
HutaoResponse<Overview>? resp = await builder
@@ -89,16 +87,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取角色出场率
/// GET /Statistics/Avatar/AttendanceRate
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>角色出场率</returns>
public async ValueTask<HutaoResponse<List<AvatarAppearanceRank>>> GetAvatarAttendanceRatesAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<AvatarAppearanceRank>>> GetAvatarAttendanceRatesAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsAvatarAttendanceRateLast
: HutaoEndpoints.StatisticsAvatarAttendanceRate;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsAvatarAttendanceRate)
.SetRequestUri(url)
.Get();
HutaoResponse<List<AvatarAppearanceRank>>? resp = await builder
@@ -108,16 +104,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取角色使用率
/// GET /Statistics/Avatar/UtilizationRate
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>角色出场率</returns>
public async ValueTask<HutaoResponse<List<AvatarUsageRank>>> GetAvatarUtilizationRatesAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<AvatarUsageRank>>> GetAvatarUtilizationRatesAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsAvatarUtilizationRateLast
: HutaoEndpoints.StatisticsAvatarUtilizationRate;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsAvatarUtilizationRate)
.SetRequestUri(url)
.Get();
HutaoResponse<List<AvatarUsageRank>>? resp = await builder
@@ -127,16 +121,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取角色/武器/圣遗物搭配
/// GET /Statistics/Avatar/AvatarCollocation
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>角色/武器/圣遗物搭配</returns>
public async ValueTask<HutaoResponse<List<AvatarCollocation>>> GetAvatarCollocationsAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<AvatarCollocation>>> GetAvatarCollocationsAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsAvatarAvatarCollocationLast
: HutaoEndpoints.StatisticsAvatarAvatarCollocation;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsAvatarAvatarCollocation)
.SetRequestUri(url)
.Get();
HutaoResponse<List<AvatarCollocation>>? resp = await builder
@@ -146,16 +138,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取武器搭配
/// GET /Statistics/Avatar/AvatarCollocation
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>角色/武器/圣遗物搭配</returns>
public async ValueTask<HutaoResponse<List<WeaponCollocation>>> GetWeaponCollocationsAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<WeaponCollocation>>> GetWeaponCollocationsAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsWeaponWeaponCollocationLast
: HutaoEndpoints.StatisticsWeaponWeaponCollocation;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsWeaponWeaponCollocation)
.SetRequestUri(url)
.Get();
HutaoResponse<List<WeaponCollocation>>? resp = await builder
@@ -165,14 +155,12 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取角色命座信息
/// GET /Statistics/Avatar/HoldingRate
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>角色图片列表</returns>
public async ValueTask<HutaoResponse<List<AvatarConstellationInfo>>> GetAvatarHoldingRatesAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<AvatarConstellationInfo>>> GetAvatarHoldingRatesAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsAvatarHoldingRateLast
: HutaoEndpoints.StatisticsAvatarHoldingRate;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsAvatarHoldingRate)
.Get();
@@ -184,16 +172,14 @@ internal sealed partial class HutaoSpiralAbyssClient
return Web.Response.Response.DefaultIfNull(resp);
}
/// <summary>
/// 异步获取队伍出场次数
/// GET /Team/Combination
/// </summary>
/// <param name="token">取消令牌</param>
/// <returns>队伍出场列表</returns>
public async ValueTask<HutaoResponse<List<TeamAppearance>>> GetTeamCombinationsAsync(CancellationToken token = default)
public async ValueTask<HutaoResponse<List<TeamAppearance>>> GetTeamCombinationsAsync(bool last = false, CancellationToken token = default)
{
string url = last
? HutaoEndpoints.StatisticsTeamCombinationLast
: HutaoEndpoints.StatisticsTeamCombination;
HttpRequestMessageBuilder builder = httpRequestMessageBuilderFactory.Create()
.SetRequestUri(HutaoEndpoints.StatisticsTeamCombination)
.SetRequestUri(url)
.Get();
HutaoResponse<List<TeamAppearance>>? resp = await builder

View File

@@ -162,40 +162,20 @@ internal static class HutaoEndpoints
/// </summary>
public const string RecordUpload = $"{HomaSnapGenshin}/Record/Upload";
/// <summary>
/// 统计信息
/// </summary>
public const string StatisticsOverview = $"{HomaSnapGenshin}/Statistics/Overview";
/// <summary>
/// 出场率
/// </summary>
public const string StatisticsOverviewLast = $"{StatisticsOverview}?Last=true";
public const string StatisticsAvatarAttendanceRate = $"{HomaSnapGenshin}/Statistics/Avatar/AttendanceRate";
/// <summary>
/// 使用率
/// </summary>
public const string StatisticsAvatarAttendanceRateLast = $"{StatisticsAvatarAttendanceRate}?Last=true";
public const string StatisticsAvatarUtilizationRate = $"{HomaSnapGenshin}/Statistics/Avatar/UtilizationRate";
/// <summary>
/// 角色搭配
/// </summary>
public const string StatisticsAvatarUtilizationRateLast = $"{StatisticsAvatarUtilizationRate}?Last=true";
public const string StatisticsAvatarAvatarCollocation = $"{HomaSnapGenshin}/Statistics/Avatar/AvatarCollocation";
/// <summary>
/// 角色持有率
/// </summary>
public const string StatisticsAvatarAvatarCollocationLast = $"{StatisticsAvatarAvatarCollocation}?Last=true";
public const string StatisticsAvatarHoldingRate = $"{HomaSnapGenshin}/Statistics/Avatar/HoldingRate";
/// <summary>
/// 武器搭配
/// </summary>
public const string StatisticsAvatarHoldingRateLast = $"{StatisticsAvatarHoldingRate}?Last=true";
public const string StatisticsWeaponWeaponCollocation = $"{HomaSnapGenshin}/Statistics/Weapon/WeaponCollocation";
/// <summary>
/// 持有率
/// </summary>
public const string StatisticsWeaponWeaponCollocationLast = $"{StatisticsWeaponWeaponCollocation}?Last=true";
public const string StatisticsTeamCombination = $"{HomaSnapGenshin}/Statistics/Team/Combination";
public const string StatisticsTeamCombinationLast = $"{StatisticsTeamCombination}?Last=true";
#endregion
public static string Website(string path)