Compare commits

..

6 commits
v3.4.3 ... main

4 changed files with 44 additions and 11 deletions

View file

@ -1,4 +1,4 @@
FROM golang:1.21.4 as build
FROM golang:1.23.1 as build
LABEL author="vlbeaudoin"

View file

@ -10,9 +10,9 @@ Nécessite une installation fonctionnelle et accessible de [agecem/bottin](https
Remplir .env avec données d'environnement:
```
BOTTINAGENDA_POSTGRES_DATABASE=bottin-agenda
BOTTINAGENDA_POSTGRES_PASSWORD=bottin-agenda
BOTTINAGENDA_POSTGRES_USER=bottin-agenda
BOTTINAGENDA_DB_DATABASE=bottin-agenda
BOTTINAGENDA_DB_PASSWORD=bottin-agenda
BOTTINAGENDA_DB_USER=bottin-agenda
```
Déployer avec docker-compose:

View file

@ -90,7 +90,24 @@ func (d *DataClient) InsertTransactions(transactions []models.Transaction) ([]mo
return rowsInserted, errors.New("Impossible d'insérer une transaction sans membre_id")
}
rows, err := tx.NamedQuery("INSERT INTO transactions (membre_id, given_at, is_perpetual) VALUES (:membre_id, current_timestamp, :is_perpetual) RETURNING id, membre_id, is_perpetual;", &transaction)
rows, err := tx.NamedQuery(`
INSERT INTO
transactions (
membre_id,
given_at,
is_perpetual
)
VALUES
(
:membre_id,
current_timestamp,
:is_perpetual
)
RETURNING
id,
membre_id,
is_perpetual;
`, &transaction)
if err != nil {
return rowsInserted, err
}
@ -117,8 +134,16 @@ func (d *DataClient) InsertTransactions(transactions []models.Transaction) ([]mo
func (d *DataClient) GetTransaction(membreID string, is_perpetual bool) (models.Transaction, error) {
var transaction models.Transaction
//err := d.DB.NamedQuery("SELECT * FROM transactions WHERE membre_id=:membre_id AND is_perpetual=:is_perpetual LIMIT 1;"
err := d.DB.Get(&transaction, "SELECT * FROM transactions WHERE membre_id = $1 AND is_perpetual = $2 LIMIT 1;", membreID, is_perpetual)
err := d.DB.Get(&transaction, `
SELECT
*
FROM
transactions
WHERE
membre_id = $1 AND
is_perpetual = $2
LIMIT 1;
`, membreID, is_perpetual)
if err != nil {
return transaction, err
}
@ -132,7 +157,13 @@ func (d *DataClient) GetTransaction(membreID string, is_perpetual bool) (models.
func (d *DataClient) ListTransactions() ([]models.Transaction, error) {
var transactions []models.Transaction
if err := d.DB.Select(&transactions, "SELECT * FROM transactions LIMIT 20000;"); err != nil {
if err := d.DB.Select(&transactions, `
SELECT
*
FROM
transactions
LIMIT 20000;
`); err != nil {
return transactions, err
}

View file

@ -3,9 +3,9 @@ services:
db:
image: 'docker.io/library/postgres:16.1'
environment:
POSTGRES_DATABASE: "${BOTTINAGENDA_POSTGRES_DATABASE}"
POSTGRES_PASSWORD: "${BOTTINAGENDA_POSTGRES_PASSWORD}"
POSTGRES_USER: "${BOTTINAGENDA_POSTGRES_USER}"
POSTGRES_DATABASE: "${BOTTINAGENDA_DB_DATABASE:?}"
POSTGRES_PASSWORD: "${BOTTINAGENDA_DB_PASSWORD:?}"
POSTGRES_USER: "${BOTTINAGENDA_DB_USER:?}"
volumes:
- 'db-data:/var/lib/postgresql/data'
restart: 'unless-stopped'
@ -14,6 +14,7 @@ services:
depends_on:
- db
build: .
env_file: '.env'
image: 'git.agecem.com/agecem/bottin-agenda:latest'
ports:
- '1313:1313'
@ -26,6 +27,7 @@ services:
depends_on:
- api
build: .
env_file: '.env'
image: 'git.agecem.com/agecem/bottin-agenda:latest'
ports:
- '2313:2313'