@senior-gestao-pessoas/payroll-core 9.5.0-d4960af2-4da8-48bf-aac1-4d553cb625ef → 9.5.0-da89cbba-6cbd-41d9-a633-e9f0b229e923
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 -848
- 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 -9
- package/components/historical-pix-account/historical-pix-account.component.d.ts +10 -38
- 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 +200 -30
- package/esm2015/components/historical-pix-account/historical-pix-account.component.js +29 -221
- 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 -37
- 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 +215 -54
- package/esm5/components/historical-pix-account/historical-pix-account.component.js +58 -263
- 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 -42
- 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 +504 -845
- package/fesm2015/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/fesm5/senior-gestao-pessoas-payroll-core.js +464 -844
- 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 -14
- 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 -36
- 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 -37
|
@@ -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,438 +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
|
-
}
|
|
8619
|
-
setHideField(value) {
|
|
8620
|
-
this.hideFieldSubject.next(value);
|
|
8621
|
-
}
|
|
8622
|
-
setShowButton(value) {
|
|
8623
|
-
this.showButtonSubject.next(value);
|
|
8624
|
-
}
|
|
8625
|
-
setSaveButton(value) {
|
|
8626
|
-
this.saveButtonSubject.next(value);
|
|
8627
|
-
}
|
|
8628
|
-
setShowEditMode(value) {
|
|
8629
|
-
this.showEditMode.next(value);
|
|
8630
|
-
}
|
|
8631
|
-
};
|
|
8632
|
-
SharedStateService.ngInjectableDef = ɵɵdefineInjectable({ factory: function SharedStateService_Factory() { return new SharedStateService(); }, token: SharedStateService, providedIn: "root" });
|
|
8633
|
-
SharedStateService = __decorate([
|
|
8634
|
-
Injectable({
|
|
8635
|
-
providedIn: 'root',
|
|
8636
|
-
})
|
|
8637
|
-
], SharedStateService);
|
|
8638
|
-
|
|
8639
|
-
class GenericValidator {
|
|
8640
|
-
constructor() { }
|
|
8641
|
-
/**
|
|
8642
|
-
* Valida o CEI (Cadastro específico de INSS) digitado.
|
|
8643
|
-
*/
|
|
8644
|
-
static isValidCei(control) {
|
|
8645
|
-
const cei = control.value;
|
|
8646
|
-
if (!cei)
|
|
8647
|
-
return null;
|
|
8648
|
-
else if (cei.length != 11)
|
|
8649
|
-
return null;
|
|
8650
|
-
const multiplicadorBase = "3298765432";
|
|
8651
|
-
let total = 0;
|
|
8652
|
-
let resto = 0;
|
|
8653
|
-
let multiplicando = 0;
|
|
8654
|
-
let multiplicador = 0;
|
|
8655
|
-
if (cei.length !== 11 ||
|
|
8656
|
-
cei === "00000000000" ||
|
|
8657
|
-
cei === "11111111111" ||
|
|
8658
|
-
cei === "22222222222" ||
|
|
8659
|
-
cei === "33333333333" ||
|
|
8660
|
-
cei === "44444444444" ||
|
|
8661
|
-
cei === "55555555555" ||
|
|
8662
|
-
cei === "66666666666" ||
|
|
8663
|
-
cei === "77777777777" ||
|
|
8664
|
-
cei === "88888888888" ||
|
|
8665
|
-
cei === "99999999999")
|
|
8666
|
-
return { invalidCei: true };
|
|
8667
|
-
else {
|
|
8668
|
-
for (let i = 0; i < 10; i++) {
|
|
8669
|
-
multiplicando = parseInt(cei.substring(i, i + 1), 10);
|
|
8670
|
-
multiplicador = parseInt(multiplicadorBase.substring(i, i + 1), 10);
|
|
8671
|
-
total += multiplicando * multiplicador;
|
|
8672
|
-
}
|
|
8673
|
-
resto = 11 - (total % 11);
|
|
8674
|
-
resto = resto === 10 || resto === 11 ? 0 : resto;
|
|
8675
|
-
const digito = parseInt("" + cei.charAt(10), 10);
|
|
8676
|
-
return resto === digito ? null : { invalidCei: true };
|
|
8677
|
-
}
|
|
8678
|
-
}
|
|
8679
|
-
/**
|
|
8680
|
-
* Valida se o CPF é valido. Deve-se ser informado o cpf sem máscara.
|
|
8681
|
-
*/
|
|
8682
|
-
static isValidCpf(control) {
|
|
8683
|
-
const cpf = control.value;
|
|
8684
|
-
if (cpf) {
|
|
8685
|
-
let numbers, digits, sum, i, result, equalDigits;
|
|
8686
|
-
equalDigits = 1;
|
|
8687
|
-
if (cpf.length < 11) {
|
|
8688
|
-
return null;
|
|
8689
|
-
}
|
|
8690
|
-
for (i = 0; i < cpf.length - 1; i++) {
|
|
8691
|
-
if (cpf.charAt(i) !== cpf.charAt(i + 1)) {
|
|
8692
|
-
equalDigits = 0;
|
|
8693
|
-
break;
|
|
8694
|
-
}
|
|
8695
|
-
}
|
|
8696
|
-
if (!equalDigits) {
|
|
8697
|
-
numbers = cpf.substring(0, 9);
|
|
8698
|
-
digits = cpf.substring(9);
|
|
8699
|
-
sum = 0;
|
|
8700
|
-
for (i = 10; i > 1; i--) {
|
|
8701
|
-
sum += numbers.charAt(10 - i) * i;
|
|
8702
|
-
}
|
|
8703
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8704
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8705
|
-
return { cpfNotValid: true };
|
|
8706
|
-
}
|
|
8707
|
-
numbers = cpf.substring(0, 10);
|
|
8708
|
-
sum = 0;
|
|
8709
|
-
for (i = 11; i > 1; i--) {
|
|
8710
|
-
sum += numbers.charAt(11 - i) * i;
|
|
8711
|
-
}
|
|
8712
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8713
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8714
|
-
return { cpfNotValid: true };
|
|
8715
|
-
}
|
|
8716
|
-
return null;
|
|
8717
|
-
}
|
|
8718
|
-
else {
|
|
8719
|
-
return { cpfNotValid: true };
|
|
8720
|
-
}
|
|
8721
|
-
}
|
|
8722
|
-
return null;
|
|
8723
|
-
}
|
|
8724
|
-
/**
|
|
8725
|
-
* Valida se o CNPJ é valido. Deve-se ser informado o cpf sem máscara.
|
|
8726
|
-
*/
|
|
8727
|
-
static isValidCnpj(control) {
|
|
8728
|
-
let cnpj = control.value;
|
|
8729
|
-
if (cnpj) {
|
|
8730
|
-
let size, numbers, digits, sum, pos, result;
|
|
8731
|
-
cnpj = cnpj.replace(/[^\d]+/g, '');
|
|
8732
|
-
if (cnpj.length !== 14) {
|
|
8733
|
-
return null;
|
|
8734
|
-
}
|
|
8735
|
-
// Elimina CNPJs invalidos conhecidos
|
|
8736
|
-
if (cnpj === '00000000000000' ||
|
|
8737
|
-
cnpj === '11111111111111' ||
|
|
8738
|
-
cnpj === '22222222222222' ||
|
|
8739
|
-
cnpj === '33333333333333' ||
|
|
8740
|
-
cnpj === '44444444444444' ||
|
|
8741
|
-
cnpj === '55555555555555' ||
|
|
8742
|
-
cnpj === '66666666666666' ||
|
|
8743
|
-
cnpj === '77777777777777' ||
|
|
8744
|
-
cnpj === '88888888888888' ||
|
|
8745
|
-
cnpj === '99999999999999') {
|
|
8746
|
-
return { cnpjNotValid: true };
|
|
8747
|
-
}
|
|
8748
|
-
// Valida DVs
|
|
8749
|
-
size = cnpj.length - 2;
|
|
8750
|
-
numbers = cnpj.substring(0, size);
|
|
8751
|
-
digits = cnpj.substring(size);
|
|
8752
|
-
sum = 0;
|
|
8753
|
-
pos = size - 7;
|
|
8754
|
-
for (let i = size; i >= 1; i--) {
|
|
8755
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8756
|
-
if (pos < 2) {
|
|
8757
|
-
pos = 9;
|
|
8758
|
-
}
|
|
8759
|
-
}
|
|
8760
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8761
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8762
|
-
return { cnpjNotValid: true };
|
|
8763
|
-
}
|
|
8764
|
-
size = size + 1;
|
|
8765
|
-
numbers = cnpj.substring(0, size);
|
|
8766
|
-
sum = 0;
|
|
8767
|
-
pos = size - 7;
|
|
8768
|
-
for (let i = size; i >= 1; i--) {
|
|
8769
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8770
|
-
if (pos < 2) {
|
|
8771
|
-
pos = 9;
|
|
8772
|
-
}
|
|
8773
|
-
}
|
|
8774
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8775
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8776
|
-
return { cnpjNotValid: true };
|
|
8777
|
-
}
|
|
8778
|
-
return null;
|
|
8779
|
-
}
|
|
8780
|
-
return null;
|
|
8781
|
-
}
|
|
8782
|
-
/**
|
|
8783
|
-
* Válida o número de telefone da chave PIX.
|
|
8784
|
-
*/
|
|
8785
|
-
static isValidPhoneNumber(control) {
|
|
8786
|
-
let cellPhoneKey = control.value || '';
|
|
8787
|
-
cellPhoneKey = cellPhoneKey.replace(/[\s()-]/g, '');
|
|
8788
|
-
const regexNumberTelephone = /^[1-9][\d]{1,2}\d{8,10}$/;
|
|
8789
|
-
const isValidNumberTelephone = regexNumberTelephone.test(cellPhoneKey);
|
|
8790
|
-
return isValidNumberTelephone ? null : { invalidPhoneNumber: true };
|
|
8791
|
-
}
|
|
8792
|
-
/**
|
|
8793
|
-
* 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.
|
|
8794
8518
|
*/
|
|
8795
|
-
static
|
|
8796
|
-
|
|
8797
|
-
const regexValidEmail = /^[\w-\.]+@[\w-]+(\.[\w-]{2,4}){1,2}$/;
|
|
8798
|
-
const isValidEmail = regexValidEmail.test(emailKey);
|
|
8799
|
-
return isValidEmail ? null : { invalidEmail: true };
|
|
8800
|
-
}
|
|
8801
|
-
}
|
|
8802
|
-
|
|
8803
|
-
class HistoricakPixAccountBase {
|
|
8804
|
-
constructor(formBuilder) {
|
|
8805
|
-
this._paramsForm = new FormGroup({});
|
|
8806
|
-
this._defaultCpfNumber = null;
|
|
8807
|
-
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
8808
|
-
this.pixAccountList = [];
|
|
8809
|
-
this.maxValuePercentage = 100.0;
|
|
8810
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8811
|
-
this.formBuilder = formBuilder;
|
|
8812
|
-
this.createFormGroupBase();
|
|
8813
|
-
}
|
|
8814
|
-
phoneMask(event) {
|
|
8815
|
-
FormatUtilsService.formatTelephoneInputEvent(event);
|
|
8816
|
-
}
|
|
8817
|
-
cpfMask(event) {
|
|
8818
|
-
FormatUtilsService.formatCpfInputEvent(event);
|
|
8819
|
-
}
|
|
8820
|
-
cnpjMask(event) {
|
|
8821
|
-
FormatUtilsService.formatCnpjInputEvent(event);
|
|
8822
|
-
}
|
|
8823
|
-
onChangePixKeyType(item, form) {
|
|
8824
|
-
if (!item || !item.key)
|
|
8825
|
-
return;
|
|
8826
|
-
this.pixKeyType = item.key;
|
|
8827
|
-
const targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8828
|
-
? form
|
|
8829
|
-
: this.pixAccountFormGroup;
|
|
8830
|
-
this.isShowPixKeyFieldValidatorMessage = true;
|
|
8831
|
-
const pixKeyControl = targetForm.get("pixKey");
|
|
8832
|
-
if (pixKeyControl) {
|
|
8833
|
-
pixKeyControl.reset();
|
|
8834
|
-
}
|
|
8835
|
-
this.setPixKeyValidators(true, targetForm);
|
|
8836
|
-
if (item.key === "CPF") {
|
|
8837
|
-
this.setDefaultCpfPixKey(targetForm);
|
|
8838
|
-
}
|
|
8839
|
-
}
|
|
8840
|
-
onClearPixKeyType(form) {
|
|
8841
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8842
|
-
? form
|
|
8843
|
-
: this.pixAccountFormGroup;
|
|
8844
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8845
|
-
if (targetForm.get("pixKey")) {
|
|
8846
|
-
targetForm.get("pixKey").reset();
|
|
8847
|
-
}
|
|
8848
|
-
}
|
|
8849
|
-
setDefaultCpfPixKey(form) {
|
|
8850
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8851
|
-
? form
|
|
8852
|
-
: this.pixAccountFormGroup;
|
|
8853
|
-
if (this._defaultCpfNumber) {
|
|
8854
|
-
if (targetForm.get("pixKey")) {
|
|
8855
|
-
targetForm.get("pixKey").setValue(this._defaultCpfNumber);
|
|
8856
|
-
}
|
|
8857
|
-
}
|
|
8858
|
-
else {
|
|
8859
|
-
var sheetDocument = this._paramsForm.get("sheetDocument");
|
|
8860
|
-
if (sheetDocument && sheetDocument.get("cpfNumber")) {
|
|
8861
|
-
var cpf = sheetDocument.get("cpfNumber").value;
|
|
8862
|
-
if (cpf && targetForm.get("pixKey")) {
|
|
8863
|
-
targetForm.get("pixKey").setValue(cpf);
|
|
8864
|
-
}
|
|
8865
|
-
}
|
|
8866
|
-
}
|
|
8867
|
-
}
|
|
8868
|
-
createFormGroupBase() {
|
|
8869
|
-
this.pixAccountFormGroup = this.formBuilder.group({
|
|
8870
|
-
id: this.formBuilder.control(null),
|
|
8871
|
-
index: this.formBuilder.control(null),
|
|
8872
|
-
employee: this.formBuilder.control({ value: { tableId: null }, disabled: true }),
|
|
8873
|
-
dateChange: this.formBuilder.control(null),
|
|
8874
|
-
pixKeyType: this.formBuilder.control(null, Validators.required),
|
|
8875
|
-
pixKey: this.formBuilder.control(null),
|
|
8876
|
-
percentage: this.formBuilder.control(null, Validators.compose([
|
|
8877
|
-
...this.initialValidatorOfPercentage,
|
|
8878
|
-
Validators.max(this.maxValuePercentage),
|
|
8879
|
-
])),
|
|
8880
|
-
externalId: this.formBuilder.control(null),
|
|
8881
|
-
customFields: this.formBuilder.control(null),
|
|
8882
|
-
});
|
|
8883
|
-
}
|
|
8884
|
-
setValidatorsAccordingList(pixAccountList, index = null, isEditMode = true, form) {
|
|
8885
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8886
|
-
? form
|
|
8887
|
-
: this.pixAccountFormGroup;
|
|
8888
|
-
this.pixAccountList = (pixAccountList && pixAccountList.length > 0)
|
|
8889
|
-
? [].concat(pixAccountList)
|
|
8890
|
-
: [];
|
|
8891
|
-
var percentageIncluded = [];
|
|
8892
|
-
for (var i = 0; i < this.pixAccountList.length; i++) {
|
|
8893
|
-
var field = this.pixAccountList[i];
|
|
8894
|
-
if (field && field.percentage && i !== index) {
|
|
8895
|
-
percentageIncluded.push(field.percentage);
|
|
8896
|
-
}
|
|
8897
|
-
}
|
|
8898
|
-
this.beforeSetPixKeyTypeValidator(targetForm);
|
|
8899
|
-
this.setPixKeyValidators(isEditMode, targetForm);
|
|
8900
|
-
this.validatePercentageValid(percentageIncluded, targetForm);
|
|
8901
|
-
}
|
|
8902
|
-
beforeSetPixKeyTypeValidator(form) {
|
|
8903
|
-
const control = form.get("pixKeyType");
|
|
8904
|
-
if (this.pixAccountList && this.pixAccountList.length) {
|
|
8905
|
-
control.setValidators(Validators.compose([
|
|
8906
|
-
Validators.required,
|
|
8907
|
-
this.validateDuplicatePixKeyTypeBankAccount(this.pixAccountList),
|
|
8908
|
-
]));
|
|
8909
|
-
}
|
|
8910
|
-
else {
|
|
8911
|
-
control.setValidators(Validators.required);
|
|
8912
|
-
}
|
|
8913
|
-
control.updateValueAndValidity();
|
|
8914
|
-
}
|
|
8915
|
-
setPixKeyValidators(isEditMode, form) {
|
|
8916
|
-
const pixKey = form.get("pixKey");
|
|
8917
|
-
switch (this.pixKeyType) {
|
|
8918
|
-
case "TELEPHONE":
|
|
8919
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidPhoneNumber]));
|
|
8920
|
-
break;
|
|
8921
|
-
case "EMAIL":
|
|
8922
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidEmail]));
|
|
8923
|
-
break;
|
|
8924
|
-
case "CPF":
|
|
8925
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCpf]));
|
|
8926
|
-
break;
|
|
8927
|
-
case "CNPJ":
|
|
8928
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCnpj]));
|
|
8929
|
-
break;
|
|
8930
|
-
case "RANDOM_KEY":
|
|
8931
|
-
pixKey.setValidators(Validators.required);
|
|
8932
|
-
break;
|
|
8933
|
-
default:
|
|
8934
|
-
pixKey.clearValidators();
|
|
8935
|
-
}
|
|
8936
|
-
if (isEditMode) {
|
|
8937
|
-
pixKey.enable();
|
|
8938
|
-
}
|
|
8939
|
-
pixKey.updateValueAndValidity();
|
|
8940
|
-
}
|
|
8941
|
-
validatePercentageValid(listValue, form) {
|
|
8942
|
-
const percentage = form.get("percentage");
|
|
8943
|
-
this.maxValuePercentage = listValue.reduce((acc, val) => acc - val, 100.0);
|
|
8944
|
-
percentage.setValidators(Validators.compose([
|
|
8945
|
-
...this.initialValidatorOfPercentage,
|
|
8946
|
-
Validators.max(this.maxValuePercentage),
|
|
8947
|
-
]));
|
|
8948
|
-
percentage.updateValueAndValidity();
|
|
8949
|
-
}
|
|
8950
|
-
validateDuplicatePixKeyTypeBankAccount(listCompare) {
|
|
8951
|
-
return (control) => {
|
|
8952
|
-
const value = control.value;
|
|
8953
|
-
const isDuplicate = listCompare.some((field) => value &&
|
|
8954
|
-
field.pixKeyType.key === "BANK_ACCOUNT" &&
|
|
8955
|
-
value.key === "BANK_ACCOUNT");
|
|
8956
|
-
return isDuplicate ? { pixKeyTypeBankAccountDuplicate: true } : null;
|
|
8957
|
-
};
|
|
8958
|
-
}
|
|
8959
|
-
get paramsForm() {
|
|
8960
|
-
return this._paramsForm;
|
|
8961
|
-
}
|
|
8962
|
-
set paramsForm(value) {
|
|
8963
|
-
this._paramsForm = value;
|
|
8964
|
-
}
|
|
8965
|
-
get defaultCpfNumber() {
|
|
8966
|
-
return this._defaultCpfNumber;
|
|
8967
|
-
}
|
|
8968
|
-
set defaultCpfNumber(value) {
|
|
8969
|
-
this._defaultCpfNumber = value;
|
|
8519
|
+
static getFormattedPercentage(value) {
|
|
8520
|
+
return parseFloat(value).toFixed(2).replace('.', ',') + '%';
|
|
8970
8521
|
}
|
|
8971
8522
|
}
|
|
8972
8523
|
|
|
8973
|
-
let
|
|
8974
|
-
constructor(
|
|
8975
|
-
this.http = http;
|
|
8976
|
-
}
|
|
8977
|
-
query(path, body, service = ServiceType.PAYROLL) {
|
|
8978
|
-
return this.http.query(path, body, service);
|
|
8979
|
-
}
|
|
8980
|
-
enumQuery() {
|
|
8981
|
-
const path = 'enumQuery';
|
|
8982
|
-
const body = {
|
|
8983
|
-
names: ['PixKeyType']
|
|
8984
|
-
};
|
|
8985
|
-
return this.http.query(path, body, ServiceType.PAYROLL);
|
|
8986
|
-
}
|
|
8987
|
-
};
|
|
8988
|
-
HistoricalPixAccountService.ctorParameters = () => [
|
|
8989
|
-
{ type: HttpClientService }
|
|
8990
|
-
];
|
|
8991
|
-
HistoricalPixAccountService = __decorate([
|
|
8992
|
-
Injectable()
|
|
8993
|
-
], HistoricalPixAccountService);
|
|
8994
|
-
|
|
8995
|
-
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends HistoricakPixAccountBase {
|
|
8996
|
-
constructor(translateService, cd, formBuilder, sharedStateService, service) {
|
|
8997
|
-
super(formBuilder);
|
|
8524
|
+
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent {
|
|
8525
|
+
constructor(translateService, cd, formBuilder, messageService) {
|
|
8998
8526
|
this.translateService = translateService;
|
|
8999
8527
|
this.cd = cd;
|
|
9000
|
-
this.
|
|
9001
|
-
this.
|
|
8528
|
+
this.formBuilder = formBuilder;
|
|
8529
|
+
this.messageService = messageService;
|
|
9002
8530
|
this.recordByRow = 1;
|
|
9003
8531
|
this.showDateChange = false;
|
|
9004
8532
|
this.isEditMode = false;
|
|
9005
8533
|
this.isViewMode = false;
|
|
9006
8534
|
this.withSideBar = true;
|
|
8535
|
+
this.defaultCpfNumber = null;
|
|
9007
8536
|
this.listDataReciever = [];
|
|
9008
|
-
this.
|
|
9009
|
-
this.getListPixAccount = [];
|
|
9010
|
-
this.isEditModeForSave = false;
|
|
8537
|
+
this.showButtonEdit = false;
|
|
9011
8538
|
this.isViewModeActive = new EventEmitter();
|
|
9012
8539
|
this.isEditModeActive = new EventEmitter();
|
|
9013
8540
|
this.isDeleteModeActive = new EventEmitter();
|
|
9014
|
-
this.isValidChangeForm = new EventEmitter();
|
|
9015
8541
|
this.listFromApp = [];
|
|
9016
8542
|
this.visibleChange = new EventEmitter();
|
|
9017
8543
|
this.ngUnsubscribe = new Subject();
|
|
@@ -9025,34 +8551,20 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9025
8551
|
this.loading = true;
|
|
9026
8552
|
this.listData = [];
|
|
9027
8553
|
this.listDataNoPage = [];
|
|
9028
|
-
this.
|
|
9029
|
-
this.showEditMode = false;
|
|
9030
|
-
this.hasRecordsPix = true;
|
|
9031
|
-
this.maxValuePercentage = 100.00;
|
|
9032
|
-
this.hideFields = this.sharedStateService.hideField$;
|
|
9033
|
-
this.suggestions = [];
|
|
9034
|
-
this.formGroupByRow = {};
|
|
8554
|
+
this.permitsEditBankAccount = false;
|
|
9035
8555
|
this.cols = [
|
|
9036
8556
|
{
|
|
9037
8557
|
label: this.translateService.instant("hcm.payroll.employees_addition_pix_key_type"),
|
|
9038
8558
|
field: "pixKeyType",
|
|
9039
|
-
orderBy: 'pixKeyType.key',
|
|
9040
8559
|
},
|
|
9041
8560
|
{
|
|
9042
8561
|
label: this.translateService.instant("hcm.payroll.employees_addition_pix_key"),
|
|
9043
8562
|
field: "pixKey",
|
|
9044
|
-
orderBy: 'pixKey',
|
|
9045
8563
|
},
|
|
9046
8564
|
{
|
|
9047
8565
|
label: this.translateService.instant("hcm.payroll.historical_pix_account_label_percentage"),
|
|
9048
8566
|
field: "percentage",
|
|
9049
|
-
orderBy: 'percentage',
|
|
9050
8567
|
},
|
|
9051
|
-
{
|
|
9052
|
-
label: this.translateService.instant("hcm.payroll.movimentation_generic_action"),
|
|
9053
|
-
field: "actions",
|
|
9054
|
-
orderBy: null,
|
|
9055
|
-
}
|
|
9056
8568
|
];
|
|
9057
8569
|
this.actions = (rowData = {}, key) => {
|
|
9058
8570
|
return [
|
|
@@ -9071,7 +8583,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9071
8583
|
},
|
|
9072
8584
|
},
|
|
9073
8585
|
{
|
|
9074
|
-
visible: !!(!this.isEditMode && this.withSideBar),
|
|
8586
|
+
visible: !!((!this.isEditMode && this.withSideBar) || this.showButtonEdit),
|
|
9075
8587
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9076
8588
|
command: () => {
|
|
9077
8589
|
if (this.isAllowToEditHistorical) {
|
|
@@ -9090,7 +8602,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9090
8602
|
},
|
|
9091
8603
|
},
|
|
9092
8604
|
{
|
|
9093
|
-
visible: !this.isEditMode
|
|
8605
|
+
visible: !this.isEditMode,
|
|
9094
8606
|
label: this.translateService.instant("hcm.payroll.delete"),
|
|
9095
8607
|
command: () => {
|
|
9096
8608
|
if (this.isAllowToDeleteHistorical) {
|
|
@@ -9112,24 +8624,13 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9112
8624
|
}
|
|
9113
8625
|
ngOnInit() {
|
|
9114
8626
|
this.formGroup.setControl(this.fieldFormGroup, this.historicalPixAccountList);
|
|
9115
|
-
this.sharedStateService.showButton$.subscribe((value) => {
|
|
9116
|
-
this.showButtonView = value;
|
|
9117
|
-
});
|
|
9118
|
-
this.sharedStateService.showEditMode$.subscribe((value) => {
|
|
9119
|
-
this.showEditMode = value;
|
|
9120
|
-
this.isEditModeForSave = value;
|
|
9121
|
-
});
|
|
9122
8627
|
}
|
|
9123
8628
|
ngOnChanges(changes) {
|
|
9124
8629
|
if (changes['listDataReciever'] && changes['listDataReciever'].currentValue) {
|
|
9125
8630
|
this.listFromApp = changes['listDataReciever'].currentValue;
|
|
9126
8631
|
}
|
|
9127
|
-
if (changes['
|
|
9128
|
-
this.
|
|
9129
|
-
}
|
|
9130
|
-
if (changes['addExistentHistoricData'] && changes['addExistentHistoricData'].currentValue) {
|
|
9131
|
-
const newData = changes['addExistentHistoricData'].currentValue;
|
|
9132
|
-
this.rebuildFormGroupMap(newData);
|
|
8632
|
+
if (changes['showButtonEdit'] && changes['showButtonEdit'].currentValue) {
|
|
8633
|
+
this.permitsEditBankAccount = changes['showButtonEdit'].currentValue;
|
|
9133
8634
|
}
|
|
9134
8635
|
}
|
|
9135
8636
|
createFormGroup() {
|
|
@@ -9144,96 +8645,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9144
8645
|
ngAfterViewInit() {
|
|
9145
8646
|
this.cd.detectChanges();
|
|
9146
8647
|
}
|
|
9147
|
-
emitFormValidity() {
|
|
9148
|
-
const allValid = Object.values(this.formGroupByRow).every(fg => {
|
|
9149
|
-
fg.updateValueAndValidity();
|
|
9150
|
-
return fg.valid;
|
|
9151
|
-
});
|
|
9152
|
-
this.isValidChangeForm.emit(allValid);
|
|
9153
|
-
}
|
|
9154
|
-
filterPixKeyType(event) {
|
|
9155
|
-
const query = event.query;
|
|
9156
|
-
this.service.enumQuery().subscribe((response) => {
|
|
9157
|
-
const pixKeyTypeEnum = response.results.find((result) => result.enumName === 'PixKeyType');
|
|
9158
|
-
if (pixKeyTypeEnum) {
|
|
9159
|
-
this.suggestions = pixKeyTypeEnum.items.filter((item) => item.value.toLowerCase().includes(query.toLowerCase()));
|
|
9160
|
-
}
|
|
9161
|
-
else {
|
|
9162
|
-
this.suggestions = [];
|
|
9163
|
-
}
|
|
9164
|
-
});
|
|
9165
|
-
}
|
|
9166
|
-
createPixRowFormGroup() {
|
|
9167
|
-
return this.formBuilder.group({
|
|
9168
|
-
pixKeyType: [null, Validators.required],
|
|
9169
|
-
pixKey: [null],
|
|
9170
|
-
percentage: [0, Validators.compose([
|
|
9171
|
-
...this.initialValidatorOfPercentage,
|
|
9172
|
-
Validators.max(this.maxValuePercentage),
|
|
9173
|
-
])]
|
|
9174
|
-
});
|
|
9175
|
-
}
|
|
9176
|
-
onPixKeyInput(event, index) {
|
|
9177
|
-
const inputValue = event.target.value;
|
|
9178
|
-
const inputRawValue = inputValue.replace(/\D/g, '');
|
|
9179
|
-
const form = this.formGroupByRow[index];
|
|
9180
|
-
const pixKeyControl = form.get('pixKey');
|
|
9181
|
-
if (pixKeyControl) {
|
|
9182
|
-
pixKeyControl.setValue(inputRawValue, { emitEvent: false });
|
|
9183
|
-
pixKeyControl.markAsDirty();
|
|
9184
|
-
pixKeyControl.updateValueAndValidity();
|
|
9185
|
-
}
|
|
9186
|
-
this.setPixKeyValidators(true, form);
|
|
9187
|
-
this.emitFormValidity();
|
|
9188
|
-
}
|
|
9189
|
-
onBlurPixCpfAndCnpj(index) {
|
|
9190
|
-
const form = this.formGroupByRow[index];
|
|
9191
|
-
const pixKeyControl = form.get('pixKey');
|
|
9192
|
-
const pixKeyTypeControl = form.get('pixKeyType');
|
|
9193
|
-
if (!pixKeyControl || !pixKeyTypeControl)
|
|
9194
|
-
return;
|
|
9195
|
-
const currentValue = pixKeyControl.value;
|
|
9196
|
-
const pixKeyType = pixKeyTypeControl.value.key;
|
|
9197
|
-
const rawValue = (currentValue || '').replace(/\D/g, '');
|
|
9198
|
-
pixKeyControl.setValue(rawValue, { emitEvent: false });
|
|
9199
|
-
if (pixKeyControl.valid) {
|
|
9200
|
-
form.patchValue({
|
|
9201
|
-
pixKeyFormatted: FormatUtilsService.getFormattedSubscriptionNumber(rawValue, pixKeyType)
|
|
9202
|
-
});
|
|
9203
|
-
}
|
|
9204
|
-
this.emitFormValidity();
|
|
9205
|
-
}
|
|
9206
|
-
getFormattedPixKey(type, value) {
|
|
9207
|
-
return FormatUtilsService.getFormattedSubscriptionNumber(value, type);
|
|
9208
|
-
}
|
|
9209
|
-
syncPixDataToParentForm() {
|
|
9210
|
-
if (!this.isEditModeForSave)
|
|
9211
|
-
return;
|
|
9212
|
-
const values = Object.values(this.formGroupByRow).map(fg => {
|
|
9213
|
-
const value = fg.getRawValue();
|
|
9214
|
-
const pixKeyType = value.pixKeyType.key;
|
|
9215
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9216
|
-
value.pixKey = (value.pixKey || '').replace(/[.\-\/]/g, '');
|
|
9217
|
-
}
|
|
9218
|
-
else if (pixKeyType === 'TELEPHONE') {
|
|
9219
|
-
value.pixKey = (value.pixKey || '').replace(/[()\s\-]/g, '');
|
|
9220
|
-
}
|
|
9221
|
-
return value;
|
|
9222
|
-
});
|
|
9223
|
-
this.formGroup
|
|
9224
|
-
.get(this.fieldFormGroup)
|
|
9225
|
-
.get('historicalPixAccountList')
|
|
9226
|
-
.setValue(values);
|
|
9227
|
-
this.emitFormValidity();
|
|
9228
|
-
}
|
|
9229
|
-
syncResetPixFormToParent() {
|
|
9230
|
-
this.formGroupByRow = {};
|
|
9231
|
-
this.historicalPixAccountList.reset();
|
|
9232
|
-
this.historicalPixAccountList.get('historicalPixAccountList').setValue([]);
|
|
9233
|
-
if (this.addExistentHistoricData.length) {
|
|
9234
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9235
|
-
}
|
|
9236
|
-
}
|
|
9237
8648
|
onLazyLoad(event) {
|
|
9238
8649
|
const first = event && event.first ? event.first : 0;
|
|
9239
8650
|
const rows = event && event.rows ? event.rows : this.recordByRow;
|
|
@@ -9260,7 +8671,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9260
8671
|
this.refreshCssInIE11();
|
|
9261
8672
|
}
|
|
9262
8673
|
this.loading = false;
|
|
9263
|
-
this.cd.detectChanges();
|
|
9264
8674
|
}
|
|
9265
8675
|
/**
|
|
9266
8676
|
* Um Bug de CSS que acontece nas linhas da tabela, que resolve só atualizando qualquer parte do CSS da pagina.
|
|
@@ -9276,60 +8686,14 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9276
8686
|
}
|
|
9277
8687
|
add() {
|
|
9278
8688
|
this.pixAccountItemInput = {};
|
|
9279
|
-
this.visible = true;
|
|
9280
|
-
}
|
|
9281
|
-
addPix() {
|
|
9282
|
-
const newItem = {
|
|
9283
|
-
pixKeyType: {},
|
|
9284
|
-
pixKey: '',
|
|
9285
|
-
percentage: 0
|
|
9286
|
-
};
|
|
9287
|
-
const index = this.addExistentHistoricData.length;
|
|
9288
|
-
this.addExistentHistoricData = [
|
|
9289
|
-
...this.addExistentHistoricData,
|
|
9290
|
-
newItem
|
|
9291
|
-
];
|
|
9292
|
-
this.formGroupByRow[index] = this.createPixRowFormGroup();
|
|
9293
|
-
this.setValidatorsAccordingList(this.addExistentHistoricData, index, true);
|
|
9294
|
-
this.emitFormValidity();
|
|
9295
|
-
}
|
|
9296
|
-
deletePix(index) {
|
|
9297
|
-
this.addExistentHistoricData = this.addExistentHistoricData.filter((_, i) => i !== index);
|
|
9298
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9299
|
-
this.emitFormValidity();
|
|
9300
|
-
}
|
|
9301
|
-
rebuildFormGroupMap(data) {
|
|
9302
|
-
this.formGroupByRow = {};
|
|
9303
|
-
data.forEach((item, index) => {
|
|
9304
|
-
const form = this.createPixRowFormGroup();
|
|
9305
|
-
const pixKeyType = item.pixKeyType.key;
|
|
9306
|
-
const pixKeyRaw = item.pixKey;
|
|
9307
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9308
|
-
item.pixKey = FormatUtilsService.getFormattedSubscriptionNumber(pixKeyRaw, pixKeyType);
|
|
9309
|
-
}
|
|
9310
|
-
if (pixKeyType === 'TELEPHONE') {
|
|
9311
|
-
item.pixKey = FormatUtilsService.getFormattedTelephoneNumber(pixKeyRaw);
|
|
9312
|
-
}
|
|
9313
|
-
form.patchValue(item);
|
|
9314
|
-
this.formGroupByRow[index] = form;
|
|
9315
|
-
this.setValidatorsAccordingList(data, index, this.isEditMode);
|
|
9316
|
-
});
|
|
9317
|
-
this.emitFormValidity();
|
|
9318
|
-
}
|
|
9319
|
-
onPixKeyTypeChange(item, index) {
|
|
9320
|
-
const form = this.formGroupByRow[index];
|
|
9321
|
-
this.onChangePixKeyType(item, form);
|
|
9322
|
-
this.addExistentHistoricData[index].pixKey = '';
|
|
9323
|
-
setTimeout(() => {
|
|
9324
|
-
if (this.dataListPix.editingCell) {
|
|
9325
|
-
this.dataListPix.editingCell = null;
|
|
9326
|
-
}
|
|
9327
|
-
});
|
|
9328
|
-
this.cd.detectChanges();
|
|
8689
|
+
this.visible = true;
|
|
9329
8690
|
}
|
|
9330
|
-
|
|
9331
|
-
|
|
9332
|
-
|
|
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
|
+
});
|
|
9333
8697
|
}
|
|
9334
8698
|
deleteAnnuityItem(index) {
|
|
9335
8699
|
let newlist = [...this.getHistoricalPixAccountList()];
|
|
@@ -9391,15 +8755,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9391
8755
|
this.msgTotalLimitByPercentage = null;
|
|
9392
8756
|
}
|
|
9393
8757
|
}
|
|
9394
|
-
onSyncValue(field, index) {
|
|
9395
|
-
if (this.formGroupByRow &&
|
|
9396
|
-
this.formGroupByRow[index] &&
|
|
9397
|
-
this.formGroupByRow[index].get(field)) {
|
|
9398
|
-
const value = this.formGroupByRow[index].get(field).value;
|
|
9399
|
-
this.addExistentHistoricData[index][field] = value;
|
|
9400
|
-
}
|
|
9401
|
-
this.emitFormValidity();
|
|
9402
|
-
}
|
|
9403
8758
|
get scopedActions() {
|
|
9404
8759
|
return this.actions.bind(this);
|
|
9405
8760
|
}
|
|
@@ -9436,15 +8791,12 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9436
8791
|
get visible() {
|
|
9437
8792
|
return this._visible;
|
|
9438
8793
|
}
|
|
9439
|
-
set paramsForm(value) {
|
|
9440
|
-
this._paramsForm = value;
|
|
9441
|
-
}
|
|
9442
|
-
set defaultCpfNumber(value) {
|
|
9443
|
-
this._defaultCpfNumber = value;
|
|
9444
|
-
}
|
|
9445
8794
|
set visible(value) {
|
|
9446
8795
|
this._visible = value;
|
|
9447
8796
|
this.visibleChange.emit(this.visible);
|
|
8797
|
+
if (!value) {
|
|
8798
|
+
this.pixAccountItemInput = {};
|
|
8799
|
+
}
|
|
9448
8800
|
}
|
|
9449
8801
|
close() {
|
|
9450
8802
|
this.visible = false;
|
|
@@ -9470,134 +8822,298 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9470
8822
|
get isAllowToEditHistorical() {
|
|
9471
8823
|
return (this.permission["editar"]);
|
|
9472
8824
|
}
|
|
9473
|
-
get isAllowToViewHistorical() {
|
|
9474
|
-
return (this.permission["visualizar"]);
|
|
8825
|
+
get isAllowToViewHistorical() {
|
|
8826
|
+
return (this.permission["visualizar"]);
|
|
8827
|
+
}
|
|
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 };
|
|
9475
9083
|
}
|
|
9476
|
-
}
|
|
9477
|
-
HistoricalPixAccountComponent.ctorParameters = () => [
|
|
9478
|
-
{ type: TranslateService },
|
|
9479
|
-
{ type: ChangeDetectorRef },
|
|
9480
|
-
{ type: FormBuilder },
|
|
9481
|
-
{ type: SharedStateService },
|
|
9482
|
-
{ type: HistoricalPixAccountService }
|
|
9483
|
-
];
|
|
9484
|
-
__decorate([
|
|
9485
|
-
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
9486
|
-
], HistoricalPixAccountComponent.prototype, "customFields", void 0);
|
|
9487
|
-
__decorate([
|
|
9488
|
-
ViewChild('dataListPix', { static: false })
|
|
9489
|
-
], HistoricalPixAccountComponent.prototype, "dataListPix", void 0);
|
|
9490
|
-
__decorate([
|
|
9491
|
-
Input()
|
|
9492
|
-
], HistoricalPixAccountComponent.prototype, "formGroup", void 0);
|
|
9493
|
-
__decorate([
|
|
9494
|
-
Input()
|
|
9495
|
-
], HistoricalPixAccountComponent.prototype, "fieldFormGroup", void 0);
|
|
9496
|
-
__decorate([
|
|
9497
|
-
Input()
|
|
9498
|
-
], HistoricalPixAccountComponent.prototype, "_dateChange", void 0);
|
|
9499
|
-
__decorate([
|
|
9500
|
-
Input()
|
|
9501
|
-
], HistoricalPixAccountComponent.prototype, "_displayDateChange", void 0);
|
|
9502
|
-
__decorate([
|
|
9503
|
-
Input()
|
|
9504
|
-
], HistoricalPixAccountComponent.prototype, "recordByRow", void 0);
|
|
9505
|
-
__decorate([
|
|
9506
|
-
Input()
|
|
9507
|
-
], HistoricalPixAccountComponent.prototype, "showDateChange", void 0);
|
|
9508
|
-
__decorate([
|
|
9509
|
-
Input()
|
|
9510
|
-
], HistoricalPixAccountComponent.prototype, "msgTooltipAdd", void 0);
|
|
9511
|
-
__decorate([
|
|
9512
|
-
Input()
|
|
9513
|
-
], HistoricalPixAccountComponent.prototype, "isEditMode", void 0);
|
|
9514
|
-
__decorate([
|
|
9515
|
-
Input()
|
|
9516
|
-
], HistoricalPixAccountComponent.prototype, "isViewMode", void 0);
|
|
9517
|
-
__decorate([
|
|
9518
|
-
Input()
|
|
9519
|
-
], HistoricalPixAccountComponent.prototype, "currency", void 0);
|
|
9520
|
-
__decorate([
|
|
9521
|
-
Input()
|
|
9522
|
-
], HistoricalPixAccountComponent.prototype, "customEntity", void 0);
|
|
9523
|
-
__decorate([
|
|
9524
|
-
Input()
|
|
9525
|
-
], HistoricalPixAccountComponent.prototype, "customService", void 0);
|
|
9526
|
-
__decorate([
|
|
9527
|
-
Input()
|
|
9528
|
-
], HistoricalPixAccountComponent.prototype, "withSideBar", void 0);
|
|
9529
|
-
__decorate([
|
|
9530
|
-
Input()
|
|
9531
|
-
], HistoricalPixAccountComponent.prototype, "permission", void 0);
|
|
9532
|
-
__decorate([
|
|
9533
|
-
Input()
|
|
9534
|
-
], HistoricalPixAccountComponent.prototype, "listDataReciever", void 0);
|
|
9535
|
-
__decorate([
|
|
9536
|
-
Input()
|
|
9537
|
-
], HistoricalPixAccountComponent.prototype, "addExistentHistoricData", void 0);
|
|
9538
|
-
__decorate([
|
|
9539
|
-
Input()
|
|
9540
|
-
], HistoricalPixAccountComponent.prototype, "getListPixAccount", void 0);
|
|
9541
|
-
__decorate([
|
|
9542
|
-
Input()
|
|
9543
|
-
], HistoricalPixAccountComponent.prototype, "isEditModeForSave", void 0);
|
|
9544
|
-
__decorate([
|
|
9545
|
-
Output()
|
|
9546
|
-
], HistoricalPixAccountComponent.prototype, "isViewModeActive", void 0);
|
|
9547
|
-
__decorate([
|
|
9548
|
-
Output()
|
|
9549
|
-
], HistoricalPixAccountComponent.prototype, "isEditModeActive", void 0);
|
|
9550
|
-
__decorate([
|
|
9551
|
-
Output()
|
|
9552
|
-
], HistoricalPixAccountComponent.prototype, "isDeleteModeActive", void 0);
|
|
9553
|
-
__decorate([
|
|
9554
|
-
Output()
|
|
9555
|
-
], HistoricalPixAccountComponent.prototype, "isValidChangeForm", void 0);
|
|
9556
|
-
__decorate([
|
|
9557
|
-
Input()
|
|
9558
|
-
], HistoricalPixAccountComponent.prototype, "dateChange", null);
|
|
9559
|
-
__decorate([
|
|
9560
|
-
Input()
|
|
9561
|
-
], HistoricalPixAccountComponent.prototype, "displayDateChange", null);
|
|
9562
|
-
__decorate([
|
|
9563
|
-
Input()
|
|
9564
|
-
], HistoricalPixAccountComponent.prototype, "addListData", null);
|
|
9565
|
-
__decorate([
|
|
9566
|
-
Input()
|
|
9567
|
-
], HistoricalPixAccountComponent.prototype, "visible", null);
|
|
9568
|
-
__decorate([
|
|
9569
|
-
Input()
|
|
9570
|
-
], HistoricalPixAccountComponent.prototype, "paramsForm", null);
|
|
9571
|
-
__decorate([
|
|
9572
|
-
Input()
|
|
9573
|
-
], HistoricalPixAccountComponent.prototype, "defaultCpfNumber", null);
|
|
9574
|
-
HistoricalPixAccountComponent = __decorate([
|
|
9575
|
-
Component({
|
|
9576
|
-
// tslint:disable-next-line:component-selector
|
|
9577
|
-
selector: "c-historical-pix-account",
|
|
9578
|
-
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\">\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=\"!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=\"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 id=\"btn-save\" label=\"Adicionar\" priority=\"primary\" (onClick)=\"addPix()\"></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\" [pSortableColumn]=\"col.orderBy\">\n {{ col.label }}\n <p-sortIcon *ngIf=\"col.orderBy\" [field]=\"col.orderBy\"></p-sortIcon>\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=\"Selecione o tipo de chave\"\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 }}%\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Bot\u00E3o de excluir -->\n <td>\n <s-button id=\"btn-delete\" label=\"Excluir\" priority=\"default\" (onClick)=\"deletePix(rowIndex)\"></s-button>\n </td>\n </tr>\n </ng-container>\n </ng-template>\n </p-table>\n</div>\n",
|
|
9579
|
-
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}"]
|
|
9580
|
-
})
|
|
9581
|
-
], HistoricalPixAccountComponent);
|
|
9084
|
+
}
|
|
9582
9085
|
|
|
9583
|
-
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
9584
|
-
constructor(formBuilder, cd
|
|
9585
|
-
|
|
9086
|
+
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent {
|
|
9087
|
+
constructor(formBuilder, cd) {
|
|
9088
|
+
this.formBuilder = formBuilder;
|
|
9586
9089
|
this.cd = cd;
|
|
9587
|
-
this.sharedStateService = sharedStateService;
|
|
9588
9090
|
this.withSideBar = true;
|
|
9589
9091
|
this.isEditMode = false;
|
|
9092
|
+
this.paramsForm = new FormGroup({});
|
|
9093
|
+
this.defaultCpfNumber = null;
|
|
9094
|
+
this.permitsEditBankAccountForm = false;
|
|
9590
9095
|
this.visibleChange = new EventEmitter();
|
|
9591
9096
|
this.pixAccountItemToList = new EventEmitter();
|
|
9592
9097
|
this.ngUnsubscribe = new Subject();
|
|
9098
|
+
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
9593
9099
|
this.labelBtnAdd = "hcm.payroll.employees_add";
|
|
9100
|
+
this.maxValuePercentage = 100.00;
|
|
9594
9101
|
this.visibleBtnSave = true;
|
|
9595
9102
|
this.isView = false;
|
|
9596
9103
|
this.isShowPixKeyFieldValidatorMessage = false;
|
|
9597
|
-
this.
|
|
9104
|
+
this.createFormGroup();
|
|
9598
9105
|
this.registerSubjects();
|
|
9599
9106
|
}
|
|
9600
|
-
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
|
+
}
|
|
9601
9117
|
ngAfterViewInit() {
|
|
9602
9118
|
this.cd.detectChanges();
|
|
9603
9119
|
}
|
|
@@ -9605,7 +9121,39 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9605
9121
|
this.ngUnsubscribe.next(true);
|
|
9606
9122
|
this.ngUnsubscribe.unsubscribe();
|
|
9607
9123
|
}
|
|
9608
|
-
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
|
+
}
|
|
9609
9157
|
get visible() {
|
|
9610
9158
|
return this._visible;
|
|
9611
9159
|
}
|
|
@@ -9636,8 +9184,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9636
9184
|
}
|
|
9637
9185
|
formatPixKeyTelephoneNumber() {
|
|
9638
9186
|
if (this.pixKeyType === "TELEPHONE") {
|
|
9639
|
-
|
|
9640
|
-
pixKeyCtrl.setValue(FormatUtilsService.getFormattedTelephoneNumber(pixKeyCtrl.value));
|
|
9187
|
+
this.pixAccountFormGroup.get("pixKey").setValue(FormatUtilsService.getFormattedTelephoneNumber(this.pixAccountFormGroup.get("pixKey").value));
|
|
9641
9188
|
}
|
|
9642
9189
|
}
|
|
9643
9190
|
convertDTOToShowWithCustomFields(data) {
|
|
@@ -9649,14 +9196,14 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9649
9196
|
this.visibleBtnSave = isEditMode;
|
|
9650
9197
|
if (this.pixAccountFormGroup.get("pixKeyType").value) {
|
|
9651
9198
|
this.pixKeyType = this.pixAccountFormGroup.get("pixKeyType").value.key;
|
|
9652
|
-
this.setPixKeyValidators(isEditMode
|
|
9199
|
+
this.setPixKeyValidators(isEditMode);
|
|
9653
9200
|
this.formatPixKeyTelephoneNumber();
|
|
9654
9201
|
}
|
|
9655
9202
|
configEnabledFields(this.pixAccountFormGroup, isEditMode, [
|
|
9656
9203
|
"pixKeyType",
|
|
9657
9204
|
"pixKey",
|
|
9658
9205
|
"percentage",
|
|
9659
|
-
"customFields"
|
|
9206
|
+
"customFields",
|
|
9660
9207
|
], []);
|
|
9661
9208
|
}
|
|
9662
9209
|
close() {
|
|
@@ -9670,7 +9217,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9670
9217
|
if (this.employeeId) {
|
|
9671
9218
|
this.pixAccountFormGroup.get("employee").setValue({
|
|
9672
9219
|
tableId: this.employeeId,
|
|
9673
|
-
name: ""
|
|
9220
|
+
name: "",
|
|
9674
9221
|
});
|
|
9675
9222
|
}
|
|
9676
9223
|
this.pixAccountItemToList.emit(this.pixAccountFormGroup.getRawValue());
|
|
@@ -9694,9 +9241,13 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9694
9241
|
return {
|
|
9695
9242
|
prefix: "",
|
|
9696
9243
|
thousands: this.currency.thousandsSeparator,
|
|
9697
|
-
decimal: this.currency.decimalSeparator
|
|
9244
|
+
decimal: this.currency.decimalSeparator,
|
|
9698
9245
|
};
|
|
9699
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
|
+
*/
|
|
9700
9251
|
set getListPixAccount(pixAccountList) {
|
|
9701
9252
|
if (pixAccountList) {
|
|
9702
9253
|
this.setValidatorsAccordingList(pixAccountList, null, false);
|
|
@@ -9705,23 +9256,143 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9705
9256
|
this.resetForm();
|
|
9706
9257
|
}
|
|
9707
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
|
+
}
|
|
9708
9337
|
set isViewMode(condition) {
|
|
9709
9338
|
this.isView = !!(condition && !this.withSideBar);
|
|
9710
9339
|
this.configEnableFields(!this.isView);
|
|
9711
9340
|
if (!this.isView)
|
|
9712
9341
|
this.resetForm();
|
|
9713
9342
|
}
|
|
9714
|
-
|
|
9715
|
-
|
|
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
|
+
}
|
|
9716
9372
|
}
|
|
9717
|
-
|
|
9718
|
-
|
|
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
|
+
};
|
|
9719
9391
|
}
|
|
9720
9392
|
};
|
|
9721
9393
|
HistoricalPixAccountFormComponent.ctorParameters = () => [
|
|
9722
9394
|
{ type: FormBuilder },
|
|
9723
|
-
{ type: ChangeDetectorRef }
|
|
9724
|
-
{ type: SharedStateService }
|
|
9395
|
+
{ type: ChangeDetectorRef }
|
|
9725
9396
|
];
|
|
9726
9397
|
__decorate([
|
|
9727
9398
|
ViewChild(CustomFieldsComponent$1, { static: true })
|
|
@@ -9741,6 +9412,15 @@ __decorate([
|
|
|
9741
9412
|
__decorate([
|
|
9742
9413
|
Input()
|
|
9743
9414
|
], HistoricalPixAccountFormComponent.prototype, "isEditMode", void 0);
|
|
9415
|
+
__decorate([
|
|
9416
|
+
Input()
|
|
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);
|
|
9744
9424
|
__decorate([
|
|
9745
9425
|
Output()
|
|
9746
9426
|
], HistoricalPixAccountFormComponent.prototype, "visibleChange", void 0);
|
|
@@ -9759,20 +9439,29 @@ __decorate([
|
|
|
9759
9439
|
__decorate([
|
|
9760
9440
|
Input()
|
|
9761
9441
|
], HistoricalPixAccountFormComponent.prototype, "isViewMode", null);
|
|
9762
|
-
__decorate([
|
|
9763
|
-
Input()
|
|
9764
|
-
], HistoricalPixAccountFormComponent.prototype, "paramsForm", null);
|
|
9765
|
-
__decorate([
|
|
9766
|
-
Input()
|
|
9767
|
-
], HistoricalPixAccountFormComponent.prototype, "defaultCpfNumber", null);
|
|
9768
9442
|
HistoricalPixAccountFormComponent = __decorate([
|
|
9769
9443
|
Component({
|
|
9770
9444
|
selector: "pix-account",
|
|
9771
|
-
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",
|
|
9772
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}"]
|
|
9773
9447
|
})
|
|
9774
9448
|
], HistoricalPixAccountFormComponent);
|
|
9775
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
|
+
|
|
9776
9465
|
let HistoricalPixAccountModule = class HistoricalPixAccountModule {
|
|
9777
9466
|
};
|
|
9778
9467
|
HistoricalPixAccountModule = __decorate([
|
|
@@ -9800,8 +9489,6 @@ HistoricalPixAccountModule = __decorate([
|
|
|
9800
9489
|
CustomFieldsModule$1,
|
|
9801
9490
|
PanelModule,
|
|
9802
9491
|
InputMaskModule,
|
|
9803
|
-
DropdownModule,
|
|
9804
|
-
TabViewModule,
|
|
9805
9492
|
],
|
|
9806
9493
|
declarations: [HistoricalPixAccountComponent, HistoricalPixAccountFormComponent],
|
|
9807
9494
|
providers: [HistoricalPixAccountService, ConfirmationService],
|
|
@@ -9840,7 +9527,7 @@ HistoricalPixAccountListService = __decorate([
|
|
|
9840
9527
|
|
|
9841
9528
|
const moment$e = moment_;
|
|
9842
9529
|
let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent {
|
|
9843
|
-
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService
|
|
9530
|
+
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService) {
|
|
9844
9531
|
this.confirmationService = confirmationService;
|
|
9845
9532
|
this.translateService = translateService;
|
|
9846
9533
|
this.activatedRoute = activatedRoute;
|
|
@@ -9848,14 +9535,13 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9848
9535
|
this.router = router;
|
|
9849
9536
|
this.messageService = messageService;
|
|
9850
9537
|
this.historicalPixAccountListService = historicalPixAccountListService;
|
|
9851
|
-
this.sharedStateService = sharedStateService;
|
|
9852
9538
|
this.endPoint = "hcm/payroll/queries/historicalEmployeePixQuery";
|
|
9853
9539
|
this.keyPayload = "historicalEmployeePix";
|
|
9854
9540
|
this.withSidebar = true;
|
|
9855
9541
|
this.isOnlyView = new EventEmitter();
|
|
9856
9542
|
this.isOnlyEdit = new EventEmitter();
|
|
9857
9543
|
this.enableView = new EventEmitter();
|
|
9858
|
-
this.
|
|
9544
|
+
this.enableEdit = new EventEmitter();
|
|
9859
9545
|
this.ngUnsubscribe = new Subject();
|
|
9860
9546
|
this.loading = true;
|
|
9861
9547
|
this.columns = [
|
|
@@ -9875,7 +9561,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9875
9561
|
ngOnDestroy() {
|
|
9876
9562
|
this.ngUnsubscribe.next();
|
|
9877
9563
|
this.ngUnsubscribe.complete();
|
|
9878
|
-
this.unsubscribe();
|
|
9879
9564
|
}
|
|
9880
9565
|
ngAfterViewInit() {
|
|
9881
9566
|
this.cd.detectChanges();
|
|
@@ -9893,9 +9578,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9893
9578
|
label: this.translateService.instant("hcm.payroll.employees_image_cropper_view"),
|
|
9894
9579
|
command: () => {
|
|
9895
9580
|
if (this.isAllowToViewHistorical) {
|
|
9896
|
-
this.sharedStateService.setHideField(true);
|
|
9897
|
-
this.sharedStateService.setShowButton(false);
|
|
9898
|
-
this.sharedStateService.setShowEditMode(false);
|
|
9899
9581
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9900
9582
|
if (this.withSidebar) {
|
|
9901
9583
|
this.isOnlyView.emit(true);
|
|
@@ -9904,7 +9586,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9904
9586
|
});
|
|
9905
9587
|
}
|
|
9906
9588
|
else {
|
|
9907
|
-
this.sharedStateService.setSaveButton(false);
|
|
9908
9589
|
this.enableView.emit(dateChange);
|
|
9909
9590
|
}
|
|
9910
9591
|
}
|
|
@@ -9917,18 +9598,16 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9917
9598
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9918
9599
|
command: () => {
|
|
9919
9600
|
if (this.isAllowToEditHistorical) {
|
|
9920
|
-
this.sharedStateService.setHideField(true);
|
|
9921
|
-
this.sharedStateService.setShowButton(false);
|
|
9922
|
-
this.sharedStateService.setShowEditMode(true);
|
|
9923
9601
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9924
9602
|
if (this.withSidebar) {
|
|
9603
|
+
this.isOnlyView.emit(false);
|
|
9604
|
+
this.isOnlyEdit.emit(true);
|
|
9925
9605
|
this.router.navigate([`historical-pix-account/${dateChange}`], {
|
|
9926
9606
|
relativeTo: this.activatedRoute,
|
|
9927
9607
|
});
|
|
9928
9608
|
}
|
|
9929
9609
|
else {
|
|
9930
|
-
this.
|
|
9931
|
-
this.enableView.emit(dateChange);
|
|
9610
|
+
this.enableEdit.emit(dateChange);
|
|
9932
9611
|
}
|
|
9933
9612
|
}
|
|
9934
9613
|
else {
|
|
@@ -10012,19 +9691,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
10012
9691
|
this.lastRecord = payload[0];
|
|
10013
9692
|
}
|
|
10014
9693
|
}
|
|
10015
|
-
unsubscribe() {
|
|
10016
|
-
if (this._subscription) {
|
|
10017
|
-
this._subscription.unsubscribe();
|
|
10018
|
-
}
|
|
10019
|
-
}
|
|
10020
|
-
set hideFieldsOnAdd$(subject) {
|
|
10021
|
-
this.unsubscribe();
|
|
10022
|
-
if (subject) {
|
|
10023
|
-
this._subscription = subject.subscribe((value) => {
|
|
10024
|
-
this.sharedStateService.setHideField(value);
|
|
10025
|
-
});
|
|
10026
|
-
}
|
|
10027
|
-
}
|
|
10028
9694
|
get isAllowToAddHistorical() {
|
|
10029
9695
|
return (this.permission["incluir"]);
|
|
10030
9696
|
}
|
|
@@ -10054,8 +9720,7 @@ HistoricalPixAccountListComponent.ctorParameters = () => [
|
|
|
10054
9720
|
{ type: ChangeDetectorRef },
|
|
10055
9721
|
{ type: Router },
|
|
10056
9722
|
{ type: MessageService },
|
|
10057
|
-
{ type: HistoricalPixAccountListService }
|
|
10058
|
-
{ type: SharedStateService }
|
|
9723
|
+
{ type: HistoricalPixAccountListService }
|
|
10059
9724
|
];
|
|
10060
9725
|
__decorate([
|
|
10061
9726
|
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
@@ -10081,9 +9746,6 @@ __decorate([
|
|
|
10081
9746
|
__decorate([
|
|
10082
9747
|
Input()
|
|
10083
9748
|
], HistoricalPixAccountListComponent.prototype, "withSidebar", void 0);
|
|
10084
|
-
__decorate([
|
|
10085
|
-
Input()
|
|
10086
|
-
], HistoricalPixAccountListComponent.prototype, "hideField", void 0);
|
|
10087
9749
|
__decorate([
|
|
10088
9750
|
Output()
|
|
10089
9751
|
], HistoricalPixAccountListComponent.prototype, "isOnlyView", void 0);
|
|
@@ -10095,10 +9757,7 @@ __decorate([
|
|
|
10095
9757
|
], HistoricalPixAccountListComponent.prototype, "enableView", void 0);
|
|
10096
9758
|
__decorate([
|
|
10097
9759
|
Output()
|
|
10098
|
-
], HistoricalPixAccountListComponent.prototype, "
|
|
10099
|
-
__decorate([
|
|
10100
|
-
Input()
|
|
10101
|
-
], HistoricalPixAccountListComponent.prototype, "hideFieldsOnAdd$", null);
|
|
9760
|
+
], HistoricalPixAccountListComponent.prototype, "enableEdit", void 0);
|
|
10102
9761
|
__decorate([
|
|
10103
9762
|
Input()
|
|
10104
9763
|
], HistoricalPixAccountListComponent.prototype, "reloadList", null);
|
|
@@ -10143,5 +9802,5 @@ HistoricalPixAccountListModule = __decorate([
|
|
|
10143
9802
|
* Generated bundle index. Do not edit.
|
|
10144
9803
|
*/
|
|
10145
9804
|
|
|
10146
|
-
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 };
|
|
10147
9806
|
//# sourceMappingURL=senior-gestao-pessoas-payroll-core.js.map
|