From ecc427c9582b4c35650ee0f4a9e4863374f5a6c8 Mon Sep 17 00:00:00 2001 From: Patrick Alvin Alcala Date: Thu, 30 Jan 2025 13:45:43 +0800 Subject: [PATCH] update --- lib/main.dart | 6 +++++ lib/pages/add_generics.dart | 20 +++++++++++------ lib/pages/add_type.dart | 18 ++++++++------- lib/pages/list_stocks.dart | 44 +++++++++++++++++++++++++++++++++++++ lib/pages/main_page.dart | 6 ++--- 5 files changed, 76 insertions(+), 18 deletions(-) create mode 100644 lib/pages/list_stocks.dart diff --git a/lib/main.dart b/lib/main.dart index 427bf86..91af6fd 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -5,6 +5,7 @@ import 'package:pharmacy_mobile/pages/add_stock.dart'; import 'package:pharmacy_mobile/pages/add_type.dart'; // import 'package:pharmacy_mobile/auth/auth_gate.dart'; import 'package:pharmacy_mobile/pages/index_page.dart'; +import 'package:pharmacy_mobile/pages/list_stocks.dart'; import 'package:pharmacy_mobile/pages/login_page.dart'; import 'package:go_router/go_router.dart'; import 'package:pharmacy_mobile/pages/main_page.dart'; @@ -73,6 +74,11 @@ final _router = GoRouter( path: '/addstock', builder: (context, state) => AddStockPage(), ), + GoRoute( + name: 'liststocks', + path: '/liststocks', + builder: (context, state) => ListStocksPage(), + ), ], ); diff --git a/lib/pages/add_generics.dart b/lib/pages/add_generics.dart index 43801b4..9f114b4 100644 --- a/lib/pages/add_generics.dart +++ b/lib/pages/add_generics.dart @@ -1,4 +1,3 @@ -import 'dart:developer'; import 'package:gap/gap.dart'; import 'package:flutter/material.dart'; // import 'package:pharmacy_mobile/auth/auth_service.dart'; @@ -22,6 +21,7 @@ class AddGenericsPageState extends State { final _refCategories = RefCategories(); final _refGenericNames = RefGenericNames(); final _nameController = TextEditingController(); + final _formKey = GlobalKey(); late List _categoryList = []; late String _selectedCategory = ''; @@ -80,12 +80,18 @@ class AddGenericsPageState extends State { const Gap(32), const TextWidget(text: 'Add Generics'), const Gap(16), - InputWidget(label: 'Name', controller: _nameController), - const Gap(16), - DropDownWidget( - label: 'Category', list: _categoryList, listTitle: 'category_name', onChanged: _updateCategory), - const Gap(16), - ButtonWidget(text: 'Add', onPressed: saveGeneric) + Form( + key: _formKey, + child: Column( + children: [ + InputWidget(label: 'Name', controller: _nameController), + const Gap(16), + DropDownWidget( + label: 'Category', list: _categoryList, listTitle: 'category_name', onChanged: _updateCategory), + const Gap(16), + ButtonWidget(text: 'Add', onPressed: saveGeneric) + ], + )) ], )), ), diff --git a/lib/pages/add_type.dart b/lib/pages/add_type.dart index 40591da..7507267 100644 --- a/lib/pages/add_type.dart +++ b/lib/pages/add_type.dart @@ -19,6 +19,7 @@ class AddTypePage extends StatefulWidget { } class _AddTypePageState extends State { + final _formKey = GlobalKey(); final _typeController = TextEditingController(); final _refTypes = RefTypes(); @@ -58,15 +59,16 @@ class _AddTypePageState extends State { const TextWidget(text: 'Add Medicine Type'), const Gap(16), Form( + key: _formKey, child: Center( - child: Column( - children: [ - InputWidget(label: 'Type Name', controller: _typeController), - const Gap(16), - ButtonWidget(text: 'Save Type', onPressed: saveType) - ], - ), - )) + child: Column( + children: [ + InputWidget(label: 'Type Name', controller: _typeController), + const Gap(16), + ButtonWidget(text: 'Save Type', onPressed: saveType) + ], + ), + )) ], ), ), diff --git a/lib/pages/list_stocks.dart b/lib/pages/list_stocks.dart new file mode 100644 index 0000000..61f3705 --- /dev/null +++ b/lib/pages/list_stocks.dart @@ -0,0 +1,44 @@ +import 'package:flutter/material.dart'; +import 'package:gap/gap.dart'; +import 'package:pharmacy_mobile/widgets/text_widget.dart'; +import 'package:pharmacy_mobile/widgets/title_widget.dart'; + +class ListStocksPage extends StatefulWidget { + const ListStocksPage({super.key}); + + @override + _ListStocksPageState createState() => _ListStocksPageState(); +} + +class _ListStocksPageState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + body: Container( + alignment: Alignment.center, + height: MediaQuery.of(context).size.height, + decoration: const BoxDecoration( + gradient: LinearGradient( + colors: [ + Color.fromRGBO(34, 51, 69, 1), + Color.fromRGBO(22, 32, 44, 1), + ], + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + ), + ), + child: Center( + child: Column( + children: [ + const Gap(120), + const TitleWidget(firstTextSize: 16, secondTextSize: 32), + const Gap(32), + const TextWidget(text: 'List of Stocks'), + const Gap(16), + ], + ), + ), + ), + ); + } +} diff --git a/lib/pages/main_page.dart b/lib/pages/main_page.dart index 160d5d3..89d7ab0 100644 --- a/lib/pages/main_page.dart +++ b/lib/pages/main_page.dart @@ -71,9 +71,9 @@ class MainPage extends StatelessWidget { onPressed: () => {context.push('/addtype')}), const Gap(32), MenuWidget( - icon: FontAwesomeIcons.listCheck, - text: 'List of Stocks', - ), + icon: FontAwesomeIcons.listCheck, + text: 'List of Stocks', + onPressed: () => {context.push('/liststocks')}), const Gap(32), // TextButton(onPressed: () => {_signOut()}, child: const Text('Logout')), ButtonWidget(