회원가입 로직에 광고 트래킹 적용
- 광고 트래킹 관련 Entity 추가 - pid가 현재 광고 중인 pid인 경우 트래킹 로그 생성
This commit is contained in:
@@ -2,9 +2,12 @@ package kr.co.vividnext.sodalive.member
|
||||
|
||||
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||
import kr.co.vividnext.sodalive.common.SodaException
|
||||
import kr.co.vividnext.sodalive.marketing.AdTrackingHistoryType
|
||||
import kr.co.vividnext.sodalive.marketing.AdTrackingService
|
||||
import kr.co.vividnext.sodalive.member.block.MemberBlockRequest
|
||||
import kr.co.vividnext.sodalive.member.following.CreatorFollowRequest
|
||||
import kr.co.vividnext.sodalive.member.login.LoginRequest
|
||||
import kr.co.vividnext.sodalive.member.login.LoginResponse
|
||||
import kr.co.vividnext.sodalive.member.notification.UpdateNotificationSettingRequest
|
||||
import org.springframework.data.domain.Pageable
|
||||
import org.springframework.security.core.annotation.AuthenticationPrincipal
|
||||
@@ -23,7 +26,10 @@ import org.springframework.web.multipart.MultipartFile
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/member")
|
||||
class MemberController(private val service: MemberService) {
|
||||
class MemberController(
|
||||
private val service: MemberService,
|
||||
private val trackingService: AdTrackingService
|
||||
) {
|
||||
@GetMapping("/check/email")
|
||||
fun checkEmail(@RequestParam email: String) = service.duplicateCheckEmail(email)
|
||||
|
||||
@@ -40,7 +46,19 @@ class MemberController(private val service: MemberService) {
|
||||
fun signUp(
|
||||
@RequestPart("profileImage", required = false) profileImage: MultipartFile? = null,
|
||||
@RequestPart("request") requestString: String
|
||||
) = service.signUp(profileImage, requestString)
|
||||
): ApiResponse<LoginResponse> {
|
||||
val response = service.signUp(profileImage, requestString)
|
||||
|
||||
if (!response.marketingPid.isNullOrBlank()) {
|
||||
trackingService.saveTrackingHistory(
|
||||
pid = response.marketingPid,
|
||||
type = AdTrackingHistoryType.SIGNUP,
|
||||
memberId = response.memberId
|
||||
)
|
||||
}
|
||||
|
||||
return ApiResponse.ok(message = "회원가입을 축하드립니다.", data = response.loginResponse)
|
||||
}
|
||||
|
||||
@PostMapping("/login")
|
||||
fun login(@RequestBody loginRequest: LoginRequest) = service.login(loginRequest)
|
||||
|
Reference in New Issue
Block a user