@senior-gestao-pessoas/payroll-core 9.5.0-f5093372-3d3f-4b82-a958-d1cdf848ce4d → 9.5.0-feature-hcmgdp-11492-21838e72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js +467 -902
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js.map +1 -1
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js +1 -16
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js.map +1 -1
- package/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.d.ts +43 -10
- package/components/historical-pix-account/historical-pix-account.component.d.ts +10 -39
- package/components/historical-pix-account/historical-pix-account.service.d.ts +0 -1
- package/components/historical-pix-account-list/historical-pix-account-list.component.d.ts +2 -9
- package/components/utils/format-utils/format-utils.service.d.ts +3 -30
- package/esm2015/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +202 -34
- package/esm2015/components/historical-pix-account/historical-pix-account.component.js +29 -259
- package/esm2015/components/historical-pix-account/historical-pix-account.module.js +1 -5
- package/esm2015/components/historical-pix-account/historical-pix-account.service.js +1 -8
- package/esm2015/components/historical-pix-account-list/historical-pix-account-list.component.js +8 -41
- package/esm2015/components/utils/format-utils/format-utils.service.js +5 -88
- package/esm2015/public_api.js +1 -2
- package/esm2015/senior-gestao-pessoas-payroll-core.js +2 -3
- package/esm5/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +217 -58
- package/esm5/components/historical-pix-account/historical-pix-account.component.js +58 -301
- package/esm5/components/historical-pix-account/historical-pix-account.module.js +1 -5
- package/esm5/components/historical-pix-account/historical-pix-account.service.js +1 -8
- package/esm5/components/historical-pix-account-list/historical-pix-account-list.component.js +8 -46
- package/esm5/components/utils/format-utils/format-utils.service.js +5 -88
- package/esm5/public_api.js +1 -2
- package/esm5/senior-gestao-pessoas-payroll-core.js +2 -3
- package/fesm2015/senior-gestao-pessoas-payroll-core.js +502 -897
- package/fesm2015/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/fesm5/senior-gestao-pessoas-payroll-core.js +464 -898
- package/fesm5/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +0 -1
- package/senior-gestao-pessoas-payroll-core.d.ts +1 -2
- package/senior-gestao-pessoas-payroll-core.metadata.json +1 -1
- package/components/historical-pix-account/historical-pix-account-base.d.ts +0 -27
- package/components/shared/index.d.ts +0 -1
- package/components/shared/shared-state.service.d.ts +0 -20
- package/esm2015/components/historical-pix-account/historical-pix-account-base.js +0 -173
- package/esm2015/components/shared/index.js +0 -2
- package/esm2015/components/shared/shared-state.service.js +0 -46
- package/esm5/components/historical-pix-account/historical-pix-account-base.js +0 -186
- package/esm5/components/shared/index.js +0 -2
- package/esm5/components/shared/shared-state.service.js +0 -47
|
@@ -36,7 +36,6 @@ import { CurrencyMaskModule } from 'ng2-currency-mask';
|
|
|
36
36
|
import { FieldsetModule } from 'primeng/fieldset';
|
|
37
37
|
import { PanelModule } from 'primeng/panel';
|
|
38
38
|
import { ConfirmDialogModule } from 'primeng/confirmdialog';
|
|
39
|
-
import { TabViewModule } from 'primeng/tabview';
|
|
40
39
|
|
|
41
40
|
/**
|
|
42
41
|
* Created by Bruno.Curioletti on 30/05/2017.
|
|
@@ -8441,25 +8440,6 @@ class FormatUtilsService {
|
|
|
8441
8440
|
}
|
|
8442
8441
|
return null;
|
|
8443
8442
|
}
|
|
8444
|
-
/**
|
|
8445
|
-
* Retorna o CPF formatado
|
|
8446
|
-
* @param cpf CPF
|
|
8447
|
-
*/
|
|
8448
|
-
static getFormattedCpfEdited(cpf) {
|
|
8449
|
-
if (!cpf)
|
|
8450
|
-
return '';
|
|
8451
|
-
cpf = cpf.replace(/\D/g, '').slice(0, 11);
|
|
8452
|
-
if (cpf.length > 9) {
|
|
8453
|
-
cpf = cpf.replace(/^(\d{3})(\d{3})(\d{3})(\d{2})$/, "$1.$2.$3-$4");
|
|
8454
|
-
}
|
|
8455
|
-
else if (cpf.length > 6) {
|
|
8456
|
-
cpf = cpf.replace(/^(\d{3})(\d{3})(\d{0,3})$/, "$1.$2.$3");
|
|
8457
|
-
}
|
|
8458
|
-
else if (cpf.length > 3) {
|
|
8459
|
-
cpf = cpf.replace(/^(\d{3})(\d{0,3})$/, "$1.$2");
|
|
8460
|
-
}
|
|
8461
|
-
return cpf;
|
|
8462
|
-
}
|
|
8463
8443
|
/**
|
|
8464
8444
|
* Retorna o CNPJ formatado
|
|
8465
8445
|
* @param cnpj CNPJ
|
|
@@ -8475,28 +8455,6 @@ class FormatUtilsService {
|
|
|
8475
8455
|
}
|
|
8476
8456
|
return null;
|
|
8477
8457
|
}
|
|
8478
|
-
/**
|
|
8479
|
-
* Retorna o CNPJ formatado
|
|
8480
|
-
* @param cnpj CNPJ
|
|
8481
|
-
*/
|
|
8482
|
-
static getFormattedCnpjEdited(cnpj) {
|
|
8483
|
-
if (!cnpj)
|
|
8484
|
-
return '';
|
|
8485
|
-
cnpj = cnpj.replace(/\D/g, '').slice(0, 14);
|
|
8486
|
-
if (cnpj.length > 12) {
|
|
8487
|
-
cnpj = cnpj.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})$/, "$1.$2.$3/$4-$5");
|
|
8488
|
-
}
|
|
8489
|
-
else if (cnpj.length > 8) {
|
|
8490
|
-
cnpj = cnpj.replace(/^(\d{2})(\d{3})(\d{3})(\d{0,4})$/, "$1.$2.$3/$4");
|
|
8491
|
-
}
|
|
8492
|
-
else if (cnpj.length > 5) {
|
|
8493
|
-
cnpj = cnpj.replace(/^(\d{2})(\d{3})(\d{0,3})$/, "$1.$2.$3");
|
|
8494
|
-
}
|
|
8495
|
-
else if (cnpj.length > 2) {
|
|
8496
|
-
cnpj = cnpj.replace(/^(\d{2})(\d{0,3})$/, "$1.$2");
|
|
8497
|
-
}
|
|
8498
|
-
return cnpj;
|
|
8499
|
-
}
|
|
8500
8458
|
/**
|
|
8501
8459
|
* Retorna a mascara do CPF/CNPJ
|
|
8502
8460
|
* @param key Valores possíveis são CPF ou CNPJ
|
|
@@ -8511,24 +8469,6 @@ class FormatUtilsService {
|
|
|
8511
8469
|
return "";
|
|
8512
8470
|
}
|
|
8513
8471
|
}
|
|
8514
|
-
/**
|
|
8515
|
-
* Método para formatar o número de inscrição do cliente.
|
|
8516
|
-
* @param subscriptionNumber
|
|
8517
|
-
* @param pixKeyType
|
|
8518
|
-
* @returns
|
|
8519
|
-
*/
|
|
8520
|
-
static getFormattedSubscriptionNumber(subscriptionNumber, pixKeyType) {
|
|
8521
|
-
if (!subscriptionNumber || !pixKeyType)
|
|
8522
|
-
return subscriptionNumber;
|
|
8523
|
-
switch (pixKeyType) {
|
|
8524
|
-
case 'CNPJ':
|
|
8525
|
-
return this.getFormattedCnpjEdited(subscriptionNumber);
|
|
8526
|
-
case 'CPF':
|
|
8527
|
-
return this.getFormattedCpfEdited(subscriptionNumber);
|
|
8528
|
-
default:
|
|
8529
|
-
return subscriptionNumber;
|
|
8530
|
-
}
|
|
8531
|
-
}
|
|
8532
8472
|
/**
|
|
8533
8473
|
* Metódo para formatar o número de telefone.
|
|
8534
8474
|
* @param telephoneNumber String contendo o número de telefone.
|
|
@@ -8560,13 +8500,6 @@ class FormatUtilsService {
|
|
|
8560
8500
|
}
|
|
8561
8501
|
return tel;
|
|
8562
8502
|
}
|
|
8563
|
-
/**
|
|
8564
|
-
* Metódo para formatar a porcentagem para 2 casas decimais.
|
|
8565
|
-
* @param value Número a ser formatado.
|
|
8566
|
-
*/
|
|
8567
|
-
static getFormattedPercentage(value) {
|
|
8568
|
-
return parseFloat(value).toFixed(2).replace('.', ',') + '%';
|
|
8569
|
-
}
|
|
8570
8503
|
/**
|
|
8571
8504
|
* Metódo para formatar o número de telefone de um campo Input.
|
|
8572
8505
|
* @param event Evento do Input do campo de telefone.
|
|
@@ -8580,450 +8513,31 @@ class FormatUtilsService {
|
|
|
8580
8513
|
event.target.value = FormatUtilsService.getFormattedTelephoneNumber(telephoneNumber);
|
|
8581
8514
|
}
|
|
8582
8515
|
/**
|
|
8583
|
-
*
|
|
8584
|
-
* @param
|
|
8585
|
-
*/
|
|
8586
|
-
static formatCpfInputEvent(event) {
|
|
8587
|
-
let cpf = event.target.value;
|
|
8588
|
-
// Permite apagar nos pontos sensíveis
|
|
8589
|
-
if (event.keyCode === 8 && (cpf.length === 4 || cpf.length === 8 || cpf.length === 12)) {
|
|
8590
|
-
return;
|
|
8591
|
-
}
|
|
8592
|
-
event.target.value = FormatUtilsService.getFormattedCpfEdited(cpf);
|
|
8593
|
-
}
|
|
8594
|
-
/**
|
|
8595
|
-
* Formata o campo de input de CNPJ em tempo real.
|
|
8596
|
-
* @param event Evento do input
|
|
8597
|
-
*/
|
|
8598
|
-
static formatCnpjInputEvent(event) {
|
|
8599
|
-
let cnpj = event.target.value;
|
|
8600
|
-
// Permite apagar nos pontos sensíveis
|
|
8601
|
-
if (event.keyCode === 8 && (cnpj.length === 3 || cnpj.length === 7 || cnpj.length === 11 || cnpj.length === 16)) {
|
|
8602
|
-
return;
|
|
8603
|
-
}
|
|
8604
|
-
event.target.value = FormatUtilsService.getFormattedCnpjEdited(cnpj);
|
|
8605
|
-
}
|
|
8606
|
-
}
|
|
8607
|
-
|
|
8608
|
-
let SharedStateService = class SharedStateService {
|
|
8609
|
-
constructor() {
|
|
8610
|
-
this.hideFieldSubject = new BehaviorSubject(true);
|
|
8611
|
-
this.hideField$ = this.hideFieldSubject.asObservable();
|
|
8612
|
-
this.showButtonSubject = new BehaviorSubject(true);
|
|
8613
|
-
this.showButton$ = this.showButtonSubject.asObservable();
|
|
8614
|
-
this.saveButtonSubject = new BehaviorSubject(true);
|
|
8615
|
-
this.saveButton$ = this.saveButtonSubject.asObservable();
|
|
8616
|
-
this.showEditMode = new BehaviorSubject(true);
|
|
8617
|
-
this.showEditMode$ = this.showEditMode.asObservable();
|
|
8618
|
-
this.activeValidatorsOnEditModalOpen = new Subject();
|
|
8619
|
-
this.activeValidatorsOnEditModalOpen$ = this.activeValidatorsOnEditModalOpen.asObservable();
|
|
8620
|
-
this.shouldReloadWindowOnlyEditMode = new BehaviorSubject(false);
|
|
8621
|
-
this.shouldReloadWindowOnlyEditMode$ = this.shouldReloadWindowOnlyEditMode.asObservable();
|
|
8622
|
-
}
|
|
8623
|
-
setHideField(value) {
|
|
8624
|
-
this.hideFieldSubject.next(value);
|
|
8625
|
-
}
|
|
8626
|
-
setShowButton(value) {
|
|
8627
|
-
this.showButtonSubject.next(value);
|
|
8628
|
-
}
|
|
8629
|
-
setSaveButton(value) {
|
|
8630
|
-
this.saveButtonSubject.next(value);
|
|
8631
|
-
}
|
|
8632
|
-
setShowEditMode(value) {
|
|
8633
|
-
this.showEditMode.next(value);
|
|
8634
|
-
}
|
|
8635
|
-
setShouldReloadWindowOnlyEditMode(value) {
|
|
8636
|
-
this.shouldReloadWindowOnlyEditMode.next(value);
|
|
8637
|
-
}
|
|
8638
|
-
triggerActiveValidatorsOnEditModalOpen() {
|
|
8639
|
-
this.activeValidatorsOnEditModalOpen.next();
|
|
8640
|
-
}
|
|
8641
|
-
};
|
|
8642
|
-
SharedStateService.ngInjectableDef = ɵɵdefineInjectable({ factory: function SharedStateService_Factory() { return new SharedStateService(); }, token: SharedStateService, providedIn: "root" });
|
|
8643
|
-
SharedStateService = __decorate([
|
|
8644
|
-
Injectable({
|
|
8645
|
-
providedIn: 'root',
|
|
8646
|
-
})
|
|
8647
|
-
], SharedStateService);
|
|
8648
|
-
|
|
8649
|
-
class GenericValidator {
|
|
8650
|
-
constructor() { }
|
|
8651
|
-
/**
|
|
8652
|
-
* Valida o CEI (Cadastro específico de INSS) digitado.
|
|
8653
|
-
*/
|
|
8654
|
-
static isValidCei(control) {
|
|
8655
|
-
const cei = control.value;
|
|
8656
|
-
if (!cei)
|
|
8657
|
-
return null;
|
|
8658
|
-
else if (cei.length != 11)
|
|
8659
|
-
return null;
|
|
8660
|
-
const multiplicadorBase = "3298765432";
|
|
8661
|
-
let total = 0;
|
|
8662
|
-
let resto = 0;
|
|
8663
|
-
let multiplicando = 0;
|
|
8664
|
-
let multiplicador = 0;
|
|
8665
|
-
if (cei.length !== 11 ||
|
|
8666
|
-
cei === "00000000000" ||
|
|
8667
|
-
cei === "11111111111" ||
|
|
8668
|
-
cei === "22222222222" ||
|
|
8669
|
-
cei === "33333333333" ||
|
|
8670
|
-
cei === "44444444444" ||
|
|
8671
|
-
cei === "55555555555" ||
|
|
8672
|
-
cei === "66666666666" ||
|
|
8673
|
-
cei === "77777777777" ||
|
|
8674
|
-
cei === "88888888888" ||
|
|
8675
|
-
cei === "99999999999")
|
|
8676
|
-
return { invalidCei: true };
|
|
8677
|
-
else {
|
|
8678
|
-
for (let i = 0; i < 10; i++) {
|
|
8679
|
-
multiplicando = parseInt(cei.substring(i, i + 1), 10);
|
|
8680
|
-
multiplicador = parseInt(multiplicadorBase.substring(i, i + 1), 10);
|
|
8681
|
-
total += multiplicando * multiplicador;
|
|
8682
|
-
}
|
|
8683
|
-
resto = 11 - (total % 11);
|
|
8684
|
-
resto = resto === 10 || resto === 11 ? 0 : resto;
|
|
8685
|
-
const digito = parseInt("" + cei.charAt(10), 10);
|
|
8686
|
-
return resto === digito ? null : { invalidCei: true };
|
|
8687
|
-
}
|
|
8688
|
-
}
|
|
8689
|
-
/**
|
|
8690
|
-
* Valida se o CPF é valido. Deve-se ser informado o cpf sem máscara.
|
|
8691
|
-
*/
|
|
8692
|
-
static isValidCpf(control) {
|
|
8693
|
-
const cpf = control.value;
|
|
8694
|
-
if (cpf) {
|
|
8695
|
-
let numbers, digits, sum, i, result, equalDigits;
|
|
8696
|
-
equalDigits = 1;
|
|
8697
|
-
if (cpf.length < 11) {
|
|
8698
|
-
return null;
|
|
8699
|
-
}
|
|
8700
|
-
for (i = 0; i < cpf.length - 1; i++) {
|
|
8701
|
-
if (cpf.charAt(i) !== cpf.charAt(i + 1)) {
|
|
8702
|
-
equalDigits = 0;
|
|
8703
|
-
break;
|
|
8704
|
-
}
|
|
8705
|
-
}
|
|
8706
|
-
if (!equalDigits) {
|
|
8707
|
-
numbers = cpf.substring(0, 9);
|
|
8708
|
-
digits = cpf.substring(9);
|
|
8709
|
-
sum = 0;
|
|
8710
|
-
for (i = 10; i > 1; i--) {
|
|
8711
|
-
sum += numbers.charAt(10 - i) * i;
|
|
8712
|
-
}
|
|
8713
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8714
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8715
|
-
return { cpfNotValid: true };
|
|
8716
|
-
}
|
|
8717
|
-
numbers = cpf.substring(0, 10);
|
|
8718
|
-
sum = 0;
|
|
8719
|
-
for (i = 11; i > 1; i--) {
|
|
8720
|
-
sum += numbers.charAt(11 - i) * i;
|
|
8721
|
-
}
|
|
8722
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8723
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8724
|
-
return { cpfNotValid: true };
|
|
8725
|
-
}
|
|
8726
|
-
return null;
|
|
8727
|
-
}
|
|
8728
|
-
else {
|
|
8729
|
-
return { cpfNotValid: true };
|
|
8730
|
-
}
|
|
8731
|
-
}
|
|
8732
|
-
return null;
|
|
8733
|
-
}
|
|
8734
|
-
/**
|
|
8735
|
-
* Valida se o CNPJ é valido. Deve-se ser informado o cpf sem máscara.
|
|
8736
|
-
*/
|
|
8737
|
-
static isValidCnpj(control) {
|
|
8738
|
-
let cnpj = control.value;
|
|
8739
|
-
if (cnpj) {
|
|
8740
|
-
let size, numbers, digits, sum, pos, result;
|
|
8741
|
-
cnpj = cnpj.replace(/[^\d]+/g, '');
|
|
8742
|
-
if (cnpj.length !== 14) {
|
|
8743
|
-
return null;
|
|
8744
|
-
}
|
|
8745
|
-
// Elimina CNPJs invalidos conhecidos
|
|
8746
|
-
if (cnpj === '00000000000000' ||
|
|
8747
|
-
cnpj === '11111111111111' ||
|
|
8748
|
-
cnpj === '22222222222222' ||
|
|
8749
|
-
cnpj === '33333333333333' ||
|
|
8750
|
-
cnpj === '44444444444444' ||
|
|
8751
|
-
cnpj === '55555555555555' ||
|
|
8752
|
-
cnpj === '66666666666666' ||
|
|
8753
|
-
cnpj === '77777777777777' ||
|
|
8754
|
-
cnpj === '88888888888888' ||
|
|
8755
|
-
cnpj === '99999999999999') {
|
|
8756
|
-
return { cnpjNotValid: true };
|
|
8757
|
-
}
|
|
8758
|
-
// Valida DVs
|
|
8759
|
-
size = cnpj.length - 2;
|
|
8760
|
-
numbers = cnpj.substring(0, size);
|
|
8761
|
-
digits = cnpj.substring(size);
|
|
8762
|
-
sum = 0;
|
|
8763
|
-
pos = size - 7;
|
|
8764
|
-
for (let i = size; i >= 1; i--) {
|
|
8765
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8766
|
-
if (pos < 2) {
|
|
8767
|
-
pos = 9;
|
|
8768
|
-
}
|
|
8769
|
-
}
|
|
8770
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8771
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8772
|
-
return { cnpjNotValid: true };
|
|
8773
|
-
}
|
|
8774
|
-
size = size + 1;
|
|
8775
|
-
numbers = cnpj.substring(0, size);
|
|
8776
|
-
sum = 0;
|
|
8777
|
-
pos = size - 7;
|
|
8778
|
-
for (let i = size; i >= 1; i--) {
|
|
8779
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8780
|
-
if (pos < 2) {
|
|
8781
|
-
pos = 9;
|
|
8782
|
-
}
|
|
8783
|
-
}
|
|
8784
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8785
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8786
|
-
return { cnpjNotValid: true };
|
|
8787
|
-
}
|
|
8788
|
-
return null;
|
|
8789
|
-
}
|
|
8790
|
-
return null;
|
|
8791
|
-
}
|
|
8792
|
-
/**
|
|
8793
|
-
* Válida o número de telefone da chave PIX.
|
|
8794
|
-
*/
|
|
8795
|
-
static isValidPhoneNumber(control) {
|
|
8796
|
-
let cellPhoneKey = control.value || '';
|
|
8797
|
-
cellPhoneKey = cellPhoneKey.replace(/[\s()-]/g, '');
|
|
8798
|
-
const regexNumberTelephone = /^[1-9][\d]{1,2}\d{8,10}$/;
|
|
8799
|
-
const isValidNumberTelephone = regexNumberTelephone.test(cellPhoneKey);
|
|
8800
|
-
return isValidNumberTelephone ? null : { invalidPhoneNumber: true };
|
|
8801
|
-
}
|
|
8802
|
-
/**
|
|
8803
|
-
* Valida o email da chave PIX.
|
|
8516
|
+
* Metódo para formatar a porcentagem para 2 casas decimais.
|
|
8517
|
+
* @param value Número a ser formatado.
|
|
8804
8518
|
*/
|
|
8805
|
-
static
|
|
8806
|
-
|
|
8807
|
-
const regexValidEmail = /^[\w-\.]+@[\w-]+(\.[\w-]{2,4}){1,2}$/;
|
|
8808
|
-
const isValidEmail = regexValidEmail.test(emailKey);
|
|
8809
|
-
return isValidEmail ? null : { invalidEmail: true };
|
|
8810
|
-
}
|
|
8811
|
-
}
|
|
8812
|
-
|
|
8813
|
-
class HistoricakPixAccountBase {
|
|
8814
|
-
constructor(formBuilder) {
|
|
8815
|
-
this._paramsForm = new FormGroup({});
|
|
8816
|
-
this._defaultCpfNumber = null;
|
|
8817
|
-
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
8818
|
-
this.pixAccountList = [];
|
|
8819
|
-
this.maxValuePercentage = 100.0;
|
|
8820
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8821
|
-
this.formBuilder = formBuilder;
|
|
8822
|
-
this.createFormGroupBase();
|
|
8823
|
-
}
|
|
8824
|
-
phoneMask(event) {
|
|
8825
|
-
FormatUtilsService.formatTelephoneInputEvent(event);
|
|
8826
|
-
}
|
|
8827
|
-
cpfMask(event) {
|
|
8828
|
-
FormatUtilsService.formatCpfInputEvent(event);
|
|
8829
|
-
}
|
|
8830
|
-
cnpjMask(event) {
|
|
8831
|
-
FormatUtilsService.formatCnpjInputEvent(event);
|
|
8832
|
-
}
|
|
8833
|
-
onChangePixKeyType(item, form) {
|
|
8834
|
-
if (!item || !item.key)
|
|
8835
|
-
return;
|
|
8836
|
-
this.pixKeyType = item.key;
|
|
8837
|
-
const targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8838
|
-
? form
|
|
8839
|
-
: this.pixAccountFormGroup;
|
|
8840
|
-
this.isShowPixKeyFieldValidatorMessage = true;
|
|
8841
|
-
const pixKeyControl = targetForm.get("pixKey");
|
|
8842
|
-
if (pixKeyControl) {
|
|
8843
|
-
pixKeyControl.reset();
|
|
8844
|
-
}
|
|
8845
|
-
this.setPixKeyValidators(true, targetForm);
|
|
8846
|
-
if (item.key === "CPF") {
|
|
8847
|
-
this.setDefaultCpfPixKey(targetForm);
|
|
8848
|
-
}
|
|
8849
|
-
}
|
|
8850
|
-
onClearPixKeyType(form) {
|
|
8851
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8852
|
-
? form
|
|
8853
|
-
: this.pixAccountFormGroup;
|
|
8854
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8855
|
-
if (targetForm.get("pixKey")) {
|
|
8856
|
-
targetForm.get("pixKey").reset();
|
|
8857
|
-
}
|
|
8858
|
-
}
|
|
8859
|
-
setDefaultCpfPixKey(form) {
|
|
8860
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8861
|
-
? form
|
|
8862
|
-
: this.pixAccountFormGroup;
|
|
8863
|
-
if (this._defaultCpfNumber) {
|
|
8864
|
-
if (targetForm.get("pixKey")) {
|
|
8865
|
-
targetForm.get("pixKey").setValue(this._defaultCpfNumber);
|
|
8866
|
-
}
|
|
8867
|
-
}
|
|
8868
|
-
else {
|
|
8869
|
-
var sheetDocument = this._paramsForm.get("sheetDocument");
|
|
8870
|
-
if (sheetDocument && sheetDocument.get("cpfNumber")) {
|
|
8871
|
-
var cpf = sheetDocument.get("cpfNumber").value;
|
|
8872
|
-
if (cpf && targetForm.get("pixKey")) {
|
|
8873
|
-
targetForm.get("pixKey").setValue(cpf);
|
|
8874
|
-
}
|
|
8875
|
-
}
|
|
8876
|
-
}
|
|
8877
|
-
}
|
|
8878
|
-
createFormGroupBase() {
|
|
8879
|
-
this.pixAccountFormGroup = this.formBuilder.group({
|
|
8880
|
-
id: this.formBuilder.control(null),
|
|
8881
|
-
index: this.formBuilder.control(null),
|
|
8882
|
-
employee: this.formBuilder.control({ value: { tableId: null }, disabled: true }),
|
|
8883
|
-
dateChange: this.formBuilder.control(null),
|
|
8884
|
-
pixKeyType: this.formBuilder.control(null, Validators.required),
|
|
8885
|
-
pixKey: this.formBuilder.control(null),
|
|
8886
|
-
percentage: this.formBuilder.control(null, Validators.compose([
|
|
8887
|
-
...this.initialValidatorOfPercentage,
|
|
8888
|
-
Validators.max(this.maxValuePercentage),
|
|
8889
|
-
])),
|
|
8890
|
-
externalId: this.formBuilder.control(null),
|
|
8891
|
-
customFields: this.formBuilder.control(null),
|
|
8892
|
-
});
|
|
8893
|
-
}
|
|
8894
|
-
setValidatorsAccordingList(pixAccountList, index = null, isEditMode = true, form) {
|
|
8895
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8896
|
-
? form
|
|
8897
|
-
: this.pixAccountFormGroup;
|
|
8898
|
-
this.pixAccountList = (pixAccountList && pixAccountList.length > 0)
|
|
8899
|
-
? [].concat(pixAccountList)
|
|
8900
|
-
: [];
|
|
8901
|
-
var percentageIncluded = [];
|
|
8902
|
-
for (var i = 0; i < this.pixAccountList.length; i++) {
|
|
8903
|
-
var field = this.pixAccountList[i];
|
|
8904
|
-
if (field && field.percentage && i !== index) {
|
|
8905
|
-
percentageIncluded.push(field.percentage);
|
|
8906
|
-
}
|
|
8907
|
-
}
|
|
8908
|
-
this.beforeSetPixKeyTypeValidator(targetForm);
|
|
8909
|
-
this.setPixKeyValidators(isEditMode, targetForm);
|
|
8910
|
-
this.validatePercentageValid(percentageIncluded, targetForm);
|
|
8911
|
-
}
|
|
8912
|
-
beforeSetPixKeyTypeValidator(form) {
|
|
8913
|
-
const control = form.get("pixKeyType");
|
|
8914
|
-
if (this.pixAccountList && this.pixAccountList.length) {
|
|
8915
|
-
control.setValidators(Validators.compose([
|
|
8916
|
-
Validators.required,
|
|
8917
|
-
this.validateDuplicatePixKeyTypeBankAccount(this.pixAccountList),
|
|
8918
|
-
]));
|
|
8919
|
-
}
|
|
8920
|
-
else {
|
|
8921
|
-
control.setValidators(Validators.required);
|
|
8922
|
-
}
|
|
8923
|
-
control.updateValueAndValidity();
|
|
8924
|
-
}
|
|
8925
|
-
setPixKeyValidators(isEditMode, form) {
|
|
8926
|
-
const pixKey = form.get("pixKey");
|
|
8927
|
-
switch (this.pixKeyType) {
|
|
8928
|
-
case "TELEPHONE":
|
|
8929
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidPhoneNumber]));
|
|
8930
|
-
break;
|
|
8931
|
-
case "EMAIL":
|
|
8932
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidEmail]));
|
|
8933
|
-
break;
|
|
8934
|
-
case "CPF":
|
|
8935
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCpf]));
|
|
8936
|
-
break;
|
|
8937
|
-
case "CNPJ":
|
|
8938
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCnpj]));
|
|
8939
|
-
break;
|
|
8940
|
-
case "RANDOM_KEY":
|
|
8941
|
-
pixKey.setValidators(Validators.required);
|
|
8942
|
-
break;
|
|
8943
|
-
default:
|
|
8944
|
-
pixKey.clearValidators();
|
|
8945
|
-
}
|
|
8946
|
-
if (isEditMode) {
|
|
8947
|
-
pixKey.enable();
|
|
8948
|
-
}
|
|
8949
|
-
pixKey.updateValueAndValidity();
|
|
8950
|
-
}
|
|
8951
|
-
validatePercentageValid(listValue, form) {
|
|
8952
|
-
const percentage = form.get("percentage");
|
|
8953
|
-
this.maxValuePercentage = listValue.reduce((acc, val) => acc - val, 100.0);
|
|
8954
|
-
percentage.setValidators(Validators.compose([
|
|
8955
|
-
...this.initialValidatorOfPercentage,
|
|
8956
|
-
Validators.max(this.maxValuePercentage),
|
|
8957
|
-
]));
|
|
8958
|
-
percentage.updateValueAndValidity();
|
|
8959
|
-
}
|
|
8960
|
-
validateDuplicatePixKeyTypeBankAccount(listCompare) {
|
|
8961
|
-
return (control) => {
|
|
8962
|
-
const value = control.value;
|
|
8963
|
-
const isDuplicate = listCompare.some((field) => value &&
|
|
8964
|
-
field.pixKeyType.key === "BANK_ACCOUNT" &&
|
|
8965
|
-
value.key === "BANK_ACCOUNT");
|
|
8966
|
-
return isDuplicate ? { pixKeyTypeBankAccountDuplicate: true } : null;
|
|
8967
|
-
};
|
|
8968
|
-
}
|
|
8969
|
-
get paramsForm() {
|
|
8970
|
-
return this._paramsForm;
|
|
8971
|
-
}
|
|
8972
|
-
set paramsForm(value) {
|
|
8973
|
-
this._paramsForm = value;
|
|
8974
|
-
}
|
|
8975
|
-
get defaultCpfNumber() {
|
|
8976
|
-
return this._defaultCpfNumber;
|
|
8977
|
-
}
|
|
8978
|
-
set defaultCpfNumber(value) {
|
|
8979
|
-
this._defaultCpfNumber = value;
|
|
8519
|
+
static getFormattedPercentage(value) {
|
|
8520
|
+
return parseFloat(value).toFixed(2).replace('.', ',') + '%';
|
|
8980
8521
|
}
|
|
8981
8522
|
}
|
|
8982
8523
|
|
|
8983
|
-
let
|
|
8984
|
-
constructor(
|
|
8985
|
-
this.http = http;
|
|
8986
|
-
}
|
|
8987
|
-
query(path, body, service = ServiceType.PAYROLL) {
|
|
8988
|
-
return this.http.query(path, body, service);
|
|
8989
|
-
}
|
|
8990
|
-
enumQuery() {
|
|
8991
|
-
const path = 'enumQuery';
|
|
8992
|
-
const body = {
|
|
8993
|
-
names: ['PixKeyType']
|
|
8994
|
-
};
|
|
8995
|
-
return this.http.query(path, body, ServiceType.PAYROLL);
|
|
8996
|
-
}
|
|
8997
|
-
};
|
|
8998
|
-
HistoricalPixAccountService.ctorParameters = () => [
|
|
8999
|
-
{ type: HttpClientService }
|
|
9000
|
-
];
|
|
9001
|
-
HistoricalPixAccountService = __decorate([
|
|
9002
|
-
Injectable()
|
|
9003
|
-
], HistoricalPixAccountService);
|
|
9004
|
-
|
|
9005
|
-
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends HistoricakPixAccountBase {
|
|
9006
|
-
constructor(translateService, cd, formBuilder, sharedStateService, service) {
|
|
9007
|
-
super(formBuilder);
|
|
8524
|
+
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent {
|
|
8525
|
+
constructor(translateService, cd, formBuilder, messageService) {
|
|
9008
8526
|
this.translateService = translateService;
|
|
9009
8527
|
this.cd = cd;
|
|
9010
|
-
this.
|
|
9011
|
-
this.
|
|
8528
|
+
this.formBuilder = formBuilder;
|
|
8529
|
+
this.messageService = messageService;
|
|
9012
8530
|
this.recordByRow = 1;
|
|
9013
8531
|
this.showDateChange = false;
|
|
9014
8532
|
this.isEditMode = false;
|
|
9015
8533
|
this.isViewMode = false;
|
|
9016
8534
|
this.withSideBar = true;
|
|
8535
|
+
this.defaultCpfNumber = null;
|
|
9017
8536
|
this.listDataReciever = [];
|
|
9018
|
-
this.
|
|
9019
|
-
this.getListPixAccount = [];
|
|
9020
|
-
this.isEditModeForSave = false;
|
|
9021
|
-
this.showField = false;
|
|
8537
|
+
this.showButtonEdit = false;
|
|
9022
8538
|
this.isViewModeActive = new EventEmitter();
|
|
9023
8539
|
this.isEditModeActive = new EventEmitter();
|
|
9024
8540
|
this.isDeleteModeActive = new EventEmitter();
|
|
9025
|
-
this.isValidChangeForm = new EventEmitter();
|
|
9026
|
-
this.reloadOnlyOnEdit = new EventEmitter();
|
|
9027
8541
|
this.listFromApp = [];
|
|
9028
8542
|
this.visibleChange = new EventEmitter();
|
|
9029
8543
|
this.ngUnsubscribe = new Subject();
|
|
@@ -9037,12 +8551,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9037
8551
|
this.loading = true;
|
|
9038
8552
|
this.listData = [];
|
|
9039
8553
|
this.listDataNoPage = [];
|
|
9040
|
-
this.
|
|
9041
|
-
this.showEditMode = false;
|
|
9042
|
-
this.hasRecordsPix = true;
|
|
9043
|
-
this.hideFields = this.sharedStateService.hideField$;
|
|
9044
|
-
this.suggestions = [];
|
|
9045
|
-
this.formGroupByRow = {};
|
|
8554
|
+
this.permitsEditBankAccount = false;
|
|
9046
8555
|
this.cols = [
|
|
9047
8556
|
{
|
|
9048
8557
|
label: this.translateService.instant("hcm.payroll.employees_addition_pix_key_type"),
|
|
@@ -9056,10 +8565,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9056
8565
|
label: this.translateService.instant("hcm.payroll.historical_pix_account_label_percentage"),
|
|
9057
8566
|
field: "percentage",
|
|
9058
8567
|
},
|
|
9059
|
-
{
|
|
9060
|
-
label: this.translateService.instant("hcm.payroll.movimentation_generic_action"),
|
|
9061
|
-
field: "actions",
|
|
9062
|
-
}
|
|
9063
8568
|
];
|
|
9064
8569
|
this.actions = (rowData = {}, key) => {
|
|
9065
8570
|
return [
|
|
@@ -9078,7 +8583,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9078
8583
|
},
|
|
9079
8584
|
},
|
|
9080
8585
|
{
|
|
9081
|
-
visible: !!(!this.isEditMode && this.withSideBar),
|
|
8586
|
+
visible: !!((!this.isEditMode && this.withSideBar) || this.showButtonEdit),
|
|
9082
8587
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9083
8588
|
command: () => {
|
|
9084
8589
|
if (this.isAllowToEditHistorical) {
|
|
@@ -9097,7 +8602,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9097
8602
|
},
|
|
9098
8603
|
},
|
|
9099
8604
|
{
|
|
9100
|
-
visible: !this.isEditMode
|
|
8605
|
+
visible: !this.isEditMode,
|
|
9101
8606
|
label: this.translateService.instant("hcm.payroll.delete"),
|
|
9102
8607
|
command: () => {
|
|
9103
8608
|
if (this.isAllowToDeleteHistorical) {
|
|
@@ -9118,43 +8623,14 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9118
8623
|
this.createFormGroup();
|
|
9119
8624
|
}
|
|
9120
8625
|
ngOnInit() {
|
|
9121
|
-
this.showFields = this.showField;
|
|
9122
8626
|
this.formGroup.setControl(this.fieldFormGroup, this.historicalPixAccountList);
|
|
9123
|
-
this.sharedStateService.showButton$.subscribe((value) => {
|
|
9124
|
-
this.showButtonView = value;
|
|
9125
|
-
});
|
|
9126
|
-
this.sharedStateService.showEditMode$.subscribe((value) => {
|
|
9127
|
-
this.showEditMode = value;
|
|
9128
|
-
this.isEditModeForSave = value;
|
|
9129
|
-
});
|
|
9130
|
-
this.sharedStateService.shouldReloadWindowOnlyEditMode$.subscribe((value) => {
|
|
9131
|
-
this.reloadOnlyOnEdit.emit(value);
|
|
9132
|
-
});
|
|
9133
|
-
this.sharedStateService.activeValidatorsOnEditModalOpen$
|
|
9134
|
-
.subscribe(() => {
|
|
9135
|
-
Object.values(this.formGroupByRow).forEach(fg => {
|
|
9136
|
-
Object.values(fg.controls).forEach(control => {
|
|
9137
|
-
control.markAsTouched();
|
|
9138
|
-
control.updateValueAndValidity();
|
|
9139
|
-
});
|
|
9140
|
-
});
|
|
9141
|
-
this.emitFormValidity();
|
|
9142
|
-
});
|
|
9143
8627
|
}
|
|
9144
8628
|
ngOnChanges(changes) {
|
|
9145
8629
|
if (changes['listDataReciever'] && changes['listDataReciever'].currentValue) {
|
|
9146
8630
|
this.listFromApp = changes['listDataReciever'].currentValue;
|
|
9147
8631
|
}
|
|
9148
|
-
if (changes['
|
|
9149
|
-
this.
|
|
9150
|
-
}
|
|
9151
|
-
if (changes['addExistentHistoricData'] && changes['addExistentHistoricData'].currentValue) {
|
|
9152
|
-
const newData = changes['addExistentHistoricData'].currentValue;
|
|
9153
|
-
this.rebuildFormGroupMap(newData);
|
|
9154
|
-
}
|
|
9155
|
-
if (changes['isEditMode']) {
|
|
9156
|
-
this.isEditMode = changes['isEditMode'].currentValue;
|
|
9157
|
-
this.cd.detectChanges();
|
|
8632
|
+
if (changes['showButtonEdit'] && changes['showButtonEdit'].currentValue) {
|
|
8633
|
+
this.permitsEditBankAccount = changes['showButtonEdit'].currentValue;
|
|
9158
8634
|
}
|
|
9159
8635
|
}
|
|
9160
8636
|
createFormGroup() {
|
|
@@ -9169,96 +8645,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9169
8645
|
ngAfterViewInit() {
|
|
9170
8646
|
this.cd.detectChanges();
|
|
9171
8647
|
}
|
|
9172
|
-
emitFormValidity() {
|
|
9173
|
-
const allValid = Object.values(this.formGroupByRow).every(fg => {
|
|
9174
|
-
fg.updateValueAndValidity();
|
|
9175
|
-
return fg.valid;
|
|
9176
|
-
});
|
|
9177
|
-
this.isValidChangeForm.emit(allValid);
|
|
9178
|
-
}
|
|
9179
|
-
filterPixKeyType(event) {
|
|
9180
|
-
const query = event.query;
|
|
9181
|
-
this.service.enumQuery().subscribe((response) => {
|
|
9182
|
-
const pixKeyTypeEnum = response.results.find((result) => result.enumName === 'PixKeyType');
|
|
9183
|
-
if (pixKeyTypeEnum) {
|
|
9184
|
-
this.suggestions = pixKeyTypeEnum.items.filter((item) => item.value.toLowerCase().includes(query.toLowerCase()));
|
|
9185
|
-
}
|
|
9186
|
-
else {
|
|
9187
|
-
this.suggestions = [];
|
|
9188
|
-
}
|
|
9189
|
-
});
|
|
9190
|
-
}
|
|
9191
|
-
createPixRowFormGroup() {
|
|
9192
|
-
return this.formBuilder.group({
|
|
9193
|
-
pixKeyType: [null, Validators.required],
|
|
9194
|
-
pixKey: [null],
|
|
9195
|
-
percentage: [0, Validators.compose([
|
|
9196
|
-
...this.initialValidatorOfPercentage,
|
|
9197
|
-
Validators.max(this.maxValuePercentage),
|
|
9198
|
-
])]
|
|
9199
|
-
});
|
|
9200
|
-
}
|
|
9201
|
-
onPixKeyInput(event, index) {
|
|
9202
|
-
const inputValue = event.target.value;
|
|
9203
|
-
const inputRawValue = inputValue.replace(/\D/g, '');
|
|
9204
|
-
const form = this.formGroupByRow[index];
|
|
9205
|
-
const pixKeyControl = form.get('pixKey');
|
|
9206
|
-
if (pixKeyControl) {
|
|
9207
|
-
pixKeyControl.setValue(inputRawValue, { emitEvent: false });
|
|
9208
|
-
pixKeyControl.markAsDirty();
|
|
9209
|
-
pixKeyControl.updateValueAndValidity();
|
|
9210
|
-
}
|
|
9211
|
-
this.setPixKeyValidators(true, form);
|
|
9212
|
-
this.emitFormValidity();
|
|
9213
|
-
}
|
|
9214
|
-
onBlurPixCpfAndCnpj(index) {
|
|
9215
|
-
const form = this.formGroupByRow[index];
|
|
9216
|
-
const pixKeyControl = form.get('pixKey');
|
|
9217
|
-
const pixKeyTypeControl = form.get('pixKeyType');
|
|
9218
|
-
if (!pixKeyControl || !pixKeyTypeControl)
|
|
9219
|
-
return;
|
|
9220
|
-
const currentValue = pixKeyControl.value;
|
|
9221
|
-
const pixKeyType = pixKeyTypeControl.value.key;
|
|
9222
|
-
const rawValue = (currentValue || '').replace(/\D/g, '');
|
|
9223
|
-
pixKeyControl.setValue(rawValue, { emitEvent: false });
|
|
9224
|
-
if (pixKeyControl.valid) {
|
|
9225
|
-
form.patchValue({
|
|
9226
|
-
pixKeyFormatted: FormatUtilsService.getFormattedSubscriptionNumber(rawValue, pixKeyType)
|
|
9227
|
-
});
|
|
9228
|
-
}
|
|
9229
|
-
this.emitFormValidity();
|
|
9230
|
-
}
|
|
9231
|
-
getFormattedPixKey(type, value) {
|
|
9232
|
-
return FormatUtilsService.getFormattedSubscriptionNumber(value, type);
|
|
9233
|
-
}
|
|
9234
|
-
syncPixDataToParentForm() {
|
|
9235
|
-
if (!this.isEditModeForSave)
|
|
9236
|
-
return;
|
|
9237
|
-
const values = Object.values(this.formGroupByRow).map(fg => {
|
|
9238
|
-
const value = fg.getRawValue();
|
|
9239
|
-
const pixKeyType = value.pixKeyType.key;
|
|
9240
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9241
|
-
value.pixKey = (value.pixKey || '').replace(/[.\-\/]/g, '');
|
|
9242
|
-
}
|
|
9243
|
-
else if (pixKeyType === 'TELEPHONE') {
|
|
9244
|
-
value.pixKey = (value.pixKey || '').replace(/[()\s\-]/g, '');
|
|
9245
|
-
}
|
|
9246
|
-
return value;
|
|
9247
|
-
});
|
|
9248
|
-
this.formGroup
|
|
9249
|
-
.get(this.fieldFormGroup)
|
|
9250
|
-
.get('historicalPixAccountList')
|
|
9251
|
-
.setValue(values);
|
|
9252
|
-
this.emitFormValidity();
|
|
9253
|
-
}
|
|
9254
|
-
syncResetPixFormToParent() {
|
|
9255
|
-
this.formGroupByRow = {};
|
|
9256
|
-
this.historicalPixAccountList.reset();
|
|
9257
|
-
this.historicalPixAccountList.get('historicalPixAccountList').setValue([]);
|
|
9258
|
-
if (this.addExistentHistoricData.length) {
|
|
9259
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9260
|
-
}
|
|
9261
|
-
}
|
|
9262
8648
|
onLazyLoad(event) {
|
|
9263
8649
|
const first = event && event.first ? event.first : 0;
|
|
9264
8650
|
const rows = event && event.rows ? event.rows : this.recordByRow;
|
|
@@ -9285,7 +8671,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9285
8671
|
this.refreshCssInIE11();
|
|
9286
8672
|
}
|
|
9287
8673
|
this.loading = false;
|
|
9288
|
-
this.cd.detectChanges();
|
|
9289
8674
|
}
|
|
9290
8675
|
/**
|
|
9291
8676
|
* Um Bug de CSS que acontece nas linhas da tabela, que resolve só atualizando qualquer parte do CSS da pagina.
|
|
@@ -9301,69 +8686,14 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9301
8686
|
}
|
|
9302
8687
|
add() {
|
|
9303
8688
|
this.pixAccountItemInput = {};
|
|
9304
|
-
this.visible = true;
|
|
9305
|
-
}
|
|
9306
|
-
addPix() {
|
|
9307
|
-
const newItem = {
|
|
9308
|
-
pixKeyType: {},
|
|
9309
|
-
pixKey: '',
|
|
9310
|
-
percentage: 0
|
|
9311
|
-
};
|
|
9312
|
-
const index = this.addExistentHistoricData.length;
|
|
9313
|
-
this.addExistentHistoricData = [
|
|
9314
|
-
...this.addExistentHistoricData,
|
|
9315
|
-
newItem
|
|
9316
|
-
];
|
|
9317
|
-
this.formGroupByRow[index] = this.createPixRowFormGroup();
|
|
9318
|
-
this.setValidatorsAccordingList(this.addExistentHistoricData, index, true);
|
|
9319
|
-
this.emitFormValidity();
|
|
9320
|
-
}
|
|
9321
|
-
deletePix(index) {
|
|
9322
|
-
if (this.dataListPix.editingCell) {
|
|
9323
|
-
this.dataListPix.editingCell = null;
|
|
9324
|
-
}
|
|
9325
|
-
this.addExistentHistoricData = this.addExistentHistoricData.filter((_, i) => i !== index);
|
|
9326
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9327
|
-
this.emitFormValidity();
|
|
9328
|
-
}
|
|
9329
|
-
rebuildFormGroupMap(data) {
|
|
9330
|
-
this.formGroupByRow = {};
|
|
9331
|
-
data.forEach((item, index) => {
|
|
9332
|
-
const form = this.createPixRowFormGroup();
|
|
9333
|
-
const pixKeyType = item.pixKeyType.key;
|
|
9334
|
-
const pixKeyRaw = item.pixKey;
|
|
9335
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9336
|
-
item.pixKey = FormatUtilsService.getFormattedSubscriptionNumber(pixKeyRaw, pixKeyType);
|
|
9337
|
-
}
|
|
9338
|
-
if (pixKeyType === 'TELEPHONE') {
|
|
9339
|
-
item.pixKey = FormatUtilsService.getFormattedTelephoneNumber(pixKeyRaw);
|
|
9340
|
-
}
|
|
9341
|
-
form.patchValue(item);
|
|
9342
|
-
this.formGroupByRow[index] = form;
|
|
9343
|
-
this.pixKeyType = pixKeyType;
|
|
9344
|
-
this.setPixKeyValidators(true, form);
|
|
9345
|
-
this.setValidatorsAccordingList(data, index, this.isEditMode);
|
|
9346
|
-
const listValues = data
|
|
9347
|
-
.filter((_, i) => i !== index)
|
|
9348
|
-
.map(row => row.percentage ? parseFloat(row.percentage) : 0);
|
|
9349
|
-
this.validatePercentageValid(listValues, form);
|
|
9350
|
-
});
|
|
9351
|
-
this.emitFormValidity();
|
|
9352
|
-
}
|
|
9353
|
-
onPixKeyTypeChange(item, index) {
|
|
9354
|
-
const form = this.formGroupByRow[index];
|
|
9355
|
-
this.onChangePixKeyType(item, form);
|
|
9356
|
-
this.addExistentHistoricData[index].pixKey = '';
|
|
9357
|
-
setTimeout(() => {
|
|
9358
|
-
if (this.dataListPix.editingCell) {
|
|
9359
|
-
this.dataListPix.editingCell = null;
|
|
9360
|
-
}
|
|
9361
|
-
});
|
|
9362
|
-
this.cd.detectChanges();
|
|
8689
|
+
this.visible = true;
|
|
9363
8690
|
}
|
|
9364
|
-
|
|
9365
|
-
|
|
9366
|
-
|
|
8691
|
+
isNotAllowMessage() {
|
|
8692
|
+
this.messageService.add({
|
|
8693
|
+
severity: "error",
|
|
8694
|
+
summary: this.translateService.instant("hcm.payroll.error"),
|
|
8695
|
+
detail: this.translateService.instant("hcm.payroll.permission_error_not_allowed"),
|
|
8696
|
+
});
|
|
9367
8697
|
}
|
|
9368
8698
|
deleteAnnuityItem(index) {
|
|
9369
8699
|
let newlist = [...this.getHistoricalPixAccountList()];
|
|
@@ -9425,23 +8755,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9425
8755
|
this.msgTotalLimitByPercentage = null;
|
|
9426
8756
|
}
|
|
9427
8757
|
}
|
|
9428
|
-
onSyncValue(field, index) {
|
|
9429
|
-
if (this.formGroupByRow &&
|
|
9430
|
-
this.formGroupByRow[index] &&
|
|
9431
|
-
this.formGroupByRow[index].get(field)) {
|
|
9432
|
-
const control = this.formGroupByRow[index].get(field);
|
|
9433
|
-
const value = control.value;
|
|
9434
|
-
this.addExistentHistoricData[index][field] = value;
|
|
9435
|
-
control.markAsDirty();
|
|
9436
|
-
control.markAsTouched();
|
|
9437
|
-
control.updateValueAndValidity();
|
|
9438
|
-
const currentList = this.addExistentHistoricData.map((item, i) => {
|
|
9439
|
-
return i === index ? 0 : item.percentage;
|
|
9440
|
-
});
|
|
9441
|
-
this.validatePercentageValid(currentList, this.formGroupByRow[index]);
|
|
9442
|
-
this.emitFormValidity();
|
|
9443
|
-
}
|
|
9444
|
-
}
|
|
9445
8758
|
get scopedActions() {
|
|
9446
8759
|
return this.actions.bind(this);
|
|
9447
8760
|
}
|
|
@@ -9478,15 +8791,12 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9478
8791
|
get visible() {
|
|
9479
8792
|
return this._visible;
|
|
9480
8793
|
}
|
|
9481
|
-
set paramsForm(value) {
|
|
9482
|
-
this._paramsForm = value;
|
|
9483
|
-
}
|
|
9484
|
-
set defaultCpfNumber(value) {
|
|
9485
|
-
this._defaultCpfNumber = value;
|
|
9486
|
-
}
|
|
9487
8794
|
set visible(value) {
|
|
9488
8795
|
this._visible = value;
|
|
9489
8796
|
this.visibleChange.emit(this.visible);
|
|
8797
|
+
if (!value) {
|
|
8798
|
+
this.pixAccountItemInput = {};
|
|
8799
|
+
}
|
|
9490
8800
|
}
|
|
9491
8801
|
close() {
|
|
9492
8802
|
this.visible = false;
|
|
@@ -9515,138 +8825,295 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9515
8825
|
get isAllowToViewHistorical() {
|
|
9516
8826
|
return (this.permission["visualizar"]);
|
|
9517
8827
|
}
|
|
9518
|
-
};
|
|
9519
|
-
HistoricalPixAccountComponent.ctorParameters = () => [
|
|
9520
|
-
{ type: TranslateService },
|
|
9521
|
-
{ type: ChangeDetectorRef },
|
|
9522
|
-
{ type: FormBuilder },
|
|
9523
|
-
{ type:
|
|
9524
|
-
|
|
9525
|
-
|
|
9526
|
-
|
|
9527
|
-
|
|
9528
|
-
|
|
9529
|
-
|
|
9530
|
-
|
|
9531
|
-
|
|
9532
|
-
|
|
9533
|
-
|
|
9534
|
-
|
|
9535
|
-
|
|
9536
|
-
|
|
9537
|
-
|
|
9538
|
-
|
|
9539
|
-
|
|
9540
|
-
|
|
9541
|
-
|
|
9542
|
-
|
|
9543
|
-
|
|
9544
|
-
|
|
9545
|
-
|
|
9546
|
-
|
|
9547
|
-
|
|
9548
|
-
|
|
9549
|
-
|
|
9550
|
-
|
|
9551
|
-
|
|
9552
|
-
|
|
9553
|
-
|
|
9554
|
-
|
|
9555
|
-
|
|
9556
|
-
|
|
9557
|
-
|
|
9558
|
-
|
|
9559
|
-
|
|
9560
|
-
|
|
9561
|
-
|
|
9562
|
-
|
|
9563
|
-
|
|
9564
|
-
|
|
9565
|
-
|
|
9566
|
-
|
|
9567
|
-
|
|
9568
|
-
|
|
9569
|
-
|
|
9570
|
-
|
|
9571
|
-
|
|
9572
|
-
|
|
9573
|
-
|
|
9574
|
-
|
|
9575
|
-
|
|
9576
|
-
|
|
9577
|
-
|
|
9578
|
-
|
|
9579
|
-
|
|
9580
|
-
|
|
9581
|
-
|
|
9582
|
-
|
|
9583
|
-
|
|
9584
|
-
|
|
9585
|
-
|
|
9586
|
-
|
|
9587
|
-
|
|
9588
|
-
|
|
9589
|
-
|
|
9590
|
-
|
|
9591
|
-
|
|
9592
|
-
|
|
9593
|
-
|
|
9594
|
-
|
|
9595
|
-
|
|
9596
|
-
|
|
9597
|
-
|
|
9598
|
-
|
|
9599
|
-
|
|
9600
|
-
|
|
9601
|
-
|
|
9602
|
-
|
|
9603
|
-
|
|
9604
|
-
|
|
9605
|
-
|
|
9606
|
-
|
|
9607
|
-
|
|
9608
|
-
|
|
9609
|
-
|
|
9610
|
-
|
|
9611
|
-
|
|
9612
|
-
|
|
9613
|
-
|
|
9614
|
-
|
|
9615
|
-
|
|
9616
|
-
|
|
9617
|
-
|
|
9618
|
-
|
|
9619
|
-
|
|
9620
|
-
|
|
9621
|
-
|
|
9622
|
-
|
|
9623
|
-
|
|
9624
|
-
|
|
9625
|
-
|
|
9626
|
-
template: "<s-sidebar *ngIf=\"withSideBar\" [visible]=\"visible\" (visibleChange)=\"close()\"\n header=\"{{'hcm.payroll.historical_pix_account_title_form'|translate}}\">\n<pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [paramsForm]=\"paramsForm\"\n [showField]=\"showFields\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</s-sidebar>\n\n<div *ngIf=\"!withSideBar\">\n <pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [withSideBar]=\"false\"\n [isViewMode]=\"isViewMode\"\n [paramsForm]=\"paramsForm\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</div>\n\n<div class=\"ui-g-1\" *ngIf=\"withSideBar && !isEditMode\">\n <div class=\"form-group \">\n <s-button id=\"ta-addPayAnnuity\"\n [disabled]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n (onClick)=\"add()\"\n [pTooltip]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n tooltipPosition=\"top\"\n label=\"{{'hcm.payroll.historical_pix_account_add'|translate}}\"></s-button>\n </div>\n</div>\n<div *ngIf=\"showFields || !showEditMode || !(hideFields | async)\" class=\"ui-g-12\">\n <p-table\n id=\"table-annuity\"\n [value]=\"listData\"\n [columns]=\"cols\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n [totalRecords]=\"totalRecords\"\n [sortMode]=\"'multiple'\"\n *sLoadingState=\"loading\"\n [rows]=\"recordByRow\"\n dataKey=\"id\">\n <ng-template pTemplate=\"colgroup\" let-coumns>\n <colgroup>\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-s'\">\n <col *ngIf=\"showButtonView\" [ngClass]=\"'col-action'\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <!-- Cabe\u00E7alhos quando da table \u00E9 permitido ordenar as colunas -->\n <tr>\n <!-- Cabe\u00E7alhos das colunas da tabela -->\n <th\n [pSortableColumn]=\"'pixKeyType'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\" id=\"table-0\">\n <span\n id=\"table-annuity-s-0\">{{ 'hcm.payroll.employees_addition_pix_key_type' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'pixKey'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.employees_addition_pix_key' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'percentage'\"\n [pTooltip]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.historical_pix_account_label_percentage' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"></p-sortIcon>\n </div>\n </th>\n <!-- Cabe\u00E7alho da coluna de a\u00E7\u00F5es -->\n <th *ngIf=\"showButtonView\" id=\"col-actions\"></th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-key=\"rowIndex\">\n\n <tr [ngClass]=\"'row'+key\" [pSelectableRow]=\"rowData\">\n <td [pTooltip]=\"rowData?.pixKeyType.value\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKeyType.value }}</span>\n </td>\n\n <ng-container [ngSwitch]=\"rowData?.pixKeyType.key\">\n <td *ngSwitchCase=\"'TELEPHONE'\"\n [pTooltip]=\"getFormattedTelephoneNumber(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedTelephoneNumber(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CPF'\"\n [pTooltip]=\"getFormattedCpf(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCpf(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CNPJ'\"\n [pTooltip]=\"getFormattedCnpj(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCnpj(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchDefault\n [pTooltip]=\"rowData?.pixKey\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKey }}</span>\n </td>\n </ng-container>\n <td [pTooltip]=\"getFormattedPercentage(rowData?.percentage)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedPercentage(rowData?.percentage) }}</span>\n </td>\n <td id=\"col-actions-{{key}}\" class=\"col-actions \"\n *ngIf=\"actions && actions(rowData, key)?.length && showButtonView\">\n <s-button id=\"table-admission-btn-actions-{{key}}\"\n *ngIf=\"!isViewMode && actions(rowData, key).length > 1\" [label]=\"actionLabel\"\n priority=\"default\" [model]=\"scopedActions(rowData, key)\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n\n <s-button id=\"table-admission-btn-action-{{key}}\"\n *ngIf=\"!isViewMode && actions(rowData, key).length <= 1\"\n [label]=\"scopedActions(rowData, key)[0].label\"\n priority=\"default\"\n (click)=\"scopedActions(rowData, key)[0].command()\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\" let-columns>\n <tr>\n <td [attr.colspan]=\"columns.length +2\">\n {{'hcm.payroll.admission_empty_message'|translate}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span *ngIf=\"totalRecords\">{{recordsMessage}}</span>\n </ng-template>\n </p-table>\n</div>\n\n<!-- Template exlusivo para edi\u00E7\u00E3o de pix via modal-->\n<div *ngIf=\"!withSideBar && showEditMode && (hideFields | async)\" class=\"ui-g-12\">\n <!-- Bot\u00E3o Adicionar -->\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n id=\"btn-save\"\n label=\"{{ 'hcm.payroll.historical_pix_account_add' | translate}}\"\n priority=\"primary\"\n (onClick)=\"addPix()\">\n </s-button>\n </div>\n </div>\n\n <!-- Tabela -->\n <p-table #dataListPix sortField=\"percentage\"\n [columns]=\"cols\"\n [value]=\"addExistentHistoricData\"\n [pageLinks]=\"3\"\n [paginator]=\"true\"\n [responsive]=\"true\"\n [rows]=\"10\"\n [resetPageOnSort]=\"false\"\n [tableStyle]=\"{'margin-top': '2rem'}\"\n [customSort]=\"true\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of cols\">\n {{ col.label }}\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-item let-rowIndex=\"rowIndex\">\n <ng-container *ngIf=\"formGroupByRow[rowIndex]\" [formGroup]=\"formGroupByRow[rowIndex]\">\n <tr>\n <!-- Tipo de Chave -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.pixKeyType\" pEditableColumnField=\"pixKeyType\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <div style=\"width: 100%; position: relative;\">\n <p-autoComplete\n [suggestions]=\"suggestions\"\n (completeMethod)=\"filterPixKeyType($event)\"\n formControlName=\"pixKeyType\"\n [dropdown]=\"true\"\n (onSelect)=\"onPixKeyTypeChange($event, rowIndex)\"\n (onClear)=\"onPixKeyTypeClear(rowIndex)\"\n (ngModelChange)=\"onSyncValue('pixKeyType', rowIndex)\"\n field=\"value\"\n placeholder=\"{{'hcm.payroll.select' | translate}}\"\n appendTo=\"body\"\n [panelStyle]=\"{ maxWidth: '300px', width: '100%' }\"\n [inputStyle]=\"{ width: '100%' }\"\n ></p-autoComplete>\n\n <s-control-errors [control]=\"formGroupByRow[rowIndex]?.get('pixKeyType')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n pixKeyTypeBankAccountDuplicate: 'hcm.payroll.historical_pix_key_type_bank_account_duplicate' | translate\n }\">\n </s-control-errors>\n </div>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ item.pixKeyType?.value }}\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Chave Pix -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.pixKey\" pEditableColumnField=\"pixKey\"\n [ngClass]=\"{'required': item.pixKeyType.key !== 'BANK_ACCOUNT',\n 'disabled': item.pixKeyType && item.pixKeyType.key === 'BANK_ACCOUNT'\n }\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <ng-container [ngSwitch]=\"item.pixKeyType.key\">\n <input *ngSwitchCase=\"'TELEPHONE'\"\n only-number\n pInputText\n type=\"text\"\n formControlName=\"pixKey\"\n (keyup)=\"phoneMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n maxlength=\"15\"\n placeholder=\"(__) ____-____\" />\n\n <input *ngSwitchCase=\"'CPF'\"\n type=\"text\"\n pInputText\n formControlName=\"pixKey\"\n maxlength=\"14\"\n placeholder=\"___.___.___-__\"\n (input)=\"onPixKeyInput($event, rowIndex)\"\n (blur)=\"onBlurPixCpfAndCnpj(rowIndex)\"\n (keyup)=\"cpfMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\" />\n\n <input *ngSwitchCase=\"'CNPJ'\"\n type=\"text\"\n pInputText\n formControlName=\"pixKey\"\n maxlength=\"18\"\n placeholder=\"___.___.___/____-__\"\n (input)=\"onPixKeyInput($event, rowIndex)\"\n (blur)=\"onBlurPixCpfAndCnpj(rowIndex)\"\n (keyup)=\"cnpjMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\" />\n\n <input *ngSwitchCase=\"'EMAIL'\"\n pInputText\n type=\"email\"\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n placeholder=\"{{ 'hcm.payroll.employees_addition_email' | translate }}\" />\n\n <input *ngSwitchCase=\"'BANK_ACCOUNT'\"\n pInputText\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n [disabled]=\"true\" />\n\n <input *ngSwitchDefault\n pInputText\n type=\"text\"\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n maxlength=\"100\" />\n </ng-container>\n\n <s-control-errors *ngIf=\"isShowPixKeyFieldValidatorMessage\"\n [control]=\"formGroupByRow[rowIndex]?.get('pixKey')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n invalidPhoneNumber: 'hcm.payroll.employees_addition_invalid_phone_number' | translate: { value: formGroupByRow[rowIndex]?.get('pixKey').value },\n invalidEmail: 'hcm.payroll.employees_addition_email_invalid' | translate,\n cpfNotValid: 'hcm.payroll.employees_addition_cpf_error' | translate,\n cnpjNotValid: 'hcm.payroll.employees_addition_cnpj_error' | translate\n }\">\n </s-control-errors>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ getFormattedPixKey(item.pixKeyType?.key, item.pixKey) }}\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Percentual -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.percentage\" pEditableColumnField=\"percentage\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <input\n pInputText type=\"number\"\n formControlName=\"percentage\"\n (ngModelChange)=\"onSyncValue('percentage', rowIndex)\"\n >\n <s-control-errors\n [control]=\"formGroupByRow[rowIndex]?.get('percentage')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n maxlength: 'hcm.payroll.error_max_length' | translate: { value: '6' },\n max: 'hcm.payroll.error_max_value_number' | translate: { value: maxValuePercentage },\n min: 'hcm.payroll.error_min_value_number' | translate: { value: '0,01' }\n }\">\n </s-control-errors>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ item.percentage?.toFixed(2).replace('.', ',') }}%\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Bot\u00E3o de excluir -->\n <td>\n <s-button\n id=\"btn-delete\"\n label=\"{{ 'hcm.payroll.delete' | translate }}\"\n priority=\"default\"\n (onClick)=\"deletePix(rowIndex)\">\n </s-button>\n </td>\n </tr>\n </ng-container>\n </ng-template>\n </p-table>\n</div>\n",
|
|
9627
|
-
|
|
9628
|
-
|
|
9629
|
-
|
|
8828
|
+
};
|
|
8829
|
+
HistoricalPixAccountComponent.ctorParameters = () => [
|
|
8830
|
+
{ type: TranslateService },
|
|
8831
|
+
{ type: ChangeDetectorRef },
|
|
8832
|
+
{ type: FormBuilder },
|
|
8833
|
+
{ type: MessageService }
|
|
8834
|
+
];
|
|
8835
|
+
__decorate([
|
|
8836
|
+
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
8837
|
+
], HistoricalPixAccountComponent.prototype, "customFields", void 0);
|
|
8838
|
+
__decorate([
|
|
8839
|
+
Input()
|
|
8840
|
+
], HistoricalPixAccountComponent.prototype, "formGroup", void 0);
|
|
8841
|
+
__decorate([
|
|
8842
|
+
Input()
|
|
8843
|
+
], HistoricalPixAccountComponent.prototype, "fieldFormGroup", void 0);
|
|
8844
|
+
__decorate([
|
|
8845
|
+
Input()
|
|
8846
|
+
], HistoricalPixAccountComponent.prototype, "_dateChange", void 0);
|
|
8847
|
+
__decorate([
|
|
8848
|
+
Input()
|
|
8849
|
+
], HistoricalPixAccountComponent.prototype, "_displayDateChange", void 0);
|
|
8850
|
+
__decorate([
|
|
8851
|
+
Input()
|
|
8852
|
+
], HistoricalPixAccountComponent.prototype, "recordByRow", void 0);
|
|
8853
|
+
__decorate([
|
|
8854
|
+
Input()
|
|
8855
|
+
], HistoricalPixAccountComponent.prototype, "showDateChange", void 0);
|
|
8856
|
+
__decorate([
|
|
8857
|
+
Input()
|
|
8858
|
+
], HistoricalPixAccountComponent.prototype, "msgTooltipAdd", void 0);
|
|
8859
|
+
__decorate([
|
|
8860
|
+
Input()
|
|
8861
|
+
], HistoricalPixAccountComponent.prototype, "isEditMode", void 0);
|
|
8862
|
+
__decorate([
|
|
8863
|
+
Input()
|
|
8864
|
+
], HistoricalPixAccountComponent.prototype, "isViewMode", void 0);
|
|
8865
|
+
__decorate([
|
|
8866
|
+
Input()
|
|
8867
|
+
], HistoricalPixAccountComponent.prototype, "currency", void 0);
|
|
8868
|
+
__decorate([
|
|
8869
|
+
Input()
|
|
8870
|
+
], HistoricalPixAccountComponent.prototype, "customEntity", void 0);
|
|
8871
|
+
__decorate([
|
|
8872
|
+
Input()
|
|
8873
|
+
], HistoricalPixAccountComponent.prototype, "customService", void 0);
|
|
8874
|
+
__decorate([
|
|
8875
|
+
Input()
|
|
8876
|
+
], HistoricalPixAccountComponent.prototype, "withSideBar", void 0);
|
|
8877
|
+
__decorate([
|
|
8878
|
+
Input()
|
|
8879
|
+
], HistoricalPixAccountComponent.prototype, "paramsForm", void 0);
|
|
8880
|
+
__decorate([
|
|
8881
|
+
Input()
|
|
8882
|
+
], HistoricalPixAccountComponent.prototype, "defaultCpfNumber", void 0);
|
|
8883
|
+
__decorate([
|
|
8884
|
+
Input()
|
|
8885
|
+
], HistoricalPixAccountComponent.prototype, "permission", void 0);
|
|
8886
|
+
__decorate([
|
|
8887
|
+
Input()
|
|
8888
|
+
], HistoricalPixAccountComponent.prototype, "listDataReciever", void 0);
|
|
8889
|
+
__decorate([
|
|
8890
|
+
Input()
|
|
8891
|
+
], HistoricalPixAccountComponent.prototype, "showButtonEdit", void 0);
|
|
8892
|
+
__decorate([
|
|
8893
|
+
Output()
|
|
8894
|
+
], HistoricalPixAccountComponent.prototype, "isViewModeActive", void 0);
|
|
8895
|
+
__decorate([
|
|
8896
|
+
Output()
|
|
8897
|
+
], HistoricalPixAccountComponent.prototype, "isEditModeActive", void 0);
|
|
8898
|
+
__decorate([
|
|
8899
|
+
Output()
|
|
8900
|
+
], HistoricalPixAccountComponent.prototype, "isDeleteModeActive", void 0);
|
|
8901
|
+
__decorate([
|
|
8902
|
+
Input()
|
|
8903
|
+
], HistoricalPixAccountComponent.prototype, "dateChange", null);
|
|
8904
|
+
__decorate([
|
|
8905
|
+
Input()
|
|
8906
|
+
], HistoricalPixAccountComponent.prototype, "displayDateChange", null);
|
|
8907
|
+
__decorate([
|
|
8908
|
+
Input()
|
|
8909
|
+
], HistoricalPixAccountComponent.prototype, "addListData", null);
|
|
8910
|
+
__decorate([
|
|
8911
|
+
Input()
|
|
8912
|
+
], HistoricalPixAccountComponent.prototype, "visible", null);
|
|
8913
|
+
HistoricalPixAccountComponent = __decorate([
|
|
8914
|
+
Component({
|
|
8915
|
+
// tslint:disable-next-line:component-selector
|
|
8916
|
+
selector: "c-historical-pix-account",
|
|
8917
|
+
template: "<s-sidebar *ngIf=\"withSideBar\" [visible]=\"visible\" (visibleChange)=\"close()\"\n header=\"{{'hcm.payroll.historical_pix_account_title_form'|translate}}\">\n<pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [paramsForm]=\"paramsForm\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</s-sidebar>\n\n<div *ngIf=\"!withSideBar && !isViewMode\">\n <pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [withSideBar]=\"false\"\n [isViewMode]=\"isViewMode\"\n [paramsForm]=\"paramsForm\"\n [permitsEditBankAccountForm]=\"permitsEditBankAccount\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</div>\n\n<div class=\"ui-g-1\" *ngIf=\"withSideBar && !isEditMode\">\n <div class=\"form-group \">\n <s-button id=\"ta-addPayAnnuity\"\n [disabled]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n (onClick)=\"add()\"\n [pTooltip]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n tooltipPosition=\"top\"\n label=\"{{'hcm.payroll.historical_pix_account_add'|translate}}\"></s-button>\n </div>\n</div>\n<div class=\"ui-g-12\">\n <p-table\n id=\"table-annuity\"\n [value]=\"listData\"\n [columns]=\"cols\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n [totalRecords]=\"totalRecords\"\n [sortMode]=\"'multiple'\"\n *sLoadingState=\"loading\"\n [rows]=\"recordByRow\"\n dataKey=\"id\">\n <ng-template pTemplate=\"colgroup\" let-coumns>\n <colgroup>\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-s'\">\n <col *ngIf=\"!isViewMode\" [ngClass]=\"'col-action'\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <!-- Cabe\u00E7alhos quando da table \u00E9 permitido ordenar as colunas -->\n <tr>\n <!-- Cabe\u00E7alhos das colunas da tabela -->\n <th\n [pSortableColumn]=\"'pixKeyType'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\" id=\"table-0\">\n <span\n id=\"table-annuity-s-0\">{{ 'hcm.payroll.employees_addition_pix_key_type' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'pixKey'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.employees_addition_pix_key' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'percentage'\"\n [pTooltip]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.historical_pix_account_label_percentage' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"></p-sortIcon>\n </div>\n </th>\n <!-- Cabe\u00E7alho da coluna de a\u00E7\u00F5es -->\n <th *ngIf=\"!isViewMode\" id=\"col-actions\"></th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-key=\"rowIndex\">\n\n <tr [ngClass]=\"'row'+key\" [pSelectableRow]=\"rowData\">\n <td [pTooltip]=\"rowData?.pixKeyType.value\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKeyType.value }}</span>\n </td>\n\n <ng-container [ngSwitch]=\"rowData?.pixKeyType.key\">\n <td *ngSwitchCase=\"'TELEPHONE'\"\n [pTooltip]=\"getFormattedTelephoneNumber(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedTelephoneNumber(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CPF'\"\n [pTooltip]=\"getFormattedCpf(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCpf(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CNPJ'\"\n [pTooltip]=\"getFormattedCnpj(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCnpj(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchDefault\n [pTooltip]=\"rowData?.pixKey\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKey }}</span>\n </td>\n </ng-container>\n <td [pTooltip]=\"getFormattedPercentage(rowData?.percentage)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedPercentage(rowData?.percentage) }}</span>\n </td>\n <td id=\"col-actions-{{key}}\" class=\"col-actions \"\n *ngIf=\"actions && actions(rowData, key)?.length && !isViewMode\">\n <s-button id=\"table-admission-btn-actions-{{key}}\"\n *ngIf=\"actions(rowData, key).length > 1\" [label]=\"actionLabel\"\n priority=\"default\" [model]=\"scopedActions(rowData, key)\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n\n <s-button id=\"table-admission-btn-action-{{key}}\"\n *ngIf=\"actions(rowData, key).length <= 1\"\n [label]=\"scopedActions(rowData, key)[0].label\"\n priority=\"default\"\n (click)=\"scopedActions(rowData, key)[0].command()\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\" let-columns>\n <tr>\n <td [attr.colspan]=\"columns.length +2\">\n {{'hcm.payroll.admission_empty_message'|translate}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span *ngIf=\"totalRecords\">{{recordsMessage}}</span>\n </ng-template>\n </p-table>\n</div>\n",
|
|
8918
|
+
styles: [".refresh{width:100%!important}#table-annuity .col-default-s{width:10%}#table-annuity .col-default-m{width:12%}#table-annuity .col-default-l{width:16%}#table-annuity .col-action{width:10%}#table-annuity .icon-warning{text-align:center!important;color:#ff6d00c7!important}@media screen and (max-width:612px){#table-annuity .col-default-1,#table-annuity .col-default-2{width:16%}#table-annuity .col-default-3{width:26%}#table-annuity .col-icon{width:10%}#table-annuity .col-action{width:27%}}#main{display:-webkit-box;display:flex;height:100%;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}#main form{height:100%}#main .footer{border-top:1px solid #ccc;padding-top:15px;margin-top:15px;flex-shrink:0;margin-bottom:-18px}#main .footer-s-border{padding-left:7px;flex-shrink:0;margin-bottom:-18px}"]
|
|
8919
|
+
})
|
|
8920
|
+
], HistoricalPixAccountComponent);
|
|
8921
|
+
|
|
8922
|
+
class GenericValidator {
|
|
8923
|
+
constructor() { }
|
|
8924
|
+
/**
|
|
8925
|
+
* Valida o CEI (Cadastro específico de INSS) digitado.
|
|
8926
|
+
*/
|
|
8927
|
+
static isValidCei(control) {
|
|
8928
|
+
const cei = control.value;
|
|
8929
|
+
if (!cei)
|
|
8930
|
+
return null;
|
|
8931
|
+
else if (cei.length != 11)
|
|
8932
|
+
return null;
|
|
8933
|
+
const multiplicadorBase = "3298765432";
|
|
8934
|
+
let total = 0;
|
|
8935
|
+
let resto = 0;
|
|
8936
|
+
let multiplicando = 0;
|
|
8937
|
+
let multiplicador = 0;
|
|
8938
|
+
if (cei.length !== 11 ||
|
|
8939
|
+
cei === "00000000000" ||
|
|
8940
|
+
cei === "11111111111" ||
|
|
8941
|
+
cei === "22222222222" ||
|
|
8942
|
+
cei === "33333333333" ||
|
|
8943
|
+
cei === "44444444444" ||
|
|
8944
|
+
cei === "55555555555" ||
|
|
8945
|
+
cei === "66666666666" ||
|
|
8946
|
+
cei === "77777777777" ||
|
|
8947
|
+
cei === "88888888888" ||
|
|
8948
|
+
cei === "99999999999")
|
|
8949
|
+
return { invalidCei: true };
|
|
8950
|
+
else {
|
|
8951
|
+
for (let i = 0; i < 10; i++) {
|
|
8952
|
+
multiplicando = parseInt(cei.substring(i, i + 1), 10);
|
|
8953
|
+
multiplicador = parseInt(multiplicadorBase.substring(i, i + 1), 10);
|
|
8954
|
+
total += multiplicando * multiplicador;
|
|
8955
|
+
}
|
|
8956
|
+
resto = 11 - (total % 11);
|
|
8957
|
+
resto = resto === 10 || resto === 11 ? 0 : resto;
|
|
8958
|
+
const digito = parseInt("" + cei.charAt(10), 10);
|
|
8959
|
+
return resto === digito ? null : { invalidCei: true };
|
|
8960
|
+
}
|
|
8961
|
+
}
|
|
8962
|
+
/**
|
|
8963
|
+
* Valida se o CPF é valido. Deve-se ser informado o cpf sem máscara.
|
|
8964
|
+
*/
|
|
8965
|
+
static isValidCpf(control) {
|
|
8966
|
+
const cpf = control.value;
|
|
8967
|
+
if (cpf) {
|
|
8968
|
+
let numbers, digits, sum, i, result, equalDigits;
|
|
8969
|
+
equalDigits = 1;
|
|
8970
|
+
if (cpf.length < 11) {
|
|
8971
|
+
return null;
|
|
8972
|
+
}
|
|
8973
|
+
for (i = 0; i < cpf.length - 1; i++) {
|
|
8974
|
+
if (cpf.charAt(i) !== cpf.charAt(i + 1)) {
|
|
8975
|
+
equalDigits = 0;
|
|
8976
|
+
break;
|
|
8977
|
+
}
|
|
8978
|
+
}
|
|
8979
|
+
if (!equalDigits) {
|
|
8980
|
+
numbers = cpf.substring(0, 9);
|
|
8981
|
+
digits = cpf.substring(9);
|
|
8982
|
+
sum = 0;
|
|
8983
|
+
for (i = 10; i > 1; i--) {
|
|
8984
|
+
sum += numbers.charAt(10 - i) * i;
|
|
8985
|
+
}
|
|
8986
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8987
|
+
if (result !== Number(digits.charAt(0))) {
|
|
8988
|
+
return { cpfNotValid: true };
|
|
8989
|
+
}
|
|
8990
|
+
numbers = cpf.substring(0, 10);
|
|
8991
|
+
sum = 0;
|
|
8992
|
+
for (i = 11; i > 1; i--) {
|
|
8993
|
+
sum += numbers.charAt(11 - i) * i;
|
|
8994
|
+
}
|
|
8995
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8996
|
+
if (result !== Number(digits.charAt(1))) {
|
|
8997
|
+
return { cpfNotValid: true };
|
|
8998
|
+
}
|
|
8999
|
+
return null;
|
|
9000
|
+
}
|
|
9001
|
+
else {
|
|
9002
|
+
return { cpfNotValid: true };
|
|
9003
|
+
}
|
|
9004
|
+
}
|
|
9005
|
+
return null;
|
|
9006
|
+
}
|
|
9007
|
+
/**
|
|
9008
|
+
* Valida se o CNPJ é valido. Deve-se ser informado o cpf sem máscara.
|
|
9009
|
+
*/
|
|
9010
|
+
static isValidCnpj(control) {
|
|
9011
|
+
let cnpj = control.value;
|
|
9012
|
+
if (cnpj) {
|
|
9013
|
+
let size, numbers, digits, sum, pos, result;
|
|
9014
|
+
cnpj = cnpj.replace(/[^\d]+/g, '');
|
|
9015
|
+
if (cnpj.length !== 14) {
|
|
9016
|
+
return null;
|
|
9017
|
+
}
|
|
9018
|
+
// Elimina CNPJs invalidos conhecidos
|
|
9019
|
+
if (cnpj === '00000000000000' ||
|
|
9020
|
+
cnpj === '11111111111111' ||
|
|
9021
|
+
cnpj === '22222222222222' ||
|
|
9022
|
+
cnpj === '33333333333333' ||
|
|
9023
|
+
cnpj === '44444444444444' ||
|
|
9024
|
+
cnpj === '55555555555555' ||
|
|
9025
|
+
cnpj === '66666666666666' ||
|
|
9026
|
+
cnpj === '77777777777777' ||
|
|
9027
|
+
cnpj === '88888888888888' ||
|
|
9028
|
+
cnpj === '99999999999999') {
|
|
9029
|
+
return { cnpjNotValid: true };
|
|
9030
|
+
}
|
|
9031
|
+
// Valida DVs
|
|
9032
|
+
size = cnpj.length - 2;
|
|
9033
|
+
numbers = cnpj.substring(0, size);
|
|
9034
|
+
digits = cnpj.substring(size);
|
|
9035
|
+
sum = 0;
|
|
9036
|
+
pos = size - 7;
|
|
9037
|
+
for (let i = size; i >= 1; i--) {
|
|
9038
|
+
sum += numbers.charAt(size - i) * pos--;
|
|
9039
|
+
if (pos < 2) {
|
|
9040
|
+
pos = 9;
|
|
9041
|
+
}
|
|
9042
|
+
}
|
|
9043
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
9044
|
+
if (result !== Number(digits.charAt(0))) {
|
|
9045
|
+
return { cnpjNotValid: true };
|
|
9046
|
+
}
|
|
9047
|
+
size = size + 1;
|
|
9048
|
+
numbers = cnpj.substring(0, size);
|
|
9049
|
+
sum = 0;
|
|
9050
|
+
pos = size - 7;
|
|
9051
|
+
for (let i = size; i >= 1; i--) {
|
|
9052
|
+
sum += numbers.charAt(size - i) * pos--;
|
|
9053
|
+
if (pos < 2) {
|
|
9054
|
+
pos = 9;
|
|
9055
|
+
}
|
|
9056
|
+
}
|
|
9057
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
9058
|
+
if (result !== Number(digits.charAt(1))) {
|
|
9059
|
+
return { cnpjNotValid: true };
|
|
9060
|
+
}
|
|
9061
|
+
return null;
|
|
9062
|
+
}
|
|
9063
|
+
return null;
|
|
9064
|
+
}
|
|
9065
|
+
/**
|
|
9066
|
+
* Válida o número de telefone da chave PIX.
|
|
9067
|
+
*/
|
|
9068
|
+
static isValidPhoneNumber(control) {
|
|
9069
|
+
let cellPhoneKey = control.value || '';
|
|
9070
|
+
cellPhoneKey = cellPhoneKey.replace(/[\s()-]/g, '');
|
|
9071
|
+
const regexNumberTelephone = /^[1-9][\d]{1,2}\d{8,10}$/;
|
|
9072
|
+
const isValidNumberTelephone = regexNumberTelephone.test(cellPhoneKey);
|
|
9073
|
+
return isValidNumberTelephone ? null : { invalidPhoneNumber: true };
|
|
9074
|
+
}
|
|
9075
|
+
/**
|
|
9076
|
+
* Valida o email da chave PIX.
|
|
9077
|
+
*/
|
|
9078
|
+
static isValidEmail(control) {
|
|
9079
|
+
const emailKey = control.value;
|
|
9080
|
+
const regexValidEmail = /^[\w-\.]+@[\w-]+(\.[\w-]{2,4}){1,2}$/;
|
|
9081
|
+
const isValidEmail = regexValidEmail.test(emailKey);
|
|
9082
|
+
return isValidEmail ? null : { invalidEmail: true };
|
|
9083
|
+
}
|
|
9084
|
+
}
|
|
9630
9085
|
|
|
9631
|
-
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
9632
|
-
constructor(formBuilder, cd
|
|
9633
|
-
|
|
9086
|
+
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent {
|
|
9087
|
+
constructor(formBuilder, cd) {
|
|
9088
|
+
this.formBuilder = formBuilder;
|
|
9634
9089
|
this.cd = cd;
|
|
9635
|
-
this.sharedStateService = sharedStateService;
|
|
9636
9090
|
this.withSideBar = true;
|
|
9637
9091
|
this.isEditMode = false;
|
|
9638
|
-
this.
|
|
9092
|
+
this.paramsForm = new FormGroup({});
|
|
9093
|
+
this.defaultCpfNumber = null;
|
|
9094
|
+
this.permitsEditBankAccountForm = false;
|
|
9639
9095
|
this.visibleChange = new EventEmitter();
|
|
9640
9096
|
this.pixAccountItemToList = new EventEmitter();
|
|
9641
9097
|
this.ngUnsubscribe = new Subject();
|
|
9098
|
+
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
9642
9099
|
this.labelBtnAdd = "hcm.payroll.employees_add";
|
|
9100
|
+
this.maxValuePercentage = 100.00;
|
|
9643
9101
|
this.visibleBtnSave = true;
|
|
9644
9102
|
this.isView = false;
|
|
9645
9103
|
this.isShowPixKeyFieldValidatorMessage = false;
|
|
9646
|
-
this.
|
|
9104
|
+
this.createFormGroup();
|
|
9647
9105
|
this.registerSubjects();
|
|
9648
9106
|
}
|
|
9649
|
-
ngOnInit() {
|
|
9107
|
+
ngOnInit() {
|
|
9108
|
+
}
|
|
9109
|
+
ngDoCheck() {
|
|
9110
|
+
if (this.pixAccountFormGroup && this.pixKeyType === "BANK_ACCOUNT") {
|
|
9111
|
+
const pixKeyControl = this.pixAccountFormGroup.get("pixKey");
|
|
9112
|
+
if (pixKeyControl && !pixKeyControl.disabled) {
|
|
9113
|
+
pixKeyControl.disable();
|
|
9114
|
+
}
|
|
9115
|
+
}
|
|
9116
|
+
}
|
|
9650
9117
|
ngAfterViewInit() {
|
|
9651
9118
|
this.cd.detectChanges();
|
|
9652
9119
|
}
|
|
@@ -9654,7 +9121,39 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9654
9121
|
this.ngUnsubscribe.next(true);
|
|
9655
9122
|
this.ngUnsubscribe.unsubscribe();
|
|
9656
9123
|
}
|
|
9657
|
-
registerSubjects() {
|
|
9124
|
+
registerSubjects() {
|
|
9125
|
+
}
|
|
9126
|
+
createFormGroup() {
|
|
9127
|
+
this.pixAccountFormGroup = this.formBuilder.group({
|
|
9128
|
+
id: this.formBuilder.control(null),
|
|
9129
|
+
index: this.formBuilder.control(null),
|
|
9130
|
+
employee: this.formBuilder.control({ value: { tableId: null }, disabled: true }),
|
|
9131
|
+
dateChange: this.formBuilder.control(null),
|
|
9132
|
+
pixKeyType: this.formBuilder.control(null, Validators.required),
|
|
9133
|
+
pixKey: this.formBuilder.control(null),
|
|
9134
|
+
percentage: this.formBuilder.control(null, Validators.compose([
|
|
9135
|
+
...this.initialValidatorOfPercentage,
|
|
9136
|
+
Validators.max(this.maxValuePercentage),
|
|
9137
|
+
])),
|
|
9138
|
+
externalId: this.formBuilder.control(null),
|
|
9139
|
+
customFields: this.formBuilder.control(null),
|
|
9140
|
+
});
|
|
9141
|
+
}
|
|
9142
|
+
onChangePixKeyType(item) {
|
|
9143
|
+
if (item.key) {
|
|
9144
|
+
this.pixKeyType = item.key;
|
|
9145
|
+
this.isShowPixKeyFieldValidatorMessage = true;
|
|
9146
|
+
this.pixAccountFormGroup.get("pixKey").reset();
|
|
9147
|
+
this.setPixKeyValidators(true);
|
|
9148
|
+
if (item.key === "CPF") {
|
|
9149
|
+
this.setDefaultCpfPixKey();
|
|
9150
|
+
}
|
|
9151
|
+
}
|
|
9152
|
+
}
|
|
9153
|
+
onClearPixKeyType() {
|
|
9154
|
+
this.isShowPixKeyFieldValidatorMessage = false;
|
|
9155
|
+
this.pixAccountFormGroup.get("pixKey").reset();
|
|
9156
|
+
}
|
|
9658
9157
|
get visible() {
|
|
9659
9158
|
return this._visible;
|
|
9660
9159
|
}
|
|
@@ -9685,8 +9184,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9685
9184
|
}
|
|
9686
9185
|
formatPixKeyTelephoneNumber() {
|
|
9687
9186
|
if (this.pixKeyType === "TELEPHONE") {
|
|
9688
|
-
|
|
9689
|
-
pixKeyCtrl.setValue(FormatUtilsService.getFormattedTelephoneNumber(pixKeyCtrl.value));
|
|
9187
|
+
this.pixAccountFormGroup.get("pixKey").setValue(FormatUtilsService.getFormattedTelephoneNumber(this.pixAccountFormGroup.get("pixKey").value));
|
|
9690
9188
|
}
|
|
9691
9189
|
}
|
|
9692
9190
|
convertDTOToShowWithCustomFields(data) {
|
|
@@ -9698,14 +9196,14 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9698
9196
|
this.visibleBtnSave = isEditMode;
|
|
9699
9197
|
if (this.pixAccountFormGroup.get("pixKeyType").value) {
|
|
9700
9198
|
this.pixKeyType = this.pixAccountFormGroup.get("pixKeyType").value.key;
|
|
9701
|
-
this.setPixKeyValidators(isEditMode
|
|
9199
|
+
this.setPixKeyValidators(isEditMode);
|
|
9702
9200
|
this.formatPixKeyTelephoneNumber();
|
|
9703
9201
|
}
|
|
9704
9202
|
configEnabledFields(this.pixAccountFormGroup, isEditMode, [
|
|
9705
9203
|
"pixKeyType",
|
|
9706
9204
|
"pixKey",
|
|
9707
9205
|
"percentage",
|
|
9708
|
-
"customFields"
|
|
9206
|
+
"customFields",
|
|
9709
9207
|
], []);
|
|
9710
9208
|
}
|
|
9711
9209
|
close() {
|
|
@@ -9713,11 +9211,13 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9713
9211
|
this.visible = false;
|
|
9714
9212
|
}
|
|
9715
9213
|
addItem() {
|
|
9214
|
+
this.pixAccountFormGroup.updateValueAndValidity();
|
|
9215
|
+
verifyValidationsForm.call(this.pixAccountFormGroup);
|
|
9716
9216
|
if (this.pixAccountFormGroup.valid) {
|
|
9717
9217
|
if (this.employeeId) {
|
|
9718
9218
|
this.pixAccountFormGroup.get("employee").setValue({
|
|
9719
9219
|
tableId: this.employeeId,
|
|
9720
|
-
name: ""
|
|
9220
|
+
name: "",
|
|
9721
9221
|
});
|
|
9722
9222
|
}
|
|
9723
9223
|
this.pixAccountItemToList.emit(this.pixAccountFormGroup.getRawValue());
|
|
@@ -9741,9 +9241,13 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9741
9241
|
return {
|
|
9742
9242
|
prefix: "",
|
|
9743
9243
|
thousands: this.currency.thousandsSeparator,
|
|
9744
|
-
decimal: this.currency.decimalSeparator
|
|
9244
|
+
decimal: this.currency.decimalSeparator,
|
|
9745
9245
|
};
|
|
9746
9246
|
}
|
|
9247
|
+
/**
|
|
9248
|
+
* O Input que recebe a lista do component pai e chama o método de validação passando a lista recebida.
|
|
9249
|
+
* @param pixAccountList
|
|
9250
|
+
*/
|
|
9747
9251
|
set getListPixAccount(pixAccountList) {
|
|
9748
9252
|
if (pixAccountList) {
|
|
9749
9253
|
this.setValidatorsAccordingList(pixAccountList, null, false);
|
|
@@ -9752,23 +9256,143 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9752
9256
|
this.resetForm();
|
|
9753
9257
|
}
|
|
9754
9258
|
}
|
|
9259
|
+
/**
|
|
9260
|
+
* Recebe a lista de registros já inseridos na tabela adiciona em uma variável os valores que serão usados para
|
|
9261
|
+
* a validação dos campos "percentage" e "pixAccount".
|
|
9262
|
+
* Quando tem index significa que está em uma edição, os valores na posição do registro da edição (index) não serão adicionados
|
|
9263
|
+
* no array de comparação dos validators.
|
|
9264
|
+
* @param pixAccountList
|
|
9265
|
+
* @param index
|
|
9266
|
+
*/
|
|
9267
|
+
setValidatorsAccordingList(pixAccountList, index = null, isEditMode = true) {
|
|
9268
|
+
this.pixAccountList = pixAccountList && pixAccountList.length ? [...pixAccountList] : [];
|
|
9269
|
+
const percentageIncluded = [];
|
|
9270
|
+
if (this.pixAccountList && this.pixAccountList.length) {
|
|
9271
|
+
this.pixAccountList.filter((field, key) => {
|
|
9272
|
+
if (field["percentage"] && key != index) {
|
|
9273
|
+
percentageIncluded.push(field["percentage"]);
|
|
9274
|
+
}
|
|
9275
|
+
});
|
|
9276
|
+
}
|
|
9277
|
+
this.beforeSetPixKeyTypeValidator();
|
|
9278
|
+
this.setPixKeyValidators(isEditMode);
|
|
9279
|
+
this.validatePercentageValid(percentageIncluded);
|
|
9280
|
+
}
|
|
9281
|
+
/**
|
|
9282
|
+
* Antes de setar o validator prepara as variáveis necessária para que seja feita a validação do campo.
|
|
9283
|
+
*/
|
|
9284
|
+
setPixKeyValidators(isEditMode) {
|
|
9285
|
+
const genericPixKey = this.pixAccountFormGroup.get("pixKey");
|
|
9286
|
+
if (this.pixKeyType) {
|
|
9287
|
+
switch (this.pixKeyType) {
|
|
9288
|
+
case "TELEPHONE":
|
|
9289
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9290
|
+
Validators.required, GenericValidator.isValidPhoneNumber,
|
|
9291
|
+
]));
|
|
9292
|
+
break;
|
|
9293
|
+
case "EMAIL":
|
|
9294
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9295
|
+
Validators.required, GenericValidator.isValidEmail,
|
|
9296
|
+
]));
|
|
9297
|
+
break;
|
|
9298
|
+
case "CPF":
|
|
9299
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9300
|
+
Validators.required, GenericValidator.isValidCpf,
|
|
9301
|
+
]));
|
|
9302
|
+
break;
|
|
9303
|
+
case "CNPJ":
|
|
9304
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9305
|
+
Validators.required, GenericValidator.isValidCnpj,
|
|
9306
|
+
]));
|
|
9307
|
+
break;
|
|
9308
|
+
case "RANDOM_KEY":
|
|
9309
|
+
genericPixKey.setValidators(Validators.required);
|
|
9310
|
+
break;
|
|
9311
|
+
default:
|
|
9312
|
+
genericPixKey.setValidators(null);
|
|
9313
|
+
break;
|
|
9314
|
+
}
|
|
9315
|
+
if (isEditMode) {
|
|
9316
|
+
genericPixKey.enable();
|
|
9317
|
+
}
|
|
9318
|
+
genericPixKey.updateValueAndValidity();
|
|
9319
|
+
}
|
|
9320
|
+
}
|
|
9321
|
+
/**
|
|
9322
|
+
* Este método calcula as parcentagens que já foram inseridas, e seta a diferença para chegar em
|
|
9323
|
+
* 100% na validação do campo "percentage" como um novo maxValue;
|
|
9324
|
+
* @param listValue
|
|
9325
|
+
*/
|
|
9326
|
+
validatePercentageValid(listValue) {
|
|
9327
|
+
const percentage = this.pixAccountFormGroup.get("percentage");
|
|
9328
|
+
this.maxValuePercentage = listValue
|
|
9329
|
+
.reduce((currentValue, total) => currentValue - total, 100.00);
|
|
9330
|
+
percentage
|
|
9331
|
+
.setValidators(Validators.compose([
|
|
9332
|
+
...this.initialValidatorOfPercentage,
|
|
9333
|
+
Validators.max(this.maxValuePercentage),
|
|
9334
|
+
]));
|
|
9335
|
+
percentage.updateValueAndValidity();
|
|
9336
|
+
}
|
|
9755
9337
|
set isViewMode(condition) {
|
|
9756
9338
|
this.isView = !!(condition && !this.withSideBar);
|
|
9757
9339
|
this.configEnableFields(!this.isView);
|
|
9758
9340
|
if (!this.isView)
|
|
9759
9341
|
this.resetForm();
|
|
9760
9342
|
}
|
|
9761
|
-
|
|
9762
|
-
|
|
9343
|
+
phoneMask(event) {
|
|
9344
|
+
FormatUtilsService.formatTelephoneInputEvent(event);
|
|
9345
|
+
}
|
|
9346
|
+
setDefaultCpfPixKey() {
|
|
9347
|
+
if (this.defaultCpfNumber) {
|
|
9348
|
+
this.pixAccountFormGroup.get("pixKey").setValue(this.defaultCpfNumber);
|
|
9349
|
+
}
|
|
9350
|
+
else {
|
|
9351
|
+
const sheetDocument = this.paramsForm.get("sheetDocument");
|
|
9352
|
+
if (sheetDocument) {
|
|
9353
|
+
const cpf = sheetDocument.get("cpfNumber").value;
|
|
9354
|
+
if (cpf) {
|
|
9355
|
+
this.pixAccountFormGroup.get("pixKey").setValue(cpf);
|
|
9356
|
+
}
|
|
9357
|
+
}
|
|
9358
|
+
}
|
|
9359
|
+
}
|
|
9360
|
+
beforeSetPixKeyTypeValidator() {
|
|
9361
|
+
const pixKeyType = this.pixAccountFormGroup.get("pixKeyType");
|
|
9362
|
+
if (this.pixAccountList && this.pixAccountList.length && pixKeyType) {
|
|
9363
|
+
pixKeyType
|
|
9364
|
+
.setValidators(Validators.compose([
|
|
9365
|
+
Validators.required,
|
|
9366
|
+
this.validateDuplicatePixKeyTypeBankAccount(this.pixAccountList),
|
|
9367
|
+
]));
|
|
9368
|
+
}
|
|
9369
|
+
else {
|
|
9370
|
+
pixKeyType.setValidators(Validators.required);
|
|
9371
|
+
}
|
|
9763
9372
|
}
|
|
9764
|
-
|
|
9765
|
-
|
|
9373
|
+
validateDuplicatePixKeyTypeBankAccount(listCompare) {
|
|
9374
|
+
return (control) => {
|
|
9375
|
+
const value = control && control.value;
|
|
9376
|
+
let condition = false;
|
|
9377
|
+
listCompare.filter((field) => {
|
|
9378
|
+
if (value) {
|
|
9379
|
+
if (field["pixKeyType"].key === 'BANK_ACCOUNT' && value.key === field["pixKeyType"].key) {
|
|
9380
|
+
return condition = true;
|
|
9381
|
+
}
|
|
9382
|
+
}
|
|
9383
|
+
});
|
|
9384
|
+
if (condition && !this.permitsEditBankAccountForm) {
|
|
9385
|
+
return { pixKeyTypeBankAccountDuplicate: true };
|
|
9386
|
+
}
|
|
9387
|
+
else {
|
|
9388
|
+
return null;
|
|
9389
|
+
}
|
|
9390
|
+
};
|
|
9766
9391
|
}
|
|
9767
9392
|
};
|
|
9768
9393
|
HistoricalPixAccountFormComponent.ctorParameters = () => [
|
|
9769
9394
|
{ type: FormBuilder },
|
|
9770
|
-
{ type: ChangeDetectorRef }
|
|
9771
|
-
{ type: SharedStateService }
|
|
9395
|
+
{ type: ChangeDetectorRef }
|
|
9772
9396
|
];
|
|
9773
9397
|
__decorate([
|
|
9774
9398
|
ViewChild(CustomFieldsComponent$1, { static: true })
|
|
@@ -9790,7 +9414,13 @@ __decorate([
|
|
|
9790
9414
|
], HistoricalPixAccountFormComponent.prototype, "isEditMode", void 0);
|
|
9791
9415
|
__decorate([
|
|
9792
9416
|
Input()
|
|
9793
|
-
], HistoricalPixAccountFormComponent.prototype, "
|
|
9417
|
+
], HistoricalPixAccountFormComponent.prototype, "paramsForm", void 0);
|
|
9418
|
+
__decorate([
|
|
9419
|
+
Input()
|
|
9420
|
+
], HistoricalPixAccountFormComponent.prototype, "defaultCpfNumber", void 0);
|
|
9421
|
+
__decorate([
|
|
9422
|
+
Input()
|
|
9423
|
+
], HistoricalPixAccountFormComponent.prototype, "permitsEditBankAccountForm", void 0);
|
|
9794
9424
|
__decorate([
|
|
9795
9425
|
Output()
|
|
9796
9426
|
], HistoricalPixAccountFormComponent.prototype, "visibleChange", void 0);
|
|
@@ -9809,20 +9439,29 @@ __decorate([
|
|
|
9809
9439
|
__decorate([
|
|
9810
9440
|
Input()
|
|
9811
9441
|
], HistoricalPixAccountFormComponent.prototype, "isViewMode", null);
|
|
9812
|
-
__decorate([
|
|
9813
|
-
Input()
|
|
9814
|
-
], HistoricalPixAccountFormComponent.prototype, "paramsForm", null);
|
|
9815
|
-
__decorate([
|
|
9816
|
-
Input()
|
|
9817
|
-
], HistoricalPixAccountFormComponent.prototype, "defaultCpfNumber", null);
|
|
9818
9442
|
HistoricalPixAccountFormComponent = __decorate([
|
|
9819
9443
|
Component({
|
|
9820
9444
|
selector: "pix-account",
|
|
9821
|
-
template: "<div id=\"main\">\n <form
|
|
9445
|
+
template: "<div id=\"main\">\n <form [formGroup]=\"pixAccountFormGroup\" autocomplete=\"off\">\n <div class=\"ui-fluid\">\n <div class=\"ui-g\">\n <!-- Tipo de chave -->\n <div class=\"ui-md-6 ui-sm-12 required\">\n <label>{{'hcm.payroll.employees_addition_pix_key_type'|translate}}</label>\n <input-rest-auto-complete-enum [dropdown]=\"true\" server=\"payroll\"\n enumeration=\"PixKeyType\"\n placeholder=\"{{'hcm.payroll.select' | translate}}\"\n name=\"pixKeyType\" [form]=\"pixAccountFormGroup\"\n (onSelect)=\"onChangePixKeyType($event)\"\n (onClear)=\"onClearPixKeyType()\"\n id=\"ta-pixKeyType\"></input-rest-auto-complete-enum>\n <s-control-errors [control]=\"pixAccountFormGroup.get('pixKeyType')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n pixKeyTypeBankAccountDuplicate: 'hcm.payroll.historical_pix_key_type_bank_account_duplicate' | translate\n }\">\n </s-control-errors>\n </div>\n <!--Chave Pix-->\n <div class=\"ui-md-6 ui-sm-12\" [ngClass]=\"{'required': pixKeyType !== 'BANK_ACCOUNT'}\">\n <label>{{'hcm.payroll.employees_addition_pix_key' | translate}}</label>\n <ng-container [ngSwitch]=\"pixKeyType\">\n <input *ngSwitchCase=\"'TELEPHONE'\" only-number\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n (keyup)=\"phoneMask($event)\" maxlength=\"15\"\n placeholder=\"(__) ____-____\">\n <p-inputMask *ngSwitchCase=\"'CPF'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"___.___.___-__\"\n mask=\"999.999.999-99\" [unmask]=\"true\"></p-inputMask>\n <p-inputMask *ngSwitchCase=\"'CNPJ'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"__.___.___/____-__\"\n mask=\"99.999.999/9999-99\" [unmask]=\"true\"></p-inputMask>\n <input *ngSwitchCase=\"'EMAIL'\"\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"{{'hcm.payroll.employees_addition_email'|translate}}\"/>\n <input *ngSwitchCase=\"'BANK_ACCOUNT'\" disabled\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"/>\n <input *ngSwitchDefault\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\" maxlength=\"100\" />\n </ng-container>\n <s-control-errors *ngIf=\"isShowPixKeyFieldValidatorMessage\" id=\"er-pix-key\"\n [control]=\"pixAccountFormGroup.get('pixKey')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n invalidPhoneNumber: 'hcm.payroll.employees_addition_invalid_phone_number' | translate: { value: pixAccountFormGroup.get('pixKey').value },\n invalidEmail: 'hcm.payroll.employees_addition_email_invalid' | translate,\n cpfNotValid: 'hcm.payroll.employees_addition_cpf_error' | translate,\n cnpjNotValid: 'hcm.payroll.employees_addition_cnpj_error' | translate\n }\">\n </s-control-errors>\n </div>\n <!--Percentual-->\n <div class=\"ui-md-6 ui-sm-12 required\">\n <label id=\"lb-percentage\"\n for=\"ff-percentage\">{{ 'hcm.payroll.historical_bank_account_label_percentage' | translate }}</label>\n <div class=\"ui-inputgroup\">\n <span class=\"ui-inputgroup-addon\">%</span>\n <input pInputText id=\"ff-percentage\" name=\"percentage\"\n formControlName=\"percentage\"\n currencyMask\n [options]=\"optionsPercentage\"\n [placeholder]=\"percentagePlaceholder\"/>\n </div>\n <s-control-errors [control]=\"pixAccountFormGroup.get('percentage')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n maxlength: 'hcm.payroll.error_max_length' | translate: { value: '6' },\n max: 'hcm.payroll.error_max_value_number' | translate: { value: maxValuePercentage },\n min: 'hcm.payroll.error_min_value_number' | translate: { value: '0,01' }\n }\">\n </s-control-errors>\n </div>\n <div class=\"ui-g-12\">\n <p-fieldset\n legend=\"{{ 'hcm.payroll.custom_fields' | translate }}\"\n [attr.data-hidden]=\"!customFields || !customFields.fields.length\"\n >\n <s-custom-fields\n domain=\"hcm\"\n service=\"{{customService}}\"\n entity=\"{{customEntity}}\"\n formControlName=\"customFields\"\n [invalidErrorLabel]=\"'hcm.payroll.employees_invalid_field' | translate\"\n >\n </s-custom-fields>\n </p-fieldset>\n </div>\n </div>\n </div>\n </form>\n\n <div [ngClass]=\"withSideBar ? 'footer' : 'footer-s-border'\">\n <div class=\"form-group\">\n <s-button id=\"btn-save\" label=\"{{ labelBtnAdd | translate}}\" priority=\"primary\"\n (onClick)=\"addItem()\" *ngIf=\"visibleBtnSave && !this.isView\"></s-button>\n <s-button *ngIf=\"withSideBar\" id=\"btn-close\" label=\"{{'hcm.payroll.cancel'|translate}}\" priority=\"secondary\"\n priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n </div>\n</div>\n",
|
|
9822
9446
|
styles: [".refresh{width:100%!important}#table-annuity .col-default-s{width:10%}#table-annuity .col-default-m{width:12%}#table-annuity .col-default-l{width:16%}#table-annuity .col-action{width:10%}#table-annuity .icon-warning{text-align:center!important;color:#ff6d00c7!important}@media screen and (max-width:612px){#table-annuity .col-default-1,#table-annuity .col-default-2{width:16%}#table-annuity .col-default-3{width:26%}#table-annuity .col-icon{width:10%}#table-annuity .col-action{width:27%}}#main{display:-webkit-box;display:flex;height:100%;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}#main form{height:100%}#main .footer{border-top:1px solid #ccc;padding-top:15px;margin-top:15px;flex-shrink:0;margin-bottom:-18px}#main .footer-s-border{padding-left:7px;flex-shrink:0;margin-bottom:-18px}"]
|
|
9823
9447
|
})
|
|
9824
9448
|
], HistoricalPixAccountFormComponent);
|
|
9825
9449
|
|
|
9450
|
+
let HistoricalPixAccountService = class HistoricalPixAccountService {
|
|
9451
|
+
constructor(http) {
|
|
9452
|
+
this.http = http;
|
|
9453
|
+
}
|
|
9454
|
+
query(path, body, service = ServiceType.PAYROLL) {
|
|
9455
|
+
return this.http.query(path, body, service);
|
|
9456
|
+
}
|
|
9457
|
+
};
|
|
9458
|
+
HistoricalPixAccountService.ctorParameters = () => [
|
|
9459
|
+
{ type: HttpClientService }
|
|
9460
|
+
];
|
|
9461
|
+
HistoricalPixAccountService = __decorate([
|
|
9462
|
+
Injectable()
|
|
9463
|
+
], HistoricalPixAccountService);
|
|
9464
|
+
|
|
9826
9465
|
let HistoricalPixAccountModule = class HistoricalPixAccountModule {
|
|
9827
9466
|
};
|
|
9828
9467
|
HistoricalPixAccountModule = __decorate([
|
|
@@ -9850,8 +9489,6 @@ HistoricalPixAccountModule = __decorate([
|
|
|
9850
9489
|
CustomFieldsModule$1,
|
|
9851
9490
|
PanelModule,
|
|
9852
9491
|
InputMaskModule,
|
|
9853
|
-
DropdownModule,
|
|
9854
|
-
TabViewModule,
|
|
9855
9492
|
],
|
|
9856
9493
|
declarations: [HistoricalPixAccountComponent, HistoricalPixAccountFormComponent],
|
|
9857
9494
|
providers: [HistoricalPixAccountService, ConfirmationService],
|
|
@@ -9890,7 +9527,7 @@ HistoricalPixAccountListService = __decorate([
|
|
|
9890
9527
|
|
|
9891
9528
|
const moment$e = moment_;
|
|
9892
9529
|
let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent {
|
|
9893
|
-
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService
|
|
9530
|
+
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService) {
|
|
9894
9531
|
this.confirmationService = confirmationService;
|
|
9895
9532
|
this.translateService = translateService;
|
|
9896
9533
|
this.activatedRoute = activatedRoute;
|
|
@@ -9898,14 +9535,13 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9898
9535
|
this.router = router;
|
|
9899
9536
|
this.messageService = messageService;
|
|
9900
9537
|
this.historicalPixAccountListService = historicalPixAccountListService;
|
|
9901
|
-
this.sharedStateService = sharedStateService;
|
|
9902
9538
|
this.endPoint = "hcm/payroll/queries/historicalEmployeePixQuery";
|
|
9903
9539
|
this.keyPayload = "historicalEmployeePix";
|
|
9904
9540
|
this.withSidebar = true;
|
|
9905
9541
|
this.isOnlyView = new EventEmitter();
|
|
9906
9542
|
this.isOnlyEdit = new EventEmitter();
|
|
9907
9543
|
this.enableView = new EventEmitter();
|
|
9908
|
-
this.
|
|
9544
|
+
this.enableEdit = new EventEmitter();
|
|
9909
9545
|
this.ngUnsubscribe = new Subject();
|
|
9910
9546
|
this.loading = true;
|
|
9911
9547
|
this.columns = [
|
|
@@ -9925,7 +9561,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9925
9561
|
ngOnDestroy() {
|
|
9926
9562
|
this.ngUnsubscribe.next();
|
|
9927
9563
|
this.ngUnsubscribe.complete();
|
|
9928
|
-
this.unsubscribe();
|
|
9929
9564
|
}
|
|
9930
9565
|
ngAfterViewInit() {
|
|
9931
9566
|
this.cd.detectChanges();
|
|
@@ -9943,9 +9578,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9943
9578
|
label: this.translateService.instant("hcm.payroll.employees_image_cropper_view"),
|
|
9944
9579
|
command: () => {
|
|
9945
9580
|
if (this.isAllowToViewHistorical) {
|
|
9946
|
-
this.sharedStateService.setHideField(true);
|
|
9947
|
-
this.sharedStateService.setShowButton(false);
|
|
9948
|
-
this.sharedStateService.setShowEditMode(false);
|
|
9949
9581
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9950
9582
|
if (this.withSidebar) {
|
|
9951
9583
|
this.isOnlyView.emit(true);
|
|
@@ -9954,7 +9586,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9954
9586
|
});
|
|
9955
9587
|
}
|
|
9956
9588
|
else {
|
|
9957
|
-
this.sharedStateService.setSaveButton(false);
|
|
9958
9589
|
this.enableView.emit(dateChange);
|
|
9959
9590
|
}
|
|
9960
9591
|
}
|
|
@@ -9967,22 +9598,16 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9967
9598
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9968
9599
|
command: () => {
|
|
9969
9600
|
if (this.isAllowToEditHistorical) {
|
|
9970
|
-
this.sharedStateService.setHideField(true);
|
|
9971
|
-
this.sharedStateService.setShowButton(false);
|
|
9972
|
-
this.sharedStateService.setShowEditMode(true);
|
|
9973
9601
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9974
9602
|
if (this.withSidebar) {
|
|
9603
|
+
this.isOnlyView.emit(false);
|
|
9604
|
+
this.isOnlyEdit.emit(true);
|
|
9975
9605
|
this.router.navigate([`historical-pix-account/${dateChange}`], {
|
|
9976
9606
|
relativeTo: this.activatedRoute,
|
|
9977
9607
|
});
|
|
9978
|
-
this.sharedStateService.setShouldReloadWindowOnlyEditMode(true);
|
|
9979
9608
|
}
|
|
9980
9609
|
else {
|
|
9981
|
-
|
|
9982
|
-
this.sharedStateService.triggerActiveValidatorsOnEditModalOpen();
|
|
9983
|
-
});
|
|
9984
|
-
this.sharedStateService.setSaveButton(true);
|
|
9985
|
-
this.enableView.emit(dateChange);
|
|
9610
|
+
this.enableEdit.emit(dateChange);
|
|
9986
9611
|
}
|
|
9987
9612
|
}
|
|
9988
9613
|
else {
|
|
@@ -10066,19 +9691,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
10066
9691
|
this.lastRecord = payload[0];
|
|
10067
9692
|
}
|
|
10068
9693
|
}
|
|
10069
|
-
unsubscribe() {
|
|
10070
|
-
if (this._subscription) {
|
|
10071
|
-
this._subscription.unsubscribe();
|
|
10072
|
-
}
|
|
10073
|
-
}
|
|
10074
|
-
set hideFieldsOnAdd$(subject) {
|
|
10075
|
-
this.unsubscribe();
|
|
10076
|
-
if (subject) {
|
|
10077
|
-
this._subscription = subject.subscribe((value) => {
|
|
10078
|
-
this.sharedStateService.setHideField(value);
|
|
10079
|
-
});
|
|
10080
|
-
}
|
|
10081
|
-
}
|
|
10082
9694
|
get isAllowToAddHistorical() {
|
|
10083
9695
|
return (this.permission["incluir"]);
|
|
10084
9696
|
}
|
|
@@ -10108,8 +9720,7 @@ HistoricalPixAccountListComponent.ctorParameters = () => [
|
|
|
10108
9720
|
{ type: ChangeDetectorRef },
|
|
10109
9721
|
{ type: Router },
|
|
10110
9722
|
{ type: MessageService },
|
|
10111
|
-
{ type: HistoricalPixAccountListService }
|
|
10112
|
-
{ type: SharedStateService }
|
|
9723
|
+
{ type: HistoricalPixAccountListService }
|
|
10113
9724
|
];
|
|
10114
9725
|
__decorate([
|
|
10115
9726
|
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
@@ -10135,9 +9746,6 @@ __decorate([
|
|
|
10135
9746
|
__decorate([
|
|
10136
9747
|
Input()
|
|
10137
9748
|
], HistoricalPixAccountListComponent.prototype, "withSidebar", void 0);
|
|
10138
|
-
__decorate([
|
|
10139
|
-
Input()
|
|
10140
|
-
], HistoricalPixAccountListComponent.prototype, "hideField", void 0);
|
|
10141
9749
|
__decorate([
|
|
10142
9750
|
Output()
|
|
10143
9751
|
], HistoricalPixAccountListComponent.prototype, "isOnlyView", void 0);
|
|
@@ -10149,10 +9757,7 @@ __decorate([
|
|
|
10149
9757
|
], HistoricalPixAccountListComponent.prototype, "enableView", void 0);
|
|
10150
9758
|
__decorate([
|
|
10151
9759
|
Output()
|
|
10152
|
-
], HistoricalPixAccountListComponent.prototype, "
|
|
10153
|
-
__decorate([
|
|
10154
|
-
Input()
|
|
10155
|
-
], HistoricalPixAccountListComponent.prototype, "hideFieldsOnAdd$", null);
|
|
9760
|
+
], HistoricalPixAccountListComponent.prototype, "enableEdit", void 0);
|
|
10156
9761
|
__decorate([
|
|
10157
9762
|
Input()
|
|
10158
9763
|
], HistoricalPixAccountListComponent.prototype, "reloadList", null);
|
|
@@ -10197,5 +9802,5 @@ HistoricalPixAccountListModule = __decorate([
|
|
|
10197
9802
|
* Generated bundle index. Do not edit.
|
|
10198
9803
|
*/
|
|
10199
9804
|
|
|
10200
|
-
export { AdmissionDraftSummaryComponent, AdmissionDraftSummaryModule, AdmissionDraftSummaryService, AutocompleteParametersService, BlockUiComponent, BlockUiModule, BreadcrumbComponent, BreadcrumbSDSModule, CNPJValidator, CPFValidator, CompanyIndicationType, CompanyIndicationsService, CompareType, ControlMessagesErrorComponent, ControlMessagesErrorModule, CoreDirectives, CoreFieldType, CustomFieldsComponent, CustomFieldsModule, DataListModule, DataListRestModule, DateValidator, DirectionEnumeration, EmployeeSelectorComponent, EmployeeSelectorModule, EmployeeSummaryComponent, EmployeeSummaryModule, EmployeeSummaryService, EntityODataParameter, ErrorPageComponent, ErrorPageModule, FieldValidatorComponent, FieldValidatorModule, FileUploadComponent, FileUploadCoreModule, FormComparatorService, FromToComponent, FromToModule, HistoricalBankAccountComponent, HistoricalBankAccountListComponent, HistoricalBankAccountListModule, HistoricalBankAccountListService, HistoricalBankAccountModule, HistoricalBankAccountService, HistoricalPixAccountComponent, HistoricalPixAccountListComponent, HistoricalPixAccountListModule, HistoricalPixAccountListService, HistoricalPixAccountModule, HistoricalPixAccountService, HttpClientService, HttpRequestType, ImageCropComponent, ImageCropModule, ImageCropService, InputDateComponent, InputDateModelComponent, InputDateModelModule, InputDateModule, InputRestAutoCompleteComponent, InputRestAutoCompleteEmployeeModelModule, InputRestAutoCompleteEmployeeModelService, InputRestAutoCompleteEmployeeModule, InputRestAutoCompleteEmployeeService, InputRestAutoCompleteEnumComponent, InputRestAutoCompleteEnumModule, InputRestAutoCompleteEnumService, InputRestAutoCompleteJobpositionComponent, InputRestAutoCompleteJobpositionModule, InputRestAutoCompleteJobpositionService, InputRestAutoCompleteModelEnumModule, InputRestAutoCompleteModelEnumService, InputRestAutoCompleteModelModule, InputRestAutoCompleteModelService, InputRestAutoCompleteModule, InputRestAutoCompleteService, IntegrationService, ListRestComponent, ListRestModule, LookupModule, LookupParametersService, MenuType, ModuleType, NameNotSpacesDirective, OnlyNumberDirective, Operators, ParameterType, PermissionService, ReportFormat, ReportService, ReportStage, ServiceType, ServicesModule,
|
|
9805
|
+
export { AdmissionDraftSummaryComponent, AdmissionDraftSummaryModule, AdmissionDraftSummaryService, AutocompleteParametersService, BlockUiComponent, BlockUiModule, BreadcrumbComponent, BreadcrumbSDSModule, CNPJValidator, CPFValidator, CompanyIndicationType, CompanyIndicationsService, CompareType, ControlMessagesErrorComponent, ControlMessagesErrorModule, CoreDirectives, CoreFieldType, CustomFieldsComponent, CustomFieldsModule, DataListModule, DataListRestModule, DateValidator, DirectionEnumeration, EmployeeSelectorComponent, EmployeeSelectorModule, EmployeeSummaryComponent, EmployeeSummaryModule, EmployeeSummaryService, EntityODataParameter, ErrorPageComponent, ErrorPageModule, FieldValidatorComponent, FieldValidatorModule, FileUploadComponent, FileUploadCoreModule, FormComparatorService, FromToComponent, FromToModule, HistoricalBankAccountComponent, HistoricalBankAccountListComponent, HistoricalBankAccountListModule, HistoricalBankAccountListService, HistoricalBankAccountModule, HistoricalBankAccountService, HistoricalPixAccountComponent, HistoricalPixAccountListComponent, HistoricalPixAccountListModule, HistoricalPixAccountListService, HistoricalPixAccountModule, HistoricalPixAccountService, HttpClientService, HttpRequestType, ImageCropComponent, ImageCropModule, ImageCropService, InputDateComponent, InputDateModelComponent, InputDateModelModule, InputDateModule, InputRestAutoCompleteComponent, InputRestAutoCompleteEmployeeModelModule, InputRestAutoCompleteEmployeeModelService, InputRestAutoCompleteEmployeeModule, InputRestAutoCompleteEmployeeService, InputRestAutoCompleteEnumComponent, InputRestAutoCompleteEnumModule, InputRestAutoCompleteEnumService, InputRestAutoCompleteJobpositionComponent, InputRestAutoCompleteJobpositionModule, InputRestAutoCompleteJobpositionService, InputRestAutoCompleteModelEnumModule, InputRestAutoCompleteModelEnumService, InputRestAutoCompleteModelModule, InputRestAutoCompleteModelService, InputRestAutoCompleteModule, InputRestAutoCompleteService, IntegrationService, ListRestComponent, ListRestModule, LookupModule, LookupParametersService, MenuType, ModuleType, NameNotSpacesDirective, OnlyNumberDirective, Operators, ParameterType, PermissionService, ReportFormat, ReportService, ReportStage, ServiceType, ServicesModule, SpinnerLoaderComponent, SpinnerLoaderModule, StringMethods, ToastComponent, ToastModule, ToastService, TypeAdmissionModule, TypeAdmissionServices, UsingType, WorkflowDataService, WorkflowIntegrator, WorkstationgroupLookupDto, WorkstationgroupLookupModule, _moment, assign, autoCompleteObjectForIdObject, clearValues, cnpjValidator, compareValues, configEnabledFields, containsMoreThanOneConsecutiveAbbreviation, containsMoreThanOneConsecutiveBlankSpace, containsMoreThanTwoRepeatedCharacters, containsSpecialCharacters, convertBooleanString, convertStringToBoolean, cpfValidator, firstNameIsValid, firstNameLengthIsValid, formatMoney, fullNameLengthIsValid, getAddWeekDaysBusiness, getFormat, getFormatDate, getMoment, getNowDate, getObjValids, getQueryParams, getWeekDaysBusiness, getYears, invertFieldDate, isBirthDayValid, isDateCompare, isDateExpirationBeforeExpeditionDate, isDateField, isDateSameOrAfterCurrentDate, isFullDate, isMax, isNumber, isObject, isRequired, isShallow, isValid, isValidDate, isValidPIS, mountCustomForSave, mountCustomForShow, mountCustomToSave, mountCustomToShow, mountGeneratedCustomToSave, ngCalendarFormat, notEmpty, numberOrZero, removeCharacteresSpecials, removeEmpty, removeWhiteSpaces, setCustonFields, setDisableField, setErrors, setRequired, setRequiredFields, setValidator, setValidatorsAndDisableFields, setValueCustom, stringMethods, sun, uiid, validateBirthDate, verifyValidationsForm, SharedModule as ɵa, DataListRestComponent as ɵb, DataListRestService as ɵc, FileUploadService as ɵd, InputRestAutoCompleteEmployeeComponent as ɵe, InputRestAutoCompleteEmployeeModelComponent as ɵf, InputRestAutoCompleteModelComponent as ɵg, InputRestAutoCompleteModelEnumComponent as ɵh, ListRestService as ɵi, DataListComponent as ɵj, DataListService as ɵk, LookupComponent as ɵl, LookupService as ɵm, WorkstationgroupLookupComponent as ɵn, AutocompleteService as ɵo, LookupService$1 as ɵp, HistoricalBankAccountFormComponent as ɵq, HistoricalPixAccountFormComponent as ɵr };
|
|
10201
9806
|
//# sourceMappingURL=senior-gestao-pessoas-payroll-core.js.map
|