|
|
|
|
@ -28,6 +28,7 @@ class MarathonApiClient {
|
|
|
|
|
return await ApiClient().postJsonForObject(
|
|
|
|
|
(json) {
|
|
|
|
|
MarathonGenericModel marathonModel = MarathonGenericModel.fromJson(json);
|
|
|
|
|
AppState().setMarathonToken = marathonModel.data["token"] ?? "";
|
|
|
|
|
return marathonModel.data["token"] ?? "";
|
|
|
|
|
},
|
|
|
|
|
ApiConsts.marathonParticipantLoginUrl,
|
|
|
|
|
@ -43,14 +44,17 @@ class MarathonApiClient {
|
|
|
|
|
},
|
|
|
|
|
ApiConsts.marathonProjectGetUrl,
|
|
|
|
|
<String, dynamic>{},
|
|
|
|
|
token: AppState().getMarathonToken ?? await getMarathonToken(),
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<MarathonDetailModel> getMarathonDetails() async {
|
|
|
|
|
String payrollString = AppState().postParamsObject?.payrollCodeStr.toString() ?? "CS";
|
|
|
|
|
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(ApiConsts.marathonUpcomingUrl + payrollString, token: AppState().getMarathonToken ?? await getMarathonToken());
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(
|
|
|
|
|
ApiConsts.marathonUpcomingUrl + payrollString,
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
var json = jsonDecode(response.body);
|
|
|
|
|
logger.i("json in getMarathonDetails: $json");
|
|
|
|
|
@ -83,7 +87,7 @@ class MarathonApiClient {
|
|
|
|
|
},
|
|
|
|
|
ApiConsts.marathonJoinParticipantUrl,
|
|
|
|
|
jsonObject,
|
|
|
|
|
token: AppState().getMarathonToken ?? await getMarathonToken(),
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -114,7 +118,7 @@ class MarathonApiClient {
|
|
|
|
|
},
|
|
|
|
|
ApiConsts.marathonNextQuestionUrl,
|
|
|
|
|
jsonObject,
|
|
|
|
|
token: AppState().getMarathonToken ?? await getMarathonToken(),
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -124,17 +128,25 @@ class MarathonApiClient {
|
|
|
|
|
return await ApiClient().postJsonForObject(
|
|
|
|
|
(json) {
|
|
|
|
|
MarathonGenericModel marathonModel = MarathonGenericModel.fromJson(json);
|
|
|
|
|
return marathonModel.isSuccessful ?? false;
|
|
|
|
|
if (marathonModel.data != null) {
|
|
|
|
|
bool isOptionCorrect = marathonModel.data["isCorrect"];
|
|
|
|
|
return isOptionCorrect;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
},
|
|
|
|
|
ApiConsts.marathonSubmitAnswerUrl,
|
|
|
|
|
jsonObject,
|
|
|
|
|
token: AppState().getMarathonToken ?? await getMarathonToken(),
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<int?> getQualifiers({required String marathonId}) async {
|
|
|
|
|
Map<String, String> params = <String, String>{"marathonId": marathonId};
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(ApiConsts.marathonQualifiersUrl, queryParameters: params, token: AppState().getMarathonToken ?? await getMarathonToken());
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(
|
|
|
|
|
ApiConsts.marathonQualifiersUrl,
|
|
|
|
|
queryParameters: params,
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
var json = jsonDecode(response.body);
|
|
|
|
|
logger.i("json in getQualifiers: $json");
|
|
|
|
|
@ -149,7 +161,11 @@ class MarathonApiClient {
|
|
|
|
|
|
|
|
|
|
Future<List<WinnerModel>?> getSelectedWinner({required String marathonId}) async {
|
|
|
|
|
Map<String, String> params = <String, String>{"marathonId": marathonId};
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(ApiConsts.marathonSelectedWinner, queryParameters: params, token: AppState().getMarathonToken ?? await getMarathonToken());
|
|
|
|
|
Response response = await ApiClient().getJsonForResponse(
|
|
|
|
|
ApiConsts.marathonSelectedWinner,
|
|
|
|
|
queryParameters: params,
|
|
|
|
|
token: AppState().getMarathonToken == null || AppState().getMarathonToken == "" ? await getMarathonToken() : AppState().getMarathonToken,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
var json = jsonDecode(response.body);
|
|
|
|
|
logger.i("json in getSelectedWinner: $json");
|
|
|
|
|
|