Ejemplo n.º 1
0
        public void CreateRatiing(CreateRaitingDTO raiting)
        {
            var user = db.Users.FirstOrDefault(u => u.UserId == raiting.ReceiverUserId);
            var task = db.Tasks.FirstOrDefault(t => t.TaskId == raiting.TaskId);

            var raitingToBeInserted = new Raiting
            {
                Value              = raiting.Value,
                Description        = raiting.Description,
                ReceiverUserId     = raiting.ReceiverUserId,
                TaskId             = raiting.TaskId,
                ReceiverUserRoleId = raiting.ReceiverUserRoleId
            };

            if (raiting.ReceiverUserRoleId == 3)
            {
                var currentRait = user.RaitingAsTasker * user.ReviewsAsTasker;
                currentRait               += raiting.Value;
                currentRait               /= (user.ReviewsAsTasker + 1);
                user.RaitingAsTasker       = currentRait;
                task.HasCreatorGivenRating = true;
            }
            else if (raiting.ReceiverUserRoleId == 4)
            {
                var currentRait = user.RaitingAsSupervisor * user.ReviewsAsSupervisor;
                currentRait += raiting.Value;
                currentRait /= (user.ReviewsAsSupervisor + 1);
                user.RaitingAsSupervisor  = currentRait;
                task.HasTaskerGivenRating = true;
            }

            db.Raitings.Add(raitingToBeInserted);
            db.SaveChanges();
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <Raiting> > Get(int id)
        {
            Raiting raiting = await db.RaitingModels.FirstOrDefaultAsync(x => x.Id == id);

            if (raiting == null)
            {
                return(NotFound());
            }
            return(new ObjectResult(raiting));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult <User> > Post(Raiting raiting)
        {
            if (raiting == null)
            {
                return(BadRequest());
            }

            db.RaitingModels.Add(raiting);
            await db.SaveChangesAsync();

            return(Ok(raiting));
        }
Ejemplo n.º 4
0
        public async Task <Raiting> UpdateRaiting(Raiting raiting)
        {
            HttpClient client   = GetClient();
            var        response = await client.PutAsync(Url + "raiting/", new StringContent(JsonSerializer.Serialize(raiting), Encoding.UTF8, "application/json"));

            if (response.StatusCode != HttpStatusCode.OK)
            {
                return(null);
            }

            return(JsonSerializer.Deserialize <Raiting>(await response.Content.ReadAsStringAsync(), options));
        }
Ejemplo n.º 5
0
        public async Task <ActionResult <Raiting> > Delete(int id)
        {
            Raiting raiting = db.RaitingModels.FirstOrDefault(x => x.Id == id);

            if (raiting == null)
            {
                return(NotFound());
            }
            db.RaitingModels.Remove(raiting);
            await db.SaveChangesAsync();

            return(Ok(raiting));
        }
Ejemplo n.º 6
0
        public async Task AddNewRatingToUser(double value, string userId)
        {
            var user = await _userManager.FindByIdAsync(userId);

            var newRating = new Raiting
            {
                RaitingId = 0,
                Value     = value,
                User      = user
            };

            await _usersDb.AddAsync(newRating);

            await _usersDb.SaveChangesAsync();
        }
Ejemplo n.º 7
0
        public async Task <ActionResult <Raiting> > Put(Raiting raiting)
        {
            if (raiting == null)
            {
                return(BadRequest());
            }
            if (!db.RaitingModels.Any(x => x.Id == raiting.Id))
            {
                return(NotFound());
            }

            db.Update(raiting);
            await db.SaveChangesAsync();

            return(Ok(raiting));
        }
        public void NewSearch(string basic           = "", string title     = "", string authors = "", string characters = "", string relationships = "",
                              string fandoms         = "", string otherTags = "",
                              Tuple <int, int> likes = null, Tuple <int, int> views = null, Tuple <int, int> comments = null, Tuple <int, int> wordCount = null,
                              Tuple <DateTime, DateTime> updateBefore = default, Tuple <DateTime, DateTime> publishBefore = default,
                              SearchDirection direction = SearchDirection.Descending, SearchBy searchBy = SearchBy.Likes, Raiting raiting = Raiting.Any,
                              FicStatus ficStatus       = FicStatus.Any, CrossoverStatus crossover      = CrossoverStatus.Any)
        {
            ActiveSearch = new Search // Build search from passed form results
            {
                Basic         = basic,
                Title         = title,
                Authors       = authors?.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList(),
                Characters    = characters?.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList(),
                Relationships = relationships?.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList(),
                Fandoms       = fandoms?.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList(),
                OtherTags     = otherTags?.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList(),
                Likes         = likes,
                Views         = views,
                Comments      = comments,
                WordCount     = wordCount,
                UpdateBefore  = updateBefore,
                PublishBefore = publishBefore,
                Direction     = direction,
                SearchFicsBy  = searchBy,
                FicRaiting    = raiting,
                Status        = ficStatus,
                Crossover     = crossover
            };

            ActiveSearch.BuildRequests(); // Configure the seprate requests
            MakeWebRequest();             // Make a new web request
        }
        private static void Main()
        {
            const int maxTurns = 35;
            string    command;

            char[,] board = CreateBoard();
            char[,] bombs = BombInitialize();
            int            countPoints   = 0;
            bool           isBlow        = false;
            List <Raiting> listOfWinners = new List <Raiting>(6);
            int            row           = 0;
            int            col           = 0;
            bool           isStart       = true;
            bool           flag2         = false;

            do
            {
                if (isStart)
                {
                    Console.WriteLine(
                        "Lets play minesweeper.Try your luck to finde empty filds."
                        + " Command 'top' show high score, 'restart' start new game, 'exit' escape from game.");
                    dumpp(board);
                    isStart = false;
                }

                Console.Write("Enter row and column : ");
                command = Console.ReadLine().Trim();
                if (command.Length >= 3)
                {
                    if (int.TryParse(command[0].ToString(), out row) && int.TryParse(command[2].ToString(), out col) &&
                        row <= board.GetLength(0) && col <= board.GetLength(1))
                    {
                        command = "turn";
                    }
                }

                switch (command)
                {
                case "top":
                    HighScore(listOfWinners);
                    break;

                case "restart":
                    board = CreateBoard();
                    bombs = BombInitialize();
                    dumpp(board);
                    isBlow  = false;
                    isStart = false;
                    break;

                case "exit":
                    Console.WriteLine("4a0, 4a0, 4a0!");
                    break;

                case "turn":
                    if (bombs[row, col] != '*')
                    {
                        if (bombs[row, col] == '-')
                        {
                            NextTurn(board, bombs, row, col);
                            countPoints++;
                        }

                        if (maxTurns == countPoints)
                        {
                            flag2 = true;
                        }
                        else
                        {
                            dumpp(board);
                        }
                    }
                    else
                    {
                        isBlow = true;
                    }

                    break;

                default:
                    throw new ArgumentException("Wrong command!");
                    break;
                }

                if (isBlow)
                {
                    dumpp(bombs);
                    Console.Write("\nYou die with {0} points. " + "Enter your nickname: ", countPoints);
                    string  nickname = Console.ReadLine();
                    Raiting raiting  = new Raiting(nickname, countPoints);
                    if (listOfWinners.Count < 5)
                    {
                        listOfWinners.Add(raiting);
                    }
                    else
                    {
                        for (int i = 0; i < listOfWinners.Count; i++)
                        {
                            if (listOfWinners[i].Points < raiting.Points)
                            {
                                listOfWinners.Insert(i, raiting);
                                listOfWinners.RemoveAt(listOfWinners.Count - 1);
                                break;
                            }
                        }
                    }

                    listOfWinners.Sort((Raiting firstUser, Raiting secUser) => secUser.Name.CompareTo(firstUser.Name));
                    listOfWinners.Sort((Raiting firstUser, Raiting secUser) => secUser.Points.CompareTo(firstUser.Points));
                    HighScore(listOfWinners);

                    board       = CreateBoard();
                    bombs       = BombInitialize();
                    countPoints = 0;
                    isBlow      = false;
                    isStart     = true;
                }

                if (flag2)
                {
                    Console.WriteLine("\nBRAVOOOS! Otvri 35 kletki bez kapka kryv.");
                    dumpp(bombs);
                    Console.WriteLine("Daj si imeto, batka: ");
                    string  imeee  = Console.ReadLine();
                    Raiting to4kii = new Raiting(imeee, countPoints);
                    listOfWinners.Add(to4kii);
                    HighScore(listOfWinners);
                    board       = CreateBoard();
                    bombs       = BombInitialize();
                    countPoints = 0;
                    flag2       = false;
                    isStart     = true;
                }
            }while (command != "exit");
            Console.Read();
        }
Ejemplo n.º 10
0
        public static void Main(string[] arguments)
        {
            string command = string.Empty;

            char[,] gameField = GameField.CreateGameField();
            char[,] mines     = CreateMines.Create();
            int            score          = 0;
            bool           gameOver       = false;
            int            numOfPlayers   = 6;
            List <Players> topPlayers     = new List <Players>(numOfPlayers);
            int            row            = 0;
            int            column         = 0;
            bool           win            = false;
            bool           restart        = true;
            const int      MaxOpenSquares = 35;

            do
            {
                if (restart)
                {
                    Console.WriteLine("Lets play Minesweeper. Find the empty squares while avoiding the mines. " +
                                      "\nCommand 'top' showing raiting, 'restart' begin new game, 'exit' ending the game!\nGood Luck! ");
                    GameField.GameFieldRenderer(gameField);
                    restart = false;
                }

                Console.Write("Enter which row and column you want to open: ");
                command = Console.ReadLine().Trim();

                if (command.Length >= 3)
                {
                    if (int.TryParse(command[0].ToString(), out row) &&
                        int.TryParse(command[2].ToString(), out column) &&
                        row <= gameField.GetLength(0) && column <= gameField.GetLength(1))
                    {
                        command = "turn";
                    }
                }

                switch (command)
                {
                case "top":
                    Raiting.RaitingTopPlayer(topPlayers);
                    break;

                case "restart":
                    gameField = GameField.CreateGameField();
                    mines     = CreateMines.Create();
                    GameField.GameFieldRenderer(gameField);
                    gameOver = false;
                    restart  = false;
                    break;

                case "exit":
                    Console.WriteLine("Game Over!");
                    break;

                case "turn":
                    if (mines[row, column] != '*')
                    {
                        if (mines[row, column] == '-')
                        {
                            CountMinesAround.NumOfMinesAround(gameField, mines, row, column);
                            score++;
                        }

                        if (MaxOpenSquares == score)
                        {
                            win = true;
                        }
                        else
                        {
                            GameField.GameFieldRenderer(gameField);
                        }
                    }
                    else
                    {
                        gameOver = true;
                    }

                    break;

                default:
                    Console.WriteLine("\nWrong command!\n");
                    break;
                }

                if (gameOver)
                {
                    GameField.GameFieldRenderer(mines);
                    Console.Write("\nGameOver! Your score is {0} points. " + "Enter your name: ", score);
                    string  playerName = Console.ReadLine();
                    Players newPlayer  = new Players(playerName, score);
                    if (topPlayers.Count < 5)
                    {
                        topPlayers.Add(newPlayer);
                    }
                    else
                    {
                        for (int i = 0; i < topPlayers.Count; i++)
                        {
                            if (topPlayers[i].Score < newPlayer.Score)
                            {
                                topPlayers.Insert(i, newPlayer);
                                topPlayers.RemoveAt(topPlayers.Count - 1);
                                break;
                            }
                        }
                    }

                    topPlayers.Sort((Players player1, Players player2) => player2.Name.CompareTo(player1.Name));
                    topPlayers.Sort((Players palyer1, Players player2) => player2.Score.CompareTo(palyer1.Score));
                    Raiting.RaitingTopPlayer(topPlayers);

                    gameField = GameField.CreateGameField();
                    mines     = CreateMines.Create();
                    score     = 0;
                    gameOver  = false;
                    restart   = true;
                }

                if (win)
                {
                    Console.WriteLine("\nCongratulations! You Win!");
                    GameField.GameFieldRenderer(mines);
                    Console.WriteLine("Enter your name: ");
                    string  nameOfWinner = Console.ReadLine();
                    Players newPlayer    = new Players(nameOfWinner, score);
                    topPlayers.Add(newPlayer);
                    Raiting.RaitingTopPlayer(topPlayers);
                    gameField = GameField.CreateGameField();
                    mines     = CreateMines.Create();
                    score     = 0;
                    win       = false;
                    restart   = true;
                }
            }while (command != "exit");
            Console.Read();
        }