إضافة الهوية الجديدة Tripz

This commit is contained in:
Hamza-Ayed
2026-07-29 02:31:04 +03:00
parent ecbe245b77
commit b9a97effe5
634 changed files with 5149 additions and 5294 deletions
@@ -4,9 +4,9 @@ import 'package:fl_chart/fl_chart.dart';
import 'package:flutter/material.dart';
import 'package:flutter_staggered_animations/flutter_staggered_animations.dart';
import 'package:get/get.dart';
import 'package:siro_admin/views/admin/drivers/driver_gift_check_page.dart';
import 'package:siro_admin/views/admin/drivers/driver_tracker_screen.dart';
import 'package:siro_admin/views/admin/quality/blacklist_page.dart';
import 'package:tripz_admin/views/admin/drivers/driver_gift_check_page.dart';
import 'package:tripz_admin/views/admin/drivers/driver_tracker_screen.dart';
import 'package:tripz_admin/views/admin/quality/blacklist_page.dart';
import '../../constant/box_name.dart';
import '../../controller/admin/dashboard_controller.dart';
@@ -36,10 +36,10 @@ import 'static/advanced_analytics_page.dart';
import 'financial/financial_v2_page.dart';
import 'security/audit_logs_page.dart';
import 'analytics/live_analytics_page.dart';
import 'package:siro_admin/views/widgets/responsive_layout.dart';
import 'package:siro_admin/views/widgets/web_sidebar.dart';
import 'package:tripz_admin/views/widgets/responsive_layout.dart';
import 'package:tripz_admin/views/widgets/web_sidebar.dart';
import '../transit/org_list_page.dart';
import 'package:siro_admin/views/widgets/glass_container.dart';
import 'package:tripz_admin/views/widgets/glass_container.dart';
class AdminHomePage extends StatefulWidget {
const AdminHomePage({super.key});
@@ -329,7 +329,7 @@ class _AdminHomePageState extends State<AdminHomePage>
colors: [cs.primary, cs.tertiary],
).createShader(bounds),
child: const Text(
'Siro Admin',
'Tripz Admin',
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.w700,
@@ -1148,7 +1148,7 @@ class _AdminHomePageState extends State<AdminHomePage>
ActionItem('السائقون', Icons.drive_eta_rounded, const Color(0xFFF59E0B),
() => Get.to(() => CaptainsPage())),
ActionItem('المراقب', Icons.track_changes_rounded, const Color(0xFFEF4444),
() => Get.to(() => SiroTrackerScreen())),
() => Get.to(() => TripzTrackerScreen())),
],
),
ActionCategory(
@@ -502,7 +502,7 @@ class _MapTabState extends State<_MapTab> with AutomaticKeepAliveClientMixin {
urlTemplate:
'https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png',
subdomains: const ['a', 'b', 'c', 'd'],
userAgentPackageName: 'com.siromove.admin',
userAgentPackageName: 'com.tripzmove.admin',
),
CircleLayer(circles: markers),
],
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/views/admin/captain/register_captain.dart';
import 'package:siro_admin/views/widgets/my_scafold.dart';
import 'package:tripz_admin/views/admin/captain/register_captain.dart';
import 'package:tripz_admin/views/widgets/my_scafold.dart';
import '../../../constant/colors.dart';
import '../../../controller/admin/register_captain_controller.dart';
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import '../../../constant/links.dart';
import '../../../controller/admin/captain_admin_controller.dart';
import '../../widgets/elevated_btn.dart';
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/admin/register_captain_controller.dart';
import 'package:tripz_admin/controller/admin/register_captain_controller.dart';
import '../../../../constant/colors.dart';
import '../../../../constant/links.dart';
import '../../../../constant/style.dart';
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/drivers/driver_not_active_controller.dart';
import 'package:tripz_admin/controller/drivers/driver_not_active_controller.dart';
import 'driver_details_not_active_page.dart';
class DriversPendingPage extends StatelessWidget {
@@ -1,8 +1,8 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/admin/dashboard_v2_controller.dart';
import 'package:tripz_admin/controller/admin/dashboard_v2_controller.dart';
import 'package:flutter_staggered_animations/flutter_staggered_animations.dart';
import 'package:siro_admin/views/widgets/glass_container.dart';
import 'package:tripz_admin/views/widgets/glass_container.dart';
class DashboardV2Widget extends StatelessWidget {
const DashboardV2Widget({super.key});
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart'; // For Get.width if needed, and .tr
import 'package:siro_admin/constant/colors.dart'; // Assuming AppColor is here
import 'package:siro_admin/constant/style.dart'; // Assuming AppStyle is here
import 'package:tripz_admin/constant/colors.dart'; // Assuming AppColor is here
import 'package:tripz_admin/constant/style.dart'; // Assuming AppStyle is here
class DashboardStatCard extends StatelessWidget {
final String title;
@@ -1,9 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/controller/functions/wallet.dart';
import 'package:siro_admin/views/widgets/my_scafold.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/controller/functions/wallet.dart';
import 'package:tripz_admin/views/widgets/my_scafold.dart';
import '../../../controller/drivers/driverthebest.dart';
@@ -1,9 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/controller/functions/wallet.dart';
import 'package:siro_admin/views/widgets/snackbar.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/controller/functions/wallet.dart';
import 'package:tripz_admin/views/widgets/snackbar.dart';
import 'package:tripz_admin/constant/links.dart';
class DriverGiftCheckerController extends GetxController {
final TextEditingController phoneController = TextEditingController();
@@ -1,10 +1,10 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:get_storage/get_storage.dart'; // Ensure get_storage is in pubspec.yaml
import 'package:siro_admin/controller/functions/wallet.dart';
import 'package:siro_admin/views/widgets/snackbar.dart';
import 'package:tripz_admin/controller/functions/wallet.dart';
import 'package:tripz_admin/views/widgets/snackbar.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:tripz_admin/constant/links.dart';
// --- New Controller to handle the specific JSON URL ---
class DriverCacheController extends GetxController {
@@ -5,21 +5,21 @@ import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
import 'package:http/http.dart' as http;
import 'package:siro_admin/constant/links.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:url_launcher/url_launcher.dart';
import '../../../constant/box_name.dart';
import '../../../controller/functions/crud.dart';
import '../../../main.dart';
class SiroTrackerScreen extends StatefulWidget {
const SiroTrackerScreen({super.key});
class TripzTrackerScreen extends StatefulWidget {
const TripzTrackerScreen({super.key});
@override
State<SiroTrackerScreen> createState() => _SiroTrackerScreenState();
State<TripzTrackerScreen> createState() => _TripzTrackerScreenState();
}
class _SiroTrackerScreenState extends State<SiroTrackerScreen>
class _TripzTrackerScreenState extends State<TripzTrackerScreen>
with TickerProviderStateMixin {
final MapController _mapController = MapController();
List<Marker> _markers = [];
@@ -516,7 +516,7 @@ class _SiroTrackerScreenState extends State<SiroTrackerScreen>
children: [
TileLayer(
urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png',
userAgentPackageName: 'com.siromove.admin',
userAgentPackageName: 'com.tripzmove.admin',
),
MarkerLayer(markers: _markers),
],
@@ -1,9 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/controller/functions/wallet.dart';
import 'package:siro_admin/views/widgets/my_scafold.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/controller/functions/wallet.dart';
import 'package:tripz_admin/views/widgets/my_scafold.dart';
import '../../../controller/drivers/driverthebest.dart';
@@ -3,9 +3,9 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/views/widgets/snackbar.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/views/widgets/snackbar.dart';
class DriverLocation {
final double latitude;
@@ -405,7 +405,7 @@ class RideMonitorScreen extends StatelessWidget {
children: [
TileLayer(
urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png',
userAgentPackageName: 'com.siromove.admin',
userAgentPackageName: 'com.tripzmove.admin',
),
if (controller.routePolyline.isNotEmpty)
PolylineLayer(
@@ -1,8 +1,8 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/employee_controller/employee_controller.dart';
import 'package:siro_admin/controller/functions/upload_image copy.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/employee_controller/employee_controller.dart';
import 'package:tripz_admin/controller/functions/upload_image copy.dart';
import 'package:url_launcher/url_launcher.dart';
class EmployeePage extends StatelessWidget {
@@ -1,8 +1,8 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/main.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/main.dart';
import '../../../constant/box_name.dart';
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
class ErrorLog {
final String id;
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/admin/financial_v2_controller.dart';
import 'package:tripz_admin/controller/admin/financial_v2_controller.dart';
class FinancialV2Page extends StatelessWidget {
const FinancialV2Page({super.key});
@@ -3,7 +3,7 @@ import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
import 'package:dio/dio.dart';
import 'package:get/get.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:tripz_admin/constant/links.dart';
class HeatmapPage extends StatefulWidget {
const HeatmapPage({super.key});
@@ -251,7 +251,7 @@ class _HeatmapPageState extends State<HeatmapPage> {
children: [
TileLayer(
urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png',
userAgentPackageName: 'com.siromove.admin',
userAgentPackageName: 'com.tripzmove.admin',
),
CircleLayer(circles: _markers),
],
@@ -43,7 +43,7 @@ class MarketingPage extends StatelessWidget {
),
),
const SizedBox(width: 12),
Text('أتمتة التسويق الذكي (Siro AI Marketing)', style: TextStyle(color: cs.onSurface, fontSize: 18, fontWeight: FontWeight.w700)),
Text('أتمتة التسويق الذكي (Tripz AI Marketing)', style: TextStyle(color: cs.onSurface, fontSize: 18, fontWeight: FontWeight.w700)),
],
),
),
@@ -260,9 +260,9 @@ class MarketingPage extends StatelessWidget {
Widget _buildComparisonChart(MarketingController c, ColorScheme cs) {
final hourlyData = c.hourlyPriceData;
final siroBase = c.siroBasePrices;
final double siroSpeedPrice = (siroBase['speedPrice'] != null)
? double.tryParse(siroBase['speedPrice'].toString()) ?? 0.0
final tripzBase = c.tripzBasePrices;
final double tripzSpeedPrice = (tripzBase['speedPrice'] != null)
? double.tryParse(tripzBase['speedPrice'].toString()) ?? 0.0
: 0.0;
List<FlSpot> competitorSpots = [];
@@ -280,10 +280,10 @@ class MarketingPage extends StatelessWidget {
final double maxY = competitorSpots.fold<double>(0, (p, s) => s.y > p ? s.y : p);
final double chartMaxY = maxY > 0 ? maxY * 1.3 : 10;
List<FlSpot> siroSpots = [];
if (siroSpeedPrice > 0) {
List<FlSpot> tripzSpots = [];
if (tripzSpeedPrice > 0) {
for (int i = 0; i < hourlyData.length; i++) {
siroSpots.add(FlSpot(i.toDouble(), siroSpeedPrice));
tripzSpots.add(FlSpot(i.toDouble(), tripzSpeedPrice));
}
}
@@ -306,8 +306,8 @@ class MarketingPage extends StatelessWidget {
const SizedBox(height: 4),
Text(
hourlyData.isNotEmpty
? 'مقارنة أسعار Siro مقابل متوسط المنافسين لآخر ${hourlyData.length} ساعة'
: 'مقارنة أسعار Siro مقابل متوسط المنافسين لآخر 24 ساعة',
? 'مقارنة أسعار Tripz مقابل متوسط المنافسين لآخر ${hourlyData.length} ساعة'
: 'مقارنة أسعار Tripz مقابل متوسط المنافسين لآخر 24 ساعة',
style: TextStyle(fontSize: 10, color: cs.onSurfaceVariant),
),
const SizedBox(height: 24),
@@ -352,9 +352,9 @@ class MarketingPage extends StatelessWidget {
minY: 0,
maxY: chartMaxY,
lineBarsData: [
if (siroSpots.length > 1)
if (tripzSpots.length > 1)
LineChartBarData(
spots: siroSpots,
spots: tripzSpots,
isCurved: true,
color: cs.primary,
barWidth: 3,
@@ -902,7 +902,7 @@ class MarketingPage extends StatelessWidget {
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text('توقعات الذكاء الاصطناعي (Siro AI Prediction)', style: TextStyle(fontWeight: FontWeight.bold, fontSize: 13, color: cs.tertiary)),
Text('توقعات الذكاء الاصطناعي (Tripz AI Prediction)', style: TextStyle(fontWeight: FontWeight.bold, fontSize: 13, color: cs.tertiary)),
const SizedBox(height: 6),
Text(
c.aiPredictionMessage!,
@@ -1,9 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'dart:convert';
import 'package:siro_admin/constant/links.dart';
import 'package:siro_admin/controller/functions/crud.dart';
import 'package:siro_admin/views/widgets/snackbar.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:tripz_admin/controller/functions/crud.dart';
import 'package:tripz_admin/views/widgets/snackbar.dart';
import '../../print.dart';
@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
import 'package:siro_admin/constant/links.dart';
import 'package:tripz_admin/constant/links.dart';
import 'package:url_launcher/url_launcher.dart';
import '../../../controller/functions/crud.dart';
import '../../../constant/box_name.dart';
@@ -999,7 +999,7 @@ class _RideMapMonitorScreenState extends State<RideMapMonitorScreen> {
children: [
TileLayer(
urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png',
userAgentPackageName: 'com.siromove.admin',
userAgentPackageName: 'com.tripzmove.admin',
),
// Route Polyline
if (startPos != null && endPos != null)
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/admin/security_v2_controller.dart';
import 'package:tripz_admin/controller/admin/security_v2_controller.dart';
class AuditLogsPage extends StatelessWidget {
const AuditLogsPage({super.key});
@@ -1,7 +1,7 @@
import 'package:fl_chart/fl_chart.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/admin/analytics_v2_controller.dart';
import 'package:tripz_admin/controller/admin/analytics_v2_controller.dart';
class AdvancedAnalyticsPage extends StatelessWidget {
const AdvancedAnalyticsPage({super.key});
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:siro_admin/controller/functions/launch.dart';
import 'package:tripz_admin/controller/functions/launch.dart';
import '../../../controller/admin/static_controller.dart';
import '../../widgets/mycircular.dart';
@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_staggered_animations/flutter_staggered_animations.dart';
import 'package:get/get.dart';
import 'package:intl/intl.dart' hide TextDirection;
import 'package:siro_admin/controller/admin/static_controller.dart';
import 'package:tripz_admin/controller/admin/static_controller.dart';
import 'notes_driver_page.dart';
class StaticDash extends StatelessWidget {