last transfer
This commit is contained in:
@@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.RestController
|
|||||||
import reactor.core.publisher.Mono
|
import reactor.core.publisher.Mono
|
||||||
import space.luminic.budgerapp.models.Budget
|
import space.luminic.budgerapp.models.Budget
|
||||||
import space.luminic.budgerapp.models.Category
|
import space.luminic.budgerapp.models.Category
|
||||||
|
import space.luminic.budgerapp.models.Recurrent
|
||||||
import space.luminic.budgerapp.models.Transaction
|
import space.luminic.budgerapp.models.Transaction
|
||||||
import space.luminic.budgerapp.services.TransferService
|
import space.luminic.budgerapp.services.TransferService
|
||||||
|
|
||||||
@@ -23,6 +24,11 @@ class TransferController(private val transferService: TransferService) {
|
|||||||
return transferService.getCategories()
|
return transferService.getCategories()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/recurrents")
|
||||||
|
fun recurrentTransactions(): Mono<List<Recurrent>> {
|
||||||
|
return transferService.recurrents()
|
||||||
|
}
|
||||||
|
|
||||||
@GetMapping("/budgets")
|
@GetMapping("/budgets")
|
||||||
fun budgets(): Mono<List<Budget>> {
|
fun budgets(): Mono<List<Budget>> {
|
||||||
return transferService.transferBudgets()
|
return transferService.transferBudgets()
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
package space.luminic.budgerapp.repos
|
||||||
|
|
||||||
|
import org.springframework.data.mongodb.repository.MongoRepository
|
||||||
|
import space.luminic.budgerapp.models.Recurrent
|
||||||
|
|
||||||
|
interface RecurrentRepoOld : MongoRepository<Recurrent, String>
|
||||||
@@ -7,13 +7,14 @@ import org.springframework.stereotype.Repository
|
|||||||
import space.luminic.budgerapp.models.Recurrent
|
import space.luminic.budgerapp.models.Recurrent
|
||||||
import space.luminic.budgerapp.models.Transaction
|
import space.luminic.budgerapp.models.Transaction
|
||||||
import space.luminic.budgerapp.models.TransactionType
|
import space.luminic.budgerapp.models.TransactionType
|
||||||
import space.luminic.budgerapp.services.CategoryService
|
import space.luminic.budgerapp.repos.CategoryRepoOld
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
class RecurrentRepoSQL(
|
class RecurrentRepoSQL(
|
||||||
private val jdbcTemplate: JdbcTemplate,
|
private val jdbcTemplate: JdbcTemplate,
|
||||||
private val categoryService: CategoryService
|
private val categoryRepoOld: CategoryRepoOld
|
||||||
) {
|
) {
|
||||||
private val logger = LoggerFactory.getLogger(RecurrentRepoSQL::class.java)
|
private val logger = LoggerFactory.getLogger(RecurrentRepoSQL::class.java)
|
||||||
|
|
||||||
@@ -26,7 +27,7 @@ class RecurrentRepoSQL(
|
|||||||
|
|
||||||
val recurrent = Recurrent(
|
val recurrent = Recurrent(
|
||||||
atDay = rs.getInt("at_day"),
|
atDay = rs.getInt("at_day"),
|
||||||
category = categoryService.getCategoryByName(rs.getString("c_name")).block()!!,
|
category = categoryRepoOld.findByName(rs.getString("c_name"))!!,
|
||||||
name = rs.getString("name"),
|
name = rs.getString("name"),
|
||||||
description = rs.getString("description"),
|
description = rs.getString("description"),
|
||||||
amount = rs.getInt("amount")
|
amount = rs.getInt("amount")
|
||||||
|
|||||||
@@ -5,21 +5,26 @@ import reactor.core.publisher.Flux
|
|||||||
import reactor.core.publisher.Mono
|
import reactor.core.publisher.Mono
|
||||||
import space.luminic.budgerapp.models.Budget
|
import space.luminic.budgerapp.models.Budget
|
||||||
import space.luminic.budgerapp.models.Category
|
import space.luminic.budgerapp.models.Category
|
||||||
|
import space.luminic.budgerapp.models.Recurrent
|
||||||
import space.luminic.budgerapp.models.Transaction
|
import space.luminic.budgerapp.models.Transaction
|
||||||
import space.luminic.budgerapp.repos.BudgetRepo
|
import space.luminic.budgerapp.repos.BudgetRepo
|
||||||
import space.luminic.budgerapp.repos.CategoryRepo
|
import space.luminic.budgerapp.repos.CategoryRepo
|
||||||
|
import space.luminic.budgerapp.repos.RecurrentRepo
|
||||||
import space.luminic.budgerapp.repos.TransactionRepo
|
import space.luminic.budgerapp.repos.TransactionRepo
|
||||||
import space.luminic.budgerapp.repos.sqlrepo.BudgetRepoSQL
|
import space.luminic.budgerapp.repos.sqlrepo.BudgetRepoSQL
|
||||||
import space.luminic.budgerapp.repos.sqlrepo.CategoriesRepoSQL
|
import space.luminic.budgerapp.repos.sqlrepo.CategoriesRepoSQL
|
||||||
|
import space.luminic.budgerapp.repos.sqlrepo.RecurrentRepoSQL
|
||||||
import space.luminic.budgerapp.repos.sqlrepo.TransactionsRepoSQl
|
import space.luminic.budgerapp.repos.sqlrepo.TransactionsRepoSQl
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
class TransferService(
|
class TransferService(
|
||||||
private val transactionsRepoSQl: TransactionsRepoSQl,
|
private val transactionsRepoSQl: TransactionsRepoSQl,
|
||||||
private val categoriesRepoSQL: CategoriesRepoSQL,
|
private val categoriesRepoSQL: CategoriesRepoSQL,
|
||||||
|
private val recurrentRepoSQL: RecurrentRepoSQL,
|
||||||
private val budgetRepoSQL: BudgetRepoSQL,
|
private val budgetRepoSQL: BudgetRepoSQL,
|
||||||
private val categoryRepo: CategoryRepo,
|
private val categoryRepo: CategoryRepo,
|
||||||
private val transactionRepo: TransactionRepo,
|
private val transactionRepo: TransactionRepo,
|
||||||
|
private val recurrentRepo: RecurrentRepo,
|
||||||
private val budgetService: BudgetService
|
private val budgetService: BudgetService
|
||||||
) {
|
) {
|
||||||
|
|
||||||
@@ -37,6 +42,13 @@ class TransferService(
|
|||||||
.collectList() // Преобразуем Flux<Category> в Mono<List<Category>>
|
.collectList() // Преобразуем Flux<Category> в Mono<List<Category>>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun recurrents(): Mono<List<Recurrent>> {
|
||||||
|
val recurrents = recurrentRepoSQL.getRecurrents()
|
||||||
|
return Flux.fromIterable(recurrents).flatMap { recurrent ->
|
||||||
|
recurrentRepo.save(recurrent)
|
||||||
|
}.collectList()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
fun transferBudgets(): Mono<List<Budget>> {
|
fun transferBudgets(): Mono<List<Budget>> {
|
||||||
val budgets = budgetRepoSQL.getBudgets()
|
val budgets = budgetRepoSQL.getBudgets()
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
spring.application.name=budger-app
|
spring.application.name=budger-app
|
||||||
|
|
||||||
spring.data.mongodb.host=127.0.0.1
|
spring.data.mongodb.host=213.226.71.138
|
||||||
spring.data.mongodb.port=27017
|
spring.data.mongodb.port=27017
|
||||||
spring.data.mongodb.database=budger-app
|
spring.data.mongodb.database=budger-app
|
||||||
|
spring.data.mongodb.username=budger-app
|
||||||
|
spring.data.mongodb.password=BA1q2w3e4r!
|
||||||
|
spring.data.mongodb.authentication-database=admin
|
||||||
|
|
||||||
|
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
spring.application.name=budger-app
|
spring.application.name=budger-app
|
||||||
|
|
||||||
|
|
||||||
spring.data.mongodb.host=213.226.71.138
|
spring.data.mongodb.host=127.0.0.1
|
||||||
spring.data.mongodb.port=27017
|
spring.data.mongodb.port=27017
|
||||||
spring.data.mongodb.database=budger-app
|
spring.data.mongodb.database=budger-app
|
||||||
spring.data.mongodb.username=budger-app
|
spring.data.mongodb.username=budger-app
|
||||||
@@ -19,7 +19,7 @@ logging.level.org.springframework.data = INFO
|
|||||||
logging.level.org.springframework.data.mongodb.core.ReactiveMongoTemplate=INFO
|
logging.level.org.springframework.data.mongodb.core.ReactiveMongoTemplate=INFO
|
||||||
logging.level.org.springframework.security = INFO
|
logging.level.org.springframework.security = INFO
|
||||||
logging.level.org.springframework.data.mongodb.code = INFO
|
logging.level.org.springframework.data.mongodb.code = INFO
|
||||||
logging.level.org.springframework.web.reactive=INFO
|
logging.level.org.springframework.web.reactive=INFO<EFBFBD>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ server.port=8082
|
|||||||
#server.servlet.context-path=/api
|
#server.servlet.context-path=/api
|
||||||
spring.webflux.base-path=/api
|
spring.webflux.base-path=/api
|
||||||
|
|
||||||
spring.profiles.active=prod
|
spring.profiles.active=dev
|
||||||
spring.main.web-application-type=reactive
|
spring.main.web-application-type=reactive
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user