Пример #1
0
 /// <summary>
 /// Obtiene una lista de CondicionJaula
 /// </summary>
 /// <returns></returns>
 internal IEnumerable <CondicionJaulaInfo> ObtenerTodos()
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <CondicionJaulaInfo> mapeo            = MapCondicionJaulaDAL.ObtenerMapeoCondicionJaula();
         IEnumerable <CondicionJaulaInfo>        condicionesJaula = GetDatabase().ExecuteSprocAccessor
                                                                    <CondicionJaulaInfo>(
             "CondicionJaula_ObtenerTodos", mapeo.Build());
         return(condicionesJaula);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #2
0
 /// <summary>
 /// Obtiene una lista de gastos de materia prima
 /// por sus movimientos de almacen
 /// </summary>
 /// <param name="almacenesMovimiento"></param>
 /// <returns></returns>
 internal IEnumerable <GastoMateriaPrimaInfo> ObtenerGastosMateriaPrimaPorAlmacenMovimientoXML(List <AlmacenMovimientoInfo> almacenesMovimiento)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters =
             AuxGastoMateriaPrimaDAL.ObtenerParametrosPorAlmacenMovimientoXML(almacenesMovimiento);
         IMapBuilderContext <GastoMateriaPrimaInfo> mapeo           = MapGastoMateriaPrimaDAL.ObtenerPolizasConciliacion();
         IEnumerable <GastoMateriaPrimaInfo>        foliosFaltantes = GetDatabase().ExecuteSprocAccessor
                                                                      <GastoMateriaPrimaInfo>(
             "GastoMateriaPrima_ObtenerConciliacionMovimientosSIAP", mapeo.Build(),
             new[] { parameters["@XmlAlmacenMovimiento"] });
         return(foliosFaltantes);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene los movimientos de muerte
 /// </summary>
 /// <param name="fechaMuerte"></param>
 /// <returns></returns>
 internal IEnumerable <AnimalMovimientoInfo> ObtenerMovimientosMuertes(DateTime fechaMuerte)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <AnimalMovimientoInfo> mapeoAnimal =
             MapAnimalMovimientosHistoricoDAL.ObtenerMapeoAnimalHistorico();
         IEnumerable <AnimalMovimientoInfo> movimientosMuerte = GetDatabase().ExecuteSprocAccessor
                                                                <AnimalMovimientoInfo>(
             "AnimalMovimientoHistorico_ObtenerMuertesPorFecha", mapeoAnimal.Build(),
             new object[] { fechaMuerte });
         return(movimientosMuerte);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene un enumerable de almacen movimiento costo
 /// </summary>
 /// <param name="movimientosAlmacen"></param>
 /// <returns></returns>
 internal IEnumerable <AlmacenMovimientoCostoInfo> ObtenerAlmacenMovimientoCostoPorAlmacenMovimientoXML(IEnumerable <AlmacenMovimientoInfo> movimientosAlmacen)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <AlmacenMovimientoCostoInfo> mapeo =
             MapAlmacenMovimientoCostoDAL.ObtenerMapeoAlmacenMovimientoCosto();
         string parametro =
             AuxAlmacenMovimientoCostoDAL.ObtenerParametrosObtenerAlmacenMovimientoXML(movimientosAlmacen);
         IEnumerable <AlmacenMovimientoCostoInfo> corrales = GetDatabase().ExecuteSprocAccessor
                                                             <AlmacenMovimientoCostoInfo>(
             "AlmacenMovimientoCosto_ObtenerPorAlmacenMovimientoXML", mapeo.Build(),
             new object[] { parametro });
         return(corrales);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #5
