@senior-gestao-empresarial/erpx-components 4.0.1 → 4.0.2-develop-21d58680

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.
Files changed (75) hide show
  1. package/bundles/senior-gestao-empresarial-erpx-components.umd.js +792 -660
  2. package/bundles/senior-gestao-empresarial-erpx-components.umd.js.map +1 -1
  3. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js +2 -2
  4. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js.map +1 -1
  5. package/components/tributos/erp-tributos.component.d.ts +12 -8
  6. package/components/tributos/erp-tributos.types.d.ts +5 -1
  7. package/components/tributos/index.d.ts +1 -0
  8. package/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.d.ts +3 -1
  9. package/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.d.ts +5 -0
  10. package/components/tributos/rules/status/registries/purchase-order-status-rules.registry.d.ts +8 -0
  11. package/components/tributos/rules/status/registries/sale-order-status-rules.registry.d.ts +8 -0
  12. package/components/tributos/rules/status/registries/status-rules.registry.d.ts +5 -1
  13. package/components/tributos/rules/types/schemas/outgoing-invoice.schema.d.ts +2 -0
  14. package/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.d.ts +3 -1
  15. package/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.d.ts +5 -0
  16. package/components/tributos/tax-reform-utilities.d.ts +1 -1
  17. package/components/tributos/types/debit-invoice-type.d.ts +1 -1
  18. package/components/tributos/types/tax.d.ts +8 -0
  19. package/esm2015/components/tributos/erp-tributos.component.js +134 -40
  20. package/esm2015/components/tributos/erp-tributos.types.js +5 -1
  21. package/esm2015/components/tributos/index.js +1 -1
  22. package/esm2015/components/tributos/mappings/enum-tip-imp-cst-mapping.js +3 -1
  23. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +44 -4
  24. package/esm2015/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.js +55 -0
  25. package/esm2015/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +17 -1
  26. package/esm2015/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +35 -1
  27. package/esm2015/components/tributos/rules/calculation/rules/tax-situation-calculation-rule.js +37 -1
  28. package/esm2015/components/tributos/rules/status/registries/outgoing-invoice-status-rules.registry.js +13 -1
  29. package/esm2015/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +18 -0
  30. package/esm2015/components/tributos/rules/status/registries/sale-order-status-rules.registry.js +18 -0
  31. package/esm2015/components/tributos/rules/status/registries/status-rules.registry.js +16 -4
  32. package/esm2015/components/tributos/rules/status/rules/tax-classification-status-rule.js +3 -1
  33. package/esm2015/components/tributos/rules/types/schemas/outgoing-invoice.schema.js +13 -1
  34. package/esm2015/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.js +44 -4
  35. package/esm2015/components/tributos/rules/validation/registries/sale-order-validation-rules.registry.js +8 -560
  36. package/esm2015/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.js +78 -0
  37. package/esm2015/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +51 -2
  38. package/esm2015/components/tributos/rules/validation/rules/required/tax-classification-required-validation-rule.js +48 -2
  39. package/esm2015/components/tributos/rules/validation/rules/required/tax-situation-required-validation-rule.js +48 -2
  40. package/esm2015/components/tributos/tax-reform-utilities.js +6 -2
  41. package/esm2015/components/tributos/types/debit-invoice-type.js +1 -1
  42. package/esm2015/components/tributos/types/tax.js +2 -0
  43. package/esm2015/senior-gestao-empresarial-erpx-components.js +37 -33
  44. package/esm5/components/tributos/erp-tributos.component.js +149 -47
  45. package/esm5/components/tributos/erp-tributos.types.js +5 -1
  46. package/esm5/components/tributos/index.js +1 -1
  47. package/esm5/components/tributos/mappings/enum-tip-imp-cst-mapping.js +3 -1
  48. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +44 -4
  49. package/esm5/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.js +77 -0
  50. package/esm5/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +24 -1
  51. package/esm5/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +59 -1
  52. package/esm5/components/tributos/rules/calculation/rules/tax-situation-calculation-rule.js +61 -1
  53. package/esm5/components/tributos/rules/status/registries/outgoing-invoice-status-rules.registry.js +13 -1
  54. package/esm5/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +19 -0
  55. package/esm5/components/tributos/rules/status/registries/sale-order-status-rules.registry.js +19 -0
  56. package/esm5/components/tributos/rules/status/registries/status-rules.registry.js +16 -4
  57. package/esm5/components/tributos/rules/status/rules/tax-classification-status-rule.js +3 -1
  58. package/esm5/components/tributos/rules/types/schemas/outgoing-invoice.schema.js +13 -1
  59. package/esm5/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.js +44 -4
  60. package/esm5/components/tributos/rules/validation/registries/sale-order-validation-rules.registry.js +10 -562
  61. package/esm5/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.js +86 -0
  62. package/esm5/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +55 -2
  63. package/esm5/components/tributos/rules/validation/rules/required/tax-classification-required-validation-rule.js +52 -2
  64. package/esm5/components/tributos/rules/validation/rules/required/tax-situation-required-validation-rule.js +52 -2
  65. package/esm5/components/tributos/tax-reform-utilities.js +6 -2
  66. package/esm5/components/tributos/types/debit-invoice-type.js +1 -1
  67. package/esm5/components/tributos/types/tax.js +2 -0
  68. package/esm5/senior-gestao-empresarial-erpx-components.js +37 -33
  69. package/fesm2015/senior-gestao-empresarial-erpx-components.js +654 -633
  70. package/fesm2015/senior-gestao-empresarial-erpx-components.js.map +1 -1
  71. package/fesm5/senior-gestao-empresarial-erpx-components.js +754 -626
  72. package/fesm5/senior-gestao-empresarial-erpx-components.js.map +1 -1
  73. package/package.json +1 -1
  74. package/senior-gestao-empresarial-erpx-components.d.ts +36 -32
  75. package/senior-gestao-empresarial-erpx-components.metadata.json +1 -1
@@ -4,10 +4,10 @@ import { CommonModule } from '@angular/common';
4
4
  import { BreadcrumbModule as BreadcrumbModule$1 } from 'primeng/breadcrumb';
5
5
  import { NavigationEnd, PRIMARY_OUTLET, ActivatedRoute, Router, RouterModule } from '@angular/router';
6
6
  import { Subject, combineLatest, throwError } from 'rxjs';
7
- import { takeUntil, filter, startWith, distinctUntilChanged, skip, map, auditTime, debounceTime, scan, catchError, first } from 'rxjs/operators';
7
+ import { takeUntil, filter, startWith, distinctUntilChanged, skip, map, debounceTime, auditTime, scan, catchError, first } from 'rxjs/operators';
8
8
  import { TranslateService, TranslateModule } from '@ngx-translate/core';
9
9
  import { EnumLogicalOperator, E027StrLookup, BeneficioFiscalLookup, E027EqiLookup, CplTriNotaSaidaNaturezaReceitaPisCofinsLookup, ClassificacaoTributariaLookup, LookupValidationUtils, ErpLookupsModule, E210DxpLookup } from '@senior-gestao-empresarial/angular-components';
10
- import { FieldType, BadgeColors, ButtonPriority, ButtonSize, ButtonAnimation, isNullOrUndefined as isNullOrUndefined$1, FormField, ButtonModule, DynamicFormModule, LoadingStateModule, BadgeModule, EnumColumnFieldType, LocaleModule, StatsCardModule, EmptyStateModule, SidebarModule, TableModule as TableModule$1 } from '@seniorsistemas/angular-components';
10
+ import { FieldType, BadgeColors, ButtonPriority, ButtonSize, ButtonAnimation, isNullOrUndefined as isNullOrUndefined$1, FormField, CalendarLocaleOptions, LocaleService, ButtonModule, DynamicFormModule, LoadingStateModule, BadgeModule, EnumColumnFieldType, LocaleModule, StatsCardModule, EmptyStateModule, SidebarModule, TableModule as TableModule$1 } from '@seniorsistemas/angular-components';
11
11
  import { AccordionModule } from 'primeng/accordion';
12
12
  import { Validators, FormControl, FormGroup, FormBuilder, ReactiveFormsModule, FormsModule } from '@angular/forms';
13
13
  import { GTagService } from '@seniorsistemas/platform-utils';
@@ -15,13 +15,13 @@ import BigNumber from 'bignumber.js';
15
15
  import { MessageService as MessageService$1 } from 'primeng/api';
16
16
  import { HttpClient, HttpParams } from '@angular/common/http';
17
17
  import { MessageService } from 'primeng';
18
+ import * as moment from 'moment';
18
19
  import { ConfirmDialogModule } from 'primeng/confirmdialog';
19
20
  import { MessagesModule } from 'primeng/messages';
20
21
  import { PanelModule } from 'primeng/panel';
21
22
  import { Table, TableModule } from 'primeng/table';
22
23
  import { TabViewModule } from 'primeng/tabview';
23
24
  import { PermissionsModule } from '@seniorsistemas/platform-components';
24
- import * as moment from 'moment';
25
25
 
