// // KWMPaySuccess.m // iCemarose // // Created by HouWeiBin on 16/9/5. // Copyright © 2016年 kollway. All rights reserved. // #import "KWMPaySuccessVC.h" #import "UIColor+SAMAdditions.h" #import "KWMInformationVC.h" #import "KWMShopCartData.h" #import "UIViewController+BackButtonHandler.h" #import "KWMOrderVC.h" @interface KWMPaySuccessVC ()<KWMRecommendDelegate> @end @implementation KWMPaySuccessVC - (void)viewDidLoad { [super viewDidLoad]; self.title = @"支付成功"; [self initButton]; [self requestProductWithHandle:@"products-list-app-homepage" tags:nil valueKeyPath:@"productArray"]; self.hotRecommendView.title = @"热卖单品"; self.hotRecommendView.delegate = self; } +(NSString *)kwmTag{ return @"KWMPaySuccessVC"; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; } - (void)initButton{ self.btnGetTime.layer.masksToBounds = YES; //btn.layer.cornerRadius = 20/2; //圆角(圆形) self.btnGetTime.layer.borderColor = [UIColor sam_colorWithHex:@"979797"].CGColor; //要设置的颜色 self.btnGetTime.layer.borderWidth = 1; //要设置的描边宽 self.btnStartTime.layer.masksToBounds = YES; self.btnStartTime.layer.borderColor = [UIColor sam_colorWithHex:@"979797"].CGColor; //要设置的颜色 self.btnStartTime.layer.borderWidth = 1; //要设置的描边宽 self.btnMyOrder.layer.masksToBounds = YES; self.btnMyOrder.layer.borderColor = [UIColor sam_colorWithHex:@"979797"].CGColor; //要设置的颜色 self.btnMyOrder.layer.borderWidth = 1; //要设置的描边宽 self.btnBackHome.layer.masksToBounds = YES; self.btnBackHome.layer.borderColor = [UIColor sam_colorWithHex:@"979797"].CGColor; //要设置的颜色 self.btnBackHome.layer.borderWidth = 1; //要设置的描边宽 } -(void)onClickStartTime:(id)sender{ KWMInformationVC *informationVC = (KWMInformationVC *)[KWMBaseVC findControllerBy:[KWMInformationVC kwmTag] fromStoryboard:@"Main"]; informationVC.inforStr = NSLocalizedString(@"WhenPutGoods",@"WhenPutGoods"); informationVC.inforTitleStr = NSLocalizedString(@"WhenPutGoodsTitle",@"WhenPutGoodsTitle"); informationVC.titleStr = @"何时发货"; [self.navigationController pushViewController:informationVC animated:YES]; } -(void)onClickGetTime:(id)sender{ KWMInformationVC *informationVC = (KWMInformationVC *)[KWMBaseVC findControllerBy:[KWMInformationVC kwmTag] fromStoryboard:@"Main"]; informationVC.inforStr = NSLocalizedString(@"WhenPutGoods",@"WhenPutGoods"); informationVC.inforTitleStr = NSLocalizedString(@"WhenPutGoodsTitle",@"WhenPutGoodsTitle"); informationVC.titleStr = @"多久到货"; [self.navigationController pushViewController:informationVC animated:YES]; } -(void)onClickMyOrder:(id)sender{ KWMOrderVC *orderVC = (KWMOrderVC *)[KWMBaseVC findControllerBy:[KWMOrderVC kwmTag] fromStoryboard:@"Mine"]; orderVC.paidCheckout = self.paidCheckout; [self.navigationController pushViewController:orderVC animated:YES]; } -(void)onClickBackHome:(id)sender{ [self.navigationController popToRootViewControllerAnimated:YES]; } -(BOOL) navigationShouldPopOnBackButton { [self.navigationController popToRootViewControllerAnimated:YES]; return NO; // Ignore 'Back' button this time } #pragma mark KWMRecommendDelegate -(void)kwm_gotoRecommendPage:(KWMRecommendView *)recommendView{ [self openURLWithString:@"https://cemarose.myshopify.com/collections/products-list-app-homepage?title=热卖单品"]; } -(void)kwm_onClickProduct:(BUYProduct *)product{ [self openURLWithString:[NSString stringWithFormat:@"https://cemarose.myshopify.com/products/%@",product.handle]]; } #pragma makr - api - (void) requestProductWithHandle:(NSString *) handle tags:(NSArray *) tags valueKeyPath:(nonnull NSString *) valueKeyPath { NSDictionary *parameters = [KWMPPCacheUtil getProductCacheKeyDictionary:1 tags:tags handle:handle]; BOOL useProductDataCache = [self useProductDataCache:parameters valueKeyPath:valueKeyPath page:1]; __weak KWMPaySuccessVC *weakSelf = self; [self.client getCollectionByHandle:handle completion:^(BUYCollection * _Nullable collection, NSError * _Nullable error) { if (!error) { [weakSelf.client getProductsPage:1 inCollection:collection.identifier withTags:tags sortOrder:BUYCollectionSortCollectionDefault completion:^(NSArray<BUYProduct *> * _Nullable products, NSUInteger page, BOOL reachedEnd, NSError * _Nullable error) { if (!error) { [KWMPPCacheUtil saveDataToCache:parameters urlKey:CACHE_KEY_SDK_getCollectionByHandle_getProductsPage products:products]; if(products){ NSArray *productIds; @try { if(self.paidCheckout && self.paidCheckout.lineItemsArray){ productIds = [[self.paidCheckout.lineItems array] rx_mapWithBlock:^id(BUYLineItem* each) { NSNumber *a = each.productId ?: @(0); return a; }]; } } @catch (NSException *exception) { // 捕获到的异常exception } self.hotRecommendView.productArray = products; self.hotRecommendView.boughtProductIdArray = productIds; } } }]; } }]; } -(BOOL)useProductDataCache:(NSDictionary *)cacheKeyDictionary valueKeyPath:(NSString *)valueKeyPath page:(NSUInteger)page{ if(!kIsNetwork || page == 1){ NSArray *productIds; NSArray *products = [KWMPPCacheUtil getProductDataByCache:cacheKeyDictionary urlKey:CACHE_KEY_SDK_getCollectionByHandle_getProductsPage]; if(products && products.count > 0){ @try { if(self.paidCheckout && self.paidCheckout.lineItemsArray){ productIds = [[self.paidCheckout.lineItems array] rx_mapWithBlock:^id(BUYLineItem* each) { NSNumber *a = each.productId ?: @(0); return a; }]; } } @catch (NSException *exception) { // 捕获到的异常exception } self.hotRecommendView.productArray = products; self.hotRecommendView.boughtProductIdArray = productIds; }else{ return false; } } return !kIsNetwork; } @end