# Avaliador de multas
## Passo 1: Ler o projeto
https://hackmd.io/@Toijiro/ryomq0WQs
### Exemplo da execução do programa:
https://hackmd.io/T0XIcTWeT1ShULl5a2EsDw?view
## Passo 2: Criar tarefas
### Tarefa 1
Recebe um arquivo CSV contendo diversos RG's, placas dos veículos, datas de infrações e notificações, data de pagamento, tipos de infração e nomes dos infratores. Retorna na tela os RG's dos infratores.
**input**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**output**:
"467191153"
"467191153"
"467191153"
"467191153"
"276787067"
"149178360"
### Tarefa 2
Retorna na tela os nomes à frente de seus respectivos RG's separados por ponto e vírgula.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro
467191153;Josevaldo Cal. O. Teiro
467191153;Josevaldo Cal. O. Teiro
467191153;Josevaldo Cal. O. Teiro
276787067;Osvaldo Plínio
149178360;Gerusa Juventina
### Tarefa 3
Retorna na tela todas as placas utilizadas à frente dos respectivos RG's, separados por ponto e vírgula.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420
467191153;Josevaldo Cal. O. Teiro;KVI-2310
467191153;Josevaldo Cal. O. Teiro;KVI-2310
467191153;Josevaldo Cal. O. Teiro;ARE-9420
276787067;Osvaldo Plínio;BIO-9626
149178360;Gerusa Juventina;SOS-3257
### Tarefa 4
Retorna na tela os RG's e as placas agrupados, separando as placas por vírgula.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;Média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310
276787067;Osvaldo Plínio;BIO-9626
149178360;Gerusa Juventina;SOS-3257
### Tarefa 5
Retorna na tela os pontos totais na carteira agrupados por RG, considerando apenas os tipos de infrações.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;26
276787067;Osvaldo Plínio;BIO-9626;5
149178360;Gerusa Juventina;SOS-3257;4
### Tarefa 6
Retorna na tela apenas os pontos válidos na carteira por RG.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;19
276787067;Osvaldo Plínio;BIO-9626;5
149178360;Gerusa Juventina;SOS-3257;4
### Tarefa 7
Retorna na tela os valores válidos das multas agrupados por RG.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;19;782.17
276787067;Osvaldo Plínio;BIO-9626;5;195.23
149178360;Gerusa Juventina;SOS-3257;4;130.16
### Tarefa 8
Retorna na tela o valor total das multas considerando suas validades e descontos.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;19;469.30
276787067;Osvaldo Plínio;BIO-9626;5;117.13
149178360;Gerusa Juventina;SOS-3257;4;78.10
### Tarefa 9
Retorna na tela o valor das multas formatado em BRL.
### Tarefa 10
Retorna na tela os status das carteiras por RG.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;Ativa;19;469,30
276787067;Osvaldo Plínio;BIO-9626;Ativa;5;117,13
149178360;Gerusa Juventina;SOS-3257;Ativa;4;78,10
### Tarefa 11
Retorna um arquivo CSV contendo RG dos infratores, nome, placas dos veículos, status da CNH, pontos na CNH e valor total das multas.
**Entrada**:
Placa,Tipo de infração,Data da infração,Data da notificação,Data de pagamento,RG do infrator,Nome do infrator
ARE-9420;Gravíssima;1999-11-05 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Gravíssima;2000-01-01 15:00:00;2000-01-04 10:00:00;;467191153;Josevaldo Cal. O. Teiro
KVI-2310;Grave;2000-01-04 15:00:00;2000-01-05 10:00:00;;467191153;Josevaldo Cal. O. Teiro
ARE-9420;Gravíssima;2000-01-10 15:00:00;2000-01-25 10:00:00;;467191153;Josevaldo Cal. O. Teiro
BIO-9626;Grave;2000-02-05 14:00:00;2000-02-10 11:00:00;;276787067;Osvaldo Plínio
SOS-3257;média;2000-08-16 16:00:00;2000-02-11 12:00:00;;149178360;Gerusa Juventina
**Saída**:
RG do infrator;Nome do infrator;Placas dos veículos do infrator;Status da CNH;Pontos da CNH;Valor total
467191153;Josevaldo Cal. O. Teiro;ARE-9420, KVI-2310;Ativa;19;469,30
276787067;Osvaldo Plínio;BIO-9626;Ativa;5;117,13
149178360;Gerusa Juventina;SOS-3257;Ativa;4;78,10