import 'package:dio/dio.dart'; import 'package:farm_tpf/custom_model/CropPlot.dart'; import 'package:farm_tpf/custom_model/Device.dart'; import 'package:farm_tpf/custom_model/account.dart'; import 'package:farm_tpf/custom_model/password.dart'; import 'package:farm_tpf/custom_model/user.dart'; import 'package:farm_tpf/custom_model/user_request.dart'; import 'package:farm_tpf/models/Supply.dart'; import 'package:farm_tpf/models/index.dart'; import 'package:farm_tpf/utils/const_common.dart'; import 'package:retrofit/retrofit.dart'; part 'rest_client.g.dart'; @RestApi(baseUrl: ConstCommon.baseUrl) abstract class RestClient { factory RestClient(Dio dio, {String baseUrl}) = _RestClient; @POST("/api/authenticate") Future login(@Body() UserRequest userRequest); @GET("/api/account") Future getMe(); @POST("/api/account/reset-password/init") Future forgotPassword(@Body() String email); @POST("/api/account/reset-password/finish") Future resetPassword(@Body() Password password); @POST("/api/account/change-password") Future changePassword(@Body() Password password); @PUT("/api/update-my-profile") Future updateProfile(@Body() Account account); @GET("/api/tb-supplies-by-type/{type}") Future> getSupplies(@Path() String type); //Common @PUT("/api/update-fcmToken") Future updateFcmToken(@Body() String token); @GET("/api/tb-crops?page={page}&size={size}&query={query}") Future> getPlots( {@Path() int page = 0, @Path() int size = 20, @Path() String query = ""}); @GET("/api/listActivityTypesOther") Future> getActionTypes(); //Crop @GET( "/api/tb-crops-detail/{cropId}?page={page}&size={size}&sort=executeDate,DESC") Future getCropDetail(@Path() int cropId, {@Path() int page = 0, @Path() int size = 20}); @PUT("/api/tb-crops") Future updateCrop(@Body() TbCropDTO crop); //Device @GET("/api/listDeviceOfUserCustomers") Future> getDevices(); }