加氢预约 头部数据

This commit is contained in:
2025-11-05 17:53:14 +08:00
parent 71aa1101be
commit 8ccc869a7e
2 changed files with 37 additions and 3 deletions

View File

@@ -1,4 +1,6 @@
import 'package:getx_scaffold/getx_scaffold.dart'; import 'package:getx_scaffold/getx_scaffold.dart';
import 'package:ln_jq_app/common/model/base_model.dart';
import 'package:ln_jq_app/storage_service.dart';
enum ReservationStatus { pending, completed, rejected } enum ReservationStatus { pending, completed, rejected }
@@ -25,6 +27,7 @@ class ReservationModel {
class SiteController extends GetxController with BaseControllerMixin { class SiteController extends GetxController with BaseControllerMixin {
@override @override
String get builderId => 'site'; String get builderId => 'site';
SiteController(); SiteController();
/// 状态变量:是否有预约数据 /// 状态变量:是否有预约数据
@@ -38,6 +41,7 @@ class SiteController extends GetxController with BaseControllerMixin {
super.onInit(); super.onInit();
// 页面初始化时自动加载数据 // 页面初始化时自动加载数据
fetchReservationData(); fetchReservationData();
renderData();
} }
/// 模拟获取预约数据的方法 /// 模拟获取预约数据的方法
@@ -92,6 +96,7 @@ class SiteController extends GetxController with BaseControllerMixin {
dismissLoading(); dismissLoading();
updateUi(); updateUi();
} }
/// 确认预约 /// 确认预约
Future<void> confirmReservation(String id) async { Future<void> confirmReservation(String id) async {
print('确认预约: $id'); print('确认预约: $id');
@@ -111,4 +116,33 @@ class SiteController extends GetxController with BaseControllerMixin {
item.status = ReservationStatus.rejected; item.status = ReservationStatus.rejected;
updateUi(); updateUi();
} }
String leftHydrogen = "";
String orderAmount = "";
String completedAmount = "";
Future<void> renderData() async {
try {
var responseData = await HttpService.to.get(
'appointment/station/getStationInfoById?hydrogenId=${StorageService.to.userId}',
);
if (responseData == null && responseData!.data == null) {
showToast('暂时无法获取站点信息');
return;
}
try {
var result = BaseModel.fromJson(responseData.data);
leftHydrogen = result.data["leftHydrogen"] ?? "";
orderAmount = result.data["orderAmount"].toString();
completedAmount = result.data["completedAmount"].toString();
leftHydrogen = leftHydrogen.isEmpty ? "统计中" : leftHydrogen;
} catch (e) {
showToast('数据异常');
}
} catch (e) {}
}
} }

View File

@@ -87,9 +87,9 @@ class SitePage extends GetView<SiteController> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [
_buildStatItem('300kg', '剩余余量'), _buildStatItem(controller.leftHydrogen, '剩余余量'),
_buildStatItem('12辆', '预约车辆'), _buildStatItem(controller.orderAmount, '预约车辆'),
_buildStatItem('8辆', '已完成'), _buildStatItem(controller.completedAmount, '已完成'),
], ],
), ),
), ),