Ejemplo n.º 1
0
 /// <summary>
 /// Obtiene los datos para la impresion del
 /// Check List de Rolado
 /// </summary>
 /// <param name="fechaInicial"></param>
 /// <param name="turno"> </param>
 /// <param name="organizacionID"></param>
 /// <returns></returns>
 internal ImpresionCheckListRoladoModel ObtenerDatosImpresionCheckListRoladora(DateTime fechaInicial, int turno, int organizacionID)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters =
             AuxCheckListRoladoraDAL.ObtenerParametrosDatosImpresionCheckListRoladora(fechaInicial, turno,
                                                                                      organizacionID);
         DataSet ds = Retrieve("CheckListRolado_ObtenerDatosImpresion", parameters);
         ImpresionCheckListRoladoModel result = null;
         if (ValidateDataSet(ds))
         {
             result = MapCheckListRoladoraDAL.ObtenerDatosImpresionCheckListRoladora(ds);
         }
         return(result);
     }
     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);
     }
 }
Ejemplo n.º 2
0
        private List <ImpresionCheckListRoladoModel> ObtenerDatosAgrupados(ImpresionCheckListRoladoModel impresionCheckListRoladoModel)
        {
            IList <int> horasCheckList =
                impresionCheckListRoladoModel.Detalles.Select(hora => hora.CheckListRoladora.FechaCheckList.Hour).
                Distinct().OrderBy(hora => hora).ToList();
            var resultado = new List <ImpresionCheckListRoladoModel>();

            for (var indexHoras = 0; indexHoras < horasCheckList.Count; indexHoras++)
            {
                var detalles =
                    impresionCheckListRoladoModel.Detalles.Where(
                        hora => hora.CheckListRoladora.FechaCheckList.Hour == horasCheckList[indexHoras]).ToList();
                var res = new ImpresionCheckListRoladoModel
                {
                    Hora = horasCheckList[indexHoras],
                    CheckListRoladoraGeneral = impresionCheckListRoladoModel.CheckListRoladoraGeneral,
                    Horometros = impresionCheckListRoladoModel.Horometros,
                    Detalles   = detalles
                };
                resultado.Add(res);
            }
            return(resultado);
        }
