+ google drive

This commit is contained in:
xds
2026-03-10 15:11:09 +03:00
parent cbcd21946c
commit 35852ae0c9
18 changed files with 198 additions and 37 deletions

View File

@@ -1,5 +1,8 @@
package space.luminic.finance.api
import org.springframework.http.HttpHeaders
import org.springframework.http.MediaType
import org.springframework.http.ResponseEntity
import io.swagger.v3.oas.annotations.enums.SecuritySchemeType
import io.swagger.v3.oas.annotations.security.SecurityScheme
import org.springframework.web.bind.annotation.*
@@ -26,6 +29,18 @@ class TransactionController (
return transactionService.getTransactions(spaceId, filter).map { it.toDto() }
}
@PostMapping("/_export")
fun exportExcel(@PathVariable spaceId: Int, @RequestBody filter: TransactionService.TransactionsFilter): ResponseEntity<ByteArray> {
val excelBytes = transactionService.generateExcel(spaceId, filter)
val headers = HttpHeaders()
headers.contentType = MediaType.APPLICATION_OCTET_STREAM
headers.setContentDispositionFormData("attachment", "transactions.xlsx")
return ResponseEntity.ok()
.headers(headers)
.body(excelBytes)
}
@GetMapping("/{transactionId}")
fun getTransaction(@PathVariable spaceId: Int, @PathVariable transactionId: Int): TransactionDTO {
return transactionService.getTransaction(spaceId, transactionId).toDto()