node-sped-nfe 1.2.35 → 1.2.37
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/utils/make.d.ts +16 -15
- package/dist/utils/make.js +112 -10
- package/dist/utils/tools.js +2 -1
- package/package.json +1 -1
package/dist/utils/make.d.ts
CHANGED
@@ -16,11 +16,11 @@ declare class Make {
|
|
16
16
|
tagAutXML(obj: any): void;
|
17
17
|
tagProd(obj: any): Promise<void>;
|
18
18
|
tagCreditoPresumidoProd(obj: any): void;
|
19
|
-
taginfAdProd(index:
|
19
|
+
taginfAdProd(index: number, obj: any): void;
|
20
20
|
tagCEST(obj: any): void;
|
21
21
|
tagRECOPI(obj: any): void;
|
22
|
-
tagDI(index:
|
23
|
-
tagAdi(index:
|
22
|
+
tagDI(index: number, obj: any): void;
|
23
|
+
tagAdi(index: number, obj: any): void;
|
24
24
|
tagDetExport(obj: any): void;
|
25
25
|
tagDetExportInd(obj: any): void;
|
26
26
|
tagRastro(obj: any): void;
|
@@ -31,18 +31,19 @@ declare class Make {
|
|
31
31
|
tagEncerrante(): void;
|
32
32
|
tagOrigComb(): void;
|
33
33
|
tagImposto(): void;
|
34
|
-
tagProdICMS(index:
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
34
|
+
tagProdICMS(index: number, obj: any): void;
|
35
|
+
tagProdICMSPart(index: number, obj: any): void;
|
36
|
+
tagProdICMSST(index: number, obj: any): void;
|
37
|
+
tagProdICMSSN(index: number, obj: any): void;
|
38
|
+
tagProdICMSUFDest(index: number, obj: any): void;
|
39
|
+
tagProdIPI(index: number, obj: any): void;
|
40
|
+
tagProdII(index: number, obj: any): void;
|
41
|
+
tagProdPIS(index: number, obj: any): void;
|
42
|
+
tagProdPISST(index: number, obj: any): void;
|
43
|
+
tagProdCOFINS(index: number, obj: any): void;
|
44
|
+
tagProdCOFINSST(index: number, obj: any): void;
|
45
|
+
tagProdISSQN(index: number, obj: any): void;
|
46
|
+
tagProdImpostoDevol(index: number, obj: any): void;
|
46
47
|
tagICMSTot(obj?: null): void;
|
47
48
|
tagISSQNTot(obj: any): void;
|
48
49
|
tagRetTrib(obj: any): void;
|
package/dist/utils/make.js
CHANGED
@@ -234,15 +234,71 @@ class Make {
|
|
234
234
|
throw "não implementado!";
|
235
235
|
}
|
236
236
|
tagProdICMS(index, obj) {
|
237
|
-
|
237
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS === undefined)
|
238
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS = {};
|
239
|
+
let keyXML = "";
|
240
|
+
switch (obj.CST) {
|
241
|
+
case '00':
|
242
|
+
keyXML = 'ICMS00';
|
243
|
+
break;
|
244
|
+
case '10':
|
245
|
+
keyXML = 'ICMS10';
|
246
|
+
break;
|
247
|
+
case '20':
|
248
|
+
keyXML = 'ICMS20';
|
249
|
+
break;
|
250
|
+
case '30':
|
251
|
+
keyXML = 'ICMS30';
|
252
|
+
break;
|
253
|
+
case '40':
|
254
|
+
case '41':
|
255
|
+
case '50':
|
256
|
+
keyXML = 'ICMS40';
|
257
|
+
break;
|
258
|
+
case '51':
|
259
|
+
keyXML = 'ICMS51';
|
260
|
+
break;
|
261
|
+
case '60':
|
262
|
+
keyXML = 'ICMS60';
|
263
|
+
break;
|
264
|
+
case '70':
|
265
|
+
keyXML = 'ICMS70';
|
266
|
+
break;
|
267
|
+
case '90':
|
268
|
+
keyXML = 'ICMS90';
|
269
|
+
break;
|
270
|
+
default: throw new Error('CST inválido');
|
271
|
+
}
|
272
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[keyXML] = {};
|
273
|
+
Object.keys(obj).forEach(key => {
|
274
|
+
if (!['orig', 'CST', 'modBC', 'modBCST', 'motDesICMS', 'motDesICMSST', 'cBenefRBC', 'indDeduzDeson', 'UFST'].includes(key))
|
275
|
+
obj[key] = obj[key] == 0 ? "0.00" : obj[key];
|
276
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[keyXML][key] = obj[key];
|
277
|
+
});
|
278
|
+
}
|
279
|
+
tagProdICMSPart(index, obj) {
|
280
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS === undefined)
|
281
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS = {};
|
282
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS.ICMSPart = {};
|
283
|
+
Object.keys(obj).forEach(key => {
|
284
|
+
if (key != 'orig' && key != 'modBC')
|
285
|
+
obj[key] = obj[key] == 0 ? "0.00" : obj[key];
|
286
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS.ICMSPart[key] = obj[key];
|
287
|
+
});
|
288
|
+
//Calcular ICMSTot
|
289
|
+
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
238
290
|
}
|
239
291
|
//
|
240
292
|
tagProdICMSST(index, obj) {
|
241
293
|
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS === undefined)
|
242
294
|
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS = {};
|
243
|
-
|
295
|
+
let CST = obj.CST;
|
296
|
+
//delete obj.CST;
|
297
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[`ICMS${CST}`] = {};
|
244
298
|
Object.keys(obj).forEach(key => {
|
245
|
-
|
299
|
+
if (!["orig", "CSOSN", "modBC", "modBCST"].includes(key))
|
300
|
+
obj[key] = obj[key] == 0 ? "0.00" : obj[key];
|
301
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[`ICMS${CST}`][key] = obj[key];
|
246
302
|
});
|
247
303
|
//Calcular ICMSTot
|
248
304
|
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
@@ -281,19 +337,65 @@ class Make {
|
|
281
337
|
}
|
282
338
|
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[keyXML] = {};
|
283
339
|
Object.keys(obj).forEach(key => {
|
340
|
+
if (key != 'orig')
|
341
|
+
obj[key] = obj[key] == 0 ? "0.00" : obj[key];
|
284
342
|
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMS[keyXML][key] = obj[key];
|
285
343
|
});
|
286
344
|
//Calcular ICMSTot
|
287
345
|
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
288
346
|
}
|
289
347
|
tagProdICMSUFDest(index, obj) {
|
290
|
-
|
348
|
+
console.log(__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.total);
|
349
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMSUFDest === undefined)
|
350
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMSUFDest = {};
|
351
|
+
Object.keys(obj).forEach(key => {
|
352
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.ICMSUFDest[key] = obj[key] == 0 ? "0.00" : obj[key];
|
353
|
+
});
|
354
|
+
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot)?.call(this, obj); // opcional
|
291
355
|
}
|
292
356
|
tagProdIPI(index, obj) {
|
293
|
-
|
357
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.IPI === undefined)
|
358
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.IPI = {};
|
359
|
+
// Campo obrigatório na raiz do IPI
|
360
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.IPI.cEnq = obj.cEnq;
|
361
|
+
delete obj.cEnq;
|
362
|
+
let keyXML = "";
|
363
|
+
switch (obj.CST) {
|
364
|
+
case '00':
|
365
|
+
case '49':
|
366
|
+
case '50':
|
367
|
+
case '99':
|
368
|
+
keyXML = 'IPITrib';
|
369
|
+
break;
|
370
|
+
case '01':
|
371
|
+
case '02':
|
372
|
+
case '03':
|
373
|
+
case '04':
|
374
|
+
case '05':
|
375
|
+
case '51':
|
376
|
+
case '52':
|
377
|
+
case '53':
|
378
|
+
case '54':
|
379
|
+
case '55':
|
380
|
+
keyXML = 'IPINT';
|
381
|
+
break;
|
382
|
+
default:
|
383
|
+
throw new Error("CST de IPI não identificado!");
|
384
|
+
}
|
385
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.IPI[keyXML] = {};
|
386
|
+
Object.keys(obj).forEach(key => {
|
387
|
+
obj[key] = obj[key] == 0 ? "0.00" : obj[key];
|
388
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.IPI[keyXML][key] = obj[key];
|
389
|
+
});
|
390
|
+
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj); // opcional se considerar IPI no total
|
294
391
|
}
|
295
392
|
tagProdII(index, obj) {
|
296
|
-
|
393
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.II === undefined)
|
394
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.II = {};
|
395
|
+
Object.keys(obj).forEach(key => {
|
396
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.II[key] = obj[key];
|
397
|
+
});
|
398
|
+
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
297
399
|
}
|
298
400
|
tagProdPIS(index, obj) {
|
299
401
|
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.PIS === undefined)
|
@@ -353,11 +455,11 @@ class Make {
|
|
353
455
|
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
354
456
|
}
|
355
457
|
tagProdPISST(index, obj) {
|
356
|
-
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.
|
357
|
-
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.
|
358
|
-
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.
|
458
|
+
if (__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.PISST === undefined)
|
459
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.PISST = {};
|
460
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.PISST = {};
|
359
461
|
Object.keys(obj).forEach(key => {
|
360
|
-
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.
|
462
|
+
__classPrivateFieldGet(this, _Make_NFe, "f").infNFe.det[index].imposto.PISST[key] = obj[key];
|
361
463
|
});
|
362
464
|
//Calcular ICMSTot
|
363
465
|
__classPrivateFieldGet(this, _Make_instances, "m", _Make_calICMSTot).call(this, obj);
|
package/dist/utils/tools.js
CHANGED
@@ -654,9 +654,10 @@ async function _Tools_limparSoap(xml) {
|
|
654
654
|
if (xml == "Bad Request")
|
655
655
|
throw xml;
|
656
656
|
const clear = [
|
657
|
+
'S:Envelope',
|
658
|
+
'S:Body',
|
657
659
|
'soapenv:Envelope',
|
658
660
|
'soapenv:Body',
|
659
|
-
'nfeResultMsg',
|
660
661
|
'soap:Envelope',
|
661
662
|
'soap:Body',
|
662
663
|
'nfeResultMsg',
|