From c3106f5ff9993fa4043b3dccd2b2dffd0f6b3d60 Mon Sep 17 00:00:00 2001 From: CaCTuCaTu4ECKuu Date: Wed, 12 May 2021 22:37:18 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20?= =?UTF-8?q?=D1=81=20=D0=BE=D1=82=D1=81=D1=83=D1=82=D1=81=D1=82=D0=B2=D1=83?= =?UTF-8?q?=D1=8E=D1=89=D0=B8=D0=BC=20ManagerRole,=20=D0=BF=D0=BE=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=20=D0=BF=D0=B0=D1=80=D1=81?= =?UTF-8?q?=D0=B8=D0=BD=D0=B3=20bdate=5Fvisibility?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Если запросить пользователей из группы (менеджеров) и не указать дату рождения как фильтр то возвращало результат до того, как заполняло роль пользователя Поправлено выставление свойства "bdate_visibility" --- VkNet/Enums/BirthdayVisibility.cs | 10 +++++----- VkNet/Model/User.cs | 26 +++++++++++++++----------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/VkNet/Enums/BirthdayVisibility.cs b/VkNet/Enums/BirthdayVisibility.cs index c36ba9502..417568e86 100644 --- a/VkNet/Enums/BirthdayVisibility.cs +++ b/VkNet/Enums/BirthdayVisibility.cs @@ -1,4 +1,4 @@ -using VkNet.Utils; +using VkNet.Utils; namespace VkNet.Enums { @@ -11,14 +11,14 @@ public enum BirthdayVisibility /// Не показывать дату рождения. /// [DefaultValue] - Invisible = 0 + Invisible = 0, - , /// + /// /// Показывать дату рождения. /// - Full = 1 + Full = 1, - , /// + /// /// Показывать только месяц и день. /// OnlyDayAndMonth = 2 diff --git a/VkNet/Model/User.cs b/VkNet/Model/User.cs index 04db1e3f6..de610089e 100644 --- a/VkNet/Model/User.cs +++ b/VkNet/Model/User.cs @@ -145,18 +145,8 @@ public static User FromJson(VkResponse response) } } - if (user.BirthDate == null || response["bdate_visibility"] != null) + switch (response["role"]?.ToString()) { - return user; - } - - var birthdayParts = user.BirthDate.Split('.'); - - user.BirthdayVisibility = birthdayParts.Length > 2 - ? Enums.BirthdayVisibility.Full - : Enums.BirthdayVisibility.OnlyDayAndMonth; - - switch (response["role"]?.ToString()) { case "creator": user.Role = ManagerRole.Creator; break; @@ -174,6 +164,20 @@ public static User FromJson(VkResponse response) break; } + if (response["bdate_visibility"] == null) + { + if (!string.IsNullOrEmpty(user.BirthDate)) + { + var birthdayParts = user.BirthDate.Split('.'); + + user.BirthdayVisibility = birthdayParts.Length > 2 + ? Enums.BirthdayVisibility.Full + : Enums.BirthdayVisibility.OnlyDayAndMonth; + } + } + else + user.BirthdayVisibility = response["bdate_visibility"]; + return user; }