{ "version": 3, "sources": ["src/app/pages/SaludPlus/Nomina/contratos/services/contratos.service.ts", "src/app/pages/SaludPlus/Nomina/contratos/config/contratos.settings.ts", "src/app/pages/SaludPlus/Nomina/contratos/components/contratos.component.ts", "src/app/pages/SaludPlus/Nomina/contratos/components/contratos.component.html", "src/app/pages/SaludPlus/Nomina/contratos/shared/TabContratos/TabContratos.component.ts", "src/app/pages/SaludPlus/Nomina/contratos/shared/TabContratos/TabContratos.component.html", "src/app/pages/SaludPlus/Nomina/contratos/contratos.routing.ts"], "sourcesContent": ["import { HttpClient, HttpErrorResponse, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { ContratoNominaDTO } from '@src/app/models/Nomina/Contrato.model';\r\nimport { ControllerApiList } from '@src/app/models/SaludPlus/Controller/ControllerList';\r\nimport { FiltersSearch } from '@src/app/models/SaludPlus/FilterObject';\r\nimport { SaludPlusApiResponse } from '@src/app/models/base/SaludplusApiResponse';\r\nimport { RequestResultServiceService } from '@src/app/services/Generals/request-result-service.service';\r\nimport { Observable, lastValueFrom, map } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContratosNominaService {\r\n static instance: ContratosNominaService;\r\n error: HttpErrorResponse;\r\n constructor(\r\n private http: HttpClient,\r\n private resolveRequestResultService: RequestResultServiceService,) {\r\n ContratosNominaService.instance = this;\r\n }\r\n\r\n /**\r\n * Guardar registro\r\n * @param Datos datos a guardar\r\n */\r\n Guardar(Datos: ContratoNominaDTO) {\r\n return this.http.post>(\r\n `${ControllerApiList.Nomina.Contrato}`,\r\n Datos\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n }\r\n async GuardarAsync(Datos: ContratoNominaDTO) {\r\n let req = this.http.post>(\r\n `${ControllerApiList.Nomina.Contrato}`,\r\n Datos\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n let dataMap = await lastValueFrom(req);\r\n return dataMap;\r\n }\r\n /**\r\n * Actualizar\r\n * @param Datos datos a actualizar\r\n * @param id id a actualizar\r\n */\r\n ActualizarRegistro(Datos: ContratoNominaDTO, id: number) {\r\n Datos.id = id;\r\n const record = this.http.put>(\r\n `${ControllerApiList.Nomina.Contrato}`,\r\n Datos\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n return record;\r\n }\r\n\r\n /**\r\n * Buscar cargo por su id\r\n * @param id Identificador del registro\r\n * @returns\r\n */\r\n BuscarRegistro(id: number): Observable {\r\n let params = new HttpParams().set(\"idContrato\", id);\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}`,\r\n {\r\n params: params,\r\n }\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n return record;\r\n\r\n\r\n\r\n }\r\n /**\r\n * Eliminar registro por su id\r\n * @param id Identificador del registro\r\n * @returns\r\n */\r\n Delete(id: number): Observable {\r\n let params = new HttpParams().set(\"idContrato\", id);\r\n const record = this.http.delete>(\r\n `${ControllerApiList.Nomina.Contrato}`,\r\n {\r\n params: params,\r\n }\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n return record;\r\n }\r\n\r\n\r\n /**\r\n * Obtener Cargos\r\n * @returns Observable>\r\n */\r\n ObtenerCargos(): Observable {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/Cargos`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n return record;\r\n }\r\n async ObtenerCargosAsync(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/Cargos`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerTiposContratacion(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/TiposContratacion`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerPeriodosPagos(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/PeriodosPagos`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerEstadoContrato(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/EstadoContrato`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerCajaCompensacion(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/CajaCompensacion`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerPromotoraSalud(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.General.General}/Entidades`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerAdministradoraPensiones(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/AdministradoraPensiones`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerFondoCesantia(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/FondoCesantia`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerArl(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/Arl`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n\r\n async ObtenerTipoRiesgos(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/TipoRiesgos`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n\r\n async ObtenerMetodosPago(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/MetodosPago`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerTiposCuenta(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/TiposCuenta`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n async ObtenerBancos(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/Bancos`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n\r\n async ObtenerTipoSalario(): Promise {\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/TiposSalario`\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n\r\n async CargarEmpleados(search: string): Promise {\r\n var prop = \"segundoApellido,primerApellido,segundoNombre,primerNombre,numeroDocumento\";\r\n\r\n\r\n const fromObject =\r\n {\r\n \"pageSize\": 50,\r\n \"pageNumber\": 1,\r\n \"properties\": prop,\r\n \"filter\": search,\r\n \"sort\": \"id\",\r\n }\r\n\r\n let params = new HttpParams({ fromObject: fromObject });\r\n let request = this.http.get>(`${ControllerApiList.Nomina.Empleados}/Listado`, {\r\n params: params,\r\n }).pipe(map((s) => s.result));;\r\n\r\n let dataMap = await lastValueFrom(request);\r\n return dataMap;\r\n }\r\n\r\n\r\n\r\n async ValidarReglasAsync(id: number): Promise {\r\n let params = new HttpParams({ fromObject: { idContrato: id } });\r\n const record = this.http.get>(\r\n `${ControllerApiList.Nomina.Contrato}/ConceptosNomina`, {params:params}\r\n ).pipe(map(response => {\r\n return this.resolveRequestResultService.resolve(response);\r\n }));\r\n\r\n let dataMap = await lastValueFrom(record);\r\n return dataMap;\r\n }\r\n\r\n\r\n\r\n}\r\n", "import { UntypedFormGroup, Validators } from \"@angular/forms\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { FormSearch } from \"src/app/models/base/FormSearch\";\r\nimport { Component, Inject } from \"@angular/core\";\r\nimport {\r\n TegettFormControl,\r\n TypeField,\r\n} from \"src/app/models/Tegett/tegettFormControl\";\r\nimport { SearchTypeFilter } from \"@src/app/models/base/Search/SearchType\";\r\nimport {\r\n MultipleFilter,\r\n MultipleFilterData,\r\n} from \"@src/app/models/Tegett/SimpleFilterData\";\r\nimport { ControllerApiList } from \"@src/app/models/SaludPlus/Controller/ControllerList\";\r\nimport { FiltersRecently } from \"@src/app/models/base/FiltersRecently\";\r\nimport { BaseSearchSetting } from \"@src/app/models/base/BaseSearchSetting\";\r\nimport { EndPointMethods } from \"@src/app/models/base/filterModel\";\r\nimport { CargosDTO } from \"@src/app/models/Nomina/Cargos\";\r\nimport { ContratosNominaService } from \"../services/contratos.service\";\r\nimport { rangoFechasValidator } from \"@src/app/components/Core/directives/generals/validatorError\";\r\n\r\n@Component({\r\n selector: \"app-contratosNominaSettings\",\r\n template: \"\",\r\n})\r\nexport class ContratosSettings implements BaseSearchSetting {\r\n\r\n cargos: MultipleFilter;\r\n\r\n\r\n constructor(\r\n @Inject(Router) private router: Router,\r\n @Inject(ActivatedRoute) private route: ActivatedRoute,\r\n @Inject(ContratosNominaService) private contratoServices: ContratosNominaService,\r\n ) {\r\n\r\n }\r\n async Load() {\r\n this.cargos = await this.Cargos();\r\n\r\n if (this.cargos) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n\r\n\r\n }\r\n /**\r\n * Funcion para armar la busqueda\r\n */\r\n loadFormSearch(): FormSearch {\r\n const search = new FormSearch();\r\n search.formComponents = this.FormComponents();\r\n search.configSearch = {\r\n title: \"Contratos\",\r\n titleIcon: \"fa-duotone fa-solid fa-memo-pad\",\r\n apiSearch: ControllerApiList.Nomina.Contrato,\r\n apiSearchResult: \"Listado\",\r\n apiSearchVersion: 3,\r\n filtersRecently: this.LoadSimpleFilter(),\r\n buttonNewRecordText: \"Nuevo Contrato\",\r\n MethodRequest: EndPointMethods.GET,\r\n buttonNewRecordClick: () => this.newRecord(),\r\n\r\n settings: [\r\n { objectKey: \"id\", sortV3: \"desc\", visible: true },\r\n ],\r\n fields: [\r\n {\r\n renderLabel: \"Número contrato\",\r\n objectKey: \"id\",\r\n autoSize: true,\r\n module: \"nomina\",\r\n pipe: \"ColumnCustom\", icon: \"inherit\",\r\n click: (row) => this.goView(row),\r\n\r\n },\r\n {\r\n objectKey: \"nombreEmpleado\",\r\n renderLabel: \"Empleado\",\r\n },\r\n {\r\n objectKey: \"numeroDocumento\",\r\n renderLabel: \"Número Identificación\",\r\n },\r\n {\r\n objectKey: \"cargo\",\r\n renderLabel: \"Cargo\",\r\n },\r\n {\r\n objectKey: \"tipoContratacion\",\r\n renderLabel: \"Tipo Contratación\",\r\n },\r\n {\r\n objectKey: \"fechaInicio\",\r\n renderLabel: \"Fecha Inicio\",\r\n },\r\n {\r\n objectKey: \"fechaInicio\",\r\n renderLabel: \"Fecha Fin\",\r\n },\r\n\r\n ],\r\n filters: [\r\n { objectKey: \"primerNombre\", type: SearchTypeFilter.Text },\r\n { objectKey: \"segundoNombre\", type: SearchTypeFilter.Text },\r\n { objectKey: \"primerApellido\", type: SearchTypeFilter.Text },\r\n { objectKey: \"segundoApellido\", type: SearchTypeFilter.Text },\r\n {\r\n objectKey: \"idCargo\",\r\n type: SearchTypeFilter.MultipleFilter,\r\n data: this.cargos,\r\n },\r\n\r\n ],\r\n };\r\n return search;\r\n }\r\n\r\n\r\n\r\n\r\n newRecord() {\r\n this.router.navigate([\"../\"], { relativeTo: this.route });\r\n }\r\n\r\n goEdit(id: number) {\r\n this.router.navigate([\"../\", id], {\r\n queryParams: { mode: \"e\" },\r\n queryParamsHandling: \"merge\",\r\n relativeTo: this.route,\r\n });\r\n }\r\n\r\n /**\r\n * ir al registro\r\n * @param row linea proveniente de la busqueda\r\n */\r\n goView(row: any) {\r\n if (row.id) {\r\n this.router.navigate([\"../\", row.id], { relativeTo: this.route });\r\n }\r\n }\r\n\r\n\r\n\r\n async Cargos() {\r\n\r\n let filter = {} as MultipleFilter;\r\n filter.data = [];\r\n filter.label = \"Cargos\";\r\n filter.type = SearchTypeFilter.MultipleFilter;\r\n let dataResponse = await this.contratoServices.ObtenerCargosAsync();\r\n if (dataResponse) {\r\n dataResponse.forEach((elemt, index) => {\r\n let estado = {} as MultipleFilterData;\r\n\r\n estado.field = index;\r\n estado.text = elemt.nombre;\r\n estado.value = elemt.id;\r\n filter.data.push(estado);\r\n });\r\n return filter;\r\n }\r\n\r\n return null;\r\n\r\n }\r\n\r\n\r\n\r\n /**\r\n * Componentes del formulario\r\n */\r\n FormComponents(): UntypedFormGroup {\r\n const formRecord = new UntypedFormGroup(\r\n {\r\n\r\n // IdEmpleado\r\n idEmpleado: new TegettFormControl({\r\n formState: null,\r\n validatorOrOpts: [Validators.required],\r\n asyncValidator: undefined,\r\n label: \"Empleado\",\r\n typeField: TypeField.List,\r\n required: true,\r\n nameControl: \"idEmpleado\"\r\n }),\r\n // idCargo\r\n idCargo: new TegettFormControl({\r\n formState: null,\r\n validatorOrOpts: [Validators.required],\r\n asyncValidator: undefined,\r\n label: \"Cargo\",\r\n typeField: TypeField.List,\r\n required: true,\r\n nameControl: \"idCargo\"\r\n }),\r\n\r\n // Tipo Contratacion\r\n idTerminoContrato: new TegettFormControl({\r\n label: \"Tipo de contratación\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idTipoContratacion\",\r\n funtionData: this.contratoServices.ObtenerTiposContratacion()\r\n }),\r\n\r\n idPeriodoPago: new TegettFormControl({\r\n label: \"Periodo de pago\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idPeriodoPago\",\r\n funtionData: this.contratoServices.ObtenerPeriodosPagos()\r\n }),\r\n\r\n // Salario\r\n salario: new TegettFormControl({\r\n formState: 0,\r\n label: \"Salario\",\r\n validatorOrOpts: [Validators.required],\r\n typeField: TypeField.Input,\r\n required: true,\r\n nameControl: \"salario\",\r\n }),\r\n\r\n\r\n fechaInicio: new TegettFormControl({\r\n label: \"Inicio del contrato\",\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n }),\r\n\r\n fechaFin: new TegettFormControl({\r\n label: \"Fin del contrato\",\r\n required: false,\r\n }),\r\n\r\n estado: new TegettFormControl({\r\n label: \"Estado del contrato\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"estado\",\r\n funtionData: this.contratoServices.ObtenerEstadoContrato()\r\n }),\r\n\r\n\r\n\r\n idMetodoPago: new TegettFormControl({\r\n label: \"Método de Pago\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idMetodoPago\",\r\n funtionData: this.contratoServices.ObtenerMetodosPago()\r\n }),\r\n\r\n idTipoCuenta: new TegettFormControl({\r\n label: \"Tipo de Cuenta\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idTipoCuenta\",\r\n funtionData: this.contratoServices.ObtenerTiposCuenta()\r\n }),\r\n\r\n idBanco: new TegettFormControl({\r\n label: \"Banco\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idBanco\",\r\n funtionData: this.contratoServices.ObtenerBancos()\r\n }),\r\n\r\n numeroCuenta: new TegettFormControl({\r\n validatorOrOpts: [Validators.required],\r\n label: \"Número de cuenta\",\r\n typeField: TypeField.Input,\r\n required: true,\r\n nameControl: \"numeroCuenta\",\r\n }),\r\n\r\n\r\n idTipoSalario: new TegettFormControl({\r\n label: \"Tipo de salario\",\r\n typeField: TypeField.List,\r\n validatorOrOpts: [Validators.required],\r\n required: true,\r\n dataTextField: \"nombre\",\r\n dataValueField: \"id\",\r\n nameControl: \"idTipoSalario\",\r\n funtionData: this.contratoServices.ObtenerTipoSalario()\r\n }),\r\n\r\n\r\n },{validators:rangoFechasValidator('fechaInicio', 'fechaFin')}\r\n );\r\n\r\n return formRecord;\r\n }\r\n\r\n LoadSimpleFilter(): FiltersRecently[] {\r\n let filterdataRecently: FiltersRecently[] = [\r\n {\r\n field: 0,\r\n text: \"Mis Actividades\",\r\n separator: true,\r\n value: \"1\"\r\n },\r\n {\r\n field: 1,\r\n text: \"Actualizado recientemente\",\r\n value: \"2\"\r\n },\r\n {\r\n field: 2,\r\n text: \"Creado recientemente\",\r\n isDefault: true,\r\n value: \"3\"\r\n }\r\n ];\r\n return filterdataRecently\r\n }\r\n}\r\n", "import { Component, Input, OnDestroy, OnInit, Renderer2, TemplateRef, ViewChild, ViewContainerRef, inject } from '@angular/core';\r\nimport { FormControl, FormGroup, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { NavigationEnd } from '@angular/router';\r\nimport { ProcessType, SPlusDialogCloseResult, SPlusDialogSettings, SPlusFormsDialogsService, SPlusMoreOption, SPlusOption, SPlusProcessMessageComponent, SplusTabsFormComponent } from '@saludplus/forms';\r\nimport { ContratoConfiguracionConceptosNominaDTO, ContratoNominaDTO } from '@src/app/models/Nomina/Contrato.model';\r\nimport { SplusBaseForm } from '@src/app/models/base/BaseFormComponent';\r\nimport { Subject, Subscription, takeUntil } from 'rxjs';\r\nimport { ContratosSettings } from '../config/contratos.settings';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { CargosDTO } from '@src/app/models/Nomina/Cargos';\r\nimport { ContratosNominaService } from '../services/contratos.service';\r\nimport { FiltersData } from '@src/app/models/base/filterModel';\r\nimport { Empleados } from '@src/app/models/Nomina/Empleados.model';\r\nimport differenceInDays from 'date-fns/differenceInDays';\r\nimport { EmpleadosSearch } from '../../empleados/config/empleados.search';\r\nimport { IConfiguracionConceptos } from '@src/app/models/Nomina/ConfiguracionConceptos.model';\r\nimport { TercerosDTO } from '@src/app/models/General/TercerosDTO';\r\nimport { CellClickEvent, GridComponent } from '@progress/kendo-angular-grid';\r\n\r\n@Component({\r\n selector: 'app-contratos',\r\n templateUrl: './contratos.component.html',\r\n styleUrls: ['./contratos.component.scss']\r\n})\r\nexport class ContratoNominaComponent extends SplusBaseForm implements OnInit, OnDestroy {\r\n\r\n @ViewChild('tabsComponent', { static: false }) tabsComponent: SplusTabsFormComponent;\r\n @Input() override id = 0;\r\n @Input() override loadSource;\r\n @Input() override processType: ProcessType = ProcessType.create;\r\n\r\n datosContrato: ContratoNominaDTO;\r\n nombreCompleto = \"\";\r\n cargos: CargosDTO[] = [];\r\n empleados: Empleados[] = [];\r\n datosEmpleado: Empleados;\r\n // Forms - control de los estados\r\n maxDate = new Date();\r\n minFinalDate: Date;\r\n maxInicialDate: Date;\r\n ListadoEmpleado = EmpleadosSearch\r\n\r\n @ViewChild(\"container\", { read: ViewContainerRef }) public containerRef: ViewContainerRef;\r\n closePop: boolean = false;\r\n\r\n public dataConceptosAplicados: ContratoConfiguracionConceptosNominaDTO[] = [];\r\n public dataConceptosDisponibles: ContratoConfiguracionConceptosNominaDTO[] = [];\r\n\r\n ValidateOpened: boolean = true;\r\n //listado de opciones --\r\n options: SPlusOption[] = [\r\n {\r\n id: \"Listado\",\r\n icon: \"fa-solid fa-magnifying-glass\",\r\n text: \"Listado\",\r\n link: \"/nomina/contratos/listado\",\r\n },\r\n {\r\n id: \"Ayuda\",\r\n icon: \"fa-solid fa-circle-question\",\r\n text: \"Ayuda\",\r\n action: () => {\r\n this.OpenDocumentacion();\r\n },\r\n },\r\n ];\r\n\r\n //listado de más opciones --\r\n moreOptions: SPlusMoreOption[] = [\r\n {\r\n id: \"CrearContrato\",\r\n showIn: ProcessType.view,\r\n text: \"Crear nuevo contrato\",\r\n icon: \"fa-duotone fa-plus\",\r\n action: () => this.newRecord(),\r\n },\r\n {\r\n id: \"EliminarContrato\",\r\n showIn: ProcessType.edit,\r\n text: \"Eliminar\",\r\n icon: \"fa-solid fa-trash-can\",\r\n action: () => this.dialogEliminar(),\r\n },\r\n ];\r\n filtersEmpleado: FiltersData[] = [];\r\n\r\n prueba = 1;\r\n searchingDocument = false;\r\n private unsubcribe$ = new Subject();\r\n loadingLiquidar = false;\r\n private contratosSettings = inject(ContratosSettings);\r\n private contratosService = inject(ContratosNominaService);\r\n dataSelectedAplicados: ContratoConfiguracionConceptosNominaDTO[] = [];\r\n dataSelectedDisponibles: ContratoConfiguracionConceptosNominaDTO[] = [];\r\n indexSelectionRowAplicados: number[] = [];\r\n indexSelectionRowDisponibles: number[] = [];\r\n editedRowIndex: number = 0;\r\n private renderer = inject(Renderer2);\r\n private docClickSubscription: Subscription = new Subscription();\r\n constructor() {\r\n\r\n super()\r\n this.filtersEmpleado = [\r\n {\r\n propertyName: \"selectionPopup\",\r\n propertyValue: true,\r\n }\r\n ];\r\n\r\n\r\n this.routingState.loadRouting();\r\n\r\n\r\n }\r\n onSubmit(event: any): void {\r\n\r\n this.ValidateOpened = true;\r\n\r\n event.preventDefault();\r\n this.submitted = true;\r\n if (this.FormRecord.valid) {\r\n if (this.FormRecord.pristine || this.searchingDocument) return;\r\n this.isLoading = true;\r\n if (this.processType === this.ProcessType.edit) {\r\n this.UpdateRecord();\r\n } else {\r\n this.SaveRecord();\r\n }\r\n } else {\r\n this.isLoading = false;\r\n }\r\n }\r\n async SaveRecordInPopup() {\r\n let data = {} as ContratoNominaDTO;\r\n data = this.FormRecord.value;\r\n data.idEmpleado = this.FormRecord.get(\"idEmpleado\").value?.id;\r\n let response = await this.contratosService\r\n .GuardarAsync(data);\r\n if (response) {\r\n this.id = response\r\n }\r\n }\r\n onTerceroSelectionChange(event: number | TercerosDTO, dataItem: any) {\r\n if (event === undefined) {\r\n dataItem.idTercero = null;\r\n dataItem.tercero = null;\r\n }\r\n\r\n else if (typeof event === 'number') {\r\n dataItem.idTercero = event;\r\n } else {\r\n dataItem.idTercero = event.id;\r\n dataItem.tercero = event;\r\n if(!this.formGroup) this.formGroup = dataItem;\r\n this.formGroup.get(\"tercero\").setValue(event);\r\n }\r\n //this.gridForm.get('idTercero').setValue(typeof event === 'number' ? event : event.id);\r\n // Realiza cualquier otra lógica necesaria\r\n }\r\n\r\n SaveRecord(): void {\r\n\r\n let data = {} as ContratoNominaDTO;\r\n data = this.FormRecord.value;\r\n data.idEmpleado = this.FormRecord.get(\"idEmpleado\").value?.id;\r\n\r\n this.contratosService\r\n .Guardar(data)\r\n .subscribe({\r\n next: (res) => {\r\n this.isLoading = false;\r\n if (res) {\r\n this.id = res;\r\n if (this.loadSource != 'tab' && this.loadSource != 'popup') {\r\n this.router.navigate([`${res}`], {\r\n queryParams: { mode: \"i\" },\r\n relativeTo: this.route,\r\n });\r\n }\r\n\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n\r\n UpdateRecord(): void {\r\n this.isLoading = true;\r\n this.submitted = true;\r\n let data = {} as ContratoNominaDTO;\r\n data = this.FormRecord.value;\r\n data.idEmpleado = this.FormRecord.get(\"idEmpleado\").value?.id;\r\n this.dataConceptosAplicados.forEach(element => {\r\n element.idTercero = element.tercero?.id;\r\n });\r\n if (this.dataConceptosAplicados.some(s => !s.idTercero)) {\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Error edición\";\r\n dialogSettings.isHtml = true;\r\n dialogSettings.description =\r\n \"Todos los conceptos deben tener un tercero seleccionado\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }];\r\n this.splusFormsDialogsService.Show(dialogSettings);\r\n return;\r\n\r\n }\r\n data.contratoConfiguracionConceptosNomina = this.dataConceptosAplicados;\r\n data.contratoConfiguracionConceptosNomina.forEach(element => {\r\n element.idContrato = Number(this.id);\r\n });\r\n\r\n this.contratosService\r\n .ActualizarRegistro(data, this.id)\r\n .subscribe({\r\n next: (res) => {\r\n this.isLoading = false;\r\n if (res) {\r\n this.router.navigate([], {\r\n queryParams: { mode: \"u\" },\r\n queryParamsHandling: \"merge\",\r\n });\r\n }\r\n\r\n\r\n },\r\n error: (err) => {\r\n if (err instanceof HttpErrorResponse && err.status == 401) return;\r\n console.warn(\"Error critico de lado del cliente\", err);\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Actualizar contrato\";\r\n dialogSettings.description =\r\n \"Hubo un error al intentar actualizar el contrato por favor intentelo más tarde\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }];\r\n this.splusFormsDialogsService.Show(dialogSettings);\r\n this.isLoading = false;\r\n this.submitted = false;\r\n },\r\n });\r\n }\r\n\r\n\r\n DeleteRecord(): void {\r\n this.isDeleting = true;\r\n this.isLoading = true;\r\n this.contratosService.Delete(this.id).subscribe({\r\n next: (res) => {\r\n if (res) {\r\n this.isDeleting = false;\r\n this.router.navigate([\"../\"], {\r\n queryParams: { mode: \"d\" },\r\n queryParamsHandling: \"merge\",\r\n relativeTo: this.route,\r\n });\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n\r\n LoadRecord(): void {\r\n this.isLoading = true;\r\n this.contratosService.BuscarRegistro(this.id).subscribe({\r\n next: (res) => {\r\n this.isDeleting = false;\r\n if (res) {\r\n this.datosContrato = res;\r\n this.empleados = [];\r\n this.empleados.push(res.empleado);\r\n res.fechaInicio = this.intl.parseDate(res.fechaInicio.toString(), [\"G\", \"d\"]);\r\n if (res.fechaFin) {\r\n res.fechaFin = this.intl.parseDate(res.fechaFin.toString(), [\"G\", \"d\"]);\r\n }\r\n\r\n if (this.datosContrato) {\r\n this.FormRecord.patchValue(this.datosContrato);\r\n this.FormRecord.get(\"idEmpleado\").setValue(this.datosContrato.empleado);\r\n\r\n this.TerminoContratoChange(this.FormRecord.get('idTerminoContrato').value);\r\n this.MetodoPagoChange(this.FormRecord.get('idMetodoPago').value);\r\n\r\n\r\n this.isLoading = false;\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n if (err instanceof HttpErrorResponse && err.status == 401) return;\r\n console.warn(\"Error critico de lado del cliente\", err);\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Cargar contrato\";\r\n dialogSettings.description =\r\n \"Hubo un error al intentar cargar el contrato por favor intentelo más tarde\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }];\r\n this.splusFormsDialogsService.Show(dialogSettings);\r\n },\r\n });\r\n }\r\n\r\n goEdit(): void {\r\n this.routingState.goEdit();\r\n }\r\n\r\n cancelEdit(): void {\r\n if (this.processType === ProcessType.create) {\r\n this.goback();\r\n } else if (this.processType === ProcessType.edit) {\r\n // validar si se modificó el formulario visualmente\r\n if (!this.FormRecord.pristine) {\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Cancelar edición\";\r\n dialogSettings.isHtml = true;\r\n dialogSettings.description =\r\n \"Hay cambios pendientes por guardar.
¿Estás seguro que desea cancelar la edición?\";\r\n dialogSettings.actions = [\r\n { text: \"Seguir Editando\" },\r\n { text: \"Si, Cancelar\", themeColor: \"primary\", value: true },\r\n ];\r\n this.splusFormsDialogsService\r\n .Show(dialogSettings)\r\n .pipe(takeUntil(this.unsubcribe$))\r\n .subscribe((result) => {\r\n if (result instanceof SPlusDialogCloseResult) {\r\n console.log(\"close\", result);\r\n } else {\r\n if (result.value) {\r\n this.cancelUpdate();\r\n }\r\n }\r\n });\r\n } else {\r\n this.goback();\r\n }\r\n }\r\n }\r\n /**\r\n * Cancelar edicion\r\n */\r\n cancelUpdate() {\r\n this.FormRecord.patchValue(this.datosContrato);\r\n this.FormRecord.markAsPristine();\r\n this.router.navigate([], {\r\n queryParams: { mode: null },\r\n queryParamsHandling: \"merge\",\r\n });\r\n }\r\n clearForm(): void {\r\n this.FormRecord.reset();\r\n this.FormRecord.updateValueAndValidity();\r\n this.submitted = false;\r\n }\r\n\r\n TerminoContratoChange(selectedValue: any) {\r\n\r\n if (selectedValue == 1) {\r\n\r\n this.FormRecord.get('fechaFin').enable();\r\n this.FormRecord.get('fechaFin').setValidators(Validators.required);\r\n this.FormRecord.get('fechaFin').updateValueAndValidity();\r\n this.FormRecord.get('fechaFin')['required'] = true;\r\n\r\n } else if (selectedValue == 2) {\r\n this.FormRecord.get('fechaFin').reset();\r\n this.FormRecord.get('fechaFin').updateValueAndValidity();\r\n this.FormRecord.get('fechaFin').disable();\r\n this.FormRecord.get('fechaFin')['required'] = false;\r\n\r\n } else {\r\n this.FormRecord.get('fechaFin').enable();\r\n this.FormRecord.get('fechaFin').reset();\r\n this.FormRecord.get('fechaFin').clearValidators();\r\n this.FormRecord.get('fechaFin').updateValueAndValidity();\r\n this.FormRecord.get('fechaFin')['required'] = false;\r\n }\r\n }\r\n\r\n MetodoPagoChange(selectedValue: any) {\r\n if (selectedValue == 1) {\r\n\r\n this.FormRecord.get('idTipoCuenta').reset();\r\n this.FormRecord.get('idTipoCuenta').updateValueAndValidity();\r\n this.FormRecord.get('idTipoCuenta').disable();\r\n this.FormRecord.get('idTipoCuenta')['required'] = false;\r\n\r\n this.FormRecord.get('idBanco').reset();\r\n this.FormRecord.get('idBanco').updateValueAndValidity();\r\n this.FormRecord.get('idBanco').disable();\r\n this.FormRecord.get('idBanco')['required'] = false;\r\n\r\n this.FormRecord.get('numeroCuenta').reset();\r\n this.FormRecord.get('numeroCuenta').updateValueAndValidity();\r\n this.FormRecord.get('numeroCuenta').disable();\r\n this.FormRecord.get('numeroCuenta')['required'] = false;\r\n\r\n\r\n } else {\r\n\r\n this.FormRecord.get('idTipoCuenta').enable();\r\n this.FormRecord.get('idTipoCuenta').setValidators(Validators.required);\r\n this.FormRecord.get('idTipoCuenta').updateValueAndValidity();\r\n this.FormRecord.get('idTipoCuenta')['required'] = true;\r\n\r\n this.FormRecord.get('idBanco').enable();\r\n this.FormRecord.get('idBanco').setValidators(Validators.required);\r\n this.FormRecord.get('idBanco').updateValueAndValidity();\r\n this.FormRecord.get('idBanco')['required'] = true;\r\n\r\n this.FormRecord.get('numeroCuenta').enable();\r\n this.FormRecord.get('numeroCuenta').setValidators(Validators.required);\r\n this.FormRecord.get('numeroCuenta').updateValueAndValidity();\r\n this.FormRecord.get('numeroCuenta')['required'] = true;\r\n }\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n\r\n this.icon = this.route.snapshot.data['icon'];\r\n this.titleService.setTitle(this.route.snapshot.data['title']);\r\n this.loadFormComponents();\r\n\r\n if (this.loadSource == 'popup') {\r\n this.options = [];\r\n this.FormRecord.get(\"idEmpleado\").setValue(this.datosEmpleado);\r\n } else if (this.loadSource == 'tab') {\r\n this.options = [];\r\n this.controlProcess();\r\n }\r\n else {\r\n this.id = this.route.snapshot.params['id'];\r\n this.controlProcess();\r\n\r\n this.router.events.pipe(takeUntil(this.unsubcribe$)).subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.controlProcess();\r\n }\r\n });\r\n\r\n\r\n }\r\n this.ObtenerCargos();\r\n this.ValidatFechas();\r\n this.After();\r\n\r\n }\r\n After() {\r\n this.FormRecord.enable();\r\n if (this.loadSource == 'popup') {\r\n this.FormRecord.get(\"idEmpleado\").disable();\r\n }\r\n if (this.id) {\r\n this.LoadRecord();\r\n }\r\n\r\n this.isLoading = false;\r\n\r\n }\r\n\r\n /**\r\n * Cargar datos departamentos\r\n */\r\n ObtenerCargos() {\r\n\r\n this.contratosService.ObtenerCargos().subscribe({\r\n next: (res) => {\r\n if (res) {\r\n this.cargos = res;\r\n }\r\n },\r\n error: (err) => {\r\n if (err instanceof HttpErrorResponse && err.status == 401) return;\r\n this.FormRecord.enable();\r\n console.warn(err);\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Error cargar listado\";\r\n dialogSettings.description =\r\n \"Error de comunicacion con el server por favor intentelo mas tarde\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }];\r\n this.splusFormsDialogsService.Show(dialogSettings);\r\n },\r\n });\r\n }\r\n /**\r\n * Abreviacion para acceder a los controles del FormRecord\r\n */\r\n public get f(): any {\r\n return this.FormRecord.controls;\r\n }\r\n /**\r\n * Componentes del formulario\r\n */\r\n loadFormComponents() {\r\n this.FormRecord = this.contratosSettings.FormComponents();\r\n }\r\n ngOnDestroy() {\r\n this.unsubcribe$.next();\r\n this.unsubcribe$.complete();\r\n }\r\n\r\n /**\r\n * Determina el estado de la pantalla (insercion, vista, edicion, eliminacion)\r\n */\r\n controlProcess() {\r\n const params = this.util.decodeURLParams(this.router.url);\r\n const mode = params.mode;\r\n\r\n if (this.route.routeConfig.path === \":id\") {\r\n if (mode === \"e\") {\r\n this.processType = ProcessType.edit;\r\n } else {\r\n this.processType = ProcessType.view;\r\n }\r\n this.showMessageProcess = mode === \"i\" || mode === \"u\";\r\n\r\n this.messageProcess.title = \"Confirmación\";\r\n this.messageProcess.message = \"Contrato guardado exitosamente\";\r\n this.messageProcess.type = \"success\";\r\n if (mode === \"df\") {\r\n this.processType = ProcessType.view;\r\n this.messageProcess.title = \"Error\";\r\n this.messageProcess.message =\r\n \"No se puede eliminar el contrato porque tiene información asociada\";\r\n this.messageProcess.type = \"error\";\r\n this.showMessageProcess = true;\r\n }\r\n } else {\r\n if (mode === \"d\") {\r\n this.processType = ProcessType.create;\r\n this.messageProcess.title = \"Confirmación\";\r\n this.messageProcess.message = \"Contrato Eliminado exitosamente\";\r\n this.messageProcess.type = \"success\";\r\n\r\n this.showMessageProcess = true;\r\n }\r\n\r\n if (mode === \"df\") {\r\n this.processType = ProcessType.edit;\r\n this.messageProcess.title = \"Error\";\r\n this.messageProcess.message =\r\n \"No se puede eliminar el contrato porque tiene información asociada\";\r\n this.messageProcess.type = \"error\";\r\n this.showMessageProcess = true;\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Nuevo registro\r\n */\r\n override newRecord() {\r\n this.routingState.newRecord(this.route);\r\n }\r\n /**\r\n * Abre alerta para eliminar registro\r\n */\r\n dialogEliminar() {\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Eliminar Contrato\";\r\n dialogSettings.description =\r\n \"¿Estas seguro que desea eliminar este contrato?\";\r\n dialogSettings.actions = [\r\n { text: \"Cancelar\" },\r\n { text: \"Si, Eliminar\", themeColor: \"warning\", value: true },\r\n ];\r\n this.splusFormsDialogsService\r\n .Show(dialogSettings)\r\n .pipe(takeUntil(this.unsubcribe$))\r\n .subscribe((result) => {\r\n if (result instanceof SPlusDialogCloseResult) {\r\n console.log(\"close\", result);\r\n } else {\r\n if (result.value) {\r\n this.DeleteRecord();\r\n }\r\n }\r\n });\r\n }\r\n\r\n OpenDiagBuscarEMpleados(template: TemplateRef): void {\r\n this.closePop = false;\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.content = template;\r\n dialogSettings.appendTo = this.containerRef;\r\n dialogSettings.width = \"70%\";\r\n dialogSettings.title = \"Listado Empleados\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }]\r\n dialogSettings.actionsLayout = \"end\"\r\n this.splusFormsDialogsService.ShowCustom(dialogSettings)\r\n }\r\n GetSelectionEmpleado(data: any) {\r\n let datos = {\r\n id: data.id,\r\n numeroDocumento: data.numeroDocumento,\r\n nombreCompleto: data.nombre\r\n\r\n } as Empleados;\r\n this.empleados = [];\r\n this.empleados.push(datos);\r\n this.FormRecord.get(\"idEmpleado\").setValue(datos);\r\n this.closePop = true;\r\n\r\n }\r\n async Filtrar(search) {\r\n this.empleados = [];\r\n let emp = await this.contratosService.CargarEmpleados(search);\r\n\r\n this.empleados = emp.map(s => {\r\n let datos = {\r\n id: s.id,\r\n numeroDocumento: s.numeroDocumento,\r\n nombreCompleto: s.nombre\r\n } as Empleados;\r\n return datos;\r\n\r\n });\r\n\r\n }\r\n CargarSalario(data: CargosDTO) {\r\n const salario = this.FormRecord.get(\"salario\").value;\r\n if (!salario || salario == 0) {\r\n this.FormRecord.get(\"salario\").setValue(data.salario)\r\n }\r\n }\r\n ValidatFechas() {\r\n this.FormRecord.controls[\"fechaInicio\"].valueChanges\r\n .pipe(takeUntil(this.unsubcribe$))\r\n .subscribe((s) => {\r\n let fechaFinal = this.FormRecord.controls[\"fechaFin\"].value;\r\n this.minFinalDate = s;\r\n if (fechaFinal) {\r\n let days = differenceInDays(fechaFinal, s);\r\n if (days < 0) {\r\n this.FormRecord.controls[\"fechaInicio\"].setErrors({\r\n notValid: true,\r\n });\r\n }\r\n }\r\n });\r\n this.FormRecord.controls[\"fechaFin\"].valueChanges\r\n .pipe(takeUntil(this.unsubcribe$))\r\n .subscribe(async (s) => {\r\n let fechaInicial = this.FormRecord.controls[\"fechaInicio\"].value;\r\n this.maxInicialDate = s;\r\n if (fechaInicial) {\r\n let days = differenceInDays(s, fechaInicial);\r\n if (days < 0) {\r\n this.FormRecord.controls[\"fechaFin\"].setErrors({\r\n notValid: true,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.docClickSubscription.add(\r\n this.renderer.listen(\"document\", \"click\", this.onDocumentClick.bind(this))\r\n );\r\n //this.FormRecord.value\r\n if (this.id)\r\n this.ValidarReglas();\r\n\r\n\r\n }\r\n selecctionChageConceptosAplicados(dataSelect: number[]) {\r\n let selectData = [];\r\n dataSelect.forEach((element) => {\r\n const data = this.dataConceptosAplicados.find(s => s.idConfiguracionConceptosNomina == element);\r\n if (data)\r\n selectData.push(data);\r\n });\r\n this.dataSelectedAplicados = selectData;\r\n //console.log(this.dataSelected);\r\n }\r\n selecctionChageConceptosDisponibles(dataSelect: number[]) {\r\n let selectData = [];\r\n dataSelect.forEach((element) => {\r\n const data = this.dataConceptosDisponibles.find(s => s.idConfiguracionConceptosNomina == element);\r\n if (data)\r\n selectData.push(data);\r\n });\r\n this.dataSelectedDisponibles = selectData;\r\n //console.log(this.dataSelected);\r\n }\r\n async ValidarReglas() {\r\n\r\n // data.idEmpleado = this.FormRecord.get(\"idEmpleado\").value?.id;\r\n\r\n let response = await this.contratosService.ValidarReglasAsync(this.id);\r\n\r\n this.dataConceptosAplicados = response.filter(x => x.id);\r\n this.dataConceptosDisponibles = response.filter(x => !x.id);\r\n\r\n\r\n\r\n\r\n }\r\n public ValidateClose(status: string): void {\r\n this.ValidateOpened = false;\r\n }\r\n agregarConceptos() {\r\n this.tabsComponent.selectTab(0);\r\n this.dataConceptosDisponibles = this.dataConceptosDisponibles.filter(s => !this.dataSelectedDisponibles.includes(s));\r\n this.dataConceptosAplicados = [...this.dataConceptosAplicados, ...this.dataSelectedDisponibles];\r\n this.dataConceptosAplicados.sort((a, b) => a.idConfiguracionConceptosNomina - b.idConfiguracionConceptosNomina);\r\n this.dataSelectedDisponibles = [];\r\n this.dataSelectedAplicados = [];\r\n this.indexSelectionRowAplicados = [];\r\n this.indexSelectionRowDisponibles = [];\r\n this.tabsComponent.selectTab(1);\r\n this.FormRecord.markAsDirty();\r\n this.FormRecord.updateValueAndValidity();\r\n }\r\n public cellClickHandler(args: CellClickEvent): void {\r\n if (args.isEdited) return;\r\n if (this.processType == ProcessType.view) return;\r\n if (this.formGroup && this.formGroup.valid) this.saveCurrent();\r\n if (!this.gridRef) return;\r\n\r\n\r\n if (this.formGroup && !this.formGroup.valid && args.isEdited) {\r\n return;\r\n }\r\n\r\n if (!args.isEdited) {\r\n this.closeEditor();\r\n this.createFormGroup(args.dataItem);\r\n this.gridRef.editCell(args.rowIndex, args.columnIndex, this.formGroup);\r\n this.editedRowIndex = args.rowIndex;\r\n\r\n }\r\n }\r\n public createFormGroup(dataItem: any) {\r\n this.formGroup = new FormGroup({\r\n tercero: new FormControl(dataItem.tercero ? dataItem.tercero : null, Validators.required)\r\n });\r\n }\r\n @ViewChild(\"gridPpal\") public gridRef: GridComponent;\r\n private onDocumentClick(e: Event): void {\r\n\r\n if (!this.gridRef) return;\r\n if (\r\n this.formGroup &&\r\n this.formGroup.valid &&\r\n !this.matches(e.target, \"#gridPpal tbody *, #gridPpal .k-table-td *, .info\")\r\n ) {\r\n this.saveCurrent();\r\n }\r\n }\r\n public saveCurrent(): void {\r\n this.FormRecord.markAsDirty();\r\n this.FormRecord.updateValueAndValidity();\r\n const data = this.dataConceptosAplicados[this.editedRowIndex];\r\n if (!data && !this.formGroup.get(\"tercero\")?.value) return;\r\n\r\n Object.assign(data, this.formGroup.getRawValue());\r\n\r\n\r\n this.closeEditor();\r\n }\r\n private closeEditor(\r\n rowIndex: number = this.editedRowIndex\r\n ): void {\r\n if (!this.gridRef) return;\r\n\r\n if (this.gridRef) this.gridRef.closeRow(rowIndex);\r\n this.editedRowIndex = undefined;\r\n this.formGroup = undefined;\r\n }\r\n\r\n\r\n matches(el, selector) {\r\n return (el.matches || el.msMatchesSelector).call(el, selector);\r\n }\r\n\r\n formGroup: FormGroup;\r\n\r\n dialogEliminarConceptosAplicadosSelecionados() {\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Remover Conceptos Seleccionados\";\r\n dialogSettings.appendTo = this.containerRef;\r\n dialogSettings.description =\r\n \"¿Estás seguro que desea remover estos conceptos del empleado?\";\r\n dialogSettings.actions = [\r\n { text: \"Cancelar\" },\r\n { text: \"Sí, Remover\", themeColor: \"warning\", value: true },\r\n ];\r\n this.splusFormsDialogsService\r\n .Show(dialogSettings)\r\n .pipe(takeUntil(this.unsubcribe$))\r\n .subscribe((result) => {\r\n if (result instanceof SPlusDialogCloseResult) {\r\n } else {\r\n if (result.value) {\r\n this.dataConceptosAplicados = this.dataConceptosAplicados.filter(s => !this.dataSelectedAplicados.includes(s));\r\n this.dataConceptosDisponibles = [...this.dataConceptosDisponibles, ...this.dataSelectedAplicados];\r\n this.closePop = true;\r\n this.dataSelectedDisponibles = [];\r\n this.dataSelectedAplicados = [];\r\n this.indexSelectionRowAplicados = [];\r\n this.indexSelectionRowDisponibles = [];\r\n this.FormRecord.markAsDirty();\r\n this.FormRecord.updateValueAndValidity();\r\n setTimeout(() => {\r\n this.closePop = false;\r\n }, 500)\r\n }\r\n }\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n", "\r\n\r\n
\r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n Número del contrato #{{ id }}\r\n\r\n
\r\n\r\n
\r\n  \r\n  \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n
\r\n\r\n \r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{ dataItem.numeroDocumento + \" - \" + dataItem.nombreCompleto }}\r\n \r\n \r\n
\r\n
\r\n No hay datos.
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n {{selectEmpleado[\"text\"]}}\r\n \r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{dataItem.nombre}}
\r\n
Salario Base: {{(dataItem.salario ? dataItem.salario : 0) |\r\n currency:'$':'symbol':'1.0-0'}}
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n {{ isNaN(title) ? title : \" Ene. \" + title.substring(2, 4) }}\r\n \r\n \r\n\r\n \r\n {{ calendar.value | date:'dd/MM/yyyy' }}\r\n \r\n \r\n \r\n \r\n \r\n {{ isNaN(title) ? title : \" Ene. \" + title.substring(2, 4) }}\r\n \r\n \r\n\r\n \r\n {{ calendar.value | date:'dd/MM/yyyy' }}\r\n \r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{select[\"text\"]}}\r\n \r\n
\r\n\r\n \r\n \r\n\r\n \r\n {{ ctrl?.value | currency:'$':'symbol':'1.0-0' }}\r\n \r\n \r\n\r\n\r\n
\r\n\r\n @if(processType != ProcessType.create){\r\n \r\n \r\n\r\n \r\n \r\n Conceptos Disponibles\r\n \r\n\r\n \r\n @if(processType != ProcessType.view){\r\n
\r\n\r\n \r\n\r\n\r\n
\r\n }\r\n\r\n
\r\n \r\n @if(processType != ProcessType.view){\r\n \r\n }\r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n @if(dataItem?.tipoConcepto == 'Devengados'){\r\n \r\n }\r\n @if(dataItem?.tipoConcepto == 'Deducciones'){\r\n \r\n }\r\n @if(dataItem?.tipoConcepto == 'Variable'){\r\n \r\n }\r\n
{{dataItem?.tipoConcepto}}
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n Conceptos del contrato\r\n \r\n\r\n \r\n
\r\n\r\n @if(processType != ProcessType.view){\r\n \r\n }\r\n\r\n
\r\n
\r\n \r\n @if(processType != ProcessType.view){\r\n \r\n }\r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n @if(dataItem?.tipoConcepto == 'Devengados'){\r\n \r\n }\r\n @if(dataItem?.tipoConcepto == 'Deducciones'){\r\n \r\n }\r\n @if(dataItem?.tipoConcepto == 'Variable'){\r\n \r\n }\r\n
{{dataItem?.tipoConcepto}}
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n
\r\n {{dataItem?.tercero?.nombre}}\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n }\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n\r\n\r\n", "import { Component, Input, OnInit, ViewChild, ViewContainerRef, inject } from '@angular/core';\r\nimport { ContratosNominaService } from '../../services/contratos.service';\r\nimport { ContratoNominaDTO } from '@src/app/models/Nomina/Contrato.model';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ProcessType, SPlusDialogSettings, SPlusFormsDialogsService, SPlusNotificationService, SPlusNotificationSettings, SPlusOption } from '@saludplus/forms';\r\nimport { IntlService } from '@progress/kendo-angular-intl';\r\nimport { ContratoNominaComponent } from '../../components/contratos.component';\r\nimport { DialogCloseResult, DialogService } from '@progress/kendo-angular-dialog';\r\nimport { Empleados } from '@src/app/models/Nomina/Empleados.model';\r\n\r\n@Component({\r\n selector: 'app-tabContratos',\r\n templateUrl: './TabContratos.component.html',\r\n styleUrls: ['./TabContratos.component.scss']\r\n})\r\nexport class TabContratosComponent implements OnInit {\r\n @Input() idContrato: number;\r\n @Input() datosEmpleado: Empleados;\r\n @Input() processType: ProcessType;\r\n public ProcessType = ProcessType ;\r\n @ViewChild(\"container\", { read: ViewContainerRef })\r\n public containerRef: ViewContainerRef;\r\n datosContrato: ContratoNominaDTO;\r\n \r\n\r\n options: SPlusOption[] = [];\r\n\r\n private sPlusFormsDialogsService = inject(SPlusFormsDialogsService);\r\n notificationService = inject(SPlusNotificationService);\r\n contratosService = inject(ContratosNominaService)\r\n dialogService = inject(DialogService)\r\n\r\n constructor(\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (this.idContrato) {\r\n this.LoadRecord();\r\n\r\n this.options.push({\r\n id: \"ir-al-contrato\",\r\n icon: \"fa-sharp fa-solid fa-share \",\r\n text: \"Ir al contrato\",\r\n link: \"/nomina/contratos/\" + this.idContrato,\r\n });\r\n }\r\n\r\n }\r\n\r\n LoadRecord(): void {\r\n this.contratosService.BuscarRegistro(this.idContrato).subscribe({\r\n next: (res) => {\r\n\r\n if (res) {\r\n this.datosContrato = res;\r\n }\r\n },\r\n error: (err) => {\r\n if (err instanceof HttpErrorResponse && err.status == 401) return;\r\n console.warn(\"Error critico de lado del cliente\", err);\r\n let dialogSettings = {} as SPlusDialogSettings;\r\n dialogSettings.title = \"Cargar Contrato\";\r\n dialogSettings.description =\r\n \"Hubo un error al intentar cargar el contrato por favor intentelo más tarde\";\r\n dialogSettings.actions = [{ text: \"Cerrar\" }];\r\n this.sPlusFormsDialogsService.Show(dialogSettings);\r\n },\r\n });\r\n }\r\n public showConfirmation(): void {\r\n const dialogRef = this.dialogService.open({\r\n content: ContratoNominaComponent,\r\n title: \"Crear Contrato\",\r\n actions: [{ text: \"Cancelar\" }, { text: \"Guardar\", themeColor: \"primary\" }],\r\n appendTo: this.containerRef,\r\n width: \"90%\",\r\n height: \"70%\",\t\r\n minWidth: \"40%\",\r\n minHeight: \"50%\",\r\n preventAction: (ev, dialog) => {\r\n if (ev instanceof DialogCloseResult || ev.text === \"Cancelar\") {\r\n return false;\r\n }\r\n const data = (dialog.content.instance as ContratoNominaComponent)\r\n const formGroup = data.FormRecord\r\n\r\n if (!formGroup.valid) {\r\n data.submitted = true;\r\n formGroup.markAsDirty();\r\n formGroup.updateValueAndValidity();\r\n }\r\n return !formGroup.valid;\r\n },\r\n });\r\n const userInfo = dialogRef.content.instance as ContratoNominaComponent;\r\n userInfo.loadSource = 'popup';\r\n userInfo.empleados.push(this.datosEmpleado);\r\n userInfo.datosEmpleado = this.datosEmpleado;\r\n\r\n dialogRef.result.subscribe(async (r: { [key: string]: string }) => {\r\n\r\n if (r['text'] === \"Guardar\") {\r\n await userInfo.SaveRecordInPopup();\r\n this.idContrato = userInfo.id;\r\n this.LoadRecord();\r\n\r\n this.options = [];\r\n this.options.push({\r\n id: \"ir-al-contrato\",\r\n icon: \"fa-sharp fa-solid fa-share \",\r\n text: \"Ir al contrato\",\r\n link: \"/nomina/contratos/\" + this.idContrato,\r\n });\r\n\r\n this.presentToast(\"Se ha creado el contrato exitosamente\", \"success\");\r\n }\r\n });\r\n }\r\n\r\n\r\n presentToast(message: string, type) {\r\n let notificationSettings = {} as SPlusNotificationSettings;\r\n notificationSettings.content = message;\r\n notificationSettings.type = type;\r\n notificationSettings.hideAfter = 5000;\r\n\r\n this.notificationService.Show(notificationSettings);\r\n }\r\n\r\n}\r\n", "\r\n
\r\n\r\n
\r\n\r\n \r\n
Contrato actual del empleado \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n", "import { NgModule } from \"@angular/core\";\r\nimport { Routes, RouterModule } from \"@angular/router\";\r\nimport { AuthGuard } from \"@app/services/Security/guard.service\";\r\nimport { AppSettings } from \"@app/helpers/AppSettings\";\r\nimport { SearchInListComponent } from \"@src/app/core/Search/search-in-list/search-in-list.component\";\r\nimport { ContratoNominaComponent } from \"./components/contratos.component\";\r\nimport { ContratosSettings } from \"./config/contratos.settings\";\r\nconst routes: Routes = [\r\n {\r\n path: \"listado\",\r\n component: SearchInListComponent,\r\n data: { title: \"Contratos Listado\" },\r\n },\r\n { path: \"\", component: ContratoNominaComponent },\r\n { path: \":id\", component: ContratoNominaComponent },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class ContratosRoutingModule {\r\n\r\n //Routing principal\r\n public static RoutingContratos = {\r\n path: \"nomina/contratos\",\r\n loadChildren: () =>\r\n import(\"./contratos.module\").then(\r\n (m) => m.ContratosModule\r\n ),\r\n canActivate: [AuthGuard],\r\n data: {\r\n title: `Contratos`,\r\n icon: \"fa-duotone fa-solid fa-memo-pad\",\r\n setting: ContratosSettings,\r\n },\r\n };\r\n}\r\n"], "mappings": "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", "names": ["init_esm", "ContratosNominaService", "constructor", "http", "resolveRequestResultService", "instance", "Guardar", "Datos", "post", "ControllerApiList", "Nomina", "Contrato", "pipe", "map", "response", "resolve", "GuardarAsync", "__async", "req", "lastValueFrom", "ActualizarRegistro", "id", "put", "BuscarRegistro", "params", "HttpParams", "set", "get", "Delete", "delete", "ObtenerCargos", "ObtenerCargosAsync", "record", "ObtenerTiposContratacion", "ObtenerPeriodosPagos", "ObtenerEstadoContrato", "ObtenerCajaCompensacion", "ObtenerPromotoraSalud", "General", "ObtenerAdministradoraPensiones", "ObtenerFondoCesantia", "ObtenerArl", "ObtenerTipoRiesgos", "ObtenerMetodosPago", "ObtenerTiposCuenta", "ObtenerBancos", "ObtenerTipoSalario", "CargarEmpleados", "search", "prop", "fromObject", "request", "Empleados", "s", "result", "ValidarReglasAsync", "idContrato", "\u0275\u0275inject", "HttpClient", "RequestResultServiceService", "factory", "\u0275fac", "providedIn", "ContratosSettings", "constructor", "router", "route", "contratoServices", "Load", "__async", "cargos", "Cargos", "loadFormSearch", "search", "FormSearch", "formComponents", "FormComponents", "configSearch", "title", "titleIcon", "apiSearch", "ControllerApiList", "Nomina", "Contrato", "apiSearchResult", "apiSearchVersion", "filtersRecently", "LoadSimpleFilter", "buttonNewRecordText", "MethodRequest", "EndPointMethods", "GET", "buttonNewRecordClick", "newRecord", "settings", "objectKey", "sortV3", "visible", "fields", "renderLabel", "autoSize", "module", "pipe", "icon", "click", "row", "goView", "filters", "type", "SearchTypeFilter", "Text", "MultipleFilter", "data", "navigate", "relativeTo", "goEdit", "id", "queryParams", "mode", "queryParamsHandling", "filter", "label", "dataResponse", "ObtenerCargosAsync", "forEach", "elemt", "index", "estado", "field", "text", "nombre", "value", "push", "UntypedFormGroup", "idEmpleado", "TegettFormControl", "formState", "validatorOrOpts", "Validators", "required", "asyncValidator", "undefined", "typeField", "TypeField", "List", "nameControl", "idCargo", "idTerminoContrato", "dataTextField", "dataValueField", "funtionData", "ObtenerTiposContratacion", "idPeriodoPago", "ObtenerPeriodosPagos", "salario", "Input", "fechaInicio", "fechaFin", "ObtenerEstadoContrato", "idMetodoPago", "ObtenerMetodosPago", "idTipoCuenta", "ObtenerTiposCuenta", "idBanco", "ObtenerBancos", "numeroCuenta", "idTipoSalario", "ObtenerTipoSalario", "validators", "rangoFechasValidator", "separator", "isDefault", "\u0275\u0275directiveInject", "Router", "ActivatedRoute", "ContratosNominaService", "selectors", "decls", "vars", "template", "rf", "ctx", "encapsulation", "init_core", "init_esm", "\u0275\u0275element", "\u0275\u0275property", "ctx_r1", "processType", "ProcessType", "view", "icon", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275template", "ContratoNominaComponent_splus_forms_header_2_div_2_div_3_Template", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "id", "isLoading", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "\u0275\u0275resetView", "goEdit", "_r4", "cancelEdit", "_r5", "goback", "_r6", "clearForm", "ContratoNominaComponent_splus_forms_header_2_splus_forms_main_title_1_Template", "ContratoNominaComponent_splus_forms_header_2_div_2_Template", "ContratoNominaComponent_splus_forms_header_2_button_5_Template", "ContratoNominaComponent_splus_forms_header_2_button_6_Template", "ContratoNominaComponent_splus_forms_header_2_button_7_Template", "ContratoNominaComponent_splus_forms_header_2_button_8_Template", "ContratoNominaComponent_splus_forms_header_2_button_9_Template", "loadSource", "edit", "options", "moreOptions", "create", "\u0275\u0275textInterpolate", "dataItem_r8", "numeroDocumento", "nombreCompleto", "_r9", "popBuscarEmpleados_r10", "\u0275\u0275reference", "OpenDiagBuscarEMpleados", "ContratoNominaComponent_splus_field_6_6_ng_template_0_Template", "selectEmpleado_r11", "$event", "_r7", "Filtrar", "ContratoNominaComponent_splus_field_6_ng_template_3_Template", "ContratoNominaComponent_splus_field_6_ng_template_4_Template", "ContratoNominaComponent_splus_field_6_ng_template_5_Template", "ContratoNominaComponent_splus_field_6_6_Template", "ContratoNominaComponent_splus_field_6_ng_template_7_Template", "ctrl_r12", "isOpen", "grupoEmpleado_r13", "empleados", "nameControl", "inPopUp", "dataItem_r15", "nombre", "\u0275\u0275pipeBind4", "salario", "select_r16", "_r14", "CargarSalario", "ContratoNominaComponent_splus_field_7_ng_template_4_Template", "ContratoNominaComponent_splus_field_7_ng_template_5_Template", "ctrl_r17", "idCargo_r18", "cargos", "select_r20", "_r19", "TerminoContratoChange", "ContratoNominaComponent_splus_field_10_ng_template_5_Template", "ctrl_r21", "grupoContratacion_r22", "\u0275\u0275pipeBind1", "funtionData", "dataTextField", "dataValueField", "select_r23", "ContratoNominaComponent_splus_field_11_ng_template_5_Template", "ctrl_r24", "isNaN", "title_r25", "substring", "\u0275\u0275pipeBind2", "calendar_r26", "value", "ContratoNominaComponent_splus_field_12_ng_template_4_Template", "ContratoNominaComponent_splus_field_12_ng_template_5_Template", "ctrl_r27", "fecha_r28", "title_r29", "calendar_r30", "ContratoNominaComponent_splus_field_13_ng_template_4_Template", "ContratoNominaComponent_splus_field_13_ng_template_5_Template", "ctrl_r31", "minFinalDate", "fecha_r32", "select_r33", "ContratoNominaComponent_splus_field_14_ng_template_5_Template", "ctrl_r34", "select_r36", "_r35", "MetodoPagoChange", "ContratoNominaComponent_splus_field_17_ng_template_5_Template", "ctrl_r37", "grupoPago_r38", "select_r39", "ContratoNominaComponent_splus_field_18_ng_template_5_Template", "ctrl_r40", "select_r41", "ContratoNominaComponent_splus_field_19_ng_template_5_Template", "ctrl_r42", "ctrl_r43", "select_r44", "ContratoNominaComponent_splus_field_23_ng_template_5_Template", "ctrl_r45", "grupoRemuneracion_r46", "ctrl_r47", "ContratoNominaComponent_splus_field_24_ng_template_2_Template", "\u0275\u0275pureFunction0", "_c4", "_r49", "agregarConceptos", "dataSelectedDisponibles", "length", "ContratoNominaComponent_Conditional_25_ng_template_4_ng_template_7_Conditional_1_Template", "ContratoNominaComponent_Conditional_25_ng_template_4_ng_template_7_Conditional_2_Template", "ContratoNominaComponent_Conditional_25_ng_template_4_ng_template_7_Conditional_3_Template", "\u0275\u0275conditional", "dataItem_r50", "tipoConcepto", "ContratoNominaComponent_Conditional_25_ng_template_4_Conditional_0_Template", "_r48", "selecctionChageConceptosDisponibles", "ContratoNominaComponent_Conditional_25_ng_template_4_Conditional_4_Template", "ContratoNominaComponent_Conditional_25_ng_template_4_ng_template_7_Template", "dataConceptosDisponibles", "indexSelectionRowDisponibles", "loadingLiquidar", "_c5", "_r52", "dialogEliminarConceptosAplicadosSelecionados", "dataSelectedAplicados", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_8_Conditional_1_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_8_Conditional_2_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_8_Conditional_3_Template", "dataItem_r53", "dataItem_r55", "_r54", "$implicit", "onTerceroSelectionChange", "formGroup_r56", "get", "dataItem_r57", "tercero", "ContratoNominaComponent_Conditional_25_ng_template_7_Conditional_1_Template", "_r51", "cellClickHandler", "selecctionChageConceptosAplicados", "ContratoNominaComponent_Conditional_25_ng_template_7_Conditional_5_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_8_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_11_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_ng_template_12_Template", "dataConceptosAplicados", "indexSelectionRowAplicados", "ContratoNominaComponent_Conditional_25_ng_template_3_Template", "ContratoNominaComponent_Conditional_25_ng_template_4_Template", "ContratoNominaComponent_Conditional_25_ng_template_6_Template", "ContratoNominaComponent_Conditional_25_ng_template_7_Template", "_r58", "GetSelectionEmpleado", "ListadoEmpleado", "filtersEmpleado", "\u0275\u0275elementContainer", "ContratoNominaComponent", "SplusBaseForm", "constructor", "maxDate", "Date", "EmpleadosSearch", "closePop", "ValidateOpened", "text", "link", "action", "OpenDocumentacion", "showIn", "newRecord", "dialogEliminar", "prueba", "searchingDocument", "unsubcribe$", "Subject", "contratosSettings", "inject", "ContratosSettings", "contratosService", "ContratosNominaService", "editedRowIndex", "renderer", "Renderer2", "docClickSubscription", "Subscription", "propertyName", "propertyValue", "routingState", "loadRouting", "onSubmit", "event", "preventDefault", "submitted", "FormRecord", "valid", "pristine", "UpdateRecord", "SaveRecord", "SaveRecordInPopup", "__async", "data", "idEmpleado", "response", "GuardarAsync", "dataItem", "undefined", "idTercero", "formGroup", "setValue", "Guardar", "subscribe", "next", "res", "router", "navigate", "queryParams", "mode", "relativeTo", "route", "forEach", "element", "some", "s", "dialogSettings", "title", "isHtml", "description", "actions", "splusFormsDialogsService", "Show", "contratoConfiguracionConceptosNomina", "idContrato", "Number", "ActualizarRegistro", "queryParamsHandling", "error", "err", "HttpErrorResponse", "status", "console", "warn", "DeleteRecord", "isDeleting", "Delete", "LoadRecord", "BuscarRegistro", "datosContrato", "push", "empleado", "fechaInicio", "intl", "parseDate", "toString", "fechaFin", "patchValue", "themeColor", "pipe", "takeUntil", "result", "SPlusDialogCloseResult", "log", "cancelUpdate", "markAsPristine", "reset", "updateValueAndValidity", "selectedValue", "enable", "setValidators", "Validators", "required", "disable", "clearValidators", "ngOnInit", "snapshot", "titleService", "setTitle", "loadFormComponents", "datosEmpleado", "controlProcess", "params", "events", "NavigationEnd", "ObtenerCargos", "ValidatFechas", "After", "f", "controls", "FormComponents", "ngOnDestroy", "complete", "util", "decodeURLParams", "url", "routeConfig", "path", "showMessageProcess", "messageProcess", "message", "type", "template", "content", "appendTo", "containerRef", "width", "actionsLayout", "ShowCustom", "datos", "search", "emp", "CargarEmpleados", "map", "valueChanges", "fechaFinal", "differenceInDays", "setErrors", "notValid", "fechaInicial", "maxInicialDate", "ngAfterViewInit", "add", "listen", "onDocumentClick", "bind", "ValidarReglas", "dataSelect", "selectData", "find", "idConfiguracionConceptosNomina", "ValidarReglasAsync", "filter", "x", "ValidateClose", "tabsComponent", "selectTab", "includes", "sort", "a", "b", "markAsDirty", "args", "isEdited", "saveCurrent", "gridRef", "closeEditor", "createFormGroup", "editCell", "rowIndex", "columnIndex", "FormGroup", "FormControl", "e", "matches", "target", "Object", "assign", "getRawValue", "closeRow", "el", "selector", "msMatchesSelector", "call", "setTimeout", "selectors", "viewQuery", "rf", "ctx", "ViewContainerRef", "i0", "_r1", "ContratoNominaComponent_splus_forms_header_2_Template", "ContratoNominaComponent_splus_field_6_Template", "ContratoNominaComponent_splus_field_7_Template", "ContratoNominaComponent_splus_field_10_Template", "ContratoNominaComponent_splus_field_11_Template", "ContratoNominaComponent_splus_field_12_Template", "ContratoNominaComponent_splus_field_13_Template", "ContratoNominaComponent_splus_field_14_Template", "ContratoNominaComponent_splus_field_17_Template", "ContratoNominaComponent_splus_field_18_Template", "ContratoNominaComponent_splus_field_19_Template", "ContratoNominaComponent_splus_field_20_Template", "ContratoNominaComponent_splus_field_23_Template", "ContratoNominaComponent_splus_field_24_Template", "ContratoNominaComponent_Conditional_25_Template", "ContratoNominaComponent_ng_template_26_Template", "\u0275\u0275templateRefExtractor", "ContratoNominaComponent_ng_container_28_Template", "\u0275\u0275pureFunction1", "_c3", "idCargo", "idTerminoContrato", "idPeriodoPago", "estado", "idMetodoPago", "idTipoCuenta", "idBanco", "numeroCuenta", "idTipoSalario", "init_core", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "showConfirmation", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "options", "idContrato", "ProcessType", "view", "TabContratosComponent", "constructor", "sPlusFormsDialogsService", "inject", "SPlusFormsDialogsService", "notificationService", "SPlusNotificationService", "contratosService", "ContratosNominaService", "dialogService", "DialogService", "ngOnInit", "LoadRecord", "push", "id", "icon", "text", "link", "BuscarRegistro", "subscribe", "next", "res", "datosContrato", "error", "err", "HttpErrorResponse", "status", "console", "warn", "dialogSettings", "title", "description", "actions", "Show", "dialogRef", "open", "content", "ContratoNominaComponent", "themeColor", "appendTo", "containerRef", "width", "height", "minWidth", "minHeight", "preventAction", "ev", "dialog", "DialogCloseResult", "data", "instance", "formGroup", "FormRecord", "valid", "submitted", "markAsDirty", "updateValueAndValidity", "userInfo", "loadSource", "empleados", "datosEmpleado", "result", "r", "__async", "SaveRecordInPopup", "presentToast", "message", "type", "notificationSettings", "hideAfter", "selectors", "viewQuery", "rf", "ctx", "ViewContainerRef", "\u0275\u0275template", "TabContratosComponent_button_0_Template", "TabContratosComponent_div_1_Template", "\u0275\u0275elementContainer", "processType", "edit", "routes", "path", "component", "SearchInListComponent", "data", "title", "ContratoNominaComponent", "ContratosRoutingModule", "RoutingContratos", "loadChildren", "then", "m", "ContratosModule", "canActivate", "AuthGuard", "icon", "setting", "ContratosSettings", "RouterModule", "forChild"] }