starwork_flutter/lib/views/team/addPerson/add_person_controller.dart

45 lines
1.7 KiB
Dart

import 'package:flutter/widgets.dart';
import 'package:get/get.dart';
import 'package:get/get_rx/get_rx.dart';
import 'package:get/get_rx/src/rx_types/rx_types.dart';
import 'package:starwork_flutter/api/model/team/response/depart_list_reponse.dart';
import 'package:starwork_flutter/api/model/team/response/role_list_response.dart';
import 'package:starwork_flutter/base/base_controller.dart';
import 'package:starwork_flutter/common/constant/app_view_parameter_keys.dart';
class AddPersonController extends BaseController {
RxString selectedGender = 'male'.obs;
var selectedDepartItem = DepartItem().obs; // 当前选中的组织
TextEditingController nameInputController = TextEditingController();
TextEditingController jobNoInputController = TextEditingController(); // 工号
TextEditingController postInputController = TextEditingController(); // 职务
TextEditingController idCardInputController = TextEditingController(); // 身份证号码
var isOpeningAccount = false.obs; // 是否开通账户
var selectedRoles = <RoleListResponse>[].obs;
@override
void onReady() {
super.onReady();
// 读取参数
final args = Get.arguments;
if (args != null && args.containsKey(AppViewParameterKeys.departItem)) {
final json = args[AppViewParameterKeys.departItem];
selectedDepartItem.value = DepartItem.fromJson(json);
}
}
// 获取选中角色的显示文本
String getSelectedRoleDisplayText() {
if (selectedRoles.isEmpty) {
return '请选择'; // 如果没有选中角色,显示"请选择"
} else {
// 将所有选中角色的名称用逗号连接
return selectedRoles
.map((role) => role.roleName ?? '')
.join(''); // 使用顿号或逗号分隔
}
}
}