コード例 #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            MovieController ctr = new MovieController();

            ctr.Connect();

            // test
            ctr.WipeDB();

            ctr.InsertUser(0, "simmonde");
            ctr.InsertUser(1, "saumonLeCitron");
            ctr.AddFriend("simmonde", "saumonLeCitron");
            ctr.InsertMovie(0, "Star Wars");
            ctr.AddRate("simmonde", "Star Wars", 2);
            ctr.AddRate("saumonLeCitron", "Star Wars", 2);


            Console.WriteLine(ctr.GetAverageRateByMovie("Star Wars"));

            /*
             * ctr.AddFriend(1, "saumonlecitron");
             * ctr.AddFriend(2, "simmonde");
             * ctr.AddFriend(3, "fred");
             * ctr.AddFriend(4, "jean-pierre");
             * ctr.AddFriend(5, "jean-claude");
             * ctr.InsertUser(6, "jean-paul");
             * ctr.InsertUser(7, "arnold");
             *
             * ctr.AddFriend(1, 2);
             * ctr.UserIsFriendWith(1, 3);
             * ctr.UserIsFriendWith(1, 4);
             * ctr.UserIsFriendWith(1, 5);
             * ctr.UserIsFriendWith(1, 6);
             * ctr.UserIsFriendWith(2, 7);
             *
             * ctr.InsertMovie(1, "The Adams Family");
             *
             * ctr.UserRatesMovie(2, 1, 5.0);
             * ctr.UserRatesMovie(3, 1, 5.0);
             * ctr.UserRatesMovie(4, 1, 5.0);
             * ctr.UserRatesMovie(7, 1, 1);
             *
             * ctr.GetSuggestedMovies(1, 2);
             *
             * ctr.InsertMovie(1, "taf");
             *
             * ctr.UserRatesMovie(1, 1, "Nice !");
             * ctr.UserRatesMovie(3, 1, "Bullshit !");
             * ctr.UserIsFriendWith(1, 2);
             * ctr.UserIsFriendWith(2, 1);
             * ctr.UserIsFriendWith(1, 3);
             *
             * Console.WriteLine(ctr.GetUsernameById(1));
             */
        }
コード例 #2
0
        private static async void BotOnCallbackQueryReceived(object sender, CallbackQueryEventArgs callbackQueryEventArgs)
        {
            var callbackQuery = callbackQueryEventArgs.CallbackQuery;

            await Bot.AnswerCallbackQueryAsync(
                callbackQuery.Id,
                $"Selected {callbackQuery.Data}");

            string      username = callbackQuery.From.Username;
            UserSession session;

            if (_userSessions.TryGetValue(username, out session))
            {
                switch (session.Step)
                {
                case Step.ChooseGenre:
                    session.FilterValue = getGenreId(callbackQuery.Data).ToString();
                    displayFilteredMovies(session);
                    break;

                case Step.ChooseFilter:
                    session.Filter = callbackQuery.Data;
                    if (session.Filter == "Genres")
                    {
                        getGenresAsync(session);
                        session.Step = Step.ChooseGenre;
                    }
                    else
                    {
                        session.Step = Step.InputFilterValue;
                    }
                    break;

                case Step.SelectMovie:
                    session.SelectedMovie = callbackQuery.Data;
                    session.Step          = Step.ChooseMovieAction;
                    getMovieActionChoiceAsync(session);
                    break;

                case Step.ChooseMovieAction:
                    switch (callbackQuery.Data)
                    {
                    case "Add to WatchList":
                        _movieController.AddToWatch(username, session.SelectedMovie);
                        break;

                    case "Comment":
                        session.Step = Step.CommentMovie;
                        break;

                    case "Rate":
                        session.Step = Step.RateMovie;
                        break;

                    case "See comments":
                        DisplayComments(_movieController.GetCommentsByMovie(session.SelectedMovie), session, "Comments");
                        session.Step = Step.Default;
                        break;

                    case "See average rate":
                        double        average = _movieController.GetAverageRateByMovie(session.SelectedMovie);
                        List <string> dis     = new List <string>();
                        dis.Add(average.ToString());
                        DisplayComments(dis, session, "Average rate");
                        session.Step = Step.Default;
                        break;
                    }
                    break;

                case Step.ChooseFriend:
                    session.SelectedFriend = callbackQuery.Data;
                    session.Step           = Step.ChooseFriendAction;
                    GetFriendActionChoiceAsync(session);
                    break;

                case Step.ChooseFriendAction:
                    switch (callbackQuery.Data)
                    {
                    case "See watchlist":
                        _movieController.GetFriendTowatchList(session.SelectedFriend);
                        break;
                    }
                    break;
                }
            }
            await Bot.SendTextMessageAsync(
                callbackQuery.Message.Chat.Id,
                $"{callbackQuery.Data}");
        }