Example #1
0
        public async Task <IActionResult> Edit(int id, [Bind("IdDetalle,IdCalendarioFeriado,Empid,Fecha,Descripcion,DiaCompleto,HoraDesde,HoraHasta")] TrnCalendarioFeriadoDetalle trnCalendarioFeriadoDetalle)
        {
            if (id != trnCalendarioFeriadoDetalle.IdDetalle)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(trnCalendarioFeriadoDetalle);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TrnCalendarioFeriadoDetalleExists(trnCalendarioFeriadoDetalle.IdDetalle))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdCalendarioFeriado"] = new SelectList(_context.TrnCalendarioFeriado, "IdCalendarioFeriado", "Descripcion", trnCalendarioFeriadoDetalle.IdCalendarioFeriado);
            return(View(trnCalendarioFeriadoDetalle));
        }
Example #2
0
        public async Task <IActionResult> Create([Bind("IdDetalle,IdCalendarioFeriado,Empid,Fecha,Descripcion,DiaCompleto,HoraDesde,HoraHasta")] TrnCalendarioFeriadoDetalle trnCalendarioFeriadoDetalle)
        {
            if (ModelState.IsValid)
            {
                _context.Add(trnCalendarioFeriadoDetalle);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdCalendarioFeriado"] = new SelectList(_context.TrnCalendarioFeriado, "IdCalendarioFeriado", "Descripcion", trnCalendarioFeriadoDetalle.IdCalendarioFeriado);
            return(View(trnCalendarioFeriadoDetalle));
        }
Example #3
0
        public IActionResult AddDetail(TrnCalendarioFeriadoDetalle trnCalendarioFeriadoDetalle)
        {
            TrnCalendarioFeriadoVista trnCalendarioFeriadoVista = JsonConvert.DeserializeObject <TrnCalendarioFeriadoVista>(HttpContext.Session.GetString("trnCalendarioFeriadoVista"));
            DateTime?date = null;

            trnCalendarioFeriadoDetalle = new TrnCalendarioFeriadoDetalle()
            {
                IdCalendarioFeriado = 0,
                Empid       = configuration.GetSection("empid").Value,
                Fecha       = DateTime.Parse(Request.Form["Fecha"]),
                Descripcion = Request.Form["Descripcion"],
                DiaCompleto = Request.Form["DiaCompleto"] == "checked" ? "S" : "N",
                HoraDesde   = string.IsNullOrWhiteSpace(Request.Form["HoraDesde"]) ? date : DateTime.Parse(Request.Form["HoraDesde"]),
                HoraHasta   = string.IsNullOrWhiteSpace(Request.Form["HoraHasta"]) ? date : DateTime.Parse(Request.Form["HoraHasta"]),
            };
            trnCalendarioFeriadoVista.detalle.Add(trnCalendarioFeriadoDetalle);

            HttpContext.Session.SetString("trnCalendarioFeriadoVista", JsonConvert.SerializeObject(trnCalendarioFeriadoVista));

            return(View("NuevoCalendarioFeriado", trnCalendarioFeriadoVista));
        }
Example #4
0
        public IActionResult NuevoCalendarioFeriado(TrnCalendarioFeriadoVista trnCalendarioFeriadoVista)
        {
            if (ModelState.IsValid)
            {
                trnCalendarioFeriadoVista = JsonConvert.DeserializeObject <TrnCalendarioFeriadoVista>(HttpContext.Session.GetString("trnCalendarioFeriadoVista"));

                if (trnCalendarioFeriadoVista.detalle.Count > 0)
                {
                    using (var context = new ePlaceDBContext())
                    {
                        using (IDbContextTransaction transaction = context.Database.BeginTransaction())
                        {
                            try
                            {
                                string descripcion = Request.Form["trnCalendarioFeriado.Descripcion"];
                                TrnCalendarioFeriado trnCalendarioFeriado = new TrnCalendarioFeriado
                                {
                                    Descripcion = descripcion,
                                    Empid       = configuration.GetSection("empid").Value,
                                };
                                _context.Add(trnCalendarioFeriado);
                                _context.SaveChanges();

                                int lastCalendarioFeriadoID = _context.TrnCalendarioFeriado.ToList().Select(C => C.IdCalendarioFeriado).Max();

                                foreach (var item in trnCalendarioFeriadoVista.detalle)
                                {
                                    TrnCalendarioFeriadoDetalle trnCalendarioFeriadoDetalle = new TrnCalendarioFeriadoDetalle
                                    {
                                        IdCalendarioFeriado = lastCalendarioFeriadoID,
                                        Descripcion         = item.Descripcion,
                                        Empid       = item.Empid,
                                        Fecha       = item.Fecha,
                                        DiaCompleto = item.DiaCompleto,
                                        HoraDesde   = item.HoraDesde,
                                        HoraHasta   = item.HoraHasta
                                    };
                                    _context.Add(trnCalendarioFeriadoDetalle);
                                }
                                _context.SaveChanges();

                                transaction.Commit();

                                trnCalendarioFeriadoVista.trnCalendarioFeriado = new TrnCalendarioFeriado();
                                trnCalendarioFeriadoVista.detalle = new List <TrnCalendarioFeriadoDetalle>();
                                HttpContext.Session.SetString("trnCalendarioFeriadoVista", JsonConvert.SerializeObject(trnCalendarioFeriadoVista));

                                ViewBag.Message          = "Se guardó correctamente";
                                ViewBag.ResultMessageCss = "alert-success";
                            }
                            catch (Exception ex)
                            {
                                ViewBag.Message          = "Hubo un error al guardar los datos!";
                                ViewBag.ResultMessageCss = "alert-danger";

                                transaction.Rollback();
                                throw ex;
                            }
                            finally
                            {
                                ModelState.Clear();
                            }
                        }
                    }
                }
                else
                {
                    ViewBag.Message          = "Aún no ha ingresado elementos en el detalle!";
                    ViewBag.ResultMessageCss = "alert-danger";
                }
            }

            return(View(trnCalendarioFeriadoVista));
        }