request list added on my requests.

main_design2.0
Sikander Saleem 2 years ago
parent ab83963c65
commit ecacd2ec8f

@ -350,16 +350,18 @@
"item" : "Item",
"measuredValue": "Measured Value",
"overdue": "Overdue",
"sureExit" : "Are you sure ypu want to Exit? ",
"daily" : "Daily",
"weekly" : "Weekly",
"monthly" : "Monthly",
"myShift" : "My Shift",
"myTeamRequest" : "My Team Request",
"sunToThurs": "Sunday to Thursday",
"requestGasRefill" : "Request Gas Refill",
"trackGasRefill" : "Track Gas Refill",
"trackAssetTransfer" : "Track Asset Transfer",
"total" : "Total",
"noDataFound" : "No Data Found"
"sureExit" : "Are you sure ypu want to Exit? ",
"daily" : "Daily",
"weekly" : "Weekly",
"monthly" : "Monthly",
"myShift" : "My Shift",
"myTeamRequest" : "My Team Request",
"sunToThurs": "Sunday to Thursday",
"requestGasRefill" : "Request Gas Refill",
"trackGasRefill" : "Track Gas Refill",
"trackAssetTransfer" : "Track Asset Transfer",
"deviceTransferRequest" : "Device Transfer Requests",
"total" : "Total",
"noDataFound" : "No Data Found",
"allRequests" : "All Requests"
}

@ -6,6 +6,7 @@ import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/search_all_requests_model.dart';
import 'package:test_sa/new_views/app_style/app_color.dart';
import 'package:test_sa/new_views/pages/land_page/my_request/all_requests_filter_page.dart';
import 'package:test_sa/new_views/pages/land_page/my_request/all_requests_search_page.dart';
import 'package:test_sa/new_views/pages/land_page/widgets/request_item_view_list.dart';
@ -21,9 +22,20 @@ class _MyRequestsPageState extends State<MyRequestsPage> {
AllRequestsProvider _provider;
SearchAllRequestsModel _search;
List<String> requestsList;
int selectedRequest;
@override
Widget build(BuildContext context) {
if (_provider == null) {
requestsList = [
context.translation.allRequests,
context.translation.serviceRequest,
context.translation.gasRefillRequest,
context.translation.deviceTransferRequest,
context.translation.preventiveMaintenance,
];
selectedRequest = 0;
_provider = Provider.of<AllRequestsProvider>(context, listen: false);
_provider.getAllRequests();
}
@ -78,8 +90,47 @@ class _MyRequestsPageState extends State<MyRequestsPage> {
],
).paddingOnly(start: 16, end: 16),
),
body: Consumer<AllRequestsProvider>(builder: (context, snapshot, _) {
return RequestItemViewList(snapshot.allRequestsAndCount?.requestsDetails ?? [], snapshot.isAllLoading);
}));
body: Column(
children: [
SizedBox(
height: 34 + 16.0,
child: ListView.separated(
scrollDirection: Axis.horizontal,
padding: const EdgeInsets.only(top: 16, right: 16, left: 16),
itemBuilder: (cxt, index) => Container(
alignment: Alignment.center,
padding: const EdgeInsets.symmetric(horizontal: 8),
decoration: ShapeDecoration(
color: selectedRequest == index ? const Color(0xFFEAF1F4) : Colors.white,
shape: RoundedRectangleBorder(
side: BorderSide(width: 1, color: selectedRequest == index ? Color(0xFF4A8DB7) : Colors.white),
borderRadius: BorderRadius.circular(7),
),
shadows: const [
BoxShadow(
color: Color(0x07000000),
blurRadius: 14,
offset: Offset(0, 0),
spreadRadius: 0,
)
],
),
child: Text(requestsList[index], style: AppTextStyles.bodyText2.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50, height: 1)),
).onPress(() {
if (selectedRequest != index) {
setState(() {
selectedRequest = index;
});
_provider.getAllRequests(typeTransaction: selectedRequest == 0 ? null : selectedRequest);
}
}),
separatorBuilder: (cxt, index) => 8.width,
itemCount: requestsList.length),
),
Consumer<AllRequestsProvider>(builder: (context, snapshot, _) {
return RequestItemViewList(snapshot.allRequestsAndCount?.requestsDetails ?? [], snapshot.isAllLoading);
}).expanded,
],
));
}
}

@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/all_requests_and_count_model.dart';
@ -6,6 +7,7 @@ import 'package:test_sa/new_views/pages/land_page/requests/asset_item_view.dart'
import 'package:test_sa/new_views/pages/land_page/requests/gas_refill_item_view.dart';
import 'package:test_sa/new_views/pages/land_page/requests/ppm_item_view.dart';
import 'package:test_sa/new_views/pages/land_page/requests/service_request_item_view.dart';
import 'package:test_sa/views/widgets/loaders/no_item_found.dart';
class RequestItemViewList extends StatelessWidget {
List<RequestsDetails> list;
@ -15,30 +17,32 @@ class RequestItemViewList extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ListView.separated(
padding: const EdgeInsets.all(16),
itemBuilder: (cxt, index) {
if (isLoading) return SizedBox().toRequestShimmer(cxt, isLoading);
bool isServiceRequest = list[index].nameOfType == "ServiceRequest";
bool isGasRefill = list[index].nameOfType == "GasRefill";
bool isAssetTransfer = list[index].nameOfType == "AssetTransfer";
bool isPPMs = list[index].nameOfType == "PPMs";
return (list?.isEmpty ?? true)
? NoItemFound(message: context.translation.noDataFound)
: ListView.separated(
padding: const EdgeInsets.all(16),
itemBuilder: (cxt, index) {
if (isLoading) return SizedBox().toRequestShimmer(cxt, isLoading);
bool isServiceRequest = list[index].nameOfType == "ServiceRequest";
bool isGasRefill = list[index].nameOfType == "GasRefill";
bool isAssetTransfer = list[index].nameOfType == "AssetTransfer";
bool isPPMs = list[index].nameOfType == "PPMs";
return isServiceRequest
? ServiceRequestItemView(list[index])
: isGasRefill
? GasRefillItemView(list[index])
: isPPMs
? PpmItemView(list[index])
: isAssetTransfer
? AssetItemView(list[index])
: Container(
height: 100,
width: double.infinity,
color: Colors.grey,
);
},
separatorBuilder: (cxt, index) => 8.height,
itemCount: isLoading ? 6 : list.length);
return isServiceRequest
? ServiceRequestItemView(list[index])
: isGasRefill
? GasRefillItemView(list[index])
: isPPMs
? PpmItemView(list[index])
: isAssetTransfer
? AssetItemView(list[index])
: Container(
height: 100,
width: double.infinity,
color: Colors.grey,
);
},
separatorBuilder: (cxt, index) => 8.height,
itemCount: isLoading ? 6 : list.length);
}
}

@ -152,9 +152,7 @@ class _SingleDevicePickerState extends State<SingleDevicePicker> {
children: [
Expanded(
child: _searchableList.isEmpty
? NoItemFound(
message: context.translation.noDeviceFound,
)
? NoItemFound(message: context.translation.noDeviceFound)
: LazyLoading(
nextPage: _devicesProvider.nextPage,
onLazyLoad: () async {

Loading…
Cancel
Save