diff --git a/lib/app/features/problem/presentation/controllers/problem_form_controller.dart b/lib/app/features/problem/presentation/controllers/problem_form_controller.dart index 0b251d4..3963665 100644 --- a/lib/app/features/problem/presentation/controllers/problem_form_controller.dart +++ b/lib/app/features/problem/presentation/controllers/problem_form_controller.dart @@ -75,10 +75,10 @@ class ProblemFormController extends GetxController { } @override - void onInit() { + Future onInit() async { super.onInit(); + await _fetchEnterprises(); updatePageTitle(); - _fetchEnterprises(); } @override @@ -95,6 +95,7 @@ class ProblemFormController extends GetxController { break; case FormMode.edit: titleName.value = '修改问题'; + selectedEnterprise.value = enterprise; break; case FormMode.view: titleName.value = '查看问题'; @@ -236,6 +237,7 @@ class ProblemFormController extends GetxController { description: descriptionController.text, location: locationController.text, imageUrls: imagePaths, + enterpriseId: selectedEnterprise.value!.id, ); await updateProblemUsecase(updatedProblem); } else { @@ -248,7 +250,6 @@ class ProblemFormController extends GetxController { ); } Get.back(result: true); // 返回成功结果 - Get.snackbar('成功', '问题已更新'); } catch (e) { Get.snackbar('错误', '保存问题失败: $e'); } finally { diff --git a/lib/app/features/problem/presentation/controllers/problem_list_controller.dart b/lib/app/features/problem/presentation/controllers/problem_list_controller.dart index 84ad1c6..cc6aace 100644 --- a/lib/app/features/problem/presentation/controllers/problem_list_controller.dart +++ b/lib/app/features/problem/presentation/controllers/problem_list_controller.dart @@ -181,7 +181,7 @@ class ProblemListController extends GetxController { search(); Get.snackbar( '成功', - '企业信息已更新', + '问题已更新', backgroundColor: Colors.green[600], colorText: Colors.white, icon: const Icon(Icons.check_circle, color: Colors.white), @@ -208,7 +208,7 @@ class ProblemListController extends GetxController { search(); Get.snackbar( '成功', - '企业信息已创建', + '问题已创建', backgroundColor: Colors.green[600], colorText: Colors.white, icon: const Icon(Icons.check_circle, color: Colors.white), diff --git a/lib/app/features/problem/presentation/pages/problem_form_page.dart b/lib/app/features/problem/presentation/pages/problem_form_page.dart index 0bd233d..631e04d 100644 --- a/lib/app/features/problem/presentation/pages/problem_form_page.dart +++ b/lib/app/features/problem/presentation/pages/problem_form_page.dart @@ -3,7 +3,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:image_picker/image_picker.dart'; -import 'package:problem_check_system/app/core/models/form_mode.dart'; import 'package:problem_check_system/app/core/pages/widgets/custom_app_bar.dart'; import 'package:problem_check_system/app/features/enterprise/domain/entities/enterprise.dart'; import 'package:problem_check_system/app/features/problem/presentation/controllers/problem_form_controller.dart'; @@ -476,9 +475,7 @@ class ProblemFormPage extends GetView { hint: const Text('请选择一个企业'), isExpanded: true, // 当前选中的值,直接从控制器获取 - value: controller.formMode == FormMode.edit - ? controller.enterprise - : controller.selectedEnterprise.value, + value: controller.selectedEnterprise.value, // 列表项,通过map从控制器列表动态生成 items: controller.enterpriseList.map((enterprise) { return DropdownMenuItem(