import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../../Notifiers/crmProvider/crmLeadDetailsProvider.dart'; import '../../Utils/app_colors.dart'; import '../../Utils/commonWidgets.dart'; class AppointmentDetails extends StatefulWidget { const AppointmentDetails({super.key}); @override State createState() => _AppointmentDetailsState(); } class _AppointmentDetailsState extends State { @override Widget build(BuildContext context) { return Consumer( builder: (context, provider, child) { var quotationDetails = provider.appointmentDetails; return WillPopScope( onWillPop: () => onBackPressed(context), child: Scaffold( resizeToAvoidBottomInset: true, appBar: appbar(context, "Appointment Details"), backgroundColor: AppColors.scaffold_bg_color, body: SafeArea( child: SizedBox( child: SingleChildScrollView( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ TextWidget(context, "Appointment Details"), ListView.builder( itemCount: quotationDetails.length, shrinkWrap: true, itemBuilder: (context, index) { return Container( margin: EdgeInsets.symmetric( horizontal: 10, vertical: 5, ), padding: EdgeInsets.symmetric( horizontal: 15, vertical: 10, ), decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.circular(20), ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ ...List.generate(5, (j) { final textheads = [ "Employee Name", "Appointment Date", "Appointment Type", "Note", "Appointment Executed", "Appointment Created on", ]; final textSubheads = [ quotationDetails[index].ename ?? "-", quotationDetails[index].aappDate ?? "-", quotationDetails[index].atype ?? "-", quotationDetails[index].anote ?? "-", quotationDetails[index].astatus ?? "-", quotationDetails[index].adate ?? "-", ]; return Container( padding: EdgeInsets.symmetric( vertical: 6, horizontal: 0, ), child: Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ Expanded( child: Text( textheads[j].toString(), maxLines: 2, overflow: TextOverflow.ellipsis, ), ), Expanded( child: Text( textSubheads[j], maxLines: 2, overflow: TextOverflow.ellipsis, style: TextStyle( color: textSubheads[j]=="View File"?AppColors.app_blue: Color(0xFF818181), decoration:textSubheads[j]=="View File"? TextDecoration.underline:TextDecoration.none, decorationColor: AppColors.app_blue ), ), ), ], ), ); }), ], ), ); }, ), SizedBox(height: 75), ], ), ), ), ), floatingActionButton: Align( alignment: Alignment.bottomCenter, child: InkWell( child: Container( alignment: Alignment.bottomCenter, height: 45, width: MediaQuery .of(context) .size .width, margin: EdgeInsets.symmetric(horizontal: 10), decoration: BoxDecoration( color: AppColors.app_blue, borderRadius: BorderRadius.circular(14.0), ), child: Center( child: Text( "Add Appointment", textAlign: TextAlign.center, style: TextStyle( color: Colors.white, fontFamily: "JakartaMedium", ), ), ), ), ), ), floatingActionButtonLocation: FloatingActionButtonLocation.centerFloat, ), ); }, ); } }