TJCarDrawCircleKit 0.1.6

TJCarDrawCircleKit 0.1.6

Maintained by xtzPioneer.



 
Depends on:
YYModel>= 0
Masonry>= 0
 

  • By
  • xtzPioneer

TJCarDrawCircleKit

CI Status Version License Platform

简介

由同基科技开发的汽配画圈Kit.

功能

  • 画圈获取配件信息列表
  • 配件信息包含标准名称、配件OE、配件图片、配件价格、等基本信息
  • 加载请求/重载请求
  • 清除缓存

运行示例项目

要运行示例项目,请克隆存储库,然后首先从Example目录运行pod install

安装

pod 'TJCarDrawCircleKit'

导入文件

#import <TJCarDrawCircleKit/TJCarDrawCircleKit.h>

创建画圈视图

TJCarDrawCircleView *carDrawCircleView = [TJCarDrawCircleView carDrawCircleView];

创建画圈参数

TJCDCH5URLParams * h5URLParams = [TJCDCH5URLParams new];
h5URLParams.resultOnly = @"1";
h5URLParams.containOperation = @"1";
h5URLParams.productCode = @"I0601";
h5URLParams.bigCase = @"0";

运行环境参数

// 测试环境
h5URLParams.runType = TJCDCSUMRunTypeDeBug;
h5URLParams.token = @"测试环境Token"
// 发布环境
h5URLParams.runType = TJCDCSUMRunTypeRelease;
h5URLParams.token = @"发布环境Token"

精准定型参数

h5URLParams.findVehicleWay = @"A";
h5URLParams.optionCode = @"optionCode";
h5URLParams.vinCode = @"vinCode";

销售车型参数

h5URLParams.findVehicleWay = @"B";
h5URLParams.optionCode = @"mjsid"

手选车型参数

h5URLParams.findVehicleWay = @"C";
h5URLParams.optionCode = @"mjsid"

清除缓存

[carDrawCircleView clearCache:^{
	NSLog(@"画圈页面缓存已经清理!");
}];

加载请求

carDrawCircleView.h5URLParams = h5URLParams;;
[carDrawCircleView loadRequest];

方法回调

carDrawCircleView.h5StartLoadHandler = ^{
	NSLog(@"页面开始加载时调用!");
};
carDrawCircleView.h5LoadCompleteHandler = ^{
	NSLog(@"页面加载完成之后调用!");
};
carDrawCircleView.h5LoadFailureHandler = ^(NSError * _Nonnull error) {
	NSLog(@"页面加载失败时调用!");
};
carDrawCircleView.circleFailureHandler = ^(NSError * _Nonnull error) {
	NSLog(@"画圈失败Error:%@",error);
};
carDrawCircleView.circleHandler = ^(TJCDCH5OCContent * _Nonnull content) {
	NSLog(@"画圈成功后回调!")
};

画圈视图

//
//  TJCarDrawCircleView.h
//  Expecta
//
//  Created by 张雄 on 2020/11/18.
//

#import <UIKit/UIKit.h>
#import "TJCDCH5URLParams.h"
#import "TJCDCH5OCContent.h"
#import "TJCDCH5PartInfo.h"
#import "TJCDCH5CollisionInfo.h"
#import "TJCDCH5Operable.h"
#import "TJCDCH5OROption.h"
#import "TJCDCH5ORParams.h"
#import "TJCDCH5ORSelectPart.h"
#import "NSString+TJCDCCategory.h"

NS_ASSUME_NONNULL_BEGIN

/// 内容回调
typedef void (^TJCDCCTContentHandler) (TJCDCH5OCContent *content);

/// 完成回调
typedef void (^TJCDCCTLDCompleteHandler) (void);

/// 失败回调
typedef void (^TJCDCCTLDFailureHandler) (NSError *error);

/// 同基画圈视图
@interface TJCarDrawCircleView : UIView

/// H5URL参数
@property (nonatomic,strong)TJCDCH5URLParams *h5URLParams;

