시큐리티 설정
유저 API - 로그인, 회원가입, 계정정보 추가
This commit is contained in:
104
src/main/kotlin/kr/co/vividnext/sodalive/member/Member.kt
Normal file
104
src/main/kotlin/kr/co/vividnext/sodalive/member/Member.kt
Normal file
@@ -0,0 +1,104 @@
|
||||
package kr.co.vividnext.sodalive.member
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.member.auth.Auth
|
||||
import kr.co.vividnext.sodalive.member.notification.MemberNotification
|
||||
import kr.co.vividnext.sodalive.member.stipulation.StipulationAgree
|
||||
import javax.persistence.CascadeType
|
||||
import javax.persistence.Column
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
import javax.persistence.FetchType
|
||||
import javax.persistence.OneToMany
|
||||
import javax.persistence.OneToOne
|
||||
|
||||
@Entity
|
||||
data class Member(
|
||||
val email: String,
|
||||
var password: String,
|
||||
var nickname: String,
|
||||
var profileImage: String? = null,
|
||||
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
var gender: Gender = Gender.NONE,
|
||||
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
var role: MemberRole = MemberRole.USER,
|
||||
|
||||
var isActive: Boolean = true,
|
||||
|
||||
var container: String = "web"
|
||||
) : BaseEntity() {
|
||||
@OneToMany(mappedBy = "member", cascade = [CascadeType.ALL])
|
||||
val stipulationAgrees: MutableList<StipulationAgree> = mutableListOf()
|
||||
|
||||
@OneToOne(mappedBy = "member", fetch = FetchType.LAZY)
|
||||
var notification: MemberNotification? = null
|
||||
|
||||
@OneToOne(mappedBy = "member", fetch = FetchType.LAZY)
|
||||
var auth: Auth? = null
|
||||
|
||||
// 소개
|
||||
@Column(columnDefinition = "TEXT")
|
||||
var introduce = ""
|
||||
|
||||
// SNS
|
||||
var instagramUrl = ""
|
||||
var youtubeUrl = ""
|
||||
var websiteUrl = ""
|
||||
var blogUrl = ""
|
||||
|
||||
var pushToken: String? = null
|
||||
|
||||
// 화폐
|
||||
private var pgChargeCan: Int = 0
|
||||
private var pgRewardCan: Int = 0
|
||||
private var googleChargeCan: Int = 0
|
||||
private var googleRewardCan: Int = 0
|
||||
private var appleChargeCan: Int = 0
|
||||
private var appleRewardCan: Int = 0
|
||||
|
||||
fun getChargeCan(container: String): Int {
|
||||
return when (container) {
|
||||
"ios" -> appleChargeCan + pgChargeCan
|
||||
"aos" -> googleChargeCan + pgChargeCan
|
||||
else -> pgChargeCan
|
||||
}
|
||||
}
|
||||
|
||||
fun getRewardCan(container: String): Int {
|
||||
return when (container) {
|
||||
"ios" -> appleRewardCan + pgRewardCan
|
||||
"aos" -> googleRewardCan + pgRewardCan
|
||||
else -> pgRewardCan
|
||||
}
|
||||
}
|
||||
|
||||
fun charge(chargeCan: Int, rewardCan: Int, container: String) {
|
||||
when (container) {
|
||||
"ios" -> {
|
||||
appleChargeCan = chargeCan
|
||||
appleRewardCan = rewardCan
|
||||
}
|
||||
|
||||
"aos" -> {
|
||||
googleChargeCan = chargeCan
|
||||
googleRewardCan = rewardCan
|
||||
}
|
||||
|
||||
else -> {
|
||||
pgChargeCan = chargeCan
|
||||
pgRewardCan = rewardCan
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
enum class Gender {
|
||||
MALE, FEMALE, NONE
|
||||
}
|
||||
|
||||
enum class MemberRole {
|
||||
ADMIN, BOT, USER, CREATOR, AGENT
|
||||
}
|
Reference in New Issue
Block a user