Class TransactionApiController
java.lang.Object
com.bluebell.greenhouse.planter.controllers.transaction.TransactionApiController
@RestController
@RequestMapping("${bluebell.base.api.controller.endpoint}/transaction")
@CrossOrigin(origins="*",
methods={GET,DELETE,POST,PUT})
public class TransactionApiController
extends Object
Api Controller for
Transaction.- Version:
- 3.0.6
- Author:
- Stephen Prizio
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<Boolean> Deletes aTransactionwith the matching name & account.org.springframework.http.ResponseEntity<List<TransactionDTO>> org.springframework.http.ResponseEntity<TransactionDTO> Returns aTransactionfor the given name and account.org.springframework.http.ResponseEntity<org.springframework.core.io.ByteArrayResource> getTransactionReport(AccountRequestContext context, String headerProfile) Generates a csv report for the given account's transactions.org.springframework.http.ResponseEntity<PaginatedTransactionDTO> getTransactionsWithinIntervalPaged(AccountRequestContext context, TransactionSearchRequest searchRequest) Returns aResponseEntitycontainingTransactions for the given interval of time.org.springframework.http.ResponseEntity<TransactionDTO> postCreateNewTransaction(@Valid CreateUpdateTransactionDTO data, AccountRequestContext context) Creates aTransaction.org.springframework.http.ResponseEntity<Boolean> postImportTransactions(AccountRequestContext context, String timeZone, org.springframework.web.multipart.MultipartFile file) Imports transactions from a CSV file.org.springframework.http.ResponseEntity<List<TransactionDTO>> putAssignTransactionsToPosition(@Valid AssignTransactionsToPositionDTO data, AccountRequestContext context) Assigns multiple account transactions to a position.org.springframework.http.ResponseEntity<TransactionDTO> putUpdateTransaction(TransactionRequestContext context, @Valid CreateUpdateTransactionDTO data) Returns an updatedTransaction.
-
Constructor Details
-
TransactionApiController
public TransactionApiController()
-
-
Method Details
-
getRecentTransactionsForAccount
@GetMapping("/get-recent-for-account") public org.springframework.http.ResponseEntity<List<TransactionDTO>> getRecentTransactionsForAccount(@ResolvedAccount AccountRequestContext context) - Parameters:
context-AccountRequestContext- Returns:
ResponseEntity
-
getTransactionForNumberAndAccount
@GetMapping("/get-by-number-for-account") public org.springframework.http.ResponseEntity<TransactionDTO> getTransactionForNumberAndAccount(@ResolvedTransaction(accountFirst=false) TransactionRequestContext context) Returns aTransactionfor the given name and account.- Parameters:
context-TransactionRequestContext- Returns:
ResponseEntity
-
getTransactionsWithinIntervalPaged
@GetMapping("/get-for-interval-paged") public org.springframework.http.ResponseEntity<PaginatedTransactionDTO> getTransactionsWithinIntervalPaged(@ResolvedAccount AccountRequestContext context, @ModelAttribute TransactionSearchRequest searchRequest) Returns aResponseEntitycontainingTransactions for the given interval of time.- Parameters:
context-AccountRequestContextsearchRequest-TransactionSearchRequest- Returns:
ResponseEntity
-
getTransactionReport
@GetMapping(value="/get-report", produces="text/csv") public org.springframework.http.ResponseEntity<org.springframework.core.io.ByteArrayResource> getTransactionReport(@ResolvedAccount AccountRequestContext context, @RequestParam(value="reportHeaders",defaultValue="minimal") String headerProfile) throws IOException Generates a csv report for the given account's transactions.- Parameters:
context-AccountRequestContextheaderProfile- header profile- Returns:
ResponseEntitywithByteArrayResourcefor download- Throws:
IOException- io file exception
-
postImportTransactions
@PostMapping(value="/import-transactions", consumes="multipart/form-data") public org.springframework.http.ResponseEntity<Boolean> postImportTransactions(@ResolvedAccount AccountRequestContext context, @RequestParam(value="timeZone",required=false) String timeZone, @RequestPart("file") org.springframework.web.multipart.MultipartFile file) throws IOException Imports transactions from a CSV file.- Parameters:
context-AccountRequestContexttimeZone- optional timezone for non-offset timestamps in the import filefile-MultipartFile- Returns:
ResponseEntity- Throws:
IOException- io exception
-
postCreateNewTransaction
@PostMapping("/create-transaction") public org.springframework.http.ResponseEntity<TransactionDTO> postCreateNewTransaction(@Valid @RequestBody @Valid CreateUpdateTransactionDTO data, @ResolvedAccount AccountRequestContext context) Creates aTransaction.- Parameters:
data-CreateUpdateTransactionDTOcontext-AccountRequestContext- Returns:
ResponseEntity
-
putAssignTransactionsToPosition
@PutMapping("/assign-transactions-to-position") public org.springframework.http.ResponseEntity<List<TransactionDTO>> putAssignTransactionsToPosition(@Valid @RequestBody @Valid AssignTransactionsToPositionDTO data, @ResolvedAccount AccountRequestContext context) Assigns multiple account transactions to a position.- Parameters:
data-AssignTransactionsToPositionDTOcontext-AccountRequestContext- Returns:
ListofTransactionDTOs
-
putUpdateTransaction
@PutMapping("/update-transaction") public org.springframework.http.ResponseEntity<TransactionDTO> putUpdateTransaction(@ResolvedTransaction TransactionRequestContext context, @Valid @RequestBody @Valid CreateUpdateTransactionDTO data) Returns an updatedTransaction.- Parameters:
context-TransactionRequestContextdata-CreateUpdateTransactionDTO- Returns:
ResponseEntity
-
deleteTransaction
@DeleteMapping("/delete-transaction") public org.springframework.http.ResponseEntity<Boolean> deleteTransaction(@ResolvedTransaction(accountFirst=false) TransactionRequestContext context) Deletes aTransactionwith the matching name & account.- Parameters:
context-TransactionRequestContext- Returns:
ResponseEntity
-