Merge pull request #123 from SyncrowIOT/SP-1271-FE-Remove-Community-Field-from-Device-Management-Screen

Sp 1271 fe remove community field from device management screen
This commit is contained in:
Faris Armoush
2025-03-26 12:57:16 +03:00
committed by GitHub

View File

@ -12,77 +12,89 @@ class DeviceSearchFilters extends StatefulWidget {
State<DeviceSearchFilters> createState() => _DeviceSearchFiltersState(); State<DeviceSearchFilters> createState() => _DeviceSearchFiltersState();
} }
class _DeviceSearchFiltersState extends State<DeviceSearchFilters> with HelperResponsiveLayout { class _DeviceSearchFiltersState extends State<DeviceSearchFilters>
final TextEditingController communityController = TextEditingController(); with HelperResponsiveLayout {
final TextEditingController unitNameController = TextEditingController(); late final TextEditingController _unitNameController;
final TextEditingController productNameController = TextEditingController(); late final TextEditingController _productNameController;
@override @override
Widget build(BuildContext context) { void initState() {
return isExtraLargeScreenSize(context) _unitNameController = TextEditingController();
? Row( _productNameController = TextEditingController();
children: [ super.initState();
_buildSearchField("Community", communityController, 200), }
const SizedBox(width: 20),
_buildSearchField("Space Name", unitNameController, 200), @override
const SizedBox(width: 20), void dispose() {
_buildSearchField("Device Name / Product Name", productNameController, 300), _unitNameController.dispose();
const SizedBox(width: 20), _productNameController.dispose();
_buildSearchResetButtons(), super.dispose();
], }
)
: Wrap( List<Widget> get _widgets => [
spacing: 20,
runSpacing: 10,
children: [
_buildSearchField( _buildSearchField(
"Community", "Space Name",
communityController, _unitNameController,
200, 200,
), ),
_buildSearchField("Space Name", unitNameController, 200),
_buildSearchField( _buildSearchField(
"Device Name / Product Name", "Device Name / Product Name",
productNameController, _productNameController,
300, 300,
), ),
_buildSearchResetButtons(), _buildSearchResetButtons(),
], ];
@override
Widget build(BuildContext context) {
if (isExtraLargeScreenSize(context)) {
return Row(
spacing: 20,
children: _widgets,
); );
} }
Widget _buildSearchField(String title, TextEditingController controller, double width) { return Wrap(
return Container( spacing: 20,
child: StatefulTextField( runSpacing: 10,
children: _widgets,
);
}
Widget _buildSearchField(
String title,
TextEditingController controller,
double width,
) {
return StatefulTextField(
title: title, title: title,
width: width, width: width,
elevation: 2, elevation: 2,
controller: controller, controller: controller,
onSubmitted: () { onSubmitted: () {
context.read<DeviceManagementBloc>().add(SearchDevices( final searchDevicesEvent = SearchDevices(
productName: productNameController.text, productName: _productNameController.text,
unitName: unitNameController.text, unitName: _unitNameController.text,
community: communityController.text, searchField: true,
searchField: true)); );
context.read<DeviceManagementBloc>().add(searchDevicesEvent);
}, },
onChanged: (p0) {}, onChanged: (p0) {},
),
); );
} }
Widget _buildSearchResetButtons() { Widget _buildSearchResetButtons() {
return SearchResetButtons( return SearchResetButtons(
onSearch: () { onSearch: () => context.read<DeviceManagementBloc>().add(
context.read<DeviceManagementBloc>().add(SearchDevices( SearchDevices(
community: communityController.text, unitName: _unitNameController.text,
unitName: unitNameController.text, productName: _productNameController.text,
productName: productNameController.text, searchField: true,
searchField: true)); ),
}, ),
onReset: () { onReset: () {
communityController.clear(); _unitNameController.clear();
unitNameController.clear(); _productNameController.clear();
productNameController.clear();
context.read<DeviceManagementBloc>() context.read<DeviceManagementBloc>()
..add(ResetFilters()) ..add(ResetFilters())
..add(FetchDevices(context)); ..add(FetchDevices(context));