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); } } } }