callApiSearch method

void callApiSearch({
  1. int offset = 1,
  2. bool isShowLoading = true,
  3. int limit = 20,
  4. CallbackData? totalCalback,
  5. CallbackData? callback,
})

Implementation

void callApiSearch(
    {int offset = 1,
    bool isShowLoading = true,
    int limit = 20,
    CallbackData? totalCalback,
    CallbackData? callback}) {
  // DateTime now = DateTime.now();
  // DateTime startTime = DateTime(now.year, now.month, now.day - 7);
  // DateFormat dateFormatInput = DateFormat("yyyMMdd");

  Map<String, dynamic> nvI = <String, dynamic>{};
  nvI['ngayd'] = search.startDate.formatDateToStringYYYYMMDD();
  nvI['ngayc'] = search.endDate.formatDateToStringYYYYMMDD();
  nvI['tu'] = offset;
  nvI['den'] = limit;
  nvI['ttrang'] = search.selectStatus.id;
  nvI['nv'] = search.selectTypeProduct.id;
  nvI['ma_cn'] = search.selectUnit.id;
  nvI['so_hd'] = search.idContracts.text;
  nvI['so_hd_kenh'] = '';
  nvI['ma_dao'] = search.idUser.text;
  nvI['ma_dt'] = '';
  nvI['gcn_m'] = '';
  nvI['gcn_s'] = '';
  nvI['bien_xe'] = '';
  nvI['ten'] = search.name.text;
  nvI['kieu_tim'] = search.selectTypeContract.id;

  Map<String, dynamic> data = <String, dynamic>{};
  data['data'] = json.encode(nvI);
  data["encrypt"] = "K";
  if (isShowLoading) {
    showLoading();
  }
  CertificateAPI.find(data).then((response) {
    if (isShowLoading) {
      closeLoading();
    }
    if (response.apiCode == APICode.ok) {
      final json = response.value;
      List<CertificateObj> lsCer = CertificateObj.fromListOfResponse(json);
      if (callback != null) {
        callback(lsCer);
      }
      if (totalCalback != null) {
        totalCalback(response.total);
      }
    } else {
      closeLoading();
      showAlertDialogMessage(content: response.message);
    }
  });
}