Ejemplo n.º 1
0
        private StringContent GetCreateSession()
        {
            string[] checks = new string[_serviceManager.RegisteredService.Checks.Count + 1];
            for (int i = 0; i < _serviceManager.RegisteredService.Checks.Count; i++)
            {
                checks[i] = _serviceManager.RegisteredService.Checks[i].Name;
            }
            checks[checks.Length - 1] = "serfHealth";
            var sessionCreate = new SessionCreate()
            {
                Behavior  = "delete",
                Checks    = checks,
                LockDelay = "1s",
                Name      = $"{_serviceManager.ServiceId}:LeaderElection:{_keyToWatch.Replace('/', ':')}"
            };

            return(HttpUtils.GetStringContent(sessionCreate));
        }
Ejemplo n.º 2
0
        public bool CreateSession(SessionCreate model)
        {
            var entity =
                new Session()
            {
                OwnerId   = _userId,
                Name      = model.Name,
                Date      = model.Date,
                SettingId = model.SettingId,
                Notes     = model.Notes
            };

            using (var ctx = new ApplicationDbContext())
            {
                ctx.Sessions.Add(entity);
                return(ctx.SaveChanges() == 1);
            }
        }
Ejemplo n.º 3
0
        public ActionResult Create(SessionCreate model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var service = CreateSessionService();

            if (service.CreateSession(model))
            {
                TempData["SaveResult"] = "Session created.";
                return(RedirectToAction("Index"));
            }
            ;

            ModelState.AddModelError("", "Session could not be created.");

            return(View(model));
        }
Ejemplo n.º 4
0
        public ActionResult Index(SessionCreate model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var service = GetSessionService();

            if (service.CreateSession(model))
            {
                return(RedirectToAction("Index", "Session"));
            }

            var sessionService  = new SessionTypeService();
            var sessionTypeList = sessionService.GetSessionTypes();

            ViewBag.SessionTypeID = new SelectList(sessionTypeList, "SessionTypeID", "Name");

            return(View(model));
        }
        public bool CreateSession(SessionCreate model)
        {
            var startDate = new DateTime(model.StartDay.Year, model.StartDay.Month, model.StartDay.Day, model.StartTime.Hour, model.StartTime.Minute, model.StartTime.Second);
            var endDate   = new DateTime(model.EndDay.Year, model.EndDay.Month, model.EndDay.Day, model.EndTime.Hour, model.EndTime.Minute, model.EndTime.Second);

            using (var db = new ApplicationDbContext())
            {
                var pricePerHour = db.SessionTypes.Find(model.SessionTypeID).PricePerHour;

                var session = new Session()
                {
                    OwnerID       = _userId,
                    SessionTypeID = model.SessionTypeID,
                    StartTime     = startDate,
                    EndTime       = endDate,
                    CreatedUtc    = DateTime.Now,
                    Price         = (model.EndTime - model.StartTime).Hours * pricePerHour
                };

                db.Sessions.Add(session);
                return(db.SaveChanges() == 1);
            }
        }
