77 lines
1.9 KiB
Mathematica
77 lines
1.9 KiB
Mathematica
|
|
//
|
||
|
|
// TUIGroupNoticeDataProvider.m
|
||
|
|
// TUIGroup
|
||
|
|
//
|
||
|
|
// Created by harvy on 2022/1/12.
|
||
|
|
// Copyright © 2023 Tencent. All rights reserved.
|
||
|
|
//
|
||
|
|
|
||
|
|
#import "TUIGroupNoticeDataProvider.h"
|
||
|
|
|
||
|
|
@interface TUIGroupNoticeDataProvider ()
|
||
|
|
|
||
|
|
@property(nonatomic, strong) V2TIMGroupInfo *groupInfo;
|
||
|
|
|
||
|
|
@end
|
||
|
|
|
||
|
|
@implementation TUIGroupNoticeDataProvider
|
||
|
|
|
||
|
|
- (void)getGroupInfo:(dispatch_block_t)callback {
|
||
|
|
if (self.groupInfo && [self.groupInfo.groupID isEqual:self.groupID]) {
|
||
|
|
if (callback) {
|
||
|
|
callback();
|
||
|
|
}
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
__weak typeof(self) weakSelf = self;
|
||
|
|
[V2TIMManager.sharedInstance getGroupsInfo:@[ self.groupID ?: @"" ]
|
||
|
|
succ:^(NSArray<V2TIMGroupInfoResult *> *groupResultList) {
|
||
|
|
V2TIMGroupInfoResult *result = groupResultList.firstObject;
|
||
|
|
if (result && result.resultCode == 0) {
|
||
|
|
weakSelf.groupInfo = result.info;
|
||
|
|
}
|
||
|
|
if (callback) {
|
||
|
|
callback();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
fail:^(int code, NSString *desc) {
|
||
|
|
if (callback) {
|
||
|
|
callback();
|
||
|
|
}
|
||
|
|
}];
|
||
|
|
}
|
||
|
|
|
||
|
|
- (BOOL)canEditNotice {
|
||
|
|
return self.groupInfo.role == V2TIM_GROUP_MEMBER_ROLE_ADMIN || self.groupInfo.role == V2TIM_GROUP_MEMBER_ROLE_SUPER;
|
||
|
|
}
|
||
|
|
|
||
|
|
- (void)updateNotice:(NSString *)notice callback:(void (^)(int, NSString *))callback {
|
||
|
|
V2TIMGroupInfo *info = [[V2TIMGroupInfo alloc] init];
|
||
|
|
info.groupID = self.groupID;
|
||
|
|
info.notification = notice;
|
||
|
|
|
||
|
|
__weak typeof(self) weakSelf = self;
|
||
|
|
[V2TIMManager.sharedInstance setGroupInfo:info
|
||
|
|
succ:^{
|
||
|
|
if (callback) {
|
||
|
|
callback(0, nil);
|
||
|
|
}
|
||
|
|
|
||
|
|
[weakSelf sendNoticeMessage:notice];
|
||
|
|
}
|
||
|
|
fail:^(int code, NSString *desc) {
|
||
|
|
if (callback) {
|
||
|
|
callback(code, desc);
|
||
|
|
}
|
||
|
|
}];
|
||
|
|
}
|
||
|
|
|
||
|
|
- (void)sendNoticeMessage:(NSString *)notice {
|
||
|
|
if (notice.length == 0) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
@end
|