sysone-api-mapper 1.0.101 → 1.0.103

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sysone-api-mapper",
3
- "version": "1.0.101",
3
+ "version": "1.0.103",
4
4
  "description": "Paquete mapper para portal de productores",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -22,7 +22,8 @@ import {
22
22
  getPolicyDetail_CNP,
23
23
  getPolicyIndividualDetail_Request,
24
24
  getPolicyDetail_Request,
25
- postInsureds_CNP
25
+ postInsureds_CNP,
26
+ getPolicyCollection_Request
26
27
  } from "./modules/policy";
27
28
  import {
28
29
  getActivityList,
@@ -423,7 +424,22 @@ const policyModule = {
423
424
  url: 'policy/v1/policy-individual/{0}/{1}/detail',
424
425
  method: methods.GET,
425
426
  requestMapper: request => ({ mappedParams: getPolicyDetail_Request(request) }),
426
- responseMapper: (response) => response.data
427
+ responseMapper: (response) => getPolicyDetail_CNP(response.data)
428
+ },
429
+ },
430
+
431
+ GET_COLLECTIONS: {
432
+ default: {
433
+ url: '/policy/v1/policies/{0}/collections',
434
+ method: methods.GET,
435
+ requestMapper: (request) => ({ mappedParams: request }),
436
+ responseMapper: (response) => response.data,
437
+ },
438
+ cnp: {
439
+ url: 'policy/v1/policy-individual/{0}/{1}/detail',
440
+ method: methods.GET,
441
+ requestMapper: request => ({ mappedParams: getPolicyCollection_Request(request) }),
442
+ responseMapper: (response) => getPolicyCollection(response.data)
427
443
  },
428
444
  },
429
445
 
