public String insertarDiasNoLaborales(DiaNoLaborable pi, ErrorProcedimientoAlmacenado pError)
 {
     try
     {
         using (var Db = new TramitesDigitalesEntities())
         {
             var respuestaWeb = Db.pa_PeticionesWeb_Catalogos_Insertar_DiasNoLaborables(
                 pdt_Fecha: pi.Fecha,
                 pdnv_Dia: pi.Dia,
                 pdnv_Descripcion: pi.Descripcion,
                 pdnv_ERegistro: pi.EstatusRegistro,
                 pdt_FechaRegistro: pi.FechaRegistro,
                 pdi_IdUsuaruario: pi.IdUsuarioRegistro,
                 pi_errorNumero: pError.Numero,
                 pnvc_errorMensaje: pError.Mensaje,
                 pi_errorLinea: pError.Linea,
                 pnvc_errorProcAlm: pError.ProcedimientoAlmacenado,
                 pi_errorSeveridad: pError.Severidad,
                 pi_errorEstado: pError.Estado);
         }
     }
     catch
     {
         throw;
     }
     return(pError.ToString());
 }
 public ActionResult AgregaDiasNoLaborables(DiaNoLaborable dia)
 {
     try
     {
         ErrorProcedimientoAlmacenado pErrorExiste = new ErrorProcedimientoAlmacenado();
         var existeDia = dias.existeDiaNoLaborable(dia.Fecha, pErrorExiste);
         if (existeDia.Count > 0)
         {
             ViewBag.ExisteDia = "La fecha que ingresaste ya existe, ingresa una fecha diferente.";
             return(View(dia));
         }
         ErrorProcedimientoAlmacenado pError = new ErrorProcedimientoAlmacenado();
         dia.FechaRegistro = DateTime.Today;
         string diaLetras = (dia.Fecha.ToString("dddd", new CultureInfo("es-ES")));
         dia.Dia = diaLetras.ToUpper().First() + diaLetras.Substring(1);
         dia.IdUsuarioRegistro = 1;
         dia.EstatusRegistro   = "A";
         dias.procesoInsertarDiasNoLaborables(dia, pError);
     }
     catch {
         ViewBag.ErrorMessage = "Error al insertar Dia No Laborable";
         return(View(dia));
     }
     return(RedirectToAction("ListaDiasNoLaborables"));
 }
        public ActionResult AgregaDiasNoLaborables()
        {
            DiaNoLaborable dia = new DiaNoLaborable();

            //dia.Fecha = DateTime.Today.AddDays(00).AddHours(00).AddSeconds(00).AddMilliseconds(00);
            return(View(dia));
        }
示例#4
0
 public String procesoInsertarDiasNoLaborables(DiaNoLaborable pEntrada, ErrorProcedimientoAlmacenado pError)
 {
     try
     {
         #region Funcionalidad del Metodo
         procesoCrudDiasNoLaborales.insertarDiasNoLaborales(pEntrada, pError);
         #endregion
     }
     catch (Exception)
     {
         #region Manejo de la excepcion
         throw;
         #endregion
     }
     return(pError.ToString());
 }
        public async Task <int> GuardaDiasNoLaboralesOEspecialesAsync(List <HorarioDiaEspecialDTO> SpecialDays)
        {
            using (var context = new ISSSTEEntities())
            {
                SpecialDays.ForEach(Dia =>
                {
                    if (!Dia.IsNonWorking && Dia.IsOverrided)
                    {
                        var diasEspecialNuevo = new DiaEspecial
                        {
                            EsActivo = true,
                            Fecha    = Dia.Date,
                            Concepto = "sin Concepto"
                        };


                        var resultadoDiaEspecial = context.DiaEspecial.FirstOrDefault(S => S.Fecha == Dia.Date);

                        if (resultadoDiaEspecial == null)
                        {
                            context.DiaEspecial.Add(diasEspecialNuevo);
                        }
                        else
                        {
                            diasEspecialNuevo.DiaEspecialId = resultadoDiaEspecial.DiaEspecialId;
                            context.DiaEspecial.AddOrUpdate(diasEspecialNuevo);
                        }
                    }
                    else if (Dia.IsNonWorking)
                    {
                        var query = context.TramiteUnidadAtencion
                                    .Where(S => S.UnidadAtencionId == Dia.DelegationId)
                                    .AsQueryable();

                        // Si no se seleccciona un tramite, el horario sera agregado a todos los trámites existentes
                        if (Dia.RequestTypeId.HasValue)
                        {
                            query = query.Where(H => H.CatTipoTramiteId == Dia.RequestTypeId);
                        }

                        var tramitesUnidadesAtencion = query.ToList();


                        tramitesUnidadesAtencion.ForEach(Tu =>
                        {
                            var diaNoLaborable = new DiaNoLaborable
                            {
                                EsActivo = true,
                                Fecha    = Dia.Date,
                                TramiteUnidadAtencionId = Tu.TramiteUnidadAtencionId
                            };

                            var resuldatoDia =
                                context.DiaNoLaborable.FirstOrDefault(
                                    S => S.Fecha == Dia.Date &&
                                    S.TramiteUnidadAtencionId == Tu.TramiteUnidadAtencionId);

                            if (resuldatoDia == null)
                            {
                                context.DiaNoLaborable.Add(diaNoLaborable);
                            }
                            else
                            {
                                diaNoLaborable.DiaNoLaborableId = resuldatoDia.DiaNoLaborableId;
                                context.DiaNoLaborable.AddOrUpdate(diaNoLaborable);
                            }
                        });
                    }
                });


                return(await context.SaveChangesAsync());
            }
        }