fix(arsredovisning): make the aktiekapital note completable via compa… (#1118)
* fix(arsredovisning): make the aktiekapital note completable via company settings The annual report warned every AB that the aktiekapital note was missing and pointed at Installningar -> Foretag, but the referenced columns (aktiekapital, antal_aktier, kvotvarde) never existed and no settings UI was ever built, so the warning was a dead end and no AB could produce a complete note before Bolagsverket filing. - migration 20260723103000: company_settings.aktiekapital (numeric) and antal_aktier (integer) with positive CHECKs; kvotvarde is intentionally not stored since ABL 1 kap 6 defines it as aktiekapital / antal aktier - build-data.ts (K2 and K3 note paths): select only the two stored columns and derive kvotvarde with roundOre - UpdateSettingsSchema: aktiekapital (positive), antal_aktier (positive integer), both nullable to allow clearing - new ShareCapitalForm section on Installningar -> Foretag, rendered for aktiebolag only, with live derived kvotvarde display; wired through the existing CompanySettingsContent save path (empty string clears to null) - sv/en strings; settings route tests (round-trip, clear, 400 on invalid); builder tests for derived kvotvarde and the empty-settings warning Staging (metjnjrhvujscngnpzdv) already has the columns applied and the note verified end-to-end against a rehearsal company. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(arsredovisning): address PR review findings on the share-capital note - enforce aktiekapital/antal_aktier as an all-or-nothing pair (DB CHECK, K2/K3 note guard now requires both, partial pair warns instead) - numeric(15,2) column, .int() Zod constraint, maxFractionDigits 0 render - guard numberOrNull against NaN; align kvotvarde preview with schema - strengthen clearing test, add fractional and partial-pair tests Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
466e55a015
commit
b0044bfe98
@@ -1322,6 +1322,12 @@
|
||||
},
|
||||
"settings_company": {
|
||||
"company_info_heading": "Company details",
|
||||
"share_capital_heading": "Share capital",
|
||||
"aktiekapital_label": "Share capital (SEK)",
|
||||
"aktiekapital_help": "Registered share capital per Bolagsverket. Used in the annual report note on share capital.",
|
||||
"antal_aktier_label": "Number of shares",
|
||||
"antal_aktier_help": "Total number of shares per Bolagsverket.",
|
||||
"kvotvarde_display": "Quota value per share: {value}",
|
||||
"company_name_label": "Company name",
|
||||
"company_name_help": "Shown on invoices, emails and declaration files. For a sole trader it is usually your own name (First Last).",
|
||||
"org_number_label": "Organisation number",
|
||||
|
||||
@@ -1322,6 +1322,12 @@
|
||||
},
|
||||
"settings_company": {
|
||||
"company_info_heading": "Företagsuppgifter",
|
||||
"share_capital_heading": "Aktiekapital",
|
||||
"aktiekapital_label": "Aktiekapital (kr)",
|
||||
"aktiekapital_help": "Registrerat aktiekapital enligt Bolagsverket. Används i årsredovisningens not om aktiekapital.",
|
||||
"antal_aktier_label": "Antal aktier",
|
||||
"antal_aktier_help": "Totalt antal aktier enligt Bolagsverket.",
|
||||
"kvotvarde_display": "Kvotvärde per aktie: {value}",
|
||||
"company_name_label": "Företagsnamn",
|
||||
"company_name_help": "Visas på fakturor, e-post och deklarationsfiler. För enskild firma är det vanligtvis ditt eget namn (Förnamn Efternamn).",
|
||||
"org_number_label": "Organisationsnummer",
|
||||
|
||||
Reference in New Issue
Block a user