站点信息,保存 数据
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import 'package:get/get.dart';
|
||||
import 'package:getx_scaffold/getx_scaffold.dart';
|
||||
import 'package:ln_jq_app/common/model/base_model.dart';
|
||||
import 'package:ln_jq_app/pages/login/view.dart';
|
||||
|
||||
import '../../../storage_service.dart';
|
||||
@@ -13,7 +14,7 @@ class ReservationController extends GetxController with BaseControllerMixin {
|
||||
final List<String> operationStatusOptions = ['营运中', '维修中', '暂停营业', '站点关闭'];
|
||||
|
||||
// 当前选中的值,默认为'运营中'
|
||||
late String selectedOperationStatus;
|
||||
String selectedOperationStatus = "";
|
||||
|
||||
ReservationController() {
|
||||
selectedOperationStatus = operationStatusOptions[0]; // 初始化选中值
|
||||
@@ -26,14 +27,68 @@ class ReservationController extends GetxController with BaseControllerMixin {
|
||||
renderData();
|
||||
}
|
||||
|
||||
String name = "";
|
||||
String address = "";
|
||||
String phone = "";
|
||||
String costPrice = ""; //氢气价格
|
||||
String customerPrice = ""; //官方价格
|
||||
String startBusiness = "";
|
||||
String endBusiness = "";
|
||||
String timeStr = "";
|
||||
String operatingEnterprise = "";
|
||||
String hydrogenId = "";
|
||||
|
||||
Future<void> renderData() async {
|
||||
showLoading("加载中");
|
||||
|
||||
// 模拟网络请求延迟
|
||||
await Future.delayed(const Duration(seconds: 1));
|
||||
try {
|
||||
var responseData = await HttpService.to.get(
|
||||
'appointment/station/getStationInfoById?hydrogenId=${StorageService.to.userId}',
|
||||
);
|
||||
|
||||
dismissLoading();
|
||||
updateUi();
|
||||
if (responseData == null && responseData!.data == null) {
|
||||
dismissLoading();
|
||||
showToast('暂时无法获取站点信息');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
var result = BaseModel.fromJson(responseData.data);
|
||||
|
||||
name = result.data["name"];
|
||||
hydrogenId = result.data["hydrogenId"].toString();
|
||||
address = result.data["address"];
|
||||
costPrice = result.data["costPrice"].toString();
|
||||
customerPrice = result.data["customerPrice"].toString();
|
||||
phone = result.data["phone"];
|
||||
startBusiness = result.data["startBusiness"];
|
||||
endBusiness = result.data["endBusiness"];
|
||||
operatingEnterprise = result.data["operatingEnterprise"].toString();
|
||||
selectedOperationStatus = result.data["siteStatusName"].toString();
|
||||
|
||||
if (startBusiness.isNotEmpty && endBusiness.isNotEmpty) {
|
||||
// 营业时间为24小时的特殊处理
|
||||
if (startBusiness == "00:00:00" && endBusiness == "23:59:59") {
|
||||
timeStr = "24小时营业";
|
||||
} else {
|
||||
timeStr = '${startBusiness.substring(0, 5)} - ${endBusiness.substring(0, 5)}';
|
||||
}
|
||||
} else {
|
||||
timeStr = "时间未设置";
|
||||
}
|
||||
|
||||
operatingEnterprise = operatingEnterprise.isEmpty ? "暂未设置" : operatingEnterprise;
|
||||
|
||||
updateUi();
|
||||
dismissLoading();
|
||||
} catch (e) {
|
||||
// 如果解析 JSON 失败
|
||||
dismissLoading();
|
||||
showToast('数据异常');
|
||||
}
|
||||
} catch (e) {
|
||||
dismissLoading();
|
||||
}
|
||||
}
|
||||
|
||||
/// 更新运营状态的方法
|
||||
@@ -44,18 +99,45 @@ class ReservationController extends GetxController with BaseControllerMixin {
|
||||
}
|
||||
}
|
||||
|
||||
void saveInfo() {
|
||||
// TODO: 在这里执行保存信息的逻辑
|
||||
// 1. 获取所有输入框和下拉框的最新值
|
||||
// 2. 调用API接口,将数据提交到服务器
|
||||
// 3. 根据接口返回结果给出提示(成功或失败)
|
||||
Get.snackbar('提示', '保存成功!'); // 示例:显示一个成功的提示
|
||||
void saveInfo() async {
|
||||
showLoading("保存中");
|
||||
|
||||
try {
|
||||
var responseData = await HttpService.to.post(
|
||||
'appointment/station/updateStationStatus',
|
||||
data: {
|
||||
'hydrogenId': hydrogenId,
|
||||
'siteStatus': selectedOperationStatus == "营运中"
|
||||
? "0"
|
||||
: selectedOperationStatus == "维修中"
|
||||
? "1"
|
||||
: selectedOperationStatus == "站点关闭"
|
||||
? "2"
|
||||
: selectedOperationStatus == "暂停营业"
|
||||
? "3"
|
||||
: 0,
|
||||
'updateTime': getNowDateTimeString(),
|
||||
},
|
||||
);
|
||||
|
||||
if (responseData == null && responseData!.data == null) {
|
||||
dismissLoading();
|
||||
showToast('服务暂不可用,请稍后');
|
||||
return;
|
||||
}
|
||||
var result = BaseModel.fromJson(responseData.data);
|
||||
if (result.code == 0) {
|
||||
showSuccessToast("保存成功");
|
||||
}
|
||||
dismissLoading();
|
||||
} catch (e) {
|
||||
dismissLoading();
|
||||
}
|
||||
}
|
||||
|
||||
void logout() async{
|
||||
void logout() async {
|
||||
// TODO: 在这里执行退出登录的逻辑
|
||||
//清理本地缓存的用户信息 导航到登录页面
|
||||
HttpService.to.clearAuthorization();
|
||||
await StorageService.to.clearLoginInfo();
|
||||
|
||||
Get.offAll(() => LoginPage());
|
||||
|
||||
Reference in New Issue
Block a user