Cambios en los repositorios
This commit is contained in:
@@ -19,7 +19,7 @@ repositories {
|
||||
|
||||
dependencies {
|
||||
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
|
||||
implementation("org.springframework.boot:spring-boot-starter-oauth2-resource-server")
|
||||
// implementation("org.springframework.boot:spring-boot-starter-oauth2-resource-server")
|
||||
implementation("org.springframework.boot:spring-boot-starter-web")
|
||||
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
||||
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
package eu.fosil.okupamicoche.entities
|
||||
|
||||
import java.util.*
|
||||
|
||||
interface Repository<DATA, ID> {
|
||||
fun save(data: DATA)
|
||||
fun delete(data: DATA)
|
||||
fun findAll(): List<DATA>
|
||||
fun findById(id: ID): Optional<DATA>
|
||||
}
|
||||
@@ -1,17 +1,17 @@
|
||||
package eu.fosil.okupamicoche.entities
|
||||
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.GeneratedValue
|
||||
import javax.persistence.Id
|
||||
import javax.persistence.*
|
||||
|
||||
@Entity
|
||||
class Travel(
|
||||
@Id @GeneratedValue var id: Long? = null,
|
||||
@OneToOne
|
||||
var driver: User,
|
||||
@OneToMany
|
||||
var travelers: List<User>,
|
||||
var departureDate: String,
|
||||
var from: String,
|
||||
var to: String,
|
||||
var origin: String,
|
||||
var destination: String,
|
||||
var availablePlaces: Int,
|
||||
var description: String? = null,
|
||||
var matrixRoomId: String
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
package eu.fosil.okupamicoche.repositories
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Travel
|
||||
import org.springframework.data.repository.CrudRepository
|
||||
|
||||
interface TravelRepository : CrudRepository<Travel, Long>
|
||||
@@ -0,0 +1,6 @@
|
||||
package eu.fosil.okupamicoche.repositories
|
||||
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import org.springframework.data.repository.CrudRepository
|
||||
|
||||
interface UserRepository : CrudRepository<User, Long>
|
||||
@@ -1,9 +1,13 @@
|
||||
package eu.fosil.okupamicoche.spring
|
||||
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.autoconfigure.domain.EntityScan
|
||||
import org.springframework.boot.runApplication
|
||||
import org.springframework.data.jpa.repository.config.EnableJpaRepositories
|
||||
|
||||
@SpringBootApplication
|
||||
@EnableJpaRepositories("eu.fosil.okupamicoche.*")
|
||||
@EntityScan("eu.fosil.okupamicoche.*")
|
||||
class OkupaMiCocheApplication
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
package eu.fosil.okupamicoche.spring.controller
|
||||
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import eu.fosil.okupamicoche.spring.jpa.UserRepository
|
||||
import eu.fosil.okupamicoche.repositories.UserRepository
|
||||
import eu.fosil.okupamicoche.usecases.user.CreateUser
|
||||
import eu.fosil.okupamicoche.usecases.user.DeleteUser
|
||||
import eu.fosil.okupamicoche.usecases.user.EditUser
|
||||
import eu.fosil.okupamicoche.usecases.user.ListUsers
|
||||
import org.springframework.validation.annotation.Validated
|
||||
import org.springframework.web.bind.annotation.RequestBody
|
||||
import org.springframework.web.bind.annotation.RequestMapping
|
||||
import org.springframework.web.bind.annotation.RestController
|
||||
|
||||
@@ -14,7 +16,7 @@ import org.springframework.web.bind.annotation.RestController
|
||||
class RestController(private val userRepository: UserRepository) {
|
||||
|
||||
@RequestMapping("/user/create")
|
||||
fun createUser(user: User) {
|
||||
fun createUser(@RequestBody @Validated user: User) {
|
||||
CreateUser(userRepository).createUser(user)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
package eu.fosil.okupamicoche.spring.jpa
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Travel
|
||||
import org.springframework.data.repository.CrudRepository
|
||||
import org.springframework.data.repository.Repository
|
||||
|
||||
interface TravelRepository : Repository<Travel, Long>, CrudRepository<Travel, Long>
|
||||
@@ -1,7 +0,0 @@
|
||||
package eu.fosil.okupamicoche.spring.jpa
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import org.springframework.data.repository.CrudRepository
|
||||
|
||||
interface UserRepository : Repository<User, Long>, CrudRepository<User, Long>
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.travel
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.Travel
|
||||
import eu.fosil.okupamicoche.repositories.TravelRepository
|
||||
|
||||
class CreateTravel(private val travelRepository: Repository<Travel, Long>) {
|
||||
class CreateTravel(private val travelRepository: TravelRepository) {
|
||||
fun createTravel(travel: Travel) {
|
||||
travelRepository.save(travel)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.travel
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.Travel
|
||||
import eu.fosil.okupamicoche.repositories.TravelRepository
|
||||
|
||||
class DeleteTravel(private val travelRepository: Repository<Travel, Long>) {
|
||||
class DeleteTravel(private val travelRepository: TravelRepository) {
|
||||
fun deleteTravel(travel: Travel) {
|
||||
travelRepository.delete(travel)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.travel
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.Travel
|
||||
import eu.fosil.okupamicoche.repositories.TravelRepository
|
||||
|
||||
class EditTravel(private val travelRepository: Repository<Travel, Long>) {
|
||||
class EditTravel(private val travelRepository: TravelRepository) {
|
||||
fun editTravel(travel: Travel) {
|
||||
travelRepository.save(travel)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.user
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import eu.fosil.okupamicoche.repositories.UserRepository
|
||||
|
||||
class CreateUser(private val userRepository: Repository<User, Long>) {
|
||||
class CreateUser(private val userRepository: UserRepository) {
|
||||
fun createUser(user: User) {
|
||||
userRepository.save(user)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.user
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import eu.fosil.okupamicoche.repositories.UserRepository
|
||||
|
||||
class DeleteUser(private val userRepository: Repository<User, Long>) {
|
||||
class DeleteUser(private val userRepository: UserRepository) {
|
||||
fun deleteUser(user: User) {
|
||||
userRepository.delete(user)
|
||||
// cancelarViajes()
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package eu.fosil.okupamicoche.usecases.user
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import eu.fosil.okupamicoche.repositories.UserRepository
|
||||
|
||||
class EditUser(private val userRepository: Repository<User, Long>) {
|
||||
class EditUser(private val userRepository: UserRepository) {
|
||||
fun editUser(user: User) {
|
||||
userRepository.save(user)
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package eu.fosil.okupamicoche.usecases.user
|
||||
|
||||
import eu.fosil.okupamicoche.entities.Repository
|
||||
import eu.fosil.okupamicoche.entities.User
|
||||
import eu.fosil.okupamicoche.repositories.UserRepository
|
||||
|
||||
class ListUsers(private val userRepository: Repository<User, Long>) {
|
||||
class ListUsers(private val userRepository: UserRepository) {
|
||||
fun listUsers(): List<User> {
|
||||
return userRepository.findAll()
|
||||
return userRepository.findAll().toList()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user