diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Icon/UI_Icon_Gift.png b/src/Snap.Hutao/Snap.Hutao/Resource/Icon/UI_Icon_Gift.png new file mode 100644 index 00000000..02db51fb Binary files /dev/null and b/src/Snap.Hutao/Snap.Hutao/Resource/Icon/UI_Icon_Gift.png differ diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs index 0a6b6ab1..44d95d51 100644 --- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs +++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.Designer.cs @@ -4560,6 +4560,15 @@ namespace Snap.Hutao.Resource.Localization { } } + /// + /// 查找类似 历练点获取详情 的本地化字符串。 + /// + internal static string ViewPageDailyNoteAttendanceStatusInfo { + get { + return ResourceManager.GetString("ViewPageDailyNoteAttendanceStatusInfo", resourceCulture); + } + } + /// /// 查找类似 在实时便笺刷新后推送到指定的 Webhook 的本地化字符串。 /// @@ -7116,6 +7125,60 @@ namespace Snap.Hutao.Resource.Localization { } } + /// + /// 查找类似 已完成 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusFinishedNonReward { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusFinishedNonReward", resourceCulture); + } + } + + /// + /// 查找类似 禁止领取 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusForbid { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusForbid", resourceCulture); + } + } + + /// + /// 查找类似 无效 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusInvalid { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusInvalid", resourceCulture); + } + } + + /// + /// 查找类似 已领取 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusTakenAward { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusTakenAward", resourceCulture); + } + } + + /// + /// 查找类似 尚未完成 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusUnfinished { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusUnfinished", resourceCulture); + } + } + + /// + /// 查找类似 等待领取 的本地化字符串。 + /// + internal static string WebDailyNoteAttendanceRewardStatusWaitTaken { + get { + return ResourceManager.GetString("WebDailyNoteAttendanceRewardStatusWaitTaken", resourceCulture); + } + } + /// /// 查找类似 {0} 时 的本地化字符串。 /// diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx index a01f84c0..66afb624 100644 --- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx +++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx @@ -1673,6 +1673,9 @@ 添加 + + 历练点获取详情 + 在实时便笺刷新后推送到指定的 Webhook @@ -2525,6 +2528,24 @@ 已复制到剪贴板 + + 已完成 + + + 禁止领取 + + + 无效 + + + 已领取 + + + 尚未完成 + + + 等待领取 + {0} 时 diff --git a/src/Snap.Hutao/Snap.Hutao/Snap.Hutao.csproj b/src/Snap.Hutao/Snap.Hutao/Snap.Hutao.csproj index 8fc8ed96..77fc89c4 100644 --- a/src/Snap.Hutao/Snap.Hutao/Snap.Hutao.csproj +++ b/src/Snap.Hutao/Snap.Hutao/Snap.Hutao.csproj @@ -100,6 +100,7 @@ + @@ -227,6 +228,7 @@ + diff --git a/src/Snap.Hutao/Snap.Hutao/View/Page/DailyNotePage.xaml b/src/Snap.Hutao/Snap.Hutao/View/Page/DailyNotePage.xaml index b9da657b..9ccec67a 100644 --- a/src/Snap.Hutao/Snap.Hutao/View/Page/DailyNotePage.xaml +++ b/src/Snap.Hutao/Snap.Hutao/View/Page/DailyNotePage.xaml @@ -15,6 +15,7 @@ xmlns:shci="using:Snap.Hutao.Control.Image" xmlns:shcm="using:Snap.Hutao.Control.Markup" xmlns:shvc="using:Snap.Hutao.View.Control" + xmlns:shvcp="using:Snap.Hutao.View.Card.Primitive" xmlns:shvd="using:Snap.Hutao.ViewModel.DailyNote" d:DataContext="{d:DesignInstance shvd:DailyNoteViewModel}" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" @@ -369,9 +370,10 @@ + + diff --git a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceReward.cs b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceReward.cs index 375341a9..76543342 100644 --- a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceReward.cs +++ b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceReward.cs @@ -9,6 +9,8 @@ internal sealed class AttendanceReward [JsonConverter(typeof(JsonStringEnumConverter))] public AttendanceRewardStatus Status { get; set; } + public string StatusFormatted { get => Status.GetLocalizedDescription(); } + [JsonPropertyName("progress")] public int Progress { get; set; } } \ No newline at end of file diff --git a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceRewardStatus.cs b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceRewardStatus.cs index 5dacf78b..0dff1c0c 100644 --- a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceRewardStatus.cs +++ b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/Takumi/GameRecord/DailyNote/AttendanceRewardStatus.cs @@ -3,12 +3,24 @@ namespace Snap.Hutao.Web.Hoyolab.Takumi.GameRecord.DailyNote; +[Localization] internal enum AttendanceRewardStatus { + [LocalizationKey("WebDailyNoteAttendanceRewardStatusInvalid")] AttendanceRewardStatusInvalid, + + [LocalizationKey("WebDailyNoteAttendanceRewardStatusTakenAward")] AttendanceRewardStatusTakenAward, + + [LocalizationKey("WebDailyNoteAttendanceRewardStatusWaitTaken")] AttendanceRewardStatusWaitTaken, + + [LocalizationKey("WebDailyNoteAttendanceRewardStatusUnfinished")] AttendanceRewardStatusUnfinished, + + [LocalizationKey("WebDailyNoteAttendanceRewardStatusFinishedNonReward")] AttendanceRewardStatusFinishedNonReward, + + [LocalizationKey("WebDailyNoteAttendanceRewardStatusForbid")] AttendanceRewardStatusForbid, }