31 lines
1.3 KiB
Kotlin
31 lines
1.3 KiB
Kotlin
package com.example.route
|
|
|
|
import com.example.data.repository.CartRepository
|
|
import com.example.dto.request.AddToCartRequest
|
|
import com.example.dto.request.ChangeCountFromCartRequest
|
|
import com.example.dto.request.RemoveFromCartRequest
|
|
import io.ktor.http.*
|
|
import io.ktor.server.request.*
|
|
import io.ktor.server.response.*
|
|
import io.ktor.server.routing.*
|
|
|
|
fun Route.cartRoute(){
|
|
val cartRepository = CartRepository()
|
|
route("/cart") {
|
|
post {
|
|
val addToCartRequest = call.receive<AddToCartRequest>()
|
|
val result = cartRepository.addToCartByUuid(addToCartRequest)
|
|
if (result) call.respond(HttpStatusCode.OK) else call.respond(HttpStatusCode.NotFound)
|
|
}
|
|
delete {
|
|
val removeFromCartRequest = call.receive<RemoveFromCartRequest>()
|
|
val result = cartRepository.removeFromCartByUuid(removeFromCartRequest)
|
|
if (result) call.respond(HttpStatusCode.OK) else call.respond(HttpStatusCode.NotFound)
|
|
}
|
|
put{
|
|
val changeCountFromCartRequest = call.receive<ChangeCountFromCartRequest>()
|
|
val result = cartRepository.changeCountFromCartByUuid(changeCountFromCartRequest)
|
|
if (result) call.respond(HttpStatusCode.OK) else call.respond(HttpStatusCode.NotFound)
|
|
}
|
|
}
|
|
} |