Fix Asset Filter Pagination Issue

main_design2.0
zaid_daoud 2 years ago
parent 5820668599
commit 04da316440

@ -111,9 +111,10 @@ class AssetProvider extends ChangeNotifier {
@required String host,
@required User user,
@required int hospitalId,
String serialNumber,
String number,
// String serialNumber,
// String number,
bool addPagination = true,
AssetSearch search,
}) async {
Response response;
try {
@ -121,10 +122,10 @@ class AssetProvider extends ChangeNotifier {
// "pageSize": pageItemNumber,
// "pageNumber": devices.length ~/ pageItemNumber + 1,
// "siteId": hospitalId,
if (serialNumber?.isEmpty == false) "assetSerialNumber": serialNumber,
if (number?.isEmpty == false) "assetNo": number,
// if (serialNumber?.isEmpty == false) "assetSerialNumber": serialNumber,
// if (number?.isEmpty == false) "assetNo": number,
};
if (search != null) body.addAll(search.toJson());
if (addPagination) {
body["pageSize"] = pageItemNumber;
body["pageNumber"] = devices.length ~/ pageItemNumber + 1;

@ -42,6 +42,8 @@ class _AssetFilterScreenState extends State<AssetFilterScreen> {
WidgetsFlutterBinding.ensureInitialized().addPostFrameCallback((timeStamp) async {
loading = true;
setState(() {});
startDate = filter.supplyDateFrom;
endDate = filter.supplyDateTo;
final departmentProvider = Provider.of<DepartmentProvider>(context, listen: false);
final siteProvider = Provider.of<SiteProvider>(context, listen: false);
if (departmentProvider?.items?.isEmpty ?? true) await departmentProvider.getDate();

@ -112,7 +112,7 @@ class _CommentsBottomSheetState extends State<CommentsBottomSheet> {
),
),
if (userProvider.user.type == UsersTypes.normal_user) 8.height,
if (userProvider.user.type == UsersTypes.normal_user) // todo its keeps loading when open keyboard or dismiss
if (userProvider.user.type == UsersTypes.normal_user)
AppTextFormField(
labelText: "Type any comment",
backgroundColor: AppColor.neutral30,

@ -78,7 +78,7 @@ class _AutoCompleteDeviceFieldState extends State<AutoCompleteDeviceField> {
host: _settingProvider.host,
user: _userProvider.user,
hospitalId: widget.hospitalId ?? _userProvider.user.clientId,
serialNumber: value,
// serialNumber: value,
);
},
itemBuilder: (context, device) {

@ -158,7 +158,13 @@ class _MyAssetsPageState extends State<MyAssetsPage> {
nextPage: _devicesProvider.nextPage,
onLazyLoad: () async {
await _devicesProvider.getDevicesList(
user: _userProvider.user, host: _settingProvider.host, hospitalId: _userProvider.user.clientId, serialNumber: snController.text, number: numberController.text);
user: _userProvider.user,
host: _settingProvider.host,
hospitalId: _userProvider.user.clientId,
search: _searchAsset.copyWith(assetSerialNumber: snController.text, assetNo: numberController.text),
// serialNumber: snController.text,
// number: numberController.text,
);
},
child: AnimatedSwitcher(
duration: const Duration(milliseconds: 500),

@ -77,7 +77,7 @@ class _AutoCompleteDeviceNumberFieldState extends State<AutoCompleteDeviceNumber
textInputAction: TextInputAction.search,
),
suggestionsCallback: (vale) async {
return await _devicesProvider.getDevicesList(host: _settingProvider.host, user: _userProvider.user, hospitalId: widget.hospitalId, number: vale, addPagination: false);
return await _devicesProvider.getDevicesList(host: _settingProvider.host, user: _userProvider.user, hospitalId: widget.hospitalId, /* number: vale,*/ addPagination: false);
},
itemBuilder: (context, device) {
return device.assetNumber.bodyText(context).paddingOnly(bottom: 16, start: 16);

Loading…
Cancel
Save