Skip to content

Commit 0405a7d

Browse files
authored
Merge pull request #54 from EntryDSM/feature/53-upload-image
upload file
2 parents 660288c + ce24d72 commit 0405a7d

24 files changed

Lines changed: 351 additions & 2 deletions

File tree

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package hs.kr.entrydsm.domain.file.`object`
2+
3+
object PathList {
4+
const val PHOTO = "entry_photo/"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package hs.kr.entrydsm.domain.file.spi
2+
3+
interface GenerateFileUrlPort {
4+
fun generateFileUrl(fileName: String, path: String): String
5+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package hs.kr.entrydsm.domain.file.spi
2+
3+
import java.io.File
4+
5+
interface UploadFilePort {
6+
fun upload(file: File, path: String): String
7+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package hs.kr.entrydsm.global.exception
2+
3+
abstract class BusinessException(
4+
open val status: Int,
5+
override val message: String,
6+
) : RuntimeException()
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package hs.kr.entrydsm.global.exception
2+
3+
abstract class WebException(
4+
open val status: Int,
5+
override val message: String,
6+
) : RuntimeException()

casper-application-infrastructure/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,9 @@ dependencies {
134134

135135
// swagger
136136
implementation(Dependencies.SWAGGER)
137+
138+
// aws s3
139+
implementation("com.amazonaws:aws-java-sdk-s3:1.12.767")
137140
}
138141

139142
allOpen {

casper-application-infrastructure/src/main/kotlin/hs/kr/entrydsm/application/domain/application/domain/entity/ApplicationJpaEntity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class ApplicationJpaEntity(
5151
@get:JvmName("getIsOutOfHeadcount")
5252
var isOutOfHeadcount: Boolean?,
5353
@Column(columnDefinition = "TEXT")
54-
val photoPath: String?,
54+
var photoPath: String?,
5555
val parentRelation: String?,
5656
val postalCode: String?,
5757
val detailAddress: String?,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package hs.kr.entrydsm.application.domain.application.domain.entity
2+
3+
import jakarta.persistence.Column
4+
import jakarta.persistence.Entity
5+
import jakarta.persistence.Id
6+
import jakarta.persistence.Table
7+
import java.util.UUID
8+
9+
@Entity
10+
@Table(name = "tbl_photo")
11+
class PhotoJpaEntity(
12+
@Id
13+
val userId: UUID,
14+
15+
@Column(name = "photo_path", nullable = false)
16+
var photo: String,
17+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package hs.kr.entrydsm.application.domain.application.domain.repository
2+
3+
import hs.kr.entrydsm.application.domain.application.domain.entity.PhotoJpaEntity
4+
import org.springframework.data.jpa.repository.JpaRepository
5+
import java.util.UUID
6+
7+
interface PhotoJpaRepository : JpaRepository<PhotoJpaEntity, UUID> {
8+
9+
fun findByUserId(userId: UUID): PhotoJpaEntity?
10+
}

casper-application-infrastructure/src/main/kotlin/hs/kr/entrydsm/application/domain/application/presentation/dto/response/ApplicationDetailResponse.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,6 @@ data class ApplicationDetailResponse(
2222
val reviewedAt: LocalDateTime?,
2323
val createdAt: LocalDateTime,
2424
val updatedAt: LocalDateTime,
25+
val photoPath: String?,
2526
)
2627
}

0 commit comments

Comments
 (0)