private void SeedBanners(DigitalSignageContext pContext)
        {
            IList <Schedule> lDateIntervalList = pContext.DateIntervals.ToList();
            Banner           lBanner1          = new Banner()
            {
                Name        = "Noticias de deporte",
                Description = "Noticias de la actualidad deportiva, provenientes de distintas fuentes. Tambien contiene otros textos útiles",
                //falta contenido, pero eso falta tratar los rss
            };

            var query = from interval in lDateIntervalList
                        where interval.ActiveDays.Count() == 5
                        select interval;

            foreach (var interval in query)
            {
                lBanner1.AddSchedule(DomainServiceLocator.Resolve <IScheduleChecker>(), interval);
            }
            ;

            lBanner1.AddBannerItem(pContext.Texts.ToList()[3]);
            lBanner1.AddBannerItem(pContext.Texts.ToList()[4]);
            //IList<RssSource> lista = pContext.RssSources.ToList();
            lBanner1.AddSource(pContext.RssSources.ToList()[0]);
            lBanner1.AddSource(pContext.RssSources.ToList()[2]);
            pContext.Banners.Add(lBanner1);
        }
示例#2
0
        public void ActiveForDate_IsActive()
        {
            Banner lBanner = new Banner()
            {
                Name = "Informacion deportiva", Description = "Noticias del ámbito deportivo nacional de distintas fuentes"
            };

            Schedule lInterval = new Schedule()
            {
                Name = "Mes de febrero, de lunes a viernes por la mañana", ActiveUntil = new DateTime(2016, 2, 29), ActiveFrom = new DateTime(2016, 2, 1)
            };

            Day lDay1 = new Day()
            {
                Id = 1, Value = Days.Lunes
            };
            Day lDay2 = new Day()
            {
                Id = 2, Value = Days.Martes
            };
            Day lDay3 = new Day()
            {
                Id = 3, Value = Days.Miercoles
            };
            Day lDay4 = new Day()
            {
                Id = 4, Value = Days.Jueves
            };
            Day lDay5 = new Day()
            {
                Id = 5, Value = Days.Viernes
            };

            lInterval.AddDay(lDay1);
            lInterval.AddDay(lDay2);
            lInterval.AddDay(lDay3);
            lInterval.AddDay(lDay4);
            lInterval.AddDay(lDay5);

            TimeSpan time1 = new TimeSpan(8, 0, 0);
            TimeSpan time2 = new TimeSpan(12, 0, 0);

            ScheduleEntry lTimeInterval = new ScheduleEntry()
            {
                End = time2, Start = time1
            };

            lInterval.AddTimeInterval(lTimeInterval);

            lBanner.AddSchedule(DomainServiceLocator.Resolve <IScheduleChecker>(), lInterval);

            DateTime lDate = new DateTime(2016, 2, 4, 20, 0, 0);

            bool lResult = lBanner.IsActiveAt(DomainServiceLocator.Resolve <IScheduleChecker>(), lDate);

            Assert.IsFalse(lResult);
        }
