Exercise repo, getAllByCustomerId, unit test (+code inspection)
This commit is contained in:
@@ -4,8 +4,7 @@ import org.springframework.boot.SpringApplication
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
|
||||
@SpringBootApplication
|
||||
class ApiApplication {
|
||||
}
|
||||
class ApiApplication
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
SpringApplication.run(ApiApplication::class.java, *args)
|
||||
|
||||
@@ -2,10 +2,8 @@ package com.aitrainer.api.controller
|
||||
|
||||
import com.aitrainer.api.model.Customer
|
||||
import com.aitrainer.api.repository.CustomerRepository
|
||||
import org.springframework.http.HttpStatus
|
||||
import org.springframework.http.ResponseEntity
|
||||
import org.springframework.web.bind.annotation.*
|
||||
import java.util.*
|
||||
import javax.validation.Valid
|
||||
|
||||
@RestController
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
package com.aitrainer.api.controller
|
||||
|
||||
import com.aitrainer.api.model.Customer
|
||||
import com.aitrainer.api.model.Exercises
|
||||
import com.aitrainer.api.repository.ExercisesRepository
|
||||
import org.springframework.http.ResponseEntity
|
||||
import org.springframework.web.bind.annotation.PathVariable
|
||||
import org.springframework.web.bind.annotation.PostMapping
|
||||
import org.springframework.web.bind.annotation.PutMapping
|
||||
import org.springframework.web.bind.annotation.RequestBody
|
||||
import org.springframework.web.bind.annotation.*
|
||||
import javax.validation.Valid
|
||||
|
||||
class ExerciesController(private val exercisesRepository: ExercisesRepository) {
|
||||
|
||||
@GetMapping("/exercises/customer/{id}")
|
||||
fun getAllExersicesByCustomerId(customerId: Long): List<Exercises> =
|
||||
exercisesRepository.getAllByCustomerId(customerId)
|
||||
|
||||
@PostMapping("/exercises")
|
||||
fun createNewCustomer(@Valid @RequestBody exercises: Exercises): Exercises =
|
||||
fun createNewExercise(@Valid @RequestBody exercises: Exercises): Exercises =
|
||||
exercisesRepository.save(exercises)
|
||||
|
||||
@PutMapping("/exercises/{id}")
|
||||
@@ -21,9 +21,9 @@ class ExerciesController(private val exercisesRepository: ExercisesRepository) {
|
||||
@Valid @RequestBody newExercises: Exercises): ResponseEntity<Exercises> {
|
||||
return exercisesRepository.findById(exerciseId).map { existingExercises ->
|
||||
val updatedExercises: Exercises = existingExercises.copy(
|
||||
exercise_type_id = newExercises.exercise_type_id,
|
||||
customer_id = newExercises.customer_id,
|
||||
dateTimeExercise = newExercises.dateTimeExercise,
|
||||
exerciseTypeId = newExercises.exerciseTypeId,
|
||||
customerId = newExercises.customerId,
|
||||
datetimeExercise = newExercises.datetimeExercise,
|
||||
quantity = newExercises.quantity,
|
||||
restTime = newExercises.restTime
|
||||
)
|
||||
|
||||
@@ -2,10 +2,8 @@ package com.aitrainer.api.controller
|
||||
|
||||
import com.aitrainer.api.model.ExerciseType
|
||||
import com.aitrainer.api.repository.ExerciseTypeRepository
|
||||
import org.springframework.http.HttpStatus
|
||||
import org.springframework.http.ResponseEntity
|
||||
import org.springframework.web.bind.annotation.*
|
||||
import java.util.*
|
||||
import javax.validation.Valid
|
||||
|
||||
@RestController
|
||||
|
||||
@@ -6,15 +6,16 @@ import javax.persistence.Entity
|
||||
import javax.persistence.GeneratedValue
|
||||
import javax.persistence.GenerationType
|
||||
import javax.persistence.Id
|
||||
import javax.validation.constraints.Null
|
||||
|
||||
@Entity
|
||||
data class Exercises (
|
||||
@get: NonNull var exercise_type_id: Long = 0,
|
||||
@get: NonNull var customer_id: Long = 0,
|
||||
@get: NonNull var dateTimeExercise: Date? = null,
|
||||
@get: NonNull var quantity: Int = 0,
|
||||
var restTime: Int = 0, // in seconds
|
||||
@get: NonNull var exerciseTypeId: Long = 0,
|
||||
@get: NonNull var customerId: Long = 0,
|
||||
@get: NonNull var datetimeExercise: Date? = null,
|
||||
@get: NonNull var quantity: Int = 0,
|
||||
@get: Null var restTime: Integer, // in seconds
|
||||
|
||||
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
val exercise_id: Long = 0
|
||||
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
val exerciseId: Long = 0
|
||||
)
|
||||
@@ -5,4 +5,6 @@ import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.stereotype.Repository
|
||||
|
||||
@Repository
|
||||
interface ExercisesRepository : JpaRepository<Exercises, Long>
|
||||
interface ExercisesRepository : JpaRepository<Exercises, Long> {
|
||||
fun getAllByCustomerId( customerId: Long ):List<Exercises>
|
||||
}
|
||||
Reference in New Issue
Block a user