61 lines
1.7 KiB
Dart
61 lines
1.7 KiB
Dart
import 'package:get/get.dart';
|
||
import 'package:getx_scaffold/getx_scaffold.dart';
|
||
import 'package:ln_jq_app/pages/login/view.dart';
|
||
|
||
class ReservationController extends GetxController with BaseControllerMixin {
|
||
@override
|
||
String get builderId => 'b_reservation'; // 确保ID与View中一致
|
||
|
||
// --- 运营状态下拉菜单所需的状态 ---
|
||
// 下拉菜单的选项列表
|
||
final List<String> operationStatusOptions = ['营运中', '维修中', '暂停营业', '站点关闭'];
|
||
|
||
// 当前选中的值,默认为'运营中'
|
||
late String selectedOperationStatus;
|
||
|
||
ReservationController() {
|
||
selectedOperationStatus = operationStatusOptions[0]; // 初始化选中值
|
||
}
|
||
|
||
@override
|
||
void onInit() {
|
||
super.onInit();
|
||
// 可以在这里从服务器加载站点的初始信息
|
||
renderData();
|
||
}
|
||
|
||
Future<void> renderData() async {
|
||
showLoading("加载中");
|
||
|
||
// 模拟网络请求延迟
|
||
await Future.delayed(const Duration(seconds: 1));
|
||
|
||
dismissLoading();
|
||
updateUi();
|
||
}
|
||
|
||
/// 更新运营状态的方法
|
||
void onOperationStatusChanged(String? newValue) {
|
||
if (newValue != null) {
|
||
selectedOperationStatus = newValue;
|
||
updateUi();
|
||
}
|
||
}
|
||
|
||
void saveInfo() {
|
||
// TODO: 在这里执行保存信息的逻辑
|
||
// 1. 获取所有输入框和下拉框的最新值
|
||
// 2. 调用API接口,将数据提交到服务器
|
||
// 3. 根据接口返回结果给出提示(成功或失败)
|
||
Get.snackbar('提示', '保存成功!'); // 示例:显示一个成功的提示
|
||
}
|
||
|
||
void logout() {
|
||
// TODO: 在这里执行退出登录的逻辑
|
||
// 1. 清理本地缓存的用户信息
|
||
// 2. 调用退出登录接口
|
||
// 3. 导航到登录页面
|
||
Get.offAll(() => LoginPage());
|
||
}
|
||
}
|