Esempio n. 1
0
        public ResponseData <ScoreModelPostResponse> Post([FromBody] ScoreModel score)
        {
            ResponseData <ScoreModelPostResponse> resp = new ResponseData <ScoreModelPostResponse>();

            try
            {
                Score sco = AutoMapperFacade.Map <Score>(score);
                SubmitScoreCommandData data = new SubmitScoreCommandData(sco);
                submitScore.Handle(data);
                sco = data.score;
                ScoreModelPostResponse respScore = new ScoreModelPostResponse()
                {
                    ID = sco.ID, IsNewRecord = data.IsNewRecord, Ranking = sco.GetRankingByScore()
                };
                respScore.Player = AutoMapperFacade.Map <UserModelResponse>(data.user);
                resp.Data        = respScore;
                resp.Message     = "Registro efetuado com sucesso!";
                resp.Success     = true;
            }
            catch (Exception)
            {
                resp.Message = "Não foi possível submeter a pontuação!";
            }
            return(resp);
        }
        public ResponseData <IEnumerable <SceneModel> > Retrieve()
        {
            ResponseData <IEnumerable <SceneModel> > resp = new ResponseData <IEnumerable <SceneModel> >();

            resp.Data    = AutoMapperFacade.Map <IEnumerable <SceneModel> >(BaseRepository <Scene> .getAll());
            resp.Message = "";
            resp.Success = true;
            return(resp);
        }
Esempio n. 3
0
        public ResponseData <IEnumerable <UserModelResponse> > Get()
        {
            ResponseData <IEnumerable <UserModelResponse> > resp = new ResponseData <IEnumerable <UserModelResponse> >();

            resp.Data    = AutoMapperFacade.Map <IEnumerable <UserModelResponse> >(BaseRepository <User> .getAll());
            resp.Message = "";
            resp.Success = true;
            return(resp);
        }
Esempio n. 4
0
        public ResponseData <IEnumerable <ScoreModel> > GetSceneScoresOrderedByRanking(int ID, int quantity = 0)
        {
            ResponseData <IEnumerable <ScoreModel> > resp = new ResponseData <IEnumerable <ScoreModel> >();
            IEnumerable <ScoreModel> scores = AutoMapperFacade.Map <IEnumerable <ScoreModel> >(BaseRepository <Score> .getAll().Where(s => s.SceneId == ID).OrderBy(o => scoreCalculator.RetrieveRanking(o)));

            resp.Data    = (quantity == 0 ? scores : scores.Take(quantity));
            resp.Message = "";
            resp.Success = true;
            return(resp);
        }
Esempio n. 5
0
        public ResponseData <IEnumerable <UserModelResponse> > GetUsersOrderedByRanking(int quantity = 0)
        {
            ResponseData <IEnumerable <UserModelResponse> > resp = new ResponseData <IEnumerable <UserModelResponse> >();
            IEnumerable <UserModelResponse> users = AutoMapperFacade.Map <IEnumerable <UserModelResponse> >(BaseRepository <User> .getAll().OrderBy(o => scoreCalculator.RetrieveRanking(o)));
            User tester = BaseRepository <User> .getByID(89);

            resp.Data    = (quantity == 0 ? users : users.Take(quantity));
            resp.Message = "";
            resp.Success = true;
            if (tester.GetRankingByScore() == 0)
            {
                throw new Exception("");
            }
            return(resp);
        }
Esempio n. 6
0
        // POST: api/User
        public ResponseData <UserModelResponse> Post([FromBody] UserModelPost user)
        {
            ResponseData <UserModelResponse> resp = new ResponseData <UserModelResponse>();

            try
            {
                if (BaseRepository <User> .getAll().Where(u => u.Login == user.Login).Count() > 0)
                {
                    throw new InvalidOperationException("Este login já está sendo utilizado por outro jogador!");
                }
                string ip                    = Helpers.GetVisitorIPAddress(HttpContext.Current.Request);
                string encrypted             = StringCipher.Encrypt(user.Password, StringCipher.SecretMessage);
                RegisterUserCommandData data = new RegisterUserCommandData(user.Login, encrypted, ip);
                resp.Data    = AutoMapperFacade.Map <UserModelResponse>(this.RegisterUser.Handle(data).user);
                resp.Message = "Registro efetuado com sucesso!";
                resp.Success = true;
            }
            catch (Exception e)
            {
                resp.Message = e.Message;
            }
            return(resp);
        }
Esempio n. 7
0
        // GET: api/User/5
        public ResponseData <UserModelResponse> Get(string login, string password)
        {
            ResponseData <UserModelResponse> resp = new ResponseData <UserModelResponse>();

            try
            {
                string encrypted = StringCipher.Encrypt(password, StringCipher.SecretMessage);
                User   users     = BaseRepository <User> .getAll().Where(u => u.Login == login && u.Password == encrypted).FirstOrDefault();

                if (users == null)
                {
                    throw new InvalidOperationException("Login e/ou Senha incorreto(s)!");
                }
                resp.Data    = AutoMapperFacade.Map <UserModelResponse>(users);
                resp.Message = "Login efetuado com sucesso!";
                resp.Success = true;
            }
            catch (Exception e)
            {
                resp.Message = e.Message ?? "Not treated exception!";
            }
            return(resp);
        }