GithubHelp home page GithubHelp logo

Avisos de renovação about associados HOT 22 CLOSED

apyb avatar apyb commented on September 28, 2024
Avisos de renovação

from associados.

Comments (22)

elyezer avatar elyezer commented on September 28, 2024

A forma como pensei em implementar esse envio de emails seria criando um cron job que iria executar um management command diariamente e enviar os emails para os usuário que estiverem nos prazos de expiração especificados.

Posso ficar responsável por essa issue.

from associados.

gilsondev avatar gilsondev commented on September 28, 2024

O Celery seria bom nesse caso.

from associados.

mondaini avatar mondaini commented on September 28, 2024

Imaginei o celery também sem nem ter terminado de ler a issue toda. Essa issue já foi feita?

from associados.

osantana avatar osantana commented on September 28, 2024

A implementação do @elyezer é mais simples e resolve bem a questão.

Alterei o status para high priority porque precisamos dela no primeiro release.

from associados.

petry avatar petry commented on September 28, 2024

podemos usar essa cara aqui

https://blog.heroku.com/archives/2011/11/12/heroku_scheduler_add_on_now_available/

o que acham?

from associados.

cadu-leite avatar cadu-leite commented on September 28, 2024

no heroku tem cron ou algo precido ?
parece que tem, mas custa $$

EDITANDO ----
https://addons.heroku.com/scheduler - free unlimited

from associados.

osantana avatar osantana commented on September 28, 2024

Passou a ser gratuito de uns tempos pra cá... é esse heroku scheduler mesmo.

Já adicionei na app associados.heroku.com

from associados.

elyezer avatar elyezer commented on September 28, 2024

Alguém está implementando essa issue?

from associados.

petry avatar petry commented on September 28, 2024

Se no esta assinado por ninguém, nao esta :)

from associados.

elyezer avatar elyezer commented on September 28, 2024

Eu posso fazer ela, porém não consigo assinar a tarefa.

Já tenho um código escrito, mas estou com uma dúvida:

O associado poderá renovar antes da hora? Ou seja, ter dois pagamentos um pagamento que expira dia 06/02/2013 e outro que expira dia 5/02/2014. Ou seja, se estou analisando os avisos que vou ter que mandar hoje, eu não deveria notificar esse associado já que a associação dele vai até 2014.

from associados.

osantana avatar osantana commented on September 28, 2024

Assumindo que "proximo_pgto = data_do_ultimo_pagamento + 1 ano"

O job vai rodar 1 vez por dia e enviar emails para todos os usuários 'WHERE today() IN (proximo_pgto - 30dias, proximo_pgto - 7dias, proximo_pgto)'

from associados.

petry avatar petry commented on September 28, 2024

@osantana, é necessário definir também qual é o conteudodo email que o usuário vai receber

from associados.

osantana avatar osantana commented on September 28, 2024

Isso é fácil. Um e-mail simples:

-------8<--------

Subject: [Associação Python Brasil] Aviso de renovação

Olá Fulano de Tal,

Esse e-mail é um lembrete de que faltam X dias para o vencimento da anuidade referente à sua associação.

Para efetuar a sua renovação é só seguir o link abaixo:

http://associados.python.org.br/...

Vale lembrar que apenas os membros em dia com sua anuidade pode participar das assembléias da Associação Python Brasil bem como outros direitos garantidos a todos os membros (ex. descontos para inscrições de eventos organizados pela associação).

Caso você já tenha efetuado o pagamento pedimos que desconsidere esse aviso.

Caso tenha alguma dúvida é só entrar em contato conosco através do e-mail: [email protected].

Obrigado,
Equipe da Associação Python Brasil

PS. O sistema de controle de associados está em fase de implantação. Caso tenha encontrado algum problema pedimos a gentileza de nos avisar através do mesmo endereço de e-mail: [email protected].

--------8<----------

Subject: [Associação Python Brasil] Anuidade vencida

Olá Fulano de Tal,

Gostaríamos de informá-lo que a anuidade referente à sua associação venceu hoje (DATA).

Você pode renová-la a qualquer momento. Para isso é só seguir o link abaixo:

http://associados.python.org.br/...

Vale lembrar que apenas os membros em dia com sua anuidade pode participar das assembléias da Associação Python Brasil bem como outros direitos garantidos a todos os membros (ex. descontos para inscrições de eventos organizados pela associação).

Caso você já tenha efetuado o pagamento pedimos que desconsidere esse aviso.

Caso tenha alguma dúvida é só entrar em contato conosco através do e-mail: [email protected].

Obrigado,
Equipe da Associação Python Brasil

PS. O sistema de controle de associados está em fase de implantação. Caso tenha encontrado algum problema pedimos a gentileza de nos avisar através do mesmo endereço de e-mail: [email protected].

-------------8<------------------

from associados.

osantana avatar osantana commented on September 28, 2024

Estive pensando na regra de negócio que coloquei acima. Talvez o correto seja:

proximo_pagto = XX/YY/ZZZZ

XX = dia do primeiro pagamento (data da associação)
YY = mês do primeiro pagamento (data da associação)
ZZZZ = ano do último pagamento + 1

Concordam?

from associados.

elyezer avatar elyezer commented on September 28, 2024

Considerando renovação de domínios que tem duração de um ano o que vejo é:

XX - 1 dia da data
YY
ZZZZ + 1

Quanto aos avisos de renovação serão 30, 15 e 7 dias antes de terminar. Além disso terá o aviso de que a associação expirou. Correto?

from associados.

osantana avatar osantana commented on September 28, 2024

Isso mesmo...

from associados.

elyezer avatar elyezer commented on September 28, 2024

Obrigado pelos esclarecimentos.

Hoje a noite devo mandar o pull request.

from associados.

elyezer avatar elyezer commented on September 28, 2024

Faltam duas coisas para eu terminar a issue:

Posso ter no código o endereço de contato da associação?

Qual a url para renovar a associação? Pelo que vi no código seria a payment?

Tenho uma observação, quanto ao formato da data, vamos definir no settings ou devo adicionar o filtro date no template que gera a mensagem do email?

from associados.

cadu-leite avatar cadu-leite commented on September 28, 2024

Oi Elyezer,
vou dar meu pitaco aqui ...
1 - coloca o formato no settings, depois se alguém achar que precisa de outros retiramos e fazemos no template.
2 - endereço da apyb. num rola uma var também no settings ?
faz o trem funcionar e depois acertamos os pontos menores.

from associados.

elyezer avatar elyezer commented on September 28, 2024

Ótimo, só perguntei para ver se mais alguém concordava em deixar no settings.

from associados.

petry avatar petry commented on September 28, 2024

👍 para as dicas do cadu! :)

from associados.

petry avatar petry commented on September 28, 2024

adicionei o comando no scheduler do heroku

from associados.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.