feat(consultant): add become consultant screen

This commit is contained in:
mso7nueh
2024-10-02 16:20:42 +03:00
parent f12bdc8402
commit b35de1f4e9
4 changed files with 94 additions and 1 deletions

View File

@@ -7,6 +7,8 @@ import 'package:eatvio_app/features/calendar/presentation/pages/calendar_screen.
import 'package:eatvio_app/features/chat/presentation/pages/chat_screen.dart';
import 'package:eatvio_app/features/chat/presentation/pages/chat_select_screen.dart';
import 'package:eatvio_app/features/chat/presentation/pages/photo_view_screen.dart';
import 'package:eatvio_app/features/consultant/become_consultant/pages/become_consultant_screen.dart';
import 'package:eatvio_app/features/consultant/become_consultant/pages/stepper_become_consultant_screen.dart';
import 'package:eatvio_app/features/diary/presentation/pages/diary_screen.dart';
import 'package:eatvio_app/features/diets/presentation/pages/about_diet_screen.dart';
import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart';
@@ -221,6 +223,15 @@ class AppRouter {
name: 'mySettingsScreen',
builder: (context, state) => MySettingsScreen.builder(context),
),
GoRoute(
path: '/become-consultant-screen',
name: 'becomeConsultantScreen',
builder: (context, state) => BecomeConsultantScreen(),
),GoRoute(
path: '/stepper-become-consultant-screen',
name: 'stepperBecomeConsultantScreen',
builder: (context, state) => StepperBecomeConsultantScreen(),
),
GoRoute(
path: '/recipe-select-screen',
name: 'recipeSelectScreen',

View File

@@ -0,0 +1,58 @@
import 'package:eatvio_app/theme/theme_helper.dart';
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
class BecomeConsultantScreen extends StatefulWidget {
const BecomeConsultantScreen({super.key});
@override
State<BecomeConsultantScreen> createState() => _BecomeConsultantScreenState();
}
class _BecomeConsultantScreenState extends State<BecomeConsultantScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Стать консультантом'),
automaticallyImplyLeading: false,
centerTitle: false,
leading: IconButton(
onPressed: () => GoRouter.of(context).pop(),
icon: Icon(Icons.close),
),
),
body: Padding(
padding: const EdgeInsets.all(16),
child: Text('Для регистрации потребуется следующий список документов, подготовьте их заранее'),
),
bottomSheet: _startRegistrationButton(),
);
}
_startRegistrationButton() {
return InkWell(
onTap: () => GoRouter.of(context).pushReplacementNamed('stepperBecomeConsultantScreen'),
borderRadius: BorderRadius.circular(20),
child: Ink(
height: 52,
width: MediaQuery.of(context).size.width - 32,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(20),
color: appTheme.blueA400,
),
child: Center(
child: Text(
'Начать регистрацию',
style: TextStyle(
color: Colors.white,
height: 1,
fontWeight: FontWeight.w600,
fontSize: 18,
),
),
),
),
);
}
}

View File

@@ -0,0 +1,24 @@
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
class StepperBecomeConsultantScreen extends StatefulWidget {
const StepperBecomeConsultantScreen({super.key});
@override
State<StepperBecomeConsultantScreen> createState() => _StepperBecomeConsultantScreenState();
}
class _StepperBecomeConsultantScreenState extends State<StepperBecomeConsultantScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false,
leading: IconButton(
onPressed: () => GoRouter.of(context).pop(),
icon: Icon(Icons.close),
),
),
);
}
}

View File

@@ -345,7 +345,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
return Padding(
padding: EdgeInsets.symmetric(horizontal: 16),
child: InkWell(
onTap: () {},
onTap: () => GoRouter.of(context).pushNamed('becomeConsultantScreen'),
borderRadius: BorderRadius.circular(20),
child: Ink(
height: 52,