Пример #1
0
        public void SaveLogEventoDescartado(Sensor sensor, Dispositivo dispositivo, MensajeVO mensaje, GPSPoint inicio, GPSPoint fin, DiscardReason discardReason, DateTime dt)
        {
            var log = new LogMensajeDescartado
            {
                Dispositivo    = dispositivo,
                Fecha          = inicio != null ? inicio.Date : dt,
                Expiracion     = DateTime.UtcNow.AddDays(1),
                Latitud        = inicio != null ? inicio.Lat : 0,
                Longitud       = inicio != null ? inicio.Lon : 0,
                FechaFin       = fin != null ? fin.Date : (DateTime?)null,
                LatitudFin     = fin != null ? new Double?(fin.Lat) : null,
                LongitudFin    = fin != null ? new Double?(fin.Lon) : null,
                Mensaje        = mensaje != null?DaoFactory.MensajeDAO.FindById(mensaje.Id) : null,
                MotivoDescarte = discardReason.GetNumericCode()
            };

            if (DaoFactory.Session.Transaction != null && DaoFactory.Session.Transaction.IsActive)
            {
                DaoFactory.LogMensajeDescartadoDAO.SaveWithoutTransaction(log);
            }
            else
            {
                DaoFactory.LogMensajeDescartadoDAO.Save(log);
            }
        }