From 20b0523a769fadc503b14d8485017ca39a48e16d Mon Sep 17 00:00:00 2001 From: Marta Pederiva <86296201+martapederiva@users.noreply.github.com> Date: Fri, 6 Sep 2024 12:34:33 +0100 Subject: [PATCH] Add ApprovalStatus to Contract and AssetContract --- .../Factories/DomainFactoryTests.cs | 1 + .../Domain/Asset/Contract.cs | 2 ++ .../Domain/Contract/Contract.cs | 2 ++ .../Domain/Enums/ApprovalStatus.cs | 12 ++++++++++++ .../Factories/DomainFactory.cs | 1 + .../Gateways/Models/Assets/QueryableAssetContract.cs | 2 ++ 6 files changed, 20 insertions(+) create mode 100644 Hackney.Shared.HousingSearch/Domain/Enums/ApprovalStatus.cs diff --git a/Hackney.Shared.HousingSearch.Tests/Factories/DomainFactoryTests.cs b/Hackney.Shared.HousingSearch.Tests/Factories/DomainFactoryTests.cs index 10f9e2e..d24dfa7 100644 --- a/Hackney.Shared.HousingSearch.Tests/Factories/DomainFactoryTests.cs +++ b/Hackney.Shared.HousingSearch.Tests/Factories/DomainFactoryTests.cs @@ -60,6 +60,7 @@ public void CanConvertQueryableAssetContractEntityToDomain() domainContract.StartDate.Should().Be(queryableAssetContract.StartDate); domainContract.ApprovalDate.Should().Be(queryableAssetContract.ApprovalDate); domainContract.IsApproved.Should().Be(queryableAssetContract.IsApproved); + domainContract.ApprovalStatus.Should().Be(queryableAssetContract.ApprovalStatus); domainContract.IsActive.Should().Be(queryableAssetContract.IsActive); domainContract.Charges.Should().BeEquivalentTo(queryableAssetContract.Charges); domainContract.RelatedPeople.Should().BeEquivalentTo(queryableAssetContract.RelatedPeople); diff --git a/Hackney.Shared.HousingSearch/Domain/Asset/Contract.cs b/Hackney.Shared.HousingSearch/Domain/Asset/Contract.cs index f82f3b2..4965401 100644 --- a/Hackney.Shared.HousingSearch/Domain/Asset/Contract.cs +++ b/Hackney.Shared.HousingSearch/Domain/Asset/Contract.cs @@ -1,4 +1,5 @@ using Hackney.Shared.HousingSearch.Domain.Contract; +using Hackney.Shared.HousingSearch.Domain.Enums; using System; using System.Collections.Generic; @@ -12,6 +13,7 @@ public class Contract public DateTime? StartDate { get; set; } public DateTime? ApprovalDate { get; set; } public bool? IsApproved { get; set; } + public ApprovalStatus ApprovalStatus { get; set; } public bool? IsActive { get; set; } public IEnumerable Charges { get; set; } public IEnumerable RelatedPeople { get; set; } diff --git a/Hackney.Shared.HousingSearch/Domain/Contract/Contract.cs b/Hackney.Shared.HousingSearch/Domain/Contract/Contract.cs index 256a25b..7cf197b 100644 --- a/Hackney.Shared.HousingSearch/Domain/Contract/Contract.cs +++ b/Hackney.Shared.HousingSearch/Domain/Contract/Contract.cs @@ -1,4 +1,5 @@ using Hackney.Shared.HousingSearch.Gateways.Models.Contract; +using Hackney.Shared.HousingSearch.Domain.Enums; using System; using System.Collections.Generic; @@ -12,6 +13,7 @@ public class Contract public DateTime? StartDate { get; set; } public DateTime? ApprovalDate { get; set; } public bool? IsApproved { get; set; } + public ApprovalStatus ApprovalStatus { get; set; } public bool? IsActive { get; set; } public IEnumerable Charges { get; set; } public IEnumerable RelatedPeople { get; set; } diff --git a/Hackney.Shared.HousingSearch/Domain/Enums/ApprovalStatus.cs b/Hackney.Shared.HousingSearch/Domain/Enums/ApprovalStatus.cs new file mode 100644 index 0000000..0bac0c1 --- /dev/null +++ b/Hackney.Shared.HousingSearch/Domain/Enums/ApprovalStatus.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Hackney.Shared.HousingSearch.Domain.Enums +{ + [JsonConverter(typeof(JsonStringEnumConverter))] + public enum ApprovalStatus + { + PendingApproval, + Approved, + PendingReapproval + } +} \ No newline at end of file diff --git a/Hackney.Shared.HousingSearch/Factories/DomainFactory.cs b/Hackney.Shared.HousingSearch/Factories/DomainFactory.cs index 1e7c6db..4c0b91b 100644 --- a/Hackney.Shared.HousingSearch/Factories/DomainFactory.cs +++ b/Hackney.Shared.HousingSearch/Factories/DomainFactory.cs @@ -92,6 +92,7 @@ public static Domain.Asset.Contract ToDomain(this QueryableAssetContract entity) StartDate = entity.StartDate, ApprovalDate = entity.ApprovalDate, IsApproved = entity.IsApproved, + ApprovalStatus = entity.ApprovalStatus, IsActive = entity.IsActive, Charges = entity.Charges?.ToDomain(), RelatedPeople = entity.RelatedPeople?.ToDomain(), diff --git a/Hackney.Shared.HousingSearch/Gateways/Models/Assets/QueryableAssetContract.cs b/Hackney.Shared.HousingSearch/Gateways/Models/Assets/QueryableAssetContract.cs index a39b368..1d1fda5 100644 --- a/Hackney.Shared.HousingSearch/Gateways/Models/Assets/QueryableAssetContract.cs +++ b/Hackney.Shared.HousingSearch/Gateways/Models/Assets/QueryableAssetContract.cs @@ -1,5 +1,6 @@ using System; using Hackney.Shared.HousingSearch.Gateways.Models.Contract; +using Hackney.Shared.HousingSearch.Domain.Enums; using Nest; using System.Collections.Generic; @@ -14,6 +15,7 @@ public class QueryableAssetContract public DateTime? StartDate { get; set; } public DateTime? ApprovalDate { get; set; } public bool? IsApproved { get; set; } + public ApprovalStatus ApprovalStatus { get; set; } public bool? IsActive { get; set; } public IEnumerable Charges { get; set; } public IEnumerable RelatedPeople { get; set; }