import 'dart:io'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:ride/controller/functions/ocr_controller.dart'; import '../../../constant/style.dart'; import '../../../controller/auth/captin/ml_google_doc.dart'; import '../../../controller/auth/captin/register_captin_controller.dart'; import '../../widgets/elevated_btn.dart'; import '../../widgets/my_scafold.dart'; class CarLicensePage extends StatelessWidget { CarLicensePage({super.key}); CarRegistrationRecognizerController carRegistrationRecognizerController = Get.put(CarRegistrationRecognizerController()); RegisterCaptainController registerCaptainController = Get.put(RegisterCaptainController()); @override Widget build(BuildContext context) { Get.find().uploadImagePortrate(); return MyScafolld( title: 'Car License Card'.tr, body: [ Positioned( top: 3, left: Get.width * .2, right: Get.width * .2, child: MyElevatedButton( title: 'Take Picture Of ID Card'.tr, onPressed: () async { //0vQRyaYYDWpsv73A5CZOknseK7S2sgwE //3vQRyaYYSWpmv69A58ZOkxmeK6M1mgwEDlXrXlBl //0pALdqDDYHvzp73Q59SIgbzjG7Z2zkhJXr // String? visionApi = AK.serverPHP; // print(AK.visionApi); await carRegistrationRecognizerController.scanText(); }, )), Positioned( top: 50, child: SizedBox( height: Get.height * .6, width: Get.width, child: buildImageWithBoundingBoxes(), ), ), Positioned( bottom: Get.height * .2, left: Get.width * .2, right: Get.width * .2, child: MyElevatedButton( title: 'Register'.tr, onPressed: () async { // registerCaptainController.addLisence(); // registerCaptainController.register(); registerCaptainController.addRegisrationCarForDriver( carRegistrationRecognizerController.extracted['vin'], carRegistrationRecognizerController.extracted['make'], carRegistrationRecognizerController.extracted['model'], carRegistrationRecognizerController.extracted['year'], carRegistrationRecognizerController.extracted['color'], carRegistrationRecognizerController.extracted['owner'], carRegistrationRecognizerController .extracted['expiration_date'], carRegistrationRecognizerController .extracted['registration_date'], ); }, )), ], isleading: true); } } Widget buildImageWithBoundingBoxes() { Get.put(CarRegistrationRecognizerController()); return GetBuilder( builder: (carRegistrationRecognizerController) => carRegistrationRecognizerController.image == null || carRegistrationRecognizerController.extracted.isEmpty ? Center( child: Text( 'No image selected yet'.tr, style: AppStyle.headTitle2, )) : Column( children: [ SizedBox( width: Get.width * .8, height: Get.width * .5, child: Image.file( File(carRegistrationRecognizerController .croppedFile!.path), // fit: BoxFit.fill, )), const SizedBox( height: 20, ), Container( decoration: AppStyle.boxDecoration, height: Get.width * .5, width: Get.width * .9, child: Column( crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Text( 'Made :' + carRegistrationRecognizerController .extracted['make'] .toString(), style: AppStyle.title, ), Text( 'model :' + carRegistrationRecognizerController .extracted['model'] .toString(), style: AppStyle.title, ), ], ), Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Text( 'VIN :' + carRegistrationRecognizerController .extracted['vin'] .toString(), style: AppStyle.title, ), Text( 'year :' + carRegistrationRecognizerController .extracted['year'] .toString(), style: AppStyle.title, ), ], ), Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Column( children: [ Text( 'expiration date :' + carRegistrationRecognizerController .extracted['expiration_date'] .toString(), style: AppStyle.title, ), Text( 'registration date :' + carRegistrationRecognizerController .extracted['registration_date'] .toString(), style: AppStyle.title, ), ], ), Text( 'color :' + carRegistrationRecognizerController .extracted['color'] .toString(), style: AppStyle.title, ), ], ), Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Text( 'owner :' + carRegistrationRecognizerController .extracted['owner'] .toString(), style: AppStyle.title, ), ], ), ], ), ) ], )); }