// // 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 *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