26
26
  var BreadcrumbComponent = /** @class */ (function () {
27
27
  function BreadcrumbComponent(activatedRoute, router) {
@@ -389,6 +389,7 @@ var EnumCampoTributo;
389
389
  EnumCampoTributo["TipoCalculoImposto"] = "TipoCalculoImposto";
390
390
  EnumCampoTributo["ImpostoManual"] = "impostoManual";
391
391
  EnumCampoTributo["EscriturarAliquotaISS"] = "escriturarAliquotaISS";
392
+ EnumCampoTributo["PeriodoApuracao"] = "periodoApuracao";
392
393
  })(EnumCampoTributo || (EnumCampoTributo = {}));
393
394
  var EnumGrupoTributo;
394
395
  (function (EnumGrupoTributo) {
@@ -399,6 +400,7 @@ var EnumGrupoTributo;
399
400
  EnumGrupoTributo["IBS_CREDITO_PRESUMIDO"] = "ibs_credito_presumido";
400
401
  EnumGrupoTributo["IS"] = "is";
401
402
  EnumGrupoTributo["CBS_IBS_ESTORNO_CREDITO"] = "cbs_ibs_estorno_credito";
403
+ EnumGrupoTributo["CBS_IBS_AJUSTE"] = "cbs_ibs_ajuste";
402
404
  EnumGrupoTributo["ICMS"] = "icms";
403
405
  EnumGrupoTributo["ICMS_ST"] = "icms_st";
404
406
  EnumGrupoTributo["IPI"] = "ipi";
@@ -419,6 +421,7 @@ var EnumTipoTributo;
419
421
  EnumTipoTributo["CBS_TRIBUTACAO_REGULAR"] = "CBS_TRIBUTACAO_REGULAR";
420
422
  EnumTipoTributo["CBS_GOVERNAMENTAL"] = "CBS_GOVERNAMENTAL";
421
423
  EnumTipoTributo["CBS_ESTORNO_CREDITO"] = "CBS_ESTORNO_CREDITO";
424
+ EnumTipoTributo["CBS_AJUSTE"] = "CBS_AJUSTE";
422
425
  EnumTipoTributo["IBS_ESTADUAL"] = "IBS_ESTADUAL";
423
426
  EnumTipoTributo["IBS_ESTADUAL_DIFERIDO"] = "IBS_ESTADUAL_DIFERIDO";
424
427
  EnumTipoTributo["IBS_ESTADUAL_TRIBUTACAO_REGULAR"] = "IBS_ESTADUAL_TRIBUTACAO_REGULAR";
@@ -429,6 +432,7 @@ var EnumTipoTributo;
429
432
  EnumTipoTributo["IBS_MUNICIPAL_GOVERNAMENTAL"] = "IBS_MUNICIPAL_GOVERNAMENTAL";
430
433
  EnumTipoTributo["IBS_CREDITO_PRESUMIDO"] = "IBS_CREDITO_PRESUMIDO";
431
434
  EnumTipoTributo["IBS_ESTORNO_CREDITO"] = "IBS_ESTORNO_CREDITO";
435
+ EnumTipoTributo["IBS_AJUSTE"] = "IBS_AJUSTE";
432
436
  EnumTipoTributo["IS"] = "IS";
433
437
  EnumTipoTributo["PIS_FATURAMENTO"] = "PIS_FATURAMENTO";
434
438
  EnumTipoTributo["PIS_RECUPERAR"] = "PIS_RECUPERAR";
@@ -618,11 +622,13 @@ var mapEnumTipoTributoToEnumTipImpCst = function (taxType) {
618
622
  case EnumTipoTributo.CBS:
619
623
  case EnumTipoTributo.CBS_TRIBUTACAO_REGULAR:
620
624
  case EnumTipoTributo.CBS_ESTORNO_CREDITO:
625
+ case EnumTipoTributo.CBS_AJUSTE:
621
626
  case EnumTipoTributo.IBS_ESTADUAL:
622
627
  case EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR:
623
628
  case EnumTipoTributo.IBS_MUNICIPAL:
624
629
  case EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR:
625
630
  case EnumTipoTributo.IBS_ESTORNO_CREDITO:
631
+ case EnumTipoTributo.IBS_AJUSTE:
626
632
  return EnumTipImpCst.CBS_IBS;
627
633
  case EnumTipoTributo.IS:
628
634
  return EnumTipImpCst.IS;
@@ -648,7 +654,9 @@ var isTaxFromTaxReform = function (tax) {
648
654
  tax === EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL ||
649
655
  tax === EnumTipoTributo.IBS_CREDITO_PRESUMIDO ||
650
656
  tax === EnumTipoTributo.CBS_ESTORNO_CREDITO ||
651
- tax === EnumTipoTributo.IBS_ESTORNO_CREDITO);
657
+ tax === EnumTipoTributo.IBS_ESTORNO_CREDITO ||
658
+ tax === EnumTipoTributo.CBS_AJUSTE ||
659
+ tax === EnumTipoTributo.IBS_AJUSTE);
652
660
  };
653
661
  var getBaseTaxByGroupTax = function (groupTax) {
654
662
  switch (groupTax) {
@@ -664,6 +672,8 @@ var getBaseTaxByGroupTax = function (groupTax) {
664
672
  return EnumTipoTributo.IS;
665
673
  case EnumGrupoTributo.CBS_IBS_ESTORNO_CREDITO:
666
674
  return EnumTipoTributo.CBS_ESTORNO_CREDITO;
675
+ case EnumGrupoTributo.CBS_IBS_AJUSTE:
676
+ return EnumTipoTributo.CBS_AJUSTE;
667
677
  default:
668
678
  return null;
669
679
  }
@@ -1453,6 +1463,29 @@ var TaxAmountCalculationRule = /** @class */ (function () {
1453
1463
  });
1454
1464
  }
1455
1465
  break;
1466
+ case EnumTipoTributo.CBS_AJUSTE:
1467
+ case EnumTipoTributo.IBS_AJUSTE:
1468
+ {
1469
+ var dataKey_2 = formField.find(function (_a) {
1470
+ var name = _a.name;
1471
+ return name === 'classificacaoTributaria';
1472
+ }).dataKey;
1473
+ combineLatest([
1474
+ formGroup
1475
+ .get('classificacaoTributaria')
1476
+ .valueChanges.pipe(startWith(formGroup.get('classificacaoTributaria')
1477
+ .value), distinctUntilChanged(function (old, current) {
1478
+ return (old === null || old === void 0 ? void 0 : old[dataKey_2]) === (current === null || current === void 0 ? void 0 : current[dataKey_2]);
1479
+ }))
1480
+ ])
1481
+ .pipe(skip(1), map(function () {
1482
+ return new BigNumber(formGroup.get('valor').value);
1483
+ }), filter(function (taxAmount) { return taxAmount.isNaN(); }))
1484
+ .subscribe(function () {
1485
+ formGroup.get('valor').setValue(0);
1486
+ });
1487
+ }
1488
+ break;
1456
1489
  default:
1457
1490
  throw new Error("Regra TaxAmountCalculationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
1458
1491
  }
@@ -1649,6 +1682,64 @@ var TaxClassificationCalculationRule = /** @class */ (function () {
1649
1682
  });
1650
1683
  }
1651
1684
  break;
1685
+ case EnumTipoTributo.CBS_AJUSTE:
1686
+ {
1687
+ var _e = group.item.find(function (_a) {
1688
+ var name = _a.name;
1689
+ return name === EnumTipoTributo.IBS_AJUSTE;
1690
+ }), ibsAjusteFormGroup = _e.formGroup, ibsAjusteFormField = _e.formField;
1691
+ var dataKey_4 = ibsAjusteFormField.find(function (_a) {
1692
+ var name = _a.name;
1693
+ return name === 'classificacaoTributaria';
1694
+ }).dataKey;
1695
+ combineLatest([
1696
+ ibsAjusteFormGroup
1697
+ .get('classificacaoTributaria')
1698
+ .valueChanges.pipe(startWith(ibsAjusteFormGroup.get('classificacaoTributaria').value), distinctUntilChanged(function (old, current) {
1699
+ return (old === null || old === void 0 ? void 0 : old[dataKey_4]) === (current === null || current === void 0 ? void 0 : current[dataKey_4]);
1700
+ }))
1701
+ ])
1702
+ .pipe(skip(1), map(function (_a) {
1703
+ var _b = __read(_a, 1), taxClassification = _b[0];
1704
+ return [taxClassification];
1705
+ }))
1706
+ .subscribe(function (_a) {
1707
+ var _b = __read(_a, 1), taxClassification = _b[0];
1708
+ formGroup
1709
+ .get('classificacaoTributaria')
1710
+ .setValue(taxClassification);
1711
+ });
1712
+ }
1713
+ break;
1714
+ case EnumTipoTributo.IBS_AJUSTE:
1715
+ {
1716
+ var _f = group.item.find(function (_a) {
1717
+ var name = _a.name;
1718
+ return name === EnumTipoTributo.CBS_AJUSTE;
1719
+ }), cbsAjusteFormGroup = _f.formGroup, cbsAjusteFormField = _f.formField;
1720
+ var dataKey_5 = cbsAjusteFormField.find(function (_a) {
1721
+ var name = _a.name;
1722
+ return name === 'classificacaoTributaria';
1723
+ }).dataKey;
1724
+ combineLatest([
1725
+ cbsAjusteFormGroup
1726
+ .get('classificacaoTributaria')
1727
+ .valueChanges.pipe(startWith(cbsAjusteFormGroup.get('classificacaoTributaria').value), distinctUntilChanged(function (old, current) {
1728
+ return (old === null || old === void 0 ? void 0 : old[dataKey_5]) === (current === null || current === void 0 ? void 0 : current[dataKey_5]);
1729
+ }))
1730
+ ])
1731
+ .pipe(skip(1), map(function (_a) {
1732
+ var _b = __read(_a, 1), taxClassification = _b[0];
1733
+ return [taxClassification];
1734
+ }))
1735
+ .subscribe(function (_a) {
1736
+ var _b = __read(_a, 1), taxClassification = _b[0];
1737
+ formGroup
1738
+ .get('classificacaoTributaria')
1739
+ .setValue(taxClassification);
1740
+ });
1741
+ }
1742
+ break;
1652
1743
  default:
1653
1744
  throw new Error("Regra TaxClassificationCalculationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
1654
1745
  }
@@ -4200,6 +4291,75 @@ var IncomingInvoiceCalculationRulesRegistry = /** @class */ (function () {
4200
4291
  return IncomingInvoiceCalculationRulesRegistry;
4201
4292
  }());
4202
4293
 
4294
+ var AssessmentPeriodCalculationRule = /** @class */ (function () {
4295
+ function AssessmentPeriodCalculationRule() {
4296
+ }
4297
+ AssessmentPeriodCalculationRule.prototype.apply = function (_a) {
4298
+ var document = _a.context.document, group = _a.group, _b = _a.item, taxType = _b.name, formGroup = _b.formGroup;
4299
+ switch (taxType) {
4300
+ case EnumTipoTributo.CBS_AJUSTE:
4301
+ {
4302
+ var ibsAjusteFormGroup = group.item.find(function (_a) {
4303
+ var name = _a.name;
4304
+ return name === EnumTipoTributo.IBS_AJUSTE;
4305
+ }).formGroup;
4306
+ combineLatest([
4307
+ ibsAjusteFormGroup
4308
+ .get(EnumCampoTributo.PeriodoApuracao)
4309
+ .valueChanges.pipe(startWith(ibsAjusteFormGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged(function (old, current) {
4310
+ return old === current ||
4311
+ moment(old).isSame(current, 'day');
4312
+ }), debounceTime(100))
4313
+ ])
4314
+ .pipe(skip(1), map(function (_a) {
4315
+ var _b = __read(_a, 1), taxSituation = _b[0];
4316
+ return [taxSituation];
4317
+ }))
4318
+ .subscribe(function (_a) {
4319
+ var _b = __read(_a, 1), taxSituation = _b[0];
4320
+ formGroup
4321
+ .get(EnumCampoTributo.PeriodoApuracao)
4322
+ .setValue(taxSituation);
4323
+ });
4324
+ }
4325
+ break;
4326
+ case EnumTipoTributo.IBS_AJUSTE:
4327
+ {
4328
+ var cbsAjusteFormGroup = group.item.find(function (_a) {
4329
+ var name = _a.name;
4330
+ return name === EnumTipoTributo.CBS_AJUSTE;
4331
+ }).formGroup;
4332
+ combineLatest([
4333
+ cbsAjusteFormGroup
4334
+ .get(EnumCampoTributo.PeriodoApuracao)
4335
+ .valueChanges.pipe(startWith(cbsAjusteFormGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged(function (old, current) {
4336
+ return old === current ||
4337
+ moment(old).isSame(current, 'day');
4338
+ }), debounceTime(100))
4339
+ ])
4340
+ .pipe(skip(1), map(function (_a) {
4341
+ var _b = __read(_a, 1), taxSituation = _b[0];
4342
+ return [taxSituation];
4343
+ }))
4344
+ .subscribe(function (_a) {
4345
+ var _b = __read(_a, 1), taxSituation = _b[0];
4346
+ formGroup
4347
+ .get(EnumCampoTributo.PeriodoApuracao)
4348
+ .setValue(taxSituation);
4349
+ });
4350
+ }
4351
+ break;
4352
+ default:
4353
+ throw new Error("Regra AssessmentPeriodCalculationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
4354
+ }
4355
+ };
4356
+ AssessmentPeriodCalculationRule.ɵprov = ɵɵdefineInjectable({ factory: function AssessmentPeriodCalculationRule_Factory() { return new AssessmentPeriodCalculationRule(); }, token: AssessmentPeriodCalculationRule, providedIn: "root" });
4357
+ AssessmentPeriodCalculationRule = __decorate([
4358
+ Injectable({ providedIn: 'root' })
4359
+ ], AssessmentPeriodCalculationRule);
4360
+ return AssessmentPeriodCalculationRule;
4361
+ }());
4362
+
4203
4363
  var TaxSituationCalculationRule = /** @class */ (function () {
4204
4364
  function TaxSituationCalculationRule() {
4205
4365
  }
@@ -4264,6 +4424,66 @@ var TaxSituationCalculationRule = /** @class */ (function () {
4264
4424
  });
4265
4425
  }
4266
4426
  break;
4427
+ case EnumTipoTributo.CBS_AJUSTE:
4428
+ {
4429
+ var _e = group.item.find(function (_a) {
4430
+ var name = _a.name;
4431
+ return name === EnumTipoTributo.IBS_AJUSTE;
4432
+ }), ibsAjusteFormGroup = _e.formGroup, ibsAjusteFormField = _e.formField;
4433
+ var dataKey_3 = ibsAjusteFormField.find(function (_a) {
4434
+ var name = _a.name;
4435
+ return name === 'situacaoTributaria';
4436
+ }).dataKey;
4437
+ combineLatest([
4438
+ ibsAjusteFormGroup
4439
+ .get('situacaoTributaria')
4440
+ .valueChanges.pipe(startWith(ibsAjusteFormGroup.get('situacaoTributaria')
4441
+ .value), distinctUntilChanged(function (old, current) {
4442
+ return (old === null || old === void 0 ? void 0 : old[dataKey_3]) === (current === null || current === void 0 ? void 0 : current[dataKey_3]);
4443
+ }))
4444
+ ])
4445
+ .pipe(skip(1), map(function (_a) {
4446
+ var _b = __read(_a, 1), taxSituation = _b[0];
4447
+ return [taxSituation];
4448
+ }))
4449
+ .subscribe(function (_a) {
4450
+ var _b = __read(_a, 1), taxSituation = _b[0];
4451
+ formGroup
4452
+ .get('situacaoTributaria')
4453
+ .setValue(taxSituation);
4454
+ });
4455
+ }
4456
+ break;
4457
+ case EnumTipoTributo.IBS_AJUSTE:
4458
+ {
4459
+ var _f = group.item.find(function (_a) {
4460
+ var name = _a.name;
4461
+ return name === EnumTipoTributo.CBS_AJUSTE;
4462
+ }), cbsAjusteFormGroup = _f.formGroup, cbsAjusteFormField = _f.formField;
4463
+ var dataKey_4 = cbsAjusteFormField.find(function (_a) {
4464
+ var name = _a.name;
4465
+ return name === 'situacaoTributaria';
4466
+ }).dataKey;
4467
+ combineLatest([
4468
+ cbsAjusteFormGroup
4469
+ .get('situacaoTributaria')
4470
+ .valueChanges.pipe(startWith(cbsAjusteFormGroup.get('situacaoTributaria')
4471
+ .value), distinctUntilChanged(function (old, current) {
4472
+ return (old === null || old === void 0 ? void 0 : old[dataKey_4]) === (current === null || current === void 0 ? void 0 : current[dataKey_4]);
4473
+ }))
4474
+ ])
4475
+ .pipe(skip(1), map(function (_a) {
4476
+ var _b = __read(_a, 1), taxSituation = _b[0];
4477
+ return [taxSituation];
4478
+ }))
4479
+ .subscribe(function (_a) {
4480
+ var _b = __read(_a, 1), taxSituation = _b[0];
4481
+ formGroup
4482
+ .get('situacaoTributaria')
4483
+ .setValue(taxSituation);
4484
+ });
4485
+ }
4486
+ break;
4267
4487
  default:
4268
4488
  throw new Error("Regra TaxSituationCalculationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
4269
4489
  }
@@ -4276,7 +4496,7 @@ var TaxSituationCalculationRule = /** @class */ (function () {
4276
4496
  }());
4277
4497
 
4278
4498
  var OutgoingInvoiceCalculationRulesRegistry = /** @class */ (function () {
4279
- function OutgoingInvoiceCalculationRulesRegistry(taxableBaseCalculationRule, taxRateCalculationRule, effectiveTaxRateCalculationRule, taxAmountCalculationRule, grossAmountCalculationRule, taxSituationCalculationRule, taxClassificationCalculationRule, taxCalculationTypeCalculationRule, manualTaxCalculationRule) {
4499
+ function OutgoingInvoiceCalculationRulesRegistry(taxableBaseCalculationRule, taxRateCalculationRule, effectiveTaxRateCalculationRule, taxAmountCalculationRule, grossAmountCalculationRule, taxSituationCalculationRule, taxClassificationCalculationRule, taxCalculationTypeCalculationRule, assessmentPeriodCalculationRule, manualTaxCalculationRule) {
4280
4500
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
4281
4501
  this.taxableBaseCalculationRule = taxableBaseCalculationRule;
4282
4502
  this.taxRateCalculationRule = taxRateCalculationRule;
@@ -4286,6 +4506,7 @@ var OutgoingInvoiceCalculationRulesRegistry = /** @class */ (function () {
4286
4506
  this.taxSituationCalculationRule = taxSituationCalculationRule;
4287
4507
  this.taxClassificationCalculationRule = taxClassificationCalculationRule;
4288
4508
  this.taxCalculationTypeCalculationRule = taxCalculationTypeCalculationRule;
4509
+ this.assessmentPeriodCalculationRule = assessmentPeriodCalculationRule;
4289
4510
  this.manualTaxCalculationRule = manualTaxCalculationRule;
4290
4511
  this.strategies = {
4291
4512
  'Product And Service Sale': (_a = {},
@@ -6475,6 +6696,42 @@ var OutgoingInvoiceCalculationRulesRegistry = /** @class */ (function () {
6475
6696
  rule: this.taxAmountCalculationRule
6476
6697
  }
6477
6698
  ],
6699
+ _k[EnumTipoTributo.CBS_AJUSTE] = [
6700
+ {
6701
+ field: EnumCampoTributo.SituacaoTributaria,
6702
+ rule: this.taxSituationCalculationRule
6703
+ },
6704
+ {
6705
+ field: EnumCampoTributo.ClassificacaoTributaria,
6706
+ rule: this.taxClassificationCalculationRule
6707
+ },
6708
+ {
6709
+ field: EnumCampoTributo.PeriodoApuracao,
6710
+ rule: this.assessmentPeriodCalculationRule
6711
+ },
6712
+ {
6713
+ field: EnumCampoTributo.Valor,
6714
+ rule: this.taxAmountCalculationRule
6715
+ }
6716
+ ],
6717
+ _k[EnumTipoTributo.IBS_AJUSTE] = [
6718
+ {
6719
+ field: EnumCampoTributo.SituacaoTributaria,
6720
+ rule: this.taxSituationCalculationRule
6721
+ },
6722
+ {
6723
+ field: EnumCampoTributo.ClassificacaoTributaria,
6724
+ rule: this.taxClassificationCalculationRule
6725
+ },
6726
+ {
6727
+ field: EnumCampoTributo.PeriodoApuracao,
6728
+ rule: this.assessmentPeriodCalculationRule
6729
+ },
6730
+ {
6731
+ field: EnumCampoTributo.Valor,
6732
+ rule: this.taxAmountCalculationRule
6733
+ }
6734
+ ],
6478
6735
  _k),
6479
6736
  Delivery: (_l = {},
6480
6737
  _l[EnumTipoTributo.CBS] = [
@@ -8003,9 +8260,10 @@ var OutgoingInvoiceCalculationRulesRegistry = /** @class */ (function () {
8003
8260
  { type: TaxSituationCalculationRule },
8004
8261
  { type: TaxClassificationCalculationRule },
8005
8262
  { type: TaxCalculationTypeCalculationRule },
8263
+ { type: AssessmentPeriodCalculationRule },
8006
8264
  { type: ManualTaxCalculationRule }
8007
8265
  ]; };
8008
- OutgoingInvoiceCalculationRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function OutgoingInvoiceCalculationRulesRegistry_Factory() { return new OutgoingInvoiceCalculationRulesRegistry(ɵɵinject(TaxableBaseCalculationRule), ɵɵinject(TaxRateCalculationRule), ɵɵinject(EffectiveTaxRateCalculationRule), ɵɵinject(TaxAmountCalculationRule), ɵɵinject(GrossAmountCalculationRule), ɵɵinject(TaxSituationCalculationRule), ɵɵinject(TaxClassificationCalculationRule), ɵɵinject(TaxCalculationTypeCalculationRule), ɵɵinject(ManualTaxCalculationRule)); }, token: OutgoingInvoiceCalculationRulesRegistry, providedIn: "root" });
8266
+ OutgoingInvoiceCalculationRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function OutgoingInvoiceCalculationRulesRegistry_Factory() { return new OutgoingInvoiceCalculationRulesRegistry(ɵɵinject(TaxableBaseCalculationRule), ɵɵinject(TaxRateCalculationRule), ɵɵinject(EffectiveTaxRateCalculationRule), ɵɵinject(TaxAmountCalculationRule), ɵɵinject(GrossAmountCalculationRule), ɵɵinject(TaxSituationCalculationRule), ɵɵinject(TaxClassificationCalculationRule), ɵɵinject(TaxCalculationTypeCalculationRule), ɵɵinject(AssessmentPeriodCalculationRule), ɵɵinject(ManualTaxCalculationRule)); }, token: OutgoingInvoiceCalculationRulesRegistry, providedIn: "root" });
8009
8267
  OutgoingInvoiceCalculationRulesRegistry = __decorate([
8010
8268
  Injectable({ providedIn: 'root' })
8011
8269
  ], OutgoingInvoiceCalculationRulesRegistry);
@@ -9703,6 +9961,8 @@ var TaxClassificationStatusRule = /** @class */ (function () {
9703
9961
  break;
9704
9962
  case EnumTipoTributo.CBS_ESTORNO_CREDITO:
9705
9963
  case EnumTipoTributo.IBS_ESTORNO_CREDITO:
9964
+ case EnumTipoTributo.CBS_AJUSTE:
9965
+ case EnumTipoTributo.IBS_AJUSTE:
9706
9966
  {
9707
9967
  combineLatest([
9708
9968
  formGroup
@@ -10682,6 +10942,18 @@ var OutgoingInvoiceStatusRulesRegistry = /** @class */ (function () {
10682
10942
  rule: this.taxClassificationStatusRule
10683
10943
  }
10684
10944
  ],
10945
+ _k[EnumTipoTributo.CBS_AJUSTE] = [
10946
+ {
10947
+ field: EnumCampoTributo.ClassificacaoTributaria,
10948
+ rule: this.taxClassificationStatusRule
10949
+ }
10950
+ ],
10951
+ _k[EnumTipoTributo.IBS_AJUSTE] = [
10952
+ {
10953
+ field: EnumCampoTributo.ClassificacaoTributaria,
10954
+ rule: this.taxClassificationStatusRule
10955
+ }
10956
+ ],
10685
10957
  _k),
10686
10958
  Delivery: (_l = {},
10687
10959
  _l[EnumTipoTributo.CBS] = [
@@ -11014,10 +11286,42 @@ var OutgoingInvoiceStatusRulesRegistry = /** @class */ (function () {
11014
11286
  return OutgoingInvoiceStatusRulesRegistry;
11015
11287
  }());
11016
11288
 
11289
+ var PurchaseOrderStatusRulesRegistry = /** @class */ (function () {
11290
+ function PurchaseOrderStatusRulesRegistry() {
11291
+ this.strategies = {};
11292
+ }
11293
+ PurchaseOrderStatusRulesRegistry.prototype.get = function (type, taxType) {
11294
+ var _a, _b;
11295
+ return ((_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : []);
11296
+ };
11297
+ PurchaseOrderStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function PurchaseOrderStatusRulesRegistry_Factory() { return new PurchaseOrderStatusRulesRegistry(); }, token: PurchaseOrderStatusRulesRegistry, providedIn: "root" });
11298
+ PurchaseOrderStatusRulesRegistry = __decorate([
11299
+ Injectable({ providedIn: 'root' })
11300
+ ], PurchaseOrderStatusRulesRegistry);
11301
+ return PurchaseOrderStatusRulesRegistry;
11302
+ }());
11303
+
11304
+ var SaleOrderStatusRulesRegistry = /** @class */ (function () {
11305
+ function SaleOrderStatusRulesRegistry() {
11306
+ this.strategies = {};
11307
+ }
11308
+ SaleOrderStatusRulesRegistry.prototype.get = function (type, taxType) {
11309
+ var _a, _b;
11310
+ return ((_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : []);
11311
+ };
11312
+ SaleOrderStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function SaleOrderStatusRulesRegistry_Factory() { return new SaleOrderStatusRulesRegistry(); }, token: SaleOrderStatusRulesRegistry, providedIn: "root" });
11313
+ SaleOrderStatusRulesRegistry = __decorate([
11314
+ Injectable({ providedIn: 'root' })
11315
+ ], SaleOrderStatusRulesRegistry);
11316
+ return SaleOrderStatusRulesRegistry;
11317
+ }());
11318
+
11017
11319
  var StatusRulesRegistry = /** @class */ (function () {
11018
- function StatusRulesRegistry(incomingInvoiceStatusRulesRegistry, outgoingInvoiceStatusRulesRegistry) {
11320
+ function StatusRulesRegistry(incomingInvoiceStatusRulesRegistry, outgoingInvoiceStatusRulesRegistry, saleOrderStatusRulesRegistry, purchaseOrderStatusRulesRegistry) {
11019
11321
  this.incomingInvoiceStatusRulesRegistry = incomingInvoiceStatusRulesRegistry;
11020
11322
  this.outgoingInvoiceStatusRulesRegistry = outgoingInvoiceStatusRulesRegistry;
11323
+ this.saleOrderStatusRulesRegistry = saleOrderStatusRulesRegistry;
11324
+ this.purchaseOrderStatusRulesRegistry = purchaseOrderStatusRulesRegistry;
11021
11325
  }
11022
11326
  StatusRulesRegistry.prototype.get = function (context, taxType) {
11023
11327
  switch (context.document) {
@@ -11025,15 +11329,21 @@ var StatusRulesRegistry = /** @class */ (function () {
11025
11329
  return this.incomingInvoiceStatusRulesRegistry.get(context.invoice.type, taxType);
11026
11330
  case 'Outgoing Invoice':
11027
11331
  return this.outgoingInvoiceStatusRulesRegistry.get(context.invoice.type, taxType);
11332
+ case 'Sale Order':
11333
+ return this.saleOrderStatusRulesRegistry.get(context.order.type, taxType);
11334
+ case 'Purchase Order':
11335
+ return this.purchaseOrderStatusRulesRegistry.get(context.order.type, taxType);
11028
11336
  default:
11029
11337
  throw new Error("StatusRulesRegistry not implemented for " + context.document);
11030
11338
  }
11031
11339
  };
11032
11340
  StatusRulesRegistry.ctorParameters = function () { return [
11033
11341
  { type: IncomingInvoiceStatusRulesRegistry },
11034
- { type: OutgoingInvoiceStatusRulesRegistry }
11342
+ { type: OutgoingInvoiceStatusRulesRegistry },
11343
+ { type: SaleOrderStatusRulesRegistry },
11344
+ { type: PurchaseOrderStatusRulesRegistry }
11035
11345
  ]; };
11036
- StatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function StatusRulesRegistry_Factory() { return new StatusRulesRegistry(ɵɵinject(IncomingInvoiceStatusRulesRegistry), ɵɵinject(OutgoingInvoiceStatusRulesRegistry)); }, token: StatusRulesRegistry, providedIn: "root" });
11346
+ StatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function StatusRulesRegistry_Factory() { return new StatusRulesRegistry(ɵɵinject(IncomingInvoiceStatusRulesRegistry), ɵɵinject(OutgoingInvoiceStatusRulesRegistry), ɵɵinject(SaleOrderStatusRulesRegistry), ɵɵinject(PurchaseOrderStatusRulesRegistry)); }, token: StatusRulesRegistry, providedIn: "root" });
11037
11347
  StatusRulesRegistry = __decorate([
11038
11348
  Injectable({ providedIn: 'root' })
11039
11349
  ], StatusRulesRegistry);
@@ -11878,6 +12188,59 @@ var TaxAmountRequiredValidationRule = /** @class */ (function () {
11878
12188
  });
11879
12189
  }
11880
12190
  break;
12191
+ case EnumTipoTributo.CBS_AJUSTE:
12192
+ case EnumTipoTributo.IBS_AJUSTE:
12193
+ {
12194
+ combineLatest([
12195
+ formGroup
12196
+ .get('situacaoTributaria')
12197
+ .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
12198
+ formGroup
12199
+ .get('classificacaoTributaria')
12200
+ .valueChanges.pipe(startWith(formGroup.get('classificacaoTributaria')
12201
+ .value), distinctUntilChanged()),
12202
+ formGroup
12203
+ .get(EnumCampoTributo.PeriodoApuracao)
12204
+ .valueChanges.pipe(startWith(formGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged()),
12205
+ formGroup
12206
+ .get('valor')
12207
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
12208
+ ])
12209
+ .pipe(map(function (_a) {
12210
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassification = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
12211
+ return [
12212
+ taxSituation,
12213
+ taxClassification,
12214
+ assessmentPeriod,
12215
+ new BigNumber(taxAmount)
12216
+ ];
12217
+ }))
12218
+ .subscribe(function (_a) {
12219
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassification = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
12220
+ var validators = [];
12221
+ if (taxSituation ||
12222
+ taxClassification ||
12223
+ assessmentPeriod ||
12224
+ taxAmount.isFinite()) {
12225
+ validators = [
12226
+ Validators.max(9999999999999.99),
12227
+ Validators.required
12228
+ ];
12229
+ }
12230
+ else {
12231
+ validators = [
12232
+ Validators.max(9999999999999.99)
12233
+ ];
12234
+ }
12235
+ formGroup
12236
+ .get('valor')
12237
+ .setValidators(validators);
12238
+ formGroup.get('valor').updateValueAndValidity({
12239
+ emitEvent: false
12240
+ });
12241
+ });
12242
+ }
12243
+ break;
11881
12244
  default:
11882
12245
  throw new Error("Regra TaxAmountRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
11883
12246
  }
@@ -12250,13 +12613,63 @@ var TaxClassificationRequiredValidationRule = /** @class */ (function () {
12250
12613
  });
12251
12614
  }
12252
12615
  break;
12253
- default:
12254
- throw new Error("Regra TaxClassificationRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
12255
- }
12256
- };
12257
- TaxClassificationRequiredValidationRule.ɵprov = ɵɵdefineInjectable({ factory: function TaxClassificationRequiredValidationRule_Factory() { return new TaxClassificationRequiredValidationRule(); }, token: TaxClassificationRequiredValidationRule, providedIn: "root" });
12258
- TaxClassificationRequiredValidationRule = __decorate([
12259
- Injectable({ providedIn: 'root' })
12616
+ case EnumTipoTributo.CBS_AJUSTE:
12617
+ case EnumTipoTributo.IBS_AJUSTE:
12618
+ {
12619
+ combineLatest([
12620
+ formGroup
12621
+ .get('situacaoTributaria')
12622
+ .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
12623
+ formGroup
12624
+ .get('classificacaoTributaria')
12625
+ .valueChanges.pipe(startWith(formGroup.get('classificacaoTributaria')
12626
+ .value), distinctUntilChanged()),
12627
+ formGroup
12628
+ .get(EnumCampoTributo.PeriodoApuracao)
12629
+ .valueChanges.pipe(startWith(formGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged()),
12630
+ formGroup
12631
+ .get('valor')
12632
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
12633
+ ])
12634
+ .pipe(map(function (_a) {
12635
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassication = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
12636
+ return [
12637
+ taxSituation,
12638
+ taxClassication,
12639
+ assessmentPeriod,
12640
+ new BigNumber(taxAmount)
12641
+ ];
12642
+ }))
12643
+ .subscribe(function (_a) {
12644
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassication = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
12645
+ var validators = [];
12646
+ if (taxSituation ||
12647
+ taxClassication ||
12648
+ assessmentPeriod ||
12649
+ taxAmount.isFinite()) {
12650
+ validators = [Validators.required];
12651
+ }
12652
+ else {
12653
+ validators = [];
12654
+ }
12655
+ formGroup
12656
+ .get('classificacaoTributaria')
12657
+ .setValidators(validators);
12658
+ formGroup
12659
+ .get('classificacaoTributaria')
12660
+ .updateValueAndValidity({
12661
+ emitEvent: false
12662
+ });
12663
+ });
12664
+ }
12665
+ break;
12666
+ default:
12667
+ throw new Error("Regra TaxClassificationRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
12668
+ }
12669
+ };
12670
+ TaxClassificationRequiredValidationRule.ɵprov = ɵɵdefineInjectable({ factory: function TaxClassificationRequiredValidationRule_Factory() { return new TaxClassificationRequiredValidationRule(); }, token: TaxClassificationRequiredValidationRule, providedIn: "root" });
12671
+ TaxClassificationRequiredValidationRule = __decorate([
12672
+ Injectable({ providedIn: 'root' })
12260
12673
  ], TaxClassificationRequiredValidationRule);
12261
12674
  return TaxClassificationRequiredValidationRule;
12262
12675
  }());
@@ -13215,6 +13628,56 @@ var TaxSituationRequiredValidationRule = /** @class */ (function () {
13215
13628
  });
13216
13629
  }
13217
13630
  break;
13631
+ case EnumTipoTributo.CBS_AJUSTE:
13632
+ case EnumTipoTributo.IBS_AJUSTE:
13633
+ {
13634
+ combineLatest([
13635
+ formGroup
13636
+ .get('situacaoTributaria')
13637
+ .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
13638
+ formGroup
13639
+ .get('classificacaoTributaria')
13640
+ .valueChanges.pipe(startWith(formGroup.get('classificacaoTributaria')
13641
+ .value), distinctUntilChanged()),
13642
+ formGroup
13643
+ .get(EnumCampoTributo.PeriodoApuracao)
13644
+ .valueChanges.pipe(startWith(formGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged()),
13645
+ formGroup
13646
+ .get('valor')
13647
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
13648
+ ])
13649
+ .pipe(map(function (_a) {
13650
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassification = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
13651
+ return [
13652
+ taxSituation,
13653
+ taxClassification,
13654
+ assessmentPeriod,
13655
+ new BigNumber(taxAmount)
13656
+ ];
13657
+ }))
13658
+ .subscribe(function (_a) {
13659
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassification = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
13660
+ var validators = [];
13661
+ if (taxSituation ||
13662
+ taxClassification ||
13663
+ assessmentPeriod ||
13664
+ taxAmount.isFinite()) {
13665
+ validators = [Validators.required];
13666
+ }
13667
+ else {
13668
+ validators = [];
13669
+ }
13670
+ formGroup
13671
+ .get('situacaoTributaria')
13672
+ .setValidators(validators);
13673
+ formGroup
13674
+ .get('situacaoTributaria')
13675
+ .updateValueAndValidity({
13676
+ emitEvent: false
13677
+ });
13678
+ });
13679
+ }
13680
+ break;
13218
13681
  default:
13219
13682
  throw new Error("Regra TaxSituationRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
13220
13683
  }
@@ -16718,14 +17181,92 @@ var IncomingInvoiceValidationRulesRegistry = /** @class */ (function () {
16718
17181
  return IncomingInvoiceValidationRulesRegistry;
16719
17182
  }());
16720
17183
 
17184
+ var AssessmentPeriodRequiredValidationRule = /** @class */ (function () {
17185
+ function AssessmentPeriodRequiredValidationRule() {
17186
+ }
17187
+ AssessmentPeriodRequiredValidationRule.prototype.apply = function (_a) {
17188
+ var context = _a.context, _b = _a.item, taxType = _b.name, formGroup = _b.formGroup;
17189
+ var document = context.document;
17190
+ switch (taxType) {
17191
+ case EnumTipoTributo.CBS_AJUSTE:
17192
+ case EnumTipoTributo.IBS_AJUSTE:
17193
+ {
17194
+ switch (document) {
17195
+ case 'Outgoing Invoice':
17196
+ {
17197
+ combineLatest([
17198
+ formGroup
17199
+ .get('situacaoTributaria')
17200
+ .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
17201
+ formGroup
17202
+ .get('classificacaoTributaria')
17203
+ .valueChanges.pipe(startWith(formGroup.get('classificacaoTributaria').value), distinctUntilChanged()),
17204
+ formGroup
17205
+ .get(EnumCampoTributo.PeriodoApuracao)
17206
+ .valueChanges.pipe(startWith(formGroup.get(EnumCampoTributo.PeriodoApuracao).value), distinctUntilChanged()),
17207
+ formGroup
17208
+ .get('valor')
17209
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
17210
+ ])
17211
+ .pipe(map(function (_a) {
17212
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassication = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
17213
+ return [
17214
+ taxSituation,
17215
+ taxClassication,
17216
+ assessmentPeriod,
17217
+ new BigNumber(taxAmount)
17218
+ ];
17219
+ }))
17220
+ .subscribe(function (_a) {
17221
+ var _b = __read(_a, 4), taxSituation = _b[0], taxClassication = _b[1], assessmentPeriod = _b[2], taxAmount = _b[3];
17222
+ var validators = [];
17223
+ if (taxSituation ||
17224
+ taxClassication ||
17225
+ assessmentPeriod ||
17226
+ taxAmount.isFinite()) {
17227
+ validators = [
17228
+ Validators.required
17229
+ ];
17230
+ }
17231
+ else {
17232
+ validators = [];
17233
+ }
17234
+ formGroup
17235
+ .get(EnumCampoTributo.PeriodoApuracao)
17236
+ .setValidators(validators);
17237
+ formGroup
17238
+ .get(EnumCampoTributo.PeriodoApuracao)
17239
+ .updateValueAndValidity({
17240
+ emitEvent: false
17241
+ });
17242
+ });
17243
+ }
17244
+ break;
17245
+ default:
17246
+ throw new Error("Regra AssessmentPeriodRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
17247
+ }
17248
+ }
17249
+ break;
17250
+ default:
17251
+ throw new Error("Regra AssessmentPeriodRequiredValidationRule n\u00E3o implementada para o imposto " + taxType + ", documento " + document + ".");
17252
+ }
17253
+ };
17254
+ AssessmentPeriodRequiredValidationRule.ɵprov = ɵɵdefineInjectable({ factory: function AssessmentPeriodRequiredValidationRule_Factory() { return new AssessmentPeriodRequiredValidationRule(); }, token: AssessmentPeriodRequiredValidationRule, providedIn: "root" });
17255
+ AssessmentPeriodRequiredValidationRule = __decorate([
17256
+ Injectable({ providedIn: 'root' })
17257
+ ], AssessmentPeriodRequiredValidationRule);
17258
+ return AssessmentPeriodRequiredValidationRule;
17259
+ }());
17260
+
16721
17261
  var OutgoingInvoiceValidationRulesRegistry = /** @class */ (function () {
16722
- function OutgoingInvoiceValidationRulesRegistry(taxableBaseRequiredValidationRule, taxRateRequiredValidationRule, taxClassificationRequiredValidationRule, taxAmountRequiredValidationRule, taxSituationRequiredValidationRule) {
17262
+ function OutgoingInvoiceValidationRulesRegistry(taxableBaseRequiredValidationRule, taxRateRequiredValidationRule, taxClassificationRequiredValidationRule, taxAmountRequiredValidationRule, taxSituationRequiredValidationRule, assessmentPeriodRequiredValidationRule) {
16723
17263
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
16724
17264
  this.taxableBaseRequiredValidationRule = taxableBaseRequiredValidationRule;
16725
17265
  this.taxRateRequiredValidationRule = taxRateRequiredValidationRule;
16726
17266
  this.taxClassificationRequiredValidationRule = taxClassificationRequiredValidationRule;
16727
17267
  this.taxAmountRequiredValidationRule = taxAmountRequiredValidationRule;
16728
17268
  this.taxSituationRequiredValidationRule = taxSituationRequiredValidationRule;
17269
+ this.assessmentPeriodRequiredValidationRule = assessmentPeriodRequiredValidationRule;
16729
17270
  this.strategies = {
16730
17271
  'Product And Service Sale': (_a = {},
16731
17272
  _a[EnumTipoTributo.CBS] = [
@@ -19514,6 +20055,42 @@ var OutgoingInvoiceValidationRulesRegistry = /** @class */ (function () {
19514
20055
  rules: [this.taxAmountRequiredValidationRule]
19515
20056
  }
19516
20057
  ],
20058
+ _k[EnumTipoTributo.CBS_AJUSTE] = [
20059
+ {
20060
+ field: EnumCampoTributo.SituacaoTributaria,
20061
+ rules: [this.taxSituationRequiredValidationRule]
20062
+ },
20063
+ {
20064
+ field: EnumCampoTributo.ClassificacaoTributaria,
20065
+ rules: [this.taxClassificationRequiredValidationRule]
20066
+ },
20067
+ {
20068
+ field: EnumCampoTributo.PeriodoApuracao,
20069
+ rules: [this.assessmentPeriodRequiredValidationRule]
20070
+ },
20071
+ {
20072
+ field: EnumCampoTributo.Valor,
20073
+ rules: [this.taxAmountRequiredValidationRule]
20074
+ }
20075
+ ],
20076
+ _k[EnumTipoTributo.IBS_AJUSTE] = [
20077
+ {
20078
+ field: EnumCampoTributo.SituacaoTributaria,
20079
+ rules: [this.taxSituationRequiredValidationRule]
20080
+ },
20081
+ {
20082
+ field: EnumCampoTributo.ClassificacaoTributaria,
20083
+ rules: [this.taxClassificationRequiredValidationRule]
20084
+ },
20085
+ {
20086
+ field: EnumCampoTributo.PeriodoApuracao,
20087
+ rules: [this.assessmentPeriodRequiredValidationRule]
20088
+ },
20089
+ {
20090
+ field: EnumCampoTributo.Valor,
20091
+ rules: [this.taxAmountRequiredValidationRule]
20092
+ }
20093
+ ],
19517
20094
  _k),
19518
20095
  Delivery: (_l = {},
19519
20096
  _l[EnumTipoTributo.CBS] = [
@@ -21458,9 +22035,10 @@ var OutgoingInvoiceValidationRulesRegistry = /** @class */ (function () {
21458
22035
  { type: TaxRateRequiredValidationRule },
21459
22036
  { type: TaxClassificationRequiredValidationRule },
21460
22037
  { type: TaxAmountRequiredValidationRule },
21461
- { type: TaxSituationRequiredValidationRule }
22038
+ { type: TaxSituationRequiredValidationRule },
22039
+ { type: AssessmentPeriodRequiredValidationRule }
21462
22040
  ]; };
21463
- OutgoingInvoiceValidationRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function OutgoingInvoiceValidationRulesRegistry_Factory() { return new OutgoingInvoiceValidationRulesRegistry(ɵɵinject(TaxableBaseRequiredValidationRule), ɵɵinject(TaxRateRequiredValidationRule), ɵɵinject(TaxClassificationRequiredValidationRule), ɵɵinject(TaxAmountRequiredValidationRule), ɵɵinject(TaxSituationRequiredValidationRule)); }, token: OutgoingInvoiceValidationRulesRegistry, providedIn: "root" });
22041
+ OutgoingInvoiceValidationRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function OutgoingInvoiceValidationRulesRegistry_Factory() { return new OutgoingInvoiceValidationRulesRegistry(ɵɵinject(TaxableBaseRequiredValidationRule), ɵɵinject(TaxRateRequiredValidationRule), ɵɵinject(TaxClassificationRequiredValidationRule), ɵɵinject(TaxAmountRequiredValidationRule), ɵɵinject(TaxSituationRequiredValidationRule), ɵɵinject(AssessmentPeriodRequiredValidationRule)); }, token: OutgoingInvoiceValidationRulesRegistry, providedIn: "root" });
21464
22042
  OutgoingInvoiceValidationRulesRegistry = __decorate([
21465
22043
  Injectable({ providedIn: 'root' })
21466
22044
  ], OutgoingInvoiceValidationRulesRegistry);
@@ -21678,12 +22256,12 @@ var PurchaseOrderValidationRulesRegistry = /** @class */ (function () {
21678
22256
 
21679
22257
  var SaleOrderValidationRulesRegistry = /** @class */ (function () {
21680
22258
  function SaleOrderValidationRulesRegistry(taxableBaseRequiredValidationRule, taxRateRequiredValidationRule, taxAmountRequiredValidationRule) {
21681
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
22259
+ var _a, _b, _c, _d, _e, _f, _g;
21682
22260
  this.taxableBaseRequiredValidationRule = taxableBaseRequiredValidationRule;
21683
22261
  this.taxRateRequiredValidationRule = taxRateRequiredValidationRule;
21684
22262
  this.taxAmountRequiredValidationRule = taxAmountRequiredValidationRule;
21685
22263
  this.strategies = {
21686
- 'Producer Invoice': (_a = {},
22264
+ 'Product Order': (_a = {},
21687
22265
  _a[EnumTipoTributo.CBS] = [
21688
22266
  {
21689
22267
  field: EnumCampoTributo.BaseCalculo,
@@ -21867,7 +22445,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
21867
22445
  }
21868
22446
  ],
21869
22447
  _a),
21870
- 'Service Invoice': (_b = {},
22448
+ 'Service Order': (_b = {},
21871
22449
  _b[EnumTipoTributo.CBS] = [
21872
22450
  {
21873
22451
  field: EnumCampoTributo.BaseCalculo,
@@ -22051,7 +22629,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22051
22629
  }
22052
22630
  ],
22053
22631
  _b),
22054
- 'Third Party Return': (_c = {},
22632
+ 'Future Delivery Order': (_c = {},
22055
22633
  _c[EnumTipoTributo.CBS] = [
22056
22634
  {
22057
22635
  field: EnumCampoTributo.BaseCalculo,
@@ -22235,7 +22813,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22235
22813
  }
22236
22814
  ],
22237
22815
  _c),
22238
- Adjustment: (_d = {},
22816
+ 'Product and Service Order': (_d = {},
22239
22817
  _d[EnumTipoTributo.CBS] = [
22240
22818
  {
22241
22819
  field: EnumCampoTributo.BaseCalculo,
@@ -22419,7 +22997,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22419
22997
  }
22420
22998
  ],
22421
22999
  _d),
22422
- Complement: (_e = {},
23000
+ 'Product and Service Quote': (_e = {},
22423
23001
  _e[EnumTipoTributo.CBS] = [
22424
23002
  {
22425
23003
  field: EnumCampoTributo.BaseCalculo,
@@ -22603,7 +23181,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22603
23181
  }
22604
23182
  ],
22605
23183
  _e),
22606
- Credit: (_f = {},
23184
+ 'Product Quote': (_f = {},
22607
23185
  _f[EnumTipoTributo.CBS] = [
22608
23186
  {
22609
23187
  field: EnumCampoTributo.BaseCalculo,
@@ -22787,7 +23365,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22787
23365
  }
22788
23366
  ],
22789
23367
  _f),
22790
- Freight: (_g = {},
23368
+ 'Service Quote': (_g = {},
22791
23369
  _g[EnumTipoTributo.CBS] = [
22792
23370
  {
22793
23371
  field: EnumCampoTributo.BaseCalculo,
@@ -22970,559 +23548,7 @@ var SaleOrderValidationRulesRegistry = /** @class */ (function () {
22970
23548
  rules: [this.taxAmountRequiredValidationRule]
22971
23549
  }
22972
23550
  ],
22973
- _g),
22974
- Return: (_h = {},
22975
- _h[EnumTipoTributo.CBS] = [
22976
- {
22977
- field: EnumCampoTributo.BaseCalculo,
22978
- rules: [this.taxableBaseRequiredValidationRule]
22979
- },
22980
- {
22981
- field: EnumCampoTributo.Aliquota,
22982
- rules: [this.taxRateRequiredValidationRule]
22983
- },
22984
- {
22985
- field: EnumCampoTributo.Valor,
22986
- rules: [this.taxAmountRequiredValidationRule]
22987
- }
22988
- ],
22989
- _h[EnumTipoTributo.CBS_DIFERIDO] = [
22990
- {
22991
- field: EnumCampoTributo.BaseCalculo,
22992
- rules: [this.taxableBaseRequiredValidationRule]
22993
- },
22994
- {
22995
- field: EnumCampoTributo.Aliquota,
22996
- rules: [this.taxRateRequiredValidationRule]
22997
- },
22998
- {
22999
- field: EnumCampoTributo.Valor,
23000
- rules: [this.taxAmountRequiredValidationRule]
23001
- }
23002
- ],
23003
- _h[EnumTipoTributo.CBS_CREDITO_PRESUMIDO] = [
23004
- {
23005
- field: EnumCampoTributo.BaseCalculo,
23006
- rules: [this.taxableBaseRequiredValidationRule]
23007
- },
23008
- {
23009
- field: EnumCampoTributo.Aliquota,
23010
- rules: [this.taxRateRequiredValidationRule]
23011
- }
23012
- ],
23013
- _h[EnumTipoTributo.CBS_TRIBUTACAO_REGULAR] = [
23014
- {
23015
- field: EnumCampoTributo.BaseCalculo,
23016
- rules: [this.taxableBaseRequiredValidationRule]
23017
- },
23018
- {
23019
- field: EnumCampoTributo.Aliquota,
23020
- rules: [this.taxRateRequiredValidationRule]
23021
- },
23022
- {
23023
- field: EnumCampoTributo.Valor,
23024
- rules: [this.taxAmountRequiredValidationRule]
23025
- }
23026
- ],
23027
- _h[EnumTipoTributo.CBS_GOVERNAMENTAL] = [
23028
- {
23029
- field: EnumCampoTributo.BaseCalculo,
23030
- rules: [this.taxableBaseRequiredValidationRule]
23031
- },
23032
- {
23033
- field: EnumCampoTributo.Aliquota,
23034
- rules: [this.taxRateRequiredValidationRule]
23035
- }
23036
- ],
23037
- _h[EnumTipoTributo.IBS_ESTADUAL] = [
23038
- {
23039
- field: EnumCampoTributo.BaseCalculo,
23040
- rules: [this.taxableBaseRequiredValidationRule]
23041
- },
23042
- {
23043
- field: EnumCampoTributo.Aliquota,
23044
- rules: [this.taxRateRequiredValidationRule]
23045
- },
23046
- {
23047
- field: EnumCampoTributo.Valor,
23048
- rules: [this.taxAmountRequiredValidationRule]
23049
- }
23050
- ],
23051
- _h[EnumTipoTributo.IBS_ESTADUAL_DIFERIDO] = [
23052
- {
23053
- field: EnumCampoTributo.BaseCalculo,
23054
- rules: [this.taxableBaseRequiredValidationRule]
23055
- },
23056
- {
23057
- field: EnumCampoTributo.Aliquota,
23058
- rules: [this.taxRateRequiredValidationRule]
23059
- },
23060
- {
23061
- field: EnumCampoTributo.Valor,
23062
- rules: [this.taxAmountRequiredValidationRule]
23063
- }
23064
- ],
23065
- _h[EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR] = [
23066
- {
23067
- field: EnumCampoTributo.BaseCalculo,
23068
- rules: [this.taxableBaseRequiredValidationRule]
23069
- },
23070
- {
23071
- field: EnumCampoTributo.Aliquota,
23072
- rules: [this.taxRateRequiredValidationRule]
23073
- }
23074
- ],
23075
- _h[EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL] = [
23076
- {
23077
- field: EnumCampoTributo.BaseCalculo,
23078
- rules: [this.taxableBaseRequiredValidationRule]
23079
- },
23080
- {
23081
- field: EnumCampoTributo.Aliquota,
23082
- rules: [this.taxRateRequiredValidationRule]
23083
- }
23084
- ],
23085
- _h[EnumTipoTributo.IBS_MUNICIPAL] = [
23086
- {
23087
- field: EnumCampoTributo.BaseCalculo,
23088
- rules: [this.taxableBaseRequiredValidationRule]
23089
- },
23090
- {
23091
- field: EnumCampoTributo.Aliquota,
23092
- rules: [this.taxRateRequiredValidationRule]
23093
- },
23094
- {
23095
- field: EnumCampoTributo.Valor,
23096
- rules: [this.taxAmountRequiredValidationRule]
23097
- }
23098
- ],
23099
- _h[EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO] = [
23100
- {
23101
- field: EnumCampoTributo.BaseCalculo,
23102
- rules: [this.taxableBaseRequiredValidationRule]
23103
- },
23104
- {
23105
- field: EnumCampoTributo.Aliquota,
23106
- rules: [this.taxRateRequiredValidationRule]
23107
- },
23108
- {
23109
- field: EnumCampoTributo.Valor,
23110
- rules: [this.taxAmountRequiredValidationRule]
23111
- }
23112
- ],
23113
- _h[EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR] = [
23114
- {
23115
- field: EnumCampoTributo.BaseCalculo,
23116
- rules: [this.taxableBaseRequiredValidationRule]
23117
- },
23118
- {
23119
- field: EnumCampoTributo.Aliquota,
23120
- rules: [this.taxRateRequiredValidationRule]
23121
- }
23122
- ],
23123
- _h[EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL] = [
23124
- {
23125
- field: EnumCampoTributo.BaseCalculo,
23126
- rules: [this.taxableBaseRequiredValidationRule]
23127
- },
23128
- {
23129
- field: EnumCampoTributo.Aliquota,
23130
- rules: [this.taxRateRequiredValidationRule]
23131
- }
23132
- ],
23133
- _h[EnumTipoTributo.IBS_CREDITO_PRESUMIDO] = [
23134
- {
23135
- field: EnumCampoTributo.BaseCalculo,
23136
- rules: [this.taxableBaseRequiredValidationRule]
23137
- },
23138
- {
23139
- field: EnumCampoTributo.Aliquota,
23140
- rules: [this.taxRateRequiredValidationRule]
23141
- }
23142
- ],
23143
- _h[EnumTipoTributo.IS] = [
23144
- {
23145
- field: EnumCampoTributo.BaseCalculo,
23146
- rules: [this.taxableBaseRequiredValidationRule]
23147
- },
23148
- {
23149
- field: EnumCampoTributo.Aliquota,
23150
- rules: [this.taxRateRequiredValidationRule]
23151
- },
23152
- {
23153
- field: EnumCampoTributo.Valor,
23154
- rules: [this.taxAmountRequiredValidationRule]
23155
- }
23156
- ],
23157
- _h),
23158
- Reversal: (_j = {},
23159
- _j[EnumTipoTributo.CBS] = [
23160
- {
23161
- field: EnumCampoTributo.BaseCalculo,
23162
- rules: [this.taxableBaseRequiredValidationRule]
23163
- },
23164
- {
23165
- field: EnumCampoTributo.Aliquota,
23166
- rules: [this.taxRateRequiredValidationRule]
23167
- },
23168
- {
23169
- field: EnumCampoTributo.Valor,
23170
- rules: [this.taxAmountRequiredValidationRule]
23171
- }
23172
- ],
23173
- _j[EnumTipoTributo.CBS_DIFERIDO] = [
23174
- {
23175
- field: EnumCampoTributo.BaseCalculo,
23176
- rules: [this.taxableBaseRequiredValidationRule]
23177
- },
23178
- {
23179
- field: EnumCampoTributo.Aliquota,
23180
- rules: [this.taxRateRequiredValidationRule]
23181
- },
23182
- {
23183
- field: EnumCampoTributo.Valor,
23184
- rules: [this.taxAmountRequiredValidationRule]
23185
- }
23186
- ],
23187
- _j[EnumTipoTributo.CBS_CREDITO_PRESUMIDO] = [
23188
- {
23189
- field: EnumCampoTributo.BaseCalculo,
23190
- rules: [this.taxableBaseRequiredValidationRule]
23191
- },
23192
- {
23193
- field: EnumCampoTributo.Aliquota,
23194
- rules: [this.taxRateRequiredValidationRule]
23195
- }
23196
- ],
23197
- _j[EnumTipoTributo.CBS_TRIBUTACAO_REGULAR] = [
23198
- {
23199
- field: EnumCampoTributo.BaseCalculo,
23200
- rules: [this.taxableBaseRequiredValidationRule]
23201
- },
23202
- {
23203
- field: EnumCampoTributo.Aliquota,
23204
- rules: [this.taxRateRequiredValidationRule]
23205
- },
23206
- {
23207
- field: EnumCampoTributo.Valor,
23208
- rules: [this.taxAmountRequiredValidationRule]
23209
- }
23210
- ],
23211
- _j[EnumTipoTributo.CBS_GOVERNAMENTAL] = [
23212
- {
23213
- field: EnumCampoTributo.BaseCalculo,
23214
- rules: [this.taxableBaseRequiredValidationRule]
23215
- },
23216
- {
23217
- field: EnumCampoTributo.Aliquota,
23218
- rules: [this.taxRateRequiredValidationRule]
23219
- }
23220
- ],
23221
- _j[EnumTipoTributo.IBS_ESTADUAL] = [
23222
- {
23223
- field: EnumCampoTributo.BaseCalculo,
23224
- rules: [this.taxableBaseRequiredValidationRule]
23225
- },
23226
- {
23227
- field: EnumCampoTributo.Aliquota,
23228
- rules: [this.taxRateRequiredValidationRule]
23229
- },
23230
- {
23231
- field: EnumCampoTributo.Valor,
23232
- rules: [this.taxAmountRequiredValidationRule]
23233
- }
23234
- ],
23235
- _j[EnumTipoTributo.IBS_ESTADUAL_DIFERIDO] = [
23236
- {
23237
- field: EnumCampoTributo.BaseCalculo,
23238
- rules: [this.taxableBaseRequiredValidationRule]
23239
- },
23240
- {
23241
- field: EnumCampoTributo.Aliquota,
23242
- rules: [this.taxRateRequiredValidationRule]
23243
- },
23244
- {
23245
- field: EnumCampoTributo.Valor,
23246
- rules: [this.taxAmountRequiredValidationRule]
23247
- }
23248
- ],
23249
- _j[EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR] = [
23250
- {
23251
- field: EnumCampoTributo.BaseCalculo,
23252
- rules: [this.taxableBaseRequiredValidationRule]
23253
- },
23254
- {
23255
- field: EnumCampoTributo.Aliquota,
23256
- rules: [this.taxRateRequiredValidationRule]
23257
- }
23258
- ],
23259
- _j[EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL] = [
23260
- {
23261
- field: EnumCampoTributo.BaseCalculo,
23262
- rules: [this.taxableBaseRequiredValidationRule]
23263
- },
23264
- {
23265
- field: EnumCampoTributo.Aliquota,
23266
- rules: [this.taxRateRequiredValidationRule]
23267
- }
23268
- ],
23269
- _j[EnumTipoTributo.IBS_MUNICIPAL] = [
23270
- {
23271
- field: EnumCampoTributo.BaseCalculo,
23272
- rules: [this.taxableBaseRequiredValidationRule]
23273
- },
23274
- {
23275
- field: EnumCampoTributo.Aliquota,
23276
- rules: [this.taxRateRequiredValidationRule]
23277
- },
23278
- {
23279
- field: EnumCampoTributo.Valor,
23280
- rules: [this.taxAmountRequiredValidationRule]
23281
- }
23282
- ],
23283
- _j[EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO] = [
23284
- {
23285
- field: EnumCampoTributo.BaseCalculo,
23286
- rules: [this.taxableBaseRequiredValidationRule]
23287
- },
23288
- {
23289
- field: EnumCampoTributo.Aliquota,
23290
- rules: [this.taxRateRequiredValidationRule]
23291
- },
23292
- {
23293
- field: EnumCampoTributo.Valor,
23294
- rules: [this.taxAmountRequiredValidationRule]
23295
- }
23296
- ],
23297
- _j[EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR] = [
23298
- {
23299
- field: EnumCampoTributo.BaseCalculo,
23300
- rules: [this.taxableBaseRequiredValidationRule]
23301
- },
23302
- {
23303
- field: EnumCampoTributo.Aliquota,
23304
- rules: [this.taxRateRequiredValidationRule]
23305
- }
23306
- ],
23307
- _j[EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL] = [
23308
- {
23309
- field: EnumCampoTributo.BaseCalculo,
23310
- rules: [this.taxableBaseRequiredValidationRule]
23311
- },
23312
- {
23313
- field: EnumCampoTributo.Aliquota,
23314
- rules: [this.taxRateRequiredValidationRule]
23315
- }
23316
- ],
23317
- _j[EnumTipoTributo.IBS_CREDITO_PRESUMIDO] = [
23318
- {
23319
- field: EnumCampoTributo.BaseCalculo,
23320
- rules: [this.taxableBaseRequiredValidationRule]
23321
- },
23322
- {
23323
- field: EnumCampoTributo.Aliquota,
23324
- rules: [this.taxRateRequiredValidationRule]
23325
- }
23326
- ],
23327
- _j[EnumTipoTributo.IS] = [
23328
- {
23329
- field: EnumCampoTributo.BaseCalculo,
23330
- rules: [this.taxableBaseRequiredValidationRule]
23331
- },
23332
- {
23333
- field: EnumCampoTributo.Aliquota,
23334
- rules: [this.taxRateRequiredValidationRule]
23335
- },
23336
- {
23337
- field: EnumCampoTributo.Valor,
23338
- rules: [this.taxAmountRequiredValidationRule]
23339
- }
23340
- ],
23341
- _j),
23342
- Standard: (_k = {},
23343
- _k[EnumTipoTributo.CBS] = [
23344
- {
23345
- field: EnumCampoTributo.BaseCalculo,
23346
- rules: [this.taxableBaseRequiredValidationRule]
23347
- },
23348
- {
23349
- field: EnumCampoTributo.Aliquota,
23350
- rules: [this.taxRateRequiredValidationRule]
23351
- },
23352
- {
23353
- field: EnumCampoTributo.Valor,
23354
- rules: [this.taxAmountRequiredValidationRule]
23355
- }
23356
- ],
23357
- _k[EnumTipoTributo.CBS_DIFERIDO] = [
23358
- {
23359
- field: EnumCampoTributo.BaseCalculo,
23360
- rules: [this.taxableBaseRequiredValidationRule]
23361
- },
23362
- {
23363
- field: EnumCampoTributo.Aliquota,
23364
- rules: [this.taxRateRequiredValidationRule]
23365
- },
23366
- {
23367
- field: EnumCampoTributo.Valor,
23368
- rules: [this.taxAmountRequiredValidationRule]
23369
- }
23370
- ],
23371
- _k[EnumTipoTributo.CBS_CREDITO_PRESUMIDO] = [
23372
- {
23373
- field: EnumCampoTributo.BaseCalculo,
23374
- rules: [this.taxableBaseRequiredValidationRule]
23375
- },
23376
- {
23377
- field: EnumCampoTributo.Aliquota,
23378
- rules: [this.taxRateRequiredValidationRule]
23379
- }
23380
- ],
23381
- _k[EnumTipoTributo.CBS_TRIBUTACAO_REGULAR] = [
23382
- {
23383
- field: EnumCampoTributo.BaseCalculo,
23384
- rules: [this.taxableBaseRequiredValidationRule]
23385
- },
23386
- {
23387
- field: EnumCampoTributo.Aliquota,
23388
- rules: [this.taxRateRequiredValidationRule]
23389
- },
23390
- {
23391
- field: EnumCampoTributo.Valor,
23392
- rules: [this.taxAmountRequiredValidationRule]
23393
- }
23394
- ],
23395
- _k[EnumTipoTributo.CBS_GOVERNAMENTAL] = [
23396
- {
23397
- field: EnumCampoTributo.BaseCalculo,
23398
- rules: [this.taxableBaseRequiredValidationRule]
23399
- },
23400
- {
23401
- field: EnumCampoTributo.Aliquota,
23402
- rules: [this.taxRateRequiredValidationRule]
23403
- }
23404
- ],
23405
- _k[EnumTipoTributo.IBS_ESTADUAL] = [
23406
- {
23407
- field: EnumCampoTributo.BaseCalculo,
23408
- rules: [this.taxableBaseRequiredValidationRule]
23409
- },
23410
- {
23411
- field: EnumCampoTributo.Aliquota,
23412
- rules: [this.taxRateRequiredValidationRule]
23413
- },
23414
- {
23415
- field: EnumCampoTributo.Valor,
23416
- rules: [this.taxAmountRequiredValidationRule]
23417
- }
23418
- ],
23419
- _k[EnumTipoTributo.IBS_ESTADUAL_DIFERIDO] = [
23420
- {
23421
- field: EnumCampoTributo.BaseCalculo,
23422
- rules: [this.taxableBaseRequiredValidationRule]
23423
- },
23424
- {
23425
- field: EnumCampoTributo.Aliquota,
23426
- rules: [this.taxRateRequiredValidationRule]
23427
- },
23428
- {
23429
- field: EnumCampoTributo.Valor,
23430
- rules: [this.taxAmountRequiredValidationRule]
23431
- }
23432
- ],
23433
- _k[EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR] = [
23434
- {
23435
- field: EnumCampoTributo.BaseCalculo,
23436
- rules: [this.taxableBaseRequiredValidationRule]
23437
- },
23438
- {
23439
- field: EnumCampoTributo.Aliquota,
23440
- rules: [this.taxRateRequiredValidationRule]
23441
- }
23442
- ],
23443
- _k[EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL] = [
23444
- {
23445
- field: EnumCampoTributo.BaseCalculo,
23446
- rules: [this.taxableBaseRequiredValidationRule]
23447
- },
23448
- {
23449
- field: EnumCampoTributo.Aliquota,
23450
- rules: [this.taxRateRequiredValidationRule]
23451
- }
23452
- ],
23453
- _k[EnumTipoTributo.IBS_MUNICIPAL] = [
23454
- {
23455
- field: EnumCampoTributo.BaseCalculo,
23456
- rules: [this.taxableBaseRequiredValidationRule]
23457
- },
23458
- {
23459
- field: EnumCampoTributo.Aliquota,
23460
- rules: [this.taxRateRequiredValidationRule]
23461
- },
23462
- {
23463
- field: EnumCampoTributo.Valor,
23464
- rules: [this.taxAmountRequiredValidationRule]
23465
- }
23466
- ],
23467
- _k[EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO] = [
23468
- {
23469
- field: EnumCampoTributo.BaseCalculo,
23470
- rules: [this.taxableBaseRequiredValidationRule]
23471
- },
23472
- {
23473
- field: EnumCampoTributo.Aliquota,
23474
- rules: [this.taxRateRequiredValidationRule]
23475
- },
23476
- {
23477
- field: EnumCampoTributo.Valor,
23478
- rules: [this.taxAmountRequiredValidationRule]
23479
- }
23480
- ],
23481
- _k[EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR] = [
23482
- {
23483
- field: EnumCampoTributo.BaseCalculo,
23484
- rules: [this.taxableBaseRequiredValidationRule]
23485
- },
23486
- {
23487
- field: EnumCampoTributo.Aliquota,
23488
- rules: [this.taxRateRequiredValidationRule]
23489
- }
23490
- ],
23491
- _k[EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL] = [
23492
- {
23493
- field: EnumCampoTributo.BaseCalculo,
23494
- rules: [this.taxableBaseRequiredValidationRule]
23495
- },
23496
- {
23497
- field: EnumCampoTributo.Aliquota,
23498
- rules: [this.taxRateRequiredValidationRule]
23499
- }
23500
- ],
23501
- _k[EnumTipoTributo.IBS_CREDITO_PRESUMIDO] = [
23502
- {
23503
- field: EnumCampoTributo.BaseCalculo,
23504
- rules: [this.taxableBaseRequiredValidationRule]
23505
- },
23506
- {
23507
- field: EnumCampoTributo.Aliquota,
23508
- rules: [this.taxRateRequiredValidationRule]
23509
- }
23510
- ],
23511
- _k[EnumTipoTributo.IS] = [
23512
- {
23513
- field: EnumCampoTributo.BaseCalculo,
23514
- rules: [this.taxableBaseRequiredValidationRule]
23515
- },
23516
- {
23517
- field: EnumCampoTributo.Aliquota,
23518
- rules: [this.taxRateRequiredValidationRule]
23519
- },
23520
- {
23521
- field: EnumCampoTributo.Valor,
23522
- rules: [this.taxAmountRequiredValidationRule]
23523
- }
23524
- ],
23525
- _k)
23551
+ _g)
23526
23552
  };
23527
23553
  }
23528
23554
  SaleOrderValidationRulesRegistry.prototype.get = function (type, taxType) {
@@ -23704,7 +23730,7 @@ var RulesService = /** @class */ (function () {
23704
23730
  }());
23705
23731
 
23706
23732
  var ErpTributosComponent = /** @class */ (function () {
23707
- function ErpTributosComponent(messageService, formBuilder, changeDetector, translate, e027StrLookup, beneficioFiscalLookup, e027eqiLookup, naturezaReceitaLookup, classificacaoTributariaLookup, lookupUtils, erpTributosService, gtag, rulesService) {
23733
+ function ErpTributosComponent(messageService, formBuilder, changeDetector, translate, e027StrLookup, beneficioFiscalLookup, e027eqiLookup, naturezaReceitaLookup, classificacaoTributariaLookup, lookupUtils, erpTributosService, gtag, rulesService, localeService) {
23708
23734
  this.messageService = messageService;
23709
23735
  this.formBuilder = formBuilder;
23710
23736
  this.changeDetector = changeDetector;
@@ -23718,6 +23744,7 @@ var ErpTributosComponent = /** @class */ (function () {
23718
23744
  this.erpTributosService = erpTributosService;
23719
23745
  this.gtag = gtag;
23720
23746
  this.rulesService = rulesService;
23747
+ this.localeService = localeService;
23721
23748
  this.camposBloqueados = false;
23722
23749
  this.currencyLocaleOptions = {
23723
23750
  currencySymbol: '',
@@ -23749,6 +23776,7 @@ var ErpTributosComponent = /** @class */ (function () {
23749
23776
  this.menuItemIBSCreditoPresumido = false;
23750
23777
  this.menuItemIS = false;
23751
23778
  this.menuItemCBS_IBS_ESTORNO_CREDITO = false;
23779
+ this.menuItemCBS_IBS_Ajuste = false;
23752
23780
  this.menuItemIcmsCreditoPresumido = false;
23753
23781
  this.requiredItemCideTecnologia = false;
23754
23782
  this.requiredItemPisRecuperar = false;
@@ -23782,7 +23810,7 @@ var ErpTributosComponent = /** @class */ (function () {
23782
23810
  this.requiredItemIcmsDesonerado = false;
23783
23811
  this.requiredItemDiferencialAlicota = false;
23784
23812
  this.requiredItemPisFaturemento = false;
23785
- this.requiredItemCofinsFaturemento = false;
23813
+ this.requiredItemCofins = false;
23786
23814
  this.requiredItemFcpUfDestino = false;
23787
23815
  this.requiredItemIcmsUfDestino = false;
23788
23816
  this.requiredSituacaoTributaria = false;
@@ -23799,7 +23827,7 @@ var ErpTributosComponent = /** @class */ (function () {
23799
23827
  this.requiredIcmsStSolidario = false;
23800
23828
  this.requiredIcmsStRetidoAnt = false;
23801
23829
  this.requiredFcpStReditoAnt = false;
23802
- this.ngUnsubscribe = new Subject();
23830
+ this.unsubscribe$ = new Subject();
23803
23831
  }
23804
23832
  Object.defineProperty(ErpTributosComponent.prototype, "tributos", {
23805
23833
  get: function () {
@@ -23812,14 +23840,6 @@ var ErpTributosComponent = /** @class */ (function () {
23812
23840
  configurable: true
23813
23841
  });
23814
23842
  ErpTributosComponent.prototype.ngOnInit = function () {
23815
- this.menuItemPis = false;
23816
- this.menuItemCofins = false;
23817
- this.menuItemIpi = false;
23818
- this.menuItemIss = false;
23819
- this.menuItemImportacoes = false;
23820
- this.menuItemRetencoes = false;
23821
- this.menuItemIcms = false;
23822
- this.menuItemCideTecnologia = false;
23823
23843
  this.dominio = this.dominio ? this.dominio : 'erpx_cpl_imp';
23824
23844
  this.servico = this.servico ? this.servico : 'cadastros';
23825
23845
  this.prefixLabel = this.dominio + "." + this.servico;
@@ -23859,8 +23879,8 @@ var ErpTributosComponent = /** @class */ (function () {
23859
23879
  }
23860
23880
  };
23861
23881
  ErpTributosComponent.prototype.ngOnDestroy = function () {
23862
- this.ngUnsubscribe.next();
23863
- this.ngUnsubscribe.complete();
23882
+ this.unsubscribe$.next();
23883
+ this.unsubscribe$.complete();
23864
23884
  this.lookupUtils.resetStoredKeys();
23865
23885
  };
23866
23886
  ErpTributosComponent.prototype.memoriaCalculo = function (imposto) {
@@ -24070,7 +24090,7 @@ var ErpTributosComponent = /** @class */ (function () {
24070
24090
  this.requiredItemIcmsDesonerado = false;
24071
24091
  this.requiredItemDiferencialAlicota = false;
24072
24092
  this.requiredItemPisFaturemento = false;
24073
- this.requiredItemCofinsFaturemento = false;
24093
+ this.requiredItemCofins = false;
24074
24094
  this.requiredItemIcmsUfDestino = false;
24075
24095
  this.requiredItemFcpUfDestino = false;
24076
24096
  this.requiredSituacaoTributaria = false;
@@ -24112,6 +24132,10 @@ var ErpTributosComponent = /** @class */ (function () {
24112
24132
  case EnumTipoTributo.IBS_ESTORNO_CREDITO:
24113
24133
  _this.montaCBSIBSEstornoCredito();
24114
24134
  break;
24135
+ case EnumTipoTributo.CBS_AJUSTE:
24136
+ case EnumTipoTributo.IBS_AJUSTE:
24137
+ _this.montaCBS_IBS_Ajuste();
24138
+ break;
24115
24139
  case EnumTipoTributo.PIS_RECUPERAR:
24116
24140
  case EnumTipoTributo.PIS_DEVOLVIDO:
24117
24141
  case EnumTipoTributo.PIS:
@@ -24217,10 +24241,10 @@ var ErpTributosComponent = /** @class */ (function () {
24217
24241
  return grupo.item.map(function (item) {
24218
24242
  _this.tributosValue.map(function (it) {
24219
24243
  if (item.name === it.tipoImposto) {
24244
+ item.formGroup.patchValue(it, { emitEvent: false });
24220
24245
  if (!isTaxFromTaxReform(it.tipoImposto)) {
24221
24246
  _this.setValidators(it.tipoImposto);
24222
24247
  }
24223
- item.formGroup.patchValue(it, { emitEvent: false });
24224
24248
  }
24225
24249
  });
24226
24250
  });
@@ -24268,24 +24292,20 @@ var ErpTributosComponent = /** @class */ (function () {
24268
24292
  grupo.item
24269
24293
  .filter(function (it) { return it.name == tributo; })
24270
24294
  .map(function (it) {
24271
- var hasValue = false;
24272
- Object.keys(it.formGroup.value).forEach(function (item) {
24273
- if (item !== 'impostoManual' &&
24274
- item !== EnumCampoTributo.TipoCalculoImposto) {
24275
- if (it.formGroup.get(item).touched &&
24276
- it.formGroup.value[item] != undefined &&
24277
- it.formGroup.value[item] !== '') {
24278
- hasValue = true;
24279
- return;
24280
- }
24281
- }
24295
+ var hasValue = Object.keys(it.formGroup.value)
24296
+ .filter(function (key) {
24297
+ return key !== 'impostoManual' &&
24298
+ key !== EnumCampoTributo.TipoCalculoImposto;
24299
+ })
24300
+ .some(function (key) {
24301
+ return it.formGroup.get(key).value !== null &&
24302
+ it.formGroup.get(key).value !== undefined;
24282
24303
  });
24283
24304
  if (hasValue)
24284
24305
  Object.keys(it.formGroup.value).forEach(function (item) {
24285
24306
  if (item == 'percentualReducao' ||
24286
24307
  item == 'percentualDiferimento' ||
24287
- item ==
24288
- 'percentualMargemValorAdicionado' ||
24308
+ item == 'percentualMargemValorAdicionado' ||
24289
24309
  item === 'percentualSuspensaoParcial') {
24290
24310
  it.formGroup.controls[item].setValidators(Validators.compose([
24291
24311
  Validators.required,
@@ -24306,6 +24326,15 @@ var ErpTributosComponent = /** @class */ (function () {
24306
24326
  });
24307
24327
  _this.setRequired(tributo, true);
24308
24328
  }
24329
+ else if (item === 'situacaoTributaria') {
24330
+ it.formGroup.controls[item].setValidators(Validators.compose([
24331
+ Validators.required
24332
+ ]));
24333
+ it.formGroup.controls[item].updateValueAndValidity({
24334
+ emitEvent: false
24335
+ });
24336
+ _this.setRequired(tributo, true);
24337
+ }
24309
24338
  else if (item === 'observacao') {
24310
24339
  it.formGroup.controls[item].setValidators(Validators.compose([
24311
24340
  Validators.maxLength(120)
@@ -24383,8 +24412,7 @@ var ErpTributosComponent = /** @class */ (function () {
24383
24412
  Object.keys(it.formGroup.value).forEach(function (item) {
24384
24413
  if (item == 'percentualReducao' ||
24385
24414
  item == 'percentualDiferimento' ||
24386
- item ==
24387
- 'percentualMargemValorAdicionado' ||
24415
+ item == 'percentualMargemValorAdicionado' ||
24388
24416
  item === 'percentualSuspensaoParcial') {
24389
24417
  it.formGroup.controls[item].setValidators(Validators.compose([
24390
24418
  Validators.max(1000)
@@ -24694,6 +24722,32 @@ var ErpTributosComponent = /** @class */ (function () {
24694
24722
  visible: this.context.document === 'Outgoing Invoice' &&
24695
24723
  this.context.invoice.type === 'Debit' &&
24696
24724
  this.context.invoice.debitInvoiceType === 'Inventory Loss'
24725
+ }, {
24726
+ label: this.translate.instant('erpx.tributos.actions_cbs_ibs_ajuste_label'),
24727
+ disabled: this.menuItemCBS_IBS_Ajuste,
24728
+ command: function () {
24729
+ (_this.montaCBS_IBS_Ajuste().forEach(function (value) {
24730
+ _this.novoImpostoManual(value);
24731
+ }),
24732
+ (_this.indexAccordion = [0]));
24733
+ _this.rulesService.apply({
24734
+ groups: _this.grupos,
24735
+ group: _this.grupos.find(function (group) {
24736
+ return group.grupoTributo ===
24737
+ EnumGrupoTributo.CBS_IBS_AJUSTE;
24738
+ }),
24739
+ context: _this.context
24740
+ });
24741
+ _this.changeDetector.detectChanges();
24742
+ },
24743
+ visible: this.context.document === 'Outgoing Invoice' &&
24744
+ this.context.invoice.type === 'Debit' &&
24745
+ (this.context.invoice.debitInvoiceType ===
24746
+ 'Credit Cancellation Exempt Outputs' ||
24747
+ this.context.invoice.debitInvoiceType ===
24748
+ 'Debits Unprocessed Invoices Assessment' ||
24749
+ this.context.invoice.debitInvoiceType ===
24750
+ 'Disqualification from Simples Nacional')
24697
24751
  }, {
24698
24752
  id: 'retencaoFunrural',
24699
24753
  label: this.translate.instant('erpx.tributos.actions_retencao_funrural_label'),
@@ -26198,6 +26252,47 @@ var ErpTributosComponent = /** @class */ (function () {
26198
26252
  });
26199
26253
  return item;
26200
26254
  };
26255
+ ErpTributosComponent.prototype.montaCBS_IBS_Ajuste = function () {
26256
+ if (this.menuItemCBS_IBS_Ajuste)
26257
+ return;
26258
+ this.menuItemCBS_IBS_Ajuste = true;
26259
+ var item = [
26260
+ __assign({ name: EnumTipoTributo.CBS_AJUSTE, label: 'erpx.tributos.enum_tipo_tributo_cbs_ajuste' }, this.montaCampos([
26261
+ {
26262
+ campo: EnumCampoTributo.SituacaoTributaria
26263
+ },
26264
+ {
26265
+ campo: EnumCampoTributo.ClassificacaoTributaria
26266
+ },
26267
+ {
26268
+ campo: EnumCampoTributo.PeriodoApuracao
26269
+ },
26270
+ {
26271
+ campo: EnumCampoTributo.Valor
26272
+ }
26273
+ ], EnumTipoTributo.CBS_AJUSTE)),
26274
+ __assign({ name: EnumTipoTributo.IBS_AJUSTE, label: 'erpx.tributos.enum_tipo_tributo_ibs_ajuste' }, this.montaCampos([
26275
+ {
26276
+ campo: EnumCampoTributo.SituacaoTributaria
26277
+ },
26278
+ {
26279
+ campo: EnumCampoTributo.ClassificacaoTributaria
26280
+ },
26281
+ {
26282
+ campo: EnumCampoTributo.PeriodoApuracao
26283
+ },
26284
+ {
26285
+ campo: EnumCampoTributo.Valor
26286
+ }
26287
+ ], EnumTipoTributo.IBS_AJUSTE))
26288
+ ];
26289
+ this.grupos.unshift({
26290
+ grupo: "" + ('erpx.tributos.enum_grupo_tributo_' + EnumGrupoTributo.CBS_IBS_AJUSTE + '_label'),
26291
+ grupoTributo: EnumGrupoTributo.CBS_IBS_AJUSTE,
26292
+ item: item
26293
+ });
26294
+ return item;
26295
+ };
26201
26296
  ErpTributosComponent.prototype.montaPis = function () {
26202
26297
  if (this.menuItemPis == false) {
26203
26298
  this.menuItemPis = true;
@@ -26635,7 +26730,7 @@ var ErpTributosComponent = /** @class */ (function () {
26635
26730
  case EnumTipoTributo.PIS:
26636
26731
  return this.requiredItemPisFaturemento;
26637
26732
  case EnumTipoTributo.COFINS:
26638
- return this.requiredItemCofinsFaturemento;
26733
+ return this.requiredItemCofins;
26639
26734
  case EnumTipoTributo.ICMS_UF_DESTINO:
26640
26735
  return this.requiredItemIcmsUfDestino;
26641
26736
  case EnumTipoTributo.FCP_UF_DESTINO:
@@ -26803,7 +26898,7 @@ var ErpTributosComponent = /** @class */ (function () {
26803
26898
  break;
26804
26899
  }
26805
26900
  case EnumTipoTributo.COFINS: {
26806
- this.requiredItemCofinsFaturemento = value;
26901
+ this.requiredItemCofins = value;
26807
26902
  break;
26808
26903
  }
26809
26904
  case EnumTipoTributo.FCP_UF_DESTINO: {
@@ -27035,13 +27130,13 @@ var ErpTributosComponent = /** @class */ (function () {
27035
27130
  var formField = [];
27036
27131
  var formGroup = {};
27037
27132
  campos.map(function (it) {
27038
- var _a, _b;
27039
- var _c, _d;
27133
+ var _a, _b, _c;
27134
+ var _d, _e;
27040
27135
  if (it.campo == EnumCampoTributo.BaseCalculo) {
27041
27136
  formGroup = __assign(__assign({}, formGroup), { baseCalculo: [
27042
27137
  {
27043
27138
  value: null,
27044
- disabled: (_c = it.disabled) !== null && _c !== void 0 ? _c : false
27139
+ disabled: (_d = it.disabled) !== null && _d !== void 0 ? _d : false
27045
27140
  },
27046
27141
  Validators.compose([Validators.max(9999999999999.99)])
27047
27142
  ] });
@@ -27075,7 +27170,7 @@ var ErpTributosComponent = /** @class */ (function () {
27075
27170
  formGroup = __assign(__assign({}, formGroup), { aliquota: [
27076
27171
  {
27077
27172
  value: null,
27078
- disabled: (_d = it.disabled) !== null && _d !== void 0 ? _d : false
27173
+ disabled: (_e = it.disabled) !== null && _e !== void 0 ? _e : false
27079
27174
  },
27080
27175
  Validators.compose([Validators.max(999.9999)])
27081
27176
  ] });
@@ -27105,6 +27200,28 @@ var ErpTributosComponent = /** @class */ (function () {
27105
27200
  }
27106
27201
  }));
27107
27202
  }
27203
+ else if (it.campo === EnumCampoTributo.PeriodoApuracao) {
27204
+ formGroup = __assign(__assign({}, formGroup), (_a = {}, _a[EnumCampoTributo.PeriodoApuracao] = [
27205
+ {
27206
+ value: null,
27207
+ disabled: false
27208
+ },
27209
+ Validators.compose([])
27210
+ ], _a));
27211
+ formField.push(new FormField({
27212
+ type: FieldType.Date,
27213
+ name: EnumCampoTributo.PeriodoApuracao,
27214
+ label: _this.translate.instant('erpx.tributos.fields_periodo_apuracao_label'),
27215
+ view: 'month',
27216
+ appendTo: 'body',
27217
+ calendarLocaleOptions: new CalendarLocaleOptions(__assign(__assign({}, _this.localeService.getLocaleOptions().calendar), { dateFormat: 'mm/yy' })),
27218
+ onBlur: function () { return _this.updateTwoWayDataBinding(); },
27219
+ required: function () {
27220
+ return _this.isFieldRequired(EnumCampoTributo.PeriodoApuracao, tributo);
27221
+ },
27222
+ size: { sm: 12, md: 4, lg: 4, xl: 3 }
27223
+ }));
27224
+ }
27108
27225
  else if (it.campo === EnumCampoTributo.ReducaoAliquotaGovernamental) {
27109
27226
  formGroup = __assign(__assign({}, formGroup), { reducaoAliquotaGovernamental: [
27110
27227
  {
@@ -27440,7 +27557,9 @@ var ErpTributosComponent = /** @class */ (function () {
27440
27557
  tributo === EnumTipoTributo.IBS_ESTADUAL ||
27441
27558
  tributo === EnumTipoTributo.IBS_MUNICIPAL ||
27442
27559
  tributo === EnumTipoTributo.CBS_ESTORNO_CREDITO ||
27443
- tributo === EnumTipoTributo.IBS_ESTORNO_CREDITO)
27560
+ tributo === EnumTipoTributo.IBS_ESTORNO_CREDITO ||
27561
+ tributo === EnumTipoTributo.CBS_AJUSTE ||
27562
+ tributo === EnumTipoTributo.IBS_AJUSTE)
27444
27563
  defaultFilter = __spread(defaultFilter, [
27445
27564
  {
27446
27565
  field: 'classificacaoTributaria.indGEstornoCred',
@@ -27450,6 +27569,14 @@ var ErpTributosComponent = /** @class */ (function () {
27450
27569
  ? EnumLogicalOperator.Eq
27451
27570
  : EnumLogicalOperator.Ne,
27452
27571
  values: ['EXIGE']
27572
+ },
27573
+ {
27574
+ field: 'classificacaoTributaria.indGAjusteCompet',
27575
+ operator: tributo === EnumTipoTributo.CBS_AJUSTE ||
27576
+ tributo === EnumTipoTributo.IBS_AJUSTE
27577
+ ? EnumLogicalOperator.Eq
27578
+ : EnumLogicalOperator.Ne,
27579
+ values: ['EXIGE']
27453
27580
  }
27454
27581
  ]);
27455
27582
  formField.push(new FormField(__assign(__assign({}, _this.e027StrLookup.mountOptions({
@@ -27884,7 +28011,7 @@ var ErpTributosComponent = /** @class */ (function () {
27884
28011
  showClear: true,
27885
28012
  multiple: false,
27886
28013
  label: _this.translate.instant('erpx.tributos.fields_modalidade_bc_label'),
27887
- size: { sm: 12, md: 6, lg: 6, xl: 3 },
28014
+ size: { sm: 12, md: 4, lg: 4, xl: 3 },
27888
28015
  onChange: function (event) {
27889
28016
  if (!event)
27890
28017
  return;
@@ -27912,7 +28039,7 @@ var ErpTributosComponent = /** @class */ (function () {
27912
28039
  })), { onBlur: function () {
27913
28040
  _this.updateTwoWayDataBinding();
27914
28041
  _this.setValidators(tributo);
27915
- }, id: tributo + 'NaturezaReceita', label: _this.translate.instant('erpx.tributos.fields_natureza_receita_label'), size: { sm: 12, md: 6, lg: 6, xl: 3 }, required: function () { return false; } })));
28042
+ }, id: tributo + 'NaturezaReceita', label: _this.translate.instant('erpx.tributos.fields_natureza_receita_label'), size: { sm: 12, md: 4, lg: 4, xl: 3 }, required: function () { return false; } })));
27916
28043
  }
27917
28044
  else if (it.campo === EnumCampoTributo.Observacao) {
27918
28045
  formGroup = __assign(__assign({}, formGroup), { observacao: [
@@ -28186,7 +28313,7 @@ var ErpTributosComponent = /** @class */ (function () {
28186
28313
  showClear: true,
28187
28314
  multiple: false,
28188
28315
  label: _this.translate.instant('erpx.tributos.fields_regime_tributario_pis_cofins_label'),
28189
- size: { sm: 12, md: 6, lg: 6, xl: 3 },
28316
+ size: { sm: 12, md: 4, lg: 4, xl: 3 },
28190
28317
  onChange: function (event) {
28191
28318
  if (!event)
28192
28319
  return;
@@ -28321,13 +28448,13 @@ var ErpTributosComponent = /** @class */ (function () {
28321
28448
  }, id: tributo + 'ClassificacaoTributaria', name: 'classificacaoTributaria', formGroup: 'classificacaoTributaria', infoSign: _this.translate.instant('erpx_cpl_imp.impostos.classificacao_tributaria_desoneracao_info_sign'), label: _this.translate.instant('erpx_cpl_imp.impostos.classificacao_tributaria_desoneracao'), required: function () { return false; }, multiple: false, size: { sm: 12, md: 4, lg: 4, xl: 3 } })));
28322
28449
  }
28323
28450
  else if (it.campo === EnumCampoTributo.AplicarValorLiquidoDocumento) {
28324
- formGroup = __assign(__assign({}, formGroup), (_a = {}, _a[EnumCampoTributo.AplicarValorLiquidoDocumento] = [
28451
+ formGroup = __assign(__assign({}, formGroup), (_b = {}, _b[EnumCampoTributo.AplicarValorLiquidoDocumento] = [
28325
28452
  {
28326
28453
  value: EnumAplicarValorLiquidoDocumento.NENHUM,
28327
28454
  disabled: true
28328
28455
  },
28329
28456
  Validators.compose([])
28330
- ], _a));
28457
+ ], _b));
28331
28458
  formField.push(new FormField({
28332
28459
  name: EnumCampoTributo.AplicarValorLiquidoDocumento,
28333
28460
  label: _this.translate.instant('erpx.tributos.aplicar_valor_liquido_documento'),
@@ -28356,13 +28483,13 @@ var ErpTributosComponent = /** @class */ (function () {
28356
28483
  }));
28357
28484
  }
28358
28485
  else if (it.campo === EnumCampoTributo.EscriturarAliquotaISS) {
28359
- formGroup = __assign(__assign({}, formGroup), (_b = {}, _b[EnumCampoTributo.EscriturarAliquotaISS] = [
28486
+ formGroup = __assign(__assign({}, formGroup), (_c = {}, _c[EnumCampoTributo.EscriturarAliquotaISS] = [
28360
28487
  {
28361
28488
  value: EnumEscriturarAliquotaISS.SIM,
28362
28489
  disabled: false
28363
28490
  },
28364
28491
  Validators.compose([])
28365
- ], _b));
28492
+ ], _c));
28366
28493
  formField.push(new FormField({
28367
28494
  name: EnumCampoTributo.EscriturarAliquotaISS,
28368
28495
  label: _this.translate.instant('erpx.tributos.escriturar_aliquota_iss'),
@@ -28611,7 +28738,8 @@ var ErpTributosComponent = /** @class */ (function () {
28611
28738
  { type: LookupValidationUtils },
28612
28739
  { type: ErpTributosService },
28613
28740
  { type: GTagService },
28614
- { type: RulesService }
28741
+ { type: RulesService },
28742
+ { type: LocaleService }
28615
28743
  ]; };
28616
28744
  __decorate([
28617
28745
  Input()
@@ -30770,5 +30898,5 @@ var fallback = {
30770
30898
  * Generated bundle index. Do not edit.
30771
30899
  */
30772
30900
 
30773
- export { BreadcrumbComponent, BreadcrumbModule, Breakpoints, EnumAplicarValorLiquidoDocumento, EnumCampoTributo, EnumEscriturarAliquotaISS, EnumFunruralIndicativoAquisicao, EnumGrupoTributo, EnumInvoiceOrigin, EnumModBc, EnumMotDes, EnumOriMer, EnumRegimeTributarioPisCofins, EnumSituacao, EnumTipImpCst, EnumTipOpe, EnumTipoControleProduto, EnumTipoItem, EnumTipoMovimentacao, EnumTipoTributo, ErpLoteSerieComponent, ErpLoteSerieModule, ErpResumoModule, ErpTributosComponent, ErpTributosModule, ExportUtils, enumTipCredRecup, fallback, isEmpty, isNotEmpty, isNullOrUndefined, nonNullish, ErpResumoComponent as ɵa, ErpResumoService as ɵb, GrossAmountCalculationRule as ɵba, GrossAmountCalculator as ɵbb, TaxClassificationCalculationRule as ɵbc, TaxCalculationTypeCalculationRule as ɵbd, ManualTaxCalculationRule as ɵbe, OutgoingInvoiceCalculationRulesRegistry as ɵbf, TaxSituationCalculationRule as ɵbg, SaleOrderCalculationRulesRegistry as ɵbh, PurchaseOrderCalculationRulesRegistry as ɵbi, FocusService as ɵbj, ErpLoteSeriesService as ɵbk, QuantidadeDisponivelDemandaService as ɵbl, EntityService as ɵbm, QuantidadeDisponivelDemandaModule as ɵbn, ErpTributosService as ɵc, RulesService as ɵd, StatusRulesRegistry as ɵe, IncomingInvoiceStatusRulesRegistry as ɵf, TaxClassificationStatusRule as ɵg, OutgoingInvoiceStatusRulesRegistry as ɵh, ValidationRulesRegistry as ɵi, IncomingInvoiceValidationRulesRegistry as ɵj, TaxableBaseRequiredValidationRule as ɵk, TaxRateRequiredValidationRule as ɵl, TaxClassificationRequiredValidationRule as ɵm, TaxAmountRequiredValidationRule as ɵn, TaxSituationRequiredValidationRule as ɵo, OutgoingInvoiceValidationRulesRegistry as ɵp, SaleOrderValidationRulesRegistry as ɵq, PurchaseOrderValidationRulesRegistry as ɵr, CalculationRulesRegistry as ɵs, IncomingInvoiceCalculationRulesRegistry as ɵt, TaxableBaseCalculationRule as ɵu, TaxAmountCalculator as ɵv, EffectiveTaxRateCalculator as ɵw, TaxRateCalculationRule as ɵx, EffectiveTaxRateCalculationRule as ɵy, TaxAmountCalculationRule as ɵz };
30901
+ export { BreadcrumbComponent, BreadcrumbModule, Breakpoints, EnumAplicarValorLiquidoDocumento, EnumCampoTributo, EnumEscriturarAliquotaISS, EnumFunruralIndicativoAquisicao, EnumGrupoTributo, EnumInvoiceOrigin, EnumModBc, EnumMotDes, EnumOriMer, EnumRegimeTributarioPisCofins, EnumSituacao, EnumTipImpCst, EnumTipOpe, EnumTipoControleProduto, EnumTipoItem, EnumTipoMovimentacao, EnumTipoTributo, ErpLoteSerieComponent, ErpLoteSerieModule, ErpResumoModule, ErpTributosComponent, ErpTributosModule, ExportUtils, enumTipCredRecup, fallback, isEmpty, isNotEmpty, isNullOrUndefined, nonNullish, ErpResumoComponent as ɵa, ErpResumoService as ɵb, TaxRateCalculationRule as ɵba, EffectiveTaxRateCalculationRule as ɵbb, TaxAmountCalculationRule as ɵbc, GrossAmountCalculationRule as ɵbd, GrossAmountCalculator as ɵbe, TaxClassificationCalculationRule as ɵbf, TaxCalculationTypeCalculationRule as ɵbg, ManualTaxCalculationRule as ɵbh, OutgoingInvoiceCalculationRulesRegistry as ɵbi, TaxSituationCalculationRule as ɵbj, AssessmentPeriodCalculationRule as ɵbk, SaleOrderCalculationRulesRegistry as ɵbl, PurchaseOrderCalculationRulesRegistry as ɵbm, FocusService as ɵbn, ErpLoteSeriesService as ɵbo, QuantidadeDisponivelDemandaService as ɵbp, EntityService as ɵbq, QuantidadeDisponivelDemandaModule as ɵbr, ErpTributosService as ɵc, RulesService as ɵd, StatusRulesRegistry as ɵe, IncomingInvoiceStatusRulesRegistry as ɵf, TaxClassificationStatusRule as ɵg, OutgoingInvoiceStatusRulesRegistry as ɵh, SaleOrderStatusRulesRegistry as ɵi, PurchaseOrderStatusRulesRegistry as ɵj, ValidationRulesRegistry as ɵk, IncomingInvoiceValidationRulesRegistry as ɵl, TaxableBaseRequiredValidationRule as ɵm, TaxRateRequiredValidationRule as ɵn, TaxClassificationRequiredValidationRule as ɵo, TaxAmountRequiredValidationRule as ɵp, TaxSituationRequiredValidationRule as ɵq, OutgoingInvoiceValidationRulesRegistry as ɵr, AssessmentPeriodRequiredValidationRule as ɵs, SaleOrderValidationRulesRegistry as ɵt, PurchaseOrderValidationRulesRegistry as ɵu, CalculationRulesRegistry as ɵv, IncomingInvoiceCalculationRulesRegistry as ɵw, TaxableBaseCalculationRule as ɵx, TaxAmountCalculator as ɵy, EffectiveTaxRateCalculator as ɵz };
30774
30902
  //# sourceMappingURL=senior-gestao-empresarial-erpx-components.js.map