}//retorna todas las coincidencias en la busqueda del producto

        public int create(Productos producto, int idusuario)
        {
            var existe = context.productos.Where(p => p.codigo == producto.codigo || p.nombre == producto.nombre).Count();

            if (existe > 0)
            {
                throw new Exception("El codigo Del Producto Ya Existe");
            }
            else
            {
                using var transaccion = context.Database.BeginTransaction();
                try{
                    var fecha       = DateTime.Now;
                    var newproducto = producto;
                    newproducto.fecha = fecha;
                    context.Add(newproducto);
                    context.SaveChanges();
                    //agregamos el producto
                    var new_movimiento = new Movimientos {
                        fecha      = fecha,
                        documento  = "",
                        idusuario  = idusuario,
                        idproducto = newproducto.Id,
                        concepto   = "CREACION DEL PRODUCTO",
                        entrada    = newproducto.existencia,
                        salida     = 0,
                        saldo      = newproducto.existencia,
                        borrado    = false
                    };
                    context.Add(new_movimiento);
                    context.SaveChanges();
                    //se crea el historial del producto en el movimiento
                    transaccion.Commit();//finaliza transaccion se autoriza
                    return(newproducto.Id);
                }catch (Exception e) {
                    transaccion.Rollback();
                    throw new Exception(e.Message);
                }
            }
        }//crea el producto y retorna el id
Beispiel #2
0
 public IActionResult create([FromBody] Materias materia)
 {
     try
     {
         var error = new Dictionary <string, string>();
         if (materia.materia.Length > 0)
         {
             context.Add(materia);
             context.SaveChanges();
             error.Add("mensaje", "Creado");
             return(StatusCode(StatusCodes.Status201Created, Json(error)));
         }
         else
         {
             error.Add("mensaje", "Datos no validos");
             return(StatusCode(StatusCodes.Status400BadRequest, Json(error)));
         }
     }
     catch (Exception e)
     { var error = new Dictionary <string, string>();
       error.Add("mensaje", e.Message);
       return(StatusCode(StatusCodes.Status500InternalServerError,
                         Json(error))); }
 }//crea la materia