import 'package:cssd/config/colors.dart'; import 'package:flutter/material.dart'; import 'package:fluttertoast/fluttertoast.dart'; import 'package:provider/provider.dart'; import '../../../config/routes.dart'; import '../../../providers/labels.dart'; class LabelAddSaveButton extends StatelessWidget { const LabelAddSaveButton({ Key? key, required GlobalKey form, required this.lotNumberCTRL, required this.cycleNumberCTRL, required this.sDateCTRL, required this.packageValue, required this.eDateCTRL, required this.striizerIdCTRL, required double deviceBlockSize, }) : _form = form, _deviceBlockSize = deviceBlockSize, super(key: key); final GlobalKey _form; final TextEditingController lotNumberCTRL; final TextEditingController cycleNumberCTRL; final TextEditingController sDateCTRL; final List packageValue; final TextEditingController eDateCTRL; final TextEditingController striizerIdCTRL; final double _deviceBlockSize; @override Widget build(BuildContext context) { return Consumer(builder: (context, labelsProvider, _) { return InkWell( onTap: () async { labelsProvider.setLoadingButton(); if (!_form.currentState!.validate()) { return; } List packages = []; for (TextEditingController package in packageValue) { packages.add(package.text); } await Provider.of(context, listen: false) .createLabelResult( lotNumberCTRL.text, cycleNumberCTRL.text, sDateCTRL.text, // sDateValue, // {'id': packageValue[0], 'name': packageValue[1]}, packages[0], eDateCTRL.text, // eDateValue, striizerIdCTRL.text, ); Navigator.of(context).pushReplacementNamed(Routes.labelResultScreen); Fluttertoast.showToast( msg: "Label added.", toastLength: Toast.LENGTH_SHORT, gravity: ToastGravity.BOTTOM, ); labelsProvider.resetLoadingButton(); }, child: Container( padding: EdgeInsets.symmetric( horizontal: 5 * _deviceBlockSize, vertical: 10, ), // margin: // EdgeInsets.symmetric(horizontal: 35, vertical: 15), decoration: BoxDecoration( gradient: LinearGradient( colors: [kLightBlue, kLightBlueSub], ), borderRadius: BorderRadius.circular(7), ), child: labelsProvider.isloadingButton ? Center( child: CircularProgressIndicator( color: Colors.white, ), ) : Align( alignment: Alignment.center, child: Text( 'Save', style: TextStyle( color: Colors.white, fontSize: 5 * _deviceBlockSize, ), ), ), ), ); }); } }