private async Task SavePayrollCompanyConfigurationAsync(InitializationParams parameters, Guid companyID)
        {
            var middlewareManager = new MiddlewareManager <PayrollCompanyConfiguration>(new BaseRecordManager <PayrollCompanyConfiguration>(),
                                                                                        new PayrollCompanyConfigurationValidator());

            await middlewareManager.CreateAsync(new List <PayrollCompanyConfiguration>() { parameters.PayrollCompanyConfiguration }, companyID);
        }
        private async Task SaveWorkshiftDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultWorkShift(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <Workshift>(new BaseRecordManager <Workshift>(),
                                                                      new WorkshiftValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
        private async Task SaveMinimiumSalaryDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultMinimunSalaries(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <MinimunSalary>(new BaseRecordManager <MinimunSalary>(),
                                                                          new MinimunSalaryValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
        private async Task SaveIMSSWorkRiskDefaultAsync(InitializationParams initializationParams, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultIMSSWorkRisk(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <IMSSWorkRisk>(new BaseRecordManager <IMSSWorkRisk>(),
                                                                         new IMSSWorkRiskValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
        private async Task SaveSettlementCatalogDefaultAsync(InitializationParams initializationParams, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultSettlementCatalogTable(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <SettlementCatalog>(new BaseRecordManager <SettlementCatalog>(),
                                                                              new SettlementCatalogValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
        private async Task SaveAnualEmploymentSubsidyDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultAnualEmploymentSubsidy(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <AnualEmploymentSubsidy>(new BaseRecordManager <AnualEmploymentSubsidy>(),
                                                                                   new AnualEmploymentSubsidyValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
        private async Task <List <IncidentTypeRelationship> > SaveIncidentTypeRelationshipDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user, List <IncidentType> incidentTypes)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultIncidentTypeRelationship(companyID, instanceID, user, incidentTypes);
            var middlewareManager = new MiddlewareManager <IncidentTypeRelationship>(new BaseRecordManager <IncidentTypeRelationship>(),
                                                                                     new IncidentTypeRelationshipValidator());

            await middlewareManager.CreateAsync(result, companyID);

            return(result);
        }
        private async Task <List <AccumulatedType> > SaveAccumulatedTypeDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest        = new MemoryStorageContext();
            var result            = memoryTest.GetDefaultAccumulatedType(companyID, instanceID, user);
            var middlewareManager = new MiddlewareManager <AccumulatedType>(new BaseRecordManager <AccumulatedType>(),
                                                                            new AccumulatedTypeValidator());

            await middlewareManager.CreateAsync(result, companyID);

            return(result);
        }
        private async Task SaveEmployerRegistrationAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            if (parameters.EmployerRegistration != null && parameters.EmployerRegistration.ID != Guid.Empty)
            {
                parameters.EmployerRegistration.CompanyID  = companyID;
                parameters.EmployerRegistration.InstanceID = instanceID;
                parameters.EmployerRegistration.company    = companyID;
                parameters.EmployerRegistration.user       = user;
                parameters.EmployerRegistration.Name       = parameters.EmployerRegistration.Code;

                var result = new List <EmployerRegistration> {
                    parameters.EmployerRegistration
                };
                var middlewareManager = new MiddlewareManager <EmployerRegistration>(new BaseRecordManager <EmployerRegistration>(),
                                                                                     new EmployerRegistrationValidator());

                await middlewareManager.CreateAsync(result, companyID);
            }
        }
        /// <summary>
        /// Create or Get the EmployeeIdentiyRegistration
        /// </summary>
        /// <param name="middlewareManagerRegis"></param>
        /// <param name="employee"></param>
        /// <param name="company"></param>
        /// <returns></returns>
        private async Task <EmployeeIdentityRegistration> createEmployeeIdentityRegistration(MiddlewareManager <EmployeeIdentityRegistration> middlewareManagerRegis,
                                                                                             Employee employee, Guid company)
        {
            var currentProcess = await middlewareManagerRegis.FindByExpressionAsync(p =>
                                                                                    p.EmployeeID == employee.ID && p.Email == employee.Email &&
                                                                                    p.EmployeeIdentityRegistrationStatus != EmployeeIdentityRegistrationStatus.Completed, company);

            List <EmployeeIdentityRegistration> lstToCreate = null;

            //No debe de existir un registro pendiente
            //Paso 1. Crear el registro
            if (!currentProcess.Any())
            {
                lstToCreate = new List <EmployeeIdentityRegistration>()
                {
                    new EmployeeIdentityRegistration()
                    {
                        Active       = true,
                        CreationDate = DateTime.UtcNow,
                        DeleteDate   = null,
                        Description  = "",
                        Email        = employee.Email,
                        EmployeeID   = employee.ID,
                        ID           = Guid.NewGuid(),
                        EmployeeIdentityRegistrationStatus = EmployeeIdentityRegistrationStatus.MailSent,
                        ActivationCode = CodeGenerator.GetRandomCode(8),
                        IdentityUserID = null,
                        Name           = "",
                        StatusID       = 1,
                        Timestamp      = DateTime.UtcNow
                    }
                };
                await middlewareManagerRegis.CreateAsync(lstToCreate, company);
            }
            else
            {
                //El registro ya se relacionó correctamente
                lstToCreate = currentProcess;
            }

            return(lstToCreate.FirstOrDefault());
        }
Ejemplo n.º 11
0
        private async Task <List <PeriodType> > SavePeriodTypeDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user)
        {
            var memoryTest = new MemoryStorageContext();
            List <PeriodType> lstPeriodTypes = new List <PeriodType>();

            //Quincenal
            var forceUpdate = parameters.PayrollCompanyConfiguration.PaymentPeriodicity == PaymentPeriodicity.Biweekly;

            lstPeriodTypes.AddRange(memoryTest.GetDefaultPeriodType(companyID, instanceID, user,
                                                                    PaymentPeriodicity.Biweekly,
                                                                    parameters.PayrollCompanyConfiguration.PaymentDays,
                                                                    parameters.PayrollCompanyConfiguration.AdjustmentPay, forceUpdate));

            //Mensual
            forceUpdate = parameters.PayrollCompanyConfiguration.PaymentPeriodicity == PaymentPeriodicity.Monthly;
            lstPeriodTypes.AddRange(memoryTest.GetDefaultPeriodType(companyID, instanceID, user,
                                                                    PaymentPeriodicity.Monthly,
                                                                    parameters.PayrollCompanyConfiguration.PaymentDays,
                                                                    parameters.PayrollCompanyConfiguration.AdjustmentPay, forceUpdate));

            //Semanal
            forceUpdate = parameters.PayrollCompanyConfiguration.PaymentPeriodicity == PaymentPeriodicity.Weekly;
            lstPeriodTypes.AddRange(memoryTest.GetDefaultPeriodType(companyID, instanceID, user,
                                                                    PaymentPeriodicity.Weekly,
                                                                    parameters.PayrollCompanyConfiguration.PaymentDays,
                                                                    parameters.PayrollCompanyConfiguration.AdjustmentPay, forceUpdate, parameters.PayrollCompanyConfiguration.WeeklySeventhDay));

            //Extraordinario
            forceUpdate = parameters.PayrollCompanyConfiguration.PaymentPeriodicity == PaymentPeriodicity.OtherPeriodicity;
            lstPeriodTypes.AddRange(memoryTest.GetDefaultPeriodType(companyID, instanceID, user,
                                                                    PaymentPeriodicity.OtherPeriodicity,
                                                                    parameters.PayrollCompanyConfiguration.PaymentDays,
                                                                    parameters.PayrollCompanyConfiguration.AdjustmentPay, forceUpdate));

            var middlewareManager = new MiddlewareManager <PeriodType>(new BaseRecordManager <PeriodType>(),
                                                                       new PeriodTypeValidator());

            await middlewareManager.CreateAsync(lstPeriodTypes, companyID);

            return(lstPeriodTypes);
        }
Ejemplo n.º 12
0
        private async Task SavePeriodDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user,
                                                  List <PeriodType> periodTypes)
        {
            var memoryTest = new MemoryStorageContext();

            var result = memoryTest.GetDefaultPeriod(companyID, instanceID, user,
                                                     parameters.PayrollCompanyConfiguration.PeriodInitialDate,
                                                     parameters.PayrollCompanyConfiguration.PeriodInitialDate.AddYears(1).Date,
                                                     parameters.PayrollCompanyConfiguration.CurrentExerciseYear,
                                                     periodTypes.FirstOrDefault(p => p.PaymentPeriodicity == parameters.PayrollCompanyConfiguration.PaymentPeriodicity));

            result.AddRange(memoryTest.GetDefaultPeriod(companyID, instanceID, user,
                                                        parameters.PayrollCompanyConfiguration.PeriodInitialDate,
                                                        parameters.PayrollCompanyConfiguration.PeriodInitialDate.AddYears(1).Date,
                                                        parameters.PayrollCompanyConfiguration.CurrentExerciseYear,
                                                        periodTypes.FirstOrDefault(p => p.ExtraordinaryPeriod)));

            var middlewareManager = new MiddlewareManager <Period>(new BaseRecordManager <Period>(),
                                                                   new PeriodValidator());

            await middlewareManager.CreateAsync(result, companyID);
        }
Ejemplo n.º 13
0
        private async Task SaveConceptPaymentDefaultAsync(InitializationParams parameters, Guid companyID, Guid instanceID, Guid user, List <AccumulatedType> accumulatedTypes)
        {
            //Get Memory Default Data
            var memoryTest  = new MemoryStorageContext();
            var resultTuple = memoryTest.GetDefaultConcept <ConceptPayment>(companyID, instanceID, user, accumulatedTypes);

            //Results
            var resultConcepts     = resultTuple.Item1.Cast <ConceptPayment>().ToList();
            var resultRelationship = resultTuple.Item2.ToList();

            //middlewareManagers
            var middlewareManager = new MiddlewareManager <ConceptPayment>(new BaseRecordManager <ConceptPayment>(),
                                                                           new ConceptPaymentValidator());

            var middlewareManagerConceptPaymentRelationship = new MiddlewareManager <ConceptPaymentRelationship>(new BaseRecordManager <ConceptPaymentRelationship>(),
                                                                                                                 new ConceptPaymentRelationshipValidator());

            //Create ConceptPayment
            await middlewareManager.CreateAsync(resultConcepts, companyID);

            //Create ConceptPayment relationship with accumulates
            await middlewareManagerConceptPaymentRelationship.CreateAsync(resultRelationship, companyID);
        }
 private async Task SaveOverdraft(Overdraft settlementOverdraft, Guid identityWorkID)
 {
     var manager = new MiddlewareManager <Overdraft>(new BaseRecordManager <Overdraft>(), new OverdraftValidator());
     await manager.CreateAsync(new List <Overdraft>() { settlementOverdraft }, identityWorkID);
 }