n8n-nodes-servicem8-jobcreation 1.0.2 → 1.1.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/dist/nodes/ServiceM8JobCreation/helpers/api.js +32 -6
- package/dist/nodes/ServiceM8JobCreation/helpers/api.js.map +1 -1
- package/dist/nodes/ServiceM8JobCreation/helpers/clientMatcher.d.ts +25 -14
- package/dist/nodes/ServiceM8JobCreation/helpers/clientMatcher.js +67 -75
- package/dist/nodes/ServiceM8JobCreation/helpers/clientMatcher.js.map +1 -1
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientCreate.d.ts +4 -2
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientCreate.js +10 -2
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientCreate.js.map +1 -1
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientLookup.d.ts +7 -4
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientLookup.js +9 -6
- package/dist/nodes/ServiceM8JobCreation/operations/create/clientLookup.js.map +1 -1
- package/dist/nodes/ServiceM8JobCreation/operations/create/orchestrator.js +5 -5
- package/dist/nodes/ServiceM8JobCreation/operations/create/orchestrator.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,6 +10,7 @@ const BASE_URL = 'https://api.servicem8.com';
|
|
|
10
10
|
* Make an authenticated request to the ServiceM8 API
|
|
11
11
|
*/
|
|
12
12
|
async function serviceM8Request(context, options) {
|
|
13
|
+
var _a, _b, _c;
|
|
13
14
|
const { method = 'GET', endpoint, body, query, returnFullResponse = false } = options;
|
|
14
15
|
const requestOptions = {
|
|
15
16
|
method,
|
|
@@ -32,9 +33,18 @@ async function serviceM8Request(context, options) {
|
|
|
32
33
|
return response;
|
|
33
34
|
}
|
|
34
35
|
catch (error) {
|
|
36
|
+
// Extract the actual ServiceM8 error message from the response
|
|
35
37
|
const err = error;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
+
let errorMessage = err.message;
|
|
39
|
+
// Try to get the actual API error message
|
|
40
|
+
if ((_a = err.cause) === null || _a === void 0 ? void 0 : _a.message) {
|
|
41
|
+
errorMessage = err.cause.message;
|
|
42
|
+
}
|
|
43
|
+
else if ((_c = (_b = err.response) === null || _b === void 0 ? void 0 : _b.body) === null || _c === void 0 ? void 0 : _c.message) {
|
|
44
|
+
errorMessage = err.response.body.message;
|
|
45
|
+
}
|
|
46
|
+
throw new n8n_workflow_1.NodeApiError(context.getNode(), { message: errorMessage }, {
|
|
47
|
+
message: `ServiceM8 API error on ${endpoint}: ${errorMessage}`,
|
|
38
48
|
});
|
|
39
49
|
}
|
|
40
50
|
}
|
|
@@ -93,13 +103,29 @@ exports.parseArrayResponse = parseArrayResponse;
|
|
|
93
103
|
* Create a company (client) in ServiceM8
|
|
94
104
|
*/
|
|
95
105
|
async function createClient(context, data) {
|
|
106
|
+
// Build body with only non-empty values and is_individual as string per API docs
|
|
107
|
+
const body = {
|
|
108
|
+
name: data.name,
|
|
109
|
+
is_individual: String(data.is_individual),
|
|
110
|
+
active: 1,
|
|
111
|
+
};
|
|
112
|
+
// Only include address fields if they have values
|
|
113
|
+
if (data.address)
|
|
114
|
+
body.address = data.address;
|
|
115
|
+
if (data.address_street)
|
|
116
|
+
body.address_street = data.address_street;
|
|
117
|
+
if (data.address_city)
|
|
118
|
+
body.address_city = data.address_city;
|
|
119
|
+
if (data.address_state)
|
|
120
|
+
body.address_state = data.address_state;
|
|
121
|
+
if (data.address_postcode)
|
|
122
|
+
body.address_postcode = data.address_postcode;
|
|
123
|
+
if (data.address_country)
|
|
124
|
+
body.address_country = data.address_country;
|
|
96
125
|
const response = await serviceM8Request(context, {
|
|
97
126
|
method: 'POST',
|
|
98
127
|
endpoint: '/api_1.0/company.json',
|
|
99
|
-
body
|
|
100
|
-
...data,
|
|
101
|
-
active: 1,
|
|
102
|
-
},
|
|
128
|
+
body,
|
|
103
129
|
returnFullResponse: true,
|
|
104
130
|
});
|
|
105
131
|
const uuid = extractUuidFromResponse(response);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../nodes/ServiceM8JobCreation/helpers/api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../nodes/ServiceM8JobCreation/helpers/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Client Matching Logic
|
|
3
|
-
* Implements
|
|
3
|
+
* Implements exact name matching (case-insensitive) for client deduplication
|
|
4
|
+
* ServiceM8 enforces unique client names, so we match by name only
|
|
4
5
|
*/
|
|
5
|
-
import type { ServiceM8Client,
|
|
6
|
+
import type { ServiceM8Client, NameMatchResult, MatchResult, ClientMatchResult } from '../types/index';
|
|
6
7
|
/**
|
|
7
8
|
* Compare two names and return match quality
|
|
8
9
|
* - 'exact': normalized strings are equal
|
|
@@ -31,22 +32,31 @@ export declare function buildBothNameFormats(firstName: string, lastName: string
|
|
|
31
32
|
lastFirst: string;
|
|
32
33
|
};
|
|
33
34
|
/**
|
|
34
|
-
* Find the
|
|
35
|
-
*
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*
|
|
40
|
-
*
|
|
35
|
+
* Find the next available name with suffix for name conflicts
|
|
36
|
+
* e.g., if "David List" and "David List 1" exist, returns "David List 2"
|
|
37
|
+
*/
|
|
38
|
+
export declare function findNextAvailableName(baseName: string, existingClients: ServiceM8Client[]): string;
|
|
39
|
+
/**
|
|
40
|
+
* Find client by exact name match (case-insensitive)
|
|
41
|
+
* ServiceM8 enforces unique client names, so we only need to check exact matches
|
|
41
42
|
*
|
|
42
|
-
* For
|
|
43
|
-
*
|
|
44
|
-
* - Exact name + different address → create new (different person, same name)
|
|
45
|
-
* - Partial name + exact/near address → use existing
|
|
43
|
+
* For BUSINESSES: Exact name match → use existing
|
|
44
|
+
* For INDIVIDUALS: Exact name match → use existing (will add contact to it)
|
|
46
45
|
*/
|
|
47
|
-
export declare function findBestMatchingClient(searchName: string,
|
|
46
|
+
export declare function findBestMatchingClient(searchName: string, clients: ServiceM8Client[]): ClientMatchResult;
|
|
48
47
|
/**
|
|
49
48
|
* Determine the action to take based on contact and client matches
|
|
49
|
+
*
|
|
50
|
+
* ServiceM8 enforces unique client names, so the logic is:
|
|
51
|
+
*
|
|
52
|
+
* For INDIVIDUALS:
|
|
53
|
+
* - Exact name match + email matches existing contact → use existing client
|
|
54
|
+
* - Exact name match + no email match → create new client with numbered suffix
|
|
55
|
+
* - No name match → create new client
|
|
56
|
+
*
|
|
57
|
+
* For BUSINESSES:
|
|
58
|
+
* - Exact name match → use existing business, add contact
|
|
59
|
+
* - No name match → create new business
|
|
50
60
|
*/
|
|
51
61
|
export interface ActionDecisionInput {
|
|
52
62
|
contactExists: boolean;
|
|
@@ -62,6 +72,7 @@ export interface ActionDecisionResult {
|
|
|
62
72
|
reason: string;
|
|
63
73
|
needsClient: boolean;
|
|
64
74
|
needsContact: boolean;
|
|
75
|
+
needsNameSuffix: boolean;
|
|
65
76
|
clientUuid: string | null;
|
|
66
77
|
}
|
|
67
78
|
export declare function determineAction(input: ActionDecisionInput): ActionDecisionResult;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Client Matching Logic
|
|
4
|
-
* Implements
|
|
4
|
+
* Implements exact name matching (case-insensitive) for client deduplication
|
|
5
|
+
* ServiceM8 enforces unique client names, so we match by name only
|
|
5
6
|
*/
|
|
6
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.determineAction = exports.findBestMatchingClient = exports.buildBothNameFormats = exports.buildClientName = exports.matchClientName = void 0;
|
|
8
|
+
exports.determineAction = exports.findBestMatchingClient = exports.findNextAvailableName = exports.buildBothNameFormats = exports.buildClientName = exports.matchClientName = void 0;
|
|
8
9
|
const addressUtils_1 = require("./addressUtils");
|
|
9
10
|
/**
|
|
10
11
|
* Compare two names and return match quality
|
|
@@ -86,102 +87,87 @@ function buildBothNameFormats(firstName, lastName) {
|
|
|
86
87
|
}
|
|
87
88
|
exports.buildBothNameFormats = buildBothNameFormats;
|
|
88
89
|
/**
|
|
89
|
-
* Find the
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
* For BUSINESSES:
|
|
93
|
-
* - Exact name → use existing
|
|
94
|
-
* - Partial name + exact/near address → use existing (same business, name variant)
|
|
95
|
-
* - Partial name + no address match → create new
|
|
96
|
-
*
|
|
97
|
-
* For INDIVIDUALS:
|
|
98
|
-
* - Exact name + exact address → use existing
|
|
99
|
-
* - Exact name + different address → create new (different person, same name)
|
|
100
|
-
* - Partial name + exact/near address → use existing
|
|
90
|
+
* Find the next available name with suffix for name conflicts
|
|
91
|
+
* e.g., if "David List" and "David List 1" exist, returns "David List 2"
|
|
101
92
|
*/
|
|
102
|
-
function
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
let
|
|
106
|
-
for (const client of
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
if (
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
// Business: exact name always matches
|
|
113
|
-
matchedClient = client;
|
|
114
|
-
matchType = { name: 'exact', address: addressMatch };
|
|
115
|
-
matchReason = `Exact name match: "${client.name}"`;
|
|
116
|
-
break; // No need to check further
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
// Individual: exact name + exact address = match
|
|
120
|
-
if (addressMatch === 'exact') {
|
|
121
|
-
matchedClient = client;
|
|
122
|
-
matchType = { name: 'exact', address: 'exact' };
|
|
123
|
-
matchReason = `Exact name match: "${client.name}" with exact address`;
|
|
124
|
-
break;
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
// Same name but different address = different person
|
|
128
|
-
// Don't match, continue looking for a better match
|
|
129
|
-
// But record this as a potential issue
|
|
130
|
-
if (!matchedClient) {
|
|
131
|
-
matchReason = `Exact name match "${client.name}" but different address - different person`;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
93
|
+
function findNextAvailableName(baseName, existingClients) {
|
|
94
|
+
const normalizedBase = (0, addressUtils_1.normalizeForMatching)(baseName);
|
|
95
|
+
// Find all clients with matching base name or numbered variants
|
|
96
|
+
let highestSuffix = 0;
|
|
97
|
+
for (const client of existingClients) {
|
|
98
|
+
const normalizedClientName = (0, addressUtils_1.normalizeForMatching)(client.name);
|
|
99
|
+
// Check for exact base name match
|
|
100
|
+
if (normalizedClientName === normalizedBase) {
|
|
101
|
+
highestSuffix = Math.max(highestSuffix, 1);
|
|
102
|
+
continue;
|
|
135
103
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
matchReason = `Partial name "${client.name}" + ${addressMatch} address match`;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
// Partial name + different address = different client (don't match)
|
|
104
|
+
// Check for numbered variants like "Name 1", "Name 2", etc.
|
|
105
|
+
// Match pattern: baseName + space + number
|
|
106
|
+
const suffixPattern = new RegExp(`^${normalizedBase}(\\d+)$`);
|
|
107
|
+
const match = normalizedClientName.match(suffixPattern);
|
|
108
|
+
if (match) {
|
|
109
|
+
const suffix = parseInt(match[1], 10);
|
|
110
|
+
highestSuffix = Math.max(highestSuffix, suffix + 1);
|
|
147
111
|
}
|
|
148
112
|
}
|
|
149
|
-
|
|
150
|
-
|
|
113
|
+
// If no conflicts, return base name; otherwise append next number
|
|
114
|
+
if (highestSuffix === 0) {
|
|
115
|
+
return baseName;
|
|
116
|
+
}
|
|
117
|
+
return `${baseName} ${highestSuffix}`;
|
|
118
|
+
}
|
|
119
|
+
exports.findNextAvailableName = findNextAvailableName;
|
|
120
|
+
/**
|
|
121
|
+
* Find client by exact name match (case-insensitive)
|
|
122
|
+
* ServiceM8 enforces unique client names, so we only need to check exact matches
|
|
123
|
+
*
|
|
124
|
+
* For BUSINESSES: Exact name match → use existing
|
|
125
|
+
* For INDIVIDUALS: Exact name match → use existing (will add contact to it)
|
|
126
|
+
*/
|
|
127
|
+
function findBestMatchingClient(searchName, clients) {
|
|
128
|
+
const normalizedSearch = (0, addressUtils_1.normalizeForMatching)(searchName);
|
|
129
|
+
for (const client of clients) {
|
|
130
|
+
const normalizedClientName = (0, addressUtils_1.normalizeForMatching)(client.name);
|
|
131
|
+
if (normalizedSearch === normalizedClientName) {
|
|
132
|
+
return {
|
|
133
|
+
client,
|
|
134
|
+
matchType: { name: 'exact', address: 'none' },
|
|
135
|
+
reason: `Exact name match: "${client.name}"`,
|
|
136
|
+
};
|
|
137
|
+
}
|
|
151
138
|
}
|
|
152
139
|
return {
|
|
153
|
-
client:
|
|
154
|
-
matchType,
|
|
155
|
-
reason:
|
|
140
|
+
client: null,
|
|
141
|
+
matchType: { name: 'none', address: 'none' },
|
|
142
|
+
reason: 'No matching client found',
|
|
156
143
|
};
|
|
157
144
|
}
|
|
158
145
|
exports.findBestMatchingClient = findBestMatchingClient;
|
|
159
146
|
function determineAction(input) {
|
|
160
|
-
const { contactExists, existingContactClientUuid, matchedClient,
|
|
147
|
+
const { contactExists, existingContactClientUuid, matchedClient, matchReason, isBusiness, kind, } = input;
|
|
161
148
|
let clientUuid = null;
|
|
162
149
|
let needsClient = true;
|
|
163
150
|
let needsContact = true;
|
|
151
|
+
let needsNameSuffix = false;
|
|
164
152
|
if (matchedClient) {
|
|
165
|
-
// We found a
|
|
153
|
+
// We found a client with exact name match
|
|
166
154
|
clientUuid = matchedClient.uuid;
|
|
167
155
|
if (isBusiness) {
|
|
168
|
-
// BUSINESS
|
|
156
|
+
// BUSINESS: exact name match → use existing, add contact
|
|
169
157
|
needsClient = false;
|
|
170
158
|
}
|
|
171
159
|
else {
|
|
172
|
-
// INDIVIDUAL
|
|
173
|
-
if (
|
|
160
|
+
// INDIVIDUAL: check if contact email matches
|
|
161
|
+
if (contactExists && existingContactClientUuid === matchedClient.uuid) {
|
|
162
|
+
// Email matches existing contact on this client → use existing
|
|
174
163
|
needsClient = false;
|
|
175
164
|
}
|
|
176
|
-
else
|
|
177
|
-
//
|
|
165
|
+
else {
|
|
166
|
+
// Name matches but email doesn't → create new with suffix
|
|
178
167
|
needsClient = true;
|
|
168
|
+
needsNameSuffix = true;
|
|
179
169
|
clientUuid = null;
|
|
180
170
|
}
|
|
181
|
-
else {
|
|
182
|
-
// Partial match
|
|
183
|
-
needsClient = false;
|
|
184
|
-
}
|
|
185
171
|
}
|
|
186
172
|
}
|
|
187
173
|
// Determine if we need to create a contact
|
|
@@ -194,7 +180,12 @@ function determineAction(input) {
|
|
|
194
180
|
let reason;
|
|
195
181
|
if (needsClient) {
|
|
196
182
|
action = 'create_client_and_contact';
|
|
197
|
-
|
|
183
|
+
if (needsNameSuffix) {
|
|
184
|
+
reason = `${kind}: ${matchReason}; name conflict - creating new client with suffix`;
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
reason = `${kind}: ${matchReason}; creating new client and contact`;
|
|
188
|
+
}
|
|
198
189
|
}
|
|
199
190
|
else if (needsContact) {
|
|
200
191
|
action = 'create_contact_and_job';
|
|
@@ -209,6 +200,7 @@ function determineAction(input) {
|
|
|
209
200
|
reason,
|
|
210
201
|
needsClient,
|
|
211
202
|
needsContact,
|
|
203
|
+
needsNameSuffix,
|
|
212
204
|
clientUuid,
|
|
213
205
|
};
|
|
214
206
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientMatcher.js","sourceRoot":"","sources":["../../../../nodes/ServiceM8JobCreation/helpers/clientMatcher.ts"],"names":[],"mappings":";AAAA;;;
|
|
1
|
+
{"version":3,"file":"clientMatcher.js","sourceRoot":"","sources":["../../../../nodes/ServiceM8JobCreation/helpers/clientMatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Create client and company contact
|
|
4
4
|
*/
|
|
5
5
|
import type { IExecuteFunctions } from 'n8n-workflow';
|
|
6
|
-
import type { AddressParts } from '../../types';
|
|
6
|
+
import type { AddressParts, ServiceM8Client } from '../../types';
|
|
7
7
|
export interface ClientCreateInput {
|
|
8
8
|
clientName: string;
|
|
9
9
|
isIndividual: number;
|
|
@@ -21,6 +21,7 @@ export interface ContactCreateInput {
|
|
|
21
21
|
export interface ClientCreateResult {
|
|
22
22
|
clientUuid: string;
|
|
23
23
|
clientCreated: boolean;
|
|
24
|
+
clientName: string;
|
|
24
25
|
}
|
|
25
26
|
export interface ContactCreateResult {
|
|
26
27
|
contactUuid?: string;
|
|
@@ -28,8 +29,9 @@ export interface ContactCreateResult {
|
|
|
28
29
|
}
|
|
29
30
|
/**
|
|
30
31
|
* Create a new client if needed
|
|
32
|
+
* If needsNameSuffix is true, appends a number to the name to make it unique
|
|
31
33
|
*/
|
|
32
|
-
export declare function createClientIfNeeded(context: IExecuteFunctions, needsClient: boolean, existingClientUuid: string | null, input: ClientCreateInput): Promise<ClientCreateResult>;
|
|
34
|
+
export declare function createClientIfNeeded(context: IExecuteFunctions, needsClient: boolean, existingClientUuid: string | null, input: ClientCreateInput, needsNameSuffix?: boolean, allClients?: ServiceM8Client[]): Promise<ClientCreateResult>;
|
|
33
35
|
/**
|
|
34
36
|
* Create a company contact if needed
|
|
35
37
|
*/
|
|
@@ -7,18 +7,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.createCompanyContactIfNeeded = exports.createClientIfNeeded = void 0;
|
|
8
8
|
const api_1 = require("../../helpers/api");
|
|
9
9
|
const contactLookup_1 = require("./contactLookup");
|
|
10
|
+
const clientMatcher_1 = require("../../helpers/clientMatcher");
|
|
10
11
|
/**
|
|
11
12
|
* Create a new client if needed
|
|
13
|
+
* If needsNameSuffix is true, appends a number to the name to make it unique
|
|
12
14
|
*/
|
|
13
|
-
async function createClientIfNeeded(context, needsClient, existingClientUuid, input) {
|
|
15
|
+
async function createClientIfNeeded(context, needsClient, existingClientUuid, input, needsNameSuffix = false, allClients = []) {
|
|
14
16
|
if (!needsClient && existingClientUuid) {
|
|
15
17
|
return {
|
|
16
18
|
clientUuid: existingClientUuid,
|
|
17
19
|
clientCreated: false,
|
|
20
|
+
clientName: input.clientName,
|
|
18
21
|
};
|
|
19
22
|
}
|
|
23
|
+
// Generate unique name if there's a conflict
|
|
24
|
+
const clientName = needsNameSuffix
|
|
25
|
+
? (0, clientMatcher_1.findNextAvailableName)(input.clientName, allClients)
|
|
26
|
+
: input.clientName;
|
|
20
27
|
const clientUuid = await (0, api_1.createClient)(context, {
|
|
21
|
-
name:
|
|
28
|
+
name: clientName,
|
|
22
29
|
is_individual: input.isIndividual,
|
|
23
30
|
address: input.clientAddress,
|
|
24
31
|
address_street: input.clientAddressParts.street,
|
|
@@ -30,6 +37,7 @@ async function createClientIfNeeded(context, needsClient, existingClientUuid, in
|
|
|
30
37
|
return {
|
|
31
38
|
clientUuid,
|
|
32
39
|
clientCreated: true,
|
|
40
|
+
clientName,
|
|
33
41
|
};
|
|
34
42
|
}
|
|
35
43
|
exports.createClientIfNeeded = createClientIfNeeded;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientCreate.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/clientCreate.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,2CAAuE;AACvE,mDAA6D;
|
|
1
|
+
{"version":3,"file":"clientCreate.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/clientCreate.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,2CAAuE;AACvE,mDAA6D;AAC7D,+DAAoE;AA6BpE;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CACzC,OAA0B,EAC1B,WAAoB,EACpB,kBAAiC,EACjC,KAAwB,EACxB,kBAA2B,KAAK,EAChC,aAAgC,EAAE;IAElC,IAAI,CAAC,WAAW,IAAI,kBAAkB,EAAE;QACvC,OAAO;YACN,UAAU,EAAE,kBAAkB;YAC9B,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC5B,CAAC;KACF;IAED,6CAA6C;IAC7C,MAAM,UAAU,GAAG,eAAe;QACjC,CAAC,CAAC,IAAA,qCAAqB,EAAC,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC;QACrD,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAEpB,MAAM,UAAU,GAAG,MAAM,IAAA,kBAAY,EAAC,OAAO,EAAE;QAC9C,IAAI,EAAE,UAAU;QAChB,aAAa,EAAE,KAAK,CAAC,YAAY;QACjC,OAAO,EAAE,KAAK,CAAC,aAAa;QAC5B,cAAc,EAAE,KAAK,CAAC,kBAAkB,CAAC,MAAM;QAC/C,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAAC,IAAI;QAC3C,aAAa,EAAE,KAAK,CAAC,kBAAkB,CAAC,KAAK;QAC7C,gBAAgB,EAAE,KAAK,CAAC,kBAAkB,CAAC,QAAQ;QACnD,eAAe,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO;KACjD,CAAC,CAAC;IAEH,OAAO;QACN,UAAU;QACV,aAAa,EAAE,IAAI;QACnB,UAAU;KACV,CAAC;AACH,CAAC;AArCD,oDAqCC;AAED;;GAEG;AACI,KAAK,UAAU,4BAA4B,CACjD,OAA0B,EAC1B,YAAqB,EACrB,UAAkB,EAClB,kBAAuD,EACvD,KAAyB;IAEzB,mDAAmD;IACnD,IAAI,YAAY,IAAI,kBAAkB,EAAE;QACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,IAAA,0CAA0B,EAC9C,OAAO,EACP,UAAU,EACV,kBAAkB,EAClB,UAAU,CACV,CAAC;QACF,IAAI,MAAM,EAAE;YACX,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;SACjC;KACD;IAED,IAAI,CAAC,YAAY,EAAE;QAClB,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;KACjC;IAED,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAoB,EAAC,OAAO,EAAE;QACvD,YAAY,EAAE,UAAU;QACxB,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS;QAC/B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,SAAS;QACjC,IAAI,EAAE,SAAS;KACf,CAAC,CAAC;IAEH,OAAO;QACN,WAAW;QACX,cAAc,EAAE,IAAI;KACpB,CAAC;AACH,CAAC;AAvCD,oEAuCC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Client Lookup Operations
|
|
3
3
|
* Find and match existing clients with decision logic
|
|
4
|
+
* Uses exact name matching (case-insensitive) since ServiceM8 enforces unique names
|
|
4
5
|
*/
|
|
5
6
|
import type { IExecuteFunctions } from 'n8n-workflow';
|
|
6
|
-
import type { ServiceM8Client, ServiceM8Contact,
|
|
7
|
+
import type { ServiceM8Client, ServiceM8Contact, MatchResult } from '../../types';
|
|
7
8
|
import { type ActionDecisionResult } from '../../helpers/clientMatcher';
|
|
8
9
|
export interface ClientLookupResult {
|
|
9
10
|
allClients: ServiceM8Client[];
|
|
@@ -19,10 +20,12 @@ export interface ActionResult extends ActionDecisionResult {
|
|
|
19
20
|
clientsChecked: number;
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
|
-
* Look up
|
|
23
|
+
* Look up all active clients (both business and individual)
|
|
24
|
+
* We need all clients to check for name conflicts and find suffix numbers
|
|
23
25
|
*/
|
|
24
|
-
export declare function lookupClients(context: IExecuteFunctions
|
|
26
|
+
export declare function lookupClients(context: IExecuteFunctions): Promise<ServiceM8Client[]>;
|
|
25
27
|
/**
|
|
26
28
|
* Find the best matching client and determine action to take
|
|
29
|
+
* Uses exact name matching only (case-insensitive)
|
|
27
30
|
*/
|
|
28
|
-
export declare function findMatchingClientAndDetermineAction(clientName: string,
|
|
31
|
+
export declare function findMatchingClientAndDetermineAction(clientName: string, allClients: ServiceM8Client[], isBusiness: boolean, kind: 'business' | 'person', existingContact: ServiceM8Contact | null): ActionResult;
|
|
@@ -2,29 +2,32 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Client Lookup Operations
|
|
4
4
|
* Find and match existing clients with decision logic
|
|
5
|
+
* Uses exact name matching (case-insensitive) since ServiceM8 enforces unique names
|
|
5
6
|
*/
|
|
6
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
8
|
exports.findMatchingClientAndDetermineAction = exports.lookupClients = void 0;
|
|
8
9
|
const api_1 = require("../../helpers/api");
|
|
9
10
|
const clientMatcher_1 = require("../../helpers/clientMatcher");
|
|
10
11
|
/**
|
|
11
|
-
* Look up
|
|
12
|
+
* Look up all active clients (both business and individual)
|
|
13
|
+
* We need all clients to check for name conflicts and find suffix numbers
|
|
12
14
|
*/
|
|
13
|
-
async function lookupClients(context
|
|
15
|
+
async function lookupClients(context) {
|
|
14
16
|
const clientsResponse = await (0, api_1.serviceM8Request)(context, {
|
|
15
17
|
method: 'GET',
|
|
16
18
|
endpoint: '/api_1.0/company.json',
|
|
17
|
-
query: { $filter:
|
|
19
|
+
query: { $filter: 'active eq 1' },
|
|
18
20
|
});
|
|
19
21
|
return (0, api_1.parseArrayResponse)(clientsResponse);
|
|
20
22
|
}
|
|
21
23
|
exports.lookupClients = lookupClients;
|
|
22
24
|
/**
|
|
23
25
|
* Find the best matching client and determine action to take
|
|
26
|
+
* Uses exact name matching only (case-insensitive)
|
|
24
27
|
*/
|
|
25
|
-
function findMatchingClientAndDetermineAction(clientName,
|
|
26
|
-
// Find
|
|
27
|
-
const matchResult = (0, clientMatcher_1.findBestMatchingClient)(clientName,
|
|
28
|
+
function findMatchingClientAndDetermineAction(clientName, allClients, isBusiness, kind, existingContact) {
|
|
29
|
+
// Find client with exact name match
|
|
30
|
+
const matchResult = (0, clientMatcher_1.findBestMatchingClient)(clientName, allClients);
|
|
28
31
|
// Determine what action to take
|
|
29
32
|
const actionResult = (0, clientMatcher_1.determineAction)({
|
|
30
33
|
contactExists: existingContact !== null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientLookup.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/clientLookup.ts"],"names":[],"mappings":";AAAA;;;
|
|
1
|
+
{"version":3,"file":"clientLookup.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/clientLookup.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAQH,2CAAyE;AACzE,+DAIqC;AAiBrC;;;GAGG;AACI,KAAK,UAAU,aAAa,CAClC,OAA0B;IAE1B,MAAM,eAAe,GAAG,MAAM,IAAA,sBAAgB,EAAC,OAAO,EAAE;QACvD,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,uBAAuB;QACjC,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE;KACjC,CAAC,CAAC;IAEH,OAAO,IAAA,wBAAkB,EAAkB,eAAe,CAAC,CAAC;AAC7D,CAAC;AAVD,sCAUC;AAED;;;GAGG;AACH,SAAgB,oCAAoC,CACnD,UAAkB,EAClB,UAA6B,EAC7B,UAAmB,EACnB,IAA2B,EAC3B,eAAwC;IAExC,oCAAoC;IACpC,MAAM,WAAW,GAAG,IAAA,sCAAsB,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEnE,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAA,+BAAe,EAAC;QACpC,aAAa,EAAE,eAAe,KAAK,IAAI;QACvC,yBAAyB,EAAE,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,YAAY,KAAI,IAAI;QAChE,aAAa,EAAE,WAAW,CAAC,MAAM;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,WAAW,EAAE,WAAW,CAAC,MAAM;QAC/B,UAAU;QACV,IAAI;KACJ,CAAC,CAAC;IAEH,OAAO;QACN,GAAG,YAAY;QACf,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,WAAW,EAAE,WAAW,CAAC,MAAM;QAC/B,cAAc,EAAE,UAAU,CAAC,MAAM;KACjC,CAAC;AACH,CAAC;AA3BD,oFA2BC"}
|
|
@@ -30,16 +30,16 @@ async function executeJobCreation(context, itemIndex) {
|
|
|
30
30
|
const input = (0, inputProcessor_1.processInput)(context, itemIndex);
|
|
31
31
|
// 2. Look up existing contact
|
|
32
32
|
const { existingContact } = await (0, contactLookup_1.lookupContact)(context, input.contactLookupFilter, input.contactLookupField);
|
|
33
|
-
// 3. Look up clients and determine action
|
|
34
|
-
const allClients = await (0, clientLookup_1.lookupClients)(context
|
|
35
|
-
const actionResult = (0, clientLookup_1.findMatchingClientAndDetermineAction)(input.clientName,
|
|
36
|
-
// 4. Create client if needed
|
|
33
|
+
// 3. Look up clients and determine action (name-based matching only)
|
|
34
|
+
const allClients = await (0, clientLookup_1.lookupClients)(context);
|
|
35
|
+
const actionResult = (0, clientLookup_1.findMatchingClientAndDetermineAction)(input.clientName, allClients, input.isBusiness, input.kind, existingContact);
|
|
36
|
+
// 4. Create client if needed (with name suffix for conflicts)
|
|
37
37
|
const clientResult = await (0, clientCreate_1.createClientIfNeeded)(context, actionResult.needsClient, actionResult.clientUuid, {
|
|
38
38
|
clientName: input.clientName,
|
|
39
39
|
isIndividual: input.isIndividual,
|
|
40
40
|
clientAddress: input.clientAddress,
|
|
41
41
|
clientAddressParts: input.clientAddressParts,
|
|
42
|
-
});
|
|
42
|
+
}, actionResult.needsNameSuffix, allClients);
|
|
43
43
|
if (!clientResult.clientUuid) {
|
|
44
44
|
throw new Error('Failed to determine or create client UUID');
|
|
45
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/orchestrator.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,uCAAwD;AACxD,2CAA2C;AAE3C,qDAAgD;AAChD,mDAAgD;AAChD,iDAAqF;AACrF,iDAAoF;AACpF,2CAAmD;AACnD,qDAAkD;AAClD,+CAA4C;AAC5C,mDAAoD;AACpD,yDAAsD;AACtD,mEAAgE;AAChE,uDAAoD;AAEpD;;;GAGG;AACI,KAAK,UAAU,kBAAkB,CACvC,OAA0B,EAC1B,SAAiB;;IAEjB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,8BAA8B;IAC9B,MAAM,KAAK,GAAG,IAAA,6BAAY,EAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE/C,8BAA8B;IAC9B,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,IAAA,6BAAa,EAC9C,OAAO,EACP,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,kBAAkB,CACxB,CAAC;IAEF,
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../nodes/ServiceM8JobCreation/operations/create/orchestrator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED