generated from pricelees/issue-pr-template
[#44] 매장 기능 도입 #45
@ -16,9 +16,18 @@ import java.time.LocalDateTime
|
|||||||
class StoreEntity(
|
class StoreEntity(
|
||||||
id: Long,
|
id: Long,
|
||||||
|
|
||||||
|
@Column(unique = false)
|
||||||
var name: String,
|
var name: String,
|
||||||
|
|
||||||
|
@Column(unique = false)
|
||||||
var address: String,
|
var address: String,
|
||||||
|
|
||||||
|
@Column(unique = false)
|
||||||
|
var contact: String,
|
||||||
|
|
||||||
|
@Column(unique = false)
|
||||||
val businessRegNum: String,
|
val businessRegNum: String,
|
||||||
|
|
||||||
val regionCode: String,
|
val regionCode: String,
|
||||||
) : PersistableBaseEntity(id) {
|
) : PersistableBaseEntity(id) {
|
||||||
|
|
||||||
|
|||||||
@ -12,12 +12,16 @@ create table if not exists store(
|
|||||||
id bigint primary key,
|
id bigint primary key,
|
||||||
name varchar(20) not null,
|
name varchar(20) not null,
|
||||||
address varchar(100) not null,
|
address varchar(100) not null,
|
||||||
|
contact varchar(50) not null,
|
||||||
business_reg_num varchar(12) not null,
|
business_reg_num varchar(12) not null,
|
||||||
region_code varchar(10) not null,
|
region_code varchar(10) not null,
|
||||||
|
|
||||||
created_at timestamp not null,
|
created_at timestamp not null,
|
||||||
updated_at timestamp not null,
|
updated_at timestamp not null,
|
||||||
|
|
||||||
|
constraint uk_store__name unique (name),
|
||||||
|
constraint uk_store__contact unique (contact),
|
||||||
|
constraint uk_store__address unique (address),
|
||||||
constraint uk_store__business_reg_num unique (business_reg_num),
|
constraint uk_store__business_reg_num unique (business_reg_num),
|
||||||
constraint fk_store__region_code foreign key (region_code) references region (code)
|
constraint fk_store__region_code foreign key (region_code) references region (code)
|
||||||
);
|
);
|
||||||
|
|||||||
@ -2,6 +2,7 @@ package roomescape.data
|
|||||||
|
|
||||||
import io.kotest.core.spec.style.StringSpec
|
import io.kotest.core.spec.style.StringSpec
|
||||||
import roomescape.common.config.next
|
import roomescape.common.config.next
|
||||||
|
import roomescape.supports.randomPhoneNumber
|
||||||
import roomescape.supports.tsidFactory
|
import roomescape.supports.tsidFactory
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.time.LocalDateTime
|
import java.time.LocalDateTime
|
||||||
@ -39,6 +40,8 @@ class StoreDataInitializer : StringSpec({
|
|||||||
} while (usedStoreName.contains(storeName))
|
} while (usedStoreName.contains(storeName))
|
||||||
usedStoreName.add(storeName)
|
usedStoreName.add(storeName)
|
||||||
|
|
||||||
|
val contact = randomPhoneNumber()
|
||||||
|
|
||||||
var businessRegNum: String
|
var businessRegNum: String
|
||||||
do {
|
do {
|
||||||
businessRegNum = generateBusinessRegNum()
|
businessRegNum = generateBusinessRegNum()
|
||||||
@ -51,15 +54,15 @@ class StoreDataInitializer : StringSpec({
|
|||||||
val id: Long = tsidFactory.next().also { storeIds.add(it) }
|
val id: Long = tsidFactory.next().also { storeIds.add(it) }
|
||||||
|
|
||||||
storeSqlRows.add(
|
storeSqlRows.add(
|
||||||
"(${id}, '$storeName', '$address', '$businessRegNum', '${region.regionCode}', '$createdAt', '$updatedAt')"
|
"(${id}, '$storeName', '$address', '$contact', '$businessRegNum', '${region.regionCode}', '$createdAt', '$updatedAt')"
|
||||||
)
|
)
|
||||||
storeDataRows.add(
|
storeDataRows.add(
|
||||||
"$id, $storeName, $address, $businessRegNum, ${region.regionCode}, $createdAt, $updatedAt"
|
"$id, $storeName, $address, $contact, $businessRegNum, ${region.regionCode}, $createdAt, $updatedAt"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
StringBuilder("INSERT INTO store (id, name, address, business_reg_num, region_code, created_at, updated_at) VALUES ")
|
StringBuilder("INSERT INTO store (id, name, address, contact, business_reg_num, region_code, created_at, updated_at) VALUES ")
|
||||||
.append(storeSqlRows.joinToString(",\n"))
|
.append(storeSqlRows.joinToString(",\n"))
|
||||||
.append(";")
|
.append(";")
|
||||||
.toString()
|
.toString()
|
||||||
|
|||||||
@ -31,12 +31,14 @@ object StoreFixture {
|
|||||||
id: Long = tsidFactory.next(),
|
id: Long = tsidFactory.next(),
|
||||||
name: String = "테스트-${randomString()}점",
|
name: String = "테스트-${randomString()}점",
|
||||||
address: String = "서울특별시 강북구 행복길 123",
|
address: String = "서울특별시 강북구 행복길 123",
|
||||||
|
contact: String = randomPhoneNumber(),
|
||||||
businessRegNum: String = "123-45-67890",
|
businessRegNum: String = "123-45-67890",
|
||||||
regionCode: String = "1111000000"
|
regionCode: String = "1111000000"
|
||||||
) = StoreEntity(
|
) = StoreEntity(
|
||||||
id = id,
|
id = id,
|
||||||
name = name,
|
name = name,
|
||||||
address = address,
|
address = address,
|
||||||
|
contact = contact,
|
||||||
businessRegNum = businessRegNum,
|
businessRegNum = businessRegNum,
|
||||||
regionCode = regionCode
|
regionCode = regionCode
|
||||||
)
|
)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user