@senior-gestao-pessoas/payroll-core 9.5.0-fbdcba79-4ef6-4255-9628-f5e2e790112a → 9.5.0-feature-hcmgdp-11492-21838e72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js +465 -916
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js.map +1 -1
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js +1 -16
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js.map +1 -1
- package/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.d.ts +43 -10
- package/components/historical-pix-account/historical-pix-account.component.d.ts +10 -40
- package/components/historical-pix-account/historical-pix-account.service.d.ts +0 -1
- package/components/historical-pix-account-list/historical-pix-account-list.component.d.ts +2 -9
- package/components/utils/format-utils/format-utils.service.d.ts +3 -30
- package/esm2015/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +202 -34
- package/esm2015/components/historical-pix-account/historical-pix-account.component.js +29 -262
- 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 +6 -44
- package/esm2015/components/utils/format-utils/format-utils.service.js +5 -88
- package/esm2015/public_api.js +1 -2
- package/esm2015/senior-gestao-pessoas-payroll-core.js +2 -3
- package/esm5/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +217 -58
- package/esm5/components/historical-pix-account/historical-pix-account.component.js +58 -304
- 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 +6 -49
- 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 +500 -911
- package/fesm2015/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/fesm5/senior-gestao-pessoas-payroll-core.js +462 -912
- 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 -24
- 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 -54
- 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 -55
|
@@ -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,458 +8513,31 @@ class FormatUtilsService {
|
|
|
8580
8513
|
event.target.value = FormatUtilsService.getFormattedTelephoneNumber(telephoneNumber);
|
|
8581
8514
|
}
|
|
8582
8515
|
/**
|
|
8583
|
-
*
|
|
8584
|
-
* @param
|
|
8585
|
-
*/
|
|
8586
|
-
static formatCpfInputEvent(event) {
|
|
8587
|
-
let cpf = event.target.value;
|
|
8588
|
-
// Permite apagar nos pontos sensíveis
|
|
8589
|
-
if (event.keyCode === 8 && (cpf.length === 4 || cpf.length === 8 || cpf.length === 12)) {
|
|
8590
|
-
return;
|
|
8591
|
-
}
|
|
8592
|
-
event.target.value = FormatUtilsService.getFormattedCpfEdited(cpf);
|
|
8593
|
-
}
|
|
8594
|
-
/**
|
|
8595
|
-
* Formata o campo de input de CNPJ em tempo real.
|
|
8596
|
-
* @param event Evento do input
|
|
8597
|
-
*/
|
|
8598
|
-
static formatCnpjInputEvent(event) {
|
|
8599
|
-
let cnpj = event.target.value;
|
|
8600
|
-
// Permite apagar nos pontos sensíveis
|
|
8601
|
-
if (event.keyCode === 8 && (cnpj.length === 3 || cnpj.length === 7 || cnpj.length === 11 || cnpj.length === 16)) {
|
|
8602
|
-
return;
|
|
8603
|
-
}
|
|
8604
|
-
event.target.value = FormatUtilsService.getFormattedCnpjEdited(cnpj);
|
|
8605
|
-
}
|
|
8606
|
-
}
|
|
8607
|
-
|
|
8608
|
-
let SharedStateService = class SharedStateService {
|
|
8609
|
-
constructor() {
|
|
8610
|
-
this.hideFieldSubject = new BehaviorSubject(true);
|
|
8611
|
-
this.hideField$ = this.hideFieldSubject.asObservable();
|
|
8612
|
-
this.showButtonSubject = new BehaviorSubject(true);
|
|
8613
|
-
this.showButton$ = this.showButtonSubject.asObservable();
|
|
8614
|
-
this.saveButtonSubject = new BehaviorSubject(true);
|
|
8615
|
-
this.saveButton$ = this.saveButtonSubject.asObservable();
|
|
8616
|
-
this.showEditMode = new BehaviorSubject(true);
|
|
8617
|
-
this.showEditMode$ = this.showEditMode.asObservable();
|
|
8618
|
-
this.activeValidatorsOnEditModalOpen = new Subject();
|
|
8619
|
-
this.activeValidatorsOnEditModalOpen$ = this.activeValidatorsOnEditModalOpen.asObservable();
|
|
8620
|
-
this.shouldReloadWindowOnlyEditMode = new BehaviorSubject(false);
|
|
8621
|
-
this.shouldReloadWindowOnlyEditMode$ = this.shouldReloadWindowOnlyEditMode.asObservable();
|
|
8622
|
-
this.hideBtnAddForViewMode = new BehaviorSubject(false);
|
|
8623
|
-
this.hideBtnAddForViewMode$ = this.hideBtnAddForViewMode.asObservable();
|
|
8624
|
-
}
|
|
8625
|
-
setHideField(value) {
|
|
8626
|
-
this.hideFieldSubject.next(value);
|
|
8627
|
-
}
|
|
8628
|
-
setShowButton(value) {
|
|
8629
|
-
this.showButtonSubject.next(value);
|
|
8630
|
-
}
|
|
8631
|
-
setSaveButton(value) {
|
|
8632
|
-
this.saveButtonSubject.next(value);
|
|
8633
|
-
}
|
|
8634
|
-
setShowEditMode(value) {
|
|
8635
|
-
this.showEditMode.next(value);
|
|
8636
|
-
}
|
|
8637
|
-
setShouldReloadWindowOnlyEditMode(value) {
|
|
8638
|
-
this.shouldReloadWindowOnlyEditMode.next(value);
|
|
8639
|
-
}
|
|
8640
|
-
triggerActiveValidatorsOnEditModalOpen() {
|
|
8641
|
-
this.activeValidatorsOnEditModalOpen.next();
|
|
8642
|
-
}
|
|
8643
|
-
setHideBtnAddForViewMode(value) {
|
|
8644
|
-
this.hideBtnAddForViewMode.next(value);
|
|
8645
|
-
}
|
|
8646
|
-
resetHideField() {
|
|
8647
|
-
this.hideFieldSubject.next(true);
|
|
8648
|
-
}
|
|
8649
|
-
};
|
|
8650
|
-
SharedStateService.ngInjectableDef = ɵɵdefineInjectable({ factory: function SharedStateService_Factory() { return new SharedStateService(); }, token: SharedStateService, providedIn: "root" });
|
|
8651
|
-
SharedStateService = __decorate([
|
|
8652
|
-
Injectable({
|
|
8653
|
-
providedIn: 'root',
|
|
8654
|
-
})
|
|
8655
|
-
], SharedStateService);
|
|
8656
|
-
|
|
8657
|
-
class GenericValidator {
|
|
8658
|
-
constructor() { }
|
|
8659
|
-
/**
|
|
8660
|
-
* Valida o CEI (Cadastro específico de INSS) digitado.
|
|
8661
|
-
*/
|
|
8662
|
-
static isValidCei(control) {
|
|
8663
|
-
const cei = control.value;
|
|
8664
|
-
if (!cei)
|
|
8665
|
-
return null;
|
|
8666
|
-
else if (cei.length != 11)
|
|
8667
|
-
return null;
|
|
8668
|
-
const multiplicadorBase = "3298765432";
|
|
8669
|
-
let total = 0;
|
|
8670
|
-
let resto = 0;
|
|
8671
|
-
let multiplicando = 0;
|
|
8672
|
-
let multiplicador = 0;
|
|
8673
|
-
if (cei.length !== 11 ||
|
|
8674
|
-
cei === "00000000000" ||
|
|
8675
|
-
cei === "11111111111" ||
|
|
8676
|
-
cei === "22222222222" ||
|
|
8677
|
-
cei === "33333333333" ||
|
|
8678
|
-
cei === "44444444444" ||
|
|
8679
|
-
cei === "55555555555" ||
|
|
8680
|
-
cei === "66666666666" ||
|
|
8681
|
-
cei === "77777777777" ||
|
|
8682
|
-
cei === "88888888888" ||
|
|
8683
|
-
cei === "99999999999")
|
|
8684
|
-
return { invalidCei: true };
|
|
8685
|
-
else {
|
|
8686
|
-
for (let i = 0; i < 10; i++) {
|
|
8687
|
-
multiplicando = parseInt(cei.substring(i, i + 1), 10);
|
|
8688
|
-
multiplicador = parseInt(multiplicadorBase.substring(i, i + 1), 10);
|
|
8689
|
-
total += multiplicando * multiplicador;
|
|
8690
|
-
}
|
|
8691
|
-
resto = 11 - (total % 11);
|
|
8692
|
-
resto = resto === 10 || resto === 11 ? 0 : resto;
|
|
8693
|
-
const digito = parseInt("" + cei.charAt(10), 10);
|
|
8694
|
-
return resto === digito ? null : { invalidCei: true };
|
|
8695
|
-
}
|
|
8696
|
-
}
|
|
8697
|
-
/**
|
|
8698
|
-
* Valida se o CPF é valido. Deve-se ser informado o cpf sem máscara.
|
|
8699
|
-
*/
|
|
8700
|
-
static isValidCpf(control) {
|
|
8701
|
-
const cpf = control.value;
|
|
8702
|
-
if (cpf) {
|
|
8703
|
-
let numbers, digits, sum, i, result, equalDigits;
|
|
8704
|
-
equalDigits = 1;
|
|
8705
|
-
if (cpf.length < 11) {
|
|
8706
|
-
return null;
|
|
8707
|
-
}
|
|
8708
|
-
for (i = 0; i < cpf.length - 1; i++) {
|
|
8709
|
-
if (cpf.charAt(i) !== cpf.charAt(i + 1)) {
|
|
8710
|
-
equalDigits = 0;
|
|
8711
|
-
break;
|
|
8712
|
-
}
|
|
8713
|
-
}
|
|
8714
|
-
if (!equalDigits) {
|
|
8715
|
-
numbers = cpf.substring(0, 9);
|
|
8716
|
-
digits = cpf.substring(9);
|
|
8717
|
-
sum = 0;
|
|
8718
|
-
for (i = 10; i > 1; i--) {
|
|
8719
|
-
sum += numbers.charAt(10 - i) * i;
|
|
8720
|
-
}
|
|
8721
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8722
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8723
|
-
return { cpfNotValid: true };
|
|
8724
|
-
}
|
|
8725
|
-
numbers = cpf.substring(0, 10);
|
|
8726
|
-
sum = 0;
|
|
8727
|
-
for (i = 11; i > 1; i--) {
|
|
8728
|
-
sum += numbers.charAt(11 - i) * i;
|
|
8729
|
-
}
|
|
8730
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8731
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8732
|
-
return { cpfNotValid: true };
|
|
8733
|
-
}
|
|
8734
|
-
return null;
|
|
8735
|
-
}
|
|
8736
|
-
else {
|
|
8737
|
-
return { cpfNotValid: true };
|
|
8738
|
-
}
|
|
8739
|
-
}
|
|
8740
|
-
return null;
|
|
8741
|
-
}
|
|
8742
|
-
/**
|
|
8743
|
-
* Valida se o CNPJ é valido. Deve-se ser informado o cpf sem máscara.
|
|
8744
|
-
*/
|
|
8745
|
-
static isValidCnpj(control) {
|
|
8746
|
-
let cnpj = control.value;
|
|
8747
|
-
if (cnpj) {
|
|
8748
|
-
let size, numbers, digits, sum, pos, result;
|
|
8749
|
-
cnpj = cnpj.replace(/[^\d]+/g, '');
|
|
8750
|
-
if (cnpj.length !== 14) {
|
|
8751
|
-
return null;
|
|
8752
|
-
}
|
|
8753
|
-
// Elimina CNPJs invalidos conhecidos
|
|
8754
|
-
if (cnpj === '00000000000000' ||
|
|
8755
|
-
cnpj === '11111111111111' ||
|
|
8756
|
-
cnpj === '22222222222222' ||
|
|
8757
|
-
cnpj === '33333333333333' ||
|
|
8758
|
-
cnpj === '44444444444444' ||
|
|
8759
|
-
cnpj === '55555555555555' ||
|
|
8760
|
-
cnpj === '66666666666666' ||
|
|
8761
|
-
cnpj === '77777777777777' ||
|
|
8762
|
-
cnpj === '88888888888888' ||
|
|
8763
|
-
cnpj === '99999999999999') {
|
|
8764
|
-
return { cnpjNotValid: true };
|
|
8765
|
-
}
|
|
8766
|
-
// Valida DVs
|
|
8767
|
-
size = cnpj.length - 2;
|
|
8768
|
-
numbers = cnpj.substring(0, size);
|
|
8769
|
-
digits = cnpj.substring(size);
|
|
8770
|
-
sum = 0;
|
|
8771
|
-
pos = size - 7;
|
|
8772
|
-
for (let i = size; i >= 1; i--) {
|
|
8773
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8774
|
-
if (pos < 2) {
|
|
8775
|
-
pos = 9;
|
|
8776
|
-
}
|
|
8777
|
-
}
|
|
8778
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8779
|
-
if (result !== Number(digits.charAt(0))) {
|
|
8780
|
-
return { cnpjNotValid: true };
|
|
8781
|
-
}
|
|
8782
|
-
size = size + 1;
|
|
8783
|
-
numbers = cnpj.substring(0, size);
|
|
8784
|
-
sum = 0;
|
|
8785
|
-
pos = size - 7;
|
|
8786
|
-
for (let i = size; i >= 1; i--) {
|
|
8787
|
-
sum += numbers.charAt(size - i) * pos--;
|
|
8788
|
-
if (pos < 2) {
|
|
8789
|
-
pos = 9;
|
|
8790
|
-
}
|
|
8791
|
-
}
|
|
8792
|
-
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8793
|
-
if (result !== Number(digits.charAt(1))) {
|
|
8794
|
-
return { cnpjNotValid: true };
|
|
8795
|
-
}
|
|
8796
|
-
return null;
|
|
8797
|
-
}
|
|
8798
|
-
return null;
|
|
8799
|
-
}
|
|
8800
|
-
/**
|
|
8801
|
-
* Válida o número de telefone da chave PIX.
|
|
8802
|
-
*/
|
|
8803
|
-
static isValidPhoneNumber(control) {
|
|
8804
|
-
let cellPhoneKey = control.value || '';
|
|
8805
|
-
cellPhoneKey = cellPhoneKey.replace(/[\s()-]/g, '');
|
|
8806
|
-
const regexNumberTelephone = /^[1-9][\d]{1,2}\d{8,10}$/;
|
|
8807
|
-
const isValidNumberTelephone = regexNumberTelephone.test(cellPhoneKey);
|
|
8808
|
-
return isValidNumberTelephone ? null : { invalidPhoneNumber: true };
|
|
8809
|
-
}
|
|
8810
|
-
/**
|
|
8811
|
-
* 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.
|
|
8812
8518
|
*/
|
|
8813
|
-
static
|
|
8814
|
-
|
|
8815
|
-
const regexValidEmail = /^[\w-\.]+@[\w-]+(\.[\w-]{2,4}){1,2}$/;
|
|
8816
|
-
const isValidEmail = regexValidEmail.test(emailKey);
|
|
8817
|
-
return isValidEmail ? null : { invalidEmail: true };
|
|
8818
|
-
}
|
|
8819
|
-
}
|
|
8820
|
-
|
|
8821
|
-
class HistoricakPixAccountBase {
|
|
8822
|
-
constructor(formBuilder) {
|
|
8823
|
-
this._paramsForm = new FormGroup({});
|
|
8824
|
-
this._defaultCpfNumber = null;
|
|
8825
|
-
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
8826
|
-
this.pixAccountList = [];
|
|
8827
|
-
this.maxValuePercentage = 100.0;
|
|
8828
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8829
|
-
this.formBuilder = formBuilder;
|
|
8830
|
-
this.createFormGroupBase();
|
|
8831
|
-
}
|
|
8832
|
-
phoneMask(event) {
|
|
8833
|
-
FormatUtilsService.formatTelephoneInputEvent(event);
|
|
8834
|
-
}
|
|
8835
|
-
cpfMask(event) {
|
|
8836
|
-
FormatUtilsService.formatCpfInputEvent(event);
|
|
8837
|
-
}
|
|
8838
|
-
cnpjMask(event) {
|
|
8839
|
-
FormatUtilsService.formatCnpjInputEvent(event);
|
|
8840
|
-
}
|
|
8841
|
-
onChangePixKeyType(item, form) {
|
|
8842
|
-
if (!item || !item.key)
|
|
8843
|
-
return;
|
|
8844
|
-
this.pixKeyType = item.key;
|
|
8845
|
-
const targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8846
|
-
? form
|
|
8847
|
-
: this.pixAccountFormGroup;
|
|
8848
|
-
this.isShowPixKeyFieldValidatorMessage = true;
|
|
8849
|
-
const pixKeyControl = targetForm.get("pixKey");
|
|
8850
|
-
if (pixKeyControl) {
|
|
8851
|
-
pixKeyControl.reset();
|
|
8852
|
-
}
|
|
8853
|
-
this.setPixKeyValidators(true, targetForm);
|
|
8854
|
-
if (item.key === "CPF") {
|
|
8855
|
-
this.setDefaultCpfPixKey(targetForm);
|
|
8856
|
-
}
|
|
8857
|
-
}
|
|
8858
|
-
onClearPixKeyType(form) {
|
|
8859
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8860
|
-
? form
|
|
8861
|
-
: this.pixAccountFormGroup;
|
|
8862
|
-
this.isShowPixKeyFieldValidatorMessage = false;
|
|
8863
|
-
if (targetForm.get("pixKey")) {
|
|
8864
|
-
targetForm.get("pixKey").reset();
|
|
8865
|
-
}
|
|
8866
|
-
}
|
|
8867
|
-
setDefaultCpfPixKey(form) {
|
|
8868
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8869
|
-
? form
|
|
8870
|
-
: this.pixAccountFormGroup;
|
|
8871
|
-
if (this._defaultCpfNumber) {
|
|
8872
|
-
if (targetForm.get("pixKey")) {
|
|
8873
|
-
targetForm.get("pixKey").setValue(this._defaultCpfNumber);
|
|
8874
|
-
}
|
|
8875
|
-
}
|
|
8876
|
-
else {
|
|
8877
|
-
var sheetDocument = this._paramsForm.get("sheetDocument");
|
|
8878
|
-
if (sheetDocument && sheetDocument.get("cpfNumber")) {
|
|
8879
|
-
var cpf = sheetDocument.get("cpfNumber").value;
|
|
8880
|
-
if (cpf && targetForm.get("pixKey")) {
|
|
8881
|
-
targetForm.get("pixKey").setValue(cpf);
|
|
8882
|
-
}
|
|
8883
|
-
}
|
|
8884
|
-
}
|
|
8885
|
-
}
|
|
8886
|
-
createFormGroupBase() {
|
|
8887
|
-
this.pixAccountFormGroup = this.formBuilder.group({
|
|
8888
|
-
id: this.formBuilder.control(null),
|
|
8889
|
-
index: this.formBuilder.control(null),
|
|
8890
|
-
employee: this.formBuilder.control({ value: { tableId: null }, disabled: true }),
|
|
8891
|
-
dateChange: this.formBuilder.control(null),
|
|
8892
|
-
pixKeyType: this.formBuilder.control(null, Validators.required),
|
|
8893
|
-
pixKey: this.formBuilder.control(null),
|
|
8894
|
-
percentage: this.formBuilder.control(null, Validators.compose([
|
|
8895
|
-
...this.initialValidatorOfPercentage,
|
|
8896
|
-
Validators.max(this.maxValuePercentage),
|
|
8897
|
-
])),
|
|
8898
|
-
externalId: this.formBuilder.control(null),
|
|
8899
|
-
customFields: this.formBuilder.control(null),
|
|
8900
|
-
});
|
|
8901
|
-
}
|
|
8902
|
-
setValidatorsAccordingList(pixAccountList, index = null, isEditMode = true, form) {
|
|
8903
|
-
var targetForm = (typeof form !== 'undefined' && form !== null)
|
|
8904
|
-
? form
|
|
8905
|
-
: this.pixAccountFormGroup;
|
|
8906
|
-
this.pixAccountList = (pixAccountList && pixAccountList.length > 0)
|
|
8907
|
-
? [].concat(pixAccountList)
|
|
8908
|
-
: [];
|
|
8909
|
-
var percentageIncluded = [];
|
|
8910
|
-
for (var i = 0; i < this.pixAccountList.length; i++) {
|
|
8911
|
-
var field = this.pixAccountList[i];
|
|
8912
|
-
if (field && field.percentage && i !== index) {
|
|
8913
|
-
percentageIncluded.push(field.percentage);
|
|
8914
|
-
}
|
|
8915
|
-
}
|
|
8916
|
-
this.beforeSetPixKeyTypeValidator(targetForm);
|
|
8917
|
-
this.setPixKeyValidators(isEditMode, targetForm);
|
|
8918
|
-
this.validatePercentageValid(percentageIncluded, targetForm);
|
|
8919
|
-
}
|
|
8920
|
-
beforeSetPixKeyTypeValidator(form) {
|
|
8921
|
-
const control = form.get("pixKeyType");
|
|
8922
|
-
if (this.pixAccountList && this.pixAccountList.length) {
|
|
8923
|
-
control.setValidators(Validators.compose([
|
|
8924
|
-
Validators.required,
|
|
8925
|
-
this.validateDuplicatePixKeyTypeBankAccount(this.pixAccountList),
|
|
8926
|
-
]));
|
|
8927
|
-
}
|
|
8928
|
-
else {
|
|
8929
|
-
control.setValidators(Validators.required);
|
|
8930
|
-
}
|
|
8931
|
-
control.updateValueAndValidity();
|
|
8932
|
-
}
|
|
8933
|
-
setPixKeyValidators(isEditMode, form) {
|
|
8934
|
-
const pixKey = form.get("pixKey");
|
|
8935
|
-
switch (this.pixKeyType) {
|
|
8936
|
-
case "TELEPHONE":
|
|
8937
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidPhoneNumber]));
|
|
8938
|
-
break;
|
|
8939
|
-
case "EMAIL":
|
|
8940
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidEmail]));
|
|
8941
|
-
break;
|
|
8942
|
-
case "CPF":
|
|
8943
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCpf]));
|
|
8944
|
-
break;
|
|
8945
|
-
case "CNPJ":
|
|
8946
|
-
pixKey.setValidators(Validators.compose([Validators.required, GenericValidator.isValidCnpj]));
|
|
8947
|
-
break;
|
|
8948
|
-
case "RANDOM_KEY":
|
|
8949
|
-
pixKey.setValidators(Validators.required);
|
|
8950
|
-
break;
|
|
8951
|
-
default:
|
|
8952
|
-
pixKey.clearValidators();
|
|
8953
|
-
}
|
|
8954
|
-
if (isEditMode) {
|
|
8955
|
-
pixKey.enable();
|
|
8956
|
-
}
|
|
8957
|
-
pixKey.updateValueAndValidity();
|
|
8958
|
-
}
|
|
8959
|
-
validatePercentageValid(listValue, form) {
|
|
8960
|
-
const percentage = form.get("percentage");
|
|
8961
|
-
this.maxValuePercentage = listValue.reduce((acc, val) => acc - val, 100.0);
|
|
8962
|
-
percentage.setValidators(Validators.compose([
|
|
8963
|
-
...this.initialValidatorOfPercentage,
|
|
8964
|
-
Validators.max(this.maxValuePercentage),
|
|
8965
|
-
]));
|
|
8966
|
-
percentage.updateValueAndValidity();
|
|
8967
|
-
}
|
|
8968
|
-
validateDuplicatePixKeyTypeBankAccount(listCompare) {
|
|
8969
|
-
return (control) => {
|
|
8970
|
-
const value = control.value;
|
|
8971
|
-
const isDuplicate = listCompare.some((field) => value &&
|
|
8972
|
-
field.pixKeyType.key === "BANK_ACCOUNT" &&
|
|
8973
|
-
value.key === "BANK_ACCOUNT");
|
|
8974
|
-
return isDuplicate ? { pixKeyTypeBankAccountDuplicate: true } : null;
|
|
8975
|
-
};
|
|
8976
|
-
}
|
|
8977
|
-
get paramsForm() {
|
|
8978
|
-
return this._paramsForm;
|
|
8979
|
-
}
|
|
8980
|
-
set paramsForm(value) {
|
|
8981
|
-
this._paramsForm = value;
|
|
8982
|
-
}
|
|
8983
|
-
get defaultCpfNumber() {
|
|
8984
|
-
return this._defaultCpfNumber;
|
|
8985
|
-
}
|
|
8986
|
-
set defaultCpfNumber(value) {
|
|
8987
|
-
this._defaultCpfNumber = value;
|
|
8519
|
+
static getFormattedPercentage(value) {
|
|
8520
|
+
return parseFloat(value).toFixed(2).replace('.', ',') + '%';
|
|
8988
8521
|
}
|
|
8989
8522
|
}
|
|
8990
8523
|
|
|
8991
|
-
let
|
|
8992
|
-
constructor(
|
|
8993
|
-
this.http = http;
|
|
8994
|
-
}
|
|
8995
|
-
query(path, body, service = ServiceType.PAYROLL) {
|
|
8996
|
-
return this.http.query(path, body, service);
|
|
8997
|
-
}
|
|
8998
|
-
enumQuery() {
|
|
8999
|
-
const path = 'enumQuery';
|
|
9000
|
-
const body = {
|
|
9001
|
-
names: ['PixKeyType']
|
|
9002
|
-
};
|
|
9003
|
-
return this.http.query(path, body, ServiceType.PAYROLL);
|
|
9004
|
-
}
|
|
9005
|
-
};
|
|
9006
|
-
HistoricalPixAccountService.ctorParameters = () => [
|
|
9007
|
-
{ type: HttpClientService }
|
|
9008
|
-
];
|
|
9009
|
-
HistoricalPixAccountService = __decorate([
|
|
9010
|
-
Injectable()
|
|
9011
|
-
], HistoricalPixAccountService);
|
|
9012
|
-
|
|
9013
|
-
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends HistoricakPixAccountBase {
|
|
9014
|
-
constructor(translateService, cd, formBuilder, sharedStateService, service) {
|
|
9015
|
-
super(formBuilder);
|
|
8524
|
+
let HistoricalPixAccountComponent = class HistoricalPixAccountComponent {
|
|
8525
|
+
constructor(translateService, cd, formBuilder, messageService) {
|
|
9016
8526
|
this.translateService = translateService;
|
|
9017
8527
|
this.cd = cd;
|
|
9018
|
-
this.
|
|
9019
|
-
this.
|
|
8528
|
+
this.formBuilder = formBuilder;
|
|
8529
|
+
this.messageService = messageService;
|
|
9020
8530
|
this.recordByRow = 1;
|
|
9021
8531
|
this.showDateChange = false;
|
|
9022
8532
|
this.isEditMode = false;
|
|
9023
8533
|
this.isViewMode = false;
|
|
9024
8534
|
this.withSideBar = true;
|
|
8535
|
+
this.defaultCpfNumber = null;
|
|
9025
8536
|
this.listDataReciever = [];
|
|
9026
|
-
this.
|
|
9027
|
-
this.getListPixAccount = [];
|
|
9028
|
-
this.isEditModeForSave = false;
|
|
9029
|
-
this.showField = false;
|
|
8537
|
+
this.showButtonEdit = false;
|
|
9030
8538
|
this.isViewModeActive = new EventEmitter();
|
|
9031
8539
|
this.isEditModeActive = new EventEmitter();
|
|
9032
8540
|
this.isDeleteModeActive = new EventEmitter();
|
|
9033
|
-
this.isValidChangeForm = new EventEmitter();
|
|
9034
|
-
this.reloadOnlyOnEdit = new EventEmitter();
|
|
9035
8541
|
this.listFromApp = [];
|
|
9036
8542
|
this.visibleChange = new EventEmitter();
|
|
9037
8543
|
this.ngUnsubscribe = new Subject();
|
|
@@ -9045,12 +8551,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9045
8551
|
this.loading = true;
|
|
9046
8552
|
this.listData = [];
|
|
9047
8553
|
this.listDataNoPage = [];
|
|
9048
|
-
this.
|
|
9049
|
-
this.showEditMode = false;
|
|
9050
|
-
this.hasRecordsPix = true;
|
|
9051
|
-
this.hideFields = this.sharedStateService.hideField$;
|
|
9052
|
-
this.suggestions = [];
|
|
9053
|
-
this.formGroupByRow = {};
|
|
8554
|
+
this.permitsEditBankAccount = false;
|
|
9054
8555
|
this.cols = [
|
|
9055
8556
|
{
|
|
9056
8557
|
label: this.translateService.instant("hcm.payroll.employees_addition_pix_key_type"),
|
|
@@ -9064,10 +8565,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9064
8565
|
label: this.translateService.instant("hcm.payroll.historical_pix_account_label_percentage"),
|
|
9065
8566
|
field: "percentage",
|
|
9066
8567
|
},
|
|
9067
|
-
{
|
|
9068
|
-
label: this.translateService.instant("hcm.payroll.movimentation_generic_action"),
|
|
9069
|
-
field: "actions",
|
|
9070
|
-
}
|
|
9071
8568
|
];
|
|
9072
8569
|
this.actions = (rowData = {}, key) => {
|
|
9073
8570
|
return [
|
|
@@ -9086,7 +8583,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9086
8583
|
},
|
|
9087
8584
|
},
|
|
9088
8585
|
{
|
|
9089
|
-
visible: !!(!this.isEditMode && this.withSideBar),
|
|
8586
|
+
visible: !!((!this.isEditMode && this.withSideBar) || this.showButtonEdit),
|
|
9090
8587
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9091
8588
|
command: () => {
|
|
9092
8589
|
if (this.isAllowToEditHistorical) {
|
|
@@ -9105,7 +8602,7 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9105
8602
|
},
|
|
9106
8603
|
},
|
|
9107
8604
|
{
|
|
9108
|
-
visible: !this.isEditMode
|
|
8605
|
+
visible: !this.isEditMode,
|
|
9109
8606
|
label: this.translateService.instant("hcm.payroll.delete"),
|
|
9110
8607
|
command: () => {
|
|
9111
8608
|
if (this.isAllowToDeleteHistorical) {
|
|
@@ -9126,46 +8623,14 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9126
8623
|
this.createFormGroup();
|
|
9127
8624
|
}
|
|
9128
8625
|
ngOnInit() {
|
|
9129
|
-
this.showFields = this.showField;
|
|
9130
8626
|
this.formGroup.setControl(this.fieldFormGroup, this.historicalPixAccountList);
|
|
9131
|
-
this.sharedStateService.showButton$.subscribe((value) => {
|
|
9132
|
-
this.showButtonView = value;
|
|
9133
|
-
});
|
|
9134
|
-
this.sharedStateService.showEditMode$.subscribe((value) => {
|
|
9135
|
-
this.showEditMode = value;
|
|
9136
|
-
this.isEditModeForSave = value;
|
|
9137
|
-
});
|
|
9138
|
-
this.sharedStateService.shouldReloadWindowOnlyEditMode$.subscribe((value) => {
|
|
9139
|
-
this.reloadOnlyOnEdit.emit(value);
|
|
9140
|
-
});
|
|
9141
|
-
this.sharedStateService.hideBtnAddForViewMode$.subscribe((value) => {
|
|
9142
|
-
this.hideBtnAddForViewMode = value;
|
|
9143
|
-
});
|
|
9144
|
-
this.sharedStateService.activeValidatorsOnEditModalOpen$
|
|
9145
|
-
.subscribe(() => {
|
|
9146
|
-
Object.values(this.formGroupByRow).forEach(fg => {
|
|
9147
|
-
Object.values(fg.controls).forEach(control => {
|
|
9148
|
-
control.markAsTouched();
|
|
9149
|
-
control.updateValueAndValidity();
|
|
9150
|
-
});
|
|
9151
|
-
});
|
|
9152
|
-
this.emitFormValidity();
|
|
9153
|
-
});
|
|
9154
8627
|
}
|
|
9155
8628
|
ngOnChanges(changes) {
|
|
9156
8629
|
if (changes['listDataReciever'] && changes['listDataReciever'].currentValue) {
|
|
9157
8630
|
this.listFromApp = changes['listDataReciever'].currentValue;
|
|
9158
8631
|
}
|
|
9159
|
-
if (changes['
|
|
9160
|
-
this.
|
|
9161
|
-
}
|
|
9162
|
-
if (changes['addExistentHistoricData'] && changes['addExistentHistoricData'].currentValue) {
|
|
9163
|
-
const newData = changes['addExistentHistoricData'].currentValue;
|
|
9164
|
-
this.rebuildFormGroupMap(newData);
|
|
9165
|
-
}
|
|
9166
|
-
if (changes['isEditMode']) {
|
|
9167
|
-
this.isEditMode = changes['isEditMode'].currentValue;
|
|
9168
|
-
this.cd.detectChanges();
|
|
8632
|
+
if (changes['showButtonEdit'] && changes['showButtonEdit'].currentValue) {
|
|
8633
|
+
this.permitsEditBankAccount = changes['showButtonEdit'].currentValue;
|
|
9169
8634
|
}
|
|
9170
8635
|
}
|
|
9171
8636
|
createFormGroup() {
|
|
@@ -9180,96 +8645,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9180
8645
|
ngAfterViewInit() {
|
|
9181
8646
|
this.cd.detectChanges();
|
|
9182
8647
|
}
|
|
9183
|
-
emitFormValidity() {
|
|
9184
|
-
const allValid = Object.values(this.formGroupByRow).every(fg => {
|
|
9185
|
-
fg.updateValueAndValidity();
|
|
9186
|
-
return fg.valid;
|
|
9187
|
-
});
|
|
9188
|
-
this.isValidChangeForm.emit(allValid);
|
|
9189
|
-
}
|
|
9190
|
-
filterPixKeyType(event) {
|
|
9191
|
-
const query = event.query;
|
|
9192
|
-
this.service.enumQuery().subscribe((response) => {
|
|
9193
|
-
const pixKeyTypeEnum = response.results.find((result) => result.enumName === 'PixKeyType');
|
|
9194
|
-
if (pixKeyTypeEnum) {
|
|
9195
|
-
this.suggestions = pixKeyTypeEnum.items.filter((item) => item.value.toLowerCase().includes(query.toLowerCase()));
|
|
9196
|
-
}
|
|
9197
|
-
else {
|
|
9198
|
-
this.suggestions = [];
|
|
9199
|
-
}
|
|
9200
|
-
});
|
|
9201
|
-
}
|
|
9202
|
-
createPixRowFormGroup() {
|
|
9203
|
-
return this.formBuilder.group({
|
|
9204
|
-
pixKeyType: [null, Validators.required],
|
|
9205
|
-
pixKey: [null],
|
|
9206
|
-
percentage: [0, Validators.compose([
|
|
9207
|
-
...this.initialValidatorOfPercentage,
|
|
9208
|
-
Validators.max(this.maxValuePercentage),
|
|
9209
|
-
])]
|
|
9210
|
-
});
|
|
9211
|
-
}
|
|
9212
|
-
onPixKeyInput(event, index) {
|
|
9213
|
-
const inputValue = event.target.value;
|
|
9214
|
-
const inputRawValue = inputValue.replace(/\D/g, '');
|
|
9215
|
-
const form = this.formGroupByRow[index];
|
|
9216
|
-
const pixKeyControl = form.get('pixKey');
|
|
9217
|
-
if (pixKeyControl) {
|
|
9218
|
-
pixKeyControl.setValue(inputRawValue, { emitEvent: false });
|
|
9219
|
-
pixKeyControl.markAsDirty();
|
|
9220
|
-
pixKeyControl.updateValueAndValidity();
|
|
9221
|
-
}
|
|
9222
|
-
this.setPixKeyValidators(true, form);
|
|
9223
|
-
this.emitFormValidity();
|
|
9224
|
-
}
|
|
9225
|
-
onBlurPixCpfAndCnpj(index) {
|
|
9226
|
-
const form = this.formGroupByRow[index];
|
|
9227
|
-
const pixKeyControl = form.get('pixKey');
|
|
9228
|
-
const pixKeyTypeControl = form.get('pixKeyType');
|
|
9229
|
-
if (!pixKeyControl || !pixKeyTypeControl)
|
|
9230
|
-
return;
|
|
9231
|
-
const currentValue = pixKeyControl.value;
|
|
9232
|
-
const pixKeyType = pixKeyTypeControl.value.key;
|
|
9233
|
-
const rawValue = (currentValue || '').replace(/\D/g, '');
|
|
9234
|
-
pixKeyControl.setValue(rawValue, { emitEvent: false });
|
|
9235
|
-
if (pixKeyControl.valid) {
|
|
9236
|
-
form.patchValue({
|
|
9237
|
-
pixKeyFormatted: FormatUtilsService.getFormattedSubscriptionNumber(rawValue, pixKeyType)
|
|
9238
|
-
});
|
|
9239
|
-
}
|
|
9240
|
-
this.emitFormValidity();
|
|
9241
|
-
}
|
|
9242
|
-
getFormattedPixKey(type, value) {
|
|
9243
|
-
return FormatUtilsService.getFormattedSubscriptionNumber(value, type);
|
|
9244
|
-
}
|
|
9245
|
-
syncPixDataToParentForm() {
|
|
9246
|
-
if (!this.isEditModeForSave)
|
|
9247
|
-
return;
|
|
9248
|
-
const values = Object.values(this.formGroupByRow).map(fg => {
|
|
9249
|
-
const value = fg.getRawValue();
|
|
9250
|
-
const pixKeyType = value.pixKeyType.key;
|
|
9251
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9252
|
-
value.pixKey = (value.pixKey || '').replace(/[.\-\/]/g, '');
|
|
9253
|
-
}
|
|
9254
|
-
else if (pixKeyType === 'TELEPHONE') {
|
|
9255
|
-
value.pixKey = (value.pixKey || '').replace(/[()\s\-]/g, '');
|
|
9256
|
-
}
|
|
9257
|
-
return value;
|
|
9258
|
-
});
|
|
9259
|
-
this.formGroup
|
|
9260
|
-
.get(this.fieldFormGroup)
|
|
9261
|
-
.get('historicalPixAccountList')
|
|
9262
|
-
.setValue(values);
|
|
9263
|
-
this.emitFormValidity();
|
|
9264
|
-
}
|
|
9265
|
-
syncResetPixFormToParent() {
|
|
9266
|
-
this.formGroupByRow = {};
|
|
9267
|
-
this.historicalPixAccountList.reset();
|
|
9268
|
-
this.historicalPixAccountList.get('historicalPixAccountList').setValue([]);
|
|
9269
|
-
if (this.addExistentHistoricData.length) {
|
|
9270
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9271
|
-
}
|
|
9272
|
-
}
|
|
9273
8648
|
onLazyLoad(event) {
|
|
9274
8649
|
const first = event && event.first ? event.first : 0;
|
|
9275
8650
|
const rows = event && event.rows ? event.rows : this.recordByRow;
|
|
@@ -9296,7 +8671,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9296
8671
|
this.refreshCssInIE11();
|
|
9297
8672
|
}
|
|
9298
8673
|
this.loading = false;
|
|
9299
|
-
this.cd.detectChanges();
|
|
9300
8674
|
}
|
|
9301
8675
|
/**
|
|
9302
8676
|
* Um Bug de CSS que acontece nas linhas da tabela, que resolve só atualizando qualquer parte do CSS da pagina.
|
|
@@ -9312,69 +8686,14 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9312
8686
|
}
|
|
9313
8687
|
add() {
|
|
9314
8688
|
this.pixAccountItemInput = {};
|
|
9315
|
-
this.visible = true;
|
|
9316
|
-
}
|
|
9317
|
-
addPix() {
|
|
9318
|
-
const newItem = {
|
|
9319
|
-
pixKeyType: {},
|
|
9320
|
-
pixKey: '',
|
|
9321
|
-
percentage: 0
|
|
9322
|
-
};
|
|
9323
|
-
const index = this.addExistentHistoricData.length;
|
|
9324
|
-
this.addExistentHistoricData = [
|
|
9325
|
-
...this.addExistentHistoricData,
|
|
9326
|
-
newItem
|
|
9327
|
-
];
|
|
9328
|
-
this.formGroupByRow[index] = this.createPixRowFormGroup();
|
|
9329
|
-
this.setValidatorsAccordingList(this.addExistentHistoricData, index, true);
|
|
9330
|
-
this.emitFormValidity();
|
|
9331
|
-
}
|
|
9332
|
-
deletePix(index) {
|
|
9333
|
-
if (this.dataListPix.editingCell) {
|
|
9334
|
-
this.dataListPix.editingCell = null;
|
|
9335
|
-
}
|
|
9336
|
-
this.addExistentHistoricData = this.addExistentHistoricData.filter((_, i) => i !== index);
|
|
9337
|
-
this.rebuildFormGroupMap(this.addExistentHistoricData);
|
|
9338
|
-
this.emitFormValidity();
|
|
9339
|
-
}
|
|
9340
|
-
rebuildFormGroupMap(data) {
|
|
9341
|
-
this.formGroupByRow = {};
|
|
9342
|
-
data.forEach((item, index) => {
|
|
9343
|
-
const form = this.createPixRowFormGroup();
|
|
9344
|
-
const pixKeyType = item.pixKeyType.key;
|
|
9345
|
-
const pixKeyRaw = item.pixKey;
|
|
9346
|
-
if (pixKeyType === 'CPF' || pixKeyType === 'CNPJ') {
|
|
9347
|
-
item.pixKey = FormatUtilsService.getFormattedSubscriptionNumber(pixKeyRaw, pixKeyType);
|
|
9348
|
-
}
|
|
9349
|
-
if (pixKeyType === 'TELEPHONE') {
|
|
9350
|
-
item.pixKey = FormatUtilsService.getFormattedTelephoneNumber(pixKeyRaw);
|
|
9351
|
-
}
|
|
9352
|
-
form.patchValue(item);
|
|
9353
|
-
this.formGroupByRow[index] = form;
|
|
9354
|
-
this.pixKeyType = pixKeyType;
|
|
9355
|
-
this.setPixKeyValidators(true, form);
|
|
9356
|
-
this.setValidatorsAccordingList(data, index, this.isEditMode);
|
|
9357
|
-
const listValues = data
|
|
9358
|
-
.filter((_, i) => i !== index)
|
|
9359
|
-
.map(row => row.percentage ? parseFloat(row.percentage) : 0);
|
|
9360
|
-
this.validatePercentageValid(listValues, form);
|
|
9361
|
-
});
|
|
9362
|
-
this.emitFormValidity();
|
|
9363
|
-
}
|
|
9364
|
-
onPixKeyTypeChange(item, index) {
|
|
9365
|
-
const form = this.formGroupByRow[index];
|
|
9366
|
-
this.onChangePixKeyType(item, form);
|
|
9367
|
-
this.addExistentHistoricData[index].pixKey = '';
|
|
9368
|
-
setTimeout(() => {
|
|
9369
|
-
if (this.dataListPix.editingCell) {
|
|
9370
|
-
this.dataListPix.editingCell = null;
|
|
9371
|
-
}
|
|
9372
|
-
});
|
|
9373
|
-
this.cd.detectChanges();
|
|
8689
|
+
this.visible = true;
|
|
9374
8690
|
}
|
|
9375
|
-
|
|
9376
|
-
|
|
9377
|
-
|
|
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
|
+
});
|
|
9378
8697
|
}
|
|
9379
8698
|
deleteAnnuityItem(index) {
|
|
9380
8699
|
let newlist = [...this.getHistoricalPixAccountList()];
|
|
@@ -9436,23 +8755,6 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9436
8755
|
this.msgTotalLimitByPercentage = null;
|
|
9437
8756
|
}
|
|
9438
8757
|
}
|
|
9439
|
-
onSyncValue(field, index) {
|
|
9440
|
-
if (this.formGroupByRow &&
|
|
9441
|
-
this.formGroupByRow[index] &&
|
|
9442
|
-
this.formGroupByRow[index].get(field)) {
|
|
9443
|
-
const control = this.formGroupByRow[index].get(field);
|
|
9444
|
-
const value = control.value;
|
|
9445
|
-
this.addExistentHistoricData[index][field] = value;
|
|
9446
|
-
control.markAsDirty();
|
|
9447
|
-
control.markAsTouched();
|
|
9448
|
-
control.updateValueAndValidity();
|
|
9449
|
-
const currentList = this.addExistentHistoricData.map((item, i) => {
|
|
9450
|
-
return i === index ? 0 : item.percentage;
|
|
9451
|
-
});
|
|
9452
|
-
this.validatePercentageValid(currentList, this.formGroupByRow[index]);
|
|
9453
|
-
this.emitFormValidity();
|
|
9454
|
-
}
|
|
9455
|
-
}
|
|
9456
8758
|
get scopedActions() {
|
|
9457
8759
|
return this.actions.bind(this);
|
|
9458
8760
|
}
|
|
@@ -9489,15 +8791,12 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9489
8791
|
get visible() {
|
|
9490
8792
|
return this._visible;
|
|
9491
8793
|
}
|
|
9492
|
-
set paramsForm(value) {
|
|
9493
|
-
this._paramsForm = value;
|
|
9494
|
-
}
|
|
9495
|
-
set defaultCpfNumber(value) {
|
|
9496
|
-
this._defaultCpfNumber = value;
|
|
9497
|
-
}
|
|
9498
8794
|
set visible(value) {
|
|
9499
8795
|
this._visible = value;
|
|
9500
8796
|
this.visibleChange.emit(this.visible);
|
|
8797
|
+
if (!value) {
|
|
8798
|
+
this.pixAccountItemInput = {};
|
|
8799
|
+
}
|
|
9501
8800
|
}
|
|
9502
8801
|
close() {
|
|
9503
8802
|
this.visible = false;
|
|
@@ -9526,138 +8825,295 @@ let HistoricalPixAccountComponent = class HistoricalPixAccountComponent extends
|
|
|
9526
8825
|
get isAllowToViewHistorical() {
|
|
9527
8826
|
return (this.permission["visualizar"]);
|
|
9528
8827
|
}
|
|
9529
|
-
};
|
|
9530
|
-
HistoricalPixAccountComponent.ctorParameters = () => [
|
|
9531
|
-
{ type: TranslateService },
|
|
9532
|
-
{ type: ChangeDetectorRef },
|
|
9533
|
-
{ type: FormBuilder },
|
|
9534
|
-
{ type:
|
|
9535
|
-
|
|
9536
|
-
|
|
9537
|
-
|
|
9538
|
-
|
|
9539
|
-
|
|
9540
|
-
|
|
9541
|
-
|
|
9542
|
-
|
|
9543
|
-
|
|
9544
|
-
|
|
9545
|
-
|
|
9546
|
-
|
|
9547
|
-
|
|
9548
|
-
|
|
9549
|
-
|
|
9550
|
-
|
|
9551
|
-
|
|
9552
|
-
|
|
9553
|
-
|
|
9554
|
-
|
|
9555
|
-
|
|
9556
|
-
|
|
9557
|
-
|
|
9558
|
-
|
|
9559
|
-
|
|
9560
|
-
|
|
9561
|
-
|
|
9562
|
-
|
|
9563
|
-
|
|
9564
|
-
|
|
9565
|
-
|
|
9566
|
-
|
|
9567
|
-
|
|
9568
|
-
|
|
9569
|
-
|
|
9570
|
-
|
|
9571
|
-
|
|
9572
|
-
|
|
9573
|
-
|
|
9574
|
-
|
|
9575
|
-
|
|
9576
|
-
|
|
9577
|
-
|
|
9578
|
-
|
|
9579
|
-
|
|
9580
|
-
|
|
9581
|
-
|
|
9582
|
-
|
|
9583
|
-
|
|
9584
|
-
|
|
9585
|
-
|
|
9586
|
-
|
|
9587
|
-
|
|
9588
|
-
|
|
9589
|
-
|
|
9590
|
-
|
|
9591
|
-
|
|
9592
|
-
|
|
9593
|
-
|
|
9594
|
-
|
|
9595
|
-
|
|
9596
|
-
|
|
9597
|
-
|
|
9598
|
-
|
|
9599
|
-
|
|
9600
|
-
|
|
9601
|
-
|
|
9602
|
-
|
|
9603
|
-
|
|
9604
|
-
|
|
9605
|
-
|
|
9606
|
-
|
|
9607
|
-
|
|
9608
|
-
|
|
9609
|
-
|
|
9610
|
-
|
|
9611
|
-
|
|
9612
|
-
|
|
9613
|
-
|
|
9614
|
-
|
|
9615
|
-
|
|
9616
|
-
|
|
9617
|
-
|
|
9618
|
-
|
|
9619
|
-
|
|
9620
|
-
|
|
9621
|
-
|
|
9622
|
-
|
|
9623
|
-
|
|
9624
|
-
|
|
9625
|
-
|
|
9626
|
-
|
|
9627
|
-
|
|
9628
|
-
|
|
9629
|
-
|
|
9630
|
-
|
|
9631
|
-
|
|
9632
|
-
|
|
9633
|
-
|
|
9634
|
-
|
|
9635
|
-
|
|
9636
|
-
|
|
9637
|
-
template: "<s-sidebar *ngIf=\"withSideBar\" [visible]=\"visible\" (visibleChange)=\"close()\"\n header=\"{{'hcm.payroll.historical_pix_account_title_form'|translate}}\">\n<pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [paramsForm]=\"paramsForm\"\n [showField]=\"showFields\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</s-sidebar>\n\n<div *ngIf=\"!withSideBar\">\n <pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [withSideBar]=\"false\"\n [isViewMode]=\"isViewMode\"\n [paramsForm]=\"paramsForm\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</div>\n<div class=\"ui-g-1\" *ngIf=\"withSideBar && !isEditMode && !hideBtnAddForViewMode\">\n <div class=\"form-group \">\n <s-button id=\"ta-addPayAnnuity\"\n [disabled]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n (onClick)=\"add()\"\n [pTooltip]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n tooltipPosition=\"top\"\n label=\"{{'hcm.payroll.historical_pix_account_add'|translate}}\"></s-button>\n </div>\n</div>\n<div *ngIf=\"showFields || !showEditMode || !(hideFields | async)\" class=\"ui-g-12\">\n <p-table\n id=\"table-annuity\"\n [value]=\"listData\"\n [columns]=\"cols\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n [totalRecords]=\"totalRecords\"\n [sortMode]=\"'multiple'\"\n *sLoadingState=\"loading\"\n [rows]=\"recordByRow\"\n dataKey=\"id\">\n <ng-template pTemplate=\"colgroup\" let-coumns>\n <colgroup>\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-s'\">\n <col *ngIf=\"showButtonView\" [ngClass]=\"'col-action'\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <!-- Cabe\u00E7alhos quando da table \u00E9 permitido ordenar as colunas -->\n <tr>\n <!-- Cabe\u00E7alhos das colunas da tabela -->\n <th\n [pSortableColumn]=\"'pixKeyType'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\" id=\"table-0\">\n <span\n id=\"table-annuity-s-0\">{{ 'hcm.payroll.employees_addition_pix_key_type' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'pixKey'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.employees_addition_pix_key' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'percentage'\"\n [pTooltip]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.historical_pix_account_label_percentage' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"></p-sortIcon>\n </div>\n </th>\n <!-- Cabe\u00E7alho da coluna de a\u00E7\u00F5es -->\n <th *ngIf=\"showButtonView\" id=\"col-actions\"></th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-key=\"rowIndex\">\n\n <tr [ngClass]=\"'row'+key\" [pSelectableRow]=\"rowData\">\n <td [pTooltip]=\"rowData?.pixKeyType.value\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKeyType.value }}</span>\n </td>\n\n <ng-container [ngSwitch]=\"rowData?.pixKeyType.key\">\n <td *ngSwitchCase=\"'TELEPHONE'\"\n [pTooltip]=\"getFormattedTelephoneNumber(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedTelephoneNumber(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CPF'\"\n [pTooltip]=\"getFormattedCpf(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCpf(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CNPJ'\"\n [pTooltip]=\"getFormattedCnpj(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCnpj(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchDefault\n [pTooltip]=\"rowData?.pixKey\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKey }}</span>\n </td>\n </ng-container>\n <td [pTooltip]=\"getFormattedPercentage(rowData?.percentage)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedPercentage(rowData?.percentage) }}</span>\n </td>\n <td id=\"col-actions-{{key}}\" class=\"col-actions \"\n *ngIf=\"actions && actions(rowData, key)?.length && showButtonView\">\n <s-button id=\"table-admission-btn-actions-{{key}}\"\n *ngIf=\"!isViewMode && actions(rowData, key).length > 1\" [label]=\"actionLabel\"\n priority=\"default\" [model]=\"scopedActions(rowData, key)\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n\n <s-button id=\"table-admission-btn-action-{{key}}\"\n *ngIf=\"!isViewMode && actions(rowData, key).length <= 1\"\n [label]=\"scopedActions(rowData, key)[0].label\"\n priority=\"default\"\n (click)=\"scopedActions(rowData, key)[0].command()\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\" let-columns>\n <tr>\n <td [attr.colspan]=\"columns.length +2\">\n {{'hcm.payroll.admission_empty_message'|translate}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span *ngIf=\"totalRecords\">{{recordsMessage}}</span>\n </ng-template>\n </p-table>\n</div>\n\n<!-- Template exlusivo para edi\u00E7\u00E3o de pix via modal-->\n<div *ngIf=\"!withSideBar && showEditMode && (hideFields | async)\" class=\"ui-g-12\">\n <!-- Bot\u00E3o Adicionar -->\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n id=\"btn-save\"\n label=\"{{ 'hcm.payroll.historical_pix_account_add' | translate}}\"\n priority=\"primary\"\n (onClick)=\"addPix()\">\n </s-button>\n </div>\n </div>\n\n <!-- Tabela -->\n <p-table #dataListPix sortField=\"percentage\"\n [columns]=\"cols\"\n [value]=\"addExistentHistoricData\"\n [pageLinks]=\"3\"\n [paginator]=\"true\"\n [responsive]=\"true\"\n [rows]=\"10\"\n [resetPageOnSort]=\"false\"\n [tableStyle]=\"{'margin-top': '2rem'}\"\n [customSort]=\"true\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of cols\">\n {{ col.label }}\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-item let-rowIndex=\"rowIndex\">\n <ng-container *ngIf=\"formGroupByRow[rowIndex]\" [formGroup]=\"formGroupByRow[rowIndex]\">\n <tr>\n <!-- Tipo de Chave -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.pixKeyType\" pEditableColumnField=\"pixKeyType\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <div style=\"width: 100%; position: relative;\">\n <p-autoComplete\n [suggestions]=\"suggestions\"\n (completeMethod)=\"filterPixKeyType($event)\"\n formControlName=\"pixKeyType\"\n [dropdown]=\"true\"\n (onSelect)=\"onPixKeyTypeChange($event, rowIndex)\"\n (onClear)=\"onPixKeyTypeClear(rowIndex)\"\n (ngModelChange)=\"onSyncValue('pixKeyType', rowIndex)\"\n field=\"value\"\n placeholder=\"{{'hcm.payroll.select' | translate}}\"\n appendTo=\"body\"\n [panelStyle]=\"{ maxWidth: '300px', width: '100%' }\"\n [inputStyle]=\"{ width: '100%' }\"\n ></p-autoComplete>\n\n <s-control-errors [control]=\"formGroupByRow[rowIndex]?.get('pixKeyType')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n pixKeyTypeBankAccountDuplicate: 'hcm.payroll.historical_pix_key_type_bank_account_duplicate' | translate\n }\">\n </s-control-errors>\n </div>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ item.pixKeyType?.value }}\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Chave Pix -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.pixKey\" pEditableColumnField=\"pixKey\"\n [ngClass]=\"{'required': item.pixKeyType.key !== 'BANK_ACCOUNT',\n 'disabled': item.pixKeyType && item.pixKeyType.key === 'BANK_ACCOUNT'\n }\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <ng-container [ngSwitch]=\"item.pixKeyType.key\">\n <input *ngSwitchCase=\"'TELEPHONE'\"\n only-number\n pInputText\n type=\"text\"\n formControlName=\"pixKey\"\n (keyup)=\"phoneMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n maxlength=\"15\"\n placeholder=\"(__) ____-____\" />\n\n <input *ngSwitchCase=\"'CPF'\"\n type=\"text\"\n pInputText\n formControlName=\"pixKey\"\n maxlength=\"14\"\n placeholder=\"___.___.___-__\"\n (input)=\"onPixKeyInput($event, rowIndex)\"\n (blur)=\"onBlurPixCpfAndCnpj(rowIndex)\"\n (keyup)=\"cpfMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\" />\n\n <input *ngSwitchCase=\"'CNPJ'\"\n type=\"text\"\n pInputText\n formControlName=\"pixKey\"\n maxlength=\"18\"\n placeholder=\"___.___.___/____-__\"\n (input)=\"onPixKeyInput($event, rowIndex)\"\n (blur)=\"onBlurPixCpfAndCnpj(rowIndex)\"\n (keyup)=\"cnpjMask($event)\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\" />\n\n <input *ngSwitchCase=\"'EMAIL'\"\n pInputText\n type=\"email\"\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n placeholder=\"{{ 'hcm.payroll.employees_addition_email' | translate }}\" />\n\n <input *ngSwitchCase=\"'BANK_ACCOUNT'\"\n pInputText\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n [disabled]=\"true\" />\n\n <input *ngSwitchDefault\n pInputText\n type=\"text\"\n formControlName=\"pixKey\"\n (ngModelChange)=\"onSyncValue('pixKey', rowIndex)\"\n maxlength=\"100\" />\n </ng-container>\n\n <s-control-errors *ngIf=\"isShowPixKeyFieldValidatorMessage\"\n [control]=\"formGroupByRow[rowIndex]?.get('pixKey')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n invalidPhoneNumber: 'hcm.payroll.employees_addition_invalid_phone_number' | translate: { value: formGroupByRow[rowIndex]?.get('pixKey').value },\n invalidEmail: 'hcm.payroll.employees_addition_email_invalid' | translate,\n cpfNotValid: 'hcm.payroll.employees_addition_cpf_error' | translate,\n cnpjNotValid: 'hcm.payroll.employees_addition_cnpj_error' | translate\n }\">\n </s-control-errors>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ getFormattedPixKey(item.pixKeyType?.key, item.pixKey) }}\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Percentual -->\n <td class=\"ui-md-6 ui-sm-12 required\"\n [pEditableColumn]=\"item.percentage\" pEditableColumnField=\"percentage\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <input\n pInputText type=\"number\"\n formControlName=\"percentage\"\n (ngModelChange)=\"onSyncValue('percentage', rowIndex)\"\n >\n <s-control-errors\n [control]=\"formGroupByRow[rowIndex]?.get('percentage')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n maxlength: 'hcm.payroll.error_max_length' | translate: { value: '6' },\n max: 'hcm.payroll.error_max_value_number' | translate: { value: maxValuePercentage },\n min: 'hcm.payroll.error_min_value_number' | translate: { value: '0,01' }\n }\">\n </s-control-errors>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{ item.percentage?.toFixed(2).replace('.', ',') }}%\n </ng-template>\n </p-cellEditor>\n </td>\n\n <!-- Bot\u00E3o de excluir -->\n <td>\n <s-button\n id=\"btn-delete\"\n label=\"{{ 'hcm.payroll.delete' | translate }}\"\n priority=\"default\"\n (onClick)=\"deletePix(rowIndex)\">\n </s-button>\n </td>\n </tr>\n </ng-container>\n </ng-template>\n </p-table>\n</div>\n",
|
|
9638
|
-
|
|
9639
|
-
|
|
9640
|
-
|
|
8828
|
+
};
|
|
8829
|
+
HistoricalPixAccountComponent.ctorParameters = () => [
|
|
8830
|
+
{ type: TranslateService },
|
|
8831
|
+
{ type: ChangeDetectorRef },
|
|
8832
|
+
{ type: FormBuilder },
|
|
8833
|
+
{ type: MessageService }
|
|
8834
|
+
];
|
|
8835
|
+
__decorate([
|
|
8836
|
+
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
8837
|
+
], HistoricalPixAccountComponent.prototype, "customFields", void 0);
|
|
8838
|
+
__decorate([
|
|
8839
|
+
Input()
|
|
8840
|
+
], HistoricalPixAccountComponent.prototype, "formGroup", void 0);
|
|
8841
|
+
__decorate([
|
|
8842
|
+
Input()
|
|
8843
|
+
], HistoricalPixAccountComponent.prototype, "fieldFormGroup", void 0);
|
|
8844
|
+
__decorate([
|
|
8845
|
+
Input()
|
|
8846
|
+
], HistoricalPixAccountComponent.prototype, "_dateChange", void 0);
|
|
8847
|
+
__decorate([
|
|
8848
|
+
Input()
|
|
8849
|
+
], HistoricalPixAccountComponent.prototype, "_displayDateChange", void 0);
|
|
8850
|
+
__decorate([
|
|
8851
|
+
Input()
|
|
8852
|
+
], HistoricalPixAccountComponent.prototype, "recordByRow", void 0);
|
|
8853
|
+
__decorate([
|
|
8854
|
+
Input()
|
|
8855
|
+
], HistoricalPixAccountComponent.prototype, "showDateChange", void 0);
|
|
8856
|
+
__decorate([
|
|
8857
|
+
Input()
|
|
8858
|
+
], HistoricalPixAccountComponent.prototype, "msgTooltipAdd", void 0);
|
|
8859
|
+
__decorate([
|
|
8860
|
+
Input()
|
|
8861
|
+
], HistoricalPixAccountComponent.prototype, "isEditMode", void 0);
|
|
8862
|
+
__decorate([
|
|
8863
|
+
Input()
|
|
8864
|
+
], HistoricalPixAccountComponent.prototype, "isViewMode", void 0);
|
|
8865
|
+
__decorate([
|
|
8866
|
+
Input()
|
|
8867
|
+
], HistoricalPixAccountComponent.prototype, "currency", void 0);
|
|
8868
|
+
__decorate([
|
|
8869
|
+
Input()
|
|
8870
|
+
], HistoricalPixAccountComponent.prototype, "customEntity", void 0);
|
|
8871
|
+
__decorate([
|
|
8872
|
+
Input()
|
|
8873
|
+
], HistoricalPixAccountComponent.prototype, "customService", void 0);
|
|
8874
|
+
__decorate([
|
|
8875
|
+
Input()
|
|
8876
|
+
], HistoricalPixAccountComponent.prototype, "withSideBar", void 0);
|
|
8877
|
+
__decorate([
|
|
8878
|
+
Input()
|
|
8879
|
+
], HistoricalPixAccountComponent.prototype, "paramsForm", void 0);
|
|
8880
|
+
__decorate([
|
|
8881
|
+
Input()
|
|
8882
|
+
], HistoricalPixAccountComponent.prototype, "defaultCpfNumber", void 0);
|
|
8883
|
+
__decorate([
|
|
8884
|
+
Input()
|
|
8885
|
+
], HistoricalPixAccountComponent.prototype, "permission", void 0);
|
|
8886
|
+
__decorate([
|
|
8887
|
+
Input()
|
|
8888
|
+
], HistoricalPixAccountComponent.prototype, "listDataReciever", void 0);
|
|
8889
|
+
__decorate([
|
|
8890
|
+
Input()
|
|
8891
|
+
], HistoricalPixAccountComponent.prototype, "showButtonEdit", void 0);
|
|
8892
|
+
__decorate([
|
|
8893
|
+
Output()
|
|
8894
|
+
], HistoricalPixAccountComponent.prototype, "isViewModeActive", void 0);
|
|
8895
|
+
__decorate([
|
|
8896
|
+
Output()
|
|
8897
|
+
], HistoricalPixAccountComponent.prototype, "isEditModeActive", void 0);
|
|
8898
|
+
__decorate([
|
|
8899
|
+
Output()
|
|
8900
|
+
], HistoricalPixAccountComponent.prototype, "isDeleteModeActive", void 0);
|
|
8901
|
+
__decorate([
|
|
8902
|
+
Input()
|
|
8903
|
+
], HistoricalPixAccountComponent.prototype, "dateChange", null);
|
|
8904
|
+
__decorate([
|
|
8905
|
+
Input()
|
|
8906
|
+
], HistoricalPixAccountComponent.prototype, "displayDateChange", null);
|
|
8907
|
+
__decorate([
|
|
8908
|
+
Input()
|
|
8909
|
+
], HistoricalPixAccountComponent.prototype, "addListData", null);
|
|
8910
|
+
__decorate([
|
|
8911
|
+
Input()
|
|
8912
|
+
], HistoricalPixAccountComponent.prototype, "visible", null);
|
|
8913
|
+
HistoricalPixAccountComponent = __decorate([
|
|
8914
|
+
Component({
|
|
8915
|
+
// tslint:disable-next-line:component-selector
|
|
8916
|
+
selector: "c-historical-pix-account",
|
|
8917
|
+
template: "<s-sidebar *ngIf=\"withSideBar\" [visible]=\"visible\" (visibleChange)=\"close()\"\n header=\"{{'hcm.payroll.historical_pix_account_title_form'|translate}}\">\n<pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [paramsForm]=\"paramsForm\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</s-sidebar>\n\n<div *ngIf=\"!withSideBar && !isViewMode\">\n <pix-account [(visible)]=\"visible\"\n [isEditAndViewValue]=\"pixAccountItemInput\"\n [currency]=\"currency\"\n [customEntity]=\"customEntity\"\n [customService]=\"customService\"\n [getListPixAccount]=\"listDataNoPage\"\n [withSideBar]=\"false\"\n [isViewMode]=\"isViewMode\"\n [paramsForm]=\"paramsForm\"\n [permitsEditBankAccountForm]=\"permitsEditBankAccount\"\n (pixAccountItemToList)=\"addItemInList($event)\"\n [defaultCpfNumber]=\"defaultCpfNumber\"></pix-account>\n</div>\n\n<div class=\"ui-g-1\" *ngIf=\"withSideBar && !isEditMode\">\n <div class=\"form-group \">\n <s-button id=\"ta-addPayAnnuity\"\n [disabled]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n (onClick)=\"add()\"\n [pTooltip]=\"getTooltipAndDisableButtonAdd || msgTotalLimitByPercentage\"\n tooltipPosition=\"top\"\n label=\"{{'hcm.payroll.historical_pix_account_add'|translate}}\"></s-button>\n </div>\n</div>\n<div class=\"ui-g-12\">\n <p-table\n id=\"table-annuity\"\n [value]=\"listData\"\n [columns]=\"cols\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n [totalRecords]=\"totalRecords\"\n [sortMode]=\"'multiple'\"\n *sLoadingState=\"loading\"\n [rows]=\"recordByRow\"\n dataKey=\"id\">\n <ng-template pTemplate=\"colgroup\" let-coumns>\n <colgroup>\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-m'\">\n <col [ngClass]=\"'col-default-s'\">\n <col *ngIf=\"!isViewMode\" [ngClass]=\"'col-action'\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <!-- Cabe\u00E7alhos quando da table \u00E9 permitido ordenar as colunas -->\n <tr>\n <!-- Cabe\u00E7alhos das colunas da tabela -->\n <th\n [pSortableColumn]=\"'pixKeyType'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\" id=\"table-0\">\n <span\n id=\"table-annuity-s-0\">{{ 'hcm.payroll.employees_addition_pix_key_type' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key_type' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'pixKey'\"\n [pTooltip]=\"'hcm.payroll.employees_addition_pix_key' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.employees_addition_pix_key' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.employees_addition_pix_key' | translate\"></p-sortIcon>\n </div>\n </th>\n\n <th\n [pSortableColumn]=\"'percentage'\"\n [pTooltip]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n >\n <div class=\"senior-header\">\n <span>{{ 'hcm.payroll.historical_pix_account_label_percentage' | translate }}</span>\n <p-sortIcon class=\"p-sorticon-status\"\n [field]=\"'hcm.payroll.historical_pix_account_label_percentage' | translate\"></p-sortIcon>\n </div>\n </th>\n <!-- Cabe\u00E7alho da coluna de a\u00E7\u00F5es -->\n <th *ngIf=\"!isViewMode\" id=\"col-actions\"></th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-key=\"rowIndex\">\n\n <tr [ngClass]=\"'row'+key\" [pSelectableRow]=\"rowData\">\n <td [pTooltip]=\"rowData?.pixKeyType.value\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKeyType.value }}</span>\n </td>\n\n <ng-container [ngSwitch]=\"rowData?.pixKeyType.key\">\n <td *ngSwitchCase=\"'TELEPHONE'\"\n [pTooltip]=\"getFormattedTelephoneNumber(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedTelephoneNumber(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CPF'\"\n [pTooltip]=\"getFormattedCpf(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCpf(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchCase=\"'CNPJ'\"\n [pTooltip]=\"getFormattedCnpj(rowData?.pixKey)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedCnpj(rowData?.pixKey) }}</span>\n </td>\n <td *ngSwitchDefault\n [pTooltip]=\"rowData?.pixKey\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ rowData?.pixKey }}</span>\n </td>\n </ng-container>\n <td [pTooltip]=\"getFormattedPercentage(rowData?.percentage)\" tooltipPosition=\"top\"\n showDelay=\"500\">\n <span>{{ getFormattedPercentage(rowData?.percentage) }}</span>\n </td>\n <td id=\"col-actions-{{key}}\" class=\"col-actions \"\n *ngIf=\"actions && actions(rowData, key)?.length && !isViewMode\">\n <s-button id=\"table-admission-btn-actions-{{key}}\"\n *ngIf=\"actions(rowData, key).length > 1\" [label]=\"actionLabel\"\n priority=\"default\" [model]=\"scopedActions(rowData, key)\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n\n <s-button id=\"table-admission-btn-action-{{key}}\"\n *ngIf=\"actions(rowData, key).length <= 1\"\n [label]=\"scopedActions(rowData, key)[0].label\"\n priority=\"default\"\n (click)=\"scopedActions(rowData, key)[0].command()\"\n [disabled]=\"false\" [auxiliary]=\"true\"></s-button>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\" let-columns>\n <tr>\n <td [attr.colspan]=\"columns.length +2\">\n {{'hcm.payroll.admission_empty_message'|translate}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span *ngIf=\"totalRecords\">{{recordsMessage}}</span>\n </ng-template>\n </p-table>\n</div>\n",
|
|
8918
|
+
styles: [".refresh{width:100%!important}#table-annuity .col-default-s{width:10%}#table-annuity .col-default-m{width:12%}#table-annuity .col-default-l{width:16%}#table-annuity .col-action{width:10%}#table-annuity .icon-warning{text-align:center!important;color:#ff6d00c7!important}@media screen and (max-width:612px){#table-annuity .col-default-1,#table-annuity .col-default-2{width:16%}#table-annuity .col-default-3{width:26%}#table-annuity .col-icon{width:10%}#table-annuity .col-action{width:27%}}#main{display:-webkit-box;display:flex;height:100%;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}#main form{height:100%}#main .footer{border-top:1px solid #ccc;padding-top:15px;margin-top:15px;flex-shrink:0;margin-bottom:-18px}#main .footer-s-border{padding-left:7px;flex-shrink:0;margin-bottom:-18px}"]
|
|
8919
|
+
})
|
|
8920
|
+
], HistoricalPixAccountComponent);
|
|
8921
|
+
|
|
8922
|
+
class GenericValidator {
|
|
8923
|
+
constructor() { }
|
|
8924
|
+
/**
|
|
8925
|
+
* Valida o CEI (Cadastro específico de INSS) digitado.
|
|
8926
|
+
*/
|
|
8927
|
+
static isValidCei(control) {
|
|
8928
|
+
const cei = control.value;
|
|
8929
|
+
if (!cei)
|
|
8930
|
+
return null;
|
|
8931
|
+
else if (cei.length != 11)
|
|
8932
|
+
return null;
|
|
8933
|
+
const multiplicadorBase = "3298765432";
|
|
8934
|
+
let total = 0;
|
|
8935
|
+
let resto = 0;
|
|
8936
|
+
let multiplicando = 0;
|
|
8937
|
+
let multiplicador = 0;
|
|
8938
|
+
if (cei.length !== 11 ||
|
|
8939
|
+
cei === "00000000000" ||
|
|
8940
|
+
cei === "11111111111" ||
|
|
8941
|
+
cei === "22222222222" ||
|
|
8942
|
+
cei === "33333333333" ||
|
|
8943
|
+
cei === "44444444444" ||
|
|
8944
|
+
cei === "55555555555" ||
|
|
8945
|
+
cei === "66666666666" ||
|
|
8946
|
+
cei === "77777777777" ||
|
|
8947
|
+
cei === "88888888888" ||
|
|
8948
|
+
cei === "99999999999")
|
|
8949
|
+
return { invalidCei: true };
|
|
8950
|
+
else {
|
|
8951
|
+
for (let i = 0; i < 10; i++) {
|
|
8952
|
+
multiplicando = parseInt(cei.substring(i, i + 1), 10);
|
|
8953
|
+
multiplicador = parseInt(multiplicadorBase.substring(i, i + 1), 10);
|
|
8954
|
+
total += multiplicando * multiplicador;
|
|
8955
|
+
}
|
|
8956
|
+
resto = 11 - (total % 11);
|
|
8957
|
+
resto = resto === 10 || resto === 11 ? 0 : resto;
|
|
8958
|
+
const digito = parseInt("" + cei.charAt(10), 10);
|
|
8959
|
+
return resto === digito ? null : { invalidCei: true };
|
|
8960
|
+
}
|
|
8961
|
+
}
|
|
8962
|
+
/**
|
|
8963
|
+
* Valida se o CPF é valido. Deve-se ser informado o cpf sem máscara.
|
|
8964
|
+
*/
|
|
8965
|
+
static isValidCpf(control) {
|
|
8966
|
+
const cpf = control.value;
|
|
8967
|
+
if (cpf) {
|
|
8968
|
+
let numbers, digits, sum, i, result, equalDigits;
|
|
8969
|
+
equalDigits = 1;
|
|
8970
|
+
if (cpf.length < 11) {
|
|
8971
|
+
return null;
|
|
8972
|
+
}
|
|
8973
|
+
for (i = 0; i < cpf.length - 1; i++) {
|
|
8974
|
+
if (cpf.charAt(i) !== cpf.charAt(i + 1)) {
|
|
8975
|
+
equalDigits = 0;
|
|
8976
|
+
break;
|
|
8977
|
+
}
|
|
8978
|
+
}
|
|
8979
|
+
if (!equalDigits) {
|
|
8980
|
+
numbers = cpf.substring(0, 9);
|
|
8981
|
+
digits = cpf.substring(9);
|
|
8982
|
+
sum = 0;
|
|
8983
|
+
for (i = 10; i > 1; i--) {
|
|
8984
|
+
sum += numbers.charAt(10 - i) * i;
|
|
8985
|
+
}
|
|
8986
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8987
|
+
if (result !== Number(digits.charAt(0))) {
|
|
8988
|
+
return { cpfNotValid: true };
|
|
8989
|
+
}
|
|
8990
|
+
numbers = cpf.substring(0, 10);
|
|
8991
|
+
sum = 0;
|
|
8992
|
+
for (i = 11; i > 1; i--) {
|
|
8993
|
+
sum += numbers.charAt(11 - i) * i;
|
|
8994
|
+
}
|
|
8995
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8996
|
+
if (result !== Number(digits.charAt(1))) {
|
|
8997
|
+
return { cpfNotValid: true };
|
|
8998
|
+
}
|
|
8999
|
+
return null;
|
|
9000
|
+
}
|
|
9001
|
+
else {
|
|
9002
|
+
return { cpfNotValid: true };
|
|
9003
|
+
}
|
|
9004
|
+
}
|
|
9005
|
+
return null;
|
|
9006
|
+
}
|
|
9007
|
+
/**
|
|
9008
|
+
* Valida se o CNPJ é valido. Deve-se ser informado o cpf sem máscara.
|
|
9009
|
+
*/
|
|
9010
|
+
static isValidCnpj(control) {
|
|
9011
|
+
let cnpj = control.value;
|
|
9012
|
+
if (cnpj) {
|
|
9013
|
+
let size, numbers, digits, sum, pos, result;
|
|
9014
|
+
cnpj = cnpj.replace(/[^\d]+/g, '');
|
|
9015
|
+
if (cnpj.length !== 14) {
|
|
9016
|
+
return null;
|
|
9017
|
+
}
|
|
9018
|
+
// Elimina CNPJs invalidos conhecidos
|
|
9019
|
+
if (cnpj === '00000000000000' ||
|
|
9020
|
+
cnpj === '11111111111111' ||
|
|
9021
|
+
cnpj === '22222222222222' ||
|
|
9022
|
+
cnpj === '33333333333333' ||
|
|
9023
|
+
cnpj === '44444444444444' ||
|
|
9024
|
+
cnpj === '55555555555555' ||
|
|
9025
|
+
cnpj === '66666666666666' ||
|
|
9026
|
+
cnpj === '77777777777777' ||
|
|
9027
|
+
cnpj === '88888888888888' ||
|
|
9028
|
+
cnpj === '99999999999999') {
|
|
9029
|
+
return { cnpjNotValid: true };
|
|
9030
|
+
}
|
|
9031
|
+
// Valida DVs
|
|
9032
|
+
size = cnpj.length - 2;
|
|
9033
|
+
numbers = cnpj.substring(0, size);
|
|
9034
|
+
digits = cnpj.substring(size);
|
|
9035
|
+
sum = 0;
|
|
9036
|
+
pos = size - 7;
|
|
9037
|
+
for (let i = size; i >= 1; i--) {
|
|
9038
|
+
sum += numbers.charAt(size - i) * pos--;
|
|
9039
|
+
if (pos < 2) {
|
|
9040
|
+
pos = 9;
|
|
9041
|
+
}
|
|
9042
|
+
}
|
|
9043
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
9044
|
+
if (result !== Number(digits.charAt(0))) {
|
|
9045
|
+
return { cnpjNotValid: true };
|
|
9046
|
+
}
|
|
9047
|
+
size = size + 1;
|
|
9048
|
+
numbers = cnpj.substring(0, size);
|
|
9049
|
+
sum = 0;
|
|
9050
|
+
pos = size - 7;
|
|
9051
|
+
for (let i = size; i >= 1; i--) {
|
|
9052
|
+
sum += numbers.charAt(size - i) * pos--;
|
|
9053
|
+
if (pos < 2) {
|
|
9054
|
+
pos = 9;
|
|
9055
|
+
}
|
|
9056
|
+
}
|
|
9057
|
+
result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
9058
|
+
if (result !== Number(digits.charAt(1))) {
|
|
9059
|
+
return { cnpjNotValid: true };
|
|
9060
|
+
}
|
|
9061
|
+
return null;
|
|
9062
|
+
}
|
|
9063
|
+
return null;
|
|
9064
|
+
}
|
|
9065
|
+
/**
|
|
9066
|
+
* Válida o número de telefone da chave PIX.
|
|
9067
|
+
*/
|
|
9068
|
+
static isValidPhoneNumber(control) {
|
|
9069
|
+
let cellPhoneKey = control.value || '';
|
|
9070
|
+
cellPhoneKey = cellPhoneKey.replace(/[\s()-]/g, '');
|
|
9071
|
+
const regexNumberTelephone = /^[1-9][\d]{1,2}\d{8,10}$/;
|
|
9072
|
+
const isValidNumberTelephone = regexNumberTelephone.test(cellPhoneKey);
|
|
9073
|
+
return isValidNumberTelephone ? null : { invalidPhoneNumber: true };
|
|
9074
|
+
}
|
|
9075
|
+
/**
|
|
9076
|
+
* Valida o email da chave PIX.
|
|
9077
|
+
*/
|
|
9078
|
+
static isValidEmail(control) {
|
|
9079
|
+
const emailKey = control.value;
|
|
9080
|
+
const regexValidEmail = /^[\w-\.]+@[\w-]+(\.[\w-]{2,4}){1,2}$/;
|
|
9081
|
+
const isValidEmail = regexValidEmail.test(emailKey);
|
|
9082
|
+
return isValidEmail ? null : { invalidEmail: true };
|
|
9083
|
+
}
|
|
9084
|
+
}
|
|
9641
9085
|
|
|
9642
|
-
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
9643
|
-
constructor(formBuilder, cd
|
|
9644
|
-
|
|
9086
|
+
let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent {
|
|
9087
|
+
constructor(formBuilder, cd) {
|
|
9088
|
+
this.formBuilder = formBuilder;
|
|
9645
9089
|
this.cd = cd;
|
|
9646
|
-
this.sharedStateService = sharedStateService;
|
|
9647
9090
|
this.withSideBar = true;
|
|
9648
9091
|
this.isEditMode = false;
|
|
9649
|
-
this.
|
|
9092
|
+
this.paramsForm = new FormGroup({});
|
|
9093
|
+
this.defaultCpfNumber = null;
|
|
9094
|
+
this.permitsEditBankAccountForm = false;
|
|
9650
9095
|
this.visibleChange = new EventEmitter();
|
|
9651
9096
|
this.pixAccountItemToList = new EventEmitter();
|
|
9652
9097
|
this.ngUnsubscribe = new Subject();
|
|
9098
|
+
this.initialValidatorOfPercentage = [Validators.required, Validators.min(0.01)];
|
|
9653
9099
|
this.labelBtnAdd = "hcm.payroll.employees_add";
|
|
9100
|
+
this.maxValuePercentage = 100.00;
|
|
9654
9101
|
this.visibleBtnSave = true;
|
|
9655
9102
|
this.isView = false;
|
|
9656
9103
|
this.isShowPixKeyFieldValidatorMessage = false;
|
|
9657
|
-
this.
|
|
9104
|
+
this.createFormGroup();
|
|
9658
9105
|
this.registerSubjects();
|
|
9659
9106
|
}
|
|
9660
|
-
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
|
+
}
|
|
9661
9117
|
ngAfterViewInit() {
|
|
9662
9118
|
this.cd.detectChanges();
|
|
9663
9119
|
}
|
|
@@ -9665,7 +9121,39 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9665
9121
|
this.ngUnsubscribe.next(true);
|
|
9666
9122
|
this.ngUnsubscribe.unsubscribe();
|
|
9667
9123
|
}
|
|
9668
|
-
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
|
+
}
|
|
9669
9157
|
get visible() {
|
|
9670
9158
|
return this._visible;
|
|
9671
9159
|
}
|
|
@@ -9696,8 +9184,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9696
9184
|
}
|
|
9697
9185
|
formatPixKeyTelephoneNumber() {
|
|
9698
9186
|
if (this.pixKeyType === "TELEPHONE") {
|
|
9699
|
-
|
|
9700
|
-
pixKeyCtrl.setValue(FormatUtilsService.getFormattedTelephoneNumber(pixKeyCtrl.value));
|
|
9187
|
+
this.pixAccountFormGroup.get("pixKey").setValue(FormatUtilsService.getFormattedTelephoneNumber(this.pixAccountFormGroup.get("pixKey").value));
|
|
9701
9188
|
}
|
|
9702
9189
|
}
|
|
9703
9190
|
convertDTOToShowWithCustomFields(data) {
|
|
@@ -9709,14 +9196,14 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9709
9196
|
this.visibleBtnSave = isEditMode;
|
|
9710
9197
|
if (this.pixAccountFormGroup.get("pixKeyType").value) {
|
|
9711
9198
|
this.pixKeyType = this.pixAccountFormGroup.get("pixKeyType").value.key;
|
|
9712
|
-
this.setPixKeyValidators(isEditMode
|
|
9199
|
+
this.setPixKeyValidators(isEditMode);
|
|
9713
9200
|
this.formatPixKeyTelephoneNumber();
|
|
9714
9201
|
}
|
|
9715
9202
|
configEnabledFields(this.pixAccountFormGroup, isEditMode, [
|
|
9716
9203
|
"pixKeyType",
|
|
9717
9204
|
"pixKey",
|
|
9718
9205
|
"percentage",
|
|
9719
|
-
"customFields"
|
|
9206
|
+
"customFields",
|
|
9720
9207
|
], []);
|
|
9721
9208
|
}
|
|
9722
9209
|
close() {
|
|
@@ -9724,11 +9211,13 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9724
9211
|
this.visible = false;
|
|
9725
9212
|
}
|
|
9726
9213
|
addItem() {
|
|
9214
|
+
this.pixAccountFormGroup.updateValueAndValidity();
|
|
9215
|
+
verifyValidationsForm.call(this.pixAccountFormGroup);
|
|
9727
9216
|
if (this.pixAccountFormGroup.valid) {
|
|
9728
9217
|
if (this.employeeId) {
|
|
9729
9218
|
this.pixAccountFormGroup.get("employee").setValue({
|
|
9730
9219
|
tableId: this.employeeId,
|
|
9731
|
-
name: ""
|
|
9220
|
+
name: "",
|
|
9732
9221
|
});
|
|
9733
9222
|
}
|
|
9734
9223
|
this.pixAccountItemToList.emit(this.pixAccountFormGroup.getRawValue());
|
|
@@ -9752,9 +9241,13 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9752
9241
|
return {
|
|
9753
9242
|
prefix: "",
|
|
9754
9243
|
thousands: this.currency.thousandsSeparator,
|
|
9755
|
-
decimal: this.currency.decimalSeparator
|
|
9244
|
+
decimal: this.currency.decimalSeparator,
|
|
9756
9245
|
};
|
|
9757
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
|
+
*/
|
|
9758
9251
|
set getListPixAccount(pixAccountList) {
|
|
9759
9252
|
if (pixAccountList) {
|
|
9760
9253
|
this.setValidatorsAccordingList(pixAccountList, null, false);
|
|
@@ -9763,23 +9256,143 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
9763
9256
|
this.resetForm();
|
|
9764
9257
|
}
|
|
9765
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
|
+
}
|
|
9766
9337
|
set isViewMode(condition) {
|
|
9767
9338
|
this.isView = !!(condition && !this.withSideBar);
|
|
9768
9339
|
this.configEnableFields(!this.isView);
|
|
9769
9340
|
if (!this.isView)
|
|
9770
9341
|
this.resetForm();
|
|
9771
9342
|
}
|
|
9772
|
-
|
|
9773
|
-
|
|
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
|
+
}
|
|
9774
9372
|
}
|
|
9775
|
-
|
|
9776
|
-
|
|
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
|
+
};
|
|
9777
9391
|
}
|
|
9778
9392
|
};
|
|
9779
9393
|
HistoricalPixAccountFormComponent.ctorParameters = () => [
|
|
9780
9394
|
{ type: FormBuilder },
|
|
9781
|
-
{ type: ChangeDetectorRef }
|
|
9782
|
-
{ type: SharedStateService }
|
|
9395
|
+
{ type: ChangeDetectorRef }
|
|
9783
9396
|
];
|
|
9784
9397
|
__decorate([
|
|
9785
9398
|
ViewChild(CustomFieldsComponent$1, { static: true })
|
|
@@ -9801,7 +9414,13 @@ __decorate([
|
|
|
9801
9414
|
], HistoricalPixAccountFormComponent.prototype, "isEditMode", void 0);
|
|
9802
9415
|
__decorate([
|
|
9803
9416
|
Input()
|
|
9804
|
-
], HistoricalPixAccountFormComponent.prototype, "
|
|
9417
|
+
], HistoricalPixAccountFormComponent.prototype, "paramsForm", void 0);
|
|
9418
|
+
__decorate([
|
|
9419
|
+
Input()
|
|
9420
|
+
], HistoricalPixAccountFormComponent.prototype, "defaultCpfNumber", void 0);
|
|
9421
|
+
__decorate([
|
|
9422
|
+
Input()
|
|
9423
|
+
], HistoricalPixAccountFormComponent.prototype, "permitsEditBankAccountForm", void 0);
|
|
9805
9424
|
__decorate([
|
|
9806
9425
|
Output()
|
|
9807
9426
|
], HistoricalPixAccountFormComponent.prototype, "visibleChange", void 0);
|
|
@@ -9820,20 +9439,29 @@ __decorate([
|
|
|
9820
9439
|
__decorate([
|
|
9821
9440
|
Input()
|
|
9822
9441
|
], HistoricalPixAccountFormComponent.prototype, "isViewMode", null);
|
|
9823
|
-
__decorate([
|
|
9824
|
-
Input()
|
|
9825
|
-
], HistoricalPixAccountFormComponent.prototype, "paramsForm", null);
|
|
9826
|
-
__decorate([
|
|
9827
|
-
Input()
|
|
9828
|
-
], HistoricalPixAccountFormComponent.prototype, "defaultCpfNumber", null);
|
|
9829
9442
|
HistoricalPixAccountFormComponent = __decorate([
|
|
9830
9443
|
Component({
|
|
9831
9444
|
selector: "pix-account",
|
|
9832
|
-
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",
|
|
9833
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}"]
|
|
9834
9447
|
})
|
|
9835
9448
|
], HistoricalPixAccountFormComponent);
|
|
9836
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
|
+
|
|
9837
9465
|
let HistoricalPixAccountModule = class HistoricalPixAccountModule {
|
|
9838
9466
|
};
|
|
9839
9467
|
HistoricalPixAccountModule = __decorate([
|
|
@@ -9861,8 +9489,6 @@ HistoricalPixAccountModule = __decorate([
|
|
|
9861
9489
|
CustomFieldsModule$1,
|
|
9862
9490
|
PanelModule,
|
|
9863
9491
|
InputMaskModule,
|
|
9864
|
-
DropdownModule,
|
|
9865
|
-
TabViewModule,
|
|
9866
9492
|
],
|
|
9867
9493
|
declarations: [HistoricalPixAccountComponent, HistoricalPixAccountFormComponent],
|
|
9868
9494
|
providers: [HistoricalPixAccountService, ConfirmationService],
|
|
@@ -9901,7 +9527,7 @@ HistoricalPixAccountListService = __decorate([
|
|
|
9901
9527
|
|
|
9902
9528
|
const moment$e = moment_;
|
|
9903
9529
|
let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent {
|
|
9904
|
-
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService
|
|
9530
|
+
constructor(confirmationService, translateService, activatedRoute, cd, router, messageService, historicalPixAccountListService) {
|
|
9905
9531
|
this.confirmationService = confirmationService;
|
|
9906
9532
|
this.translateService = translateService;
|
|
9907
9533
|
this.activatedRoute = activatedRoute;
|
|
@@ -9909,14 +9535,13 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9909
9535
|
this.router = router;
|
|
9910
9536
|
this.messageService = messageService;
|
|
9911
9537
|
this.historicalPixAccountListService = historicalPixAccountListService;
|
|
9912
|
-
this.sharedStateService = sharedStateService;
|
|
9913
9538
|
this.endPoint = "hcm/payroll/queries/historicalEmployeePixQuery";
|
|
9914
9539
|
this.keyPayload = "historicalEmployeePix";
|
|
9915
9540
|
this.withSidebar = true;
|
|
9916
9541
|
this.isOnlyView = new EventEmitter();
|
|
9917
9542
|
this.isOnlyEdit = new EventEmitter();
|
|
9918
9543
|
this.enableView = new EventEmitter();
|
|
9919
|
-
this.
|
|
9544
|
+
this.enableEdit = new EventEmitter();
|
|
9920
9545
|
this.ngUnsubscribe = new Subject();
|
|
9921
9546
|
this.loading = true;
|
|
9922
9547
|
this.columns = [
|
|
@@ -9936,7 +9561,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9936
9561
|
ngOnDestroy() {
|
|
9937
9562
|
this.ngUnsubscribe.next();
|
|
9938
9563
|
this.ngUnsubscribe.complete();
|
|
9939
|
-
this.unsubscribe();
|
|
9940
9564
|
}
|
|
9941
9565
|
ngAfterViewInit() {
|
|
9942
9566
|
this.cd.detectChanges();
|
|
@@ -9954,20 +9578,14 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9954
9578
|
label: this.translateService.instant("hcm.payroll.employees_image_cropper_view"),
|
|
9955
9579
|
command: () => {
|
|
9956
9580
|
if (this.isAllowToViewHistorical) {
|
|
9957
|
-
this.sharedStateService.setHideField(true);
|
|
9958
|
-
this.sharedStateService.setShowButton(false);
|
|
9959
|
-
this.sharedStateService.setShowEditMode(false);
|
|
9960
9581
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9961
9582
|
if (this.withSidebar) {
|
|
9962
9583
|
this.isOnlyView.emit(true);
|
|
9963
|
-
this.isOnlyEdit.emit(false);
|
|
9964
|
-
this.sharedStateService.setHideBtnAddForViewMode(true);
|
|
9965
9584
|
this.router.navigate([`historical-pix-account/${dateChange}`], {
|
|
9966
9585
|
relativeTo: this.activatedRoute,
|
|
9967
9586
|
});
|
|
9968
9587
|
}
|
|
9969
9588
|
else {
|
|
9970
|
-
this.sharedStateService.setSaveButton(false);
|
|
9971
9589
|
this.enableView.emit(dateChange);
|
|
9972
9590
|
}
|
|
9973
9591
|
}
|
|
@@ -9980,25 +9598,16 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
9980
9598
|
label: this.translateService.instant("hcm.payroll.edit"),
|
|
9981
9599
|
command: () => {
|
|
9982
9600
|
if (this.isAllowToEditHistorical) {
|
|
9983
|
-
this.sharedStateService.setHideField(true);
|
|
9984
|
-
this.sharedStateService.setShowButton(false);
|
|
9985
|
-
this.sharedStateService.setShowEditMode(true);
|
|
9986
9601
|
const dateChange = rowData && rowData.dateChange && moment$e(rowData.dateChange, this.dateFormat).format("YYYY-MM-DD");
|
|
9987
9602
|
if (this.withSidebar) {
|
|
9988
9603
|
this.isOnlyView.emit(false);
|
|
9989
9604
|
this.isOnlyEdit.emit(true);
|
|
9990
|
-
this.sharedStateService.setHideBtnAddForViewMode(false);
|
|
9991
9605
|
this.router.navigate([`historical-pix-account/${dateChange}`], {
|
|
9992
9606
|
relativeTo: this.activatedRoute,
|
|
9993
9607
|
});
|
|
9994
|
-
this.sharedStateService.setShouldReloadWindowOnlyEditMode(true);
|
|
9995
9608
|
}
|
|
9996
9609
|
else {
|
|
9997
|
-
|
|
9998
|
-
this.sharedStateService.triggerActiveValidatorsOnEditModalOpen();
|
|
9999
|
-
});
|
|
10000
|
-
this.sharedStateService.setSaveButton(true);
|
|
10001
|
-
this.enableView.emit(dateChange);
|
|
9610
|
+
this.enableEdit.emit(dateChange);
|
|
10002
9611
|
}
|
|
10003
9612
|
}
|
|
10004
9613
|
else {
|
|
@@ -10082,19 +9691,6 @@ let HistoricalPixAccountListComponent = class HistoricalPixAccountListComponent
|
|
|
10082
9691
|
this.lastRecord = payload[0];
|
|
10083
9692
|
}
|
|
10084
9693
|
}
|
|
10085
|
-
unsubscribe() {
|
|
10086
|
-
if (this._subscription) {
|
|
10087
|
-
this._subscription.unsubscribe();
|
|
10088
|
-
}
|
|
10089
|
-
}
|
|
10090
|
-
set hideFieldsOnAdd$(subject) {
|
|
10091
|
-
this.unsubscribe();
|
|
10092
|
-
if (subject) {
|
|
10093
|
-
this._subscription = subject.subscribe((value) => {
|
|
10094
|
-
this.sharedStateService.setHideField(value);
|
|
10095
|
-
});
|
|
10096
|
-
}
|
|
10097
|
-
}
|
|
10098
9694
|
get isAllowToAddHistorical() {
|
|
10099
9695
|
return (this.permission["incluir"]);
|
|
10100
9696
|
}
|
|
@@ -10124,8 +9720,7 @@ HistoricalPixAccountListComponent.ctorParameters = () => [
|
|
|
10124
9720
|
{ type: ChangeDetectorRef },
|
|
10125
9721
|
{ type: Router },
|
|
10126
9722
|
{ type: MessageService },
|
|
10127
|
-
{ type: HistoricalPixAccountListService }
|
|
10128
|
-
{ type: SharedStateService }
|
|
9723
|
+
{ type: HistoricalPixAccountListService }
|
|
10129
9724
|
];
|
|
10130
9725
|
__decorate([
|
|
10131
9726
|
ViewChild(CustomFieldsComponent$1, { static: false })
|
|
@@ -10151,9 +9746,6 @@ __decorate([
|
|
|
10151
9746
|
__decorate([
|
|
10152
9747
|
Input()
|
|
10153
9748
|
], HistoricalPixAccountListComponent.prototype, "withSidebar", void 0);
|
|
10154
|
-
__decorate([
|
|
10155
|
-
Input()
|
|
10156
|
-
], HistoricalPixAccountListComponent.prototype, "hideField", void 0);
|
|
10157
9749
|
__decorate([
|
|
10158
9750
|
Output()
|
|
10159
9751
|
], HistoricalPixAccountListComponent.prototype, "isOnlyView", void 0);
|
|
@@ -10165,10 +9757,7 @@ __decorate([
|
|
|
10165
9757
|
], HistoricalPixAccountListComponent.prototype, "enableView", void 0);
|
|
10166
9758
|
__decorate([
|
|
10167
9759
|
Output()
|
|
10168
|
-
], HistoricalPixAccountListComponent.prototype, "
|
|
10169
|
-
__decorate([
|
|
10170
|
-
Input()
|
|
10171
|
-
], HistoricalPixAccountListComponent.prototype, "hideFieldsOnAdd$", null);
|
|
9760
|
+
], HistoricalPixAccountListComponent.prototype, "enableEdit", void 0);
|
|
10172
9761
|
__decorate([
|
|
10173
9762
|
Input()
|
|
10174
9763
|
], HistoricalPixAccountListComponent.prototype, "reloadList", null);
|
|
@@ -10213,5 +9802,5 @@ HistoricalPixAccountListModule = __decorate([
|
|
|
10213
9802
|
* Generated bundle index. Do not edit.
|
|
10214
9803
|
*/
|
|
10215
9804
|
|
|
10216
|
-
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 };
|
|
10217
9806
|
//# sourceMappingURL=senior-gestao-pessoas-payroll-core.js.map
|