validarParcelaDisponivelParaEmissao static method
- int parcelaParaEmitir
Valida se a parcela está disponível para emissão
Implementation
static String? validarParcelaDisponivelParaEmissao(int parcelaParaEmitir) {
final hoje = DateTime.now();
final parcelaStr = parcelaParaEmitir.toString();
if (parcelaStr.length != 6) {
return 'Formato de parcela inválido';
}
final ano = int.parse(parcelaStr.substring(0, 4));
final mes = int.parse(parcelaStr.substring(4, 6));
final parcelaData = DateTime(ano, mes);
// Verifica se a parcela não é muito antiga (mais de 5 anos)
final limiteAntigo = DateTime(hoje.year - 5, hoje.month);
if (parcelaData.isBefore(limiteAntigo)) {
return 'Parcela muito antiga para emissão';
}
// Verifica se a parcela não é muito futura (mais de 1 ano)
final limiteFuturo = DateTime(hoje.year + 1, hoje.month);
if (parcelaData.isAfter(limiteFuturo)) {
return 'Parcela muito futura para emissão';
}
return null;
}