worknenjoy / truppie

The marketplace for adventures
http://www.truppie.com
MIT License
51 stars 38 forks source link

Cadastrar atividades em que o valor é sugerido pelo usuário - R$ 350,00 #19

Closed alexanmtz closed 6 years ago

alexanmtz commented 6 years ago

Quando o guia criar um passeio, e chegar no momento de escolher um valor ou entre pacotes, ele poder marcar um campo "Sugerido pelo usuário no momento da reserva / Chosen by user". A tradução deste campo para o inglês também deverá ser realizada.

Desta forma iremos possibilitar uma nova forma de oferecer passeios de forma colaborativa e para que o usuário possa pagar o preço que achar justo.

Observamos que este tipo de iniciativa vem sendo usado para passeios alternativos e queremos oferecer esta forma para que guias que ofereçam passeios neste modelo possam ingressar na plataforma.

screen shot 2017-10-11 at 7 27 43 pm

Quando este campo de preço "sugerido pelo usuário no momento da reserva" estiver selecionado, desativar o campo relativo ao preço único e o botão de Criar pacotes

Colocar também um componente de tooltip com uma interrogação com o seguinte texto (não esquecer de seguir as [práticas de internacionalização](http://guides.rubyonrails.org/i18n.html, pois o site é multi idioma):

Com esta opção, o usuário pode fazer a reserva e pagar o preço que achar justo por esta atividade(Português)

With this option enabled, the user pay the price he think is fair for this activity

Como chegar no cenário descrito

Como realizar esta mudança

Parte 1: Alterar a validação na criação de uma atividade

Para realizar esta modificação, é necessário alterar a validação no model tour. Este é model do evento e atualmente valida se o valor é definido na hora de criar uma nova atividade.

Para realizar esta mudança será necessário fazer uma validação condicional no model. A validação do preço só ocorre se este campo não estiver marcado.

Temos um exemplo deste uso para os pacotes de preço no model tour: https://github.com/alexanmtz/truppie/blob/master/app/models/tour.rb#L41

Parte 2: Alterar na confirmação da reserva

Na tela da confirmação da reserva o valor será substituído por um campo que vai ser enviado juntamente com os dados do formulário com o valor fornecido pelo usuário.

Logo abaixo deste valor exibir uma média dos valores

screen shot 2017-10-11 at 7 50 06 pm

A forma que este campo será preenchido pode seguir a mesma regra do que é definido pelo guia na sua criação, ou seja, você pode usar este elemento:

screen shot 2017-10-11 at 7 56 39 pm

Na confirmação da reserva o preço é enviado para ordem de pagamento. Para isto, terá de ser verificado no controller tour no método confirm_direct https://github.com/alexanmtz/truppie/blob/master/app/controllers/tours_controller.rb#L298

Quando a confirmação é realizada, passar para a ordem de pagamento (order) o valor que o usuário sugeriu.

Todos os locais do site que exibem preço exibir "O que você achar justo! / A fair price for you!" (não esquecer de colocar o texto no arquivo de traduções, pois o site é multi idioma.

Sendo assim, temos como critério de aceitação:

Considerações sobre a plataforma:

Requisitos para rodar a plataforma

 ADMIN_EMAIL=seuemail 
 ADMIN_EMAIL_ALT=outroemail

Como realizar esta tarefa

  1. Comente aqui manifestando o interesse em realizar esta tarefa, que entrarei em contato para obter os detalhes para realizar o pagamento
  2. Faça um fork do projeto
  3. Faça um clone do projeto para o seu ambiente local

rake test (rodar os testes automatizados)

rails db:migrate (Rodar as migrations para o banco de dados)

rails s (Rodar o projeto)

  1. Realize as modificações como descrito nesta Issue
  2. Enviar um Pull Request
  3. Certificar-se de que as modificações passaram nos testes automatizados
  4. Um novo ambiente para testes será criado para validação das modificações com a nossa equipe
  5. Receber os comentários e feedbacks sobre modificações
  6. Enviar quaisquer modificações necessárias até ser aprovado
  7. Você ganha então um 👍
  8. Quando o Pull Request for finalizado, o pagamento é enviado

Se precisar de qualquer ajuda ou tiver qualquer dúvida basta comentar aqui que as dúvidas poderão ser respondidas por qualquer pessoa da comunidade ou quem contribui com o projeto e principalmente eu 👍

Se quiser se familiarizar com o funcionamento de projetos de software livre, tem este excelente guia do Tableless

alexanmtz commented 6 years ago

Opção de criar truppie com preço sugerido pelo usuário

leospaula commented 6 years ago

Bom dia, fiquei interessado em realizar esta tarefa. Aguardo o contato.

alexanmtz commented 6 years ago

@leospaula, por favor, envie um e-mail para: ola@truppie.com para lhe passar os detalhes.

roniewill commented 6 years ago

Se tiver mais demandas, gostaria de contribuir, e se ninguém estiver nessa demanda, posso pegar.

alexanmtz commented 6 years ago

@roniewill, por favor, envie um e-mail para: ola@truppie.com para lhe passar os detalhes.

AlbericoD commented 6 years ago

Achei incrível, vou ler tudo certinho de novo! 👍

hugohernani commented 6 years ago

show! Tenho interesse nessa ou em outras tarefas disponíveis.

alexanmtz commented 6 years ago

O @roniewill ficou com com esta tarefa, vocês podem continuar acompanhando aqui, assim acompanhar o Pull Request e dar feedbacks sobre as mudanças e em breve teremos mais tarefas e novidades :1st_place_medal:

alexanmtz commented 6 years ago

@roniewill não estou tendo um retorno seu sobre o progresso, preciso de uma posição caso contrário deixarei ela disponível para outro

roniewill commented 6 years ago

Bom dia Alexandre

Disponibilize o job para outro dev, tive um problema com família e tive que resolver, infelizmente isso me atrapalhou Então, pode passar a outro dev

Att,

https://mailtrack.io/ Sent with Mailtrack https://chrome.google.com/webstore/detail/mailtrack-for-gmail-inbox/ndnaehgpjlnokgebbaldlmgkapkpjkkb?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality

2017-10-17 9:19 GMT-03:00 Alexandre Magno notifications@github.com:

@roniewill https://github.com/roniewill não estou tendo um retorno seu sobre o progresso, preciso de uma posição caso contrário deixarei ela disponível para outro

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/alexanmtz/truppie/issues/19#issuecomment-337213101, or mute the thread https://github.com/notifications/unsubscribe-auth/AExYLUPz999hD0t9Rr7bllGNaPFPdQCcks5stJtCgaJpZM4P1__- .

-- Web Developer

https://www.linkedin.com/in/ramonwilliam/

Whats: +55 71 99248-2078

hugohernani commented 6 years ago

Olá @alexanmtz, como o @roniewill não pode concluir, caso você pretenda disponibilizar para outro dev, ainda tenho interesse em fazer essa tarefa. :+1:

alexanmtz commented 6 years ago

Pode começar @hugohernani ! @roniewill se tiver algo iniciado, pode dar push para alguma branch e o @hugohernani começar a partir do que você fez se não tiver problema!

Espero que tudo se resolva aí e boa sorte.

Assim que tiver uma previsão de tempo me avise @hugohernani. E o que precisar de ajuda só postar aqui. Boa sorte!

alexanmtz commented 6 years ago

@hugohernani seu pull request foi integrado, favor enviar um e-mail com os dados bancários para ola@truppie.com para realizarmos a transferência. Obrigado!