From 6b6c7e1e351ac0f24f1435e768f125c6af58d62d Mon Sep 17 00:00:00 2001 From: cezaralexandremorais Date: Mon, 18 Dec 2023 13:35:59 +0000 Subject: [PATCH] feat(pool): Added Street Name Additional Fields information --- .../bridge/dummy/dto/DtoConversionHelper.kt | 7 +++- .../bpdm/common/dto/IBaseStreetDto.kt | 13 +++++++ .../bpdm/common/dto/IStreetDetailedDto.kt | 15 -------- .../tractusx/bpdm/pool/api/model/StreetDto.kt | 6 +++- .../bpdm/pool/entity/PhysicalPostalAddress.kt | 4 +++ .../tractusx/bpdm/pool/entity/Street.kt | 15 +++++++- .../service/BusinessPartnerBuildService.kt | 6 +++- .../bpdm/pool/service/ResponseMappings.kt | 6 +++- ...V5_0_0_3__add_additional_street_fields.sql | 8 +++++ .../pool/util/BusinessPartnerVerboseValues.kt | 36 +++++++++++++++++-- 10 files changed, 93 insertions(+), 23 deletions(-) create mode 100644 bpdm-pool/src/main/resources/db/migration/V5_0_0_3__add_additional_street_fields.sql diff --git a/bpdm-bridge-dummy/src/main/kotlin/com/catenax/bpdm/bridge/dummy/dto/DtoConversionHelper.kt b/bpdm-bridge-dummy/src/main/kotlin/com/catenax/bpdm/bridge/dummy/dto/DtoConversionHelper.kt index 825d61bca..1dbc8356f 100644 --- a/bpdm-bridge-dummy/src/main/kotlin/com/catenax/bpdm/bridge/dummy/dto/DtoConversionHelper.kt +++ b/bpdm-bridge-dummy/src/main/kotlin/com/catenax/bpdm/bridge/dummy/dto/DtoConversionHelper.kt @@ -168,7 +168,12 @@ fun gateToPoolPhysicalAddress(gateDto: Gate_PhysicalPostalAddressDto): Pool_Phys name = gateDto.street?.name, houseNumber = gateDto.street?.houseNumber, milestone = gateDto.street?.milestone, - direction = gateDto.street?.direction + direction = gateDto.street?.direction, + houseNumberSupplement = gateDto.street?.houseNumberSupplement, + namePrefix = gateDto.street?.namePrefix, + additionalNamePrefix = gateDto.street?.additionalNamePrefix, + nameSuffix = gateDto.street?.nameSuffix, + additionalNameSuffix = gateDto.street?.additionalNameSuffix ) ) } diff --git a/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IBaseStreetDto.kt b/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IBaseStreetDto.kt index 59370c535..fe9f7bf72 100644 --- a/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IBaseStreetDto.kt +++ b/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IBaseStreetDto.kt @@ -37,4 +37,17 @@ interface IBaseStreetDto { @get:Schema(description = StreetDescription.direction) val direction: String? + + @get:Schema(description = StreetDescription.namePrefix) + val namePrefix: String? + + @get:Schema(description = StreetDescription.additionalNamePrefix) + val additionalNamePrefix: String? + + @get:Schema(description = StreetDescription.nameSuffix) + val nameSuffix: String? + + @get:Schema(description = StreetDescription.additionalNameSuffix) + val additionalNameSuffix: String? + } diff --git a/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IStreetDetailedDto.kt b/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IStreetDetailedDto.kt index d45b9c007..3ab768083 100644 --- a/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IStreetDetailedDto.kt +++ b/bpdm-common/src/main/kotlin/org/eclipse/tractusx/bpdm/common/dto/IStreetDetailedDto.kt @@ -19,20 +19,5 @@ package org.eclipse.tractusx.bpdm.common.dto -import io.swagger.v3.oas.annotations.media.Schema -import org.eclipse.tractusx.bpdm.common.dto.openapidescription.StreetDescription - interface IStreetDetailedDto : IBaseStreetDto { - - @get:Schema(description = StreetDescription.namePrefix) - val namePrefix: String? - - @get:Schema(description = StreetDescription.additionalNamePrefix) - val additionalNamePrefix: String? - - @get:Schema(description = StreetDescription.nameSuffix) - val nameSuffix: String? - - @get:Schema(description = StreetDescription.additionalNameSuffix) - val additionalNameSuffix: String? } diff --git a/bpdm-pool-api/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/api/model/StreetDto.kt b/bpdm-pool-api/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/api/model/StreetDto.kt index 1e118e5bb..1a765d61c 100644 --- a/bpdm-pool-api/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/api/model/StreetDto.kt +++ b/bpdm-pool-api/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/api/model/StreetDto.kt @@ -31,5 +31,9 @@ data class StreetDto( override val houseNumberSupplement: String? = null, override val milestone: String? = null, override val direction: String? = null, + override val namePrefix: String? = null, + override val additionalNamePrefix: String? = null, + override val nameSuffix: String? = null, + override val additionalNameSuffix: String? = null, -) : IBaseStreetDto + ) : IBaseStreetDto diff --git a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/PhysicalPostalAddress.kt b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/PhysicalPostalAddress.kt index bec88e1f0..7329440d6 100644 --- a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/PhysicalPostalAddress.kt +++ b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/PhysicalPostalAddress.kt @@ -89,6 +89,10 @@ class PhysicalPostalAddress( @AttributeOverride(name = "houseNumberSupplement", column = Column(name = "phy_street_number_supplement")) @AttributeOverride(name = "milestone", column = Column(name = "phy_street_milestone")) @AttributeOverride(name = "direction", column = Column(name = "phy_street_direction")) + @AttributeOverride(name = "namePrefix", column = Column(name = "phy_street_name_prefix")) + @AttributeOverride(name = "additionalNamePrefix", column = Column(name = "phy_street_additional_name_prefix")) + @AttributeOverride(name = "nameSuffix", column = Column(name = "phy_street_name_suffix")) + @AttributeOverride(name = "additionalNameSuffix", column = Column(name = "phy_street_additional_name_suffix")) val street: Street? = null, // specific for PhysicalPostalAddress diff --git a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/Street.kt b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/Street.kt index cdad7698e..d5d0a2506 100644 --- a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/Street.kt +++ b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/entity/Street.kt @@ -40,5 +40,18 @@ class Street( val milestone: String? = null, @Column - val direction: String? = null + val direction: String? = null, + + @Column + val namePrefix: String? = null, + + @Column + val additionalNamePrefix: String? = null, + + @Column + val nameSuffix: String? = null, + + @Column + val additionalNameSuffix: String? = null + ) \ No newline at end of file diff --git a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/BusinessPartnerBuildService.kt b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/BusinessPartnerBuildService.kt index 2350ba8b7..1ef80d5be 100644 --- a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/BusinessPartnerBuildService.kt +++ b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/BusinessPartnerBuildService.kt @@ -559,7 +559,11 @@ class BusinessPartnerBuildService( houseNumber = it.houseNumber, houseNumberSupplement = it.houseNumberSupplement, milestone = it.milestone, - direction = it.direction + direction = it.direction, + namePrefix = it.namePrefix, + additionalNamePrefix = it.additionalNamePrefix, + nameSuffix = it.nameSuffix, + additionalNameSuffix = it.additionalNameSuffix ) }, companyPostCode = physicalAddress.companyPostalCode, diff --git a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/ResponseMappings.kt b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/ResponseMappings.kt index 70153a81a..cadbdaddc 100644 --- a/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/ResponseMappings.kt +++ b/bpdm-pool/src/main/kotlin/org/eclipse/tractusx/bpdm/pool/service/ResponseMappings.kt @@ -182,7 +182,11 @@ private fun Street.toDto(): StreetDto { houseNumber = houseNumber, houseNumberSupplement = houseNumberSupplement, milestone = milestone, - direction = direction + direction = direction, + namePrefix = namePrefix, + additionalNamePrefix = additionalNamePrefix, + nameSuffix = nameSuffix, + additionalNameSuffix = additionalNameSuffix ) } diff --git a/bpdm-pool/src/main/resources/db/migration/V5_0_0_3__add_additional_street_fields.sql b/bpdm-pool/src/main/resources/db/migration/V5_0_0_3__add_additional_street_fields.sql new file mode 100644 index 000000000..da96042d5 --- /dev/null +++ b/bpdm-pool/src/main/resources/db/migration/V5_0_0_3__add_additional_street_fields.sql @@ -0,0 +1,8 @@ +alter table logistic_addresses + ADD phy_street_name_prefix varchar(255) NULL; +alter table logistic_addresses + ADD phy_street_additional_name_prefix varchar(255) NULL; +alter table logistic_addresses + ADD phy_street_name_suffix varchar(255) NULL; +alter table logistic_addresses + ADD phy_street_additional_name_suffix varchar(255) NULL; \ No newline at end of file diff --git a/bpdm-pool/src/test/kotlin/org/eclipse/tractusx/bpdm/pool/util/BusinessPartnerVerboseValues.kt b/bpdm-pool/src/test/kotlin/org/eclipse/tractusx/bpdm/pool/util/BusinessPartnerVerboseValues.kt index 5ac19bd83..89f8dbf4f 100644 --- a/bpdm-pool/src/test/kotlin/org/eclipse/tractusx/bpdm/pool/util/BusinessPartnerVerboseValues.kt +++ b/bpdm-pool/src/test/kotlin/org/eclipse/tractusx/bpdm/pool/util/BusinessPartnerVerboseValues.kt @@ -138,7 +138,17 @@ object BusinessPartnerVerboseValues { building = "Gebäude eins", floor = "Stockerk eins", door = "Raum eins", - street = StreetDto("Bela-Barenyi-Straße", houseNumber = "", houseNumberSupplement = "A"), + street = StreetDto( + name = "Bela-Barenyi-Straße", + houseNumber = "1", + houseNumberSupplement = "A", + milestone = "milestone 1", + direction = "direction 1", + nameSuffix = "name suffix 1", + namePrefix = "name prefix 1", + additionalNameSuffix = "add name suffix 1", + additionalNamePrefix = "add name prefix 1" + ), ) val address2 = PhysicalPostalAddressVerboseDto( @@ -155,7 +165,17 @@ object BusinessPartnerVerboseValues { building = "Building Two", floor = "Floor Two", door = "Door Two", - street = StreetDto(name = "", houseNumber = "", houseNumberSupplement = "B"), + street = StreetDto( + name = "Street2", + houseNumber = "2", + houseNumberSupplement = "B", + milestone = "milestone 2", + direction = "direction 2", + nameSuffix = "name suffix 2", + namePrefix = "name prefix 2", + additionalNameSuffix = "add name suffix 2", + additionalNamePrefix = "add name prefix 2" + ) ) val address3 = PhysicalPostalAddressVerboseDto( @@ -172,7 +192,17 @@ object BusinessPartnerVerboseValues { building = "tedifício três", floor = "piso três", door = "peça três", - street = StreetDto(name = "", houseNumber = "", houseNumberSupplement = "C"), + street = StreetDto( + name = "Street 3", + houseNumber = "3", + houseNumberSupplement = "C", + milestone = "milestone 3", + direction = "direction 3", + nameSuffix = "name suffix 3", + namePrefix = "name prefix 3", + additionalNameSuffix = "add name suffix 3", + additionalNamePrefix = "add name prefix 3" + ), ) val addressPartner1 = LogisticAddressVerboseDto(