/// <summary> /// Obtiene un flujo de datos /// para la generacion de la reimpresion /// de la poliza de Salida de Traspaso /// </summary> /// <param name="produccionFormula"></param> /// <param name="polizaClave"></param> /// <returns></returns> private MemoryStream ReimpresionPolizaProduccionAlimento(ProduccionFormulaInfo produccionFormula, TipoPolizaInfo polizaClave) { var polizaBL = new PolizaBL(); IList <PolizaInfo> polizasProduccionAlimento = polizaBL.ObtenerPoliza(TipoPoliza.ProduccionAlimento, produccionFormula.Organizacion.OrganizacionID, produccionFormula.FechaProduccion, produccionFormula.FolioFormula.ToString(CultureInfo.InvariantCulture), polizaClave.ClavePoliza, 1); MemoryStream stream = null; if (polizasProduccionAlimento != null) { var poliza = FabricaPoliza.ObtenerInstancia().ObtenerTipoPoliza(TipoPoliza.ProduccionAlimento); var produccionFormulaBL = new ProduccionFormulaBL(); using (var almacenDAL = new AlmacenDAL()) { var almacenMovimientoBL = new AlmacenMovimientoBL(); ProduccionFormulaInfo produccion = produccionFormulaBL.ObtenerPorIDCompleto(produccionFormula.ProduccionFormulaId); if (produccion != null) { AlmacenInfo almacenPlantaAlimento = almacenDAL.ObtenerAlmacenOrganizacionTipo(produccionFormula.Organizacion.OrganizacionID, TipoAlmacenEnum.PlantaDeAlimentos); AlmacenMovimientoInfo almacenMovimiento = almacenMovimientoBL.ObtenerPorIDCompleto(produccion.AlmacenMovimientoSalidaID); var produccionFormulaDetalles = new List <ProduccionFormulaDetalleInfo>(); if (almacenMovimiento != null) { foreach (var detalle in produccion.ProduccionFormulaDetalle) { var movimiento = almacenMovimiento.ListaAlmacenMovimientoDetalle.FirstOrDefault( alm => alm.Producto.ProductoId == detalle.Producto.ProductoId && alm.AlmacenInventarioLoteId == detalle.AlmacenInventarioLoteID); if (movimiento == null) { continue; } detalle.CantidadProducto = movimiento.Cantidad; detalle.PrecioPromedio = movimiento.Precio; produccionFormulaDetalles.Add(detalle); } } if (almacenPlantaAlimento == null) { return(null); } produccion.ProduccionFormulaDetalle = produccionFormulaDetalles; produccion.Almacen = almacenPlantaAlimento; polizasProduccionAlimento = poliza.GeneraPoliza(produccion); stream = poliza.ImprimePoliza(produccion, polizasProduccionAlimento); } } } return(stream); }
/// <summary> /// Obtiene una entidad por su Id /// </summary> /// <param name="produccionFormula"></param> /// <returns></returns> public ProduccionFormulaInfo ObtenerPorFolioMovimiento(ProduccionFormulaInfo produccionFormula) { try { Logger.Info(); var produccionFormulaBL = new ProduccionFormulaBL(); ProduccionFormulaInfo result = produccionFormulaBL.ObtenerPorFolioMovimiento(produccionFormula); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <ProduccionFormulaInfo> ObtenerPorPagina(PaginacionInfo pagina, ProduccionFormulaInfo filtro) { try { Logger.Info(); var produccionFormulaBL = new ProduccionFormulaBL(); ResultadoInfo <ProduccionFormulaInfo> result = produccionFormulaBL.ObtenerPorPagina(pagina, filtro); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Guarda la produccion de una formula, ademas graba el detalle /// </summary> /// <param name="produccionFormula"></param> /// <returns></returns> public List <ProduccionFormulaInfo> ResumenProduccionFormulaLista(List <ProduccionFormulaInfo> produccionFormula) { try { Logger.Info(); var produccionFormulaBl = new ProduccionFormulaBL(); produccionFormula = produccionFormulaBl.ResumenProduccionFormulaLista(produccionFormula); } catch (ExcepcionDesconocida) { throw; } catch (Exception ex) { Logger.Error(ex); } return(produccionFormula); }
/// <summary> /// Obtiene una lista de produccion de formula /// </summary> /// <param name="organizacionID"> </param> /// <param name="fechaInicio"></param> /// <param name="fechaFinal"></param> /// <returns></returns> public List <ProduccionFormulaInfo> ObtenerProduccionFormulaConciliacion(int organizacionID, DateTime fechaInicio, DateTime fechaFinal) { try { Logger.Info(); var produccionFormulaBL = new ProduccionFormulaBL(); List <ProduccionFormulaInfo> result = produccionFormulaBL.ObtenerProduccionFormulaConciliacion(organizacionID, fechaInicio, fechaFinal); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Guarda la produccion de una formula, ademas graba el detalle /// </summary> /// <param name="produccionFormula"></param> /// <returns></returns> public ProduccionFormulaInfo GuardarProduccionFormula(ProduccionFormulaInfo produccionFormula) { ProduccionFormulaInfo retorno = null; try { Logger.Info(); var produccionFormulaBl = new ProduccionFormulaBL(); retorno = produccionFormulaBl.GuardarProduccionFormula(produccionFormula); } catch (ExcepcionDesconocida) { throw; } catch (Exception ex) { Logger.Error(ex); } return(retorno); }
/// <summary> /// Guarda la produccion de una formula, ademas graba el detalle /// </summary> /// <param name="produccionFormula"></param> /// <returns></returns> public ProduccionFormulaAutomaticaModel GuardarProduccionFormulaLista(List <ProduccionFormulaInfo> produccionFormula, DateTime fecha) { ProduccionFormulaAutomaticaModel retorno = null; try { Logger.Info(); var produccionFormulaBl = new ProduccionFormulaBL(); retorno = produccionFormulaBl.GuardarProduccionFormulaLista(produccionFormula, fecha); } catch (ExcepcionDesconocida) { throw; } catch (Exception ex) { Logger.Error(ex); } return(retorno); }