Browse Source

#287 remove paging crop history

bugfix/20250501
Đại Võ 1 year ago
parent
commit
f6f0849000
3 changed files with 23 additions and 20 deletions
  1. +1
    -1
      lib/data/api/rest_client.dart
  2. +1
    -1
      lib/data/api/rest_client.g.dart
  3. +21
    -18
      lib/presentation/screens/plot_detail/bloc/plot_detail_bloc.dart

+ 1
- 1
lib/data/api/rest_client.dart View File

{@Path() int page = 0, @Path() int size = 20, @Path() String query = '', @DioOptions() Options? options}); {@Path() int page = 0, @Path() int size = 20, @Path() String query = '', @DioOptions() Options? options});


//Crop //Crop
@GET("/api/tb-crops-detail-for-app/{cropId}?page={page}&size={size}&sort=executeDate,DESC")
@GET("/api/tb-crops-detail-for-app/{cropId}")
Future<CropPlot> getCropDetail(@Path() int cropId, {@Path() int page = 0, @Path() int size = 20}); Future<CropPlot> getCropDetail(@Path() int cropId, {@Path() int page = 0, @Path() int size = 20});


@GET("/api/tb-crops-scan-qrCode/{cropCode}") @GET("/api/tb-crops-scan-qrCode/{cropCode}")

+ 1
- 1
lib/data/api/rest_client.g.dart View File

queryParameters.removeWhere((k, v) => v == null); queryParameters.removeWhere((k, v) => v == null);
final _data = <String, dynamic>{}; final _data = <String, dynamic>{};
var _result = await _dio.request( var _result = await _dio.request(
'/api/tb-crops-detail-for-app/$cropId?page=$page&size=$size&sort=executeDate,DESC',
'/api/tb-crops-detail-for-app/$cropId',
queryParameters: queryParameters, queryParameters: queryParameters,
data: _data, data: _data,
); );

+ 21
- 18
lib/presentation/screens/plot_detail/bloc/plot_detail_bloc.dart View File

var response; var response;
if (event.cropId != null) { if (event.cropId != null) {
response = await repository.getPlotDetail(event.cropId ?? -1, page: 0, size: pageSize); response = await repository.getPlotDetail(event.cropId ?? -1, page: 0, size: pageSize);
yield PlotDetailSuccess(items: response.activities, page: 0, hasReachedMax: response.activities.length < pageSize ? true : false);
yield PlotDetailSuccess(items: response.activities, page: 0, hasReachedMax: true);
} else { } else {
CropPlot response = await repository.getPlotDetailByCode(event.cropCode ?? ''); CropPlot response = await repository.getPlotDetailByCode(event.cropCode ?? '');


yield PlotDetailSuccess(ownerItem: response, items: response.activities, page: 0, hasReachedMax: true); yield PlotDetailSuccess(ownerItem: response, items: response.activities, page: 0, hasReachedMax: true);
} }
//remove paging
return;
} }
if (state is PlotDetailSuccess) { if (state is PlotDetailSuccess) {
final currentState = state as PlotDetailSuccess;
int page = (currentState.page ?? 0) + 1;
var response;
if (event.cropId != null) {
response = await repository.getPlotDetail(event.cropId ?? -1, page: page, size: pageSize);
yield response.activities.isEmpty
? currentState.copyWith(hasReachedMax: true)
: PlotDetailSuccess(
items: (currentState.items ?? []) + response.activities,
page: (currentState.page ?? 0) + 1,
hasReachedMax: false,
);
} else {
CropPlot response = await repository.getPlotDetailByCode(event.cropCode ?? '');
yield PlotDetailSuccess(ownerItem: response, items: response.activities, page: 0, hasReachedMax: true);
}
//remove paging
// final currentState = state as PlotDetailSuccess;
// int page = (currentState.page ?? 0) + 1;
// var response;
// if (event.cropId != null) {
// response = await repository.getPlotDetail(event.cropId ?? -1, page: page, size: pageSize);
// yield response.activities.isEmpty
// ? currentState.copyWith(hasReachedMax: true)
// : PlotDetailSuccess(
// items: (currentState.items ?? []) + response.activities,
// page: (currentState.page ?? 0) + 1,
// hasReachedMax: false,
// );
// } else {
// CropPlot response = await repository.getPlotDetailByCode(event.cropCode ?? '');
// yield PlotDetailSuccess(ownerItem: response, items: response.activities, page: 0, hasReachedMax: true);
// }
} }
} catch (e) { } catch (e) {
var errorString = AppException.handleError(e); var errorString = AppException.handleError(e);
response = await repository.getPlotDetailByCode(event.cropCode ?? ''); response = await repository.getPlotDetailByCode(event.cropCode ?? '');
} }


yield PlotDetailSuccess(items: response.activities, page: 0, hasReachedMax: response.activities.length < pageSize ? true : false);
yield PlotDetailSuccess(items: response.activities, page: 0, hasReachedMax: true);
} catch (e) { } catch (e) {
yield PlotDetailFailure(errorString: AppException.handleError(e)); yield PlotDetailFailure(errorString: AppException.handleError(e));
} }

Loading…
Cancel
Save