rez_core 2.2.203 → 2.2.204
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.
|
@@ -26,20 +26,27 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
26
26
|
}
|
|
27
27
|
async sendMailWrapper(payload, loggedInUser) {
|
|
28
28
|
try {
|
|
29
|
+
this.logger.log(`sendMailWrapper called. User: ${JSON.stringify(loggedInUser)}, Payload: ${JSON.stringify(payload)}`);
|
|
29
30
|
const { level_id, level_type, organization_id } = loggedInUser;
|
|
31
|
+
this.logger.debug(`Fetching configs for level_id=${level_id}, level_type=${level_type}`);
|
|
30
32
|
const configs = await this.datasource.query(`SELECT *
|
|
31
33
|
FROM cr_communication_hub
|
|
32
34
|
WHERE level_id = ?
|
|
33
35
|
AND level_type = ?
|
|
34
36
|
AND communication_config_type = 'EMAIL'`, [level_id, level_type]);
|
|
37
|
+
this.logger.debug(`Configs found: ${JSON.stringify(configs)}`);
|
|
35
38
|
let templateCode;
|
|
36
39
|
if (payload.templateCode) {
|
|
40
|
+
this.logger.debug(`Looking up templateCode=${payload.templateCode} for current level`);
|
|
37
41
|
const template = await this.datasource.query(`SELECT rich_text FROM cr_wf_comm_template WHERE code = ? AND level_id = ? AND level_type = ? LIMIT 1`, [payload.templateCode, level_id, level_type]);
|
|
42
|
+
this.logger.debug(`Template lookup result: ${JSON.stringify(template)}`);
|
|
38
43
|
if (template && template.length > 0) {
|
|
39
|
-
templateCode = template[0]
|
|
44
|
+
templateCode = template[0]?.rich_text;
|
|
40
45
|
}
|
|
41
46
|
else {
|
|
47
|
+
this.logger.warn(`Template not found at user level. Falling back to ORG-level template`);
|
|
42
48
|
const fallbackTemplate = await this.datasource.query(`SELECT code FROM cr_wf_comm_template WHERE code = ? AND level_id = ? AND level_type = 'ORG' LIMIT 1`, [payload.templateCode, organization_id]);
|
|
49
|
+
this.logger.debug(`Fallback template lookup: ${JSON.stringify(fallbackTemplate)}`);
|
|
43
50
|
if (!fallbackTemplate || fallbackTemplate.length === 0) {
|
|
44
51
|
throw new Error(`Template with code ${payload.templateCode} not found at user or org level`);
|
|
45
52
|
}
|
|
@@ -48,6 +55,7 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
48
55
|
}
|
|
49
56
|
let payloadSendMail;
|
|
50
57
|
if (configs && configs.length > 0) {
|
|
58
|
+
this.logger.debug(`Using user-level configs`);
|
|
51
59
|
payloadSendMail = {
|
|
52
60
|
levelId: level_id,
|
|
53
61
|
levelType: level_type,
|
|
@@ -64,10 +72,12 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
64
72
|
};
|
|
65
73
|
}
|
|
66
74
|
else {
|
|
75
|
+
this.logger.warn(`No user-level configs found. Falling back to ORG-level`);
|
|
67
76
|
const fallbackConfigs = await this.datasource.query(`SELECT *
|
|
68
77
|
FROM cr_communication_hub
|
|
69
78
|
WHERE level_type = 'ORG'
|
|
70
79
|
AND communication_config_type = 'EMAIL'`);
|
|
80
|
+
this.logger.debug(`ORG-level configs: ${JSON.stringify(fallbackConfigs)}`);
|
|
71
81
|
if (!fallbackConfigs || fallbackConfigs.length === 0) {
|
|
72
82
|
throw new Error('No active email communication config found');
|
|
73
83
|
}
|
|
@@ -80,20 +90,22 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
80
90
|
type: 'EMAIL',
|
|
81
91
|
cc: payload.cc,
|
|
82
92
|
bcc: payload.bcc,
|
|
83
|
-
html: payload.
|
|
93
|
+
html: payload.message,
|
|
84
94
|
attachments: payload.attachments,
|
|
85
95
|
templateId: payload.templateId,
|
|
86
96
|
variables: payload.variables,
|
|
87
97
|
};
|
|
88
98
|
}
|
|
99
|
+
this.logger.debug(`Final payload for CommunicationService: ${JSON.stringify(payloadSendMail)}`);
|
|
89
100
|
const result = await this.communicationService.sendGenericMessage(payloadSendMail);
|
|
101
|
+
this.logger.log(`sendMailWrapper SUCCESS. Result: ${JSON.stringify(result)}`);
|
|
90
102
|
return {
|
|
91
103
|
success: true,
|
|
92
104
|
data: result,
|
|
93
105
|
};
|
|
94
106
|
}
|
|
95
107
|
catch (error) {
|
|
96
|
-
this.logger.error(
|
|
108
|
+
this.logger.error(`sendMailWrapper ERROR: ${error.message}`, error.stack);
|
|
97
109
|
return {
|
|
98
110
|
success: false,
|
|
99
111
|
error: error.message,
|
|
@@ -102,62 +114,81 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
102
114
|
}
|
|
103
115
|
async scheduleMeetingWrapper(payload, loggedInUser) {
|
|
104
116
|
try {
|
|
105
|
-
this.logger.log(`scheduleMeetingWrapper called by user
|
|
117
|
+
this.logger.log(`scheduleMeetingWrapper called by user=${loggedInUser?.id || 'unknown'} Payload=${JSON.stringify(payload)}`);
|
|
106
118
|
const { level_id, level_type } = loggedInUser;
|
|
119
|
+
this.logger.debug(`Fetching user-level config for scheduling. level_id=${level_id}, level_type=${level_type}`);
|
|
107
120
|
const userConfigs = await this.datasource.query(`SELECT *
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
121
|
+
FROM cr_communication_hub
|
|
122
|
+
WHERE level_id = ?
|
|
123
|
+
AND level_type = ?
|
|
124
|
+
AND communication_config_type = 'EMAIL'
|
|
125
|
+
AND service = 'API'`, [level_id, level_type]);
|
|
126
|
+
this.logger.debug(`User configs found: ${JSON.stringify(userConfigs)}`);
|
|
113
127
|
if (userConfigs && userConfigs.length > 0) {
|
|
114
128
|
const provider = userConfigs[0]?.provider;
|
|
115
129
|
const configId = userConfigs[0]?.config_id;
|
|
130
|
+
this.logger.debug(`User config provider=${provider}, configId=${configId}`);
|
|
116
131
|
if (provider === 'gmail') {
|
|
132
|
+
this.logger.log(`Using Google Calendar for scheduling`);
|
|
117
133
|
const creds = await this.getConfigCred(configId);
|
|
134
|
+
this.logger.debug(`Google creds: ${JSON.stringify(creds)}`);
|
|
118
135
|
if (creds) {
|
|
119
136
|
const result = await this.googleService.createEvent(creds, payload);
|
|
137
|
+
this.logger.log(`Google Calendar createEvent SUCCESS: ${JSON.stringify(result)}`);
|
|
120
138
|
return { success: true, data: result };
|
|
121
139
|
}
|
|
122
140
|
}
|
|
141
|
+
this.logger.log(`Non-Gmail provider detected. Falling back to ICS`);
|
|
123
142
|
const result = await this.sendIcsFallback(payload, level_id, level_type);
|
|
124
143
|
return { success: true, data: result };
|
|
125
144
|
}
|
|
145
|
+
this.logger.warn(`No user-level config found. Checking ORG-level configs...`);
|
|
126
146
|
const orgConfigs = await this.datasource.query(`SELECT *
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
147
|
+
FROM cr_communication_hub
|
|
148
|
+
WHERE level_type = 'ORG'
|
|
149
|
+
AND level_id = 1
|
|
150
|
+
AND communication_config_type = 'EMAIL'
|
|
151
|
+
AND service = 'API'`);
|
|
152
|
+
this.logger.debug(`ORG configs found: ${JSON.stringify(orgConfigs)}`);
|
|
132
153
|
if (orgConfigs && orgConfigs.length > 0) {
|
|
133
154
|
const provider = orgConfigs[0].provider;
|
|
134
155
|
const configId = orgConfigs[0].config_id;
|
|
156
|
+
this.logger.debug(`ORG config provider=${provider}, configId=${configId}`);
|
|
135
157
|
if (provider === 'gmail') {
|
|
158
|
+
this.logger.log(`Using ORG Google Calendar for scheduling`);
|
|
136
159
|
const creds = await this.getConfigCred(configId);
|
|
160
|
+
this.logger.debug(`ORG Google creds: ${JSON.stringify(creds)}`);
|
|
137
161
|
if (creds) {
|
|
138
162
|
const result = await this.googleService.createEvent(creds, payload);
|
|
163
|
+
this.logger.log(`ORG Google Calendar createEvent SUCCESS: ${JSON.stringify(result)}`);
|
|
139
164
|
return { success: true, data: result };
|
|
140
165
|
}
|
|
141
166
|
}
|
|
167
|
+
this.logger.log(`ORG Non-Gmail provider. Falling back to ICS`);
|
|
142
168
|
const result = await this.sendIcsFallback(payload, 1, 'ORG');
|
|
143
169
|
return { success: true, data: result };
|
|
144
170
|
}
|
|
171
|
+
this.logger.error(`No configs found anywhere. Defaulting to ORG ICS fallback`);
|
|
145
172
|
const result = await this.sendIcsFallback(payload, 1, 'ORG');
|
|
146
173
|
return { success: true, data: result };
|
|
147
174
|
}
|
|
148
175
|
catch (error) {
|
|
149
|
-
this.logger.error(
|
|
176
|
+
this.logger.error(`scheduleMeetingWrapper ERROR: ${error.message}`, error.stack);
|
|
150
177
|
return { success: false, error: error.message };
|
|
151
178
|
}
|
|
152
179
|
}
|
|
153
180
|
async getConfigCred(configId) {
|
|
181
|
+
this.logger.debug(`Fetching config JSON for configId=${configId}`);
|
|
154
182
|
const configRes = await this.datasource.query(`SELECT config_json
|
|
155
183
|
FROM cr_communication_config
|
|
156
184
|
WHERE id = ?`, [configId]);
|
|
185
|
+
this.logger.debug(`Config fetch result: ${JSON.stringify(configRes)}`);
|
|
157
186
|
return configRes?.[0]?.config_json || null;
|
|
158
187
|
}
|
|
159
188
|
async sendIcsFallback(payload, levelId, levelType) {
|
|
189
|
+
this.logger.log(`Generating ICS file for fallback. Payload: ${JSON.stringify(payload)}`);
|
|
160
190
|
const base64String = await this.icsService.generateIcs(payload);
|
|
191
|
+
this.logger.debug(`ICS generated (base64 length: ${base64String?.length})`);
|
|
161
192
|
const payloadSendMail = {
|
|
162
193
|
levelId,
|
|
163
194
|
levelType,
|
|
@@ -179,7 +210,10 @@ let WrapperService = WrapperService_1 = class WrapperService {
|
|
|
179
210
|
templateId: payload.templateId,
|
|
180
211
|
variables: payload.variables,
|
|
181
212
|
};
|
|
182
|
-
|
|
213
|
+
this.logger.debug(`Final payload for ICS send: ${JSON.stringify(payloadSendMail)}`);
|
|
214
|
+
const result = await this.communicationService.sendGenericMessage(payloadSendMail);
|
|
215
|
+
this.logger.log(`ICS fallback mail send result: ${JSON.stringify(result)}`);
|
|
216
|
+
return result;
|
|
183
217
|
}
|
|
184
218
|
};
|
|
185
219
|
exports.WrapperService = WrapperService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapper.service.js","sourceRoot":"","sources":["../../../../src/module/communication/service/wrapper.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,qCAAqC;AACrC,mEAGiC;AACjC,qEAAyD;AACzD,+DAAuE;AAGhE,IAAM,cAAc,sBAApB,MAAM,cAAc;IAGzB,YACmB,UAAsB,EACtB,oBAA0C,EAC1C,aAA4B,EAC5B,UAA6B;QAH7B,eAAU,GAAV,UAAU,CAAY;QACtB,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,kBAAa,GAAb,aAAa,CAAe;QAC5B,eAAU,GAAV,UAAU,CAAmB;QAN/B,WAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;IAOvD,CAAC;IAKJ,KAAK,CAAC,eAAe,CAAC,OAAY,EAAE,YAAiB;QACnD,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,YAAY,CAAC;YAG/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACzC;;;;mDAI2C,EAC3C,CAAC,QAAQ,EAAE,UAAU,CAAC,CACvB,CAAC;
|
|
1
|
+
{"version":3,"file":"wrapper.service.js","sourceRoot":"","sources":["../../../../src/module/communication/service/wrapper.service.ts"],"names":[],"mappings":"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"}
|