示例#1
0
        public async Task <IActionResult> PutCategoria(int id, Categoria categoria)
        {
            if (id != categoria.Id)
            {
                return(BadRequest());
            }

            _context.Entry(categoria).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!CategoriaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#2
0
        public async Task <IActionResult> PutSolicitudDeAfiliacion(int id, SolicitudDeAfiliacion solicitudDeAfiliacion, [FromHeader] string Authorization)
        {
            string idToken = Authorization.Remove(0, 7);

            usuario = await autenticar.obtener_usuario(idToken);

            if (id != solicitudDeAfiliacion.Id)
            {
                return(BadRequest());
            }
            if (solicitudDeAfiliacion.Estado == "Aprobado" && solicitudDeAfiliacion.Comentario == "")
            {
                solicitudDeAfiliacion.Comentario = "Bienviendo nuevo vendedor, es un placer contar contigo.";
            }
            string[] valores = imagenes(solicitudDeAfiliacion, 1);;
            solicitudDeAfiliacion.PagareUrl             = valores[0];
            solicitudDeAfiliacion.ReciboAguaUrl         = valores[1];
            solicitudDeAfiliacion.ReciboLuzUrl          = valores[2];
            solicitudDeAfiliacion.ReciboTelefonoUrl     = valores[3];
            solicitudDeAfiliacion.ReferenciaBancariaUrl = valores[4];
            _context.Entry(solicitudDeAfiliacion).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!SolicitudDeAfiliacionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <ActionResult <Producto> > PostProcesarProducto(int id, string estado)
        {
            var    producto = new Producto();
            var    productoModificar = new Producto();
            var    productoEliminar = new Producto();
            var    solicitud = new SolicitudProducto();
            int    prodModificar = 0, prodEliminar = 0;
            string tipo = "";

            //tipo = producto.SolicitudProductoIdProductoNavigation.First().Tipo;
            solicitud = await actualizarSolicitud(id, estado);

            tipo = solicitud.Tipo;

            producto = await _context.Producto.Where(c => c.Activo == false && c.Id == id).FirstOrDefaultAsync();

            if ((bool)producto.Activo == false && tipo == "Agregar" && estado == "Aprobado")
            {
                producto.Activo = true;
                _context.Entry(producto).State = EntityState.Modified;
            }
            else if (tipo == "Modificar" && estado == "Aprobado")
            {
                prodModificar     = (int)solicitud.IdProductoModificar;
                productoModificar = await _context.Producto.Where(c => c.Activo == true && c.Id == prodModificar).FirstOrDefaultAsync();

                productoModificar.IdCategoria           = producto.IdCategoria;
                productoModificar.ImagenUrl             = producto.ImagenUrl;
                productoModificar.Nombre                = producto.Nombre;
                productoModificar.Precio                = producto.Precio;
                _context.Entry(productoModificar).State = EntityState.Modified;
                imagenes(producto, 2);
                _context.Producto.Remove(producto);
            }
            else if (tipo == "Eliminar" && estado == "Aprobado")
            {
                //cuando soliciten eliminacion debe de mostrarse el producto en el dashboard
                prodEliminar     = id_cambio;
                productoEliminar = await _context.Producto.Where(c => c.Activo == true && c.Id == prodEliminar).FirstOrDefaultAsync();

                imagenes(producto, 2);
                imagenes(productoEliminar, 2);
                _context.Producto.Remove(producto);
                _context.Producto.Remove(productoEliminar);
            }
            else if (estado == "Denegado")
            {
                imagenes(producto, 2);
                _context.Producto.Remove(producto);
            }
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProductoExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }