RAHomeViewController.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. //
  2. // RAHomeViewController.h
  3. // Apex And Drivers
  4. //
  5. // Created by Jack on 2018/6/1.
  6. // Copyright © 2018年 USAI. All rights reserved.
  7. //
  8. #import "RABaseViewController.h"
  9. #import "RAHomeOrderModel.h"
  10. #import "RAEmptyView.h"
  11. @protocol RAHomeSectionModelDelegate <NSObject>
  12. - (void)refreshUI;
  13. @end
  14. #pragma mark - Section Model
  15. @interface RAHomeSectionModel : NSObject
  16. @property (nonatomic,assign) RAOrderStatus type;
  17. @property (nonatomic,strong) NSArray <RAHomeOrderModel *> *orders;
  18. @property (nonatomic,copy) NSString *title;
  19. @property (nonatomic,readonly) NSInteger ordersCount;
  20. @property (nonatomic,assign) NSInteger section;
  21. @property (nonatomic,assign) NSInteger totalCount;
  22. @property (nonatomic,assign) NSInteger backendFlagCount;///<后台修改Order的个数
  23. @property (nonatomic,weak) id<RAHomeSectionModelDelegate> delegate;
  24. - (BOOL)hasMoreOrder;
  25. - (RAHomeOrderModel *)modelForOrder:(NSString *)orderId;
  26. @end
  27. #pragma mark - View Controller
  28. @class RAHomeHeaderView;
  29. @interface RAHomeViewController : RABaseViewController
  30. @property (strong, nonatomic) IBOutlet UITableView *homeOrderTableView;
  31. @property (nonatomic,copy) NSString *currentOrderID;
  32. @property (nonatomic,assign) BOOL reloadFlag;///<视图显示时Reload
  33. @property (weak, nonatomic) IBOutlet UILabel *label_cache;
  34. @property (strong,nonatomic) RAEmptyView * Reloadview;
  35. @property (nonatomic,strong, readonly) RAHomeHeaderView *headerView;
  36. #pragma mark - Getter
  37. - (NSUInteger)orderSectionCount;
  38. - (RAHomeSectionModel *)modelForSection:(NSInteger)section;
  39. - (NSUInteger)orderCountForSection:(NSInteger)section;
  40. - (RAHomeOrderModel *)orderModelForIndexPath:(NSIndexPath *)indexPath;
  41. - (NSString *)titleForSection:(NSInteger)section;
  42. - (BOOL)hasMoreOrderForSection:(NSInteger)section;
  43. - (NSInteger)backendCountForSection:(NSInteger)section;
  44. #pragma mark - Set/Update
  45. - (void)setBackendFlagCount:(NSInteger)count forSection:(NSInteger)section;
  46. - (void)decreaseBackendFlagCountForSection:(NSInteger)section;
  47. - (void)setHeaderDelegate:(id<RAHomeSectionModelDelegate>) delegate forSection:(NSInteger)section;
  48. #pragma mark - Controller Action
  49. - (void)pushDetailViewControllerForModel:(RAHomeOrderModel *)model;
  50. - (void)showMoreOrderForSection:(NSInteger)section;
  51. @end