isDataConsolidacaoValida property

bool get isDataConsolidacaoValida

Valida se a data de consolidação está no formato correto (AAAAMMDD)

Implementation

bool get isDataConsolidacaoValida {
  if (dataConsolidacao == null) return true;
  if (dataConsolidacao!.length != 8) return false;
  if (!RegExp(r'^\d{8}$').hasMatch(dataConsolidacao!)) return false;

  final ano = int.parse(dataConsolidacao!.substring(0, 4));
  final mes = int.parse(dataConsolidacao!.substring(4, 6));
  final dia = int.parse(dataConsolidacao!.substring(6, 8));

  return ano >= 2018 &&
      ano <= 9999 &&
      mes >= 1 &&
      mes <= 12 &&
      dia >= 1 &&
      dia <= 31;
}