add new featurs like new stat page
This commit is contained in:
@@ -218,22 +218,34 @@ class ChallengesController extends GetxController {
|
||||
}
|
||||
}
|
||||
|
||||
// Fetch weekly aggregate for weekly challenges
|
||||
var weeklyRes = await CRUD().get(
|
||||
// 2. Fetch weekly earnings from PAYMENT server
|
||||
var weeklyEarningsRes = await CRUD().getWallet(
|
||||
link: AppLink.getDriverWeekPaymentMove,
|
||||
payload: {'driverID': box.read(BoxName.driverID).toString()},
|
||||
);
|
||||
|
||||
double weeklyEarnings = 0;
|
||||
if (weeklyEarningsRes != null && weeklyEarningsRes != 'failure') {
|
||||
var data = jsonDecode(weeklyEarningsRes);
|
||||
if (data['message'] is List && data['message'].isNotEmpty) {
|
||||
weeklyEarnings = double.tryParse(data['message'][0]['totalAmount']?.toString() ?? '0') ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
// 3. Fetch weekly trips and hours from RIDES server (avoiding earnings join)
|
||||
var weeklyAggregateRes = await CRUD().get(
|
||||
link: AppLink.getWeeklyAggregate,
|
||||
payload: {'driver_id': box.read(BoxName.driverID).toString()},
|
||||
);
|
||||
|
||||
int weeklyTrips = 0;
|
||||
double weeklyEarnings = 0;
|
||||
double weeklyHours = 0;
|
||||
|
||||
if (weeklyRes != null && weeklyRes != 'failure') {
|
||||
var data = jsonDecode(weeklyRes);
|
||||
if (weeklyAggregateRes != null && weeklyAggregateRes != 'failure') {
|
||||
var data = jsonDecode(weeklyAggregateRes);
|
||||
if (data['message'] is List) {
|
||||
for (var day in data['message']) {
|
||||
weeklyTrips += int.tryParse(day['trips']?.toString() ?? '0') ?? 0;
|
||||
weeklyEarnings += double.tryParse(day['earnings']?.toString() ?? '0') ?? 0;
|
||||
weeklyHours += double.tryParse(day['hours']?.toString() ?? '0') ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user