Files
food_hub_app/lib/apis/moment.dart
2025-11-23 00:02:41 +08:00

46 lines
1.3 KiB
Dart

import 'package:flutter_common/utils/convert_utils.dart';
import 'package:flutter_common/utils/http_utils.dart';
import 'package:food_hub_app/config/app_config.dart';
import 'package:food_hub_app/models/moment.dart';
final httpUtil = HttpUtil(baseUrl: AppConfig.baseApiUrl);
Future<bool> addMomentApi(Moment moment) {
return httpUtil.post<bool>("/moment", data: moment);
}
Future<bool> updateMomentApi(int id, Moment moment) {
return httpUtil.put<bool>("/moment/$id", data: moment);
}
Future<bool> deleteMomentApi(int id) {
return httpUtil.delete<bool>("/moment/$id");
}
Future<List<Moment>> queryMomentListApi() {
return httpUtil.get<List<Moment>>(
"/moment",
converter: (data) => convertList<Moment>(data, Moment.fromJson),
);
}
Future<PageMoment> queryMomentByPageApi(int currentPage, int pageSize) {
return httpUtil.get<PageMoment>(
"/moment/page",
queryParameters: {"currentPage": currentPage, "pageSize": pageSize},
converter: (data) => PageMoment.fromJson(data),
);
}
Future<bool> addMomentCommentApi(int id, String content) {
return httpUtil.post<bool>("/moment/$id/comment", data: content);
}
Future<bool> addMomentLikeApi(int id) {
return httpUtil.post<bool>("/food/moment/$id/like");
}
Future<bool> deleteMomentLikeApi(int id) {
return httpUtil.delete<bool>("/food/moment/$id/like");
}