From f519841c04adf9adca6782d28408e2ead8f18701 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Sun, 12 Nov 2023 16:02:24 +0300 Subject: [PATCH] improvements. --- lib/extensions/widget_extensions.dart | 36 ++++++++++--------- .../calender_fragments/daily_fragment.dart | 3 +- .../calender_fragments/monthly_fragment.dart | 4 +-- .../calender_fragments/weekly_fragment.dart | 32 +++++------------ .../recent_activites_fragment.dart | 2 +- .../requests/service_request_item_view.dart | 5 +-- .../equipment/single_device_picker.dart | 4 +-- 7 files changed, 37 insertions(+), 49 deletions(-) diff --git a/lib/extensions/widget_extensions.dart b/lib/extensions/widget_extensions.dart index 79aadcf7..30c0842f 100644 --- a/lib/extensions/widget_extensions.dart +++ b/lib/extensions/widget_extensions.dart @@ -48,23 +48,25 @@ extension WidgetExtensions on Widget { ).toShadowContainer(context) : this; - Widget toShadowContainer(BuildContext context) => Container( - padding: const EdgeInsets.all(16), - decoration: ShapeDecoration( - color: Theme.of(context).cardColor, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(20), - ), - shadows: const [ - BoxShadow( - color: Color(0x07000000), - blurRadius: 14, - offset: Offset(0, 0), - spreadRadius: 0, - ) - ], - ), - child: this); + Widget toShadowContainer(BuildContext context, {bool showShadow = true}) => showShadow + ? Container( + padding: const EdgeInsets.all(16), + decoration: ShapeDecoration( + color: Theme.of(context).cardColor, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20), + ), + shadows: const [ + BoxShadow( + color: Color(0x07000000), + blurRadius: 14, + offset: Offset(0, 0), + spreadRadius: 0, + ) + ], + ), + child: this) + : this; } extension DividerExtension on Divider { diff --git a/lib/new_views/pages/land_page/calender_fragments/daily_fragment.dart b/lib/new_views/pages/land_page/calender_fragments/daily_fragment.dart index 35166848..0e645e0c 100644 --- a/lib/new_views/pages/land_page/calender_fragments/daily_fragment.dart +++ b/lib/new_views/pages/land_page/calender_fragments/daily_fragment.dart @@ -36,6 +36,7 @@ class _DailyFragmentState extends State { @override Widget build(BuildContext context) { return SingleChildScrollView( + padding: const EdgeInsets.only(left: 16, right: 16), child: Consumer(builder: (context, snapshot, _) { return Column( mainAxisSize: MainAxisSize.min, @@ -74,7 +75,7 @@ class _DailyFragmentState extends State { ], ).toShadowContainer(context); }), - ).paddingOnly(start: 16, end: 16); + ); } BoxDecoration cellDecoration({Color color}) => BoxDecoration(color: color ?? Colors.transparent, shape: BoxShape.circle); diff --git a/lib/new_views/pages/land_page/calender_fragments/monthly_fragment.dart b/lib/new_views/pages/land_page/calender_fragments/monthly_fragment.dart index c06e504c..70f48b98 100644 --- a/lib/new_views/pages/land_page/calender_fragments/monthly_fragment.dart +++ b/lib/new_views/pages/land_page/calender_fragments/monthly_fragment.dart @@ -37,7 +37,7 @@ class _MonthlyFragmentState extends State { @override Widget build(BuildContext context) { return SingleChildScrollView( - padding: const EdgeInsets.all(16), + padding: const EdgeInsets.only(left: 16,right: 16), child: Column( children: [ Consumer( @@ -72,7 +72,7 @@ class _MonthlyFragmentState extends State { final day = DateFormat("d").format(dateTime); return CalendarDaysCard( day: day, - fill: snapshot.calendarRequests.requestsDetails?.firstWhere( + fill: snapshot.calendarRequests?.requestsDetails?.firstWhere( (element) => (element.date != null) && (DateTime.tryParse(element.date)?.difference(dateTime)?.inDays == 0), orElse: () => null, ) != diff --git a/lib/new_views/pages/land_page/calender_fragments/weekly_fragment.dart b/lib/new_views/pages/land_page/calender_fragments/weekly_fragment.dart index f98a9f39..ce87feef 100644 --- a/lib/new_views/pages/land_page/calender_fragments/weekly_fragment.dart +++ b/lib/new_views/pages/land_page/calender_fragments/weekly_fragment.dart @@ -44,6 +44,7 @@ class _WeeklyFragmentState extends State { @override Widget build(BuildContext context) { return SingleChildScrollView( + padding: const EdgeInsets.only(left: 16,right: 16), child: Consumer(builder: (context, snapshot, _) { return Column( mainAxisSize: MainAxisSize.min, @@ -55,6 +56,10 @@ class _WeeklyFragmentState extends State { calendarFormat: CalendarFormat.week, weekendDays: const [], onCalendarCreated: (controller) {}, + onPageChanged: (date) { + _initialDate = date; + Provider.of(context, listen: false).getCalenderRequests(from: date, to: date.add(const Duration(days: 7))); + }, calendarBuilders: CalendarBuilders( headerTitleBuilder: (context, dateTime) => Column( crossAxisAlignment: CrossAxisAlignment.stretch, @@ -101,7 +106,7 @@ class _WeeklyFragmentState extends State { bool isPPMs = list[index].nameOfType == "PPMs"; return isServiceRequest - ? ServiceRequestItemView(list[index]) + ? ServiceRequestItemView(list[index], showShadow: false) : isGasRefill ? GasRefillItemView(list[index]) : isPPMs @@ -114,34 +119,13 @@ class _WeeklyFragmentState extends State { color: Colors.grey, ); }, - separatorBuilder: (cxt, index) => 8.height, + separatorBuilder: (cxt, index) => const Divider().defaultStyle(context), itemCount: snapshot.isCalendarLoading ? 6 : snapshot.calendarRequests.requestsDetails.length, ), - // TableCalendar( - // headerVisible: false, - // calendarFormat: CalendarFormat.week, - // firstDay: DateTime.utc(2010, 10, 16), - // lastDay: DateTime.utc(2030, 3, 14), - // focusedDay: currentDateTime, - // currentDay: currentDateTime, - // rowHeight: 37, - // calendarStyle: CalendarStyle( - // todayDecoration: cellDecoration(), - // todayTextStyle: AppTextStyles.bodyText.copyWith(color: const Color(0xFF2B353E)), - // selectedTextStyle: AppTextStyles.bodyText.copyWith(color: const Color(0xFF2B353E)), - // rangeStartTextStyle: AppTextStyles.bodyText.copyWith(color: const Color(0xFF2B353E)), - // rangeEndTextStyle: AppTextStyles.bodyText.copyWith(color: const Color(0xFF2B353E)), - // ), - // daysOfWeekStyle: DaysOfWeekStyle( - // weekdayStyle: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50), - // weekendStyle: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50), - // ), - // availableGestures: AvailableGestures.none, - // ), ], ).toShadowContainer(context); }), - ).paddingOnly(start: 16, end: 16); + ); } BoxDecoration cellDecoration({Color color}) => BoxDecoration(color: color ?? Colors.transparent, shape: BoxShape.circle); diff --git a/lib/new_views/pages/land_page/dashboard_fragments/recent_activites_fragment.dart b/lib/new_views/pages/land_page/dashboard_fragments/recent_activites_fragment.dart index cbf08a7d..a5f8b1fc 100644 --- a/lib/new_views/pages/land_page/dashboard_fragments/recent_activites_fragment.dart +++ b/lib/new_views/pages/land_page/dashboard_fragments/recent_activites_fragment.dart @@ -14,7 +14,7 @@ class RecentActivitiesFragment extends StatelessWidget { @override Widget build(BuildContext context) { - _notificationsProvider ??= Provider.of(context); + _notificationsProvider ??= Provider.of(context, listen: false); return SingleChildScrollView( padding: const EdgeInsets.all(16), child: Container( diff --git a/lib/new_views/pages/land_page/requests/service_request_item_view.dart b/lib/new_views/pages/land_page/requests/service_request_item_view.dart index 343dc506..7a2f0793 100644 --- a/lib/new_views/pages/land_page/requests/service_request_item_view.dart +++ b/lib/new_views/pages/land_page/requests/service_request_item_view.dart @@ -10,8 +10,9 @@ import 'package:test_sa/views/widgets/requests/request_status.dart'; class ServiceRequestItemView extends StatelessWidget { final RequestsDetails request; + final bool showShadow; - const ServiceRequestItemView(this.request, {Key key}) : super(key: key); + const ServiceRequestItemView(this.request, {Key key, this.showShadow = false}) : super(key: key); @override Widget build(BuildContext context) { @@ -64,6 +65,6 @@ class ServiceRequestItemView extends StatelessWidget { ], ), ], - ).toShadowContainer(context).onPress(() {}); + ).toShadowContainer(context, showShadow: showShadow).onPress(() {}); } } diff --git a/lib/views/widgets/equipment/single_device_picker.dart b/lib/views/widgets/equipment/single_device_picker.dart index 4e2c3a57..bef01473 100644 --- a/lib/views/widgets/equipment/single_device_picker.dart +++ b/lib/views/widgets/equipment/single_device_picker.dart @@ -22,6 +22,7 @@ import '../qr/scan_qr.dart'; class SingleDevicePicker extends StatefulWidget { static final String id = "/single-device-Picker"; + const SingleDevicePicker({Key key}) : super(key: key); @override @@ -91,7 +92,7 @@ class _SingleDevicePickerState extends State { padding: const EdgeInsets.only(left: 16, right: 8), alignment: Alignment.center, decoration: ShapeDecoration( - color: context.isDark?Color(0xFF3B3D4A): Color(0xFFEAF1F4), + color: context.isDark ? Color(0xFF3B3D4A) : Color(0xFFEAF1F4), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(10), ), @@ -149,7 +150,6 @@ class _SingleDevicePickerState extends State { }, child: Column( children: [ - const SizedBox(height: 16), Expanded( child: _searchableList.isEmpty ? NoItemFound(