Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.slowinski.radoslaw.cryptomarket
- import com.slowinski.radoslaw.cryptomarket.model.User
- import com.slowinski.radoslaw.cryptomarket.model.Wallet
- import com.slowinski.radoslaw.cryptomarket.repository.UserRepository
- import com.slowinski.radoslaw.cryptomarket.repository.WalletRepository
- import org.springframework.beans.factory.annotation.Autowired
- import org.springframework.http.HttpStatus
- import org.springframework.web.bind.annotation.*
- @RestController
- class CryptoController {
- @Autowired
- lateinit var userRepository: UserRepository
- @Autowired
- lateinit var walletRepository: WalletRepository
- @GetMapping("user/{id}")
- fun getUser(@PathVariable id: Long): User {
- return userRepository.findById(id).orElseThrow { throw UserNotFoundException("nie ma takiego usera") }
- }
- @PostMapping("user")
- fun addUser(@RequestParam("firstName") firstName: String,
- @RequestParam("lastName") lastName: String): User {
- val wallet = Wallet(usd = 100.50)
- walletRepository.save(wallet)
- val user = User(firstName = firstName, lastName = lastName, wallet = wallet)
- userRepository.save(user)
- return user
- }
- }
- @ResponseStatus(HttpStatus.NOT_FOUND)
- class UserNotFoundException(override val message: String) : RuntimeException(message)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement