customerCardCreate method

Future<Card?> customerCardCreate({
  1. required Card? dataCard,
  2. required dynamic token,
})

Implementation

Future<Card?> customerCardCreate({
  required Card? dataCard,
  required token,
}) {
  final String path = "/customers/${dataCard?.customerId}/cards";
  final Map<String, dynamic> body = {
    'token': token,
  };

  Future<Card?> futureCustomerModel = httpService
      .postWithCredentials(path: path, body: body)
      .then((http.Response response) {
    final decodeData = json.decode(response.body);

    if (response.statusCode == 200 || response.statusCode == 201) {
      if (decodeData != null) {
        final card = Card.fromJson(decodeData);
        return card;
      }
    } else if (response.statusCode == 400 &&
        decodeData != null &&
        decodeData['cause'] != null) {
      final msg = _readErrorCode(decodeData, 'leyendo la tarjeta');
      final card = Card(error: msg);
      return card;
    }
    return null;
  });
  return futureCustomerModel;
}