9 Commits

Author SHA1 Message Date
13d752e69a
Support modifying a transaction category
through the PUT /transactions/{transactionId} method.

Restrict the PUT to changing only the category. The other existing
attributes should remain immutable.
Remove the body of the PUT response, it isn't required, and it was
returning a 204, which shouldn't have it.

This patch also extracts the CategoryName as a separate component on the
OpenAPI spec, so that it can be reused on the Transaction.

Issues #26 and #23
2024-06-23 23:03:58 +01:00
9ac249199b
Implements GET /categories
Adds type to OpenAPI. Feature done and tested E2E.
Adds common utilities package named "golang" to overcome language
deficiencies.

Issue #27
2024-06-23 22:01:50 +01:00
18c93b6c0f
Fix resources naming scheme
The accepted practice is to retain the collection name even for a single
resource operation, like getting a specific transaction.

Also moves the PUT /transactions to /transactions/{id} which makes it
clearer that it can only be applied to an already created transaction.
2024-06-22 22:34:14 +01:00
55bd87c864
Implements /transactions PUT method
Adds PUT method to OpenAPI spec.

Given that the transaction IDs are generated on server-side, for the PUT
method to remain idempotent, it can only update existing transactions.

It also adds a TransactionExists method on the DAL.

Issue: #20
2024-06-22 22:30:00 +01:00
4c82ca0e2b
Implements /transactions POST method
It adds the method to the OpenAPI spec and generates a new server
config. The requirement for the ID on the Transaction component is
removed, so that it can be reused for insertions.
It also adds two new middlewares, a logging and a spec validator. If a
request does not follow the spec, a 400 is returned immediately.

Issue: #18
2024-06-22 20:11:52 +01:00
26302b78d4
Implements /bank/{id} GET method
The API had to change, the ID of a bank is its shortform name, so it's
a string.

Issue #15
2024-05-18 23:39:58 +01:00
18fc469637
API: fix no banks/transactions status code
No content on the GET response from the banks/tarnsactions methods
should be a 204.
2024-05-18 23:21:24 +01:00
d162eeee3d
Reword method for retrieving single bank/transaction
Changed to the singular of the word.
Generated new server implementation.
2024-04-27 20:33:50 +01:00
eddb62b512
OpenAPI spec including transactions and banks 2024-02-25 11:08:30 +00:00