0
 /// <summary>
 /// Obtiene una coleccion de gastos por inventario
 /// </summary>
 /// <param name="organizacionID"></param>
 /// <param name="fechaInicial"></param>
 /// <param name="fechaFinal"></param>
 /// <returns></returns>
 internal IEnumerable <GastoInventarioInfo> ObtenerGastosInventarioPorFechaConciliacion(int organizacionID, DateTime fechaInicial, DateTime fechaFinal)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <GastoInventarioInfo> mapeo           = MapGastoInventarioDAL.ObtenerGastosInventarioConciliacion();
         IEnumerable <GastoInventarioInfo>        foliosFaltantes = GetDatabase().ExecuteSprocAccessor
                                                                    <GastoInventarioInfo>(
             "GastoInventario_ObtenerPorFechaConciliacion", mapeo.Build(),
             new object[] { organizacionID, fechaInicial, fechaFinal });
         return(foliosFaltantes);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #6
0
 /// <summary>
 /// Obtiene los movimientos de los subproductos de premezcla
 /// </summary>
 /// <param name="productosPremezcla"></param>
 /// <returns></returns>
 internal IEnumerable <AlmacenMovimientoSubProductosModel> ObtenerMovimientosSubProductos(IEnumerable <AlmacenMovimientoSubProductosModel> productosPremezcla)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <AlmacenMovimientoSubProductosModel> mapeo =
             MapAlmacenMovimientoDAL.ObtenerMapeoAlmacenMovimientoSubProductos();
         string parameters = AuxAlmacenMovimientoDAL.ObtenerParametrosMovimientosSubProductos(productosPremezcla);
         IEnumerable <AlmacenMovimientoSubProductosModel> movimientosSubProductos = GetDatabase().ExecuteSprocAccessor
                                                                                    <AlmacenMovimientoSubProductosModel>(
             "AlmacenMoviento_ObtenerSubProductos", mapeo.Build(),
             new object[] { parameters });
         return(movimientosSubProductos);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #7
0
 /// <summary>
 /// Método que obtiene el listado de pólizas de la organización en el rango de fechas indicado.
 /// </summary>
 /// <param name="conciliacionParametros"></param>
 internal List <PolizaInfo> ObtenerPolizasConciliacionSapSiap(ConciliaciionParametros conciliacionParametros)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <PolizaInfo> mapeo = MapPolizaDAL.ObtenerPolizasConciliacionSapSiap();
         var xmlDivisiones   = AuxPolizaDAL.ObtenerParametrosObtenerPolizasConciliacionSapSiap(conciliacionParametros.diviciones);
         var foliosFaltantes = GetDatabase().ExecuteSprocAccessor(
             "Poliza_ObtenerConciliacionSapSiapPorFechas", mapeo.Build(),
             new object[] { conciliacionParametros.Organizacion.OrganizacionID, conciliacionParametros.fechaInicio, conciliacionParametros.fechaFin, xmlDivisiones, conciliacionParametros.Prefijo }).ToList();
         return(foliosFaltantes);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #8
0
 /// <summary>
 /// Obtiene los movimientos para su conciliacion
 /// </summary>
 /// <param name="organizacionID"></param>
 /// <param name="fechaInicio"></param>
 /// <param name="fechaFin"></param>
 /// <param name="claseDocumento"> </param>
 /// <returns></returns>
 internal IEnumerable <PolizaInfo> ObtenerPolizasConciliacion(int organizacionID, DateTime fechaInicio, DateTime fechaFin
                                                              , string claseDocumento)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <PolizaInfo> mapeo           = MapPolizaDAL.ObtenerPolizasConciliacion();
         IEnumerable <PolizaInfo>        foliosFaltantes = GetDatabase().ExecuteSprocAccessor(
             "Poliza_ObtenerConciliacionPorFechas", mapeo.Build(),
             new object[] { organizacionID, fechaInicio, fechaFin, claseDocumento });
         return(foliosFaltantes);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #9
