|
1 | 1 | import { getTaxonomyManager, TaxonomyRootName } from "@/util/TaxonomyManager.ts"; |
2 | | -import { getOrCreateBeloppradInList } from "@/model/arsredovisning/Belopprad.ts"; |
| 2 | +import { getOrCreateBeloppradInList, getTaxonomyItemForBelopprad } from "@/model/arsredovisning/Belopprad.ts"; |
3 | 3 | import { isBeloppradComparable } from "@/model/arsredovisning/beloppradtyper/BaseBeloppradComparable.ts"; |
4 | 4 | import Decimal from "decimal.js"; |
5 | 5 | import type { Arsredovisning, Verksamhetsar } from "@/model/arsredovisning/Arsredovisning.ts"; |
@@ -87,6 +87,42 @@ export async function autofillSoliditet(arsredovisning: Arsredovisning) { |
87 | 87 | } |
88 | 88 | } |
89 | 89 |
|
| 90 | +/** |
| 91 | + * Fyller automatiskt i notnummer för raden för personalkostnader i |
| 92 | + * resultaträkningen, om det finns en not för medelantalet anställda. |
| 93 | + * |
| 94 | + * @param arsredovisning - Årsredovisningen som ska få notnumret ifyllt |
| 95 | + */ |
| 96 | +export async function autofillPersonalkostnaderNot( |
| 97 | + arsredovisning: Arsredovisning, |
| 98 | +) { |
| 99 | + const personalkostnaderBelopprad = arsredovisning.resultatrakning.find( |
| 100 | + (belopprad) => |
| 101 | + belopprad.taxonomyItemName === "se-gen-base:Personalkostnader", |
| 102 | + ); |
| 103 | + const notMedelandataletAnstalldaBelopprad = arsredovisning.noter.find( |
| 104 | + (belopprad) => |
| 105 | + belopprad.taxonomyItemName === "se-gen-base:NotMedelantaletAnstallda", |
| 106 | + ); |
| 107 | + |
| 108 | + if ( |
| 109 | + personalkostnaderBelopprad != null && |
| 110 | + notMedelandataletAnstalldaBelopprad != null |
| 111 | + ) { |
| 112 | + const taxonomyManagerNoter = await getTaxonomyManager( |
| 113 | + TaxonomyRootName.NOTER, |
| 114 | + ); |
| 115 | + personalkostnaderBelopprad.not = ( |
| 116 | + arsredovisning.noter |
| 117 | + .filter( |
| 118 | + (b) => |
| 119 | + getTaxonomyItemForBelopprad(taxonomyManagerNoter, b).level === 2, |
| 120 | + ) |
| 121 | + .indexOf(notMedelandataletAnstalldaBelopprad) + 1 |
| 122 | + ).toString(); |
| 123 | + } |
| 124 | +} |
| 125 | + |
90 | 126 | // Bolagsskatt per år (räkenskapsår som inleds 2021, 2022, osv) |
91 | 127 | const BOLAGSSKATT_PER_AR: { [ar: string]: string } = { |
92 | 128 | "2021": "20.6", |
|
0 commit comments