@klardaten/n8n-nodes-datevconnect 1.0.6 → 1.0.7
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/README.md +2 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -3
- package/dist/nodes/Accounting/Accounting.node.d.ts.map +1 -1
- package/dist/nodes/Accounting/Accounting.node.js +7 -1
- package/dist/nodes/Accounting/types.d.ts +2 -0
- package/dist/nodes/Accounting/types.d.ts.map +1 -1
- package/dist/nodes/DocumentManagement/DocumentManagement.node.d.ts.map +1 -1
- package/dist/nodes/DocumentManagement/DocumentManagement.node.js +7 -1
- package/dist/nodes/DocumentManagement/types.d.ts +2 -1
- package/dist/nodes/DocumentManagement/types.d.ts.map +1 -1
- package/dist/nodes/IdentityAndAccessManagement/IdentityAndAccessManagement.node.d.ts.map +1 -1
- package/dist/nodes/IdentityAndAccessManagement/IdentityAndAccessManagement.node.js +7 -1
- package/dist/nodes/IdentityAndAccessManagement/types.d.ts +2 -1
- package/dist/nodes/IdentityAndAccessManagement/types.d.ts.map +1 -1
- package/dist/nodes/MasterData/MasterData.node.d.ts.map +1 -1
- package/dist/nodes/MasterData/MasterData.node.js +7 -1
- package/dist/nodes/MasterData/types.d.ts +2 -1
- package/dist/nodes/MasterData/types.d.ts.map +1 -1
- package/dist/nodes/OrderManagement/OrderManagement.config.d.ts +3 -0
- package/dist/nodes/OrderManagement/OrderManagement.config.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/OrderManagement.config.js +644 -0
- package/dist/nodes/OrderManagement/OrderManagement.node.d.ts +6 -0
- package/dist/nodes/OrderManagement/OrderManagement.node.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/OrderManagement.node.js +92 -0
- package/dist/nodes/OrderManagement/handlers/BaseResourceHandler.d.ts +17 -0
- package/dist/nodes/OrderManagement/handlers/BaseResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/BaseResourceHandler.js +48 -0
- package/dist/nodes/OrderManagement/handlers/ClientGroupResourceHandler.d.ts +8 -0
- package/dist/nodes/OrderManagement/handlers/ClientGroupResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/ClientGroupResourceHandler.js +32 -0
- package/dist/nodes/OrderManagement/handlers/CostCenterResourceHandler.d.ts +8 -0
- package/dist/nodes/OrderManagement/handlers/CostCenterResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/CostCenterResourceHandler.js +38 -0
- package/dist/nodes/OrderManagement/handlers/EmployeeResourceHandler.d.ts +12 -0
- package/dist/nodes/OrderManagement/handlers/EmployeeResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/EmployeeResourceHandler.js +106 -0
- package/dist/nodes/OrderManagement/handlers/FeeResourceHandler.d.ts +9 -0
- package/dist/nodes/OrderManagement/handlers/FeeResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/FeeResourceHandler.js +55 -0
- package/dist/nodes/OrderManagement/handlers/InvoiceResourceHandler.d.ts +9 -0
- package/dist/nodes/OrderManagement/handlers/InvoiceResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/InvoiceResourceHandler.js +49 -0
- package/dist/nodes/OrderManagement/handlers/OrderResourceHandler.d.ts +24 -0
- package/dist/nodes/OrderManagement/handlers/OrderResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/OrderResourceHandler.js +285 -0
- package/dist/nodes/OrderManagement/handlers/OrderTypeResourceHandler.d.ts +8 -0
- package/dist/nodes/OrderManagement/handlers/OrderTypeResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/OrderTypeResourceHandler.js +34 -0
- package/dist/nodes/OrderManagement/handlers/SelfClientResourceHandler.d.ts +8 -0
- package/dist/nodes/OrderManagement/handlers/SelfClientResourceHandler.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/handlers/SelfClientResourceHandler.js +36 -0
- package/dist/nodes/OrderManagement/types.d.ts +28 -0
- package/dist/nodes/OrderManagement/types.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/types.js +2 -0
- package/dist/nodes/OrderManagement/utils.d.ts +14 -0
- package/dist/nodes/OrderManagement/utils.d.ts.map +1 -0
- package/dist/nodes/OrderManagement/utils.js +79 -0
- package/dist/src/services/accountingClient.d.ts.map +1 -1
- package/dist/src/services/accountingClient.js +2 -0
- package/dist/src/services/datevConnectClient.d.ts +3 -22
- package/dist/src/services/datevConnectClient.d.ts.map +1 -1
- package/dist/src/services/datevConnectClient.js +96 -180
- package/dist/src/services/documentManagementClient.d.ts +3 -1
- package/dist/src/services/documentManagementClient.d.ts.map +1 -1
- package/dist/src/services/documentManagementClient.js +28 -27
- package/dist/src/services/httpHelpers.d.ts +10 -0
- package/dist/src/services/httpHelpers.d.ts.map +1 -0
- package/dist/src/services/httpHelpers.js +180 -0
- package/dist/src/services/identityAndAccessManagementClient.d.ts +2 -1
- package/dist/src/services/identityAndAccessManagementClient.d.ts.map +1 -1
- package/dist/src/services/identityAndAccessManagementClient.js +4 -1
- package/dist/src/services/orderManagementClient.d.ts +189 -0
- package/dist/src/services/orderManagementClient.d.ts.map +1 -0
- package/dist/src/services/orderManagementClient.js +459 -0
- package/dist/src/services/shared.d.ts +39 -0
- package/dist/src/services/shared.d.ts.map +1 -0
- package/dist/src/services/shared.js +110 -0
- package/package.json +6 -5
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import type { JsonValue, HttpRequestHelper } from "./shared";
|
|
2
|
+
interface BaseOrderManagementRequestOptions {
|
|
3
|
+
host: string;
|
|
4
|
+
token: string;
|
|
5
|
+
clientInstanceId: string;
|
|
6
|
+
httpHelper?: HttpRequestHelper;
|
|
7
|
+
fetchImpl?: typeof fetch;
|
|
8
|
+
}
|
|
9
|
+
export interface FetchOrderTypesOptions extends BaseOrderManagementRequestOptions {
|
|
10
|
+
top?: number;
|
|
11
|
+
skip?: number;
|
|
12
|
+
}
|
|
13
|
+
export interface FetchClientGroupOptions extends BaseOrderManagementRequestOptions {
|
|
14
|
+
clientId: string;
|
|
15
|
+
}
|
|
16
|
+
export interface FetchOrdersOptions extends BaseOrderManagementRequestOptions {
|
|
17
|
+
select?: string;
|
|
18
|
+
filter?: string;
|
|
19
|
+
costRate?: number;
|
|
20
|
+
expand?: string;
|
|
21
|
+
top?: number;
|
|
22
|
+
skip?: number;
|
|
23
|
+
}
|
|
24
|
+
export interface FetchOrderOptions extends BaseOrderManagementRequestOptions {
|
|
25
|
+
orderId: number;
|
|
26
|
+
select?: string;
|
|
27
|
+
costRate?: number;
|
|
28
|
+
expand?: string;
|
|
29
|
+
}
|
|
30
|
+
export interface UpdateOrderOptions extends BaseOrderManagementRequestOptions {
|
|
31
|
+
orderId: number;
|
|
32
|
+
order: JsonValue;
|
|
33
|
+
}
|
|
34
|
+
export interface FetchOrderMonthlyValuesOptions extends BaseOrderManagementRequestOptions {
|
|
35
|
+
orderId: number;
|
|
36
|
+
select?: string;
|
|
37
|
+
costRate?: number;
|
|
38
|
+
}
|
|
39
|
+
export interface FetchOrdersMonthlyValuesOptions extends BaseOrderManagementRequestOptions {
|
|
40
|
+
select?: string;
|
|
41
|
+
filter?: string;
|
|
42
|
+
costRate?: number;
|
|
43
|
+
top?: number;
|
|
44
|
+
skip?: number;
|
|
45
|
+
}
|
|
46
|
+
export interface FetchOrderCostItemsOptions extends BaseOrderManagementRequestOptions {
|
|
47
|
+
orderId: number;
|
|
48
|
+
select?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface FetchOrdersCostItemsOptions extends BaseOrderManagementRequestOptions {
|
|
51
|
+
select?: string;
|
|
52
|
+
filter?: string;
|
|
53
|
+
top?: number;
|
|
54
|
+
skip?: number;
|
|
55
|
+
}
|
|
56
|
+
export interface FetchOrderStateWorkOptions extends BaseOrderManagementRequestOptions {
|
|
57
|
+
orderId: number;
|
|
58
|
+
select?: string;
|
|
59
|
+
}
|
|
60
|
+
export interface FetchOrdersStateWorkOptions extends BaseOrderManagementRequestOptions {
|
|
61
|
+
select?: string;
|
|
62
|
+
filter?: string;
|
|
63
|
+
top?: number;
|
|
64
|
+
skip?: number;
|
|
65
|
+
}
|
|
66
|
+
export interface FetchSubordersStateBillingOptions extends BaseOrderManagementRequestOptions {
|
|
67
|
+
orderId: number;
|
|
68
|
+
select?: string;
|
|
69
|
+
}
|
|
70
|
+
export interface FetchSubordersStateBillingAllOptions extends BaseOrderManagementRequestOptions {
|
|
71
|
+
select?: string;
|
|
72
|
+
filter?: string;
|
|
73
|
+
top?: number;
|
|
74
|
+
skip?: number;
|
|
75
|
+
}
|
|
76
|
+
export interface UpdateSuborderOptions extends BaseOrderManagementRequestOptions {
|
|
77
|
+
orderId: number;
|
|
78
|
+
suborderId: number;
|
|
79
|
+
suborder: JsonValue;
|
|
80
|
+
}
|
|
81
|
+
export interface FetchOrderExpensePostingsOptions extends BaseOrderManagementRequestOptions {
|
|
82
|
+
orderId: number;
|
|
83
|
+
select?: string;
|
|
84
|
+
}
|
|
85
|
+
export interface FetchExpensePostingsOptions extends BaseOrderManagementRequestOptions {
|
|
86
|
+
select?: string;
|
|
87
|
+
filter?: string;
|
|
88
|
+
top?: number;
|
|
89
|
+
skip?: number;
|
|
90
|
+
}
|
|
91
|
+
export interface CreateExpensePostingOptions extends BaseOrderManagementRequestOptions {
|
|
92
|
+
orderId: number;
|
|
93
|
+
suborderId: number;
|
|
94
|
+
automaticIntegration?: boolean;
|
|
95
|
+
deleteMassdataOnFailure?: boolean;
|
|
96
|
+
expensePosting: JsonValue;
|
|
97
|
+
}
|
|
98
|
+
export interface FetchInvoiceOptions extends BaseOrderManagementRequestOptions {
|
|
99
|
+
invoiceId: number;
|
|
100
|
+
}
|
|
101
|
+
export interface FetchInvoicesOptions extends BaseOrderManagementRequestOptions {
|
|
102
|
+
select?: string;
|
|
103
|
+
filter?: string;
|
|
104
|
+
top?: number;
|
|
105
|
+
skip?: number;
|
|
106
|
+
}
|
|
107
|
+
export interface FetchEmployeeCapacitiesOptions extends BaseOrderManagementRequestOptions {
|
|
108
|
+
select?: string;
|
|
109
|
+
filter?: string;
|
|
110
|
+
top?: number;
|
|
111
|
+
skip?: number;
|
|
112
|
+
}
|
|
113
|
+
export interface FetchEmployeesWithGroupOptions extends BaseOrderManagementRequestOptions {
|
|
114
|
+
select?: string;
|
|
115
|
+
filter?: string;
|
|
116
|
+
top?: number;
|
|
117
|
+
skip?: number;
|
|
118
|
+
}
|
|
119
|
+
export interface FetchEmployeeQualificationsOptions extends BaseOrderManagementRequestOptions {
|
|
120
|
+
select?: string;
|
|
121
|
+
filter?: string;
|
|
122
|
+
top?: number;
|
|
123
|
+
skip?: number;
|
|
124
|
+
}
|
|
125
|
+
export interface FetchEmployeeCostRatesOptions extends BaseOrderManagementRequestOptions {
|
|
126
|
+
select?: string;
|
|
127
|
+
filter?: string;
|
|
128
|
+
top?: number;
|
|
129
|
+
skip?: number;
|
|
130
|
+
}
|
|
131
|
+
export interface FetchChargeRatesOptions extends BaseOrderManagementRequestOptions {
|
|
132
|
+
select?: string;
|
|
133
|
+
filter?: string;
|
|
134
|
+
top?: number;
|
|
135
|
+
skip?: number;
|
|
136
|
+
}
|
|
137
|
+
export interface FetchOrderManagementCostCentersOptions extends BaseOrderManagementRequestOptions {
|
|
138
|
+
select?: string;
|
|
139
|
+
filter?: string;
|
|
140
|
+
top?: number;
|
|
141
|
+
skip?: number;
|
|
142
|
+
}
|
|
143
|
+
export interface FetchFeesOptions extends BaseOrderManagementRequestOptions {
|
|
144
|
+
select?: string;
|
|
145
|
+
filter?: string;
|
|
146
|
+
top?: number;
|
|
147
|
+
skip?: number;
|
|
148
|
+
}
|
|
149
|
+
export interface FetchFeePlansOptions extends BaseOrderManagementRequestOptions {
|
|
150
|
+
select?: string;
|
|
151
|
+
filter?: string;
|
|
152
|
+
top?: number;
|
|
153
|
+
skip?: number;
|
|
154
|
+
}
|
|
155
|
+
export interface FetchSelfClientsOptions extends BaseOrderManagementRequestOptions {
|
|
156
|
+
select?: string;
|
|
157
|
+
top?: number;
|
|
158
|
+
skip?: number;
|
|
159
|
+
}
|
|
160
|
+
export declare function fetchOrderTypes(options: FetchOrderTypesOptions): Promise<JsonValue | undefined>;
|
|
161
|
+
export declare function fetchClientGroup(options: FetchClientGroupOptions): Promise<JsonValue | undefined>;
|
|
162
|
+
export declare function fetchOrders(options: FetchOrdersOptions): Promise<JsonValue | undefined>;
|
|
163
|
+
export declare function fetchOrder(options: FetchOrderOptions): Promise<JsonValue | undefined>;
|
|
164
|
+
export declare function updateOrder(options: UpdateOrderOptions): Promise<JsonValue | undefined>;
|
|
165
|
+
export declare function fetchOrderMonthlyValues(options: FetchOrderMonthlyValuesOptions): Promise<JsonValue | undefined>;
|
|
166
|
+
export declare function fetchOrdersMonthlyValues(options: FetchOrdersMonthlyValuesOptions): Promise<JsonValue | undefined>;
|
|
167
|
+
export declare function fetchOrderCostItems(options: FetchOrderCostItemsOptions): Promise<JsonValue | undefined>;
|
|
168
|
+
export declare function fetchOrdersCostItems(options: FetchOrdersCostItemsOptions): Promise<JsonValue | undefined>;
|
|
169
|
+
export declare function fetchOrderStateWork(options: FetchOrderStateWorkOptions): Promise<JsonValue | undefined>;
|
|
170
|
+
export declare function fetchOrdersStateWork(options: FetchOrdersStateWorkOptions): Promise<JsonValue | undefined>;
|
|
171
|
+
export declare function fetchSubordersStateBilling(options: FetchSubordersStateBillingOptions): Promise<JsonValue | undefined>;
|
|
172
|
+
export declare function fetchSubordersStateBillingAll(options: FetchSubordersStateBillingAllOptions): Promise<JsonValue | undefined>;
|
|
173
|
+
export declare function updateSuborder(options: UpdateSuborderOptions): Promise<JsonValue | undefined>;
|
|
174
|
+
export declare function fetchOrderExpensePostings(options: FetchOrderExpensePostingsOptions): Promise<JsonValue | undefined>;
|
|
175
|
+
export declare function fetchExpensePostings(options: FetchExpensePostingsOptions): Promise<JsonValue | undefined>;
|
|
176
|
+
export declare function createExpensePosting(options: CreateExpensePostingOptions): Promise<JsonValue | undefined>;
|
|
177
|
+
export declare function fetchInvoice(options: FetchInvoiceOptions): Promise<JsonValue | undefined>;
|
|
178
|
+
export declare function fetchInvoices(options: FetchInvoicesOptions): Promise<JsonValue | undefined>;
|
|
179
|
+
export declare function fetchEmployeeCapacities(options: FetchEmployeeCapacitiesOptions): Promise<JsonValue | undefined>;
|
|
180
|
+
export declare function fetchEmployeesWithGroup(options: FetchEmployeesWithGroupOptions): Promise<JsonValue | undefined>;
|
|
181
|
+
export declare function fetchEmployeeQualifications(options: FetchEmployeeQualificationsOptions): Promise<JsonValue | undefined>;
|
|
182
|
+
export declare function fetchEmployeeCostRates(options: FetchEmployeeCostRatesOptions): Promise<JsonValue | undefined>;
|
|
183
|
+
export declare function fetchChargeRates(options: FetchChargeRatesOptions): Promise<JsonValue | undefined>;
|
|
184
|
+
export declare function fetchOrderManagementCostCenters(options: FetchOrderManagementCostCentersOptions): Promise<JsonValue | undefined>;
|
|
185
|
+
export declare function fetchFees(options: FetchFeesOptions): Promise<JsonValue | undefined>;
|
|
186
|
+
export declare function fetchFeePlans(options: FetchFeePlansOptions): Promise<JsonValue | undefined>;
|
|
187
|
+
export declare function fetchSelfClients(options: FetchSelfClientsOptions): Promise<JsonValue | undefined>;
|
|
188
|
+
export {};
|
|
189
|
+
//# sourceMappingURL=orderManagementClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderManagementClient.d.ts","sourceRoot":"","sources":["../../../src/services/orderManagementClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,459 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchOrderTypes = fetchOrderTypes;
|
|
4
|
+
exports.fetchClientGroup = fetchClientGroup;
|
|
5
|
+
exports.fetchOrders = fetchOrders;
|
|
6
|
+
exports.fetchOrder = fetchOrder;
|
|
7
|
+
exports.updateOrder = updateOrder;
|
|
8
|
+
exports.fetchOrderMonthlyValues = fetchOrderMonthlyValues;
|
|
9
|
+
exports.fetchOrdersMonthlyValues = fetchOrdersMonthlyValues;
|
|
10
|
+
exports.fetchOrderCostItems = fetchOrderCostItems;
|
|
11
|
+
exports.fetchOrdersCostItems = fetchOrdersCostItems;
|
|
12
|
+
exports.fetchOrderStateWork = fetchOrderStateWork;
|
|
13
|
+
exports.fetchOrdersStateWork = fetchOrdersStateWork;
|
|
14
|
+
exports.fetchSubordersStateBilling = fetchSubordersStateBilling;
|
|
15
|
+
exports.fetchSubordersStateBillingAll = fetchSubordersStateBillingAll;
|
|
16
|
+
exports.updateSuborder = updateSuborder;
|
|
17
|
+
exports.fetchOrderExpensePostings = fetchOrderExpensePostings;
|
|
18
|
+
exports.fetchExpensePostings = fetchExpensePostings;
|
|
19
|
+
exports.createExpensePosting = createExpensePosting;
|
|
20
|
+
exports.fetchInvoice = fetchInvoice;
|
|
21
|
+
exports.fetchInvoices = fetchInvoices;
|
|
22
|
+
exports.fetchEmployeeCapacities = fetchEmployeeCapacities;
|
|
23
|
+
exports.fetchEmployeesWithGroup = fetchEmployeesWithGroup;
|
|
24
|
+
exports.fetchEmployeeQualifications = fetchEmployeeQualifications;
|
|
25
|
+
exports.fetchEmployeeCostRates = fetchEmployeeCostRates;
|
|
26
|
+
exports.fetchChargeRates = fetchChargeRates;
|
|
27
|
+
exports.fetchOrderManagementCostCenters = fetchOrderManagementCostCenters;
|
|
28
|
+
exports.fetchFees = fetchFees;
|
|
29
|
+
exports.fetchFeePlans = fetchFeePlans;
|
|
30
|
+
exports.fetchSelfClients = fetchSelfClients;
|
|
31
|
+
const httpHelpers_1 = require("./httpHelpers");
|
|
32
|
+
const JSON_CONTENT_TYPE = "application/json;charset=utf-8";
|
|
33
|
+
const DEFAULT_ERROR_PREFIX = "DATEV Order Management request failed";
|
|
34
|
+
const ORDER_MANAGEMENT_BASE_PATH = "datevconnect/order-management/v1";
|
|
35
|
+
function normaliseBaseUrl(host) {
|
|
36
|
+
if (!host) {
|
|
37
|
+
throw new Error("DATEVconnect host must be provided");
|
|
38
|
+
}
|
|
39
|
+
return host.endsWith("/") ? host : `${host}/`;
|
|
40
|
+
}
|
|
41
|
+
function buildUrl(host, path, query) {
|
|
42
|
+
const baseUrl = normaliseBaseUrl(host);
|
|
43
|
+
const trimmedPath = path.startsWith("/") ? path.slice(1) : path;
|
|
44
|
+
const url = new URL(trimmedPath, baseUrl);
|
|
45
|
+
if (query) {
|
|
46
|
+
for (const [key, value] of Object.entries(query)) {
|
|
47
|
+
if (value === undefined || value === null || value === "") {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
url.searchParams.set(key, String(value));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return url;
|
|
54
|
+
}
|
|
55
|
+
function validateCostRateUsage(costRate, expand) {
|
|
56
|
+
if (costRate === undefined || costRate === null) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const expandParts = expand === null || expand === void 0 ? void 0 : expand.split(",").map((part) => part.trim().toLowerCase()).filter(Boolean);
|
|
60
|
+
if (!(expandParts === null || expandParts === void 0 ? void 0 : expandParts.includes("suborders"))) {
|
|
61
|
+
throw new Error("costRate is only supported when expanding suborders (expand=suborders) on orders requests");
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async function readResponseBody(response) {
|
|
65
|
+
var _a;
|
|
66
|
+
if (response.status === 204 || response.status === 205) {
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
const contentType = (_a = response.headers.get("content-type")) !== null && _a !== void 0 ? _a : "";
|
|
70
|
+
if (contentType.toLowerCase().includes("application/json")) {
|
|
71
|
+
try {
|
|
72
|
+
return (await response.json());
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
try {
|
|
79
|
+
const text = await response.text();
|
|
80
|
+
return text.length > 0 ? text : undefined;
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
function buildErrorMessage(response, body) {
|
|
87
|
+
const statusPart = `${response.status}${response.statusText ? ` ${response.statusText}` : ""}`.trim();
|
|
88
|
+
const prefix = `${DEFAULT_ERROR_PREFIX}${statusPart ? ` (${statusPart})` : ""}`;
|
|
89
|
+
if (body && typeof body === "object") {
|
|
90
|
+
if ("message" in body && typeof body.message === "string") {
|
|
91
|
+
return `${prefix}: ${body.message}`;
|
|
92
|
+
}
|
|
93
|
+
if ("error" in body && typeof body.error === "string") {
|
|
94
|
+
const description = "error_description" in body && typeof body.error_description === "string"
|
|
95
|
+
? body.error_description
|
|
96
|
+
: undefined;
|
|
97
|
+
return `${prefix}: ${body.error}${description ? `: ${description}` : ""}`;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if (typeof body === "string" && body.trim().length > 0) {
|
|
101
|
+
return `${prefix}: ${body}`;
|
|
102
|
+
}
|
|
103
|
+
return prefix;
|
|
104
|
+
}
|
|
105
|
+
async function sendRequest(options) {
|
|
106
|
+
const { host, token, clientInstanceId, path, method, query, body, httpHelper, fetchImpl: providedFetchImpl, } = options;
|
|
107
|
+
const url = buildUrl(host, path, query);
|
|
108
|
+
const headers = {
|
|
109
|
+
Authorization: `Bearer ${token}`,
|
|
110
|
+
"x-client-instance-id": clientInstanceId,
|
|
111
|
+
Accept: JSON_CONTENT_TYPE,
|
|
112
|
+
};
|
|
113
|
+
const init = {
|
|
114
|
+
method,
|
|
115
|
+
headers,
|
|
116
|
+
};
|
|
117
|
+
if (body !== undefined) {
|
|
118
|
+
headers["content-type"] = JSON_CONTENT_TYPE;
|
|
119
|
+
init.body = JSON.stringify(body);
|
|
120
|
+
}
|
|
121
|
+
const fetchImpl = httpHelper ? (0, httpHelpers_1.createFetchFromHttpHelper)(httpHelper) : (providedFetchImpl || fetch);
|
|
122
|
+
const response = await fetchImpl(url, init);
|
|
123
|
+
const responseBody = await readResponseBody(response);
|
|
124
|
+
if (!response.ok) {
|
|
125
|
+
throw new Error(buildErrorMessage(response, responseBody));
|
|
126
|
+
}
|
|
127
|
+
return responseBody;
|
|
128
|
+
}
|
|
129
|
+
async function fetchOrderTypes(options) {
|
|
130
|
+
return sendRequest({
|
|
131
|
+
...options,
|
|
132
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/ordertypes`,
|
|
133
|
+
method: "GET",
|
|
134
|
+
query: {
|
|
135
|
+
top: options.top,
|
|
136
|
+
skip: options.skip,
|
|
137
|
+
},
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
async function fetchClientGroup(options) {
|
|
141
|
+
return sendRequest({
|
|
142
|
+
...options,
|
|
143
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/clientgroup`,
|
|
144
|
+
method: "GET",
|
|
145
|
+
query: { clientid: options.clientId },
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
async function fetchOrders(options) {
|
|
149
|
+
validateCostRateUsage(options.costRate, options.expand);
|
|
150
|
+
return sendRequest({
|
|
151
|
+
...options,
|
|
152
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders`,
|
|
153
|
+
method: "GET",
|
|
154
|
+
query: {
|
|
155
|
+
select: options.select,
|
|
156
|
+
filter: options.filter,
|
|
157
|
+
costrate: options.costRate,
|
|
158
|
+
top: options.top,
|
|
159
|
+
skip: options.skip,
|
|
160
|
+
expand: options.expand,
|
|
161
|
+
},
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
async function fetchOrder(options) {
|
|
165
|
+
const { orderId, ...rest } = options;
|
|
166
|
+
validateCostRateUsage(rest.costRate, rest.expand);
|
|
167
|
+
return sendRequest({
|
|
168
|
+
...rest,
|
|
169
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}`,
|
|
170
|
+
method: "GET",
|
|
171
|
+
query: {
|
|
172
|
+
select: rest.select,
|
|
173
|
+
costrate: rest.costRate,
|
|
174
|
+
expand: rest.expand,
|
|
175
|
+
},
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
async function updateOrder(options) {
|
|
179
|
+
const { orderId, order, ...rest } = options;
|
|
180
|
+
return sendRequest({
|
|
181
|
+
...rest,
|
|
182
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}`,
|
|
183
|
+
method: "PUT",
|
|
184
|
+
body: order,
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
async function fetchOrderMonthlyValues(options) {
|
|
188
|
+
const { orderId, ...rest } = options;
|
|
189
|
+
return sendRequest({
|
|
190
|
+
...rest,
|
|
191
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/monthlyvalues`,
|
|
192
|
+
method: "GET",
|
|
193
|
+
query: {
|
|
194
|
+
select: rest.select,
|
|
195
|
+
costrate: rest.costRate,
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
async function fetchOrdersMonthlyValues(options) {
|
|
200
|
+
return sendRequest({
|
|
201
|
+
...options,
|
|
202
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/monthlyvalues`,
|
|
203
|
+
method: "GET",
|
|
204
|
+
query: {
|
|
205
|
+
select: options.select,
|
|
206
|
+
filter: options.filter,
|
|
207
|
+
costrate: options.costRate,
|
|
208
|
+
top: options.top,
|
|
209
|
+
skip: options.skip,
|
|
210
|
+
},
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
async function fetchOrderCostItems(options) {
|
|
214
|
+
const { orderId, ...rest } = options;
|
|
215
|
+
return sendRequest({
|
|
216
|
+
...rest,
|
|
217
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/costitems`,
|
|
218
|
+
method: "GET",
|
|
219
|
+
query: { select: rest.select },
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
async function fetchOrdersCostItems(options) {
|
|
223
|
+
return sendRequest({
|
|
224
|
+
...options,
|
|
225
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/costitems`,
|
|
226
|
+
method: "GET",
|
|
227
|
+
query: {
|
|
228
|
+
select: options.select,
|
|
229
|
+
filter: options.filter,
|
|
230
|
+
top: options.top,
|
|
231
|
+
skip: options.skip,
|
|
232
|
+
},
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
async function fetchOrderStateWork(options) {
|
|
236
|
+
const { orderId, ...rest } = options;
|
|
237
|
+
return sendRequest({
|
|
238
|
+
...rest,
|
|
239
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/orderstatework`,
|
|
240
|
+
method: "GET",
|
|
241
|
+
query: { select: rest.select },
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
async function fetchOrdersStateWork(options) {
|
|
245
|
+
return sendRequest({
|
|
246
|
+
...options,
|
|
247
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/orderstatework`,
|
|
248
|
+
method: "GET",
|
|
249
|
+
query: {
|
|
250
|
+
select: options.select,
|
|
251
|
+
filter: options.filter,
|
|
252
|
+
top: options.top,
|
|
253
|
+
skip: options.skip,
|
|
254
|
+
},
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
async function fetchSubordersStateBilling(options) {
|
|
258
|
+
const { orderId, ...rest } = options;
|
|
259
|
+
return sendRequest({
|
|
260
|
+
...rest,
|
|
261
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/subordersstatebilling`,
|
|
262
|
+
method: "GET",
|
|
263
|
+
query: { select: rest.select },
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
async function fetchSubordersStateBillingAll(options) {
|
|
267
|
+
return sendRequest({
|
|
268
|
+
...options,
|
|
269
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/subordersstatebilling`,
|
|
270
|
+
method: "GET",
|
|
271
|
+
query: {
|
|
272
|
+
select: options.select,
|
|
273
|
+
filter: options.filter,
|
|
274
|
+
top: options.top,
|
|
275
|
+
skip: options.skip,
|
|
276
|
+
},
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
async function updateSuborder(options) {
|
|
280
|
+
const { orderId, suborderId, suborder, ...rest } = options;
|
|
281
|
+
return sendRequest({
|
|
282
|
+
...rest,
|
|
283
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/suborders/${encodeURIComponent(suborderId)}`,
|
|
284
|
+
method: "PUT",
|
|
285
|
+
body: suborder,
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
async function fetchOrderExpensePostings(options) {
|
|
289
|
+
const { orderId, ...rest } = options;
|
|
290
|
+
return sendRequest({
|
|
291
|
+
...rest,
|
|
292
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/expensepostings`,
|
|
293
|
+
method: "GET",
|
|
294
|
+
query: { select: rest.select },
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
async function fetchExpensePostings(options) {
|
|
298
|
+
return sendRequest({
|
|
299
|
+
...options,
|
|
300
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/expensepostings`,
|
|
301
|
+
method: "GET",
|
|
302
|
+
query: {
|
|
303
|
+
select: options.select,
|
|
304
|
+
filter: options.filter,
|
|
305
|
+
top: options.top,
|
|
306
|
+
skip: options.skip,
|
|
307
|
+
},
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
async function createExpensePosting(options) {
|
|
311
|
+
const { orderId, suborderId, expensePosting, automaticIntegration, deleteMassdataOnFailure, ...rest } = options;
|
|
312
|
+
return sendRequest({
|
|
313
|
+
...rest,
|
|
314
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/orders/${encodeURIComponent(orderId)}/suborders/${encodeURIComponent(suborderId)}/expensepostings`,
|
|
315
|
+
method: "POST",
|
|
316
|
+
query: {
|
|
317
|
+
automaticintegration: automaticIntegration,
|
|
318
|
+
deletemassdataonfailure: deleteMassdataOnFailure,
|
|
319
|
+
},
|
|
320
|
+
body: expensePosting,
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
async function fetchInvoice(options) {
|
|
324
|
+
const { invoiceId, ...rest } = options;
|
|
325
|
+
return sendRequest({
|
|
326
|
+
...rest,
|
|
327
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/invoices/${encodeURIComponent(invoiceId)}`,
|
|
328
|
+
method: "GET",
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
async function fetchInvoices(options) {
|
|
332
|
+
return sendRequest({
|
|
333
|
+
...options,
|
|
334
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/invoices`,
|
|
335
|
+
method: "GET",
|
|
336
|
+
query: {
|
|
337
|
+
select: options.select,
|
|
338
|
+
filter: options.filter,
|
|
339
|
+
top: options.top,
|
|
340
|
+
skip: options.skip,
|
|
341
|
+
},
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
async function fetchEmployeeCapacities(options) {
|
|
345
|
+
return sendRequest({
|
|
346
|
+
...options,
|
|
347
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/employeecapacities`,
|
|
348
|
+
method: "GET",
|
|
349
|
+
query: {
|
|
350
|
+
select: options.select,
|
|
351
|
+
filter: options.filter,
|
|
352
|
+
top: options.top,
|
|
353
|
+
skip: options.skip,
|
|
354
|
+
},
|
|
355
|
+
});
|
|
356
|
+
}
|
|
357
|
+
async function fetchEmployeesWithGroup(options) {
|
|
358
|
+
return sendRequest({
|
|
359
|
+
...options,
|
|
360
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/employeeswithgroup`,
|
|
361
|
+
method: "GET",
|
|
362
|
+
query: {
|
|
363
|
+
select: options.select,
|
|
364
|
+
filter: options.filter,
|
|
365
|
+
top: options.top,
|
|
366
|
+
skip: options.skip,
|
|
367
|
+
},
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
async function fetchEmployeeQualifications(options) {
|
|
371
|
+
return sendRequest({
|
|
372
|
+
...options,
|
|
373
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/employeesqualification`,
|
|
374
|
+
method: "GET",
|
|
375
|
+
query: {
|
|
376
|
+
select: options.select,
|
|
377
|
+
filter: options.filter,
|
|
378
|
+
top: options.top,
|
|
379
|
+
skip: options.skip,
|
|
380
|
+
},
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
async function fetchEmployeeCostRates(options) {
|
|
384
|
+
return sendRequest({
|
|
385
|
+
...options,
|
|
386
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/employeescostrate`,
|
|
387
|
+
method: "GET",
|
|
388
|
+
query: {
|
|
389
|
+
select: options.select,
|
|
390
|
+
filter: options.filter,
|
|
391
|
+
top: options.top,
|
|
392
|
+
skip: options.skip,
|
|
393
|
+
},
|
|
394
|
+
});
|
|
395
|
+
}
|
|
396
|
+
async function fetchChargeRates(options) {
|
|
397
|
+
return sendRequest({
|
|
398
|
+
...options,
|
|
399
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/chargerates`,
|
|
400
|
+
method: "GET",
|
|
401
|
+
query: {
|
|
402
|
+
select: options.select,
|
|
403
|
+
filter: options.filter,
|
|
404
|
+
top: options.top,
|
|
405
|
+
skip: options.skip,
|
|
406
|
+
},
|
|
407
|
+
});
|
|
408
|
+
}
|
|
409
|
+
async function fetchOrderManagementCostCenters(options) {
|
|
410
|
+
return sendRequest({
|
|
411
|
+
...options,
|
|
412
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/costcenters`,
|
|
413
|
+
method: "GET",
|
|
414
|
+
query: {
|
|
415
|
+
select: options.select,
|
|
416
|
+
filter: options.filter,
|
|
417
|
+
top: options.top,
|
|
418
|
+
skip: options.skip,
|
|
419
|
+
},
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
async function fetchFees(options) {
|
|
423
|
+
return sendRequest({
|
|
424
|
+
...options,
|
|
425
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/fees`,
|
|
426
|
+
method: "GET",
|
|
427
|
+
query: {
|
|
428
|
+
select: options.select,
|
|
429
|
+
filter: options.filter,
|
|
430
|
+
top: options.top,
|
|
431
|
+
skip: options.skip,
|
|
432
|
+
},
|
|
433
|
+
});
|
|
434
|
+
}
|
|
435
|
+
async function fetchFeePlans(options) {
|
|
436
|
+
return sendRequest({
|
|
437
|
+
...options,
|
|
438
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/feeplans`,
|
|
439
|
+
method: "GET",
|
|
440
|
+
query: {
|
|
441
|
+
select: options.select,
|
|
442
|
+
filter: options.filter,
|
|
443
|
+
top: options.top,
|
|
444
|
+
skip: options.skip,
|
|
445
|
+
},
|
|
446
|
+
});
|
|
447
|
+
}
|
|
448
|
+
async function fetchSelfClients(options) {
|
|
449
|
+
return sendRequest({
|
|
450
|
+
...options,
|
|
451
|
+
path: `${ORDER_MANAGEMENT_BASE_PATH}/selfclients`,
|
|
452
|
+
method: "GET",
|
|
453
|
+
query: {
|
|
454
|
+
select: options.select,
|
|
455
|
+
top: options.top,
|
|
456
|
+
skip: options.skip,
|
|
457
|
+
},
|
|
458
|
+
});
|
|
459
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities for DATEV API clients
|
|
3
|
+
*/
|
|
4
|
+
import { type HttpRequestHelper } from './httpHelpers';
|
|
5
|
+
export type JsonValue = null | boolean | number | string | JsonValue[] | {
|
|
6
|
+
[key: string]: JsonValue;
|
|
7
|
+
};
|
|
8
|
+
export { type HttpRequestHelper } from './httpHelpers';
|
|
9
|
+
export interface AuthenticateOptions {
|
|
10
|
+
host: string;
|
|
11
|
+
email: string;
|
|
12
|
+
password: string;
|
|
13
|
+
httpHelper?: HttpRequestHelper;
|
|
14
|
+
fetchImpl?: typeof fetch;
|
|
15
|
+
}
|
|
16
|
+
export interface AuthenticateResponse extends Record<string, JsonValue> {
|
|
17
|
+
access_token: string;
|
|
18
|
+
}
|
|
19
|
+
export interface BaseRequestOptions {
|
|
20
|
+
host: string;
|
|
21
|
+
token: string;
|
|
22
|
+
clientInstanceId: string;
|
|
23
|
+
httpHelper?: HttpRequestHelper;
|
|
24
|
+
fetchImpl?: typeof fetch;
|
|
25
|
+
}
|
|
26
|
+
export declare const JSON_CONTENT_TYPE = "application/json";
|
|
27
|
+
export declare const DEFAULT_ERROR_PREFIX = "DATEVconnect request failed";
|
|
28
|
+
export declare function normaliseBaseUrl(host: string): string;
|
|
29
|
+
export declare function buildHeaders(headers: Record<string, string | undefined>): HeadersInit;
|
|
30
|
+
export declare function readResponseBody(response: Response): Promise<JsonValue | string | undefined>;
|
|
31
|
+
export declare function extractErrorMessage(response: Response, body: JsonValue | string | undefined): string;
|
|
32
|
+
export declare function ensureSuccess(response: Response): Promise<JsonValue | undefined>;
|
|
33
|
+
export declare function buildApiUrl(host: string, path: string): URL;
|
|
34
|
+
/**
|
|
35
|
+
* Authenticate with DATEV API
|
|
36
|
+
* Uses httpHelper (n8n's httpRequest) when available, falls back to fetchImpl for tests, or global fetch
|
|
37
|
+
*/
|
|
38
|
+
export declare function authenticate(options: AuthenticateOptions): Promise<AuthenticateResponse>;
|
|
39
|
+
//# sourceMappingURL=shared.d.ts.map
|