/// H5开始加载回调
@property (nonatomic,copy)TJCDCCTLDCompleteHandler h5StartLoadHandler;

/// H5加载完成回调
@property (nonatomic,copy)TJCDCCTLDCompleteHandler h5LoadCompleteHandler;

/// H5加载失败回调
@property (nonatomic,copy)TJCDCCTLDFailureHandler h5LoadFailureHandler;

/// 画圈回调
@property (nonatomic,copy)TJCDCCTContentHandler circleHandler;

/// 画圈失败回调
@property (nonatomic,copy)TJCDCCTLDFailureHandler circleFailureHandler;

/// 加载请求
- (void)loadRequest;

/// 重载
- (void)reload;

/// 清除缓存
/// @param completionHandler 完成回调
- (void)clearCache:(TJCDCCTLDCompleteHandler)completionHandler;

/// 快速构建画圈视图
+ (instancetype)carDrawCircleView;

// 禁止使用下列方法
- (instancetype)init NS_UNAVAILABLE;
+ (instancetype)new NS_UNAVAILABLE;
- (instancetype)copy NS_UNAVAILABLE;
- (instancetype)mutableCopy NS_UNAVAILABLE;

@end

NS_ASSUME_NONNULL_END

配件信息

//
//  TJCDCH5PartInfoProtocol.h
//  AFNetworking
//
//  Created by 张雄 on 2020/11/21.
//

#import <Foundation/Foundation.h>
#import "TJCDCH5OperableProtocol.h"

NS_ASSUME_NONNULL_BEGIN

/// 同基画圈H5配件协议
@protocol TJCDCH5PartInfoProtocol <NSObject>

/// 请求配件名
@property (nonatomic,copy)NSString *reqPartName;

/// 江湖名函数解析之后的名称
@property (nonatomic,copy)NSString *jhmPartName;

/// 备注
@property (nonatomic,copy)NSString *comment;

/// epc配件号
@property (nonatomic,copy)NSString *srcPartNumber;

/// 图片名
@property (nonatomic,copy)NSString *image;

/// 替换链标记
@property (nonatomic,copy)NSString *subChainFlag;

/// 单⻋用量
@property (nonatomic,copy)NSString *qty;

/// 替换件
@property (nonatomic,copy)NSString *substitute;

/// 配件价格
@property (nonatomic,copy)NSString *partPrice;

/// 小红点位置
@property (nonatomic,copy)NSString *position;

/// 标准配件号
@property (nonatomic,copy)NSString *partNumber;

/// 图中编号
@property (nonatomic,copy)NSString *partRefOnImage;

/// 标准配件名
@property (nonatomic,copy)NSString *stdPartName;

/// 标准配件ID
@property (nonatomic,copy)NSString *partCode;

/// 总成件OE号list,当且仅当入参parentChild为true时才 可能会返回
@property (nonatomic,strong)NSArray<NSString *> *parent;

/// 局部件OE号list,当且仅当入参parentChild为true时才 可能会返回
@property (nonatomic,strong)NSArray<NSString *> *child;

/// 可选拆装项目,当且金蛋入参containOperation为true 时才返回
@property (nonatomic,strong)NSArray<id<TJCDCH5OperableProtocol>> *operables;

@end

NS_ASSUME_NONNULL_END

获取配件图片URL

// “partInfo”遵循“TJCDCH5PartInfoProtocol”协议
NSString *imageURL = [partInfo.stdPartName partImageStringURL];

版本&更新

更新时间:2021.1.27 版本:0.1.4 更新内容:新增获取图片URL
更新时间:2021.1.22 版本:0.1.3 更新内容:新增清除缓存功能
更新时间:2021.1.20 版本:0.1.2 更新内容:新增错误提示
更新时间:2021.1.20 版本:0.1.1 更新内容:修复参数格式
更新时间:2021.1.20 版本:0.1.0 更新内容:新增画圈功能

License

TJCarDrawCircleKit is available under the MIT license. See the LICENSE file for more info.