Ejemplo n.º 3
0
        private void CalcularTiempoOperacionRoladora(ImpresionCheckListRoladoModel impresionCheckListRoladoModel)
        {
            List <CheckListRoladoraHorometroInfo> horometros = impresionCheckListRoladoModel.Horometros;

            if (horometros != null && horometros.Any())
            {
                TimeSpan tiempoInicial;
                TimeSpan tiempoFinal;
                horometros.ForEach(datos =>
                {
                    tiempoInicial = new TimeSpan();
                    tiempoFinal   = new TimeSpan();
                    if (!string.IsNullOrWhiteSpace(datos.HorometroInicial))
                    {
                        int horaInicial   = Convert.ToInt32(datos.HorometroInicial.Split(':')[0]);
                        int minutoInicial = Convert.ToInt32(datos.HorometroInicial.Split(':')[1]);

                        tiempoInicial = new TimeSpan(horaInicial, minutoInicial, 0);
                    }
                    if (!string.IsNullOrWhiteSpace(datos.HorometroFinal))
                    {
                        int horaFinal   = Convert.ToInt32(datos.HorometroFinal.Split(':')[0]);
                        int minutoFinal = Convert.ToInt32(datos.HorometroFinal.Split(':')[1]);

                        tiempoFinal = new TimeSpan(horaFinal, minutoFinal, 0);
                    }
                    datos.HorasOperacion = string.Format("{0}:{1}",
                                                         (tiempoFinal - tiempoInicial).Hours,
                                                         (tiempoFinal - tiempoInicial).Minutes);
                    if (datos.HorasOperacion.Contains("-"))
                    {
                        datos.HorasOperacion = string.Empty;
                    }
                });
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Obtiene los datos para la impresion del
        /// Check List de Rolado
        /// </summary>
        /// <param name="fechaInicial"></param>
        /// <param name="turno"> </param>
        /// <param name="organizacionID"></param>
        /// <returns></returns>
        public List <ImpresionCheckListRoladoModel> ObtenerDatosImpresionCheckListRoladora(DateTime fechaInicial, int turno, int organizacionID)
        {
            List <ImpresionCheckListRoladoModel> datosCheckListRoladora = null;

            try
            {
                Logger.Info();
                var checkListRoladoraDAL = new Integracion.DAL.Implementacion.CheckListRoladoraDAL();
                ImpresionCheckListRoladoModel impresionCheckListRoladoModel = checkListRoladoraDAL.ObtenerDatosImpresionCheckListRoladora(
                    fechaInicial, turno, organizacionID);
                if (impresionCheckListRoladoModel != null)
                {
                    var almacenMovimientoDetalleBL = new AlmacenMovimientoDetalleBL();
                    int año = impresionCheckListRoladoModel.CheckListRoladoraGeneral.FechaInicio.Year;
                    int mes = impresionCheckListRoladoModel.CheckListRoladoraGeneral.FechaInicio.Month;
                    int dia = impresionCheckListRoladoModel.CheckListRoladoraGeneral.FechaInicio.Day;
                    CheckListRoladoraHorometroInfo horaInicial =
                        impresionCheckListRoladoModel.Horometros.OrderBy(id => id.HorometroInicial)
                        .First();
                    int hora   = Convert.ToInt32(horaInicial.HorometroInicial.Split(':')[0]);
                    int minuto = Convert.ToInt32(horaInicial.HorometroInicial.Split(':')[1]);
                    var fechaMovimientoInicial = new DateTime(año, mes - 1, dia - 6, hora, minuto, 0);
                    CheckListRoladoraHorometroInfo horaFinal =
                        impresionCheckListRoladoModel.Horometros.OrderBy(id => id.HorometroInicial)
                        .Last();
                    hora   = Convert.ToInt32(horaFinal.HorometroInicial.Split(':')[0]);
                    minuto = Convert.ToInt32(horaFinal.HorometroInicial.Split(':')[1]);
                    var fechaMovimientoFinal = new DateTime(año, mes, dia, hora, minuto, 0);
                    List <AlmacenMovimientoDetalle> movimientosAlmacen =
                        almacenMovimientoDetalleBL.ObtenerAlmacenMovimientoDetalleEntregadosPlanta(
                            fechaMovimientoInicial, fechaMovimientoFinal, organizacionID);
                    var parametrosCheckListRoladoModel = new ParametrosCheckListRoladoModel();
                    if (movimientosAlmacen != null)
                    {
                        decimal totalGrano = movimientosAlmacen.Sum(cant => cant.Cantidad);
                        parametrosCheckListRoladoModel.TotalGranoEntreroPP = totalGrano;
                    }
                    parametrosCheckListRoladoModel.TotalGranoEnteroBodega =
                        impresionCheckListRoladoModel.CheckListRoladoraGeneral.GranoEnteroFinal.Value;
                    parametrosCheckListRoladoModel.SurfactanteInicio =
                        impresionCheckListRoladoModel.CheckListRoladoraGeneral.SurfactanteInicio.Value;
                    parametrosCheckListRoladoModel.SurfactanteFinal =
                        impresionCheckListRoladoModel.CheckListRoladoraGeneral.SurfactanteFin.Value;
                    parametrosCheckListRoladoModel.HumedadGranoEnteroBodega        = 0;
                    parametrosCheckListRoladoModel.HumedadGranoRoladoBodega        = 0;
                    parametrosCheckListRoladoModel.SuperavitAdicionAguaSurfactante =
                        parametrosCheckListRoladoModel.HumedadGranoRoladoBodega -
                        parametrosCheckListRoladoModel.HumedadGranoEnteroBodega;
                    parametrosCheckListRoladoModel.ContadorAguaInicial =
                        impresionCheckListRoladoModel.CheckListRoladoraGeneral.ContadorAguaInicio.Value;
                    parametrosCheckListRoladoModel.ContadorAguaFinal =
                        impresionCheckListRoladoModel.CheckListRoladoraGeneral.ContadorAguaFin.Value;
                    parametrosCheckListRoladoModel.ConsumoAguaLitro = parametrosCheckListRoladoModel.ContadorAguaFinal -
                                                                      parametrosCheckListRoladoModel.ContadorAguaInicial;
                    parametrosCheckListRoladoModel.TotalGranoProcesado =
                        parametrosCheckListRoladoModel.TotalGranoEnteroBodega -
                        parametrosCheckListRoladoModel.TotalGranoEntreroPP;
                    parametrosCheckListRoladoModel.SuperavitGranoRolado =
                        parametrosCheckListRoladoModel.SuperavitAdicionAguaSurfactante *
                        parametrosCheckListRoladoModel.TotalGranoProcesado;
                    parametrosCheckListRoladoModel.TotalGranoRolado =
                        parametrosCheckListRoladoModel.TotalGranoProcesado +
                        parametrosCheckListRoladoModel.SuperavitGranoRolado;
                    parametrosCheckListRoladoModel.DieseToneladaGranoRolado =
                        parametrosCheckListRoladoModel.ConsumoDieselCalderas /
                        parametrosCheckListRoladoModel.TotalGranoRolado;

                    impresionCheckListRoladoModel.CheckListRoladoraGeneral.ParametrosCheckListRolado =
                        parametrosCheckListRoladoModel;
                    CalcularTiempoOperacionRoladora(impresionCheckListRoladoModel);
                    datosCheckListRoladora = ObtenerDatosAgrupados(impresionCheckListRoladoModel);
                }
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(datosCheckListRoladora);
        }
Ejemplo n.º 5
0
 /// <summary>
 /// Obtiene un elemeto para la impresion del
 /// check list de rolado
 /// </summary>
 /// <param name="ds"></param>
 /// <returns></returns>
 internal static ImpresionCheckListRoladoModel ObtenerDatosImpresionCheckListRoladora(DataSet ds)
 {
     try
     {
         Logger.Info();
         DataTable dt = ds.Tables[ConstantesDAL.DtDatos];
         ImpresionCheckListRoladoModel impresionCheckListRoladoModel =
             (from info in dt.AsEnumerable()
              select
              new ImpresionCheckListRoladoModel
         {
             CheckListRoladoraGeneral = new CheckListRoladoraGeneralInfo
             {
                 Turno = info.Field <int>("Turno"),
                 FechaInicio = info.Field <DateTime>("FechaInicio"),
                 Observaciones = info.Field <string>("Observaciones"),
                 SurfactanteInicio =
                     info.Field <decimal?>("SurfactanteInicio") ?? 0,
                 SurfactanteFin =
                     info.Field <decimal?>("SurfactanteFin") ?? 0,
                 ContadorAguaInicio =
                     info.Field <decimal?>("ContadorAguaInicio") ?? 0,
                 ContadorAguaFin =
                     info.Field <decimal?>("ContadorAguaFin") ?? 0,
                 GranoEnteroFinal =
                     info.Field <decimal?>("GranoEnteroFinal") ?? 0,
                 CheckListRoladoraGeneralID =
                     info.Field <int>("CheckListRoladoraGeneralID"),
                 NombreUsuario = info.Field <string>("NombreUsuario")
             }
         }).FirstOrDefault();
         if (impresionCheckListRoladoModel != null)
         {
             dt = ds.Tables[ConstantesDAL.DtDetalle];
             impresionCheckListRoladoModel.Horometros = (from horo in dt.AsEnumerable()
                                                         select new CheckListRoladoraHorometroInfo
             {
                 CheckListRoladoraHorometroID = horo.Field <int>("CheckListRoladoraHorometroID"),
                 Roladora = new RoladoraInfo
                 {
                     RoladoraID = horo.Field <int>("RoladoraID"),
                     Descripcion = horo.Field <string>("Descripcion")
                 },
                 HorometroInicial = horo.Field <string>("HorometroInicial"),
                 HorometroFinal = horo.Field <string>("HorometroFinal"),
                 CheckListRoladoraGeneralID = horo.Field <int>("CheckListRoladoraGeneralID")
             }).ToList();
             dt = ds.Tables[ConstantesDAL.DtTotales];
             impresionCheckListRoladoModel.Detalles = (from det in dt.AsEnumerable()
                                                       select new CheckListRoladoraDetalleInfo
             {
                 CheckListRoladoraAccion = new CheckListRoladoraAccionInfo
                 {
                     CheckListRoladoraAccionID = det.Field <int?>("CheckListRoladoraAccionID") ?? 0,
                     Descripcion = det.Field <string>("Accion")
                 },
                 CheckListRoladoraRango = new CheckListRoladoraRangoInfo
                 {
                     CheckListRoladoraRangoID = det.Field <int>("CheckListRoladoraRangoID"),
                     Descripcion = det.Field <string>("Rango"),
                     CodigoColor = det.Field <string>("CodigoColor"),
                     Pregunta = new PreguntaInfo
                     {
                         TipoPregunta = new TipoPreguntaInfo
                         {
                             TipoPreguntaID = det.Field <int>("TipoPreguntaID"),
                             Descripcion = det.Field <string>("TipoPregunta")
                         }
                     }
                 },
                 CheckListRoladora = new CheckListRoladoraInfo
                 {
                     FechaCheckList = det.Field <DateTime>("FechaCheckList"),
                     RoladoraID = det.Field <int>("RoladoraID"),
                     Roladora = new RoladoraInfo
                     {
                         RoladoraID = det.Field <int>("RoladoraID"),
                         Descripcion = det.Field <string>("Roladora")
                     }
                 }
             }).ToList();
         }
         return(impresionCheckListRoladoModel);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }