예제 #1
0
        public async Task <int> UpdateProducto(ProductoDto newProducto)
        {
            AmazonDynamoDBClient client = new AmazonDynamoDBClient();
            string tableName            = "Productos";

            var request = new UpdateItemRequest
            {
                TableName = tableName,
                Key       = new Dictionary <string, AttributeValue>()
                {
                    { "Id", new AttributeValue {
                          N = newProducto.id.ToString()
                      } }
                },
                ExpressionAttributeNames = new Dictionary <string, string>()
                {
                    { "#I", "Inventario" }
                },
                ExpressionAttributeValues = new Dictionary <string, AttributeValue>()
                {
                    { ":inventario", new AttributeValue {
                          N = newProducto.inventario.ToString()
                      } }
                },

                UpdateExpression = "SET #I = :inventario"
            };
            var response = await client.UpdateItemAsync(request);

            return(1);
        }
예제 #2
0
        private void Coger(object sender, DataGridViewCellEventArgs e)
        {
            String id     = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[0].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[0].Value.ToString();
            String nombre = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[1].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[1].Value.ToString();
            String t1     = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[2].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[2].Value.ToString();
            String t2     = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[3].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[3].Value.ToString();
            String stock  = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[4].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[4].Value.ToString();
            String precio = (dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[5].Value.ToString() == null) ? "" : dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[5].Value.ToString();

            ProductoDto producto = new ProductoDto(id, nombre, t1, t2, stock, precio);

            if (observer != null)
            {
                observer.updateProducto(producto);
                Dispose();
                observer.Show();
            }

            if (modObserver != null)
            {
                modObserver.updateProducto(producto);
                Dispose();
                modObserver.Show();
            }
        }
예제 #3
0
        public AgregarProductos(long pedidoId, bool semaforo)
        {
            InitializeComponent();

            productoServicio         = new ProductoServicio();
            producto_vent            = new Producto_Venta_Servicio();
            ventaServicio            = new VentaServicio();
            detalleCajaServicio      = new DetalleCajaServicio();
            cajaServicio             = new CajaServicio();
            clienteServicio          = new ClienteServicio();
            talleServicio            = new TalleServicio();
            pedidoServicio           = new PedidoServicio();
            producto_Dato_Servicio   = new Producto_Dato_Servicio();
            producto_Pedido_Servicio = new Producto_Pedido_Servicio();
            ctaCteServicio           = new CtaCteServicio();

            producto   = new ProductoDto();
            ListaVenta = new List <VentaDto2>();
            ventaDto   = new VentaDto();

            _Semaforo = semaforo;

            _PedidoId  = pedidoId;
            _Pedido    = pedidoServicio.BuscarIDPedidos(pedidoId);
            _clienteId = _Pedido.ClienteId;
            Bandera    = false;

            CargarTalle();
            CargarDatos();
            CargarGrilla(ListaVenta);

            CargarImageEnGeneral();
        }
예제 #4
0
        public GenericResponse <String> Put(int id, [FromBody] ProductoDto producto)
        {
            GenericResponse <String> response = new GenericResponse <String>();

            try
            {
                ProductoDto prodActual = servicio.BuscarPorId(id);

                if (producto.Base64Imagen != null && producto.Base64Imagen != "")
                {
                    producto.Imagen = cloudinaryUtil.SubeImagen(producto.Base64Imagen, producto.Descripcion);
                }
                else
                {
                    producto.Imagen = prodActual.Imagen;
                }

                producto.Id = id;
                servicio.Actualizar(producto);

                response = ResponseUtil.CrearRespuestaOk(dataMsg: "El producto se actualizó satisfactoriamente");
            }
            catch (Exception ex)
            {
                throw new CustomResponseException(ex.Message, 500);
            }

            return(response);
        }
예제 #5
0
        public Venta()
        {
            InitializeComponent();

            productoServicio    = new ProductoServicio();
            producto_vent       = new Producto_Venta_Servicio();
            ventaServicio       = new VentaServicio();
            producto            = new ProductoDto();
            detalleCajaServicio = new DetalleCajaServicio();
            cajaServicio        = new CajaServicio();
            clienteServicio     = new ClienteServicio();
            talleServicio       = new TalleServicio();

            CargarTalle();

            ListaVenta  = new List <VentaDto2>();
            ListaCtaCte = new List <Producto_Venta_Dto>();
            ventaDto    = new VentaDto();

            ConsumidorFinall();

            CargarGrilla(ListaVenta);

            btnSeleccionProducto.Select();

            CargarImageEnGeneral();
        }
        public async Task <ActionResult <int> > PutProducto(int id, [FromForm] ProductoDto producto)
        {
            if (id != producto.Id)
            {
                return(BadRequest());
            }

            if (Request.Form.Files.Count > 0)
            {
                var file = Request.Form.Files[0];

                if (file.Length > 0)
                {
                    await _repository.GuardarImagen(file);
                }
            }

            producto.UsuarioModifica = User.Identity.Name;

            var response = await _repository.Update(_mapper.Map <Producto>(producto));

            if (!response.Success)
            {
                return(Conflict(response.Message));
            }

            return(response.Data.Id);
        }
