Files
juipnet/Infrastructure/ServiceClient/BaseInfoClient/Response/Room/QueryHouseholderRoomsByUserIdResponse.cs

57 lines
1.8 KiB
C#
Raw Normal View History

2020-10-07 20:25:03 +08:00
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Etor.Infrastructure.Common;
using Etor.Infrastructure.Data;
using Etor.Infrastructure.Serializer;
using Etor.Infrastructure.WebApi;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using ServiceClient;
using ServiceClient.Response.Room;
namespace ServiceClient.Response.Room
{
public class QueryHouseholderRoomsByUserIdResponse
{
[JsonProperty("userToRoomData")]
public List<UserRoomItem> UserRoomItems { get; set; } = new List<UserRoomItem>();
}
}
namespace BaseInfoClient.Extension
{
public static class QueryHouseholderRoomsByUserIdExtension
{
public static async Task<List<UserRoomItem>> QueryHouseholderRoomsByUserId(this BaseInfoHttpClient client
, int ownerId, int userId, bool throwException = false)
{
try
{
var response = await client.CreateHttpClient().GetAsync(
$"{client.BaseUrl}/api/baseinfo/v1/BaseData/GetOneBasePerson?Data.userToroomUserId={userId}&OwnerID={ownerId}");
var content = await response.Content.ReadAsStringAsync();
return content.FromJsonTo<ApiResult<QueryHouseholderRoomsByUserIdResponse>>().Data.UserRoomItems;
}
catch (Exception e)
{
LogHelper.Error("根据UserId获取用户房间信息", e);
if (throwException)
{
BusinessException.Throw("获取用户房间信息失败");
}
else
{
return new List<UserRoomItem>();
}
}
return new List<UserRoomItem>();
}
}
}