@rubydogjp/openkk-client-domain 26.1.12 → 26.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/archive/fiscal-period-archive-zip.d.ts +12 -0
- package/dist/archive/fiscal-period-archive-zip.d.ts.map +1 -0
- package/dist/archive/fiscal-period-archive-zip.js +299 -0
- package/dist/archive/fiscal-period-archive-zip.js.map +1 -0
- package/dist/archive/fiscal-period-archive.d.ts +3 -2
- package/dist/archive/fiscal-period-archive.d.ts.map +1 -1
- package/dist/archive/fiscal-period-archive.js +8 -180
- package/dist/archive/fiscal-period-archive.js.map +1 -1
- package/dist/assist/fixed-asset-data.d.ts +20 -20
- package/dist/assist/fixed-asset-data.d.ts.map +1 -1
- package/dist/assist/fixed-asset-depreciation.d.ts.map +1 -1
- package/dist/assist/fixed-asset-depreciation.js +2 -7
- package/dist/assist/fixed-asset-depreciation.js.map +1 -1
- package/dist/assist/fixed-asset-draft.d.ts +17 -0
- package/dist/assist/fixed-asset-draft.d.ts.map +1 -0
- package/dist/assist/fixed-asset-draft.js +105 -0
- package/dist/assist/fixed-asset-draft.js.map +1 -0
- package/dist/assist/opening-carryover.d.ts +10 -14
- package/dist/assist/opening-carryover.d.ts.map +1 -1
- package/dist/entries/book-account.d.ts +13 -0
- package/dist/entries/book-account.d.ts.map +1 -0
- package/dist/entries/book-account.js +11 -0
- package/dist/entries/book-account.js.map +1 -0
- package/dist/entries/category-resolution.d.ts +5 -0
- package/dist/entries/category-resolution.d.ts.map +1 -0
- package/dist/entries/category-resolution.js +11 -0
- package/dist/entries/category-resolution.js.map +1 -0
- package/dist/entries/default-master-data.d.ts.map +1 -1
- package/dist/entries/default-master-data.js +1 -4
- package/dist/entries/default-master-data.js.map +1 -1
- package/dist/entries/entries-types.d.ts +18 -10
- package/dist/entries/entries-types.d.ts.map +1 -1
- package/dist/entries/entry-limits.d.ts +9 -0
- package/dist/entries/entry-limits.d.ts.map +1 -0
- package/dist/entries/entry-limits.js +41 -0
- package/dist/entries/entry-limits.js.map +1 -0
- package/dist/entries/entry-record.d.ts +26 -26
- package/dist/entries/entry-record.d.ts.map +1 -1
- package/dist/entries/entry-record.js +96 -71
- package/dist/entries/entry-record.js.map +1 -1
- package/dist/entries/generated-master-data.d.ts +2 -2
- package/dist/entries/generated-master-data.d.ts.map +1 -1
- package/dist/entries/import-export.d.ts +3 -1
- package/dist/entries/import-export.d.ts.map +1 -1
- package/dist/entries/import-export.js +365 -123
- package/dist/entries/import-export.js.map +1 -1
- package/dist/entries/quick-guide-data.d.ts +20 -18
- package/dist/entries/quick-guide-data.d.ts.map +1 -1
- package/dist/entries/quick-guide-data.js +191 -21
- package/dist/entries/quick-guide-data.js.map +1 -1
- package/dist/entries/virtual-entries.d.ts +21 -23
- package/dist/entries/virtual-entries.d.ts.map +1 -1
- package/dist/entries/virtual-entries.js +144 -246
- package/dist/entries/virtual-entries.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/print/entry-metadata.d.ts +3 -0
- package/dist/print/entry-metadata.d.ts.map +1 -0
- package/dist/print/entry-metadata.js +14 -0
- package/dist/print/entry-metadata.js.map +1 -0
- package/dist/print/examples/general-ledger-example.d.ts +1 -1
- package/dist/print/examples/general-ledger-example.d.ts.map +1 -1
- package/dist/print/examples/general-ledger-example.js +4 -4
- package/dist/print/examples/general-ledger-example.js.map +1 -1
- package/dist/print/examples/journal-example.d.ts.map +1 -1
- package/dist/print/examples/journal-example.js +158 -12
- package/dist/print/examples/journal-example.js.map +1 -1
- package/dist/print/financial-statements-print.d.ts +1 -1
- package/dist/print/financial-statements-print.d.ts.map +1 -1
- package/dist/print/financial-statements-print.js +39 -39
- package/dist/print/financial-statements-print.js.map +1 -1
- package/dist/print/fs-data.d.ts +2 -6
- package/dist/print/fs-data.d.ts.map +1 -1
- package/dist/print/fs-data.js +106 -59
- package/dist/print/fs-data.js.map +1 -1
- package/dist/print/general-ledger-print.d.ts.map +1 -1
- package/dist/print/general-ledger-print.js +153 -61
- package/dist/print/general-ledger-print.js.map +1 -1
- package/dist/print/journal-print.d.ts.map +1 -1
- package/dist/print/journal-print.js +63 -22
- package/dist/print/journal-print.js.map +1 -1
- package/dist/shared/app-error.d.ts +6 -8
- package/dist/shared/app-error.d.ts.map +1 -1
- package/dist/shared/app-error.js +28 -73
- package/dist/shared/app-error.js.map +1 -1
- package/dist/shared/bootstrap-data.d.ts +0 -10
- package/dist/shared/bootstrap-data.d.ts.map +1 -1
- package/dist/shared/bootstrap-data.js +1 -144
- package/dist/shared/bootstrap-data.js.map +1 -1
- package/dist/shared/brand-config.d.ts +3 -3
- package/dist/shared/brand-config.d.ts.map +1 -1
- package/dist/shared/models.d.ts +28 -33
- package/dist/shared/models.d.ts.map +1 -1
- package/dist/shared/openkk-config.d.ts +22 -22
- package/dist/shared/openkk-config.d.ts.map +1 -1
- package/dist/shared/openkk-config.js +18 -5
- package/dist/shared/openkk-config.js.map +1 -1
- package/dist/shared/parse-utils.d.ts +6 -1
- package/dist/shared/parse-utils.d.ts.map +1 -1
- package/dist/shared/parse-utils.js +13 -1
- package/dist/shared/parse-utils.js.map +1 -1
- package/dist/shared/period-lock.d.ts +1 -3
- package/dist/shared/period-lock.d.ts.map +1 -1
- package/dist/shared/period-lock.js +3 -13
- package/dist/shared/period-lock.js.map +1 -1
- package/dist/shared/text-limits.d.ts +3 -0
- package/dist/shared/text-limits.d.ts.map +1 -0
- package/dist/shared/text-limits.js +7 -0
- package/dist/shared/text-limits.js.map +1 -0
- package/dist/shared/user.d.ts +2 -3
- package/dist/shared/user.d.ts.map +1 -1
- package/dist/shared/user.js +1 -1
- package/dist/shared/user.js.map +1 -1
- package/dist/steps/next-fiscal-period.d.ts +3 -26
- package/dist/steps/next-fiscal-period.d.ts.map +1 -1
- package/dist/steps/next-fiscal-period.js +37 -83
- package/dist/steps/next-fiscal-period.js.map +1 -1
- package/dist/steps/period-check.d.ts +9 -0
- package/dist/steps/period-check.d.ts.map +1 -1
- package/dist/steps/period-check.js +6 -0
- package/dist/steps/period-check.js.map +1 -1
- package/dist/steps/step-derivation.d.ts +1 -1
- package/dist/steps/step-derivation.d.ts.map +1 -1
- package/dist/steps/step-derivation.js +1 -1
- package/dist/steps/step-derivation.js.map +1 -1
- package/dist/steps/step-trend.d.ts +2 -4
- package/dist/steps/step-trend.d.ts.map +1 -1
- package/dist/steps/step-trend.js +11 -7
- package/dist/steps/step-trend.js.map +1 -1
- package/dist/steps/summary.d.ts +2 -16
- package/dist/steps/summary.d.ts.map +1 -1
- package/dist/steps/summary.js +4 -43
- package/dist/steps/summary.js.map +1 -1
- package/dist/steps/year-month.d.ts +2 -3
- package/dist/steps/year-month.d.ts.map +1 -1
- package/dist/steps/year-month.js +4 -1
- package/dist/steps/year-month.js.map +1 -1
- package/package.json +2 -2
- package/dist/entries/example-entries.d.ts +0 -7
- package/dist/entries/example-entries.d.ts.map +0 -1
- package/dist/entries/example-entries.js +0 -97
- package/dist/entries/example-entries.js.map +0 -1
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
export type
|
|
1
|
+
export type FixedAssetStatus = "償却中" | "完了" | "売却済" | "廃棄済";
|
|
2
|
+
export type FixedAsset = {
|
|
2
3
|
id: string;
|
|
3
|
-
fiscalPeriodId
|
|
4
|
+
fiscalPeriodId: string;
|
|
4
5
|
name: string;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
disposalDate?: string;
|
|
19
|
-
disposalPrice?: string;
|
|
6
|
+
accountName: string;
|
|
7
|
+
bookAccountId: string;
|
|
8
|
+
status: FixedAssetStatus;
|
|
9
|
+
acquisitionDate: string;
|
|
10
|
+
acquisitionCost: number;
|
|
11
|
+
usefulLife: number;
|
|
12
|
+
businessRate: number;
|
|
13
|
+
disposalDate: string | null;
|
|
14
|
+
disposalPrice: number | null;
|
|
15
|
+
depreciationStartLabel: string;
|
|
16
|
+
remainingDepreciationLabel: string;
|
|
17
|
+
depreciationProgress: number;
|
|
18
|
+
currentBookValue: number;
|
|
20
19
|
};
|
|
21
20
|
export type FixedAssetDraft = {
|
|
22
21
|
name: string;
|
|
@@ -25,8 +24,9 @@ export type FixedAssetDraft = {
|
|
|
25
24
|
acquisitionCost: string;
|
|
26
25
|
usefulLife: number;
|
|
27
26
|
businessRatePercent: number;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
businessRate: number | null;
|
|
28
|
+
status: FixedAssetStatus;
|
|
29
|
+
disposalDate: string | null;
|
|
30
|
+
disposalPrice: string | null;
|
|
31
31
|
};
|
|
32
32
|
//# sourceMappingURL=fixed-asset-data.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixed-asset-data.d.ts","sourceRoot":"","sources":["../../src/assist/fixed-asset-data.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"fixed-asset-data.d.ts","sourceRoot":"","sources":["../../src/assist/fixed-asset-data.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;AAE5D,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,gBAAgB,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,0BAA0B,EAAE,MAAM,CAAC;IACnC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,gBAAgB,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixed-asset-depreciation.d.ts","sourceRoot":"","sources":["../../src/assist/fixed-asset-depreciation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fixed-asset-depreciation.d.ts","sourceRoot":"","sources":["../../src/assist/fixed-asset-depreciation.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,6BAA6B,GAAG;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAWF,MAAM,MAAM,uBAAuB,GAAG;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,IAAI,CAAC;IACtB,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,uBAAuB,GAC7B,MAAM,CAiBR;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,6BAA6B,GACnC,oBAAoB,CAmDtB"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
// 定額法(straight-line)の減価償却計算。
|
|
2
|
-
// 固定資産の「真実」は取得価額・取得日・耐用年数で、簿価・進捗・当期償却費などの
|
|
3
|
-
// 表示値はすべてここから導出する(保存された preview 値には依存しない)。
|
|
4
1
|
import { parseIsoLocalDate } from "../shared/parse-utils.js";
|
|
5
2
|
function monthsInService(start, asOf) {
|
|
6
3
|
const acquisitionIndex = start.year * 12 + (start.month - 1);
|
|
@@ -13,7 +10,6 @@ export function computePeriodDepreciation(input) {
|
|
|
13
10
|
acquisitionCost: input.acquisitionCost,
|
|
14
11
|
usefulLife: input.usefulLife,
|
|
15
12
|
};
|
|
16
|
-
// 期首より前(前月末まで)の累計償却を控除して、当期に属する月数分のみを取り出す。
|
|
17
13
|
const dayBeforePeriod = new Date(input.periodStartDate);
|
|
18
14
|
dayBeforePeriod.setDate(dayBeforePeriod.getDate() - 1);
|
|
19
15
|
const before = computeStraightLineDepreciation({
|
|
@@ -36,7 +32,6 @@ export function computeStraightLineDepreciation(input) {
|
|
|
36
32
|
day: startDate.getDate(),
|
|
37
33
|
};
|
|
38
34
|
const cost = Math.max(0, Math.round(input.acquisitionCost));
|
|
39
|
-
// 耐用年数は最低 1 年。月数上限 1200(=100 年)で異常値を防ぐ。
|
|
40
35
|
const usefulLifeYears = Math.max(1, Math.floor(input.usefulLife) || 1);
|
|
41
36
|
const totalMonths = Math.min(1200, usefulLifeYears * 12);
|
|
42
37
|
const rawElapsed = start == null ? 0 : monthsInService(start, input.asOf);
|
|
@@ -45,10 +40,10 @@ export function computeStraightLineDepreciation(input) {
|
|
|
45
40
|
: 0;
|
|
46
41
|
const progress = totalMonths === 0 ? 1 : elapsedMonths / totalMonths;
|
|
47
42
|
const depreciableAmount = Math.max(0, cost - (cost > 0 ? 1 : 0));
|
|
48
|
-
const accumulated = Math.min(depreciableAmount,
|
|
43
|
+
const accumulated = Math.min(depreciableAmount, Number((BigInt(depreciableAmount) * BigInt(elapsedMonths)) / BigInt(totalMonths)));
|
|
49
44
|
const currentBookValue = Math.max(cost > 0 ? 1 : 0, cost - accumulated);
|
|
50
45
|
const annualWindowEnd = Math.min(totalMonths, elapsedMonths + 12);
|
|
51
|
-
const annualDepreciation = Math.min(depreciableAmount - accumulated,
|
|
46
|
+
const annualDepreciation = Math.min(depreciableAmount - accumulated, Number((BigInt(depreciableAmount) * BigInt(annualWindowEnd)) / BigInt(totalMonths)) -
|
|
52
47
|
accumulated);
|
|
53
48
|
const remainingMonths = totalMonths - elapsedMonths;
|
|
54
49
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixed-asset-depreciation.js","sourceRoot":"","sources":["../../src/assist/fixed-asset-depreciation.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"fixed-asset-depreciation.js","sourceRoot":"","sources":["../../src/assist/fixed-asset-depreciation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type FixedAsset, type FixedAssetDraft } from "./fixed-asset-data.js";
|
|
2
|
+
export declare const MAX_FIXED_ASSET_USEFUL_LIFE_YEARS = 100;
|
|
3
|
+
export declare function fixedAssetToDraft(asset: FixedAsset): FixedAssetDraft;
|
|
4
|
+
export declare function capFixedAssetPreviewDate(today: Date, fiscalPeriodEndDate: string | null): Date;
|
|
5
|
+
export declare function resolveFixedAssetDraftPreviewDate(periodAsOf: Date, status: FixedAssetDraft["status"], disposalDate: string | null, retirementAsOf: Date | null): Date;
|
|
6
|
+
export declare function computeFixedAssetDraftPeriodDepreciation(input: {
|
|
7
|
+
draft: FixedAssetDraft;
|
|
8
|
+
periodStartDate: string;
|
|
9
|
+
asOf: Date;
|
|
10
|
+
}): number;
|
|
11
|
+
export declare function validateFixedAssetDraft(input: {
|
|
12
|
+
draft: FixedAssetDraft;
|
|
13
|
+
periodStartDate: string;
|
|
14
|
+
periodEndDate: string;
|
|
15
|
+
currentBookValue: number;
|
|
16
|
+
}): string | null;
|
|
17
|
+
//# sourceMappingURL=fixed-asset-draft.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixed-asset-draft.d.ts","sourceRoot":"","sources":["../../src/assist/fixed-asset-draft.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAI/B,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CAgBpE;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,IAAI,EACX,mBAAmB,EAAE,MAAM,GAAG,IAAI,GACjC,IAAI,CAON;AAED,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,IAAI,EAChB,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EACjC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,cAAc,EAAE,IAAI,GAAG,IAAI,GAC1B,IAAI,CAKN;AAED,wBAAgB,wCAAwC,CAAC,KAAK,EAAE;IAC9D,KAAK,EAAE,eAAe,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,IAAI,CAAC;CACZ,GAAG,MAAM,CAUT;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,KAAK,EAAE,eAAe,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GAAG,MAAM,GAAG,IAAI,CAmEhB"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { computePeriodDepreciation } from "./fixed-asset-depreciation.js";
|
|
2
|
+
import { parseAmount, parseIsoLocalDate } from "../shared/parse-utils.js";
|
|
3
|
+
export const MAX_FIXED_ASSET_USEFUL_LIFE_YEARS = 100;
|
|
4
|
+
export function fixedAssetToDraft(asset) {
|
|
5
|
+
return {
|
|
6
|
+
name: asset.name,
|
|
7
|
+
account: asset.accountName,
|
|
8
|
+
acquisitionDate: asset.acquisitionDate,
|
|
9
|
+
acquisitionCost: asset.acquisitionCost.toLocaleString("ja-JP"),
|
|
10
|
+
usefulLife: asset.usefulLife,
|
|
11
|
+
businessRatePercent: asset.businessRate * 100,
|
|
12
|
+
businessRate: asset.businessRate,
|
|
13
|
+
status: asset.status,
|
|
14
|
+
disposalDate: asset.disposalDate,
|
|
15
|
+
disposalPrice: asset.disposalPrice == null
|
|
16
|
+
? null
|
|
17
|
+
: asset.disposalPrice.toLocaleString("ja-JP"),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function capFixedAssetPreviewDate(today, fiscalPeriodEndDate) {
|
|
21
|
+
const periodEnd = fiscalPeriodEndDate == null
|
|
22
|
+
? null
|
|
23
|
+
: parseIsoLocalDate(fiscalPeriodEndDate);
|
|
24
|
+
if (periodEnd == null || today.getTime() <= periodEnd.getTime())
|
|
25
|
+
return today;
|
|
26
|
+
return periodEnd;
|
|
27
|
+
}
|
|
28
|
+
export function resolveFixedAssetDraftPreviewDate(periodAsOf, status, disposalDate, retirementAsOf) {
|
|
29
|
+
if (status === "完了")
|
|
30
|
+
return retirementAsOf ?? periodAsOf;
|
|
31
|
+
const requiresDisposal = status === "売却済" || status === "廃棄済";
|
|
32
|
+
if (!requiresDisposal || disposalDate == null)
|
|
33
|
+
return periodAsOf;
|
|
34
|
+
return parseIsoLocalDate(disposalDate) ?? periodAsOf;
|
|
35
|
+
}
|
|
36
|
+
export function computeFixedAssetDraftPeriodDepreciation(input) {
|
|
37
|
+
const periodStartDate = parseIsoLocalDate(input.periodStartDate);
|
|
38
|
+
if (periodStartDate == null)
|
|
39
|
+
return 0;
|
|
40
|
+
return computePeriodDepreciation({
|
|
41
|
+
acquisitionDate: input.draft.acquisitionDate,
|
|
42
|
+
acquisitionCost: parseAmount(input.draft.acquisitionCost),
|
|
43
|
+
usefulLife: input.draft.usefulLife,
|
|
44
|
+
periodStartDate,
|
|
45
|
+
asOf: input.asOf,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
export function validateFixedAssetDraft(input) {
|
|
49
|
+
const { draft, periodStartDate, periodEndDate } = input;
|
|
50
|
+
if (draft.name.trim() === "" || draft.account.trim() === "") {
|
|
51
|
+
return "名称と勘定科目を入力してください";
|
|
52
|
+
}
|
|
53
|
+
if (parseIsoLocalDate(draft.acquisitionDate) == null) {
|
|
54
|
+
return "正しい取得日を入力してください";
|
|
55
|
+
}
|
|
56
|
+
if (parseIsoLocalDate(periodEndDate) != null &&
|
|
57
|
+
draft.acquisitionDate > periodEndDate) {
|
|
58
|
+
return "取得日は会計期間の終了日以前にしてください";
|
|
59
|
+
}
|
|
60
|
+
const acquisitionCost = parseAmount(draft.acquisitionCost);
|
|
61
|
+
if (!Number.isSafeInteger(acquisitionCost) || acquisitionCost <= 0) {
|
|
62
|
+
return "取得価額は安全に計算できる正の整数で入力してください";
|
|
63
|
+
}
|
|
64
|
+
if (!Number.isSafeInteger(draft.usefulLife) ||
|
|
65
|
+
draft.usefulLife < 1 ||
|
|
66
|
+
draft.usefulLife > MAX_FIXED_ASSET_USEFUL_LIFE_YEARS) {
|
|
67
|
+
return `耐用年数は1〜${MAX_FIXED_ASSET_USEFUL_LIFE_YEARS}年で入力してください`;
|
|
68
|
+
}
|
|
69
|
+
if (!Number.isFinite(draft.businessRatePercent) ||
|
|
70
|
+
draft.businessRatePercent < 0 ||
|
|
71
|
+
draft.businessRatePercent > 100) {
|
|
72
|
+
return "事業割合は0〜100%で入力してください";
|
|
73
|
+
}
|
|
74
|
+
const needsDisposal = draft.status === "売却済" || draft.status === "廃棄済";
|
|
75
|
+
if (needsDisposal) {
|
|
76
|
+
const disposalDate = draft.disposalDate;
|
|
77
|
+
if (disposalDate == null || parseIsoLocalDate(disposalDate) == null) {
|
|
78
|
+
return "正しい処分日を入力してください";
|
|
79
|
+
}
|
|
80
|
+
if (disposalDate < draft.acquisitionDate) {
|
|
81
|
+
return "処分日は取得日以降にしてください";
|
|
82
|
+
}
|
|
83
|
+
if ((parseIsoLocalDate(periodStartDate) != null &&
|
|
84
|
+
disposalDate < periodStartDate) ||
|
|
85
|
+
(parseIsoLocalDate(periodEndDate) != null && disposalDate > periodEndDate)) {
|
|
86
|
+
return "処分日は会計期間内にしてください";
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (draft.status === "売却済") {
|
|
90
|
+
const disposalPriceText = draft.disposalPrice;
|
|
91
|
+
if (disposalPriceText == null || disposalPriceText.trim() === "") {
|
|
92
|
+
return "売却額は安全に計算できる0以上の整数で入力してください";
|
|
93
|
+
}
|
|
94
|
+
const disposalPrice = parseAmount(disposalPriceText);
|
|
95
|
+
if (!Number.isSafeInteger(disposalPrice) ||
|
|
96
|
+
disposalPrice < 0) {
|
|
97
|
+
return "売却額は安全に計算できる0以上の整数で入力してください";
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if (draft.status === "完了" && input.currentBookValue > 1) {
|
|
101
|
+
return "期末時点で償却が完了していない固定資産は完了にできません";
|
|
102
|
+
}
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=fixed-asset-draft.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixed-asset-draft.js","sourceRoot":"","sources":["../../src/assist/fixed-asset-draft.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,17 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { EntryLine } from "../entries/entry-record.js";
|
|
2
2
|
export type OpeningCarryoverRecord = {
|
|
3
3
|
id: string;
|
|
4
4
|
fiscalPeriodId: string;
|
|
5
5
|
date: string;
|
|
6
6
|
description: string;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
businessRate: string;
|
|
17
|
-
debitBookAccountId?: string;
|
|
18
|
-
creditBookAccountId?: string;
|
|
7
|
+
businessRate: number;
|
|
8
|
+
lines: EntryLine[];
|
|
9
|
+
};
|
|
10
|
+
export type OpeningCarryoverDraft = {
|
|
11
|
+
date: string;
|
|
12
|
+
description: string;
|
|
13
|
+
businessRateInput: string;
|
|
14
|
+
businessRate: number | null;
|
|
15
|
+
lines: EntryLine[];
|
|
19
16
|
};
|
|
20
|
-
export type OpeningCarryoverDraft = Omit<OpeningCarryoverRecord, "id" | "fiscalPeriodId">;
|
|
21
17
|
//# sourceMappingURL=opening-carryover.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opening-carryover.d.ts","sourceRoot":"","sources":["../../src/assist/opening-carryover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"opening-carryover.d.ts","sourceRoot":"","sources":["../../src/assist/opening-carryover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,MAAM,sBAAsB,GAAG;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type BookAccountType = "asset" | "liability" | "equity" | "revenue" | "cost_of_sales" | "expense";
|
|
2
|
+
export type BookAccount = {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
accountType: BookAccountType;
|
|
6
|
+
};
|
|
7
|
+
export declare function resolveBookAccountId(input: {
|
|
8
|
+
explicitId: string | null;
|
|
9
|
+
accountName: string;
|
|
10
|
+
accountType: BookAccountType | null;
|
|
11
|
+
accounts: ReadonlyArray<BookAccount>;
|
|
12
|
+
}): string | null;
|
|
13
|
+
//# sourceMappingURL=book-account.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"book-account.d.ts","sourceRoot":"","sources":["../../src/entries/book-account.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACzB,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAAC;AAE7E,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,eAAe,CAAC;CAC9B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;CACtC,GAAG,MAAM,GAAG,IAAI,CAYhB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function resolveBookAccountId(input) {
|
|
2
|
+
const id = input.explicitId?.trim() ?? "";
|
|
3
|
+
if (id !== "") {
|
|
4
|
+
return input.accounts.find((account) => account.id === id)?.id ?? null;
|
|
5
|
+
}
|
|
6
|
+
const name = input.accountName.trim();
|
|
7
|
+
const matches = input.accounts.filter((account) => account.name === name &&
|
|
8
|
+
(input.accountType == null || account.accountType === input.accountType));
|
|
9
|
+
return matches.length === 1 ? matches[0].id : null;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=book-account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"book-account.js","sourceRoot":"","sources":["../../src/entries/book-account.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,oBAAoB,CAAC,KAKpC;IACC,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1C,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;IACzE,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CACnC,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,IAAI,KAAK,IAAI;QACrB,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,CAAC,CAC3E,CAAC;IACF,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-resolution.d.ts","sourceRoot":"","sources":["../../src/entries/category-resolution.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACvD,eAAe,EAAE,MAAM,GACtB,MAAM,CASR"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function resolveCategoryId(explicitId, name, categories, blankFallbackId) {
|
|
2
|
+
if (explicitId !== null)
|
|
3
|
+
return explicitId;
|
|
4
|
+
const value = name.trim();
|
|
5
|
+
if (value === "")
|
|
6
|
+
return blankFallbackId;
|
|
7
|
+
return (categories.find((category) => category.id === value)?.id ??
|
|
8
|
+
categories.find((category) => category.name === value)?.id ??
|
|
9
|
+
value);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=category-resolution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-resolution.js","sourceRoot":"","sources":["../../src/entries/category-resolution.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAC/B,UAAyB,EACzB,IAAY,EACZ,UAAuD,EACvD,eAAuB;IAEvB,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,UAAU,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,eAAe,CAAC;IACzC,OAAO,CACL,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE;QACxD,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE;QAC1D,KAAK,CACN,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-master-data.d.ts","sourceRoot":"","sources":["../../src/entries/default-master-data.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"default-master-data.d.ts","sourceRoot":"","sources":["../../src/entries/default-master-data.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAE3C,wBAAgB,YAAY,CAC1B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAC1B,MAAM,EAAE,CAUV"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
// マスターデータ本体 (型・デフォルト勘定科目/税区分/事業区分) は
|
|
2
|
-
// generated-master-data.ts に生成される。canonical な単一ソースは openkk 内の
|
|
3
|
-
// resources/gen/bookkeeping_master_data.json。再生成は `npm run gen-master-data`。
|
|
4
1
|
export * from "./generated-master-data.js";
|
|
5
2
|
export function mergeOptions(primary, secondary) {
|
|
6
3
|
const out = [];
|
|
7
4
|
const seen = new Set();
|
|
8
5
|
for (const raw of [...primary, ...secondary]) {
|
|
9
|
-
const trimmed =
|
|
6
|
+
const trimmed = raw.trim();
|
|
10
7
|
if (trimmed.length === 0 || seen.has(trimmed))
|
|
11
8
|
continue;
|
|
12
9
|
seen.add(trimmed);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-master-data.js","sourceRoot":"","sources":["../../src/entries/default-master-data.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"default-master-data.js","sourceRoot":"","sources":["../../src/entries/default-master-data.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAE3C,MAAM,UAAU,YAAY,CAC1B,OAAyB,EACzB,SAA2B;IAE3B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QACxD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,30 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
import type { BookAccountType } from "./book-account.js";
|
|
2
2
|
export type VirtualEntrySourceKind = "opening_carryover" | "fixed_asset" | "business_rate_transfer";
|
|
3
3
|
export type VirtualEntrySource = {
|
|
4
4
|
id: string;
|
|
5
5
|
kind: VirtualEntrySourceKind;
|
|
6
6
|
sourceId: string;
|
|
7
7
|
label: string;
|
|
8
|
-
assistHref
|
|
8
|
+
assistHref: string | null;
|
|
9
9
|
};
|
|
10
10
|
export type EntryPreviewRow = {
|
|
11
|
-
recordId
|
|
12
|
-
lineIndex
|
|
13
|
-
lineCount
|
|
14
|
-
isFirstOfRecord
|
|
11
|
+
recordId: string;
|
|
12
|
+
lineIndex: number;
|
|
13
|
+
lineCount: number;
|
|
14
|
+
isFirstOfRecord: boolean;
|
|
15
15
|
date: string;
|
|
16
16
|
weekday: string;
|
|
17
17
|
debit: string;
|
|
18
|
-
debitType:
|
|
18
|
+
debitType: BookAccountType;
|
|
19
19
|
debitAmount: string;
|
|
20
|
+
debitBookAccountId: string | null;
|
|
21
|
+
debitPartnerName: string | null;
|
|
22
|
+
debitTaxCategoryId: string | null;
|
|
23
|
+
debitBusinessCategoryId: string | null;
|
|
20
24
|
credit: string;
|
|
21
|
-
creditType:
|
|
25
|
+
creditType: BookAccountType;
|
|
22
26
|
creditAmount: string;
|
|
27
|
+
creditBookAccountId: string | null;
|
|
28
|
+
creditPartnerName: string | null;
|
|
29
|
+
creditTaxCategoryId: string | null;
|
|
30
|
+
creditBusinessCategoryId: string | null;
|
|
23
31
|
description: string;
|
|
24
32
|
partner: string;
|
|
25
|
-
businessRate:
|
|
33
|
+
businessRate: number;
|
|
26
34
|
taxCategory: string;
|
|
27
35
|
businessCategory: string;
|
|
28
|
-
virtual
|
|
36
|
+
virtual: VirtualEntrySource | null;
|
|
29
37
|
};
|
|
30
38
|
//# sourceMappingURL=entries-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entries-types.d.ts","sourceRoot":"","sources":["../../src/entries/entries-types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"entries-types.d.ts","sourceRoot":"","sources":["../../src/entries/entries-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,MAAM,sBAAsB,GAC9B,mBAAmB,GACnB,aAAa,GACb,wBAAwB,CAAC;AAE7B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,eAAe,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,eAAe,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACpC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const MAX_ENTRY_IMPORT_SIZE: number;
|
|
2
|
+
export declare const MAX_ENTRY_IMPORT_ITEMS = 10000;
|
|
3
|
+
export declare const MAX_ENTRY_IMPORT_LINES = 100000;
|
|
4
|
+
export declare const MAX_ENTRY_LINES = 1000;
|
|
5
|
+
export declare function assertEntryImportSize(size: number): void;
|
|
6
|
+
export declare function assertEntryImportItemCount(count: number): void;
|
|
7
|
+
export declare function assertEntryLineCount(count: number): void;
|
|
8
|
+
export declare function assertEntryImportLineCount(count: number): void;
|
|
9
|
+
//# sourceMappingURL=entry-limits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry-limits.d.ts","sourceRoot":"","sources":["../../src/entries/entry-limits.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,QAAmB,CAAC;AACtD,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAC7C,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAC9C,eAAO,MAAM,eAAe,OAAQ,CAAC;AAErC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAIxD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAQ9D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAQxD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAQ9D"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { AppError } from "../shared/app-error.js";
|
|
2
|
+
export const MAX_ENTRY_IMPORT_SIZE = 16 * 1024 * 1024;
|
|
3
|
+
export const MAX_ENTRY_IMPORT_ITEMS = 10_000;
|
|
4
|
+
export const MAX_ENTRY_IMPORT_LINES = 100_000;
|
|
5
|
+
export const MAX_ENTRY_LINES = 1_000;
|
|
6
|
+
export function assertEntryImportSize(size) {
|
|
7
|
+
if (!Number.isSafeInteger(size) || size < 0 || size > MAX_ENTRY_IMPORT_SIZE) {
|
|
8
|
+
throw importFileLimitError("journal import exceeds the size limit");
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function assertEntryImportItemCount(count) {
|
|
12
|
+
if (!Number.isSafeInteger(count) ||
|
|
13
|
+
count < 0 ||
|
|
14
|
+
count > MAX_ENTRY_IMPORT_ITEMS) {
|
|
15
|
+
throw importFileLimitError("journal import contains too many entries");
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function assertEntryLineCount(count) {
|
|
19
|
+
if (!Number.isSafeInteger(count) ||
|
|
20
|
+
count < 0 ||
|
|
21
|
+
count > MAX_ENTRY_LINES) {
|
|
22
|
+
throw importFileLimitError("journal entry contains too many lines");
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export function assertEntryImportLineCount(count) {
|
|
26
|
+
if (!Number.isSafeInteger(count) ||
|
|
27
|
+
count < 0 ||
|
|
28
|
+
count > MAX_ENTRY_IMPORT_LINES) {
|
|
29
|
+
throw importFileLimitError("journal import contains too many lines");
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
function importFileLimitError(messageForDeveloper) {
|
|
33
|
+
return new AppError({
|
|
34
|
+
messageForDeveloper,
|
|
35
|
+
messageForUser: "取込ファイルが大きすぎます。ファイルを分割してからもう一度取り込んでください。",
|
|
36
|
+
originalMessage: null,
|
|
37
|
+
statusCode: null,
|
|
38
|
+
code: null,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=entry-limits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry-limits.js","sourceRoot":"","sources":["../../src/entries/entry-limits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AAErC,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,qBAAqB,EAAE,CAAC;QAC5E,MAAM,oBAAoB,CAAC,uCAAuC,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;QAC5B,KAAK,GAAG,CAAC;QACT,KAAK,GAAG,sBAAsB,EAC9B,CAAC;QACD,MAAM,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;QAC5B,KAAK,GAAG,CAAC;QACT,KAAK,GAAG,eAAe,EACvB,CAAC;QACD,MAAM,oBAAoB,CAAC,uCAAuC,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;QAC5B,KAAK,GAAG,CAAC;QACT,KAAK,GAAG,sBAAsB,EAC9B,CAAC;QACD,MAAM,oBAAoB,CAAC,wCAAwC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,mBAA2B;IACvD,OAAO,IAAI,QAAQ,CAAC;QAClB,mBAAmB;QACnB,cAAc,EACZ,yCAAyC;QAC3C,eAAe,EAAE,IAAI;QACrB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,17 +1,34 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BookAccountType } from "./book-account.js";
|
|
2
|
+
import type { EntryPreviewRow } from "./entries-types.js";
|
|
2
3
|
export type EntryLine = {
|
|
4
|
+
id: string | null;
|
|
3
5
|
side: "debit" | "credit";
|
|
4
6
|
accountName: string;
|
|
5
|
-
accountType:
|
|
7
|
+
accountType: BookAccountType;
|
|
6
8
|
amount: string;
|
|
7
|
-
bookAccountId
|
|
9
|
+
bookAccountId: string | null;
|
|
10
|
+
partnerName: string | null;
|
|
11
|
+
taxCategoryId: string | null;
|
|
12
|
+
taxCategoryName: string | null;
|
|
13
|
+
businessCategoryId: string | null;
|
|
14
|
+
businessCategoryName: string | null;
|
|
8
15
|
};
|
|
16
|
+
export type EntryLineMetadata = {
|
|
17
|
+
partner: string;
|
|
18
|
+
taxCategory: string;
|
|
19
|
+
businessCategory: string;
|
|
20
|
+
};
|
|
21
|
+
export declare function resolveEntryLineMetadata(line: EntryLine): EntryLineMetadata;
|
|
22
|
+
export declare function resolveEntryPairMetadata(pair: {
|
|
23
|
+
debit: EntryLine | null;
|
|
24
|
+
credit: EntryLine | null;
|
|
25
|
+
}): EntryLineMetadata;
|
|
9
26
|
export declare function applyBusinessRateToLines(lines: EntryLine[], rate: number): EntryLine[];
|
|
10
|
-
|
|
11
|
-
export declare
|
|
27
|
+
export declare function entryLineAccountKey(line: EntryLine): string;
|
|
28
|
+
export declare const VIRTUAL_ENTRY_LOCAL_ID_PREFIX = "virtual:";
|
|
12
29
|
export declare const BUSINESS_RATE_TRANSFER_LOCAL_ID = "virtual:business-rate-transfer";
|
|
13
30
|
export declare function excludeBusinessRateTransfer<T extends {
|
|
14
|
-
localId
|
|
31
|
+
localId: string | null;
|
|
15
32
|
}>(entries: T[]): T[];
|
|
16
33
|
export declare function buildBusinessRateTransferEntry(input: {
|
|
17
34
|
fiscalPeriodId: string;
|
|
@@ -23,31 +40,14 @@ export type EntryRecord = {
|
|
|
23
40
|
fiscalPeriodId: string;
|
|
24
41
|
date: string;
|
|
25
42
|
weekday: string;
|
|
26
|
-
lines
|
|
27
|
-
debit: string;
|
|
28
|
-
debitType: EntryPreviewRow["debitType"];
|
|
29
|
-
debitAmount: string;
|
|
30
|
-
credit: string;
|
|
31
|
-
creditType: EntryPreviewRow["creditType"];
|
|
32
|
-
creditAmount: string;
|
|
43
|
+
lines: EntryLine[];
|
|
33
44
|
description: string;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
taxCategory: string;
|
|
37
|
-
businessCategory: string;
|
|
38
|
-
localId?: string;
|
|
39
|
-
debitBookAccountId?: string;
|
|
40
|
-
creditBookAccountId?: string;
|
|
41
|
-
debitTaxCategoryId?: string;
|
|
42
|
-
creditTaxCategoryId?: string;
|
|
43
|
-
debitBusinessCategoryId?: string;
|
|
44
|
-
creditBusinessCategoryId?: string;
|
|
45
|
+
businessRate: number;
|
|
46
|
+
localId: string | null;
|
|
45
47
|
};
|
|
46
|
-
export declare function getEntryLines(record: EntryRecord): EntryLine[];
|
|
47
48
|
export declare function entryToVisualPairs(record: EntryRecord): Array<{
|
|
48
49
|
debit: EntryLine | null;
|
|
49
50
|
credit: EntryLine | null;
|
|
50
51
|
}>;
|
|
51
52
|
export declare function recordToPreviewRows(record: EntryRecord): EntryPreviewRow[];
|
|
52
|
-
export declare function recordToPreviewRow(record: EntryRecord): EntryPreviewRow;
|
|
53
53
|
//# sourceMappingURL=entry-record.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-record.d.ts","sourceRoot":"","sources":["../../src/entries/entry-record.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"entry-record.d.ts","sourceRoot":"","sources":["../../src/entries/entry-record.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,eAAe,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,GACd,iBAAiB,CAOnB;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE;IAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAA;CAAE,GAC1D,iBAAiB,CAmBnB;AAwBD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,EAAE,EAClB,IAAI,EAAE,MAAM,GACX,SAAS,EAAE,CA4Cb;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAI3D;AAED,eAAO,MAAM,6BAA6B,aAAa,CAAC;AAExD,eAAO,MAAM,+BAA+B,mCAA2D,CAAC;AAExG,wBAAgB,2BAA2B,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAC9E,OAAO,EAAE,CAAC,EAAE,GACX,CAAC,EAAE,CAIL;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,WAAW,GAAG,IAAI,CA4ErB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAEhB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAAC;IAC7D,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CAC1B,CAAC,CAcD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,eAAe,EAAE,CAkC1E"}
|