- cancelar somente esta
- cancelar todas
fora do MVP cancelar a partir desta. Se usuário quiser este comportamento ele deve editar a repetição
Sistema vai persisitr a repetição e depois cancelar
molde deve receber 'cancelado_em' com Time.zone.now
função do postgres vai simular as repetições com o campo cancelado_em alimentado
Reestruturar a lógica do serviço de repetição
Acredito que o back e front vão listar as cobranças corretamente com o status "cancelado"
Modal - colocar aviso: 'Não serão canceladas cobranças pagas ou com recebimentos parciais'
Obs.: A regra acima do aviso do modal será uma validação forte no model
Caso de usuo: Usuário 'cancelou todas' e depois quer restaurar somente uma
Sistema vai persisitr a repetição e depois restaurar
molde deve receber 'cancelado_em' = nil
Acredito que precisa criar 'esta novidade' no serviço de repetição
Quando o úsuário persistiu todas repetições, o sistema deve saber que foi completa para ganharmos performance
- Migration: Criar compo repeticao_completa_em na tabela financeiro_parcelamentos
- Sistema deve alimentar este campo quando
- persisitir a ultima cobranca
- cancelar todas cobranças
- Sistema deve nulificar este campo quando
- restaurar um GHOST cancelado
- scope com_moldes_repeticoes deve ignorar os completos
- Adicinar este pedação aqui 'AND financeiro_parcelamentos.repeticao_completa IS NULL'
- Precisa fazer um join entre cobranca e parcelamentos
- criar um belongs: cobranca belongs_to :parcelamento
- dentro scope buscar precisa
- trocar isto: all.com_moldes_repeticoes
- por isto: all.joins(:parcelamento).com_moldes_repeticoes