| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- //
- // NewGroupController.m
- // AIIM
- //
- // Created by gan on 2025/4/21.
- //
- #import <Foundation/Foundation.h>
- #import "NewGroupController.h"
- #import "config.h"
- #import "GroupNetApi.h"
- #import <SDWebImage/UIImageView+WebCache.h>
- @interface NewGroupController()<UIImagePickerControllerDelegate,UINavigationControllerDelegate>
- @property (weak, nonatomic) IBOutlet UIImageView *avatar;
- @property (weak, nonatomic) IBOutlet UITextField *inputName;
- @property (weak, nonatomic) IBOutlet UITableViewCell *yaoqingCell;
- @property (weak, nonatomic) IBOutlet UILabel *titleLb;
- @property (weak, nonatomic) IBOutlet UITableViewCell *shenheCell;
- @property (weak, nonatomic) IBOutlet UITableViewCell *jinyanCell;
- @property (weak, nonatomic) IBOutlet UITableViewCell *jiahaoyCell;
- @property (weak, nonatomic) IBOutlet UIButton *saveBt;
- @property (weak, nonatomic) IBOutlet UISwitch *yaoqingS;
- @property (weak, nonatomic) IBOutlet UISwitch *shenheS;
- @property (weak, nonatomic) IBOutlet UISwitch *jinyanS;
- @property (weak, nonatomic) IBOutlet UISwitch *jinjiaS;
- @property (nonatomic,strong) NSString *avatarStr;
- @property (nonatomic,strong) NSString *yaoqing;
- @property (nonatomic,strong) NSString *jinyan;
- @property (nonatomic,strong) NSString *jinjia;
- @property (nonatomic,strong) NSString *shenhe;
- @end
- @implementation NewGroupController
- -(void)viewDidLoad{
- [super viewDidLoad];
- [self.navigationController setNavigationBarHidden:YES animated:NO];
- _titleLb.text = NSLocalizedString(@"group-addNew", @"");
- // 创建一个点击手势
- UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissKeyboard)];
- // 将手势添加到主视图上
- [self.view addGestureRecognizer:tap];
- _yaoqing=@"1";
- _jinyan=@"0";
- _jinjia=@"0";
- _shenhe=@"1";
- [self initSubview];
- [self initGData];
- }
- -(void)dismissKeyboard{
- NSLog(@"dismissKeyboard");
- [self.view endEditing:YES];
- }
- - (IBAction)gotoback:(id)sender {
- [self dismissViewControllerAnimated:YES completion:nil];
- }
- - (IBAction)yaoqingC:(id)sender {
- UISwitch *switchButton = (UISwitch*)sender;
- BOOL isButtonOn = [switchButton isOn];
- if(isButtonOn){
- _yaoqing = @"1";
- }
- else{
- _yaoqing = @"0";
- }
- }
- - (IBAction)shenheC:(id)sender {
- UISwitch *switchButton = (UISwitch*)sender;
- BOOL isButtonOn = [switchButton isOn];
- if(isButtonOn){
- _shenhe = @"1";
- }
- else{
- _shenhe = @"0";
- }
- }
- - (IBAction)jinyanC:(id)sender {
- UISwitch *switchButton = (UISwitch*)sender;
- BOOL isButtonOn = [switchButton isOn];
- if(isButtonOn){
- _jinyan = @"1";
- }
- else{
- _jinyan = @"0";
- }
- }
- - (IBAction)jinjiaC:(id)sender {
- UISwitch *switchButton = (UISwitch*)sender;
- BOOL isButtonOn = [switchButton isOn];
- if(isButtonOn){
- _jinjia = @"1";
- }
- else{
- _jinjia = @"0";
- }
- }
- - (IBAction)selectImg:(id)sender {
- [self openImagePicker];
- }
- - (IBAction)saveAct:(id)sender {
- [self addnewGroup];
- }
- -(void)initSubview{
- _yaoqingCell.contentView.layer.borderWidth = 0.5f;
- _yaoqingCell.contentView.layer.borderColor = [UIColor lightGrayColor].CGColor; //globalColor(GCTypeGreen);
- _yaoqingCell.contentView.layer.cornerRadius = 8.0f; // 可选,设置圆角
- _yaoqingCell.textLabel.text =NSLocalizedString(@"NGroupCtr-kaiqiyaoq", @"开启邀请");
- _yaoqingCell.textLabel.textColor = [UIColor whiteColor];
- [_yaoqingS setOn:YES];
-
-
- [_saveBt setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
- [_saveBt setBackgroundColor:globalColor(GCTypeGreen)];
- _saveBt.layer.cornerRadius = 8;
- _saveBt.layer.masksToBounds = YES; // 防止子视图超出圆角边界
-
- _shenheCell.contentView.layer.borderWidth = 0.5f;
- _shenheCell.contentView.layer.borderColor = [UIColor lightGrayColor].CGColor;
- _shenheCell.contentView.layer.cornerRadius = 8.0f; // 可选,设置圆角
- _shenheCell.textLabel.text =NSLocalizedString(@"NGroupCtr-ruqunxsh", @"入群需审核");
- _shenheCell.textLabel.textColor = [UIColor whiteColor];
- [_shenheS setOn:YES];
-
- _jinyanCell.contentView.layer.borderWidth = 0.5f;
- _jinyanCell.contentView.layer.borderColor = [UIColor lightGrayColor].CGColor; //globalColor(GCTypeGreen);
- _jinyanCell.contentView.layer.cornerRadius = 8.0f; // 可选,设置圆角
- _jinyanCell.textLabel.text =NSLocalizedString(@"NGroupCtr-quantijy", @"全体禁言");
- _jinyanCell.textLabel.textColor = [UIColor whiteColor];
- [_jinyanS setOn:NO];
-
- _jiahaoyCell.contentView.layer.borderWidth = 0.5f;
- _jiahaoyCell.contentView.layer.borderColor = [UIColor lightGrayColor].CGColor; //globalColor(GCTypeGreen);
- _jiahaoyCell.contentView.layer.cornerRadius = 8.0f; // 可选,设置圆角
- _jiahaoyCell.textLabel.text =NSLocalizedString(@"NGroupCtr-jinjiahy", @"禁加好友");
- _jiahaoyCell.textLabel.textColor = [UIColor whiteColor];
- [_jinjiaS setOn:NO];
-
- }
- -(void)initGData{
- _avatarStr = @"";
- if(self.groupMsg){
- _avatarStr = self.groupMsg[@"avatar"];
- NSString *temp = self.groupMsg[@"name"];
- _inputName.text = temp;
- temp = self.groupMsg[@"openInvite"];
- _yaoqing=temp;
- if(temp.intValue ==1){
- [_yaoqingS setOn:YES];
- }
- else{
- [_yaoqingS setOn:NO];
- }
- temp = self.groupMsg[@"inviteCheck"];
- _shenhe=temp;
- if(temp.intValue ==1){
- [_shenheS setOn:YES];
- }
- else{
- [_shenheS setOn:NO];
- }
- temp = self.groupMsg[@"prohibition"];
- _jinyan=temp;
- if(temp.intValue ==1){
- [_jinyanS setOn:YES];
- }
- else{
- [_jinyanS setOn:NO];
- }
- temp = self.groupMsg[@"prohibitFriend"];
- _jinjia=temp;
- if(temp.intValue ==1){
- [_jinjiaS setOn:YES];
- }
- else{
- [_jinjiaS setOn:NO];
- }
- }
- [_avatar sd_setImageWithURL:[NSURL URLWithString:_avatarStr] placeholderImage:[UIImage imageNamed:@"Avatar"]];
-
- }
- /*
- * 添加群组
- * @param name 群名称
- * @param avatar 群头像
- * @param openInvite 是否开放邀请
- * @param inviteCheck 加群是否需要审核
- * @param prohibition 禁言
- * @param prohibitFriend 是否允许加好友
- * @param announcement 群公告
- */
- -(void)addnewGroup{
- if(self.groupMsg){
- NSString *groupId = self.groupMsg[@"id"];
- NSDictionary *dic = @{
- @"name":_inputName.text,
- @"avatar":_avatarStr,
- @"openInvite":_yaoqing,
- @"inviteCheck":_shenhe,
- @"prohibition":_jinyan,
- @"prohibitFriend":_jinjia,
- };
- [GroupNetApi updateGroup:dic groupId:groupId succ:^(int code, NSDictionary * res) {
- NSLog(@"res updateGroup:%@",res);
- NSString *codestr = res[@"code"];
- if(codestr.intValue==200){
- [self dismissViewControllerAnimated:YES completion:nil];
- }
- } fail:^(NSError * _Nonnull error) {
-
- }];
- }
- else{
- if(_inputName.text.length>0){
-
- NSDictionary *dic = @{
- @"name":_inputName.text,
- @"avatar":_avatarStr,
- @"openInvite":_yaoqing,
- @"inviteCheck":_shenhe,
- @"prohibition":_jinyan,
- @"prohibitFriend":_jinjia,
- @"announcement":@"",
- };
- [GroupNetApi addNewGroup:dic succ:^(int code, NSDictionary * res) {
- NSLog(@"res addNewGroup:%@",res);
- NSString *codestr = res[@"code"];
- if(codestr.intValue==200){
- [self dismissViewControllerAnimated:YES completion:nil];
- }
- } fail:^(NSError * _Nonnull error) {
-
- }];
- }
- else{
- }
- }
-
-
- }
- #pragma mark imagePicker
- - (void)openImagePicker {
- UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
- imagePicker.delegate = self;
- imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; // 或者使用UIImagePickerControllerSourceTypeCamera
- [self presentViewController:imagePicker animated:YES completion:nil];
- }
- - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info {
- UIImage *chosenImage = info[UIImagePickerControllerEditedImage]; // 如果你设置了允许编辑,则使用这个键;否则使用UIImagePickerControllerOriginalImage
- if (!chosenImage) {
- chosenImage = info[UIImagePickerControllerOriginalImage];
- }
- // 裁剪图片,例如裁剪成一个圆形头像
- chosenImage = [self imageWithImage:chosenImage scaledToFillSize:CGSizeMake(100, 100)]; // 假设我们想要一个100x100的圆形头像
- [self dismissViewControllerAnimated:YES completion:nil];
- // 现在你可以调用上传图片的方法了
- [self uploadProfilePicture:chosenImage];
- }
-
- - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
- [self dismissViewControllerAnimated:YES completion:nil];
- }
- - (UIImage *)imageWithImage:(UIImage *)image scaledToFillSize:(CGSize)size {
- UIGraphicsBeginImageContextWithOptions(size, NO, image.scale);
- UIBezierPath *path = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, size.width, size.height)];
- [path addClip];
- [image drawInRect:CGRectMake(0, 0, size.width, size.height)];
- UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- return newImage;
- }
- - (void)uploadProfilePicture:(UIImage *)image {
- NSDate *now = [NSDate date];
- NSTimeInterval trt = [now timeIntervalSince1970];
- NSInteger time = trt*1000;
-
- NSString *fileName = [NSString stringWithFormat:@"%ld.png",(long)time];
- NSData *imageData = UIImagePNGRepresentation(image);
- [GroupNetApi upLoaddataWToken:imageData fileName:fileName succ:^(int code, NSDictionary * res) {
- NSLog(@"res:%@",res);
- self->_avatarStr = res[@"url"];
- [self->_avatar sd_setImageWithURL:[NSURL URLWithString:self->_avatarStr] placeholderImage:[UIImage imageNamed:@"Avatar"]];
- } fail:^(NSError * _Nonnull error) {
- ;
- }];
-
- }
- #pragma mark statusBar
- - (UIStatusBarStyle)preferredStatusBarStyle{
- return UIStatusBarStyleLightContent;
- }
- @end
|