import 'package:flutter/material.dart'; import 'package:flutter_switch/flutter_switch.dart'; import 'package:openclosenew/14_businessdetailsempty.dart'; import 'package:smooth_page_indicator/smooth_page_indicator.dart'; import 'colors.dart'; class businessdetail extends StatefulWidget { const businessdetail({Key? key}) : super(key: key); @override State createState() => _businessdetailState(); } class _businessdetailState extends State { bool status = true; int pageIndex = 0; final _Controller = PageController(); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, body: SafeArea( child: SingleChildScrollView( child: Column( children: [ Container( height: 400, child: Stack( children: [ Container( height: 250, decoration: BoxDecoration( image: const DecorationImage( image: AssetImage('assets/images/bg.png'), fit: BoxFit.cover, ), borderRadius: BorderRadius.only( bottomLeft: Radius.circular(20), bottomRight: Radius.circular(20), ), ), ), if (status == false) Container( height: 250, decoration: BoxDecoration( color: Colors.grey.withOpacity(0.6), borderRadius: BorderRadius.only( bottomLeft: Radius.circular(20), bottomRight: Radius.circular(20), ), ), ), Padding( padding: EdgeInsets.only(bottom: 300, left: 10, right: 10), child: Row( children: [ FloatingActionButton( child: Icon( Icons.arrow_back, size: 24, color: DarkGray, ), mini: true, backgroundColor: Colors.white, onPressed: () { Navigator.pop(context); }, ), Spacer(), FlutterSwitch( width: 107, height: 50, valueFontSize: 12, toggleSize: 20, value: status, borderRadius: 30.0, padding: 5, showOnOff: true, onToggle: (val) { setState(() { status = val; }); }, activeText: "OPEN", activeSwitchBorder: Border.all(color: Colors.white, width: 10), inactiveSwitchBorder: Border.all(color: Colors.white, width: 10), activeTextColor: Colors.white, activeTextFontWeight: FontWeight.w600, activeColor: Color(0xFF09CD99), inactiveText: "CLOSED", inactiveTextColor: Colors.white, inactiveTextFontWeight: FontWeight.w600, inactiveColor: Color(0xFFFF4B4C), ), ], ), ), Align( alignment: Alignment.center, child: Container( margin: EdgeInsets.only(right: 20, left: 20, top: 150), padding: EdgeInsets.all(12), height: 270, decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.all( Radius.circular(10), ), boxShadow: [ BoxShadow( color: Colors.grey.shade500, offset: Offset(4.0, 5.0), blurRadius: 5.0, spreadRadius: 1.0, ), ], ), foregroundDecoration: BoxDecoration( color: status ? null : Colors.white, backgroundBlendMode: status ? null : BlendMode.saturation, ), child: Column( children: [ Row( crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.center, children: [ Image.asset( 'assets/images/store_logo.png', width: 60, height: 60, ), Padding( padding: const EdgeInsets.only(top: 8, left: 5), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ RichText( text: TextSpan( text: "Barbeque Nation ", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), ), RichText( text: TextSpan( children: [ TextSpan( text: "4.2 ", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Color(0xFFFFBE3F), ), ), WidgetSpan( child: Icon( Icons.star, color: Color(0xFFFFBE3F), size: 15, ), ), ], ), ), ], ), ), Spacer(), IconButton( icon: Image.asset( 'assets/images/edit_pen.png', color: DarkGray, ), onPressed: () { Navigator.push( context, MaterialPageRoute( builder: (_) => businessdetailsempty())); }, ), ], ), Align( alignment: Alignment.topLeft, child: Padding( padding: const EdgeInsets.only(left: 10, top: 5), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ Image.asset( 'assets/images/veg_logo.png', width: 20, height: 20, ), SizedBox( width: 12, ), Text( 'Veg', style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 13, color: Gray), ), SizedBox( width: 10, ), Image.asset( 'assets/images/nonveg_icon.png', width: 20, height: 20, ), SizedBox( width: 12, ), Text( 'Non-Veg', style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 13, color: Gray), ), ], ), Row( children: [ Padding( padding: const EdgeInsets.only(top: 10), child: RichText( text: TextSpan( children: [ WidgetSpan( child: Image.asset( 'assets/images/call_icon.png', width: 25, height: 25, ), ), TextSpan( text: " +91 98651 76796, +91 76786 85869", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 12, color: Gray, ), ), ], ), ), ), ], ), Padding( padding: const EdgeInsets.only(top: 10), child: RichText( text: TextSpan( children: [ WidgetSpan( child: Image.asset( 'assets/images/loc_logo.png', width: 25, height: 25, ), ), TextSpan( text: " 112, Avinashi Road, Peelamedu, Coimbatore...", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 12, color: Gray, ), ), ], ), ), ), Padding( padding: const EdgeInsets.only(top: 10), child: RichText( text: TextSpan( children: [ WidgetSpan( child: Image.asset( 'assets/images/glob_icon.png', width: 25, height: 25, ), ), TextSpan( text: " www.bbqnation.com", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 12, color: Gray, ), ), ], ), ), ), Padding( padding: const EdgeInsets.only(top: 10), child: RichText( text: TextSpan( children: [ WidgetSpan( child: Image.asset( 'assets/images/clock_icon.png', width: 25, height: 25, ), ), TextSpan( text: " Working Hours: Mon - Fri 9:00am to 9:00pm", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 12, color: Gray, ), ), ], ), ), ), ], ), ), ), ], ), ), ), ], ), ), Container( height: 100, child: ListView( scrollDirection: Axis.horizontal, children: [ Padding( padding: const EdgeInsets.only(left: 22, right: 10, top: 20), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/offer.png', ), scale: 2, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), foregroundDecoration: BoxDecoration( color: status ? null : Colors.white, backgroundBlendMode: status ? null : BlendMode.saturation, ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "WELCOME OFFER !", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Text( "Get 50% discount on your first order", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), Padding( padding: const EdgeInsets.only(left: 22, right: 10, top: 20), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/offer.png', ), scale: 2, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), foregroundDecoration: BoxDecoration( color: status ? null : Colors.white, backgroundBlendMode: status ? null : BlendMode.saturation, ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "WELCOME OFFER !", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Text( "Get 50% discount on your first order", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), ], ), ), SmoothPageIndicator( controller: _Controller, // PageController count: 3, effect: ExpandingDotsEffect( activeDotColor: status ? Color(0xFF2AB17F) : Colors.grey, dotColor: status ? Colors.greenAccent : Colors.grey, dotWidth: 5, dotHeight: 5), // your preferred effect onDotClicked: (index) {}, ), Padding( padding: const EdgeInsets.only( left: 15, right: 15, top: 5, bottom: 10), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( "Food Items", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), Spacer(), IconButton( icon: Image.asset('assets/images/arrow-right.png'), onPressed: () { Navigator.pop(context); }, ), ], ), ), Container( foregroundDecoration: BoxDecoration( color: status ? null : Colors.grey, backgroundBlendMode: status ? null : BlendMode.saturation, ), height: 150, child: ListView( scrollDirection: Axis.horizontal, children: [ Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/food1.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Padding( padding: const EdgeInsets.only(right: 16), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Chicken Briyani", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 180.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 15, color: DarkGray, ), ), ], ), ), ], ), Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/food2.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Chicken Pepper...", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 360.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 15, color: DarkGray, ), ), ], ), ], ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/food3.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Padding( padding: const EdgeInsets.only(left: 20), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Malai Kofta", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 280.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 15, color: DarkGray, ), ), ], ), ), ], ), ], ), ), Padding( padding: const EdgeInsets.only( left: 15, right: 15, top: 5, bottom: 10), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( "Photos", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), Spacer(), IconButton( icon: Image.asset('assets/images/arrow-right.png'), onPressed: () { Navigator.pop(context); }, ), ], ), ), Container( foregroundDecoration: BoxDecoration( color: status ? null : Colors.grey, backgroundBlendMode: status ? null : BlendMode.saturation, ), height: 100, child: ListView( scrollDirection: Axis.horizontal, children: [ Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/room1.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), ], ), Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/room2.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), ], ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/room3.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), ], ), ], ), ), Padding( padding: const EdgeInsets.only( left: 15, right: 15, bottom: 10, top: 10), child: Row( children: [ Text( "Services", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), Spacer(), IconButton( icon: Image.asset('assets/images/arrow-right.png'), onPressed: () { Navigator.pop(context); }, ), ], ), ), Container( foregroundDecoration: BoxDecoration( color: status ? null : Colors.grey, backgroundBlendMode: status ? null : BlendMode.saturation, ), height: 150, child: ListView( scrollDirection: Axis.horizontal, children: [ Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/services_img1.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Padding( padding: const EdgeInsets.only(right: 16), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Buffet", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 480.00 - 890.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 12, color: DarkGray, ), ), ], ), ), ], ), Column( children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/services_img2.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Bar", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 200.00 (Starts from)", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 12, color: DarkGray, ), ), ], ), ], ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Padding( padding: const EdgeInsets.only(left: 15, right: 15), child: Container( width: 130, height: 100, decoration: BoxDecoration( image: const DecorationImage( fit: BoxFit.cover, image: AssetImage( 'assets/images/services_img3.png', ), ), borderRadius: BorderRadius.all(Radius.circular(5)), ), ), ), Padding( padding: const EdgeInsets.only(left: 20), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Cafe Club", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w500, fontSize: 15, color: DarkGray, ), ), Text( "₹ 280.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 12, color: DarkGray, ), ), ], ), ), ], ), ], ), ), Padding( padding: const EdgeInsets.only( left: 15, right: 15, top: 5, bottom: 10), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( "Offers", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), Spacer(), IconButton( icon: Image.asset('assets/images/arrow-right.png'), onPressed: () { Navigator.pop(context); }, ), ], ), ), Container( foregroundDecoration: BoxDecoration( color: status ? null : Colors.white, backgroundBlendMode: status ? null : BlendMode.saturation, ), height: 100, child: ListView( scrollDirection: Axis.horizontal, children: [ Padding( padding: const EdgeInsets.only(left: 22, right: 10), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/offer.png', ), scale: 2, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "WELCOME OFFER !", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Text( "Get 50% discount on your first order", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), Padding( padding: const EdgeInsets.only(left: 22), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/offer.png', ), scale: 2, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "WELCOME OFFER !", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Text( "Get 50% discount on your first order", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), ], ), ), Padding( padding: const EdgeInsets.only( left: 15, right: 15, top: 5, bottom: 10), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( "Coupons", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w600, fontSize: 20, color: DarkGray, ), ), Spacer(), IconButton( icon: Image.asset('assets/images/arrow-right.png'), onPressed: () { Navigator.pop(context); }, ), ], ), ), Container( foregroundDecoration: BoxDecoration( color: status ? null : Colors.grey, backgroundBlendMode: status ? null : BlendMode.saturation, ), height: 100, child: ListView( scrollDirection: Axis.horizontal, children: [ Padding( padding: const EdgeInsets.only(left: 22, right: 10), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/Ticket.png', ), scale: 2.5, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ Text( "FEST500", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Padding( padding: const EdgeInsets.only(left: 15), child: Image.asset( 'assets/images/ticket1.png', width: 25, height: 25, ), ), ], ), Text( "Get 50% discount on festival offer", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), Padding( padding: const EdgeInsets.only(left: 22, right: 10), child: InkWell( onTap: () {}, child: Container( width: 350, margin: EdgeInsets.only(right: 10), decoration: BoxDecoration( image: const DecorationImage( alignment: Alignment.centerLeft, image: AssetImage( 'assets/images/Ticket.png', ), scale: 2.5, ), borderRadius: BorderRadius.all( Radius.circular(10), ), ), child: Padding( padding: const EdgeInsets.only(left: 80), child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ Text( "FEST500", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w700, fontSize: 20, color: primaryColor, ), ), Padding( padding: const EdgeInsets.only(left: 15), child: Image.asset( 'assets/images/ticket1.png', width: 25, height: 25, ), ), ], ), Text( "Get 50% discount on festival offer", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, fontWeight: FontWeight.w400, fontSize: 15, color: Gray, ), ), ], ), ), ), ), ), ], ), ), ], ), ), ), ); } }