コード例 #1
0
        public async Task <IActionResult> Edit(int id)
        {
            try
            {
                var vista                = new PeriodoNomina();
                var respuesta            = new Response();
                var PeriodoNominaSession = new PeriodoNomina {
                    IdPeriodo = id
                };
                respuesta = await apiServicio.ObtenerElementoAsync1 <Response>(PeriodoNominaSession, new Uri(WebApp.BaseAddress),
                                                                               "api/PeriodoNomina/ObtenerPeriodoNomina");

                if (respuesta.IsSuccess)
                {
                    vista = JsonConvert.DeserializeObject <PeriodoNomina>(respuesta.Resultado.ToString());
                }


                return(View(vista));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.ErrorCargarDatos}"));
            }
        }
コード例 #2
0
        public async Task <IActionResult> Edit(PeriodoNomina PeriodoNomina)
        {
            if (!ModelState.IsValid)
            {
                return(View(PeriodoNomina));
            }
            Response response = new Response();

            try
            {
                if (PeriodoNomina.FechaFin < PeriodoNomina.FechaInicio)
                {
                    this.TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.FechaRangoMayor}";
                    ModelState.AddModelError("FechaFin", Mensaje.FechaRangoMayor);
                    ModelState.AddModelError("FechaInicio", Mensaje.FechaRangoMenor);

                    return(View(PeriodoNomina));
                }
                response = await apiServicio.EditarAsync <Response>(PeriodoNomina, new Uri(WebApp.BaseAddress),
                                                                    "api/PeriodoNomina/EditarPeriodoNomina");

                if (response.IsSuccess)
                {
                    var vista = JsonConvert.DeserializeObject <PeriodoNomina>(response.Resultado.ToString());
                    return(this.Redireccionar($"{Mensaje.Informacion}|{Mensaje.Satisfactorio}"));
                }
                this.TempData["Mensaje"] = $"{Mensaje.Error}|{response.Message}";

                return(View(PeriodoNomina));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.ErrorEditar}"));
            }
        }
コード例 #3
0
        public async Task <IActionResult> Delete(string id)
        {
            try
            {
                if (string.IsNullOrEmpty(id))
                {
                    return(RedirectToAction("Index"));
                }
                var tipoConjuntoEliminar = new PeriodoNomina {
                    IdPeriodo = Convert.ToInt32(id)
                };

                var response = await apiServicio.EliminarAsync(tipoConjuntoEliminar, new Uri(WebApp.BaseAddress)
                                                               , "api/PeriodoNomina/EliminarPeriodoNomina");

                if (response.IsSuccess)
                {
                    return(this.Redireccionar($"{Mensaje.Satisfactorio}|{Mensaje.Satisfactorio}"));
                }
                return(this.Redireccionar($"{Mensaje.Satisfactorio}|{Mensaje.BorradoNoSatisfactorio}"));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.ErrorEliminar}"));
            }
        }
コード例 #4
0
        public async Task <Response> ObtenerPeriodoNomina([FromBody] PeriodoNomina PeriodoNomina)
        {
            try
            {
                var periodoNomina = await db.PeriodoNomina.SingleOrDefaultAsync(m => m.IdPeriodo == PeriodoNomina.IdPeriodo);

                if (periodoNomina == null)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.RegistroNoEncontrado,
                    });
                }

                return(new Response
                {
                    IsSuccess = true,
                    Message = Mensaje.Satisfactorio,
                    Resultado = periodoNomina,
                });
            }
            catch (Exception)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.Error,
                });
            }
        }
コード例 #5
0
        public async Task <Response> PostPeriodoNomina([FromBody] PeriodoNomina PeriodoNomina)
        {
            try
            {
                if (!await Existe(PeriodoNomina))
                {
                    db.PeriodoNomina.Add(PeriodoNomina);
                    await db.SaveChangesAsync();

                    return(new Response
                    {
                        IsSuccess = true,
                        Message = Mensaje.Satisfactorio,
                        Resultado = PeriodoNomina,
                    });
                }

                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.ExisteRegistro
                });
            }
            catch (Exception)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.Error,
                });
            }
        }
