YMReportViewModel.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. //
  2. // YMReportViewModel.h
  3. // MSYOUPAI
  4. //
  5. // Created by YoMi on 2024/3/5.
  6. // Copyright © 2024 MS. All rights reserved.
  7. //
  8. #import "MSYOUPAIViewModel.h"
  9. #import "YMReportReasonCellViewModel.h"
  10. #import "YMReportEvidenceCellViewModel.h"
  11. NS_ASSUME_NONNULL_BEGIN
  12. /** 举报类型*/
  13. typedef NS_ENUM(NSUInteger, YMReportType) {
  14. /** 个人详情页*/
  15. YMReportTypePersonalPage = 1,
  16. /** 视频*/
  17. YMReportTypeVideo,
  18. /** 动态*/
  19. YMReportTypeDynamic,
  20. /** IM*/
  21. YMReportTypeIM,
  22. };
  23. @interface YMReportViewModel : MSYOUPAIViewModel
  24. /// 获取举报原因列表数据
  25. - (void)getReportReasonListData;
  26. /// 上传举报证据数据
  27. - (void)uploadReportEvidenceData;
  28. /// 打开证据选择器
  29. - (void)openEvidencePickerPopupView;
  30. /// 举报备注最大上限
  31. @property (nonatomic, assign, readonly) NSInteger reportRemarkMaxLength;
  32. /// 举报类型 1 个人详情页 2 视频 3 动态 4 IM
  33. @property (nonatomic, assign, readonly) YMReportType reportType;
  34. /// 举报原因数据
  35. @property (nonatomic, strong, readonly) NSArray <YMReportReasonCellViewModel*>*reportReasonDataArray;
  36. /// 是否显示添加Cell
  37. @property (nonatomic, assign, readonly) BOOL isHideAddCell;
  38. /// 添加CellViewModel
  39. @property (nonatomic, strong, readonly) YMReportEvidenceCellViewModel *addCellViewModel;
  40. /// 举报证据数据
  41. @property (nonatomic, strong, readonly) NSArray <YMReportEvidenceCellViewModel*>*reportEvidenceDataArray;
  42. /// 刷新举报原因
  43. @property (nonatomic, strong, readonly) RACSubject *refreshReportReasonSubject;
  44. /// 刷新举报证据
  45. @property (nonatomic, strong, readonly) RACSubject *refreshReportEvidenceSubject;
  46. /// 获取举报原因Id
  47. @property (nonatomic, strong, readonly) RACSubject *getReportReasonIdSubject;
  48. /// 新增证据
  49. @property (nonatomic, strong, readonly) RACSubject *addReportEvidenceSubject;
  50. /// 删除证据
  51. @property (nonatomic, strong, readonly) RACSubject *deleteReportEvidenceSubject;
  52. /// 获取举报文本
  53. @property (nonatomic, strong, readonly) RACSubject *getReportTextSubject;
  54. @end
  55. NS_ASSUME_NONNULL_END