add dailynote refresh time hint

This commit is contained in:
DismissedLight
2023-08-24 21:22:52 +08:00
parent 5a952d8b41
commit b3de8b11a1
6 changed files with 69 additions and 13 deletions

View File

@@ -57,6 +57,9 @@ internal sealed class DailyNoteEntry : ObservableObject, IMappingFrom<DailyNoteE
/// </summary>
public DateTimeOffset RefreshTime { get; set; }
[NotMapped]
public string RefreshTimeFormatted { get => SH.ModelEntityDailyNoteRefreshTimeFormat.Format(RefreshTime); }
/// <summary>
/// 树脂提醒阈值
/// </summary>

View File

@@ -420,6 +420,15 @@ namespace Snap.Hutao.Resource.Localization {
}
}
/// <summary>
/// 查找类似 刷新于 {0:yyyy/MM/dd HH:mm:ss} 的本地化字符串。
/// </summary>
internal static string ModelEntityDailyNoteRefreshTimeFormat {
get {
return ResourceManager.GetString("ModelEntityDailyNoteRefreshTimeFormat", resourceCulture);
}
}
/// <summary>
/// 查找类似 第 {0} 期 的本地化字符串。
/// </summary>
@@ -5640,6 +5649,15 @@ namespace Snap.Hutao.Resource.Localization {
}
}
/// <summary>
/// 查找类似 尚未解锁洞天 的本地化字符串。
/// </summary>
internal static string WebDailyNoteHomeLocked {
get {
return ResourceManager.GetString("WebDailyNoteHomeLocked", resourceCulture);
}
}
/// <summary>
/// 查找类似 今天 的本地化字符串。
/// </summary>

View File

@@ -237,6 +237,9 @@
<data name="ModelBindingUserInitializationFailed" xml:space="preserve">
<value>网络异常</value>
</data>
<data name="ModelEntityDailyNoteRefreshTimeFormat" xml:space="preserve">
<value>刷新于 {0:yyyy/MM/dd HH:mm:ss}</value>
</data>
<data name="ModelEntitySpiralAbyssScheduleFormat" xml:space="preserve">
<value>第 {0} 期</value>
</data>
@@ -2033,6 +2036,9 @@
<data name="WebDailyNoteHomeCoinRecoveryFormat" xml:space="preserve">
<value>预计 {0} {1:HH:mm} 达到存储上限</value>
</data>
<data name="WebDailyNoteHomeLocked" xml:space="preserve">
<value>尚未解锁洞天</value>
</data>
<data name="WebDailyNoteRecoveryTimeDay0" xml:space="preserve">
<value>今天</value>
</data>

View File

@@ -30,22 +30,38 @@
Visibility="{Binding IsInitialized, Converter={StaticResource BoolToVisibilityConverter}}">
<FlipView.ItemTemplate>
<DataTemplate>
<Grid Margin="12" ColumnSpacing="6">
<Grid
Margin="12"
ColumnSpacing="6"
RowSpacing="6">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0" RowSpacing="6">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock
Grid.Row="0"
HorizontalAlignment="Center"
Text="{Binding Uid}"/>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock
Grid.Row="0"
HorizontalAlignment="Center"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{Binding Uid}"/>
<TextBlock
Grid.Row="0"
Grid.Column="1"
Grid.ColumnSpan="2"
HorizontalAlignment="Center"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{Binding RefreshTimeFormatted}"/>
<Grid
Grid.Row="1"
Grid.Column="0"
RowSpacing="6">
<Grid Grid.Row="1" Style="{StaticResource BorderGridStyle}">
<StackPanel VerticalAlignment="Center">
<shci:CachedImage shvh:FrameworkElementHelper.SquareLength="64" Source="{StaticResource UI_ItemIcon_210}"/>
@@ -65,7 +81,10 @@
</Grid>
</Grid>
<Grid Grid.Column="1" RowSpacing="6">
<Grid
Grid.Row="1"
Grid.Column="1"
RowSpacing="6">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
@@ -108,7 +127,10 @@
</Grid>
</Grid>
<Grid Grid.Column="2" RowSpacing="6">
<Grid
Grid.Row="1"
Grid.Column="2"
RowSpacing="6">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>

View File

@@ -168,6 +168,7 @@
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Grid.Resources>
@@ -453,6 +454,12 @@
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<TextBlock
Grid.Row="4"
Margin="0,6,0,0"
Opacity="0.7"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{Binding RefreshTimeFormatted}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>

View File

@@ -111,7 +111,7 @@ internal sealed class DailyNote : DailyNoteCommon
[JsonIgnore]
public string HomeCoinFormatted
{
get => $"{CurrentHomeCoin}/{MaxHomeCoin}";
get => MaxHomeCoin == 0 ? SH.WebDailyNoteHomeLocked : $"{CurrentHomeCoin}/{MaxHomeCoin}";
}
/// <summary>