| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- //
- // RAOfflineHandler.h
- // Apex And Drivers
- //
- // Created by Jack on 2018/10/22.
- // Copyright © 2018年 USAI. All rights reserved.
- //
- #import <Foundation/Foundation.h>
- NS_ASSUME_NONNULL_BEGIN
- @class RAEditImageBaseModel;
- @interface RAOfflineHandler : NSObject
- /**
- * @brief 使用OfflineHandler,通过此方法获取
- */
- + (instancetype)defaultHandler;
- /**
- * @brief 向服务器请求离线数据
- */
- - (void)downloadOfflineData;
- #pragma mark - Get
- /**
- * @brief 加载离线首页数据
- */
- - (NSDictionary *)requestOfflineHome;
- /**
- * @brief 加载离线Detail
- * @param orderId 订单号
- * @param type 订单类型,包括 new order 和 processing order
- * @return order detail界面数据
- */
- - (NSDictionary *)requestOfflineDetailForOrder:(NSString *)orderId withOrderType:(NSInteger)type;
- /**
- * @brief 在detail中过滤订单已经做过的操作
- * @param detail order detail界面数据
- * @param finish order最后完成的一个action索引
- * @return 最后过滤后的detail
- */
- - (NSMutableDictionary *)filtrateActionFromDetail:(NSMutableDictionary *)detail withFinishActions:(NSNumber *)finish;
- /**
- * @brief 记载离线Edit Order
- * @param orderId 订单号
- * @param actionIndex 操作索引
- */
- - (NSDictionary *)requestOfflineEditOrder:(NSString *)orderId withAction:(NSInteger)actionIndex;
- /**
- * @brief 最后一次修改Order的 Action 索引
- * @param orderId 订单号
- * @return 最后一次修改order的action索引
- */
- - (NSNumber *)lastActionIndexForOrder:(NSString *)orderId;
- #pragma mark - Update
- /**
- * @brief 离线提交Detail Remote Action
- * @param orderId 订单号
- * @param type 订单类型 RAOrderStatus, New Order / Processing Order
- * @param action 操作类型 RADetailActionSubType, Reject / Accept
- * @param actionIdx 操作索引
- * @param actionName 操作名称
- * @param url 操作提交目标地址
- * @param params 操作提交的参数
- * @return 成功/失败
- */
- - (NSDictionary *)reportOrder:(NSString *)orderId type:(NSInteger)type actionType:(NSInteger)action actionIndex:(NSInteger)actionIdx actionName:(NSString *)actionName withURL:(NSString *)url params:(NSDictionary *)params;
- /**
- * @brief 离线提交订单
- * @param orderId 订单号
- * @param actionId 操作ID,RADetailActionSubType
- * @param title 操作名称
- * @param idx 操作索引
- * @param params 订单填写的信息
- * @param photos 待上传的图片模型数组
- * @param dir 待上传的图片存储目录
- */
- - (NSDictionary *)updateOrder:(NSString *)orderId action:(NSInteger)actionId title:(NSString *)title index:(NSInteger)idx withParams:(NSDictionary *)params photos:(NSArray<RAEditImageBaseModel *> *)photos cacheDir:(NSString *)dir;
- /**
- * @brief 更新order最后一次操作标记
- * @param actionIdx 操作索引
- * @param orderId 订单号
- */
- - (void)updateLastAction:(NSInteger)actionIdx forOrder:(NSString *)orderId;
- @end
- NS_ASSUME_NONNULL_END
|