예제 #7
0
        public async Task <IActionResult> AgregarProducto([FromForm] ProductoDto productodto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            else if (await _RepositorioProducto.ExistenombreProducto(productodto.Nombre.Trim()))
            {
                ModelState.AddModelError("Descripción",
                                         "El nombre de Producto ya esta en uso");
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var newProduct = new Producto()
            {
                Nombre       = productodto.Nombre.Trim(),
                CodigoBarras = productodto.CodigoBarras.Trim(),
                Precio       = productodto.Precio
            };

            await _RepositorioProducto.AgregarProducto(newProduct);

            return(CreatedAtRoute("GetProduct", new { IdProducto = newProduct.Id }, null));
        }
        public void EliminarItem(long comprobanteId, int cantidad, ProductoDto producto, long listaId)
        {
            using (var context = new ModeloGastronomiaContainer())
            {
                var comprobante = context.Comprobantes.OfType <Salon>()
                                  .Include(x => x.DetallesSalones)
                                  .FirstOrDefault(x => x.Id == comprobanteId);

                if (comprobante == null)
                {
                    throw new Exception("Error");
                }

                var item = comprobante.DetallesSalones
                           .FirstOrDefault(x => x.ProductoId == producto.Id &&
                                           x.Producto.ListasPreciosProductos.Any(l => l.ListaPrecioId == listaId));

                if (item != null)
                {
                    if (item.Cantidad != 0)
                    {
                        item.Cantidad  -= cantidad;
                        item.SubTotal  -= item.Precio;
                        producto.Stock += 1;
                    }
                    if (item.Cantidad == 0)
                    {
                        context.DetalleComprobantes.Remove(item);
                    }
                }
                context.SaveChanges();
            }
        }
        public void DisminuirCantidadItem(long comprobanteId, ProductoDto producto, int cantidad)
        {
            using (var context = new ModeloGastronomiaContainer())
            {
                var comprobante = context.Comprobantes.OfType <Salon>()
                                  .Include(x => x.DetallesSalones)
                                  .FirstOrDefault(x => x.Id == comprobanteId);

                if (comprobante == null)
                {
                    throw new Exception("Error");
                }

                var item = comprobante.DetallesSalones.FirstOrDefault(x =>
                                                                      x.ProductoId == producto.Id

                                                                      );

                if (item?.Cantidad > 0)
                {
                    item.Cantidad = item.Cantidad - cantidad;
                    item.SubTotal = item.Cantidad * item.Precio;
                }

                context.SaveChanges();
            }
        }
예제 #10
0
        public void Update(ProductoDto productoDto)
        {
            try
            {
                var target = One(e => e.Id == productoDto.Id);

                if (target != null)
                {
                    var entity = new Producto();

                    entity.Id              = productoDto.Id;
                    entity.Descripcion     = productoDto.Descripcion;
                    entity.Caracteristicas = productoDto.Caracteristicas;
                    //entity.MarcaId = productoDto.MarcaId;
                    entity.PrecioCosto    = productoDto.PrecioCosto;
                    entity.PrecioVenta    = entity.PrecioCosto;
                    entity.TipoImpuesto   = productoDto.TipoImpuesto;
                    entity.ProductoTipoId = 1;

                    entities.Productos.Attach(entity);
                    entities.Entry(entity).State = EntityState.Modified;
                    entities.SaveChanges();
                }
            }
            catch (Exception ex)
            {
            }
        }
        public async Task <ActionResult <ProductoDto> > Post(ProductoDto productoDto)
        {
            try
            {
                // Se mapea a tipo Producto
                var producto = _mapper.Map <Producto>(productoDto);

                // Se envia al repositorio para que se agregen los campos faltantes y almacene en DB
                var nuevoProducto = await _productosRepositorio.Agregar(producto);

                if (nuevoProducto == null)
                {
                    return(BadRequest());
                }

                // Se mapea a Dto para devolver
                var nuevoProductoDto = _mapper.Map <ProductoDto>(nuevoProducto);

                return(CreatedAtAction(nameof(Post), new { id = nuevoProductoDto.Id }, nuevoProductoDto));
            }
            catch (Exception ex)
            {
                _logger.LogError($"Error en ${ nameof(Post) }: ${ ex.Message }");
                return(BadRequest());
            }
        }
예제 #12
0
        public async Task <IActionResult> ActualizarProducto(ProductoDto productoDto)
        {
            var producto = _mapper.Map <Producto>(productoDto);
            await _productoRepository.ActualizarProducto(producto);

            return(Ok(productoDto));
        }
예제 #13
0
        public JsonResult GuardarProducto(string nombre, string descripcion, int cantidad, int tipoProductoId)
        {
            try
            {
                //Producto prod = ComunServicio.ObtenerDtoFromString<Producto>(producto);
                int         id   = productoServicio.ObtenerProductosTodos().Count;
                ProductoDto prod = new ProductoDto()
                {
                    ProductoID     = id + 1,
                    Nombre         = nombre,
                    Descripcion    = descripcion,
                    Cantidad       = cantidad,
                    TipoProductoID = tipoProductoId
                };
                int pk = productoServicio.GuardarProducto(prod);

                return(new JsonResult {
                    Data = new { Success = true, Data = pk }
                });
            }
            catch (Exception ex)
            {
                return(new JsonResult {
                    Data = new { Success = false, Mensaje = ex.Message }
                });
            }
        }
예제 #14
0
        private void btnModificar_Click(object sender, EventArgs e)
        {
            //bool n = dgvProductos.CurrentRow.Selected;
            bool n = dgvProductos.SelectedRows.Count == 0 ? false : true;

            if (n)
            {
                ProductoDto p = new ProductoDto();
                p.setId(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[0].Value.ToString());
                p.setNombre(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[1].Value.ToString());
                p.setT1(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[2].Value.ToString());
                p.setT2(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[3].Value.ToString());
                p.setStock(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[4].Value.ToString());
                p.setPrecio(dgvProductos.Rows[dgvProductos.CurrentRow.Index].Cells[5].Value.ToString());

                ModificarProducto modificar = new ModificarProducto(this, p);
                dgvProductos.ClearSelection();
                this.Hide();
                modificar.ShowDialog();
            }
            else
            {
                MessageBox.Show("Error, Selecciona el producto a modificar", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public async Task <ActionResult <ProductoDto> > Put(int id, [FromBody] ProductoDto productoDto)
        {
            if (productoDto == null)
            {
                return(NotFound());
            }

            try
            {
                var producto = _mapper.Map <Producto>(productoDto);

                var resultado = await _productosRepositorio.Actualizar(producto);

                if (!resultado)
                {
                    return(BadRequest());
                }

                return(productoDto);
            }
            catch (Exception ex)
            {
                _logger.LogError($"Error en {nameof(Put)}: | ${ex.Message}");
                return(BadRequest());
            }
        }
 public ModificarProducto(Productos pro, ProductoDto p)
 {
     this.pro = pro;
     InitializeComponent();
     this.p = p;
     initTipo1("");
     llenaCampos();
 }
예제 #17
0
        public ProductoDto Create(ProductoDto entityDto)
        {
            var entity = Mapper.Map <ProductoDto, Producto>(entityDto);

            _context.Producto.Add(entity);
            _context.SaveChanges();
            return(Mapper.Map <Producto, ProductoDto>(entity));
        }
예제 #18
0
        public _90002_ABM_ListaPrecioProducto(string _tipoOperacion, long?_entidadId)
            : base(_tipoOperacion, _entidadId)
        {
            InitializeComponent();

            _productoServicio            = new ProductoServicio();
            _listaPrecioServicio         = new ListaPrecioServicio();
            _listaPrecioProductoServicio = new ListaPrecioProductoServicio();
            _pedidoProductoServicio      = new PedidoProductoServicio();

            PoblarComboBox(cmbListaPrecio, _listaPrecioServicio.ObtenerPorFiltro(string.Empty), "Descripcion", "Id");

            PoblarComboBox(cmbProducto, _productoServicio.ObtenerPorFiltro(string.Empty), "Descripcion", "Id");

            Init(_tipoOperacion, _entidadId);

            if (_tipoOperacion == Constante.TipoOperacion.Nuevo)
            {
                _productoSeleccionado = (ProductoDto)cmbProducto.SelectedItem;

                if (_productoSeleccionado != null)
                {
                    if (_pedidoProductoServicio.verificarPedidoPorProducto(_productoSeleccionado.Id))
                    {
                        lblPrecioCosto.Text = _pedidoProductoServicio.obtenerPedidoPorProducto(_productoSeleccionado.Id).PrecioCosto.ToString();
                    }
                }
                else
                {
                    lblPrecioCosto.Text = 0m.ToString();
                }
            }



            if (_tipoOperacion == Constante.TipoOperacion.Modificar)
            {
                cmbListaPrecio.Enabled      = false;
                cmbProducto.Enabled         = false;
                DtpFechaActualizacion.Value = DateTime.Now;
            }

            if (_tipoOperacion == Constante.TipoOperacion.Eliminar)
            {
                cmbListaPrecio.Enabled   = false;
                cmbProducto.Enabled      = false;
                txtPrecioPublico.Enabled = false;
            }


            txtPrecioPublico.Text.Trim();
            txtPrecioPublico.KeyPress += Validacion.NoLetras;
            txtPrecioPublico.KeyPress += Validacion.NoSimbolos;
            txtPrecioPublico.KeyPress += Validacion.NoInyeccion;

            txtPrecioPublico.Enter += txt_Enter;
            txtPrecioPublico.Leave += txt_Leave;
        }
예제 #19
0
        public ActionResult EditarProducto(ProductoDto productoDto)
        {
            if (productoDto != null && ModelState.IsValid)
            {
                productoServicio.Update(productoDto);
            }

            return(Json(productoDto, JsonRequestBehavior.AllowGet));
        }
예제 #20
0
        public ActionResult CrearProducto(ProductoDto productoDto)
        {
            if (productoDto != null)
            {
                productoServicio.Create(productoDto);
            }

            return(Json(productoDto, JsonRequestBehavior.AllowGet));
        }
예제 #21
0
        public static Producto ToProducto(this ProductoDto dto)
        {
            var producto = new Producto();

            producto.Id          = dto.Id;
            producto.Codigo      = dto.Codigo;
            producto.Descripcion = dto.Descripcion;
            producto.Activo      = dto.Activo;
            return(producto);
        }
        public static IEnumerable <ProductoSaludDetalleDtoMapper> ExtraerListaSalud(ProductoDto productoDto)
        {
            IEnumerable <ProductoSaludDetalleDtoMapper> valor = null;

            if (null != productoDto)
            {
                valor = productoDto.ListProductoSalud.Valor;
            }
            return(valor);
        }
        public static IEnumerable <CascadaDtoMapper> ExtraerCascada(ProductoDto productoDto)
        {
            IEnumerable <CascadaDtoMapper> valor = null;

            if (null != productoDto)
            {
                valor = productoDto.ListaCascada.Valor;
            }
            return(valor);
        }
 private static Producto CrearEntidad(ProductoDto dto)
 {
     return(new Producto
     {
         Id = dto.Id,
         Nombre = dto.Nombre,
         Descripcion = dto.Descripcion,
         sku = dto.sku
     });
 }
 public static Producto Convertir(ProductoDto dto)
 {
     if (dto != null)
     {
         return(CrearEntidad(dto));
     }
     else
     {
         return(null);
     }
 }
예제 #26
0
 public async Task <ActionResult> UpdateProducto(ProductoDto newProducto)
 {
     try
     {
         return(Ok(await iProductosService.UpdateProducto(newProducto)));
     }
     catch (Exception ex)
     {
         return(Ok(ex.ToString()));
     }
 }
예제 #27
0
 private void ValidaProducto(ProductoDto producto)
 {
     if (producto.StockActual <= 0)
     {
         throw new CustomResponseException("El producto no puede tener un stock menor 1", 400);
     }
     if (producto.PrecioCompra > producto.PrecioVenta)
     {
         throw new CustomResponseException("El producto no puede tener un precio de venta menor al de compra", 400);
     }
 }
예제 #28
0
        public static ProductoVidaApDtoMapper TransformarVidaApDTOEnDtoMapper(ProductoDto productoDto, int grupoFormualario)
        {
            ProductoVidaApDtoMapper vidaAp = new ProductoVidaApDtoMapper();

            vidaAp.ID_PRODUCTO_VIDAAP = MapperEstructurasUtilidades.ExtraerEntero(productoDto.Id_VidaAp) ?? 0;
            vidaAp.FREECOVER          = MapperEstructurasUtilidades.ExtraerCadena(productoDto.Freecover);
            vidaAp.CAPITALMAXINO      = MapperEstructurasUtilidades.ExtraerDecimal(productoDto.CapitalMaximo);
            vidaAp.CUMULO             = MapperEstructurasUtilidades.ExtraerCadena(productoDto.Cumulo);
            vidaAp.ID_AGRUPACION      = grupoFormualario;
            return(vidaAp);
        }
예제 #29
0
 public BusinessResult <ProductoDto> Create(ProductoDto entityDto)
 {
     try
     {
         var result = _productoData.Create(entityDto);
         return(BusinessResult <ProductoDto> .Success(result, "Operación correcta"));
     }
     catch (Exception ex)
     {
         return(BusinessResult <ProductoDto> .Issue(null, "Operación incorrecta", ex));
     }
 }
예제 #30
0
 public static Producto ToEntity(ProductoDto productoDto)
 {
     return(new Producto()
     {
         Title = productoDto.Title,
         Description = productoDto.Description,
         MediaUrl = productoDto.MediaUrl,
         CategoryName = productoDto.CategoryName,
         PublicationDate = productoDto.PublicationDate,
         Author = productoDto.Author
     });
 }