示例#3
0
        public void ActiveForDate_IsActive()
        {
            Campaign lCampaign = new Campaign()
            {
                Name = "Venta de cactus", Description = "Publicidad para la venta de cactus para el vivero XX"
            };

            Schedule lInterval = new Schedule()
            {
                Name = "Miércoles y Jueves de la primera quincena de febrero", ActiveUntil = new DateTime(2016, 2, 15), ActiveFrom = new DateTime(2016, 2, 1)
            };

            Day lDay1 = new Day()
            {
                Id = 4, Value = Days.Miercoles
            };
            Day lDay2 = new Day()
            {
                Id = 5, Value = Days.Jueves
            };

            lInterval.AddDay(lDay1);
            lInterval.AddDay(lDay2);

            TimeSpan time1 = new TimeSpan(18, 0, 0);
            TimeSpan time2 = new TimeSpan(21, 0, 0);

            ScheduleEntry lTimeInterval = new ScheduleEntry()
            {
                End = time2, Start = time1
            };

            lInterval.AddTimeInterval(lTimeInterval);

            lCampaign.AddSchedule(DomainServiceLocator.Resolve <IScheduleChecker>(), lInterval);

            DateTime lDate = new DateTime(2016, 2, 3, 19, 0, 0);

            bool lResult = lCampaign.IsActiveAt(DomainServiceLocator.Resolve <IScheduleChecker>(), lDate);

            //  Assert.IsTrue(lResult);



            /*    var serv1 = DomainServiceLocator.Resolve<IScheduleChecker>();
             *  var serv2 = DomainServiceLocator.Resolve<IScheduleChecker>();
             *  var serv3 = BusinessServiceLocator.Resolve<>();
             *  var serv4 = BusinessServiceLocator.Resolve<DateIntervalService>();
             *
             *
             *
             *  Assert.AreSame(serv1, serv2);
             *  Assert.AreNotSame(serv3, serv4);*/
        }
            public Banner Convert(AdminBannerDTO source, Banner destination, ResolutionContext context)
            {
                if (source == null)
                {
                    return(null);
                }

                destination = destination ?? new Banner();

                try
                {
                    destination.Id           = source.Id;
                    destination.LastModified = DateTimeResolver.Resolve(source.ModificationDate);
                    destination.CreationDate = DateTimeResolver.Resolve(source.CreationDate);
                    destination.Name         = source.Name;
                    destination.Description  = source.Description;

                    var lScheduleChecker = DomainServiceLocator.Resolve <IScheduleChecker>();

                    foreach (var item in source.ActiveIntervals)
                    {
                        destination.AddSchedule(lScheduleChecker, Mapper.Map <Schedule>(item));
                    }

                    foreach (var item in source.Texts)
                    {
                        destination.AddBannerItem(Mapper.Map <StaticText>(item));
                    }

                    foreach (var item in source.RssSources)
                    {
                        destination.AddSource(Mapper.Map <RssSource>(item));
                    }

                    return(destination);
                }
                catch (EntidadNulaException ex)
                {
                    //TODO como lo muestro acá
                    return(null);
                }
                catch (IntervaloFechaInvalidoException ex)
                {
                    //TODO como lo muestro acá
                    return(null);
                }
            }
        private void SeedCampaigns(DigitalSignageContext pContext)
        {
            IList <Schedule> lDateIntervalList = pContext.DateIntervals.ToList();

            Campaign lCampaign1 = new Campaign()
            {
                Name        = "Publicidad Samsung S7 (ver 47283289)",
                Description = "Una mas de las muchas campa;as de lagsung"
            };

            var query = from interval in lDateIntervalList
                        where interval.ActiveDays.Count() >= 4
                        select interval;

            foreach (var interval in query)
            {
                lCampaign1.AddSchedule(DomainServiceLocator.Resolve <IScheduleChecker>(), interval);
            }
            ;


            Campaign lCampaign2 = new Campaign()
            {
                Name        = "Publicidad Apple iPhone 5se",
                Description = "Primera publicidad de Apple en Argentina,"
                              + " para el nuevo celular que no va a dar resultados"
            };

            query = from interval in lDateIntervalList
                    where interval.ActiveFrom <= new DateTime(2016, 02, 01)
                    select interval;

            foreach (var interval in query)
            {
                lCampaign2.AddSchedule(DomainServiceLocator.Resolve <IScheduleChecker>(), interval);
            }


            pContext.Set <Campaign>().Add(lCampaign1);
            pContext.Set <Campaign>().Add(lCampaign2);
            //  pContext.Campaigns.Add(lCampaign2);

            pContext.SaveChanges();
        }
示例#6
0
            public Campaign Convert(CampaignDTO source, Campaign destination, ResolutionContext context)
            {
                if (source == null)
                {
                    return(null);
                }

                try
                {
                    destination = destination ?? new Campaign();

                    destination.Id           = source.Id;
                    destination.LastModified = DateTimeResolver.Resolve(source.ModificationDate);
                    destination.CreationDate = DateTimeResolver.Resolve(source.CreationDate);
                    destination.Name         = source.Name;
                    destination.Description  = source.Description;

                    IScheduleChecker lScheduleChecker = DomainServiceLocator.Resolve <IScheduleChecker>();

                    foreach (var item in source.ActiveIntervals)
                    {
                        destination.AddSchedule(lScheduleChecker, Mapper.Map <Schedule>(item));
                    }

                    //foreach (var item in source.Slides)
                    //{
                    //    destination.AddSlide(
                    //        Mapper.Map<SlideDTO, Slide>(item)
                    //        );
                    //}

                    return(destination);
                }
                catch (Exception)
                {
                    throw;
                }
            }
示例#7
0
 public static void DomainLocattor()
 {
     DomainServiceLocator.TryAddPluginsService();
 }
示例#8
0
 public void SyncAllMethodTest()
 {
     DomainServiceLocator.GetSyncService().SyncAll();
 }
示例#9
0
 public void SyncTicketmasterMethodTest()
 {
     DomainServiceLocator.GetSyncService().SyncTicketmaster();
 }
 private void Run()
 {
     DomainServiceLocator.GetSyncService().SyncAll();
 }
示例#11
0
 private void InitServiceMetas()
 {
     DomainServiceLocator.TryAddPluginsService();
 }