dateRange static method

Future<DateRangePickerResult?> dateRange(
  1. BuildContext context,
  2. String? oldStartYYYYMMDD,
  3. String? oldEndYYYYMMDD
)

Implementation

static Future<DateRangePickerResult?> dateRange(BuildContext context, String? oldStartYYYYMMDD , String? oldEndYYYYMMDD ) async {

  // Log.i("dateRange() - oldStartYYYYMMDD: $oldStartYYYYMMDD");
  var oldRange = null;
  if( oldStartYYYYMMDD != null ) {
    String parseStartDDMMYYYY =  from_yyyymmdd_to_ddmmyyyy(oldStartYYYYMMDD);
    String parseEndDDMMYYYY =  from_yyyymmdd_to_ddmmyyyy(oldEndYYYYMMDD!);

    DateTime editStart = new DateFormat("dd/MM/yyyy").parse(parseStartDDMMYYYY!);
    DateTime editEnd = new DateFormat("dd/MM/yyyy").parse(parseEndDDMMYYYY!);
    oldRange = DateTimeRange( start: editStart , end: editEnd );
    // Log.i("dateRange() - format editStart: $editStart");
  }

  DateTimeRange? picked = await showDateRangePicker(
      context: context,
      firstDate: DateTime(DateTime.now().year-1 ),
      lastDate: DateTime(DateTime.now().year+1 ),
      initialDateRange: oldRange,
      initialEntryMode : DatePickerEntryMode.calendar,
  );
  if(picked == null ) return null;
  String start = DateFormat('yyyy/MM/dd').format(picked.start );
  String end = DateFormat('yyyy/MM/dd').format(picked.end ); // hh:mm:ss
  var result = DateRangePickerResult(start, end );
  // Log.i( "DialogPickDateTime - result: " + result.toString() );
  return result;
}