示例#1
0
        public long?GetExpiredSpan(MessageMachineModel mm)
        {
            if (mm.IsPeriodicMsg == true)
            {
                //caso dei messaggi arrivati da json, non hanno span, vanno visualizzati subito
                if (mm.PeriodicSpan == null && mm.IgnoreDate == null)
                {
                    return(DateTime.UtcNow.Subtract(mm.Day.Value).Ticks);
                }

                var span     = mm.PeriodicSpan ?? 0;
                var initTime = _context.Set <Machine>().Find(mm.MachineId).ActivationDate?.AddHours(span);
                if (mm.IgnoreDate != null)
                {
                    var initInterval = _context.Set <MessageMachine>().Find(mm.Id).GetInitialSpanDate(span);
                    if (mm.IgnoreDate < initInterval)
                    {
                        initTime = initInterval;
                    }
                    else
                    {
                        return(null);
                    }
                }

                return(DateTime.UtcNow.Subtract(initTime.Value).Ticks);
            }

            return(null);
        }
示例#2
0
        private string GetIcon(MessageMachineModel m)
        {
            if (m.Type == 14 && m.PeriodicSpan != null && m.IsPeriodicMsg == true)
            {
                return("periodica");
            }
            else if (m.Type != 14 && m.PeriodicSpan == null && m.IsPeriodicMsg == true)
            {
                return("ordinaria");
            }
            else if (m.Type == 14 && m.PeriodicSpan == null && m.IsPeriodicMsg == true)
            {
                return("predittiva");
            }

            return("");
        }