示例#1
0
        public async Task <ActionResult <Respuesta> > PutProvincias(int id, [FromBody] ProvinciaRequest provinciaRequest)
        {
            var entity = await this.context.Set <Provincias>().FindAsync(id);

            var pais = await this.context.Paises.FindAsync(provinciaRequest.PaisId);

            if (pais == null)
            {
                return(BadRequest(new Respuesta
                {
                    EsExitoso = false,
                    Mensaje = "Pais no existe.",
                    Resultado = null
                }));
            }
            entity.Pais                      = pais;
            entity.NombreProvincia           = provinciaRequest.NombreProvincia;
            this.context.Entry(entity).State = EntityState.Modified;
            await this.context.SaveChangesAsync();

            return(Ok(new Respuesta
            {
                EsExitoso = true,
                Mensaje = "",
                Resultado = new ProvinciaRespuesta
                {
                    ProvinciaId = entity.Id,
                    PaisId = entity.PaisId,
                    NombrePais = entity.Pais.NombrePais,
                    NombreProvincia = entity.NombreProvincia
                }
            }));
        }
示例#2
0
        public IHttpActionResult eliminarProvincia(ProvinciaRequest model)
        {
            ProvinciaDataAccess   _provinciaDataAccess = new ProvinciaDataAccess();
            BaseResponse <string> result = new BaseResponse <string>();

            result = _provinciaDataAccess.EliminarProvincia(model);

            return(Ok(result));
        }
        public BaseResponse <string> EliminarProvincia(ProvinciaRequest model)
        {
            BaseResponse <string> result = new BaseResponse <string>();

            using (MesaDineroContext context = new MesaDineroContext())
            {
                using (var transaccion = context.Database.BeginTransaction())
                {
                    try
                    {
                        Tb_MD_Provincia prov = context.Tb_MD_Provincia.Find(model.codigo);
                        if (prov == null)
                        {
                            throw new Exception("Entidad Nula, Provincia no encontrado");
                        }


                        prov.iEstadoRegistro = EstadoRegistroTabla.Eliminado;

                        context.SaveChanges();
                        transaccion.Commit();

                        result.success = true;
                    }
                    catch (System.Data.Entity.Validation.DbEntityValidationException ex)
                    {
                        #region Error EntityFramework
                        var errorMessages = ex.EntityValidationErrors
                                            .SelectMany(x => x.ValidationErrors)
                                            .Select(x => x.ErrorMessage);

                        var fullErrorMessage = string.Join("; ", errorMessages);

                        result.success = false;
                        result.error   = fullErrorMessage;
                        transaccion.Rollback();
                        #endregion
                    }
                    catch (Exception ex)
                    {
                        result.success = false;

                        transaccion.Rollback();
                        result.error = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                    }
                }
            }

            return(result);
        }
        public BaseResponse <string> insertNewProvincia(ProvinciaRequest model)
        {
            BaseResponse <string> result = new BaseResponse <string>();

            using (MesaDineroContext context = new MesaDineroContext())
            {
                using (var transaccion = context.Database.BeginTransaction())
                {
                    try
                    {
                        Tb_MD_Provincia prov = new Tb_MD_Provincia();
                        prov.Nombre          = model.nombre;
                        prov.iEstadoRegistro = model.estado;
                        context.Tb_MD_Provincia.Add(prov);

                        context.SaveChanges();
                        transaccion.Commit();

                        result.success = true;
                    }
                    catch (System.Data.Entity.Validation.DbEntityValidationException ex)
                    {
                        #region Error EntityFramework
                        var errorMessages = ex.EntityValidationErrors
                                            .SelectMany(x => x.ValidationErrors)
                                            .Select(x => x.ErrorMessage);

                        var fullErrorMessage = string.Join("; ", errorMessages);

                        result.success = false;
                        result.error   = fullErrorMessage;
                        transaccion.Rollback();
                        #endregion
                    }
                    catch (Exception ex)
                    {
                        result.success = false;

                        transaccion.Rollback();
                        result.error = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                    }
                }
            }

            return(result);
        }
示例#5
0
        public async Task <ActionResult <Respuesta> > PostProvincias([FromBody] ProvinciaRequest provinciaRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new Respuesta
                {
                    EsExitoso = false,
                    Mensaje = "Modelo incorrecto.",
                    Resultado = ModelState
                }));
            }

            var user = await this.context.Users.FindAsync("1");

            if (user == null)
            {
                return(BadRequest(new Respuesta
                {
                    EsExitoso = false,
                    Mensaje = "Usuario Invalido.",
                    Resultado = null
                }));
            }

            var pais = await this.context.Paises.FindAsync(provinciaRequest.PaisId);

            if (pais == null)
            {
                return(BadRequest(new Respuesta
                {
                    EsExitoso = false,
                    Mensaje = "Pais no existe.",
                    Resultado = null
                }));
            }

            var entity = new Provincias
            {
                NombreProvincia = provinciaRequest.NombreProvincia,
                Pais            = pais,
                Usuario         = user,
            };

            BaseController.CompletaRegistro(entity, 1, "", user, false);

            await this.context.Set <Provincias>().AddAsync(entity);

            try
            {
                await this.context.SaveChangesAsync();
            }
            catch (Exception ee)
            {
                return(BadRequest(new Respuesta
                {
                    EsExitoso = false,
                    Mensaje = "Registro no grabado, controlar.",
                    Resultado = null
                }));
            }

            //return Ok(new Respuesta
            //{
            //    EsExitoso = true,
            //    Mensaje = "",
            //    Resultado = entity
            //});

            return(Ok(new Respuesta
            {
                EsExitoso = true,
                Mensaje = "",
                Resultado = new ProvinciaRespuesta
                {
                    ProvinciaId = entity.Id,
                    PaisId = entity.PaisId,
                    NombrePais = entity.Pais.NombrePais,
                    NombreProvincia = entity.NombreProvincia
                }
            }));
        }