53 lines
1.6 KiB
C#
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();
|
|
}
|
|
}
|
|
} |