RAHomeViewController.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. @protocol RAHomeSectionModelDelegate <NSObject>
  11. - (void)refreshUI;
  12. @end
  13. #pragma mark - Section Model
  14. @interface RAHomeSectionModel : NSObject
  15. @property (nonatomic,assign) RAOrderStatus type;
  16. @property (nonatomic,strong) NSArray <RAHomeOrderModel *> *orders;
  17. @property (nonatomic,copy) NSString *title;
  18. @property (nonatomic,readonly) NSInteger ordersCount;
  19. @property (nonatomic,assign) NSInteger section;
  20. @property (nonatomic,assign) NSInteger totalCount;
  21. @property (nonatomic,assign) NSInteger backendFlagCount;///<后台修改Order的个数
  22. @property (nonatomic,weak) id<RAHomeSectionModelDelegate> delegate;
  23. - (BOOL)hasMoreOrder;
  24. - (RAHomeOrderModel *)modelForOrder:(NSString *)orderId;
  25. @end
  26. #pragma mark - View Controller
  27. @class RAHomeHeaderView;
  28. @interface RAHomeViewController : RABaseViewController
  29. @property (strong, nonatomic) IBOutlet UITableView *homeOrderTableView;
  30. @property (nonatomic,copy) NSString *currentOrderID;
  31. @property (nonatomic,assign) BOOL reloadFlag;///<视图显示时Reload
  32. @property (nonatomic,strong, readonly) RAHomeHeaderView *headerView;
  33. #pragma mark - Getter
  34. - (NSUInteger)orderSectionCount;
  35. - (RAHomeSectionModel *)modelForSection:(NSInteger)section;
  36. - (NSUInteger)orderCountForSection:(NSInteger)section;
  37. - (RAHomeOrderModel *)orderModelForIndexPath:(NSIndexPath *)indexPath;
  38. - (NSString *)titleForSection:(NSInteger)section;
  39. - (BOOL)hasMoreOrderForSection:(NSInteger)section;
  40. - (NSInteger)backendCountForSection:(NSInteger)section;
  41. #pragma mark - Set/Update
  42. - (void)setBackendFlagCount:(NSInteger)count forSection:(NSInteger)section;
  43. - (void)decreaseBackendFlagCountForSection:(NSInteger)section;
  44. - (void)setHeaderDelegate:(id<RAHomeSectionModelDelegate>) delegate forSection:(NSInteger)section;
  45. #pragma mark - Controller Action
  46. - (void)pushDetailViewControllerForModel:(RAHomeOrderModel *)model;
  47. - (void)showMoreOrderForSection:(NSInteger)section;
  48. @end