/// <summary> /// Obtiene una coleccion de recepcion producto /// </summary> /// <param name="almacenesMovimiento"></param> /// <returns></returns> internal List <RecepcionProductoInfo> ObtenerRecepcionProductoConciliacionPorAlmacenMovimiento(List <AlmacenMovimientoInfo> almacenesMovimiento) { List <RecepcionProductoInfo> resultado; try { Logger.Info(); var recepcionProductoDAL = new RecepcionProductoDAL(); resultado = recepcionProductoDAL.ObtenerRecepcionProductoConciliacionPorAlmacenMovimiento(almacenesMovimiento); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(resultado); }
internal RecepcionProductoInfo ObtenerRecepcionPorFolio(RecepcionProductoInfo recepcionProductoCompra) { RecepcionProductoInfo info; try { Logger.Info(); var recepcionProductoDAL = new RecepcionProductoDAL(); info = recepcionProductoDAL.ObtenerRecepcionPorFolio(recepcionProductoCompra); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(info); }
/// <summary> /// /// </summary> /// <param name="recepcionProductoCompra"></param> /// <param name="organizacionId"></param> /// <param name="conexion"></param> /// <returns></returns> internal RecepcionProductoInfo ObtenerRecepcionVista(RecepcionProductoInfo recepcionProductoCompra, int organizacionId, string conexion) { RecepcionProductoInfo info; try { Logger.Info(); var recepcionProductoDAL = new RecepcionProductoDAL(conexion); info = recepcionProductoDAL.ObtenerRecepcionVista(recepcionProductoCompra, organizacionId); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(info); }
/// <summary> /// Guarda una recepcion de producto /// </summary> /// <param name="recepcionProducto"></param> /// <returns></returns> internal MemoryStream Guardar(RecepcionProductoInfo recepcionProducto) { try { MemoryStream pdf = null; PolizaAbstract poliza = null; IList <PolizaInfo> polizas = null; int organizacionID = 0; var recepcionProductoDal = new RecepcionProductoDAL(); using (var transaction = new TransactionScope()) { int usuarioID = 0; if (GuardarInventario(recepcionProducto)) { long almacenMovimiento = GuardarMovimientos(recepcionProducto); recepcionProducto.AlmacenMovimientoId = almacenMovimiento; var recepcionGuardada = recepcionProductoDal.Guardar(recepcionProducto); if (recepcionGuardada != null) { foreach (var recepcionProductoDetalleInfo in recepcionProducto.ListaRecepcionProductoDetalle ) { recepcionProductoDetalleInfo.RecepcionProductoId = recepcionGuardada.RecepcionProductoId; recepcionProductoDetalleInfo.UsuarioCreacion = new UsuarioInfo() { UsuarioID = recepcionProducto. UsuarioCreacion.UsuarioID }; usuarioID = recepcionProducto.UsuarioCreacion.UsuarioID; organizacionID = recepcionProducto.Proveedor.OrganizacionID; recepcionProductoDetalleInfo.Activo = EstatusEnum.Activo; } var recepcionProductoDetalleBl = new RecepcionProductoDetalleBL(); recepcionProductoDetalleBl.Guardar(recepcionProducto.ListaRecepcionProductoDetalle); #region POLIZA poliza = FabricaPoliza.ObtenerInstancia().ObtenerTipoPoliza(TipoPoliza.EntradaCompraMateriaPrima); recepcionProducto.FolioRecepcion = recepcionGuardada.FolioRecepcion; recepcionProducto.FechaRecepcion = recepcionGuardada.FechaRecepcion; polizas = poliza.GeneraPoliza(recepcionProducto); if (polizas != null) { if (organizacionID == 0) { organizacionID = recepcionProducto.Almacen.Organizacion.OrganizacionID; } var polizaBL = new PolizaBL(); polizas.ToList().ForEach(datos => { datos.OrganizacionID = organizacionID; datos.UsuarioCreacionID = usuarioID; datos.ArchivoEnviadoServidor = 1; }); polizaBL.GuardarServicioPI(polizas, TipoPoliza.EntradaCompraMateriaPrima); pdf = poliza.ImprimePoliza(recepcionProducto, polizas); } #endregion POLIZA transaction.Complete(); } } } return(pdf); } catch (ExcepcionServicio ex) { Logger.Error(ex); throw; } catch (Exception ex) { Logger.Error(ex); throw; } }