diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 77d844b..7d4242b 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -57,9 +57,9 @@ jobs: - name: Checkout uses: actions/checkout@v2 - name: Build - run: docker-compose build hackney-shared-housing-search-test + run: docker compose build hackney-shared-housing-search-test - name: Run tests - run: docker-compose run hackney-shared-housing-search-test + run: docker compose run hackney-shared-housing-search-test publish-package: name: Publish Package 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; }