Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,5 @@ core/designsystem/build/outputs/aar/
core/model/build/outputs/aar/
core/designsystem/build/tmp/kotlin-classes/debug/META-INF
core/designsystem/build/tmp
core/designsystem/build/kotlin/compileReleaseKotlin/
core/designsystem/build/kotlin/compileReleaseKotlin/
core/model/build/kotlin compileReleaseKotlin/
12 changes: 11 additions & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import com.kusitms.connectdog.Configuration
import org.jetbrains.kotlin.konan.properties.Properties

@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
plugins {
Expand All @@ -24,6 +25,13 @@ android {
vectorDrawables {
useSupportLibrary = true
}

val localProperties = Properties()
val localPropertiesFile = rootProject.file("local.properties")
if (localPropertiesFile.exists()) { localPropertiesFile.inputStream().use { localProperties.load(it) } }

val kakaoAppKey: String = localProperties.getProperty("kakao_app_key") ?: ""
manifestPlaceholders["KAKAO_APP_KEY"] = kakaoAppKey
}

buildTypes {
Expand All @@ -43,7 +51,9 @@ android {
kotlinOptions {
jvmTarget = "17"
}

buildFeatures {
buildConfig = true
}
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
Expand Down
4 changes: 2 additions & 2 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
tools:targetApi="33">
<meta-data
android:name="com.kakao.sdk.AppKey"
android:value="@string/kakao_app_key" />
android:value="${KAKAO_APP_KEY}" />

<service
android:name=".feature.main.FirebaseMessagingService"
Expand All @@ -36,7 +36,7 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:host="oauth"
android:scheme="kakao227799f94d3661c7d84b79daba3b0eaa" />
android:scheme="kakao${KAKAO_APP_KEY}" />
</intent-filter>
</activity>

Expand Down
15 changes: 15 additions & 0 deletions core/data/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import com.kusitms.connectdog.Configuration
import org.jetbrains.kotlin.konan.properties.Properties

@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
plugins {
Expand All @@ -16,6 +17,14 @@ android {
defaultConfig {
minSdk = Configuration.minSdk

val localProperties = Properties()
val localPropertiesFile = rootProject.file("local.properties")
if (localPropertiesFile.exists()) { localPropertiesFile.inputStream().use { localProperties.load(it) } }

val baseUrl: String = localProperties.getProperty("BASE_URL") ?: ""

buildConfigField("String", "BASE_URL", "\"$baseUrl\"")

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
Expand All @@ -36,15 +45,21 @@ android {
kotlinOptions {
jvmTarget = "17"
}
buildFeatures {
buildConfig = true
}
}

dependencies {
implementation(projects.domain)
implementation(project(":core:model"))
implementation(project(":core:util"))

kapt(libs.hilt.compiler)
implementation(libs.hilt.android)

implementation(libs.kotlinx.coroutines.core)

implementation(libs.retrofit.core)
implementation(libs.retrofit.kotlin.serialization)
implementation(libs.retrofit.converter.moshi)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,9 @@
package com.kusitms.connectdog.core.data.api

import com.kusitms.connectdog.core.data.api.model.AdditionalAuthBody
import com.kusitms.connectdog.core.data.api.model.AuthDto
import com.kusitms.connectdog.core.data.api.model.EmailDto
import com.kusitms.connectdog.core.data.api.model.FcmTokenRequestBody
import com.kusitms.connectdog.core.data.api.model.IsDuplicateNicknameResponse
import com.kusitms.connectdog.core.data.api.model.IsDuplicatePhoneNumberBody
import com.kusitms.connectdog.core.data.api.model.IsDuplicatePhoneNumberResponse
import com.kusitms.connectdog.core.data.api.model.LoginResponseItem
import com.kusitms.connectdog.core.data.api.model.MyInfoResponseItem
import com.kusitms.connectdog.core.data.api.model.NormalLoginBody
import com.kusitms.connectdog.core.data.api.model.PhoneDto
import com.kusitms.connectdog.core.data.api.model.Response
import com.kusitms.connectdog.core.data.api.model.SocialLoginBody
import com.kusitms.connectdog.core.data.api.model.VolunteerResponse
import com.kusitms.connectdog.core.data.api.model.intermediator.IntermediatorInfoResponseItem
import com.kusitms.connectdog.core.data.api.model.volunteer.AnnouncementHomeResponseItem
Expand All @@ -24,18 +15,25 @@ import com.kusitms.connectdog.core.data.api.model.volunteer.ApplyBody
import com.kusitms.connectdog.core.data.api.model.volunteer.BadgeResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.BasicInformationResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.BookmarkResponseItem
import com.kusitms.connectdog.core.data.api.model.volunteer.EmailAuthDto
import com.kusitms.connectdog.core.data.api.model.volunteer.EmailCertificationBody
import com.kusitms.connectdog.core.data.api.model.volunteer.IsDuplicateNicknameBody
import com.kusitms.connectdog.core.data.api.model.volunteer.NormalVolunteerSignUpBody
import com.kusitms.connectdog.core.data.api.model.volunteer.NoticeDetailResponseItem
import com.kusitms.connectdog.core.data.api.model.volunteer.PasswordCheckResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.PasswordDto
import com.kusitms.connectdog.core.data.api.model.volunteer.ReviewDetailResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.ReviewDetailWithId
import com.kusitms.connectdog.core.data.api.model.volunteer.SocialVolunteerSignUpBody
import com.kusitms.connectdog.core.data.api.model.volunteer.UserInfoResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.VolunteerAccountInfo
import com.kusitms.connectdog.core.model.auth.AuthCodeWithAccessToken
import com.kusitms.connectdog.core.model.auth.Email
import com.kusitms.connectdog.core.model.auth.EmailAuthCode
import com.kusitms.connectdog.core.model.auth.Phone
import com.kusitms.connectdog.core.model.auth.PhoneNumberDuplication
import com.kusitms.connectdog.core.model.login.LoginResult
import com.kusitms.connectdog.core.model.login.NormalLogin
import com.kusitms.connectdog.core.model.login.SocialLogin
import com.kusitms.connectdog.core.model.signup.IsDuplicated
import com.kusitms.connectdog.core.model.signup.Nickname
import com.kusitms.connectdog.core.model.signup.NormalVolunteerDetail
import com.kusitms.connectdog.core.model.signup.SocialVolunteerDetail
import okhttp3.MultipartBody
import okhttp3.RequestBody
import retrofit2.http.Body
Expand Down Expand Up @@ -83,28 +81,28 @@ internal interface ApiService {
*/
@POST("/volunteers/nickname/isDuplicated")
suspend fun postNickname(
@Body nickname: IsDuplicateNicknameBody
): IsDuplicateNicknameResponse
@Body body: Nickname
): IsDuplicated

@POST("/volunteers/sign-up/email")
suspend fun postEmail(
@Body emailCertificationBody: EmailCertificationBody
): AuthDto
suspend fun getEmailAuthCode(
@Body body: Email
): EmailAuthCode

@POST("/volunteers/sign-up")
suspend fun postNormalVolunteerSignUp(
@Body normalVolunteerSignUpBody: NormalVolunteerSignUpBody
@Body body: NormalVolunteerDetail
)

@PATCH("/volunteers/sign-up/social")
suspend fun postSocialVolunteerSignUp(
@Body socialVolunteerSignUpBody: SocialVolunteerSignUpBody
@Body socialVolunteerSignUpBody: SocialVolunteerDetail
)

@POST("/volunteers/phone/isDuplicated")
suspend fun getIsDuplicatePhoneNumber(
@Body isDuplicatePhoneNumberBody: IsDuplicatePhoneNumberBody
): IsDuplicatePhoneNumberResponse
suspend fun getPhoneNumberDuplication(
@Body body: Phone
): PhoneNumberDuplication

/**
* 봉사관리
Expand Down Expand Up @@ -147,25 +145,19 @@ internal interface ApiService {
*/
@Headers("Content-Type: application/json")
@POST("/volunteers/login")
suspend fun postLoginData(
@Body loginBody: NormalLoginBody
): LoginResponseItem

@Headers("Content-Type: application/json")
@POST("/intermediaries/login")
suspend fun postIntermediatorLoginData(
@Body loginBody: NormalLoginBody
): LoginResponseItem
suspend fun normalLogin(
@Body loginBody: NormalLogin
): LoginResult

@POST("/volunteers/login/social")
suspend fun postSocialLoginData(
@Body socialLoginBody: SocialLoginBody
): LoginResponseItem
@Body socialLoginBody: SocialLogin
): LoginResult

@POST("/volunteers/search/send-email")
suspend fun volunteerPasswordSearchAuth(
@Body body: EmailDto
): EmailAuthDto
@Body body: Email
): AuthCodeWithAccessToken

/**s
* 이동봉사자 > 마이페이지
Expand Down Expand Up @@ -284,7 +276,7 @@ internal interface ApiService {
suspend fun getVolunteerAccountInfo(): VolunteerAccountInfo

@POST("/volunteers/search/email")
suspend fun volunteerEmailSearch(
@Body body: PhoneDto
): EmailDto
suspend fun searchVolunteerEmail(
@Body body: Phone
): Email
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,8 @@
package com.kusitms.connectdog.core.data.api

import com.kusitms.connectdog.core.data.api.model.EmailDto
import com.kusitms.connectdog.core.data.api.model.FcmTokenRequestBody
import com.kusitms.connectdog.core.data.api.model.IsDuplicatePhoneNumberBody
import com.kusitms.connectdog.core.data.api.model.IsDuplicatePhoneNumberResponse
import com.kusitms.connectdog.core.data.api.model.PhoneDto
import com.kusitms.connectdog.core.data.api.model.Response
import com.kusitms.connectdog.core.data.api.model.VolunteerResponse
import com.kusitms.connectdog.core.data.api.model.intermediator.DuplicateDto
import com.kusitms.connectdog.core.data.api.model.intermediator.InterAnnouncementDetailResponse
import com.kusitms.connectdog.core.data.api.model.intermediator.InterApplicationCompletedResponseItem
import com.kusitms.connectdog.core.data.api.model.intermediator.InterApplicationInProgressResponseItem
Expand All @@ -17,16 +12,23 @@ import com.kusitms.connectdog.core.data.api.model.intermediator.InterProfileFind
import com.kusitms.connectdog.core.data.api.model.intermediator.InterProfileInfoResponse
import com.kusitms.connectdog.core.data.api.model.intermediator.IntermediatorAccountInfo
import com.kusitms.connectdog.core.data.api.model.intermediator.IntermediatorProfileInfoResponseItem
import com.kusitms.connectdog.core.data.api.model.intermediator.NameDto
import com.kusitms.connectdog.core.data.api.model.volunteer.EmailAuthDto
import com.kusitms.connectdog.core.data.api.model.volunteer.PasswordCheckResponse
import com.kusitms.connectdog.core.data.api.model.volunteer.PasswordDto
import com.kusitms.connectdog.core.data.api.model.volunteer.ReviewDetailResponse
import com.kusitms.connectdog.core.model.auth.AuthCodeWithAccessToken
import com.kusitms.connectdog.core.model.auth.Email
import com.kusitms.connectdog.core.model.auth.Phone
import com.kusitms.connectdog.core.model.auth.PhoneNumberDuplication
import com.kusitms.connectdog.core.model.login.LoginResult
import com.kusitms.connectdog.core.model.login.NormalLogin
import com.kusitms.connectdog.core.model.signup.IsDuplicated
import com.kusitms.connectdog.core.model.signup.Name
import okhttp3.MultipartBody
import okhttp3.RequestBody
import retrofit2.http.Body
import retrofit2.http.DELETE
import retrofit2.http.GET
import retrofit2.http.Headers
import retrofit2.http.Multipart
import retrofit2.http.PATCH
import retrofit2.http.POST
Expand All @@ -36,6 +38,15 @@ import retrofit2.http.Query

internal interface InterApiService {

/**
* 로그인
*/
@Headers("Content-Type: application/json")
@POST("/intermediaries/login")
suspend fun normalLogin(
@Body body: NormalLogin
): LoginResult

/**
* 회원가입
*/
Expand All @@ -47,14 +58,14 @@ internal interface InterApiService {
)

@POST("/intermediaries/phone/isDuplicated")
suspend fun getIsDuplicatePhoneNumber(
@Body body: IsDuplicatePhoneNumberBody
): IsDuplicatePhoneNumberResponse
suspend fun getPhoneNumberDuplication(
@Body body: Phone
): PhoneNumberDuplication

@POST("/intermediaries/name/isDuplicated")
suspend fun checkIsDuplicateName(
@Body body: NameDto
): DuplicateDto
@Body body: Name
): IsDuplicated

@POST("/intermediaries/password/check")
suspend fun checkInterPassword(
Expand Down Expand Up @@ -158,9 +169,9 @@ internal interface InterApiService {
suspend fun patchNotification()

@POST("/intermediaries/search/send-email")
suspend fun interPasswordSearchAuth(
@Body body: EmailDto
): EmailAuthDto
suspend fun emailAuthForPasswordReset(
@Body body: Email
): AuthCodeWithAccessToken

@Multipart
@POST("/intermediaries/posts")
Expand All @@ -176,7 +187,7 @@ internal interface InterApiService {
suspend fun interWithdraw()

@POST("/intermediaries/search/email")
suspend fun interEmailSearch(
@Body body: PhoneDto
): EmailDto
suspend fun searchIntermediatorEmail(
@Body body: Phone
): Email
}

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading
Loading