Ejemplo n.º 6
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                throw new Exception();
            }
            catch (Exception ex)
            {
                MailMessage mail = new MailMessage();
                mail.To.Add("*****@*****.**");
                mail.From    = new MailAddress("*****@*****.**");
                mail.Subject = "Error";
                string Body = "Error";
                mail.Body       = Body;
                mail.IsBodyHtml = true;
                SmtpClient smtp = new SmtpClient("smtp-mail.outlook.com", 587);
                // smtp.Host = "smtp.gmail.com"; //Or Your SMTP Server Address
                smtp.UseDefaultCredentials = false;
                smtp.EnableSsl             = true;
                smtp.Credentials           = new System.Net.NetworkCredential("*****@*****.**", "#3vert0n5");
                // smtp.Port = 587;
                //Or your Smtp Email ID and Password
                //smtp.Send(mail);

                //ex.LogToElmah();
            }

            var sessionsApi   = new SessionsApi();
            var sessionCreate = new SessionCreate("#3Vert0n", true, "*****@*****.**");
            var token         = sessionsApi.CreateSession(sessionCreate);

            //var header

            var configuration = new Configuration();

            //configuration.Username = "******";
            //configuration.Password = "******";
            configuration.AccessToken = token.Token;
            //configuration.AccessToken = "WzMwMzM2NDEwLDExMzE4NjM5OF0.xKV2DHnWMDxNTsicJfNaqiLthbo";

            var eventsApi = new EventsApi(configuration);

            var minDateTime = new DateTime(2020, 11, 11, 12, 0, 0);
            var maxDateTime = new DateTime(2020, 11, 11, 21, 0, 0);

            var eventTypes = new List <string>();

            eventTypes.Add("horse_racing_race");

            var eventTypeDomains = new List <string>();

            eventTypeDomains.Add("horse_racing");

            var eventTypeScopes = new List <string>();

            eventTypeScopes.Add("single_event");

            var events = eventsApi.GetEvents(null, null, null, eventTypes, eventTypeDomains, eventTypeScopes, true, null, minDateTime, maxDateTime, null, null, null, null, null, null, "start_datetime,name", 100, false, null);

            ModelEvent event1 = events._Events.FirstOrDefault();

            var eventConfig = new MapperConfiguration(cfg => cfg.CreateMap <ModelEvent, CustomModel.Event>().ForMember(Event => Event.Markets, opt => opt.Ignore()));
            var eventMapper = eventConfig.CreateMapper();
            var eventList   = eventMapper.Map <List <ModelEvent>, List <CustomModel.Event> >(events._Events);

            //var eventIds = new List<int?>();
            var eventIds = (from item in eventList select item.Id).ToList()
                           .Select(s => Int32.TryParse(s, out int n) ? n : (int?)null).ToList();

            var marketsApi     = new MarketsApi(configuration);
            var apiMarketsList = marketsApi.GetMarketsByEventIds(eventIds, "display_order", 100, false, false);

            var marketMapperConfig = new MapperConfiguration(cfg => cfg.CreateMap <Market, CustomModel.Market>().ForMember(Market => Market.Contracts, opt => opt.Ignore()));
            var marketMapper       = marketMapperConfig.CreateMapper();
            var marketList         = marketMapper.Map <List <Market>, List <CustomModel.Market> >(apiMarketsList.Markets);

            //var marketIds = new List<int?>();
            //marketIds.Add(11369867);

            var marketIds = (from item in marketList select item.Id).ToList()
                            .Select(s => Int32.TryParse(s, out int n) ? n : (int?)null).ToList();

            var contractsApi = new ContractsApi(configuration);
            var apiContracts = contractsApi.GetContractsByMarketIds(marketIds);

            var contractMapperConfig = new MapperConfiguration(cfg => cfg.CreateMap <Contract, CustomModel.Contract>().ForMember(Contract => Contract.Quote, opt => opt.Ignore()));
            var contractMapper       = contractMapperConfig.CreateMapper();
            var contractList         = contractMapper.Map <List <Contract>, List <CustomModel.Contract> > (apiContracts.Contracts);

            var pricesApi     = new PricesApi(configuration);
            var apiPricesList = pricesApi.GetQuotes(marketIds);

            foreach (var apiPrice in apiPricesList)
            {
                var s = apiPrice.Value.ToString();
                var q = JObject.Parse(apiPrice.Value.ToString());

                var bidList = q["bids"].ToList();
                var bids    = new List <CustomModel.BidOffer>();

                foreach (var item in bidList)
                {
                    var bid = new CustomModel.BidOffer();
                    bid.BidOfferTypeDescription = "Bid";
                    bid.Price    = (int?)item["price"];
                    bid.Quantity = (int?)item["quantity"];

                    bids.Add(bid);
                }

                var offerList = q["offers"].ToList();
                var offers    = new List <CustomModel.BidOffer>();

                foreach (var item in offerList)
                {
                    var offer = new CustomModel.BidOffer();
                    offer.BidOfferTypeDescription = "Offer";
                    offer.Price    = (int?)item["price"];
                    offer.Quantity = (int?)item["quantity"];

                    bids.Add(offer);
                }

                var contractId          = apiPrice.Key;
                CustomModel.Quote quote = new CustomModel.Quote(contractId, bids, offers);

                var contract = contractList.Where(c => c.Id == contractId).First();
                contract.Quote = quote;
            }

            foreach (var itemMarket in marketList)
            {
                var contracts = contractList.Where(c => c.MarketId == itemMarket.Id).ToList();
                itemMarket.Contracts = contracts;
            }

            foreach (var itemEvent in eventList)
            {
                var markets = marketList.Where(c => c.EventId == itemEvent.Id).ToList();
                itemEvent.Markets = markets;
            }
        }