diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx index c45d3eb4..e2c6a2eb 100644 --- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx +++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx @@ -1733,6 +1733,12 @@ 保存游戏路径失败 + + 当前未登录胡桃账号,上传深渊数据无法获赠胡桃云时长 + + + 上传深渊数据 + 用户 [{0}] 添加成功 diff --git a/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportLoginDialog.xaml b/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportLoginDialog.xaml index c1d84662..97d19810 100644 --- a/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportLoginDialog.xaml +++ b/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportLoginDialog.xaml @@ -19,6 +19,8 @@ PlaceholderText="{shcm:ResourceString Name=ViewPageHutaoPassportUserNameHint}" Text="{x:Bind UserName, Mode=TwoWay}"/> diff --git a/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportRegisterDialog.xaml b/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportRegisterDialog.xaml index a72dd019..3f7386d0 100644 --- a/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportRegisterDialog.xaml +++ b/src/Snap.Hutao/Snap.Hutao/View/Dialog/HutaoPassportRegisterDialog.xaml @@ -31,6 +31,8 @@ Content="{shcm:ResourceString Name=ViewPageHutaoPassportVerifyCodeAction}"/> { private readonly ISpiralAbyssRecordService spiralAbyssRecordService; + private readonly IContentDialogFactory contentDialogFactory; private readonly HutaoSpiralAbyssClient spiralAbyssClient; private readonly IInfoBarService infoBarService; private readonly ITaskContext taskContext; private readonly IUserService userService; private readonly HutaoDatabaseViewModel hutaoDatabaseViewModel; + private readonly HutaoUserOptions hutaoUserOptions; private ObservableCollection? spiralAbyssEntries; private SpiralAbyssView? selectedView; @@ -128,6 +133,18 @@ internal sealed partial class SpiralAbyssRecordViewModel : Abstraction.ViewModel { if (UserAndUid.TryFromUser(userService.Current, out UserAndUid? userAndUid)) { + if (!hutaoUserOptions.IsLoggedIn) + { + ContentDialogResult result = await contentDialogFactory + .CreateForConfirmCancelAsync(SH.ViewModelSpiralAbyssUploadRecordHomaNotLoginTitle, SH.ViewModelSpiralAbyssUploadRecordHomaNotLoginContent) + .ConfigureAwait(false); + + if (result is not ContentDialogResult.Primary) + { + return; + } + } + SimpleRecord? record = await spiralAbyssClient.GetPlayerRecordAsync(userAndUid).ConfigureAwait(false); if (record is not null) {