格式化

This commit is contained in:
chenying09 2024-08-07 21:14:37 +08:00
parent 2c774270cb
commit 48b51fd8df

View File

@ -1,10 +1,10 @@
// Created by little-snow-fox on 2019-10-9. // Created by little-snow-fox on 2019-10-9.
#import "WechatLib.h"
#import "WXApiObject.h" #import "WXApiObject.h"
#import <React/RCTEventDispatcher.h> #import "WechatLib.h"
#import <React/RCTBridge.h> #import <React/RCTBridge.h>
#import <React/RCTLog.h> #import <React/RCTEventDispatcher.h>
#import <React/RCTImageLoader.h> #import <React/RCTImageLoader.h>
#import <React/RCTLog.h>
@implementation WechatLib @implementation WechatLib
@ -16,8 +16,7 @@
RCT_EXPORT_MODULE() RCT_EXPORT_MODULE()
- (instancetype)init - (instancetype)init {
{
self = [super init]; self = [super init];
if (self) { if (self) {
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleOpenURL:) name:@"RCTOpenURLNotification" object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleOpenURL:) name:@"RCTOpenURLNotification" object:nil];
@ -25,26 +24,22 @@ RCT_EXPORT_MODULE()
return self; return self;
} }
- (void)dealloc - (void)dealloc {
{
[[NSNotificationCenter defaultCenter] removeObserver:self]; [[NSNotificationCenter defaultCenter] removeObserver:self];
} }
- (BOOL)handleOpenURL:(NSNotification *)aNotification - (BOOL)handleOpenURL:(NSNotification *)aNotification {
{
NSString *aURLString = [aNotification userInfo][@"url"]; NSString *aURLString = [aNotification userInfo][@"url"];
NSURL *aURL = [NSURL URLWithString:aURLString]; NSURL *aURL = [NSURL URLWithString:aURLString];
if ([WXApi handleOpenURL:aURL delegate:self]) if ([WXApi handleOpenURL:aURL delegate:self]) {
{
return YES; return YES;
} else { } else {
return NO; return NO;
} }
} }
- (dispatch_queue_t)methodQueue - (dispatch_queue_t)methodQueue {
{
return dispatch_get_main_queue(); return dispatch_get_main_queue();
} }
@ -104,10 +99,10 @@ RCT_EXPORT_MODULE()
return data; return data;
} }
RCT_EXPORT_METHOD(registerApp:(NSString *)appid RCT_EXPORT_METHOD(registerApp
: (NSString *)appid
: (NSString *)universalLink : (NSString *)universalLink
:(RCTResponseSenderBlock)callback) : (RCTResponseSenderBlock)callback) {
{
self.appId = appid; self.appId = appid;
callback(@[[WXApi registerApp:appid universalLink:universalLink] ? [NSNull null] : INVOKE_FAILED]); callback(@[[WXApi registerApp:appid universalLink:universalLink] ? [NSNull null] : INVOKE_FAILED]);
} }
@ -119,56 +114,54 @@ RCT_EXPORT_METHOD(registerApp:(NSString *)appid
// callback(@[[WXApi registerApp:appid withDescription:appdesc] ? [NSNull null] : INVOKE_FAILED]); // callback(@[[WXApi registerApp:appid withDescription:appdesc] ? [NSNull null] : INVOKE_FAILED]);
// } // }
RCT_EXPORT_METHOD(isWXAppInstalled:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(isWXAppInstalled
{ : (RCTResponseSenderBlock)callback) {
callback(@[[NSNull null], @([WXApi isWXAppInstalled])]); callback(@[[NSNull null], @([WXApi isWXAppInstalled])]);
} }
RCT_EXPORT_METHOD(isWXAppSupportApi:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(isWXAppSupportApi
{ : (RCTResponseSenderBlock)callback) {
callback(@[[NSNull null], @([WXApi isWXAppSupportApi])]); callback(@[[NSNull null], @([WXApi isWXAppSupportApi])]);
} }
RCT_EXPORT_METHOD(getWXAppInstallUrl:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(getWXAppInstallUrl
{ : (RCTResponseSenderBlock)callback) {
callback(@[[NSNull null], [WXApi getWXAppInstallUrl]]); callback(@[[NSNull null], [WXApi getWXAppInstallUrl]]);
} }
RCT_EXPORT_METHOD(getApiVersion:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(getApiVersion
{ : (RCTResponseSenderBlock)callback) {
callback(@[[NSNull null], [WXApi getApiVersion]]); callback(@[[NSNull null], [WXApi getApiVersion]]);
} }
RCT_EXPORT_METHOD(openWXApp:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(openWXApp
{ : (RCTResponseSenderBlock)callback) {
callback(@[([WXApi openWXApp] ? [NSNull null] : INVOKE_FAILED)]); callback(@[([WXApi openWXApp] ? [NSNull null] : INVOKE_FAILED)]);
} }
RCT_EXPORT_METHOD(sendRequest:(NSString *)openid RCT_EXPORT_METHOD(sendRequest
:(RCTResponseSenderBlock)callback) : (NSString *)openid
{ : (RCTResponseSenderBlock)callback) {
BaseReq *req = [[BaseReq alloc] init]; BaseReq *req = [[BaseReq alloc] init];
req.openID = openid; req.openID = openid;
// callback(@[[WXApi sendReq:req] ? [NSNull null] : INVOKE_FAILED]); // callback(@[[WXApi sendReq:req] ? [NSNull null] : INVOKE_FAILED]);
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
[WXApi sendReq:req completion:completion]; [WXApi sendReq:req completion:completion];
} }
RCT_EXPORT_METHOD(sendAuthRequest:(NSString *)scope RCT_EXPORT_METHOD(sendAuthRequest
: (NSString *)scope
: (NSString *)state : (NSString *)state
:(RCTResponseSenderBlock)callback) : (RCTResponseSenderBlock)callback) {
{
SendAuthReq *req = [[SendAuthReq alloc] init]; SendAuthReq *req = [[SendAuthReq alloc] init];
req.scope = scope; req.scope = scope;
req.state = state; req.state = state;
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -176,13 +169,12 @@ RCT_EXPORT_METHOD(sendAuthRequest:(NSString *)scope
[WXApi sendAuthReq:req viewController:rootViewController delegate:self completion:completion]; [WXApi sendAuthReq:req viewController:rootViewController delegate:self completion:completion];
} }
RCT_EXPORT_METHOD(sendSuccessResponse:(RCTResponseSenderBlock)callback) RCT_EXPORT_METHOD(sendSuccessResponse
{ : (RCTResponseSenderBlock)callback) {
BaseResp *resp = [[BaseResp alloc] init]; BaseResp *resp = [[BaseResp alloc] init];
resp.errCode = WXSuccess; resp.errCode = WXSuccess;
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -190,15 +182,14 @@ RCT_EXPORT_METHOD(sendSuccessResponse:(RCTResponseSenderBlock)callback)
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]); // callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
} }
RCT_EXPORT_METHOD(sendErrorCommonResponse:(NSString *)message RCT_EXPORT_METHOD(sendErrorCommonResponse
:(RCTResponseSenderBlock)callback) : (NSString *)message
{ : (RCTResponseSenderBlock)callback) {
BaseResp *resp = [[BaseResp alloc] init]; BaseResp *resp = [[BaseResp alloc] init];
resp.errCode = WXErrCodeCommon; resp.errCode = WXErrCodeCommon;
resp.errStr = message; resp.errStr = message;
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -206,15 +197,14 @@ RCT_EXPORT_METHOD(sendErrorCommonResponse:(NSString *)message
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]); // callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
} }
RCT_EXPORT_METHOD(sendErrorUserCancelResponse:(NSString *)message RCT_EXPORT_METHOD(sendErrorUserCancelResponse
:(RCTResponseSenderBlock)callback) : (NSString *)message
{ : (RCTResponseSenderBlock)callback) {
BaseResp *resp = [[BaseResp alloc] init]; BaseResp *resp = [[BaseResp alloc] init];
resp.errCode = WXErrCodeUserCancel; resp.errCode = WXErrCodeUserCancel;
resp.errStr = message; resp.errStr = message;
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -223,16 +213,15 @@ RCT_EXPORT_METHOD(sendErrorUserCancelResponse:(NSString *)message
} }
// 分享文本 // 分享文本
RCT_EXPORT_METHOD(shareText:(NSDictionary *)data RCT_EXPORT_METHOD(shareText
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init]; SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.bText = YES; req.bText = YES;
req.text = data[@"text"]; req.text = data[@"text"];
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -240,9 +229,9 @@ RCT_EXPORT_METHOD(shareText:(NSDictionary *)data
} }
// 选择发票 // 选择发票
RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data RCT_EXPORT_METHOD(chooseInvoice
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXChooseInvoiceReq *req = [[WXChooseInvoiceReq alloc] init]; WXChooseInvoiceReq *req = [[WXChooseInvoiceReq alloc] init];
req.appID = self.appId; req.appID = self.appId;
req.timeStamp = [data[@"timeStamp"] intValue]; req.timeStamp = [data[@"timeStamp"] intValue];
@ -251,8 +240,7 @@ RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data
req.signType = data[@"signType"]; req.signType = data[@"signType"];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -260,9 +248,9 @@ RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data
} }
// 分享文件 // 分享文件
RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data RCT_EXPORT_METHOD(shareFile
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
NSString *url = data[@"url"]; NSString *url = data[@"url"];
WXFileObject *file = [[WXFileObject alloc] init]; WXFileObject *file = [[WXFileObject alloc] init];
file.fileExtension = data[@"ext"]; file.fileExtension = data[@"ext"];
@ -278,8 +266,7 @@ RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data
req.message = message; req.message = message;
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -287,17 +274,16 @@ RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data
} }
// 分享图片 // 分享图片
RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data RCT_EXPORT_METHOD(shareImage
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
NSString *imageUrl = data[@"imageUrl"]; NSString *imageUrl = data[@"imageUrl"];
if (imageUrl == NULL || [imageUrl isEqual:@""]) { if (imageUrl == NULL || [imageUrl isEqual:@""]) {
callback([NSArray arrayWithObject:@"shareImage: The value of ImageUrl cannot be empty."]); callback([NSArray arrayWithObject:@"shareImage: The value of ImageUrl cannot be empty."]);
return; return;
} }
NSRange range = [imageUrl rangeOfString:@"."]; NSRange range = [imageUrl rangeOfString:@"."];
if ( range.length == 0) if (range.length == 0) {
{
callback([NSArray arrayWithObject:@"shareImage: ImageUrl value, Could not find file suffix."]); callback([NSArray arrayWithObject:@"shareImage: ImageUrl value, Could not find file suffix."]);
return; return;
} }
@ -323,8 +309,7 @@ RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
// [WXApi sendReq:req]; // [WXApi sendReq:req];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -332,17 +317,16 @@ RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
} }
// 分享本地图片 // 分享本地图片
RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data RCT_EXPORT_METHOD(shareLocalImage
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
NSString *imageUrl = data[@"imageUrl"]; NSString *imageUrl = data[@"imageUrl"];
if (imageUrl == NULL || [imageUrl isEqual:@""]) { if (imageUrl == NULL || [imageUrl isEqual:@""]) {
callback([NSArray arrayWithObject:@"shareLocalImage: The value of ImageUrl cannot be empty."]); callback([NSArray arrayWithObject:@"shareLocalImage: The value of ImageUrl cannot be empty."]);
return; return;
} }
NSRange range = [imageUrl rangeOfString:@"."]; NSRange range = [imageUrl rangeOfString:@"."];
if ( range.length == 0) if (range.length == 0) {
{
callback([NSArray arrayWithObject:@"shareLocalImage: ImageUrl value, Could not find file suffix."]); callback([NSArray arrayWithObject:@"shareLocalImage: ImageUrl value, Could not find file suffix."]);
return; return;
} }
@ -368,8 +352,7 @@ RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
// [WXApi sendReq:req]; // [WXApi sendReq:req];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -377,9 +360,9 @@ RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
} }
// 分享音乐 // 分享音乐
RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data RCT_EXPORT_METHOD(shareMusic
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXMusicObject *musicObject = [WXMusicObject object]; WXMusicObject *musicObject = [WXMusicObject object];
musicObject.musicUrl = data[@"musicUrl"]; musicObject.musicUrl = data[@"musicUrl"];
musicObject.musicLowBandUrl = data[@"musicLowBandUrl"]; musicObject.musicLowBandUrl = data[@"musicLowBandUrl"];
@ -401,8 +384,7 @@ RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data
req.message = message; req.message = message;
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -410,9 +392,9 @@ RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data
} }
// 分享视频 // 分享视频
RCT_EXPORT_METHOD(shareVideo:(NSDictionary *)data RCT_EXPORT_METHOD(shareVideo
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXVideoObject *videoObject = [WXVideoObject object]; WXVideoObject *videoObject = [WXVideoObject object];
videoObject.videoUrl = data[@"videoUrl"]; videoObject.videoUrl = data[@"videoUrl"];
videoObject.videoLowBandUrl = data[@"videoLowBandUrl"]; videoObject.videoLowBandUrl = data[@"videoLowBandUrl"];
@ -430,18 +412,16 @@ RCT_EXPORT_METHOD(shareVideo:(NSDictionary *)data
req.message = message; req.message = message;
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
[WXApi sendReq:req completion:completion]; [WXApi sendReq:req completion:completion];
} }
// 分享网页 // 分享网页
RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data RCT_EXPORT_METHOD(shareWebpage
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXWebpageObject *webpageObject = [WXWebpageObject object]; WXWebpageObject *webpageObject = [WXWebpageObject object];
webpageObject.webpageUrl = data[@"webpageUrl"]; webpageObject.webpageUrl = data[@"webpageUrl"];
WXMediaMessage *message = [WXMediaMessage message]; WXMediaMessage *message = [WXMediaMessage message];
@ -458,8 +438,7 @@ RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data
req.message = message; req.message = message;
req.scene = [data[@"scene"] intValue]; req.scene = [data[@"scene"] intValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -467,9 +446,9 @@ RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data
} }
// 分享小程序 // 分享小程序
RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data RCT_EXPORT_METHOD(shareMiniProgram
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXMiniProgramObject *object = [WXMiniProgramObject object]; WXMiniProgramObject *object = [WXMiniProgramObject object];
object.webpageUrl = data[@"webpageUrl"]; object.webpageUrl = data[@"webpageUrl"];
object.userName = data[@"userName"]; object.userName = data[@"userName"];
@ -499,8 +478,7 @@ RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
req.message = message; req.message = message;
req.scene = [data[@"scene"] integerValue]; req.scene = [data[@"scene"] integerValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -508,25 +486,24 @@ RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
} }
// 一次性订阅消息 // 一次性订阅消息
RCT_EXPORT_METHOD(subscribeMessage:(NSDictionary *)data RCT_EXPORT_METHOD(subscribeMessage
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXSubscribeMsgReq *req = [[WXSubscribeMsgReq alloc] init]; WXSubscribeMsgReq *req = [[WXSubscribeMsgReq alloc] init];
req.scene = [data[@"scene"] integerValue]; req.scene = [data[@"scene"] integerValue];
req.templateId = data[@"templateId"]; req.templateId = data[@"templateId"];
req.reserved = data[@"reserved"]; req.reserved = data[@"reserved"];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
[WXApi sendReq:req completion:completion]; [WXApi sendReq:req completion:completion];
} }
RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data RCT_EXPORT_METHOD(launchMiniProgram
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object]; WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object];
// 拉起的小程序的 username // 拉起的小程序的 username
launchMiniProgramReq.userName = data[@"userName"]; launchMiniProgramReq.userName = data[@"userName"];
@ -537,8 +514,7 @@ RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data
launchMiniProgramReq.miniProgramType = [self integerToWXMiniProgramType:miniProgramType]; launchMiniProgramReq.miniProgramType = [self integerToWXMiniProgramType:miniProgramType];
// launchMiniProgramReq.miniProgramType = [data[@"miniProgramType"] integerValue]; // launchMiniProgramReq.miniProgramType = [data[@"miniProgramType"] integerValue];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -547,9 +523,9 @@ RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data
// callback(@[success ? [NSNull null] : INVOKE_FAILED]); // callback(@[success ? [NSNull null] : INVOKE_FAILED]);
} }
RCT_EXPORT_METHOD(pay:(NSDictionary *)data RCT_EXPORT_METHOD(pay
:(RCTResponseSenderBlock)callback) : (NSDictionary *)data
{ : (RCTResponseSenderBlock)callback) {
PayReq *req = [PayReq new]; PayReq *req = [PayReq new];
req.partnerId = data[@"partnerId"]; req.partnerId = data[@"partnerId"];
req.prepayId = data[@"prepayId"]; req.prepayId = data[@"prepayId"];
@ -558,8 +534,7 @@ RCT_EXPORT_METHOD(pay:(NSDictionary *)data
req.package = data[@"package"]; req.package = data[@"package"];
req.sign = data[@"sign"]; req.sign = data[@"sign"];
void (^completion)(BOOL); void (^completion)(BOOL);
completion = ^( BOOL success ) completion = ^(BOOL success) {
{
callback(@[success ? [NSNull null] : INVOKE_FAILED]); callback(@[success ? [NSNull null] : INVOKE_FAILED]);
return; return;
}; };
@ -569,10 +544,10 @@ RCT_EXPORT_METHOD(pay:(NSDictionary *)data
} }
// 跳转微信客服 // 跳转微信客服
RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId RCT_EXPORT_METHOD(openCustomerServiceChat
: (NSString *)corpId
: (NSString *)kfUrl : (NSString *)kfUrl
:(RCTResponseSenderBlock)callback) : (RCTResponseSenderBlock)callback) {
{
WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init]; WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init];
req.corpid = corpId; // 企业 ID req.corpid = corpId; // 企业 ID
req.url = kfUrl; // 客服 URL req.url = kfUrl; // 客服 URL
@ -581,8 +556,7 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
#pragma mark - wx callback #pragma mark - wx callback
-(void) onReq:(BaseReq*)req - (void)onReq:(BaseReq *)req {
{
if ([req isKindOfClass:[LaunchFromWXReq class]]) { if ([req isKindOfClass:[LaunchFromWXReq class]]) {
LaunchFromWXReq *launchReq = req; LaunchFromWXReq *launchReq = req;
NSString *appParameter = launchReq.message.messageExt; NSString *appParameter = launchReq.message.messageExt;
@ -595,10 +569,8 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
} }
} }
-(void) onResp:(BaseResp*)resp - (void)onResp:(BaseResp *)resp {
{ if ([resp isKindOfClass:[SendMessageToWXResp class]]) {
if([resp isKindOfClass:[SendMessageToWXResp class]])
{
SendMessageToWXResp *r = (SendMessageToWXResp *)resp; SendMessageToWXResp *r = (SendMessageToWXResp *)resp;
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy; NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
@ -622,8 +594,7 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
[body addEntriesFromDictionary:@{ @"appid": self.appId, @"code": r.code }]; [body addEntriesFromDictionary:@{ @"appid": self.appId, @"code": r.code }];
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body]; [self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
} }
} } else {
else {
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body]; [self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
} }
} else if ([resp isKindOfClass:[PayResp class]]) { } else if ([resp isKindOfClass:[PayResp class]]) {
@ -673,4 +644,3 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
} }
@end @end