66 lines
3.2 KiB
C#
66 lines
3.2 KiB
C#
|
|
using CloudBuilder.Core.DependencyInjection.Request;
|
|
using CloudBuilder.Core.Request;
|
|
using CloudBuilder.Core.Service;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using CloudBuilder.Master.Service;
|
|
using CloudBuilder.Core.DatabaseAccessor.Entity;
|
|
using Microsoft.AspNetCore.Http;
|
|
using CloudBuilder.Master.Entity;
|
|
using System;
|
|
using CloudBuilder.Master.Data;
|
|
using CloudBuilder.Master.SearchCriteria;
|
|
|
|
namespace CloudBuilder.Request.Master
|
|
{
|
|
|
|
public class FamilyTreeRequest : IRequest
|
|
{
|
|
|
|
private readonly IServiceRequest serviceRequest;
|
|
public FamilyTreeRequest(IServiceRequest serviceRequest)
|
|
{
|
|
this.serviceRequest = serviceRequest;
|
|
}
|
|
|
|
public FamilyTreeData FindAllByTreeId(string treeId)
|
|
{
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FamilyTreeData>("/FamilyTree/FindAllByTreeId?treeId=" + treeId.ToString())).GetAwaiter().GetResult(); }
|
|
|
|
public FamilyTreeData FindByKey(string key)
|
|
{
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FamilyTreeData>("/FamilyTree/FindByKey?key=" + key.ToString())).GetAwaiter().GetResult(); }
|
|
|
|
|
|
public class FindByCurrentPersonCompositionData2 {
|
|
public string key { get; set; }
|
|
public string personId { get; set; }
|
|
|
|
}
|
|
public FamilyTreeData FindByCurrentPerson(string key, string personId)
|
|
{
|
|
var compositionData = new FindByCurrentPersonCompositionData2{
|
|
key = key,
|
|
personId = personId };
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FindByCurrentPersonCompositionData2, FamilyTreeData>("/FamilyTree/FindByCurrentPerson", compositionData)).GetAwaiter().GetResult(); }
|
|
|
|
public FamilyTreeResultData FindBySearchCriteria(FamilyTreeSearchCriteria criteria)
|
|
{
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FamilyTreeSearchCriteria,FamilyTreeResultData>("/FamilyTree/FindBySearchCriteria" , criteria)).GetAwaiter().GetResult(); }
|
|
|
|
public FamilyTreeData Insert(FamilyTreeData data)
|
|
{
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FamilyTreeData,FamilyTreeData>("/FamilyTree/Insert" , data)).GetAwaiter().GetResult(); }
|
|
|
|
public FamilyTreeData Update(FamilyTreeData data)
|
|
{
|
|
return Task.Run(() => serviceRequest.PostAsJsonAsync<FamilyTreeData,FamilyTreeData>("/FamilyTree/Update" , data)).GetAwaiter().GetResult(); }
|
|
|
|
public void Delete(string key)
|
|
{
|
|
Task.Run(() => serviceRequest.PostAsync("/FamilyTree/Delete?key=" + key.ToString())).GetAwaiter().GetResult(); }
|
|
|
|
public void Deletes(string[] keys)
|
|
{
|
|
Task.Run(() => serviceRequest.PostAsJsonAsync<string[],dynamic>("/FamilyTree/Deletes" , keys)).GetAwaiter().GetResult(); }
|
|
|
|
|
|
}
|
|
} |