This commit is contained in:
Victor Lacasse-Beaudoin 2024-12-30 19:44:56 -05:00
parent 1e19ab222e
commit 12f41c83b9
3 changed files with 18 additions and 6 deletions

12
db.go
View file

@ -59,6 +59,18 @@ VALUES (
);
`, transaction.MembreID, transaction.IsPerpetual)
if err != nil {
if err.Error() == `ERROR: duplicate key value violates unique constraint "transactions_pkey" (SQLSTATE 23505)` {
return fmt.Errorf("Membre '%s' a déjà reçu son agenda %s.",
transaction.MembreID,
func() string {
if transaction.IsPerpetual {
return "perpétuel"
} else {
return "non-perpétuel"
}
}(),
)
}
return err
}

View file

@ -97,7 +97,7 @@ func UICreateTransaction(ctx context.Context, cfg Config, bottinClient *bottin.A
membreID := c.FormValue("membre_id")
if membreID == "" {
return fmt.Errorf("👎 Aucun numéro étudiant sélectionné. Assurez-vous de cliquer sur la case 'Numéro étudiant:' avant de scanner.")
return fmt.Errorf("Aucun numéro étudiant sélectionné. Assurez-vous de cliquer sur la case 'Numéro étudiant:' avant de scanner.")
}
//TODO check if membre already received before checking bottin
@ -106,13 +106,13 @@ func UICreateTransaction(ctx context.Context, cfg Config, bottinClient *bottin.A
membreResponse, err := bottinClient.ReadMembre(ctx, membreID)
if err != nil {
if err.Error() == "400 no rows in result set" {
return fmt.Errorf("👎 Numéro étudiant introuvable %s", membreID)
return fmt.Errorf("Numéro étudiant introuvable %s", membreID)
}
return err
}
if membreResponse.Data.Membre.ID != membreID {
return fmt.Errorf("👎 Bottin a retourné '%s' en demandant '%s'", membreID, membreResponse.Data.Membre.ID)
return fmt.Errorf("Bottin a retourné '%s' en demandant '%s'", membreID, membreResponse.Data.Membre.ID)
}
// dbclient.CreateTransaction
@ -124,7 +124,7 @@ func UICreateTransaction(ctx context.Context, cfg Config, bottinClient *bottin.A
}
// Prepare result message
d.Result = fmt.Sprintf("👍 Membre %s peut recevoir son agenda %s",
d.Result = fmt.Sprintf("Membre %s peut recevoir son agenda %s",
membreID,
func() string {
if isPerpetual {

View file

@ -112,8 +112,8 @@ button {
</ul>
</form>
{{ if .Error }}<p class="result">Erreur: {{ .Error }}</p>{{ end }}
{{ if .Result }}<p class="result">{{ .Result }}</p>{{ end }}
{{ if .Error }}<p class="result">👎 {{ .Error }}</p>{{ end }}
{{ if .Result }}<p class="result">👍 {{ .Result }}</p>{{ end }}
</body>