Files
juipnet/Infrastructure/ServiceClient/BaseInfoClient/Response/Project/QueryOneProjectByCodeResponse.cs
“wanyongkang” ed3b2c653e 接口文件
2024-04-10 13:55:27 +08:00

53 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using BaseInfoClient.Response.Project;
using Etor.Infrastructure.Common;
using Etor.Infrastructure.Data;
using Etor.Infrastructure.Serializer;
using Etor.Infrastructure.WebApi;
using Newtonsoft.Json;
using ServiceClient;
namespace BaseInfoClient.Response.Project
{
public class QueryOneProjectByCodeResponse
{
[JsonProperty("projectData")] public ProjectItem ProjectItem { get; set; }
}
}
namespace BaseInfoClient.Extension
{
public static class QueryProjectByCodeResponseExtension
{
public static async Task<ProjectItem> QueryOneProjectByCodeAsync(this BaseInfoHttpClient client
, int ownerId, int projectCode, bool throwException = false)
{
try
{
var response = await client.CreateHttpClient().GetAsync(
$"{client.BaseUrl}/api/baseinfo/v1/BaseData/GetOneBaseProject?OwnerID={ownerId}&Data.projectCode={projectCode}");
var content = await response.Content.ReadAsStringAsync();
return content.FromJsonTo<ApiResult<QueryOneProjectByCodeResponse>>().Data.ProjectItem;
}
catch (Exception e)
{
LogHelper.Error("根据ProjectCode获取小区", e);
if (throwException)
{
BusinessException.Throw("获取小区信息失败");
}
else
{
return new ProjectItem();
}
}
return new ProjectItem();
}
}
}