private void PopulateDefaultProperties(RateContribution rateContribution) { BearerToken bearerToken = new BearerToken(); var activeToken = bearerToken.GetActiveToken(); rateContribution.musician_id = int.Parse(activeToken.client); }
private bool MusicianExists(RateContribution rateContribution) { MusicianRepository musicianRepository = new MusicianRepository(); var retorno = musicianRepository.Get(rateContribution.musician_id); return(retorno != null); }
private void ValidateContributionId(RateContribution rateContribution) { if (rateContribution.contribution_id == 0) { throw ValidateException("Id da Contribuição inválido!"); } }
internal RateContribution GetByUserAndProjectId(int musicalProjectId) { int userId = Utitilities.GetLoggedUserId(); //TODO RateContribution retorno = new RateContribution();// _rateContributionBusiness.GetByUserAndProjectId(musicalProjectId, userId); return(retorno); }
private void Validate(RateContribution rateContribution) { ValidateContributionId(rateContribution); ValidateMusicianId(rateContribution); if (rateContribution.rate_value <= 0 || rateContribution.rate_value > 5) { throw ValidateException("O voto deve ser de 1 a 5!"); } }
public RateContribution Create(RateContribution rateContribution) { PopulateDefaultProperties(rateContribution); Validate(rateContribution); RateContributionRepository rateContributionRepository = new RateContributionRepository(); var retorno = rateContributionRepository.Create(rateContribution); return(retorno); }
public IHttpActionResult Get([FromUri] int id) { RateContribution rateContribution = null; RateContributionModel rateContributionModel = new RateContributionModel(); try { rateContribution = rateContributionModel.GetByUserAndProjectId(musicalProjectId: id); } catch (Exception ex) { return(BadRequest(ex.Message)); } return(Ok(rateContribution)); }
public IHttpActionResult Create([FromBody] RateContributionModel rate_musician) { RateContribution rateContribution = null; try { rateContribution = rate_musician.Create(); } catch (ValidateException ex) { return(UnprocessableEntity(ex.Message)); } catch (Exception ex) { return(BadRequest(ex.Message)); } return(Created("api", rateContribution)); }
private void ValidateMusicianId(RateContribution rateContribution) { if (rateContribution.musician_id == 0) { throw ValidateException("O músico deve ser selecionado!"); } bool targetIdExists = MusicianExists(rateContribution); if (!targetIdExists) { throw ValidateException("O ID deste usuario é inexistente!"); } Contribution contribution = GetContributionById(rateContribution.contribution_id); if (rateContribution.musician_id == contribution.musician_id) { throw ValidateException("Você não pode votar em sua propria contribuição mesmo!"); } }