0
        /// <summary>
        /// Tạo mapper
        /// </summary>
        /// <typeparam name="T">Kiểu đối tượng</typeparam>
        /// <param name="reader">Đối tượng IDataReader</param>
        /// <param name="sqlName">Tên đầy đủ của câu sql. VD: Sql.BT0000.GetAll</param>
        /// <returns></returns>
        private static IRowMapper <T> GetRowMapper <T>(IDataReader reader, string sqlName = "") where T : new()
        {
            IRowMapper <T> result = null;

            Type type     = typeof(T);
            bool cache    = !string.IsNullOrEmpty(sqlName);
            int  hashCode = (type.FullName + sqlName).GetHashCode();

            // Kiểm tra mapper đã được cache hay chưa
            if (cache && RowMappers.ContainsKey(hashCode))
            {
                result = (IRowMapper <T>)RowMappers[hashCode];
            }
            // Nếu không được cache thì tạo mới
            else
            {
                IMapBuilderContext <T> context = MapBuilder <T> .MapNoProperties();

                PropertyInfo property     = null;
                string       propertyName = string.Empty;
                for (int i = reader.FieldCount - 1; i >= 0; i--)
                {
                    propertyName = reader.GetName(i);
                    property     = type.GetProperty(propertyName);
                    // Trường hợp không lấy đc property thì lấy theo column name
                    if (property == null)
                    {
                        // Lấy dữ liệu property theo column của Object
                        property = type.GetProperties().FirstOrDefault(prop =>
                                                                       prop.GetCustomAttributes(false)
                                                                       .OfType <ColumnAttribute>()
                                                                       .Any(attribute => attribute.Name == propertyName));
                    }

                    // Chỉ map những field vừa có trong câu sql vừa có trong đối tượng
                    if (property != null && property.CanRead && property.CanWrite)
                    {
                        context.MapByName(property);
                    }
                }

                result = context.Build();

                // Nếu có yêu cầu cache thì lưu vào cache
                if (reader.FieldCount > 0 && cache)
                {
                    RowMappers.Add(hashCode, result);
                }
            }

            return(result);
        }
