people_photo_controller.dart 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import 'package:clean/base/base_controller.dart';
  2. import 'package:clean/base/base_photo_controller.dart';
  3. import 'package:clean/data/bean/photos_type.dart';
  4. import 'package:clean/module/image_picker/image_picker_util.dart';
  5. import 'package:clean/module/people_photo/photo_group.dart';
  6. import 'package:clean/module/photo_preview/photo_preview_view.dart';
  7. import 'package:clean/utils/toast_util.dart';
  8. import 'package:flutter/Material.dart';
  9. import 'package:get/get.dart';
  10. import 'package:wechat_assets_picker/wechat_assets_picker.dart';
  11. import '../../data/consts/event_report_id.dart';
  12. import '../../handler/event_handler.dart';
  13. import '../photo_preview/phtoto_selected_preview_view.dart';
  14. class PeoplePhotoController extends BasePhotoController {
  15. @override
  16. void loadPhotos() {
  17. // 清空现有数据
  18. photoGroups.clear();
  19. final photoGroup = ImagePickerUtil.peoplePhotos;
  20. if (photoGroup.isNotEmpty) {
  21. photoGroups.add(PhotoGroup(
  22. isSelected: false,
  23. images: photoGroup,
  24. ));
  25. }
  26. print('PeoplePhotoController loadPhotos ImagePickerUtil.selectedPeoplePhotosIds ${ImagePickerUtil.selectedPeoplePhotosIds}');
  27. selectedPhotosIds.assignAll(ImagePickerUtil.selectedPeoplePhotosIds);
  28. }
  29. @override
  30. PhotosType getPhotosType() => PhotosType.peoplePhotos;
  31. void clickBack() {
  32. print('PeoplePhotoController clickBack selectedPhotosIds $selectedPhotosIds');
  33. updateSelections(selectedPhotosIds); // 恢复选中状态
  34. Get.back();
  35. }
  36. @override
  37. void onReady() {
  38. // TODO: implement onReady
  39. super.onReady();
  40. EventHandler.report(EventId.event_03006);
  41. }
  42. void clickJumpSelect() {
  43. if (selectedPhotosIds.isEmpty) {
  44. ToastUtil.show('Please select the picture');
  45. return;
  46. }
  47. debugPrint('PeoplePhotoController clickJumpSelected');
  48. EventHandler.report(EventId.event_04005);
  49. PhotoSelectedPreviewPage.start(PhotosType.peoplePhotos, selectedPhotosIds);
  50. }
  51. }