From f5fa8faf2374ea451104b4ace78cee923e3bd9e8 Mon Sep 17 00:00:00 2001 From: Anran Zhang Date: Wed, 2 Jun 2021 09:34:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9B=E5=BB=BA=E5=AD=90=E5=88=86=E5=8C=BA?= =?UTF-8?q?=E7=9A=84=E7=B1=BB=E5=9E=8B=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.ruleset | 3 +- src/App/App.csproj | 7 ++ src/App/Pages/Overlay/SubPartitionPage.xaml | 11 ++ .../Pages/Overlay/SubPartitionPage.xaml.cs | 18 +++ src/Models/Models.BiliBili/Banner.cs | 67 +++++++++++ .../{ => Partition}/Partition.cs | 0 .../Models.BiliBili/Partition/SubPartition.cs | 51 ++++++++ src/Models/Models.BiliBili/Tag.cs | 49 ++++++++ src/Models/Models.BiliBili/Video.cs | 109 ++++++++++++++++++ .../SubPartitionViewModel.Properties.cs | 11 ++ .../SubPartitionViewModel.cs | 11 ++ .../ViewModels.Uwp/ViewModels.Uwp.csproj | 2 + 12 files changed, 338 insertions(+), 1 deletion(-) create mode 100644 src/App/Pages/Overlay/SubPartitionPage.xaml create mode 100644 src/App/Pages/Overlay/SubPartitionPage.xaml.cs create mode 100644 src/Models/Models.BiliBili/Banner.cs rename src/Models/Models.BiliBili/{ => Partition}/Partition.cs (100%) create mode 100644 src/Models/Models.BiliBili/Partition/SubPartition.cs create mode 100644 src/Models/Models.BiliBili/Tag.cs create mode 100644 src/Models/Models.BiliBili/Video.cs create mode 100644 src/ViewModels/ViewModels.Uwp/SubPartitionViewModel/SubPartitionViewModel.Properties.cs create mode 100644 src/ViewModels/ViewModels.Uwp/SubPartitionViewModel/SubPartitionViewModel.cs diff --git a/App.ruleset b/App.ruleset index 498b5ce..e4613ab 100644 --- a/App.ruleset +++ b/App.ruleset @@ -1,5 +1,5 @@  - + @@ -77,6 +77,7 @@ + diff --git a/src/App/App.csproj b/src/App/App.csproj index a007aff..417b6c2 100644 --- a/src/App/App.csproj +++ b/src/App/App.csproj @@ -55,6 +55,9 @@ MyFavoritePage.xaml + + SubPartitionPage.xaml + PartitionPage.xaml @@ -189,6 +192,10 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + Designer MSBuild:Compile diff --git a/src/App/Pages/Overlay/SubPartitionPage.xaml b/src/App/Pages/Overlay/SubPartitionPage.xaml new file mode 100644 index 0000000..4467f9b --- /dev/null +++ b/src/App/Pages/Overlay/SubPartitionPage.xaml @@ -0,0 +1,11 @@ + + + + diff --git a/src/App/Pages/Overlay/SubPartitionPage.xaml.cs b/src/App/Pages/Overlay/SubPartitionPage.xaml.cs new file mode 100644 index 0000000..ba65595 --- /dev/null +++ b/src/App/Pages/Overlay/SubPartitionPage.xaml.cs @@ -0,0 +1,18 @@ +using Windows.UI.Xaml.Controls; + +namespace Richasy.Bili.App.Pages.Overlay +{ + /// + /// 子分区页面. + /// + public sealed partial class SubPartitionPage : Page + { + /// + /// Initializes a new instance of the class. + /// + public SubPartitionPage() + { + this.InitializeComponent(); + } + } +} diff --git a/src/Models/Models.BiliBili/Banner.cs b/src/Models/Models.BiliBili/Banner.cs new file mode 100644 index 0000000..d5bbf1c --- /dev/null +++ b/src/Models/Models.BiliBili/Banner.cs @@ -0,0 +1,67 @@ +// Copyright (c) Richasy. All rights reserved. + +using Newtonsoft.Json; + +namespace Richasy.Bili.Models.BiliBili +{ + /// + /// 横幅定义. + /// + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + public class Banner + { + /// + /// 横幅Id. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "id", Required = Required.Default)] + public int Id { get; set; } + + /// + /// 横幅标题. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "title", Required = Required.Default)] + public string Title { get; set; } + + /// + /// 横幅图片地址. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "image", Required = Required.Default)] + public string Image { get; set; } + + /// + /// 哈希特征值. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "hash", Required = Required.Default)] + public string Hash { get; set; } + + /// + /// 导航地址. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "uri", Required = Required.Default)] + public string NavigateUri { get; set; } + + /// + /// 对应资源的Id值. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "resource_id", Required = Required.Default)] + public int ResourceId { get; set; } + + /// + /// 请求Id. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "request_id", Required = Required.Default)] + public string RequestId { get; set; } + + /// + /// 是否为广告. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "is_ad", Required = Required.Default)] + public bool IsAD { get; set; } + + /// + /// 在集合中的索引值. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "index", Required = Required.Default)] + public int Index { get; set; } + } +} diff --git a/src/Models/Models.BiliBili/Partition.cs b/src/Models/Models.BiliBili/Partition/Partition.cs similarity index 100% rename from src/Models/Models.BiliBili/Partition.cs rename to src/Models/Models.BiliBili/Partition/Partition.cs diff --git a/src/Models/Models.BiliBili/Partition/SubPartition.cs b/src/Models/Models.BiliBili/Partition/SubPartition.cs new file mode 100644 index 0000000..f6d1b92 --- /dev/null +++ b/src/Models/Models.BiliBili/Partition/SubPartition.cs @@ -0,0 +1,51 @@ +// Copyright (c) Richasy. All rights reserved. + +using System.Collections.Generic; +using Newtonsoft.Json; + +namespace Richasy.Bili.Models.BiliBili +{ + /// + /// 子分区类型定义. + /// + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + public class SubPartition + { + /// + /// 推荐视频列表. + /// + [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "recommend", Required = Required.Default)] + public List