ShareGoodsViewController.m 8.41 KB
Newer Older
勾芒's avatar
勾芒 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
//
//  ShareGoodsViewController.m
//  Lighting
//
//  Created by 曹云霄 on 16/6/3.
//  Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//

#import "ShareGoodsViewController.h"

@interface ShareGoodsViewController ()

@end

@implementation ShareGoodsViewController

- (void)viewDidLoad {
    [super viewDidLoad];
}

21 22 23 24
#pragma mark - 压缩图片
- (void)setShareImage:(UIImage *)shareImage
{
    _shareImage = [UIImage imageWithData:UIImageJPEGRepresentation(shareImage, 0.2)];
勾芒's avatar
勾芒 committed
25
}
26

勾芒's avatar
勾芒 committed
27
#pragma mark -分享
28
- (IBAction)shareWeiChatAntWeiboAction:(UIButton *)sender {
勾芒's avatar
勾芒 committed
29
    
30
    WS(weakSelf);
31 32 33 34 35 36 37 38 39
    switch (self.type) {
            case SHARE_GOODS:
        {
            NSData *imageData = UIImageJPEGRepresentation(self.shareImage, 0.5);
            NSString *goodsID = [self.shareID substringToIndex:[self.shareID length]-1];
            NSDictionary *parameterDict = [NSDictionary dictionaryWithObjectsAndKeys:[goodsID substringToIndex:self.shareID.length-1],@"goodsIds",@"",@"title",@"",@"remark",nil];
            XBLoadingView *progressView = [XBLoadingView showHUDViewProgressLabel:@"上传图片中"];
            [HTTP uploadImageWithURL:SERVERREQUESTURL(SHARE) withRequestType:ZERO withImageDatas:imageData withParameter:parameterDict withReturnValueBlock:^(id returnValue) {
                if (RESULT(returnValue)) {
曹云霄's avatar
曹云霄 committed
40
                    NSString *shareWeb = RESPONSE(returnValue)[@"url"];
41 42 43 44 45 46 47 48 49 50 51 52 53
                    UIAlertController *alertView = [UIAlertController alertControllerWithTitle:@"提示" message:@"请输入分享标题" preferredStyle:UIAlertControllerStyleAlert];
                    [alertView addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
                        
                        [weakSelf callSharePlatform:shareWeb withPlatformTag:sender customTitle:nil];
                    }]];
                    [alertView addAction:[UIAlertAction actionWithTitle:@"确认" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
                        UITextField *textField = [alertView.textFields firstObject];
                        [weakSelf callSharePlatform:shareWeb withPlatformTag:sender customTitle:textField.text];
                    }]];
                    [alertView addTextFieldWithConfigurationHandler:^(UITextField * _Nonnull textField) {
                        textField.placeholder = @"请输入";
                    }];
                    [self presentViewController:alertView animated:YES completion:nil];
54 55
                }else
                {
56
                    [XBLoadingView showHUDViewWithText:MESSAGE(returnValue)];
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
                }
            }withprogressBlock:^(double progress) {
                if (progress >= 1) {
                    dispatch_async(dispatch_get_main_queue(), ^{
                        progressView.labelText = @"上传成功";
                        [progressView hide:YES];
                    });
                }else{
                    progressView.progress = progress;
                }
                
            } withFailureBlock:^(NSError *error) {
                [XBLoadingView hideHUDViewWithDefault];
                [XBLoadingView showHUDViewWithText:error.localizedDescription];
            }];
        }
            break;
            case SHARE_ORDER:
        {
            [XBLoadingView showHUDViewWithDefault];
            NSString *shareOrderString = [NSString stringWithFormat:@"%@/%@",SHAREORDERBILL,self.shareID];
            [HTTP networkWithDictionaryRequestWithURL:SERVERREQUESTURL(shareOrderString) withRequestType:ZERO withParameter:nil withReturnValueBlock:^(id returnValue) {
                
                [XBLoadingView hideHUDViewWithDefault];
                if (RESULT(returnValue)) {
82
                    [weakSelf callSharePlatform:RESPONSE(returnValue)[@"url"] withPlatformTag:sender customTitle:nil];
83 84
                }else
                {
85
                    [XBLoadingView showHUDViewWithText:MESSAGE(returnValue)];
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
                }
                
            } withFailureBlock:^(NSError *error) {
                [XBLoadingView hideHUDViewWithDefault];
                [XBLoadingView showHUDViewWithText:error.localizedDescription];
            }];
        }
            break;
            case SHARE_INVITATION:
        {
            [XBLoadingView showHUDViewWithDefault];
            NSString *string = [NSString stringWithFormat:SHAREINVITATION,self.shareID];
            [HTTP networkWithDictionaryRequestWithURL:SERVERREQUESTURL(string) withRequestType:ZERO withParameter:nil withReturnValueBlock:^(id returnValue) {
                
                [XBLoadingView hideHUDViewWithDefault];
                if (RESULT(returnValue)) {
102
                    [weakSelf callSharePlatform:RESPONSE(returnValue)[@"url"] withPlatformTag:sender customTitle:nil];
103 104
                }else
                {
105
                    [XBLoadingView showHUDViewWithText:MESSAGE(returnValue)];
106 107 108 109 110 111 112 113 114 115
                }
                
            } withFailureBlock:^(NSError *error) {
                [XBLoadingView hideHUDViewWithDefault];
                [XBLoadingView showHUDViewWithText:error.localizedDescription];
            }];
        }
            break;
        default:
            break;
116 117
    }
}
曹云霄's avatar
曹云霄 committed
118

119
#pragma mark - 调用分享
120
- (void)callSharePlatform:(NSString *)shareWeb withPlatformTag:(UIButton *)sender customTitle:(NSString *)title
121
{
122
    [UMSocialGlobal shareInstance].isUsingHttpsWhenShareContent = NO;
123 124 125 126 127 128 129
    //创建分享消息对象
    UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject];
    //设置文本
    messageObject.text = @"欧立方一键分享";
    switch (self.type) {
        case SHARE_GOODS:
        {
130
            UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:[BaseViewController isBlankString:title]?@"欧立方体验中心一键分享":title descr:nil thumImage:self.shareImage];
131
            shareObject.webpageUrl = shareWeb;
132 133 134 135 136 137
            messageObject.shareObject = shareObject;
        }
            
            break;
        case SHARE_ORDER:
        {
曹云霄's avatar
曹云霄 committed
138
            UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:@"欧普照明配灯方案" descr:@"欧立方|提供专属您的居家配灯方案" thumImage:[UIImage imageNamed:@"shareLogo"]];
139 140 141 142 143 144 145
            shareObject.webpageUrl = shareWeb;
            messageObject.shareObject = shareObject;

        }
            break;
        case SHARE_INVITATION:
        {
曹云霄's avatar
曹云霄 committed
146
            UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:@"欧立方论坛分享" descr:nil thumImage:[UIImage imageNamed:@"shareLogo"]];
147 148 149 150 151 152 153 154 155 156
            shareObject.webpageUrl = shareWeb;
            messageObject.shareObject = shareObject;

        }
            break;
            
        default:
            break;
    }

157 158
    switch (sender.tag) {
        case 100: //微信好友
159 160 161 162 163
        {
            [[UMSocialManager defaultManager] shareToPlatform:UMSocialPlatformType_WechatSession messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
                if (error) {
                    NSLog(@"************Share fail with error %@*********",error);
                }else{
164
                    [XBLoadingView showHUDViewWithSuccessText:@"分享微信好友成功" completeBlock:nil];
165 166 167 168 169
                }
            }];
        }
            break;
        case 101://微信朋友圈
勾芒's avatar
勾芒 committed
170
        {
171 172 173 174
            [[UMSocialManager defaultManager] shareToPlatform:UMSocialPlatformType_WechatTimeLine messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
                if (error) {
                    NSLog(@"************Share fail with error %@*********",error);
                }else{
175
                    [XBLoadingView showHUDViewWithSuccessText:@"分享微信朋友圈成功" completeBlock:nil];
176 177
                }
            }];
勾芒's avatar
勾芒 committed
178
        }
179 180 181
            break;
        case 102://新浪微博
        {
182 183 184 185
            [[UMSocialManager defaultManager] shareToPlatform:UMSocialPlatformType_Sina messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
                if (error) {
                    NSLog(@"************Share fail with error %@*********",error);
                }else{
186
                    [XBLoadingView showHUDViewWithSuccessText:@"分享新浪微博成功" completeBlock:nil];
187 188
                }
            }];
勾芒's avatar
勾芒 committed
189
        }
190 191
            break;
    }
192

勾芒's avatar
勾芒 committed
193 194 195 196
}


@end