add AccountController

This commit is contained in:
2025-09-11 12:58:04 +02:00
parent dfadf203de
commit 85c140a815
5 changed files with 130 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
package ltd.lulz.controller
import jakarta.validation.Valid
import ltd.lulz.model.Account
import ltd.lulz.service.AccountService
import ltd.lulz.util.toEntity
import ltd.lulz.util.toResponse
import org.springframework.http.HttpStatus.CREATED
import org.springframework.validation.annotation.Validated
import org.springframework.web.bind.annotation.PostMapping
import org.springframework.web.bind.annotation.RequestBody
import org.springframework.web.bind.annotation.ResponseStatus
import org.springframework.web.bind.annotation.RestController
import reactor.core.publisher.Mono
@RestController
@Validated
class AccountController(
private val accountService: AccountService,
) {
@PostMapping("/account")
@ResponseStatus(CREATED)
fun create(
@Valid @RequestBody request: Account.Request,
): Mono<Account.Response> = accountService.create(request.toEntity())
.map { it.toResponse() }
}