Example #1
0
 public bool InsertOne(Traspasop o)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.Add(o);
             return(db.SaveChanges() > 0 ? true : false);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje("Algo salio mal con: " + MethodBase.GetCurrentMethod().Name + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
Example #2
0
 public bool Update(Traspasop o)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.Entry(o).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
             return(db.SaveChanges() > 0 ? true : false);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje("Algo salio mal con: " + MethodBase.GetCurrentMethod().Name + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
        private void InsertaPartida()
        {
            if (producto == null && TxtProductoId.Text.Trim().Length == 0)
            {
                Ambiente.Mensaje("Producto no encontrado");
                return;
            }

            producto = productoController.SelectOne(TxtProductoId.Text.Trim());
            if (producto == null)
            {
                return;
            }

            try
            {
                if ((bool)producto.Ocupado)
                {
                    Ambiente.Mensaje("Operación abortada, el articulo está bloqueado por otro proceso [INVENTARIOS, AJUSTES, AUTORIZACIONES, ETC]");
                    return;
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(ex.Message);
            }


            if (traspaso != null)
            {
                if (traspaso.TraspasoId == 0)
                {
                    Ambiente.Mensaje("El traspaso no existe");
                    return;
                }
            }

            var partida = new Traspasop();

            partida.TraspasoId  = traspaso.TraspasoId;
            partida.ProductoId  = producto.ProductoId;
            partida.Descripcion = producto.Descripcion;
            partida.Cantidad    = NCantidad.Value;
            partida.Stock       = producto.Stock;
            partida.Precio      = producto.Precio1;
            partida.ImpuestoId1 = producto.Impuesto1Id;
            partida.ImpuestoId2 = producto.Impuesto2Id;
            partida.Impuesto1   = Ambiente.GetTasaImpuesto(partida.ImpuestoId1);
            partida.Impuesto2   = Ambiente.GetTasaImpuesto(partida.ImpuestoId2);
            //Totales de la partida
            partida.Subtotal         = partida.Cantidad * partida.Precio;
            partida.ImporteImpuesto1 = partida.Subtotal * partida.Impuesto1;
            partida.ImporteImpuesto2 = partida.Subtotal * partida.Impuesto2;
            partida.Total            = partida.Subtotal + partida.ImporteImpuesto1 + partida.ImporteImpuesto2;


            if (lote != null)
            {
                if (lote.StockRestante >= partida.Cantidad)
                {
                    partida.LoteId    = lote.LoteId;
                    partida.NoLote    = lote.NoLote;
                    partida.Caducidad = lote.Caducidad;
                }
                else
                {
                    Ambiente.Mensaje("Proceso abortado, el lote seleccionado no tiene suficiente stock.");
                    return;
                }
            }
            else
            {
                partida.LoteId    = null;
                partida.NoLote    = null;
                partida.Caducidad = null;
            }



            //partida al grid
            Malla.Rows[SigPartida].Cells[0].Value = partida.Descripcion;
            Malla.Rows[SigPartida].Cells[1].Value = partida.Stock;
            Malla.Rows[SigPartida].Cells[2].Value = partida.Cantidad;
            Malla.Rows[SigPartida].Cells[3].Value = partida.Precio;
            Malla.Rows[SigPartida].Cells[4].Value = partida.Impuesto1;
            Malla.Rows[SigPartida].Cells[5].Value = partida.Impuesto2;
            Malla.Rows[SigPartida].Cells[6].Value = partida.Subtotal;
            Malla.Rows[SigPartida].Cells[7].Value = partida.Subtotal + partida.ImporteImpuesto1 + partida.ImporteImpuesto2;
            Malla.Rows[SigPartida].Cells[8].Value = partida.NoLote;
            Malla.Rows[SigPartida].Cells[9].Value = partida.Caducidad;
            partidas.Add(partida);
            ResetPartida();
            CalculaTotales();
        }