Пример #10
0
 /// <summary>
 /// Obtiene una lista con
 /// los sacrificios generados
 /// </summary>
 /// <param name="organizacionID"></param>
 /// <param name="fechaInicial"></param>
 /// <param name="fechaFinal"></param>
 /// <returns></returns>
 internal IEnumerable <PolizaSacrificioModel> ObtenerPolizasSacrificioConciliacion(int organizacionID, DateTime fechaInicial, DateTime fechaFinal)
 {
     try
     {
         IMapBuilderContext <PolizaSacrificioModel> mapeo = MapLoteSacrificioDAL.ObtenerMapeoPolizasSacrificioConciliacion();
         IEnumerable <PolizaSacrificioModel>        almacenMovimientoCostoPorAlmacenMovimiento = GetDatabase().
                                                                                                 ExecuteSprocAccessor
                                                                                                 <PolizaSacrificioModel>(
             "SalidaSacrificio_ObtenerPolizaConciliacion", mapeo.Build(),
             new object[] { organizacionID, fechaInicial, fechaFinal });
         return(almacenMovimientoCostoPorAlmacenMovimiento);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #11
0
 /// <summary>
 /// Obtiene una lista con las entradas de producto
 /// </summary>
 /// <param name="movimientosEntrada"></param>
 /// <returns></returns>
 internal IEnumerable <EntradaProductoInfo> ObtenerEntradasPorAlmacenMovimientoXML(List <AlmacenMovimientoInfo> movimientosEntrada)
 {
     try
     {
         Dictionary <string, object> parametros =
             AuxEntradaProductoDAL.ObtenerParametrosEntradasPorAlmacenMovimientoXML(movimientosEntrada);
         IMapBuilderContext <EntradaProductoInfo> mapeo = MapEntradaProductoDAL.ObtenerMapeoEntradaProducto();
         IEnumerable <EntradaProductoInfo>        listaEntradaProductos = GetDatabase().ExecuteSprocAccessor
                                                                          <EntradaProductoInfo>(
             "EntradaProducto_ObtenerConciliacionAlmacenMovimientoXML", mapeo.Build(),
             new [] { parametros["@AlmacenMovimientoXML"] });
         return(listaEntradaProductos);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #12
0
 /// <summary>
 /// Obtiene los datos para cancelar
 /// las polizas de sacrificio por fecha
 /// </summary>
 /// <param name="fecha"></param>
 /// <returns></returns>
 internal IEnumerable <PolizaSacrificioModel> ObtenerDatosPolizaSacrificioCanceladas(DateTime fecha)
 {
     try
     {
         IMapBuilderContext <PolizaSacrificioModel> mapeo =
             MapLoteSacrificioDAL.ObtenerMapeoPolizasSacrificioServicio();
         IEnumerable <PolizaSacrificioModel> datosPolizasSacrificio = GetDatabase().
                                                                      ExecuteSprocAccessor
                                                                      <PolizaSacrificioModel>(
             "LoteSacrificio_ObtenerDatosPorFechaCancelacion", mapeo.Build(),
             new object[] { fecha });
         return(datosPolizasSacrificio);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #13
0
 /// <summary>
 /// Obtiene una lista con los animales muertos a conciliar
 /// </summary>
 /// <param name="organizacionID"> </param>
 /// <param name="fechaInicial"></param>
 /// <param name="fechaFinal"></param>
 /// <returns></returns>
 internal IEnumerable <AnimalMovimientoInfo> ObtenerAnimalesMuertos(int organizacionID, DateTime fechaInicial, DateTime fechaFinal)
 {
     try
     {
         IMapBuilderContext <AnimalMovimientoInfo> mapeo =
             MapAnimalMovimientosDAL.ObtenerAnimalMovimientoMuertos();
         IEnumerable <AnimalMovimientoInfo> almacenAnimalMovimientosMuertes = GetDatabase().
                                                                              ExecuteSprocAccessor
                                                                              <AnimalMovimientoInfo>(
             "MuerteGanado_ObtenerMuertesPolizaConciliacion", mapeo.Build(),
             new object[] { organizacionID, fechaInicial, fechaFinal });
         return(almacenAnimalMovimientosMuertes);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene una lista de movimientos costos por almacen movimiento
 /// </summary>
 /// <returns></returns>
 internal IEnumerable <AlmacenMovimientoCostoInfo> ObtenerAlmacenMovimientoCostoPorContratoXML(List <ContratoInfo> contratosParciales)
 {
     try
     {
         string parametro = AuxAlmacenMovimientoCostoDAL.ObtenerParametrosAlmacenMovimientoCostoPorContratoXML(contratosParciales);
         IMapBuilderContext <AlmacenMovimientoCostoInfo> mapeo = MapAlmacenMovimientoCostoDAL.ObtenerAlmacenMovimientoCostoPorContratoXML();
         IEnumerable <AlmacenMovimientoCostoInfo>        almacenMovimientoCostoPorAlmacenMovimiento = GetDatabase().
                                                                                                      ExecuteSprocAccessor
                                                                                                      <AlmacenMovimientoCostoInfo>(
             "AlmacenMovimientoCosto_ObtenerPorContratoXML", mapeo.Build(),
             new object[] { parametro });
         return(almacenMovimientoCostoPorAlmacenMovimiento);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #15
0
 /// <summary>
 /// Ejecuta procedimiento almacenado con sus parametros
 /// </summary>
 /// <param name="procedimientoAlmacenado"></param>
 /// <param name="parametros"></param>
 /// <returns></returns>
 private IEnumerable <CondicionJaulaInfo> ObtenerCondicionesJaula(string procedimientoAlmacenado, object[] parametros)
 {
     try
     {
         Logger.Info();
         IMapBuilderContext <CondicionJaulaInfo> mapeo            = MapCondicionJaulaDAL.ObtenerMapeoCondicionJaula();
         IEnumerable <CondicionJaulaInfo>        condicionesJaula = GetDatabase().ExecuteSprocAccessor
                                                                    <CondicionJaulaInfo>(procedimientoAlmacenado, mapeo.Build(), parametros);
         return(condicionesJaula);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }