import 'package:gap/gap.dart'; import 'package:flutter/material.dart'; // import 'package:pharmacy_mobile/auth/auth_service.dart'; import 'package:pharmacy_mobile/tables/ref_categories.dart'; import 'package:pharmacy_mobile/tables/ref_generic_names.dart'; import 'package:pharmacy_mobile/widgets/button_widget.dart'; import 'package:pharmacy_mobile/widgets/dropdown_widget.dart'; import 'package:pharmacy_mobile/widgets/input_widget.dart'; import 'package:pharmacy_mobile/widgets/text_widget.dart'; import 'package:pharmacy_mobile/widgets/title_widget.dart'; class AddGenericsPage extends StatefulWidget { const AddGenericsPage({super.key}); @override AddGenericsPageState createState() => AddGenericsPageState(); } class AddGenericsPageState extends State { // final _formKey = GlobalKey(); final _refCategories = RefCategories(); final _refGenericNames = RefGenericNames(); final _nameController = TextEditingController(); final _formKey = GlobalKey(); late List _categoryList = []; late String _selectedCategory = ''; late String _categoryUUID = ''; @override void initState() { autoRun(); super.initState(); } void autoRun() async { _categoryList = await _refCategories.getList(); } void _updateCategory(dynamic category) { _selectedCategory = category; } void saveGeneric() async { _categoryUUID = await _refCategories.getUUID(_selectedCategory); await _refGenericNames.postGeneric(_nameController.text, _categoryUUID); } @override void dispose() { _nameController.dispose(); _categoryList = []; _selectedCategory = ''; _categoryUUID = ''; super.dispose(); } @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: 'Add Generics'), const Gap(16), 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) ], )) ], )), ), ); } }