@@ -53,18 +53,15 @@ const getEndorsements_CNP = async (response) => {
53
53
  const objectMapped = {
54
54
  values:
55
55
  response.endorsements.map((e) => ({
56
+ activeDate: e.dateFrom ? moment(e.dateFrom, 'DD/MM/YYYY').toISOString() : null,
56
57
  number: e.number,
57
- validityFrom: e.dateFrom ? moment(e.dateFrom, 'DD/MM/YYYY').toISOString() : null,
58
- validityTo: e.dateTo ? moment(e.dateTo, 'DD/MM/YYYY').toISOString() : null,
59
- activeDate: "N/A",
60
58
  type: {
61
- code: "N/A",
59
+ code: e.detail,
62
60
  name: e.detail,
63
- group: {
64
- code: "N/A",
65
- name: "N/A"
66
- }
61
+ group: {}
67
62
  },
63
+ validityFrom: e.dateFrom ? moment(e.dateFrom, 'DD/MM/YYYY').toISOString() : null,
64
+ validityTo: e.dateTo ? moment(e.dateTo, 'DD/MM/YYYY').toISOString() : null,
68
65
  }))
69
66
  ,
70
67
  total: response.endorsements.length,
@@ -148,214 +145,95 @@ const getPolicies_CNP_Request = (inputParams) => {
148
145
  }
149
146
 
150
147
 
151
- const getPolicyDetail_CNP = async (response) => {
148
+ const getPolicyDetail_CNP = async (data) => {
152
149
  const objectMapped = {
153
150
  policyData: {
154
- number: response?.number || null,
155
- alias: "N/A",
156
- currency: {
157
- name: response?.currency?.name || null,
158
- code: response?.currency?.code || null,
159
- mnemonic: "N/A",
160
- symbol: response?.currency?.symbol || null
151
+ alias: null,
152
+ creationDate: data.insured.policyDateFrom,
153
+ currency: data?.currency,
154
+ number: data.number,
155
+ process: data.status,
156
+ renewable: null,
157
+ validityy: {
158
+ dateFrom: data?.vigencyDateFrom,
159
+ dateTo: data?.vigencyDateTo,
161
160
  },
162
- validity: {
163
- type: {
164
- name: response?.currency?.name || null,
165
- code: response?.currency?.code || null,
166
- months: "N/A"
167
- },
168
- dateFrom: response?.vigencyDateFrom ? moment(response.vigencyDateFrom, 'YYYY/MM/DD').toISOString() : null,
169
- dateTo: response?.vigencyDateTo ? moment(response.vigencyDateTo, 'YYYY/MM/DD').toISOString() : null,
170
- },
171
- creationDate: response?.issueDate ? moment(response.issueDate, 'YYYY/MM/DD').toISOString() : null,
172
- renewable: true,
173
- process: {
174
- name: response?.status?.name || null,
175
- code: "N/A"
176
- }
177
161
  },
178
162
  roleData: {
179
163
  holder: {
180
- partyCode: response?.holder?.code || null,
181
- name: response?.holder?.firstName && response?.holder?.lastName
182
- ? `${response.holder.firstName} ${response.holder.lastName}` : response?.holder?.name || null,
183
164
  identification: {
184
- value: response?.holder?.identification?.number || null,
185
- type: {
186
- code: response?.holder?.identification?.type?.code || null,
187
- name: response?.holder?.identification?.type?.name || null,
188
- }
165
+ type: data?.holder.identification.type,
166
+ value: data?.holder.identification?.number
189
167
  },
168
+ name: data.holder.name,
169
+ partyCode: data.holder.code || data.holder.id,
170
+ partyType: null
190
171
  },
191
172
  contacts: [
192
173
  {
193
- partyCode: "N/A",
194
- name: "N/A",
195
174
  identification: {
196
- value: "N/A",
197
- type: {
198
- name: "N/A",
199
- code: "N/A"
200
- }
175
+ type: data?.holder.identification.type,
176
+ value: data?.holder.identification?.number
201
177
  },
202
- }
203
- ],
204
- legalResponsible: {
205
- partyCode: "N/A",
206
- name: "N/A",
207
- identification: {
208
- value: "N/A",
209
- type: {
210
- name: "N/A",
211
- code: "N/A"
212
- }
178
+ name: data.holder.name,
179
+ partyCode: data.holder.code || data.holder.id,
180
+ partyType: null
213
181
  },
214
- }
182
+ ]
215
183
  },
216
184
  collectionData: {
217
- holderDistribution: 0,
218
- insuredDistribution: 0,
219
- paymentFrequency: {
220
- name: response?.paymentMethod?.periodicity?.name || null,
221
- code: "N/A",
222
- },
223
185
  paymentMethodData: {
224
- cashMethodData: response?.paymentMethod?.name === "CASH" ? {
225
- values: [
226
- {
227
- code: "N/A",
228
- name: response?.currency?.name || null
229
- }
230
- ]
231
- } : null,
232
- bankAccountData: response?.paymentMethod?.name === "CBU" ? {
233
- values: [
234
- {
235
- code: "BA-1",
236
- number: "1",
237
- cbu: response?.paymentMethod?.bankAccountNumber || null,
238
- alias: "N/A",
239
- currency: {
240
- code: "N/A",
241
- name: response?.currency?.name || null
242
- },
243
- bankBranch: {
244
- name: "N/A",
245
- code: "N/A",
246
- bank: {
247
- name: "N/A",
248
- code: "N/A"
249
- }
250
- },
251
- bankAccountType: {
252
- name: "N/A",
253
- code: "N/A"
254
- }
255
- }
256
- ]
257
- } : null,
258
- creditCardData: response?.paymentMethod?.name === "CREDIT" ? {
259
- values: [
260
- {
261
- code: "N/A",
262
- ownerName: "N/A",
263
- cardType: {
264
- name: "N/A",
265
- code: "N/A"
266
- },
267
- cardProvider: {
268
- name: "N/A",
269
- code: "N/A"
270
- },
271
- number: "N/A",
272
- securityCode: "N/A",
273
- dateTo: "N/A"
274
- }
275
- ]
276
- } : null
186
+ simpleMethodData: {
187
+ number: data.paymentMethod.number,
188
+ type: data.paymentMethod.type,
189
+ }
277
190
  },
191
+ paymentFrequency: data.paymentMethod.periodicity
278
192
  },
279
193
  commercialStructureData: {
280
- data: {
281
- name: "N/A",
282
- code: "N/A",
283
- version: 0,
284
- description: "N/A",
285
- status: {
286
- name: "N/A",
287
- code: "N/A"
288
- }
289
- },
194
+ data: {},
290
195
  intermediaries: {
291
196
  values: [
292
197
  {
293
- code: response?.intermediary?.code?.toString() || null,
294
- name: response?.intermediary?.name || null,
295
- licence: "N/A",
296
- role: {
297
- name: "N/A",
298
- code: "N/A"
299
- },
300
- status: {
301
- name: "N/A",
302
- code: "N/A"
303
- }
198
+ code: data.intermediary.id,
199
+ name: data.intermediary.name,
200
+ role: null,
201
+ status: null
304
202
  }
305
203
  ]
306
204
  }
307
205
  },
308
206
  productData: {
309
- name: response?.product?.name || null,
310
- code: response?.product?.code || null,
311
- version: 0,
207
+ number: data.product.code || data.product.id,
208
+ name: data.product.name,
209
+ status: {},
312
210
  subsection: {
313
- name: "N/A",
314
- code: "N/A",
315
- section: {
316
- name: response?.section?.name || null,
317
- code: response?.section?.code || null,
318
- }
319
- },
320
- status: {
321
- name: response?.status?.name || null,
322
- code: "N/A"
323
- },
211
+ name: null,
212
+ code: null,
213
+ section: data.section
214
+ }
324
215
  },
325
216
  coverageData: {
326
- coverages: response?.insured?.coverages?.map((c) => (
327
- {
328
- coverage: {
329
- name: c?.name || null,
330
- code: 'N/A',
331
- calculatorType: {
332
- name: "N/A",
333
- code: "N/A"
334
- },
335
- type: {
336
- name: "N/A",
337
- code: "N/A",
338
- },
339
- },
340
- values: [
341
- {
342
- type: {
343
- name: "N/A",
344
- code: "N/A"
345
- },
346
- maxValue: "N/A",
347
- minValue: "N/A",
348
- }
349
- ],
350
- mortalityTable: {
351
- name: "N/A",
352
- code: "N/A",
353
- },
354
- ageType: {
355
- name: "N/A",
356
- code: "N/A",
357
- },
358
- })) || []
217
+ coverages: data?.insured?.coverages.map(cv =>
218
+ ({
219
+ ageType: null,
220
+ deductible: null,
221
+ coverage: {
222
+ calculatorType: null,
223
+ code: null,
224
+ name: cv.name,
225
+ type: cv.type
226
+ },
227
+ values: [{
228
+ minValue: cv.amount,
229
+ maxValue: cv.amount,
230
+ type: {
231
+ code: "INSURED_AMOUNT",
232
+ name: "Suma aseguradas"
233
+ }
234
+ }]
235
+
236
+ })),
359
237
  },
360
238
  expenseData: {
361
239
  values: []
@@ -371,25 +249,19 @@ const getPolicyDetail_CNP = async (response) => {
371
249
  comments: "N/A",
372
250
  },
373
251
  endorsementData: {
374
- number: response?.endorsementNumber || 0,
375
- validityFrom: "N/A",
376
- validityTo: "N/A",
377
- type: {
378
- name: "N/A",
379
- code: "N/A",
380
- }
252
+ number: data?.endorsementNumber
381
253
  },
382
254
  insurableData: {
383
255
  minimumQuantityInsured: 0,
384
- estimatedDeadline: response?.insured?.entranceDate || null,
256
+ estimatedDeadline: data?.insured?.entranceDate || null,
385
257
  minimumAge: 0,
386
258
  maximumAge: 0,
387
259
  maximumQuantityInsuredByEvent: 0,
388
260
  maximumAmountToIndemnify: "N/A",
389
- insurables: response?.insured ? [{
261
+ insurables: data?.insured ? [{
390
262
  type: {
391
- name: response?.insured?.type?.name || null,
392
- code: response?.insured?.type?.code || null,
263
+ name: data?.insured?.type?.name || null,
264
+ code: data?.insured?.type?.code || null,
393
265
  },
394
266
  wording: "N/A",
395
267
  minimumEntryAge: 0,
@@ -402,6 +274,23 @@ const getPolicyDetail_CNP = async (response) => {
402
274
  return objectMapped;
403
275
  }
404
276
 
277
+ const getPolicyCollection = async (data) => {
278
+ const objectMapped = {
279
+ billingForm: {},
280
+ holderDistribution: null,
281
+ insuredDistribution: null,
282
+ paymentFrecuency: data.paymentMethod.periodicity,
283
+ paymentMethodData: {
284
+ simpleMethodData: {
285
+ number: data.paymentMethod.number,
286
+ type: data.paymentMethod.type,
287
+ }
288
+ },
289
+
290
+ }
291
+ return objectMapped;
292
+ }
293
+
405
294
  const getPolicyCollectiveDetail_CNP = async (response) => {
406
295
  const objectMapped = {
407
296
  policyData: {
@@ -660,6 +549,10 @@ const getPolicyDetail_Request = (inputParams) => {
660
549
  return {
661
550
  }
662
551
  }
552
+ const getPolicyCollection_Request = (inputParams) => {
553
+ return {
554
+ }
555
+ }
663
556
  const getPolicyCollectiveDetail_Request = (inputParams) => {
664
557
  return {
665
558
  }
@@ -682,6 +575,8 @@ export {
682
575
  getPolicyCollectiveDetail_CNP,
683
576
  getPolicyCollectiveDetail_Request,
684
577
  getPolicyIndividualDetail_Request,
578
+ getPolicyCollection_Request,
685
579
  getEndorsements_Request,
686
- getPolicyDetail_Request
580
+ getPolicyDetail_Request,
581
+ getPolicyCollection
687
582
  }