예제 #1
0
        public async Task <IActionResult> Actualizar([FromBody] AlmacenViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }


            if (model.ID_ALMACEN <= 0)
            {
                return(BadRequest());
            }

            var almacen = await _context.almacen.FirstOrDefaultAsync(c => c.ID_ALMACEN == model.ID_ALMACEN);

            if (almacen == null)
            {
                return(NotFound());
            }

            almacen.DESCRIPCION = model.DESCRIPCION;
            almacen.CAPACIDAD   = model.CAPACIDAD;
            almacen.UBICACION   = model.UBICACION;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #2
0
        public async Task <IActionResult> Actualizar([FromBody] CategoriaViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }


            if (model.ID_CATEGORIA <= 0)
            {
                return(BadRequest());
            }

            var categoria = await _context.Categorias.FirstOrDefaultAsync(c => c.ID_CATEGORIA == model.ID_CATEGORIA);

            if (categoria == null)
            {
                return(NotFound());
            }

            categoria.NOMBRE_CATEGORIA = model.NOMBRE_CATEGORIA;
            categoria.DESCRIPCION      = model.DESCRIPCION;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #3
0
        public async Task <IActionResult> Crear([FromBody] CrearViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var fechaHora = DateTime.Now;

            SALIDA salida = new SALIDA
            {
                ID_CLIENTE        = model.idcliente,
                ID_USUARIO        = model.idusuario,
                TIPO_COMPROBANTE  = model.tipo_comprobante,
                SERIE_COMPROBANTE = model.serie_comprobante,
                NUM_COMPROBANTE   = model.num_comprobante,
                FECHA_HORA        = fechaHora,
                IMPUESTO          = model.impuesto,
                TOTAL             = model.total,
                ESTADO            = "Aceptado"
            };


            try
            {
                _context.salida.Add(salida);
                await _context.SaveChangesAsync();

                var id = salida.ID_SALIDA;
                foreach (var det in model.detalles)
                {
                    DETALLE_SALIDA detalle = new DETALLE_SALIDA
                    {
                        idventa    = id,
                        idarticulo = det.idarticulo,
                        cantidad   = det.cantidad,
                        precio     = det.precio,
                        descuento  = det.descuento
                    };
                    _context.detallesalida.Add(detalle);
                }
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #4
0
        public async Task <IActionResult> Crear([FromBody] CrearViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var fechaHora = DateTime.Now;

            ENTRADA ingreso = new ENTRADA
            {
                ID_PROVEEDOR      = model.ID_PROVEEDOR,
                ID_USUARIO        = model.ID_USUARIO,
                TIPO_COMPROBANTE  = model.TIPO_COMPROBANTE,
                SERIE_COMPROBANTE = model.SERIE_COMPROBANTE,
                NUM_COMPROBANTE   = model.NUM_COMPROBANTE,
                FECHA_HORA        = fechaHora,
                IMPUESTO          = model.IMPUESTO,
                TOTAL             = model.TOTAL,
                ESTADO            = "Aceptado"
            };


            try
            {
                _context.Entrada.Add(ingreso);
                await _context.SaveChangesAsync();

                var id = ingreso.ID_ENTRADA;
                foreach (var det in model.detalles)
                {
                    DETALLE_ENTRADA detalle = new DETALLE_ENTRADA
                    {
                        ID_INGRESO  = id,
                        ID_ARTICULO = det.ID_ARTICULO,
                        CANTIDAD    = det.CANTIDAD,
                        PRECIO      = det.PRECIO
                    };
                    _context.detalle.Add(detalle);
                }
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #5
0
        public async Task <IActionResult> Crear([FromBody] CrearViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var email = model.email.ToLower();

            if (await _context.Usuarios.AnyAsync(u => u.EMAIL == email))
            {
                return(BadRequest("El email ya existe"));
            }

            CrearPasswordHash(model.password, out byte[] passwordHash, out byte[] passwordSalt);

            USUARIO usuario = new USUARIO
            {
                ID_ROL        = model.idrol,
                NOMBRE        = model.nombre,
                TIPO_OCUMENTO = model.tipo_documento,
                NUM_DOCUMENTO = model.num_documento,
                DIRECCION     = model.direccion,
                TELEFONO      = model.telefono,
                EMAIL         = model.email.ToLower(),
                PASSWORD_HAS  = passwordHash,
                PASSWORD_SALT = passwordSalt,
                CONDICION     = true
            };

            _context.Usuarios.Add(usuario);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #6
0
        public async Task <IActionResult> Crear([FromBody] CrearViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var email = model.email.ToLower();

            if (await _context.Persona.AnyAsync(p => p.EMAIL == email))
            {
                return(BadRequest("El email ya existe"));
            }

            PERSONA persona = new PERSONA
            {
                TIPO_PERSONA   = model.tipo_persona,
                NOMBRE         = model.nombre,
                TIPO_DOCUMENTO = model.tipo_documento,
                NUM_DOCUMENTO  = model.num_documento,
                DIRECCION      = model.direccion,
                TELEFONO       = model.telefono,
                EMAIL          = model.email.ToLower()
            };

            _context.Persona.Add(persona);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }

            return(Ok());
        }
예제 #7
0
        public async Task <IActionResult> Actualizar([FromBody] ActualizarViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (model.idarticulo <= 0)
            {
                return(BadRequest());
            }

            var articulo = await _context.Articulos.FirstOrDefaultAsync(a => a.ID_ARTICULO == model.idarticulo);

            if (articulo == null)
            {
                return(NotFound());
            }

            articulo.ID_CATEGORIA    = model.idcategoria;
            articulo.NOMBRE_ARTICULO = model.nombre;
            articulo.PRECIO          = model.precio_venta;
            articulo.STOCK           = model.stock;
            articulo.DESCRIPCION     = model.descripcion;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                // Guardar Excepción
                return(BadRequest());
            }

            return(Ok());
        }