//public IHttpActionResult EditarOrden(dynamic request)
        public IHttpActionResult EditarOrden(ActualizarOrdenRequest editrequest)
        {
            try
            {
                //var ordenId = Convert.ToInt32(request.ordenId);

                Guid token     = Guid.Parse(Convert.ToString(Request.Headers.GetValues("Authorization").FirstOrDefault()));
                var  sesionRep = new SesionRepository();
                var  userId    = sesionRep.GetUserIdFromSession(token);
                if (userId == null)
                {
                    return(Unauthorized());
                }

                //var productos = request.productos;
                //var productos = (ActualizarOrdenRequest)request.productos;
                var productos = editrequest;

                var result = ordenRepository.EditarOrden(editrequest.ordenId, Convert.ToInt32(userId), productos);
                return(Ok(result));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public IHttpActionResult Guardar([FromBody] dynamic r)
        {
            try
            {
                Guid token     = Guid.Parse(Convert.ToString(Request.Headers.GetValues("Authorization").FirstOrDefault()));
                var  sesionRep = new SesionRepository();
                var  userId    = sesionRep.GetUserIdFromSession(token);
                if (userId == null)
                {
                    return(Unauthorized());
                }

                int      clienteId   = Convert.ToInt32(Request.Headers.GetValues("Cliente").FirstOrDefault());
                int      categoriaId = Convert.ToInt32(r.categoriaId);
                Producto prod        = new Producto();
                prod.activo = r.producto.activo != null?Convert.ToBoolean(r.producto.activo) : false;

                prod.descripcion = Convert.ToString(r.producto.descripcion);
                prod.imagen      = Convert.ToString(r.producto.imagen);
                prod.precio      = Convert.ToDecimal(r.producto.precio);
                prod.costo       = Convert.ToDecimal(r.producto.costo);
                prod.producto    = Convert.ToString(r.producto.producto);
                prod.productoId  = r.producto.productoId == null ? null : Convert.ToInt32(r.producto.productoId);
                //prod.productoId = Convert.ToInt32(r.producto.productoId);

                var result = productoRepository.GuardarProducto(Convert.ToInt32(userId), clienteId, categoriaId, prod);
                return(Ok(result));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
示例#3
0
 public SesionController(ILogger <SesionController> logger, IMapper mapper)
 {
     _mapper               = mapper;
     _logger               = logger;
     _sesionRepository     = new SesionRepository();
     _credencialRepository = new CredencialRepository();
     _personaRepository    = new PersonaRepository();
 }
 public PreguntaController(ILogger <PreguntaController> logger, IMapper mapper)
 {
     _mapper              = mapper;
     _logger              = logger;
     _preguntaRepository  = new PreguntaRepository();
     _sesionRepository    = new SesionRepository();
     _respuestaRepository = new RespuestaRepository();
     _areaRepository      = new AreaRepository();
 }
 public ResultadoController(ILogger <PreguntaController> logger, IMapper mapper)
 {
     _logger = logger;
     _mapper = mapper;
     _habilidadRepository = new HabilidadRepository();
     _carreraRepository   = new CarreraRepository();
     _areaRepository      = new AreaRepository();
     _resultadoRepository = new ResultadoRepository();
     _sesionRepository    = new SesionRepository();
     _personaRepository   = new PersonaRepository();
 }
        public BaseResponse Actualizar(ActualizarCategoriaRequest request, string userToken)
        {
            try
            {
                var db = new pedidoclick();
                db.Database.Connection.Open();

                var sesionRep   = new SesionRepository();
                int?userId      = sesionRep.GetUserIdFromSession(Guid.Parse(userToken));
                var idCategoria = Convert.ToInt32(request.IdCategoria);

                var categoriaDB = db.t_Categoria.FirstOrDefault(x => x.Id == idCategoria);
                if (categoriaDB == null)
                {
                    return new BaseResponse {
                               Mensaje = "La categoria no existe en la base de datos.", Resultado = false
                    }
                }
                ;

                // Actualizar nombre
                categoriaDB.Categoria = request.Categoria;

                List <t_Producto> nuevosProductosDB = new List <t_Producto>();
                var nuevosProductos = request.Productos.Where(x => x.Nuevo);
                foreach (var p in nuevosProductos)
                {
                    nuevosProductosDB.Add(new t_Producto()
                    {
                        IdCategoria   = idCategoria,
                        Producto      = p.ProductoNombre,
                        Descripcion   = p.Descripcion,
                        Precio        = p.Precio,
                        Activo        = p.Activo,
                        FechaCreo     = DateTime.Now,
                        IdUsuarioCreo = userId,
                        Borrado       = false
                    });
                }

                db.t_Producto.AddRange(nuevosProductosDB);

                var productosActualizar = request.Productos.Where(x => x.ProductoId > 0);
                foreach (var producto in productosActualizar)
                {
                    var p = db.t_Producto.Where(x => x.Id == producto.ProductoId).FirstOrDefault();
                    p.Producto    = producto.ProductoNombre;
                    p.Descripcion = producto.Descripcion;
                    p.Activo      = producto.Activo;
                    p.Borrado     = producto.Borrado;
                    p.Precio      = producto.Precio;

                    p.FechaCreo     = DateTime.Now;
                    p.IdCategoria   = idCategoria;
                    p.IdUsuarioCreo = userId;
                }

                db.SaveChanges();

                db.Database.Connection.Close();

                return(new BaseResponse {
                    Mensaje = "Categoria Actualizada", Resultado = true, Objeto = categoriaDB.Id
                });
            }
            catch (Exception ex)
            {
                return(new BaseResponse {
                    Mensaje = "Sucedio un error al actualizar la categoria: " + ex.Message, Resultado = false
                });
            }
        }