@@ -1316,17 +1316,19 @@ - (JMSGOptionalContent *)convertDicToJMSGOptionalContent:(NSDictionary *)dic {
13161316
13171317 JMSGGroup *group = resultObject;
13181318
1319- [group memberArrayWithCompletionHandler : ^(id resultObject, NSError *error) {
1319+ [group memberInfoList : ^(id resultObject, NSError *error) {
13201320 if (error) {
13211321 failCallback (@[[error errorToDictionary ]]);
13221322 return ;
13231323 }
1324- NSArray *userList = resultObject;
1325- NSMutableArray *usernameList = @[].mutableCopy ;
1326- for (JMSGUser *user in userList) {
1327- [usernameList addObject: [user username ]];
1324+
1325+ NSArray *memberList = resultObject;
1326+ NSMutableArray *memberInfoList = @[].mutableCopy ;
1327+ for (JMSGGroupMemberInfo *member in memberList) {
1328+ [memberInfoList addObject: [member memberToDictionary ]];
13281329 }
1329- successCallback (@[usernameList]);
1330+
1331+ successCallback (@[memberInfoList]);
13301332 }];
13311333 }];
13321334}
@@ -2791,4 +2793,174 @@ - (JMSGOptionalContent *)convertDicToJMSGOptionalContent:(NSDictionary *)dic {
27912793 successCallback (@[]);
27922794 }];
27932795}
2796+
2797+
2798+ RCT_EXPORT_METHOD (transferGroupOwner:(NSDictionary *)param
2799+ successCallback:(RCTResponseSenderBlock)successCallback
2800+ failCallBack:(RCTResponseSenderBlock)failCallback) {
2801+
2802+ if (param[@" groupId" ] == nil ||
2803+ param[@" username" ] == nil ) {
2804+ failCallback (@[[self getParamError ]]);
2805+ return ;
2806+ }
2807+
2808+ NSString *appKey = nil ;
2809+ if (param[@" appKey" ]) {
2810+ appKey = param[@" appKey" ];
2811+ } else {
2812+ appKey = [JMessageHelper shareInstance ].JMessageAppKey ;
2813+ }
2814+
2815+ [JMSGGroup groupInfoWithGroupId: param[@" groupId" ] completionHandler: ^(id resultObject, NSError *error) {
2816+ if (error) {
2817+ failCallback (@[[error errorToDictionary ]]);
2818+ return ;
2819+ }
2820+
2821+ JMSGGroup *group = resultObject;
2822+ [group transferGroupOwnerWithUsername: param[@" username" ] appKey: appKey completionHandler: ^(id resultObject, NSError *error) {
2823+ if (error) {
2824+ failCallback (@[[error errorToDictionary ]]);
2825+ return ;
2826+ }
2827+ successCallback (@[]);
2828+ }];
2829+ }];
2830+ }
2831+
2832+
2833+ RCT_EXPORT_METHOD (setGroupMemberSilence:(NSDictionary *)param
2834+ successCallback:(RCTResponseSenderBlock)successCallback
2835+ failCallBack:(RCTResponseSenderBlock)failCallback) {
2836+
2837+ if (param[@" groupId" ] == nil ||
2838+ param[@" username" ] == nil ||
2839+ param[@" isSilence" ] == nil ) {
2840+ failCallback (@[[self getParamError ]]);
2841+ return ;
2842+ }
2843+
2844+ NSString *appKey = nil ;
2845+ if (param[@" appKey" ]) {
2846+ appKey = param[@" appKey" ];
2847+ } else {
2848+ appKey = [JMessageHelper shareInstance ].JMessageAppKey ;
2849+ }
2850+
2851+ [JMSGGroup groupInfoWithGroupId: param[@" groupId" ] completionHandler: ^(id resultObject, NSError *error) {
2852+ if (error) {
2853+ failCallback (@[[error errorToDictionary ]]);
2854+ return ;
2855+ }
2856+
2857+ JMSGGroup *group = resultObject;
2858+ [group setGroupMemberSilence: [param[@" isSilence" ] boolValue ] username: param[@" username" ] appKey: appKey handler: ^(id resultObject, NSError *error) {
2859+ if (error) {
2860+ failCallback (@[[error errorToDictionary ]]);
2861+ return ;
2862+ }
2863+ successCallback (@[]);
2864+ }];
2865+ }];
2866+ }
2867+
2868+
2869+ RCT_EXPORT_METHOD (isSilenceMember:(NSDictionary *)param
2870+ successCallback:(RCTResponseSenderBlock)successCallback
2871+ failCallBack:(RCTResponseSenderBlock)failCallback) {
2872+
2873+ if (param[@" groupId" ] == nil ||
2874+ param[@" username" ] == nil ) {
2875+ failCallback (@[[self getParamError ]]);
2876+ return ;
2877+ }
2878+
2879+ NSString *appKey = nil ;
2880+ if (param[@" appKey" ]) {
2881+ appKey = param[@" appKey" ];
2882+ } else {
2883+ appKey = [JMessageHelper shareInstance ].JMessageAppKey ;
2884+ }
2885+
2886+ [JMSGGroup groupInfoWithGroupId: param[@" groupId" ] completionHandler: ^(id resultObject, NSError *error) {
2887+ if (error) {
2888+ failCallback (@[[error errorToDictionary ]]);
2889+ return ;
2890+ }
2891+
2892+ JMSGGroup *group = resultObject;
2893+
2894+ BOOL isSilence = [group isSilenceMemberWithUsername: param[@" username" ] appKey: appKey];
2895+ successCallback (@[@{@" isSilence" : @(isSilence)}]);
2896+ }];
2897+ }
2898+
2899+ RCT_EXPORT_METHOD (groupSilenceMembers:(NSDictionary *)param
2900+ successCallback:(RCTResponseSenderBlock)successCallback
2901+ failCallBack:(RCTResponseSenderBlock)failCallback) {
2902+ if (param[@" groupId" ] == nil ) {
2903+ failCallback (@[[self getParamError ]]);
2904+ return ;
2905+ }
2906+
2907+ NSString *appKey = nil ;
2908+ if (param[@" appKey" ]) {
2909+ appKey = param[@" appKey" ];
2910+ } else {
2911+ appKey = [JMessageHelper shareInstance ].JMessageAppKey ;
2912+ }
2913+
2914+ [JMSGGroup groupInfoWithGroupId: param[@" groupId" ] completionHandler: ^(id resultObject, NSError *error) {
2915+ if (error) {
2916+ failCallback (@[[error errorToDictionary ]]);
2917+ return ;
2918+ }
2919+
2920+ JMSGGroup *group = resultObject;
2921+ NSArray *silenceMembers = [group groupSilenceMembers ];
2922+ NSArray *silenceUserDicArr = [silenceMembers mapObjectsUsingBlock: ^id (id obj, NSUInteger idx) {
2923+ JMSGUser *user = obj;
2924+ return [user userToDictionary ];
2925+ }];
2926+ successCallback (@[silenceUserDicArr]);
2927+ }];
2928+ }
2929+
2930+ RCT_EXPORT_METHOD (setGroupNickname:(NSDictionary *)param
2931+ successCallback:(RCTResponseSenderBlock)successCallback
2932+ failCallBack:(RCTResponseSenderBlock)failCallback) {
2933+
2934+ if (param[@" groupId" ] == nil ||
2935+ param[@" username" ] == nil ||
2936+ param[@" nickName" ] == nil ) {
2937+ failCallback (@[[self getParamError ]]);
2938+ return ;
2939+ }
2940+
2941+ NSString *appKey = nil ;
2942+ if (param[@" appKey" ]) {
2943+ appKey = param[@" appKey" ];
2944+ } else {
2945+ appKey = [JMessageHelper shareInstance ].JMessageAppKey ;
2946+ }
2947+
2948+ [JMSGGroup groupInfoWithGroupId: param[@" groupId" ] completionHandler: ^(id resultObject, NSError *error) {
2949+ if (error) {
2950+ failCallback (@[[self getParamError ]]);
2951+ return ;
2952+ }
2953+
2954+ JMSGGroup *group = resultObject;
2955+
2956+ [group setGroupNickname: param[@" nickName" ] username: param[@" username" ] appKey: appKey handler: ^(id resultObject, NSError *error) {
2957+ if (error) {
2958+ failCallback (@[[self getParamError ]]);
2959+ return ;
2960+ }
2961+
2962+ successCallback (@[]);
2963+ }];
2964+ }];
2965+ }
27942966@end
0 commit comments