Beispiel #1
0
 public ActionResult Create(CompraCreateDto model)
 {
     try
     {
         return(Created("", _compraService.Create(model)));
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
Beispiel #2
0
        //insertar o actualizar empleado
        public async Task <bool> CrearCompra(CompraCreateDto model)
        {
            var result = false;


            using (var transaction = _context.Database.BeginTransaction())
            {
                try
                {
                    var compra = new Compra
                    {
                        Id           = model.Id,
                        Fecha        = model.Fecha,
                        Total_Compra = model.TotalCompra,
                        ProveedorId  = model.ProveedorId,
                        No_Serie     = model.No_Serie,
                        Estado       = model.Estado,
                        Factura      = model.Factura,
                        Tipo         = model.Tipo
                    };

                    if (compra.Id > 0)
                    {
                        _context.Compra.Update(compra);
                    }
                    else
                    {
                        _context.Compra.Add(compra);
                    }

                    await _context.SaveChangesAsync();

                    int compraId = compra.Id;
                    try
                    {
                        foreach (var d in model.detalle)
                        {
                            var detalle = new DetalleCompra
                            {
                                Id            = d.Id,
                                CompraId      = compraId,
                                ProductoId    = d.ProductoId,
                                Precio_Compra = d.PrecioCompra,
                                Cantidad      = d.Cantidad
                            };

                            if (detalle.Id > 0)
                            {
                                _context.DetalleCompra.Update(detalle);
                            }
                            else
                            {
                                _context.DetalleCompra.Add(detalle);
                            }

                            await _context.SaveChangesAsync();
                        }
                    }
                    catch (Exception e)
                    {
                        throw e;
                    }
                    transaction.Commit();

                    result = true;
                }
                catch (Exception e)
                {
                    transaction.Rollback();
                    result = false;
                    throw e;
                }
            }

            return(result);
        }
Beispiel #3
0
 public CompraCreateDto Create(CompraCreateDto CompraCreateDto)
 {
     _context.Add(_mapper.Map <Compra>(CompraCreateDto));
     _context.SaveChanges();
     return(CompraCreateDto);
 }
Beispiel #4
0
 public async Task <IActionResult> Create([FromBody] CompraCreateDto model)
 {
     return(Ok(
                await _compra.CrearCompra(model)
                ));
 }