コード例 #6
0
        public async Task <IActionResult> Create(string mensaje)
        {
            var vista = new PeriodoNomina {
                FechaInicio = DateTime.Now, FechaFin = DateTime.Now, Mes = DateTime.Now.Day, Ano = DateTime.Now.Year
            };

            return(View(vista));
        }
コード例 #7
0
        private async Task <bool> Existe(PeriodoNomina PeriodoNomina)
        {
            var descripcion            = PeriodoNomina.Descripcion;
            var PeriodoNominarespuesta = await db.PeriodoNomina.Where(p => p.Descripcion == descripcion).FirstOrDefaultAsync();

            if (PeriodoNominarespuesta == null || PeriodoNominarespuesta.IdPeriodo == PeriodoNomina.IdPeriodo)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
コード例 #8
0
        public async Task <Response> EditarPeriodoNomina([FromBody] PeriodoNomina PeriodoNomina)
        {
            try
            {
                if (await Existe(PeriodoNomina))
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.ExisteRegistro,
                    });
                }

                var PeriodoNominaActualizar = await db.PeriodoNomina.Where(x => x.IdPeriodo == PeriodoNomina.IdPeriodo).FirstOrDefaultAsync();

                if (PeriodoNominaActualizar == null)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                    });
                }

                PeriodoNominaActualizar.Estado      = PeriodoNomina.Estado;
                PeriodoNominaActualizar.Mes         = PeriodoNomina.Mes;
                PeriodoNominaActualizar.Ano         = PeriodoNomina.Ano;
                PeriodoNominaActualizar.FechaInicio = PeriodoNomina.FechaInicio;
                PeriodoNominaActualizar.FechaFin    = PeriodoNomina.FechaFin;
                PeriodoNominaActualizar.Descripcion = PeriodoNomina.Descripcion;
                PeriodoNominaActualizar.Abierto     = PeriodoNomina.Abierto;
                db.PeriodoNomina.Update(PeriodoNominaActualizar);
                await db.SaveChangesAsync();

                return(new Response
                {
                    IsSuccess = true,
                    Resultado = PeriodoNominaActualizar
                });
            }
            catch (Exception)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.Excepcion
                });
            }
        }
コード例 #9
0
        public async Task <Response> EliminarPeriodoNomina([FromBody] PeriodoNomina PeriodoNomina)
        {
            try
            {
                var respuesta = await db.PeriodoNomina.Where(m => m.IdPeriodo == PeriodoNomina.IdPeriodo).FirstOrDefaultAsync();

                if (respuesta == null)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.RegistroNoEncontrado,
                    });
                }
                db.PeriodoNomina.Remove(respuesta);
                await db.SaveChangesAsync();

                return(new Response
                {
                    IsSuccess = true,
                    Message = Mensaje.Satisfactorio,
                });
            }
            catch (Exception ex)
            {
                if (ex.InnerException.InnerException.Message.Contains("FK"))
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.BorradoNoSatisfactorio,
                    });
                }
                else
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = ex.InnerException.InnerException.Message,
                    });
                }
            }
        }
コード例 #10
0
        public async Task <IActionResult> Create(PeriodoNomina PeriodoNomina)
        {
            if (!ModelState.IsValid)
            {
                return(View(PeriodoNomina));
            }
            Response response = new Response();

            try
            {
                if (PeriodoNomina.FechaFin < PeriodoNomina.FechaInicio)
                {
                    this.TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.FechaRangoMayor}";
                    ModelState.AddModelError("FechaFin", Mensaje.FechaRangoMayor);
                    ModelState.AddModelError("FechaInicio", Mensaje.FechaRangoMenor);
                    return(View(PeriodoNomina));
                }

                response = await apiServicio.InsertarAsync(PeriodoNomina,
                                                           new Uri(WebApp.BaseAddress),
                                                           "api/PeriodoNomina/InsertarPeriodoNomina");

                if (response.IsSuccess)
                {
                    return(this.Redireccionar($"{Mensaje.Informacion}|{Mensaje.Satisfactorio}"));
                }

                this.TempData["Mensaje"] = $"{Mensaje.Error}|{response.Message}";

                return(View(PeriodoNomina));
            }
            catch (Exception)
            {
                return(this.Redireccionar("Create", $"{Mensaje.Error}|{Mensaje.ErrorCargarDatos}"));
            }
        }