RYBaseVM.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. //
  2. // RYBaseVM.h
  3. // Asteria
  4. //
  5. // Created by 王猛 on 2023/12/25.
  6. //
  7. #import <Foundation/Foundation.h>
  8. NS_ASSUME_NONNULL_BEGIN
  9. @protocol RY_baseVMprotocol <NSObject>
  10. ///获取网络请求的回调
  11. -(void)ry_respnsData:(nullable id)data
  12. parseAry:(nullable NSMutableArray *)arry
  13. sucess:(BOOL)sucessOrFail
  14. mark:(NSString *)mark;
  15. ///batch 多个 网络请求同步的代理
  16. ///同步时发出了a、b、c 3个网络请求,我们希望在a、b、c 3个网络请求都结束的时候获得一个通知
  17. //-(void)pro_batchResponAry:(NSArray <UCMHttpRequestResponse *>*)responseAry success:(BOOL)success modelData:(NSMutableArray *_Nullable)modelAry;
  18. @end
  19. @interface RYBaseVM : NSObject
  20. @property (nonatomic, weak) id <RY_baseVMprotocol> delegate;
  21. + (instancetype)setupVMclass:(Class)VMclass;
  22. - (instancetype)initDelegate:(id<RY_baseVMprotocol>)delegte;
  23. -(void)ry_requestPostApi:(NSString *)mark param:(NSDictionary *)param;
  24. -(void)ry_formDataRequestPostApi:(NSString *)mark param:(NSDictionary *)param;
  25. -(void)ry_requestGetApi:(NSString *)mark param:(NSDictionary *)param;
  26. -(void)ry_requestDeleteApi:(NSString *)mark param:(NSDictionary *)param;
  27. //重写的方法 解析之后再传给 VC
  28. -(void)ry_respnsSucessWithPath:(NSString *)mark data:(id)data;
  29. -(void)ry_reponsFaildWithPath:(NSString *)mark code:(NSString *)code msg:(NSString *)msg;
  30. - (void)ry_VMconfigDelegateData:(id)data
  31. parseAry:(NSMutableArray *)ary
  32. success:(BOOL)success
  33. mark:(NSString *)mark;
  34. @end
  35. NS_ASSUME_NONNULL_END