Пример #1
0
        private void AfectaMovsInv()
        {
            foreach (var p in partidas)
            {
                //**************MOVIMIENTO DE INVENTARIO****************//
                var movInv = new MovInv();
                movInv.FechaOperacion    = DateTime.Now;
                movInv.ConceptoMovsInvId = p.Diferencia > 0 ? "AIN" : "DIN";
                movInv.ProductoId        = p.ProductoId;
                movInv.CreatedBy         = Ambiente.LoggedUser.UsuarioId;
                movInv.ProveedorId       = "";
                movInv.ClienteId         = "";
                movInv.EstacionId        = Ambiente.Estacion.EstacionId;
                movInv.ReferenciaId      = inventario.InventarioId;
                movInv.ReferenciapId     = p.InventariopId;
                movInv.Es             = p.Diferencia > 0 ? "E" : "S";
                movInv.Cantidad       = p.Diferencia;
                producto              = productoController.SelectOne(p.ProductoId);
                movInv.UltimoCosto    = producto.PrecioCompra;
                movInv.Costopp        = producto.Costopp;
                movInv.Valor          = p.Diferencia * producto.Costopp;
                movInv.StockAlMomento = producto.Stock;
                movInv.PrecioVta      = producto.Precio1;
                movInv.Afectacion     = movInv.Es.Equals("E") ? 1 : -1;
                movInv.IsDeleted      = false;
                movInv.TieneLote      = p.LoteId == null ? false : true;
                lote = movInv.TieneLote == true?loteController.SelectOne((int)p.LoteId) : null;

                movInv.NoLote           = movInv.TieneLote == true ? lote.NoLote : "";
                movInv.Caducidad        = movInv.TieneLote == true ? lote.Caducidad : DateTime.Now;
                movInv.CreatedAt        = DateTime.Now;
                Ambiente.CancelaProceso = !movInvController.InsertOne(movInv);
            }
        }
 private void RestaLotes()
 {
     foreach (var p in partidas)
     {
         if (p.LoteId != null)
         {
             var l = loteController.SelectOne((int)p.LoteId);
             if (l != null)
             {
                 l.StockRestante -= p.Cantidad;
                 loteController.Update(l);
             }
         }
     }
 }