@@ -38,8 +38,11 @@ public class Story extends AuditingEntity {
3838 @ Column (name = "store_name" , nullable = false )
3939 private String storeName ;
4040
41- @ Column (name = "store_address" , nullable = false )
42- private String storeAddress ;
41+ @ Column (name = "store_road_address" , nullable = false )
42+ private String storeRoadAddress ;
43+
44+ @ Column (name = "store_lot_number_address" , nullable = false )
45+ private String storeLotNumberAddress ;
4346
4447 @ Column (name = "store_category" , nullable = false )
4548 private String storeCategory ;
@@ -54,21 +57,23 @@ public class Story extends AuditingEntity {
5457 private Story (
5558 Member member ,
5659 String storeKakaoId ,
57- String storeName ,
58- String storeAddress ,
5960 String storeCategory ,
61+ String storeName ,
62+ String storeRoadAddress ,
63+ String storeLotNumberAddress ,
6064 String description ,
6165 String imageKey
6266 ) {
6367 validateMember (member );
64- validateStore (storeKakaoId , storeName , storeAddress , storeCategory );
68+ validateStore (storeKakaoId , storeCategory , storeName , storeRoadAddress , storeLotNumberAddress );
6569 validateStory (description , imageKey );
6670
6771 this .member = member ;
6872 this .storeKakaoId = storeKakaoId ;
69- this .storeName = storeName ;
70- this .storeAddress = storeAddress ;
7173 this .storeCategory = storeCategory ;
74+ this .storeName = storeName ;
75+ this .storeRoadAddress = storeRoadAddress ;
76+ this .storeLotNumberAddress = storeLotNumberAddress ;
7277 this .description = description ;
7378 this .imageKey = imageKey ;
7479 }
@@ -79,11 +84,18 @@ private void validateMember(Member member) {
7984 }
8085 }
8186
82- private void validateStore (String storeKakaoId , String storeName , String storeAddress , String storeCategory ) {
87+ private void validateStore (
88+ String storeKakaoId ,
89+ String storeCategory ,
90+ String storeName ,
91+ String roadAddress ,
92+ String lotNumberAddress
93+ ) {
8394 validateStoreKakaoId (storeKakaoId );
84- validateStoreName (storeName );
85- validateStoreAddress (storeAddress );
8695 validateStoreCategory (storeCategory );
96+ validateStoreName (storeName );
97+ validateStoreRoadAddress (roadAddress );
98+ validateStoreLotNumberAddress (lotNumberAddress );
8799 }
88100
89101 private void validateStory (String description , String imageKey ) {
@@ -103,8 +115,14 @@ private void validateStoreName(String storeName) {
103115 }
104116 }
105117
106- private void validateStoreAddress (String storeAddress ) {
107- if (storeAddress == null || storeAddress .isBlank ()) {
118+ private void validateStoreRoadAddress (String roadAddress ) {
119+ if (roadAddress == null || roadAddress .isBlank ()) {
120+ throw new BusinessException (BusinessErrorCode .INVALID_STORE_ADDRESS );
121+ }
122+ }
123+
124+ private void validateStoreLotNumberAddress (String lotNumberAddress ) {
125+ if (lotNumberAddress == null || lotNumberAddress .isBlank ()) {
108126 throw new BusinessException (BusinessErrorCode .INVALID_STORE_ADDRESS );
109127 }
110128 }
@@ -126,4 +144,20 @@ private void validateImage(String imageKey) {
126144 throw new BusinessException (BusinessErrorCode .INVALID_STORY_IMAGE_KEY );
127145 }
128146 }
147+
148+ public String getAddressDistrict () {
149+ String [] addressParts = storeLotNumberAddress .split (" " );
150+ if (addressParts .length < 2 ) {
151+ return "" ;
152+ }
153+ return addressParts [1 ];
154+ }
155+
156+ public String getAddressNeighborhood () {
157+ String [] addressParts = storeLotNumberAddress .split (" " );
158+ if (addressParts .length < 3 ) {
159+ return "" ;
160+ }
161+ return addressParts [2 ];
162+ }
129163}
0 commit comments