controller.dart 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import 'package:electronic_assistant/base/base_controller.dart';
  2. import 'package:electronic_assistant/data/bean/template_bean.dart';
  3. import 'package:electronic_assistant/module/template/template_edit/view.dart';
  4. import 'package:get/get.dart';
  5. import 'package:get/get_core/src/get_main.dart';
  6. class TemplateDetailController extends BaseController {
  7. final Rxn<TemplateBean> _templateBean = Rxn<TemplateBean>();
  8. final RxList<String> templateTitle = RxList();
  9. TemplateBean? get templateBean => _templateBean.value;
  10. dynamic result;
  11. @override
  12. void onInit() {
  13. super.onInit();
  14. _getArguments();
  15. }
  16. void _getArguments() {
  17. var arguments = Get.arguments;
  18. if (arguments is TemplateBean) {
  19. _templateBean.value = arguments;
  20. _combinationTemplateList(arguments);
  21. }
  22. }
  23. void onBack() {
  24. Get.back(result: result);
  25. }
  26. void onUpdateTemplate() async {
  27. final templateBean = _templateBean.value;
  28. if (templateBean == null || templateBean.isDefaultTemp) {
  29. return;
  30. }
  31. dynamic isSuccess = await TemplateEditPage.editDetail(templateBean);
  32. if (isSuccess == true) {
  33. _templateBean.refresh();
  34. if (_templateBean.value != null) {
  35. _combinationTemplateList(_templateBean.value!);
  36. }
  37. }
  38. result = isSuccess;
  39. }
  40. void _combinationTemplateList(TemplateBean bean) {
  41. templateTitle.clear();
  42. if (bean.titles != null) {
  43. templateTitle.addAll(bean.titles!);
  44. }
  45. if (bean.defaultTitle?.isNotEmpty == true) {
  46. templateTitle.add(bean.defaultTitle!);
  47. }
  48. }
  49. }