import 'package:cheminova/screens/order_management/order_management_detail_screen.dart'; import 'package:cheminova/widgets/input_field.dart'; import 'package:cheminova/widgets/my_drawer.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; import 'package:get/get.dart'; import 'package:google_fonts/google_fonts.dart'; import '../../models/product_model1.dart'; class OrderManagementScreen extends StatefulWidget { Product? productModel; OrderManagementScreen({super.key,this.productModel}); @override State createState() => _OrderManagementScreenState(); } class _OrderManagementScreenState extends State { final _searchController = TextEditingController(); final List _filterList = [ "Order Status", "Date Range", ]; @override Widget build(BuildContext context) { return Scaffold( extendBodyBehindAppBar: true, appBar: AppBar( centerTitle: true, backgroundColor: Colors.transparent, elevation: 0, leading: Builder( builder: (context) { return GestureDetector( onTap: () => Scaffold.of(context).openDrawer(), child: Padding( padding: const EdgeInsets.all(16.0), child: SvgPicture.asset( 'assets/svg/menu.svg', ), ), ); }, ), actions: [ GestureDetector( onTap: () => Get.back(), child: Padding( padding: const EdgeInsets.all(8.0), child: SvgPicture.asset( 'assets/svg/back_arrow.svg', ), ), ), ], title: const Text( "Order Management", ), ), drawer: const MyDrawer(), body: Stack( fit: StackFit.expand, children: [ Image.asset( 'assets/images/image_1.png', fit: BoxFit.cover, ), SafeArea( child: SingleChildScrollView( child: Padding( padding: EdgeInsets.only( bottom: MediaQuery.of(context).viewInsets.bottom), child: Column( mainAxisSize: MainAxisSize.min, mainAxisAlignment: MainAxisAlignment.start, children: [ InputField( hintText: "Search Order", labelText: "Search Order", controller: _searchController, ), SizedBox(height: Get.height * 0.035), Card( margin: const EdgeInsets.symmetric(horizontal: 18), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(19), side: const BorderSide(color: Color(0xFFFDFDFD)), ), color: const Color(0xFFB4D1E5).withOpacity(0.9), child: Padding( padding: const EdgeInsets.all(12.0), child: Column( mainAxisSize: MainAxisSize.min, children: [ SizedBox( height: Get.height * 0.05, child: ListView.builder( shrinkWrap: true, scrollDirection: Axis.horizontal, itemCount: _filterList.length, itemBuilder: (context, index) => Padding( padding: const EdgeInsets.symmetric(horizontal: 4), child: Chip( label: Text( _filterList[index], style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w500, ), ), ), ), ), ), SizedBox( height: Get.height * 0.6, child: ListView.builder( padding: EdgeInsets.zero, shrinkWrap: true, itemCount: 2, itemBuilder: (context, index) => Padding( padding: const EdgeInsets.symmetric(vertical: 8), child: Card( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Padding( padding: const EdgeInsets.fromLTRB( 16, 8, 8, 0), child: Text( "Order ID: 123456", style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w400, ), ), ), Padding( padding: const EdgeInsets.fromLTRB( 16, 8, 8, 0), child: Text( "Product Name: XYZ", style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w400, ), ), ), Padding( padding: const EdgeInsets.fromLTRB( 16, 8, 8, 0), child: Text( "Order Date: MM/DD/YYYY", style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w400, ), ), ), Padding( padding: const EdgeInsets.fromLTRB( 16, 8, 8, 8), child: Text( "Status: Processing/shipped/delivered", style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w400, ), ), ), SizedBox( width: Get.width * 0.4, child: Padding( padding: const EdgeInsets.all(8.0), child: ElevatedButton( onPressed: () => Get.to( () => OrderManagementDetailScreen( productModel:widget.productModel, ), ), style: ElevatedButton.styleFrom( foregroundColor: Colors.white, backgroundColor: const Color(0xFF004791), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(10), ), ), child: Text( "View Details", style: GoogleFonts.roboto( fontSize: 14, fontWeight: FontWeight.w400, ), ), ), ), ) ], ), ), ), ), ) ], ), ), ), ], ), ), ), ), ], ), ); } }