aboutsummaryrefslogtreecommitdiff
path: root/src/cmd_invoices.c
diff options
context:
space:
mode:
authorAnders Betts <anders.betts@gmail.com>2026-09-21 09:47:50 +0200
committerAnders Betts <anders.betts@gmail.com>2026-09-21 11:01:07 +0200
commitb1956aa73a533702ccbc3d7713ea90dd5ae44b9b (patch)
tree7d3d4c8db28cbe15cfdf916f74ea7d77a5666414 /src/cmd_invoices.c
parente25a8c9ae70e5a310c1a82be55d0dbf58ba71250 (diff)
downloadbokf-b1956aa73a533702ccbc3d7713ea90dd5ae44b9b.tar.gz
bokf-b1956aa73a533702ccbc3d7713ea90dd5ae44b9b.zip
commands: db_row_json and db_exec_bound helpers
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'src/cmd_invoices.c')
-rw-r--r--src/cmd_invoices.c26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/cmd_invoices.c b/src/cmd_invoices.c
index 4bce5ee..0892ac8 100644
--- a/src/cmd_invoices.c
+++ b/src/cmd_invoices.c
@@ -885,28 +885,10 @@ done:
static yyjson_mut_val *invoice_row_json(struct req *r, sqlite3_stmt *st)
{
- yyjson_mut_val *o = yyjson_mut_obj(r->rdoc);
- yyjson_mut_obj_add_int(r->rdoc, o, "line_no",
- sqlite3_column_int64(st, 0));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "article_no",
- sq(sqlite3_column_text(st, 1)));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "description",
- sq(sqlite3_column_text(st, 2)));
- yyjson_mut_obj_add_int(r->rdoc, o, "quantity_milli",
- sqlite3_column_int64(st, 3));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "unit",
- sq(sqlite3_column_text(st, 4)));
- yyjson_mut_obj_add_int(r->rdoc, o, "unit_price_ore",
- sqlite3_column_int64(st, 5));
- yyjson_mut_obj_add_int(r->rdoc, o, "amount_ore",
- sqlite3_column_int64(st, 6));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "note",
- sq(sqlite3_column_text(st, 7)));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "vat_code",
- sq(sqlite3_column_text(st, 8)));
- yyjson_mut_obj_add_strcpy(r->rdoc, o, "account",
- sq(sqlite3_column_text(st, 9)));
- return o;
+ return db_row_json(r->rdoc, st,
+ "line_no:i,article_no:s,description:s,"
+ "quantity_milli:i,unit:s,unit_price_ore:i,"
+ "amount_ore:i,note:s,vat_code:s,account:s");
}
#define INVOICE_ROW_COLUMNS \