Update: 2026-06-11 18:22:57

This commit is contained in:
Hamza-Ayed
2026-06-11 18:22:59 +03:00
parent c5170a88d2
commit 727068b668
629 changed files with 46050 additions and 46109 deletions

View File

@@ -1,3 +1,4 @@
import 'package:siro_rider/constant/currency.dart';
import 'package:siro_rider/constant/colors.dart';
import 'package:siro_rider/constant/links.dart';
import 'package:siro_rider/constant/style.dart';
@@ -188,7 +189,7 @@ class ApplyOrderWidget extends StatelessWidget {
),
),
Text(
'SYP'.tr,
CurrencyHelper.currency,
style: TextStyle(
fontSize: 12,
fontWeight: FontWeight.bold,

View File

@@ -551,7 +551,7 @@ class Details extends StatelessWidget {
],
),
Text(
'Cost for passenger ${controller.totalPassenger.toStringAsFixed(2)} ',
'Cost for passenger ${double.parse(controller.totalPassenger.toString()).toStringAsFixed(2)} ',
style: AppStyle.title,
),
],

View File

@@ -1,4 +1,6 @@
import 'package:siro_rider/constant/currency.dart';
import 'package:flutter/material.dart';
import 'package:siro_rider/controller/home/map/map_engine_controller.dart';
import 'package:get/get.dart';
import 'package:siro_rider/constant/box_name.dart';
import 'package:siro_rider/constant/colors.dart';
@@ -245,7 +247,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
borderRadius: BorderRadius.circular(20),
),
child: Text(
'${_getPassengerPriceText(carTypes[controller.selectedIndex], controller)} ${'SYP'.tr}',
'${_getPassengerPriceText(carTypes[controller.selectedIndex], controller)} ${CurrencyHelper.currency}',
style: const TextStyle(
color: Colors.white,
fontSize: 13,
@@ -413,7 +415,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
),
child: FittedBox(
child: Text(
'${_getPassengerPriceText(carType, controller)} ${'SYP'.tr}',
'${_getPassengerPriceText(carType, controller)} ${CurrencyHelper.currency}',
style: TextStyle(
fontSize: 11,
fontWeight: FontWeight.w700,
@@ -537,7 +539,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
const SizedBox(width: 10),
Expanded(
child: Text(
'${'You have a negative balance of'.tr} ${passengerWallet.toStringAsFixed(2)} ${'SYP'.tr}.',
'${'You have a negative balance of'.tr} ${passengerWallet.toStringAsFixed(2)} ${CurrencyHelper.currency}.',
style: TextStyle(
color: Colors.red.shade800,
fontWeight: FontWeight.w600,
@@ -557,7 +559,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
// ═══════════════════════════════════════════════════════════════════════════
String _getPassengerPriceText(
CarType carType, RideLifecycleController mapPassengerController) {
double rawPrice;
String rawPrice;
switch (carType.carType) {
case 'Comfort':
rawPrice = mapPassengerController.totalPassengerComfort;
@@ -587,9 +589,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
default:
return '...';
}
final int roundedPrice = rawPrice.round();
final formatter = NumberFormat.decimalPattern();
return formatter.format(roundedPrice);
return rawPrice;
}
// ═══════════════════════════════════════════════════════════════════════════
@@ -743,7 +743,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
borderRadius: BorderRadius.circular(20),
),
child: Text(
'${_getPassengerPriceText(carType, mapPassengerController)} ${'SYP'.tr}',
'${_getPassengerPriceText(carType, mapPassengerController)} ${CurrencyHelper.currency}',
style: const TextStyle(
fontSize: 16,
fontWeight: FontWeight.w800,
@@ -931,7 +931,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
}
}
double _getOriginalPrice(
String _getOriginalPrice(
CarType carType, RideLifecycleController mapPassengerController) {
switch (carType.carType) {
case 'Comfort':
@@ -947,15 +947,11 @@ class CarDetailsTypeToChoose extends StatelessWidget {
case 'Lady':
return mapPassengerController.totalPassengerLady;
default:
return 0.0;
return '0';
}
}
Widget _buildRayehGaiOption(
BuildContext context,
RideLifecycleController mapPassengerController,
String carTypeName,
double price) {
Widget _buildRayehGaiOption(BuildContext context, RideLifecycleController mapPassengerController, String carTypeName, String price) {
return GestureDetector(
onTap: () {
Navigator.of(context).pop();
@@ -969,7 +965,7 @@ class CarDetailsTypeToChoose extends StatelessWidget {
padding: const EdgeInsets.all(8.0),
child: Column(children: [
Text(carTypeName.tr),
Text(price.toStringAsFixed(0))
Text(double.parse(price).toStringAsFixed(0))
])),
);
}
@@ -1031,7 +1027,7 @@ class BurcMoney extends StatelessWidget {
),
TextSpan(
text:
'${'You have a balance of'.tr} ${passengerWallet.toStringAsFixed(2)} ${box.read(BoxName.countryCode) == 'Egypt' ? 'LE'.tr : 'SYP'.tr} ${'due to a previous trip.'.tr}',
'${'You have a balance of'.tr} ${passengerWallet.toStringAsFixed(2)} ${box.read(BoxName.countryCode) == 'Egypt' ? 'LE'.tr : CurrencyHelper.currency} ${'due to a previous trip.'.tr}',
style: AppStyle.subtitle.copyWith(
color: Colors.white,
),

View File

@@ -1,3 +1,4 @@
import 'package:siro_rider/constant/currency.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_rider/constant/box_name.dart';
@@ -80,7 +81,7 @@ class CashConfirmPageShown extends StatelessWidget {
icon: Icons.account_balance_wallet_outlined,
title: '${AppInformation.appName} Balance'.tr,
subtitle:
'${'Balance:'.tr} ${box.read(BoxName.passengerWalletTotal) ?? '0.0'} ${'SYP'.tr}',
'${'Balance:'.tr} ${box.read(BoxName.passengerWalletTotal) ?? '0.0'} ${CurrencyHelper.currency}',
isSelected: paymentCtrl.isWalletChecked,
selectedColor: selectedColor,
onTap: () =>
@@ -107,7 +108,7 @@ class CashConfirmPageShown extends StatelessWidget {
final bool isWalletSufficient = (double.tryParse(
box.read(BoxName.passengerWalletTotal) ?? '0') ??
0) >=
controller.totalPassenger;
double.parse(controller.totalPassenger.toString());
// إذا تم اختيار المحفظة والرصيد غير كافٍ
if (paymentCtrl.isWalletChecked && !isWalletSufficient) {

View File

@@ -1,3 +1,4 @@
import 'package:siro_rider/constant/currency.dart';
import 'package:flutter/material.dart';
import 'package:flutter_font_icons/flutter_font_icons.dart';
import 'package:get/get.dart';
@@ -7,7 +8,7 @@ import 'package:intl/intl.dart';
import '../../../constant/box_name.dart';
import '../../../constant/colors.dart';
import '../../../constant/links.dart';
import '../../../constant/style.dart';
import 'package:siro_rider/controller/functions/country_logic.dart';
import '../../../controller/functions/audio_record1.dart';
import '../../../controller/functions/launch.dart';
import '../../../controller/functions/toast.dart';
@@ -17,6 +18,7 @@ import '../../../controller/home/map/ride_state.dart';
import '../../../controller/profile/profile_controller.dart';
import '../../../main.dart';
import '../../../views/home/profile/complaint_page.dart';
import '../../../controller/functions/country_logic.dart';
class RideBeginPassenger extends StatelessWidget {
const RideBeginPassenger({super.key});
@@ -115,7 +117,8 @@ class RideBeginPassenger extends StatelessWidget {
decoration: BoxDecoration(
shape: BoxShape.circle,
border: Border.all(
color: AppColor.primaryColor.withValues(alpha: 0.5), width: 1.5),
color: AppColor.primaryColor.withValues(alpha: 0.5),
width: 1.5),
),
child: CircleAvatar(
radius: 24,
@@ -207,7 +210,7 @@ class RideBeginPassenger extends StatelessWidget {
color: AppColor.primaryColor,
),
),
Text('SYP',
Text(CurrencyHelper.currency,
style: TextStyle(fontSize: 9, color: AppColor.grayColor)),
],
),
@@ -240,7 +243,8 @@ class RideBeginPassenger extends StatelessWidget {
box.write(BoxName.sosPhonePassenger,
profileController.prfoileData['sosPhone']);
} else {
makePhoneCall('112');
makePhoneCall(CountryLogic.getEmergencyNumber(
box.read(BoxName.countryCode) ?? 'Syria'));
}
},
),
@@ -255,13 +259,12 @@ class RideBeginPassenger extends StatelessWidget {
// لا يوجد رقم طوارئ — نعرض الديالوج لإدخاله
await uiController.shareTripWithFamily();
} else {
final formattedPhone = uiController.formatSyrianPhoneNumber(
phone.toString());
final formattedPhone =
CountryLogic.formatCurrentCountryPhone(phone.toString());
uiController.sendWhatsapp(formattedPhone);
}
},
),
_compactBtn(
icon: Icons.share,
label: 'Share'.tr,
@@ -287,12 +290,14 @@ class RideBeginPassenger extends StatelessWidget {
if (!audioCtx.isRecording) {
await audioCtx.startRecording(rideId: controller.rideId);
if (context.mounted) {
Toast.show(context, 'Start Record'.tr, AppColor.greenColor);
Toast.show(
context, 'Start Record'.tr, AppColor.greenColor);
}
} else {
await audioCtx.stopRecording();
if (context.mounted) {
Toast.show(context, 'Record saved'.tr, AppColor.greenColor);
Toast.show(
context, 'Record saved'.tr, AppColor.greenColor);
}
}
},

View File

@@ -1,7 +1,9 @@
import 'package:siro_rider/constant/currency.dart';
import 'package:siro_rider/controller/functions/launch.dart';
import 'package:flutter/material.dart';
import 'package:flutter_font_icons/flutter_font_icons.dart';
import 'package:get/get.dart';
import '../../../controller/functions/country_logic.dart';
// ... استيراد ملفاتك الأخرى ...
import '../../../constant/box_name.dart';
@@ -38,7 +40,7 @@ class RideFromStartApp extends StatelessWidget {
final driverName = rideData['driverName'] ?? 'Captain'.tr;
final driverRate = controller.driverRate;
final carType = rideData['carType'] ?? 'Car'.tr;
final carModel = controller.model ?? '';
final carModel = controller.model;
final arrivalTime = box.read(BoxName.arrivalTime) ?? '--:--';
// تحديد البيانات للعرض
@@ -177,7 +179,7 @@ class RideFromStartApp extends StatelessWidget {
"Distance".tr),
_buildVerticalDivider(),
_buildInfoColumn(
Icons.attach_money, "$displayPrice SYP", "Price".tr),
Icons.attach_money, "$displayPrice ${CurrencyHelper.currency}", "Price".tr),
],
),
),
@@ -213,7 +215,7 @@ class RideFromStartApp extends StatelessWidget {
flex: 1,
child: ElevatedButton.icon(
onPressed: () =>
makePhoneCall(box.read(BoxName.sosPhonePassenger)),
makePhoneCall(CountryLogic.getEmergencyNumber(box.read(BoxName.countryCode) ?? 'Syria')),
icon: const Icon(Icons.sos, color: Colors.white),
label: Text("SOS".tr,
style: const TextStyle(color: Colors.white)),

View File

@@ -14,6 +14,7 @@ import '../../../controller/functions/launch.dart';
import '../../../controller/functions/toast.dart';
import '../../../controller/home/map/ride_lifecycle_controller.dart';
import '../../../controller/home/map/ui_interactions_controller.dart';
import '../../../controller/functions/country_logic.dart';
class VipRideBeginPassenger extends StatelessWidget {
const VipRideBeginPassenger({
@@ -196,7 +197,7 @@ class VipRideBeginPassenger extends StatelessWidget {
profileController.prfoileData['sosPhone']);
}
} else {
makePhoneCall('122');
makePhoneCall(CountryLogic.getEmergencyNumber(box.read(BoxName.countryCode) ?? 'Syria'));
// box.read(BoxName.sosPhonePassenger));
}
},