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); }
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); }
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); }
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); }
// 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); }
// 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); }