// // ViewController.m // RedAnt ERP Suite // // Created by Ray on 14-5-19. // Copyright (c) 2014年 United Software Applications, Inc. All rights reserved. // #import "MainViewController.h" //#import "SideMenuViewController.h" //#import "RootContainerViewController.h" #import #import "PopupNavigationController.h" //#import "CommonGridViewController.h" #import "CacheViewController.h" #import "ScannerViewController.h" #import "ContactListViewController.h" #import "RAUtils.h" #import "AboutViewController.h" #import "ScannerSettingViewController.h" #import "ActiveViewController.h" #import "WebViewController.h" #import "FunctionTestViewController.h" #import "SimplifiedBuyingProgramViewController.h" #import "UserListViewController.h" #import "OfflineSettingViewController.h" #import "DefaultAppearance.h" #import "PriceSettingViewController.h" #import "JKLockController.h" #import "RASingleton.h" #import "NotificationNameCenter.h" //#import "OLOSettingViewController.h" //#import "ScanHistoryViewController.h" #import "CustomerEditViewController.h" #import "ScanOrderScanModelViewController.h" #import "ScanOrderModelListViewController.h" #import "SetupServerViewController.h" //#import "ScanUserListViewController.h" @interface MainViewController () // scan order main frame @end @implementation MainViewController -(void) logoutDocuments { // [self.pdfListViewController logout]; } -(void) logoutCart { [self.cartViewController logout]; RASingleton.sharedInstance.scan_cart = nil; RASingleton.sharedInstance.price_type = 1; } -(void) logoutWish { // [self.watchListViewController logout]; } -(void) logoutPortfolio { // [self.portfolioViewController logout]; } -(void) logoutOrder { [self.scanorderViewController logout]; } -(void) logoutContact { [self.contactListViewController logout]; } -(void) logoutCategory { // [self.categoryViewController logout]; } - (IBAction)onScanOrderSetting:(id)sender { [self clearSelected]; self.btnsetting.selected = true; if([self.current_VC isKindOfClass:[ServerSettingViewController class]]) return; [self flipFromViewController:self.current_VC toViewController:self.settingViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } //- (IBAction)onSelectSales:(id)sender { // // // AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; // // // // ScanUserListViewController * userVC =[ [UIStoryboard storyboardWithName:@"OLM" bundle:nil] instantiateViewControllerWithIdentifier:@"ScanUserListViewController"]; // userVC.returnValue=^(NSString* user) // { //// self.btnContact.hidden = false; // RASingleton.sharedInstance.user = user; // [self.buttonUser setTitle:user forState:UIControlStateNormal]; // // [self refreshContactDisplay]; //// // }; // // loginvc.delegate = self; // // loginvc.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 //// appDelegate.active_controller = gunVC; //// gunVC.onDismissVC = ^(){ //// appDelegate.active_controller = active_vc; //// }; // UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:userVC] ; // // // // // // // [self hackModalSheetSize:CGSizeMake(450, 200) ofVC:navi]; // // navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 // [self presentViewController:navi animated:YES completion:^{ // // // navi.view.superview.bounds = CGRectMake(0, 0, 480, 320); // // DebugLog(@"about present........."); // // // self.btop = false; // // <#code#> // }]; // // // // // [appDelegate update_count_mark]; //// appDelegate.bLogin = true; //} #ifndef RA_NOTIFICATION -(void) reloadCategory:(BOOL) update_data immediately:(bool)immediately { if(immediately) [ self.categoryViewController reload_container_getdata:update_data]; else { if(update_data&&self.categoryViewController.refresh_type<=REFRESH_DATA) self.categoryViewController.refresh_type = REFRESH_DATA; else if(self.categoryViewController.refresh_type<=REFRESH_VIEW) self.categoryViewController.refresh_type = REFRESH_VIEW; } } -(void) reloadDocuments:(BOOL) update_data immediately:(bool)immediately { if(immediately) [ self.pdfListViewController reload_container_getdata:update_data]; else { if(update_data&&self.pdfListViewController.refresh_type<=REFRESH_DATA) self.pdfListViewController.refresh_type = REFRESH_DATA; else if(self.pdfListViewController.refresh_type<=REFRESH_VIEW) self.pdfListViewController.refresh_type = REFRESH_VIEW; } //[self.pdfListViewController reload_container_getdata:update_data]; } -(void) reloadCart:(BOOL) update_data immediately:(bool)immediately { if(immediately) [ self.cartViewController reload_container_getdata:update_data]; else { if(update_data&&self.cartViewController.refresh_type<=REFRESH_DATA) self.cartViewController.refresh_type = REFRESH_DATA; else if(self.cartViewController.refresh_type<=REFRESH_VIEW) self.cartViewController.refresh_type = REFRESH_VIEW; } // [self.cartViewController reload_container_getdata:update_data]; } -(void) reloadWish:(BOOL) update_data immediately:(bool)immediately { if(immediately) [ self.watchListViewController reload_container_getdata:update_data]; else { if(update_data&&self.watchListViewController.refresh_type<=REFRESH_DATA) self.watchListViewController.refresh_type = REFRESH_DATA; else if(self.watchListViewController.refresh_type<=REFRESH_VIEW) self.watchListViewController.refresh_type = REFRESH_VIEW; } // [self.watchListViewController reload_container_getdata:update_data]; } -(void) reloadPortfolio:(BOOL) update_data immediately:(bool)immediately { // NSMutableDictionary* dict = [NSMutableDictionary new]; // dict[@"receiver"]=@[@"PortfolioViewController"]; // NSString* notificationname = nil; // if(update_data) // notificationname = RA_NOTIFICATION_RELOAD_DATA; // else // notificationname = RA_NOTIFICATION_REFRESH_UI; // NSNotification *notification =[NSNotification notificationWithName:notificationname object:nil userInfo:dict]; // // //通过通知中心发送通知 // // [[NSNotificationCenter defaultCenter] postNotification:notification]; // return; if(immediately) [ self.portfolioViewController reload_container_getdata:update_data]; else { if(update_data&&self.portfolioViewController.refresh_type<=REFRESH_DATA) self.portfolioViewController.refresh_type = REFRESH_DATA; else if(self.portfolioViewController.refresh_type<=REFRESH_VIEW) self.portfolioViewController.refresh_type = REFRESH_VIEW; } // [self.portfolioViewController reload_container_getdata:update_data]; } -(void) reloadOrder:(BOOL) update_data immediately:(bool)immediately { if(immediately) [ self.orderViewController reload_container_getdata:update_data]; else { if(update_data&&self.orderViewController.refresh_type<=REFRESH_DATA) self.orderViewController.refresh_type = REFRESH_DATA; else if(self.orderViewController.refresh_type<=REFRESH_VIEW) self.orderViewController.refresh_type = REFRESH_VIEW; } // [self.orderViewController reload_container_getdata:update_data]; } -(void) reloadContact:(BOOL) update_data immediately:(bool)immediately { //[self.con reload_container]; if(immediately) [ self.contactListViewController reload_container_getdata:update_data]; else { if(update_data&&self.contactListViewController.refresh_type<=REFRESH_DATA) self.contactListViewController.refresh_type = REFRESH_DATA; else if(self.contactListViewController.refresh_type<=REFRESH_VIEW) self.contactListViewController.refresh_type = REFRESH_VIEW; } } #endif -(void)viewWillLayoutSubviews { self.headerView.layer.shadowPath =[UIBezierPath bezierPathWithRect:self.headerView.bounds].CGPath; } -(void) viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; // [self.label_ccount.layer setMasksToBounds:YES]; [self refreshContactDisplay]; [[self navigationController] setNavigationBarHidden:YES animated:NO]; } -(void) refreshContactDisplay { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // self.labelContact.text=appDelegate.contact_name; NSString * contact =[appDelegate.customerInfo valueForKey:@"customer_contact"]; NSString * customer=[appDelegate.customerInfo valueForKey:@"customer_name"]; NSDictionary * customerinfo=appDelegate.customerInfo; if(customerinfo==nil) { contact=@"Select Contact"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } // if(contact==nil||contact.length==0) // { // contact=@"No Name"; // [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; // } else { if(contact==nil||contact.length==0) { contact=@"No Name"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } else { [self.btnContact setTitleColor:UIColorFromRGB(0x009900) forState:UIControlStateNormal]; } } NSMutableArray* arr_contact = [[NSMutableArray alloc] init]; if(contact.length>0) [arr_contact addObject:contact]; if(customer.length>0) [arr_contact addObject:customer]; NSString *contact_string = [arr_contact componentsJoinedByString:@" @"]; [self.btnContact setTitle:contact_string forState:UIControlStateNormal]; } - (void) checklogin:(bool) reloadCurrentVC { [self initMenuItems]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; self.sideMenu_UserName.text =RASingleton.sharedInstance.user; [self.btn_sideMenu_UserName setTitle:RASingleton.sharedInstance.user forState:UIControlStateNormal]; if(appDelegate.bLogin) [self.btnLogin setTitle:@"Sign out" forState:UIControlStateNormal]; else [self.btnLogin setTitle:@"Sign in" forState:UIControlStateNormal]; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ [RANetwork LoadImage:appDelegate.user_icon into:self.user_head ]; }); // if(/*appDelegate.user_type==USER_ROLE_EMPLOYEE*/true) // self.btnContact.hidden = NO; // else // self.btnContact.hidden = YES; NSDictionary * customerinfo=appDelegate.customerInfo; NSString * contact=nil; NSString * customer=nil; if(customerinfo==nil) { contact=@"Select Contact"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } else { contact=[customerinfo valueForKey:@"customer_contact"]; customer=[customerinfo valueForKey:@"customer_name"]; if(contact==nil||contact.length==0) { contact=@"No Name"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } else { [self.btnContact setTitleColor:[UIColor greenColor] forState:UIControlStateNormal]; } } // self.btnContact.hidden = !appDelegate.bLogin;// 修复登出后仍旧显示select contact NSMutableArray* arr_contact = [[NSMutableArray alloc] init]; if(contact.length>0) [arr_contact addObject:contact]; if(customer.length>0) [arr_contact addObject:customer]; NSString *contact_string = [arr_contact componentsJoinedByString:@" @"]; [self.btnContact setTitle:contact_string forState:UIControlStateNormal]; // if(appDelegate.bLogin) // [self.buttonUser setTitle:RASingleton.sharedInstance.user forState:UIControlStateNormal]; // else // [self.buttonUser setTitle:@"Sign in" forState:UIControlStateNormal]; #ifdef RA_NOTIFICATION [ActiveViewController Notify:@"DetailViewController,PDFListViewController,CartViewController,PortfolioViewController,WatchListViewController,OrderListViewController,OrderListViewController,ContactListViewController,CategoryViewController" Message:RA_NOTIFICATION_RELOAD_DATA]; #else [self reloadDocuments:true immediately:false]; [self reloadCart:true immediately:false]; [self reloadPortfolio:true immediately:false]; [self reloadWish:true immediately:false]; [self reloadOrder:true immediately:false]; [self reloadContact:true immediately:false]; [self reloadCategory:true immediately:false]; ActiveViewController* lrvc = (ActiveViewController*)appDelegate.active_controller; if(reloadCurrentVC) { if(lrvc!=nil) [ lrvc refresh_on_login]; } else { if(lrvc.refresh_type<=REFRESH_DATA) lrvc.refresh_type = REFRESH_DATA; else if(lrvc.refresh_type<=REFRESH_VIEW) lrvc.refresh_type = REFRESH_VIEW; } #endif // [self reload]; } - (IBAction)onContactClick:(id)sender { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; NSString* contactid=appDelegate.contact_id ; if(contactid==nil) { NSMutableDictionary * params= [[NSMutableDictionary alloc] init]; CustomerEditViewController * cuseditVC = [[CustomerEditViewController alloc] initWithNibName:@"CommonEditor.iPad" bundle:nil]; cuseditVC.bnewcustomer=true; cuseditVC.bolocustomer = true; cuseditVC.url_type = URL_FILE; cuseditVC.request_url=[OLDataProvider scanTemplatePath:@"scan_contact.json"];; cuseditVC.params = params; cuseditVC.returnValue=^(NSMutableDictionary* value) { if(value == nil) { return; //canceled } NSString* contact_id=[[NSUUID new] UUIDString]; value[@"business_card"] = value[@"customer_cid"]; NSArray*arr =[RAConvertor string2arr:value[@"business_card"] separator:@","]; for(int l=0;l0) { vc.edit_icon = false; vc.assig_icon = true; vc.reset_icon = true; vc.request_url=[OLDataProvider scanTemplatePath:@"scan_contact.json"]; } // else // { // vc.edit_icon = false; // vc.assig_icon = false; // vc.reset_icon = true; // vc.request_url=LOCAL_URL_CUSTOMER_INFO_EDITOR; // } // NSDictionary* dd=appDelegate.customerInfo;; vc.data_init = appDelegate.customerInfo; vc.update_order = true; vc.contactId=contactid; // vc.delegate = self; vc.returnValue = ^(NSMutableDictionary* value){ if(value==nil) { //reset // if(RASingleton.sharedInstance.enable_OfflineOrder) { [OLDataProvider deleteScanOrder:appDelegate.order_code]; [appDelegate closeOrder]; // // [self prepareReturn:nil]; [self.navigationController popViewControllerAnimated:true]; [((MainViewController*)appDelegate.main_vc) switchToOrder]; return; } } else { value[@"business_card"] = value[@"business_card"]; NSArray*arr =[RAConvertor string2arr:value[@"business_card"] separator:@","]; for(int l=0;l }]; } else [self flipFromViewController:self.current_VC toViewController:self.contactListViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } - (void) reload { // AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; return; // dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // // // NSDictionary* category=[RANetwork request_Cagegory]; // // dispatch_async(dispatch_get_main_queue(), ^{ // // if([[category valueForKey:@"result"] intValue]==2) // { // appDelegate.categoryMenu = category; // } // else // { // // [RAUtils error_alert:[category valueForKey:@"err_msg"]] ; // } // // }); // }); } -(void) scanTempsave { AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; // RASingleton.sharedInstance.scan_temp_code NSString *orderdir =[OLDataProvider getScanPath]; // appDelegate.order_code = RASingleton.sharedInstance.scan_temp_code; // [OLDataProvider moveScanTemp2Order]; // NSString *orderdir = [OLDataProvider getScanPath]; // NSString* userdir = [OLDataProvider getUserPath]; // NSString *orderPath = [orderdir stringByAppendingPathComponent:@"order.json"]; // [RAUtils dicttofile:orderPath dict:self.content_data_download]; // NSString* order_code = RASingleton.sharedInstance.scan_temp_code; // // int section_count = [self.content_data_download[@"section_count"] intValue]; // // for(int i=0;i }]; } else { UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Sign Out" message:@"" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *action_1 = [UIAlertAction actionWithTitle:@"Sign Out" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) { //open exist AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; // int cc=[RASingleton.sharedInstance.scan_cart[@"section_0"][@"count"] intValue]; bool issaved = [OLDataProvider isSavedScanOrder:appDelegate.order_code]; if(/*appDelegate.order_code == nil*/!issaved && [RASingleton.sharedInstance.scan_cart[@"section_0"][@"count"] intValue]>0) { UIAlertController *alertController1 = [UIAlertController alertControllerWithTitle:@"Save Cart?" message:@"" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *action_1 = [UIAlertAction actionWithTitle:@"Yes" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) { [self scanTempsave]; [OLDataProvider scanCloseOrder]; [appDelegate Logout]; // appDelegate.cart_count = 0;//[[jsobj :@"cart_count"] intValue]; // appDelegate.wish_count =0;//[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =0;//[[jsobj valueForKey:@"portfolio_count"] intValue]; // // [appDelegate update_count_mark]; // // // appDelegate.can_show_price =false; // appDelegate.can_see_price =false; // appDelegate.can_create_portfolio =false; // appDelegate.can_create_order =false; // // // appDelegate.can_cancel_order =false; // appDelegate.can_set_cart_price =false; // appDelegate.can_delete_order =false; // appDelegate.can_submit_order =false; // appDelegate.can_set_tearsheet_price =false; // appDelegate.can_update_contact_info = false; // // appDelegate.save_order_logout = false; // appDelegate.submit_order_logout = false; // appDelegate.alert_sold_in_quantities = false; // // appDelegate.ipad_perm =nil ; // appDelegate.user_type = USER_ROLE_UNKNOWN; // appDelegate.OrderFilter= nil; // [appDelegate SetSo:nil]; // [appDelegate set_main_button_panel]; #ifdef RA_NOTIFICATION [ActiveViewController Notify:@"ScanSearchViewController" Message:RA_NOTIFICATION_REFRESH_UI]; [ActiveViewController Notify:@"ScanHistoryViewController" Message:RA_NOTIFICATION_REFRESH_UI]; #endif // [appDelegate Logout]; }]; UIAlertAction *action_2 = [UIAlertAction actionWithTitle:@"No" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { //create new; [OLDataProvider scanCloseOrder]; [appDelegate Logout]; // appDelegate.cart_count = 0;//[[jsobj :@"cart_count"] intValue]; // appDelegate.wish_count =0;//[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =0;//[[jsobj valueForKey:@"portfolio_count"] intValue]; // // [appDelegate update_count_mark]; // // // appDelegate.can_show_price =false; // appDelegate.can_see_price =false; // appDelegate.can_create_portfolio =false; // appDelegate.can_create_order =false; // // // appDelegate.can_cancel_order =false; // appDelegate.can_set_cart_price =false; // appDelegate.can_delete_order =false; // appDelegate.can_submit_order =false; // appDelegate.can_set_tearsheet_price =false; // appDelegate.can_update_contact_info = false; // // appDelegate.save_order_logout = false; // appDelegate.submit_order_logout = false; // appDelegate.alert_sold_in_quantities = false; // // appDelegate.ipad_perm =nil ; // appDelegate.user_type = USER_ROLE_UNKNOWN; // appDelegate.OrderFilter= nil; // [appDelegate SetSo:nil]; // [appDelegate set_main_button_panel]; #ifdef RA_NOTIFICATION [ActiveViewController Notify:@"ScanSearchViewController" Message:RA_NOTIFICATION_REFRESH_UI]; [ActiveViewController Notify:@"ScanHIstoryViewController" Message:RA_NOTIFICATION_REFRESH_UI]; #endif // [appDelegate Logout]; }]; [alertController1 addAction:action_1]; [alertController1 addAction:action_2]; [self presentViewController:alertController1 animated:YES completion:nil]; return; } [OLDataProvider scanCloseOrder]; [appDelegate Logout]; // appDelegate.cart_count = 0;//[[jsobj :@"cart_count"] intValue]; // appDelegate.wish_count =0;//[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =0;//[[jsobj valueForKey:@"portfolio_count"] intValue]; // // [appDelegate update_count_mark]; // // // appDelegate.can_show_price =false; // appDelegate.can_see_price =false; // appDelegate.can_create_portfolio =false; // appDelegate.can_create_order =false; // // // appDelegate.can_cancel_order =false; // appDelegate.can_set_cart_price =false; // appDelegate.can_delete_order =false; // appDelegate.can_submit_order =false; // appDelegate.can_set_tearsheet_price =false; // appDelegate.can_update_contact_info = false; // // appDelegate.save_order_logout = false; // appDelegate.submit_order_logout = false; // appDelegate.alert_sold_in_quantities = false; // // appDelegate.ipad_perm =nil ; // appDelegate.user_type = USER_ROLE_UNKNOWN; // appDelegate.OrderFilter= nil; // [appDelegate SetSo:nil]; // // [appDelegate set_main_button_panel]; #ifdef RA_NOTIFICATION [ActiveViewController Notify:@"ScanSearchViewController" Message:RA_NOTIFICATION_REFRESH_UI]; [ActiveViewController Notify:@"ScanHistoryViewController" Message:RA_NOTIFICATION_REFRESH_UI]; #endif // [appDelegate Logout]; }]; UIAlertAction *action_2 = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { //create new; }]; [alertController addAction:action_1]; [alertController addAction:action_2]; [self presentViewController:alertController animated:YES completion:nil]; } } #pragma mark - LoginViewControllerDelegate -(void)LoginViewControllerDidLogin:(LoginViewController *)viewController { [viewController dismissViewControllerAnimated:YES completion:^{ AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; self.sideMenu_UserName.text =RASingleton.sharedInstance.user; [self.btn_sideMenu_UserName setTitle:RASingleton.sharedInstance.user forState:UIControlStateNormal]; [self.btnLogin setTitle:@"Sign out" forState:UIControlStateNormal]; [RANetwork LoadImage:appDelegate.user_icon into:self.user_head ]; // if(/*appDelegate.user_type==USER_ROLE_EMPLOYEE*/true) // self.btnContact.hidden = NO; // else // self.btnContact.hidden = YES; NSDictionary * customerinfo=appDelegate.customerInfo; NSString * contact=nil; NSString * customer=nil; if(customerinfo==nil) { contact=@"Select Contact"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } else { contact=[customerinfo valueForKey:@"customer_contact"]; customer=[customerinfo valueForKey:@"customer_name"]; if(contact==nil||contact.length==0) { contact=@"No Name"; [self.btnContact setTitleColor:[UIColor redColor] forState:UIControlStateNormal]; } else { [self.btnContact setTitleColor:UIColorFromRGB(0x009900) forState:UIControlStateNormal]; } } NSMutableArray* arr_contact = [[NSMutableArray alloc] init]; if(contact.length>0) [arr_contact addObject:contact]; if(customer.length>0) [arr_contact addObject:customer]; NSString *contact_string = [arr_contact componentsJoinedByString:@" @"]; [self.btnContact setTitle:contact_string forState:UIControlStateNormal]; // [self.buttonUser setTitle:RASingleton.sharedInstance.user forState:UIControlStateNormal]; [self reload]; }]; } - (void) flipFromViewController:(UIViewController*) fromController toViewController:(UIViewController*) toController withDirection:(UIViewAnimationOptions) direction { toController.view.frame = self.container.bounds; // 1 // UIViewAutoresizingFlexibleLeftMargin = 1 << 0, // UIViewAutoresizingFlexibleWidth = 1 << 1, // UIViewAutoresizingFlexibleRightMargin = 1 << 2, // UIViewAutoresizingFlexibleTopMargin = 1 << 3, // UIViewAutoresizingFlexibleHeight = 1 << 4, // UIViewAutoresizingFlexibleBottomMargin = 1 << 5 toController.view.autoresizingMask = UIViewAutoresizingFlexibleHeight |UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleRightMargin|UIViewAutoresizingFlexibleTopMargin|UIViewAutoresizingFlexibleBottomMargin; DebugLog(@"MAIN VIEWCONTROLLER CHILD COUNT %lu",(unsigned long)self.childViewControllers.count); [self addChildViewController:toController]; // [fromController willMoveToParentViewController:nil]; // [self transitionFromViewController:fromController toViewController:toController duration:0.0 options:direction | UIViewAnimationOptionCurveEaseIn animations:nil completion:^(BOOL finished) { [toController didMoveToParentViewController:self]; // 2 [fromController removeFromParentViewController]; // 3 self.current_VC = toController; // if([fromController isKindOfClass:[HomeViewController class]]) // { // // [[NSNotificationCenter defaultCenter] postNotificationName:CYCLESCROLL_STOPTIMMER object:nil]; // // self.homeViewController = nil; // // } }]; } -(void)topicViewSelected:(int) type _id: (int) _id { // [self switchToCagegory:nil]; // if(type==0) // { // // [self.categoryViewController showDetailat:_id]; // } // else // { // [self.categoryViewController showCategory]; // // } } -(void)categoryMenuSelected:(NSString*)_id { // [self switchToCagegory:_id]; // [self.categoryViewController showCategory]; } //- (void)switchToItemSearch:(NSString* )coverttype { // // // self.itemSearchViewController.default_filter = nil; // self.itemSearchViewController.covertype = coverttype; // self.itemSearchViewController.saved_covertype = coverttype; // // // // self.itemSearchViewController.p_available = nil; // self.itemSearchViewController.p_price = nil; // self.itemSearchViewController.p_QTY = nil; // self.itemSearchViewController.p_bestseller = nil; //#ifdef RA_NOTIFICATION // [ActiveViewController Notify:@"ItemSearchViewController" Message:RA_NOTIFICATION_RELOAD_DATA]; //#else // [self.itemSearchViewController reload_container_getdata:true]; //#endif // // if([self.current_VC isKindOfClass:[ItemSearchViewController class]]) // // return; // [self flipFromViewController:self.current_VC toViewController:self.itemSearchViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; // // [[self navigationController] setNavigationBarHidden:YES animated:NO]; // // // // self.is_home = false; // // self.current_vc = VC_CATEGORY; // // [self.homeViewController willMoveToParentViewController:nil]; //1 // // [self.homeViewController.view removeFromSuperview]; //2 // // [self.homeViewController removeFromParentViewController]; //3 // // // // [self.container addSubview:self.cagegoryViewController.view]; //2 // // [self.cagegoryViewController didMoveToParentViewController:self]; //} //- (void)switchToCagegory:(NSString* )categoryid { // // NSString* ttt =[@"Category" stringByAppendingString:[self categoryString:categoryid node:self.categoryMenu level:0]]; // // // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // #if defined(BUILD_UWAVER) // self.categoryViewController.categoryString = [@"Collections" stringByAppendingString:[self categoryString:categoryid node:appDelegate.categoryMenu level:0]]; //#else // self.categoryViewController.categoryString = [@"Category" stringByAppendingString:[self categoryString:categoryid node:appDelegate.categoryMenu level:0]]; //#endif // // self.categoryViewController.cagegoryLabel.text =self.categoryViewController.categoryString; // self.categoryViewController.categoryid = categoryid ; // self.categoryViewController.loadall=false; //// self.categoryViewController.collectionview // self.categoryViewController.p_alert = nil; // self.categoryViewController.p_available = nil; // self.categoryViewController.p_price = nil; // self.categoryViewController.p_QTY = nil; // self.categoryViewController.p_bestseller = nil; // // self.categoryViewController.modelname = nil; // self.categoryViewController.modeldescrip = nil; //#ifdef RA_NOTIFICATION // [ActiveViewController Notify:@"CategoryViewController" Message:RA_NOTIFICATION_RELOAD_DATA]; //#else // [self.categoryViewController reload_container_getdata:true]; //#endif // // [self.categoryViewController showCategory]; // if([self.current_VC isKindOfClass:[CategoryViewController class]]) // // return; // [self flipFromViewController:self.current_VC toViewController:self.categoryViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; // // [[self navigationController] setNavigationBarHidden:YES animated:NO]; // // // // self.is_home = false; // // self.current_vc = VC_CATEGORY; // // [self.homeViewController willMoveToParentViewController:nil]; //1 // // [self.homeViewController.view removeFromSuperview]; //2 // // [self.homeViewController removeFromParentViewController]; //3 // // // // [self.container addSubview:self.cagegoryViewController.view]; //2 // // [self.cagegoryViewController didMoveToParentViewController:self]; //} - (IBAction)switchToHome:(UIButton *)sender { [self clearSelected]; [self switchToHome]; // self.current_vc = VC_HOME; // self.is_home = true; // // [self.cagegoryViewController willMoveToParentViewController:nil]; //1 // [self.cagegoryViewController.view removeFromSuperview]; //2 // [self.cagegoryViewController removeFromParentViewController]; //3 // // [self.container addSubview:self.homeViewController.view]; //2 // [self.homeViewController didMoveToParentViewController:self]; } -(void)switchToHome { [self clearSelected]; if([self.current_VC isKindOfClass:[ScanHomeViewController class]]) return; if(self.homeViewController == nil) { self.homeViewController =[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"ScanHomeViewController"]; self.homeViewController.view.frame = self.container.bounds; } [self flipFromViewController:self.current_VC toViewController:self.homeViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } -(void) switchToPreviousVC { if(self.previous_VC==nil) return; if([self.current_VC isKindOfClass:[self.previous_VC class]]) return; [self flipFromViewController:self.current_VC toViewController:self.previous_VC withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } - (IBAction)switchToCart:(UIButton *)sender { // [self.btncart setBackgroundColor:UIColor.whiteColor]; // [self.btncart setTintColor:UIColor.clearColor]; // UIColor *color0=[self.btncart titleColorForState:UIControlStateNormal]; // UIColor *color1=[self.btncart titleColorForState:UIControlStateSelected]; [self switchToCart]; // self.current_vc = VC_HOME; } -(void) switchToCart { if([self.current_VC isKindOfClass:[CartViewController class]]) return; [self clearSelected]; self.btncart.selected = true; self.previous_VC = self.current_VC; [self flipFromViewController:self.current_VC toViewController:self.cartViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } -(void) switchToOrder { [self clearSelected]; self.btnorder.selected = true; if([self.current_VC isKindOfClass:[ScanOrderListViewController class]]) return; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; [self flipFromViewController:self.current_VC toViewController:self.scanorderViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; } - (IBAction)switchToOrder:(id)sender { [self switchToOrder]; } #pragma mark - CategoryMenuDelegate -(void)SelectCategory:(NSString *)category { // [self switchToCagegory:category]; } -(NSString*) categoryString:(NSString*) categoryid node:(NSDictionary*) json level:(int) level; { if(categoryid.length==0) return @">All Products>"; //NSString* idString = [NSString stringWithFormat:@"%d",categoryid]; NSString* categoryString =@">"; int count = [[json valueForKey:@"count"] intValue]; for(int i=0;i"]; categoryString =[categoryString stringByAppendingString: [category_json valueForKey:@"title" ] ]; categoryString = [categoryString stringByAppendingString:[ self categoryString:categoryid node:category_json level:level+1]]; break; } } return categoryString; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } - (IBAction)openMenu:(UIButton *)sender { [self showMenu]; } - (UIImage*)screen_shot { // CGRect r = self.view.frame; // CGRect r1 = self.view.bounds; // double width,height; // // UIInterfaceOrientation orientation =[UIApplication sharedApplication].statusBarOrientation; // ; // if(orientation == UIDeviceOrientationLandscapeLeft ||orientation == UIDeviceOrientationLandscapeRight) // { // width = self.view.frame.size.width>self.view.frame.size.height? self.view.frame.size.width:self.view.frame.size.height; // height =self.view.frame.size.widthself.view.frame.size.height? self.view.frame.size.width:self.view.frame.size.height; // } UIGraphicsBeginImageContext(CGSizeMake(self.view.bounds.size.width, self.view.bounds.size.height)); [self.view.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return viewImage; } - (IBAction)onhideMenuClick:(id)sender { [self hideMenu]; self.backgroundButton.hidden=true; self.openMenuButton.hidden = false; self.sideMenu.hidden = true; } - (void)hideMenu { CGRect frame ; frame.origin.x = -300; frame.origin.y = 0; frame.size.height = self.view.bounds.size.height; frame.size.width = 364; self.sideMenu.frame=frame; self.sideMenu.hidden = true; self.blurView.alpha = 0; [self.menuButton setImage:[UIImage imageNamed:@"menu_open"] forState:UIControlStateNormal]; self.menuShown = false; self.backgroundButton.hidden=true; self.openMenuButton.hidden = false; } - (void)showMenu { [self.sideMenuTable reloadData]; UIImage* imgsource = [self screen_shot]; self.blurView.alpha = 0; UIImage* imgBlur =[self applyBlurWithRadius:5 sourceImage:imgsource tintColor:[UIColor colorWithWhite:0.2 alpha:0.73] saturationDeltaFactor:1.8 maskImage:nil]; self.blurView.image = imgBlur; // self.blurView.hidden = imgBlur; // [self.sideMenu becomeFirstResponder]; self.sideMenu.hidden = false; self.backgroundButton.hidden=false; CGRect frame ; frame.origin.x = 0; frame.origin.y = 0; frame.size.height = self.view.bounds.size.height; frame.size.width = 364; // [UIView animateWithDuration:1.0 animations:^{ self.sideMenu.frame=frame; // self.blurView.alpha = 1; // [self.menuButton setImage:[UIImage imageNamed:@"menu"] forState:UIControlStateNormal]; // // }]; [UIView animateWithDuration:0.5 animations:^{ self.sideMenu.frame=frame; self.blurView.alpha = 1; } completion:^(BOOL finished) { [self.menuButton setImage:[UIImage imageNamed:@"menu"] forState:UIControlStateNormal]; }]; // UIImage* img= [UIImage imageNamed:@"menu"]; // self.menuButton.imageView.image = nil; self.menuShown = true; } -(void)initMenuItems { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; self.sideMenuItems = [[NSMutableArray alloc] init]; NSMutableDictionary* map = [[NSMutableDictionary alloc] init]; if(RASingleton.sharedInstance.user!=nil) { [map setValue:@"Wish List" forKey:@"title"]; [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } #if !defined(BUILD_HOMER) && !defined(BUILD_GATIT) //#ifndef BUILD_HOMER //homer 要求去掉cam scan 2017/12/20 // if(appDelegate.user_type==USER_ROLE_EMPLOYEE) { [map setValue:@"Cam Scan" forKey:@"title"]; [map setValue:@"rect_contact_list" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } #endif if(appDelegate.user_type==USER_ROLE_EMPLOYEE || (appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeCustomer)) { // [map setValue:@"Contact" forKey:@"title"]; // [map setValue:@"rect_contact_list" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; //#ifdef BUILD_UWAVER // [map setValue:@"Hang Tag" forKey:@"title"]; //#else [map setValue:@"Portfolio" forKey:@"title"]; //#endif [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; //#ifdef BUILD_UWAVER // [map setValue:@"View Hang Tags" forKey:@"title"]; //#else [map setValue:@"View Portfolios" forKey:@"title"]; //#endif [map setValue:@"rect_pdf_list" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } if(appDelegate.can_show_price) { if(appDelegate.price_hidden) [map setValue:@"Show Price" forKey:@"title"]; else [map setValue:@"Hide Price" forKey:@"title"]; [map setValue:@"rect_announcements" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } // [map setValue:@"Contact" forKey:@"title"]; // [map setValue:@"rect_market_news" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; // [map setValue:@"Cache" forKey:@"title"]; // [map setValue:@"rect_announcements" forKey:@"img"]; //[self.sideMenuItems addObject:map.copy]; // NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults]; // [map setValue:@"Message" forKey:@"title"]; // [map setValue:@"rect_search_history" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; // #if defined(BUILD_NPD) [map setValue:@"Scanner Setting" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; # endif #if defined(SCANNER_ORDER) [map setValue:@"Scanner Order" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; # endif #if defined(BUILD_NPD)|| defined (BUILD_CONTRAST) if(appDelegate.user_type==USER_ROLE_EMPLOYEE) { [map setValue:@"Offline Setting" forKey:@"title"]; [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } #endif if (RASingleton.sharedInstance.user && appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeStore ) { [map setValue:@"Price Setting" forKey:@"title"]; // [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } if (RASingleton.sharedInstance.user && appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeStore ) { if ([RASingleton sharedInstance].global_lock) { [map setValue:@"Unlock" forKey:@"title"]; } else { [map setValue:@"Lock" forKey:@"title"]; } [self.sideMenuItems addObject:map.copy]; } #if defined(BUILD_HOMER) || defined(BUILD_GATIT) /* if(appDelegate.user_type==USER_ROLE_EMPLOYEE) { [map setValue:@"Offline Setting" forKey:@"title"]; [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } */ // if (RASingleton.sharedInstance.user && appDelegate.user_type == USER_ROLE_CUSTOMER) { // [map setValue:@"Price Setting" forKey:@"title"]; // // [map setValue:@"rect_market_news" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; // } if (RASingleton.sharedInstance.user && appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeStore ) { if ([Singleton sharedInstance].global_lock) { [map setValue:@"Unlock" forKey:@"title"]; } else { [map setValue:@"Lock" forKey:@"title"]; } [self.sideMenuItems addObject:map.copy]; } # endif #ifdef DEBUG // if([[RASingleton.sharedInstance.user lowercaseString] isEqualToString:@"larryl"]||[[RASingleton.sharedInstance.user lowercaseString] isEqualToString:@"arpithat"]) { // [map setValue:@"Contact" forKey:@"title"]; // [map setValue:@"rect_contact_list" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; [map setValue:@"Function Test" forKey:@"title"]; [map setValue:@"rect_market_news" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; } #endif [map setValue:@"Privacy Policy" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; [map setValue:@"About us" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; #ifdef BUILD_HMLG [map setValue:@"Homelegance Website" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; #endif #if defined(BUILD_NPD) [map setValue:@"BLOG" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; [map setValue:[NSString stringWithFormat:@"%@ Website",COMPANY_SHORT_NAME] forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; [map setValue:[NSString stringWithFormat:@"%@ Policy",COMPANY_SHORT_NAME] forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; [map setValue:@"Simplified Buying Program" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; #endif #ifdef BUILD_USAI // [map setValue:@"BLOG" forKey:@"title"]; // [map setValue:@"rect_change_password" forKey:@"img"]; // [self.sideMenuItems addObject:map.copy]; [map setValue:@"USAI Website" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; #endif #ifdef BUILD_HOMER /* [map setValue:@"BLOG" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; */ [map setValue:@"HOMER Website" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; #endif #ifdef BUILD_GATIT [map setValue:@"TITAN Website" forKey:@"title"]; [map setValue:@"rect_change_password" forKey:@"img"]; [self.sideMenuItems addObject:map.copy]; # endif [self.sideMenuTable reloadData]; // } - (UIImage *)applyBlurWithRadius:(CGFloat)blurRadius sourceImage:(UIImage*)sourceImage tintColor:(UIColor *)tintColor saturationDeltaFactor:(CGFloat)saturationDeltaFactor maskImage:(UIImage *)maskImage { // Check pre-conditions. if (sourceImage.size.width < 1 || sourceImage.size.height < 1) { DebugLog (@"*** error: invalid size: (%.2f x %.2f). Both dimensions must be >= 1: %@", sourceImage.size.width, sourceImage.size.height, self); return nil; } if (!sourceImage.CGImage) { DebugLog (@"*** error: image must be backed by a CGImage: %@", self); return nil; } if (maskImage && !maskImage.CGImage) { DebugLog (@"*** error: maskImage must be backed by a CGImage: %@", maskImage); return nil; } CGRect imageRect = { CGPointZero, sourceImage.size }; UIImage *effectImage = sourceImage; BOOL hasBlur = blurRadius > __FLT_EPSILON__; BOOL hasSaturationChange = fabs(saturationDeltaFactor - 1.) > __FLT_EPSILON__; if (hasBlur || hasSaturationChange) { UIGraphicsBeginImageContextWithOptions(sourceImage.size, NO, [[UIScreen mainScreen] scale]); CGContextRef effectInContext = UIGraphicsGetCurrentContext(); CGContextScaleCTM(effectInContext, 1.0, -1.0); CGContextTranslateCTM(effectInContext, 0, -sourceImage.size.height); CGContextDrawImage(effectInContext, imageRect, sourceImage.CGImage); vImage_Buffer effectInBuffer; effectInBuffer.data = CGBitmapContextGetData(effectInContext); effectInBuffer.width = CGBitmapContextGetWidth(effectInContext); effectInBuffer.height = CGBitmapContextGetHeight(effectInContext); effectInBuffer.rowBytes = CGBitmapContextGetBytesPerRow(effectInContext); UIGraphicsBeginImageContextWithOptions(sourceImage.size, NO, [[UIScreen mainScreen] scale]); CGContextRef effectOutContext = UIGraphicsGetCurrentContext(); vImage_Buffer effectOutBuffer; effectOutBuffer.data = CGBitmapContextGetData(effectOutContext); effectOutBuffer.width = CGBitmapContextGetWidth(effectOutContext); effectOutBuffer.height = CGBitmapContextGetHeight(effectOutContext); effectOutBuffer.rowBytes = CGBitmapContextGetBytesPerRow(effectOutContext); if (hasBlur) { // A description of how to compute the box kernel width from the Gaussian // radius (aka standard deviation) appears in the SVG spec: // http://www.w3.org/TR/SVG/filters.html#feGaussianBlurElement // // For larger values of 's' (s >= 2.0), an approximation can be used: Three // successive box-blurs build a piece-wise quadratic convolution kernel, which // approximates the Gaussian kernel to within roughly 3%. // // let d = floor(s * 3*sqrt(2*pi)/4 + 0.5) // // ... if d is odd, use three box-blurs of size 'd', centered on the output pixel. // CGFloat inputRadius = blurRadius * [[UIScreen mainScreen] scale]; NSUInteger radius = floor(inputRadius * 3. * sqrt(2 * M_PI) / 4 + 0.5); if (radius % 2 != 1) { radius += 1; // force radius to be odd so that the three box-blur methodology works. } vImageBoxConvolve_ARGB8888(&effectInBuffer, &effectOutBuffer, NULL, 0, 0, (unsigned int)radius, (unsigned int)radius, 0, kvImageEdgeExtend); vImageBoxConvolve_ARGB8888(&effectOutBuffer, &effectInBuffer, NULL, 0, 0, (unsigned int)radius, (unsigned int)radius, 0, kvImageEdgeExtend); vImageBoxConvolve_ARGB8888(&effectInBuffer, &effectOutBuffer, NULL, 0, 0, (unsigned int)radius, (unsigned int)radius, 0, kvImageEdgeExtend); } BOOL effectImageBuffersAreSwapped = NO; if (hasSaturationChange) { CGFloat s = saturationDeltaFactor; CGFloat floatingPointSaturationMatrix[] = { 0.0722 + 0.9278 * s, 0.0722 - 0.0722 * s, 0.0722 - 0.0722 * s, 0, 0.7152 - 0.7152 * s, 0.7152 + 0.2848 * s, 0.7152 - 0.7152 * s, 0, 0.2126 - 0.2126 * s, 0.2126 - 0.2126 * s, 0.2126 + 0.7873 * s, 0, 0, 0, 0, 1, }; const int32_t divisor = 256; NSUInteger matrixSize = sizeof(floatingPointSaturationMatrix)/sizeof(floatingPointSaturationMatrix[0]); int16_t saturationMatrix[matrixSize]; for (NSUInteger i = 0; i < matrixSize; ++i) { saturationMatrix[i] = (int16_t)roundf(floatingPointSaturationMatrix[i] * divisor); } if (hasBlur) { vImageMatrixMultiply_ARGB8888(&effectOutBuffer, &effectInBuffer, saturationMatrix, divisor, NULL, NULL, kvImageNoFlags); effectImageBuffersAreSwapped = YES; } else { vImageMatrixMultiply_ARGB8888(&effectInBuffer, &effectOutBuffer, saturationMatrix, divisor, NULL, NULL, kvImageNoFlags); } } if (!effectImageBuffersAreSwapped) effectImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); if (effectImageBuffersAreSwapped) effectImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); } // Set up output context. UIGraphicsBeginImageContextWithOptions(sourceImage.size, NO, [[UIScreen mainScreen] scale]); CGContextRef outputContext = UIGraphicsGetCurrentContext(); CGContextScaleCTM(outputContext, 1.0, -1.0); CGContextTranslateCTM(outputContext, 0, -sourceImage.size.height); // Draw base image. CGContextDrawImage(outputContext, imageRect, sourceImage.CGImage); // Draw effect image. if (hasBlur) { CGContextSaveGState(outputContext); if (maskImage) { CGContextClipToMask(outputContext, imageRect, maskImage.CGImage); } CGContextDrawImage(outputContext, imageRect, effectImage.CGImage); CGContextRestoreGState(outputContext); } // Add in color tint. if (tintColor) { CGContextSaveGState(outputContext); CGContextSetFillColorWithColor(outputContext, tintColor.CGColor); CGContextFillRect(outputContext, imageRect); CGContextRestoreGState(outputContext); } // Output image is ready. UIImage *outputImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return outputImage; } //- (IBAction)openMenu:(UIButton *)sender { //} #pragma mark - Table view data source - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.sideMenuItems.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; NSString *CellIdentifier = @"SideMenuItem"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath]; NSString* title = [self.sideMenuItems[indexPath.row] valueForKey:@"title"]; cell.backgroundColor = [UIColor clearColor]; // [cell.backgroundColor:[UIColor clearColor]]; // UIImageView* iv= [[UIImageView alloc] initWithImage:]; cell.textLabel.text = title; cell.detailTextLabel.textColor =[UIColor redColor]; if([title isEqualToString:@"Wish List"]&&appDelegate.wish_count>0) cell.detailTextLabel.text = [NSString stringWithFormat:@"%ld",appDelegate.wish_count]; else if(([title isEqualToString:@"Portfolio"] || [title isEqualToString:@"Hang Tag"])&&appDelegate.port_count>0) cell.detailTextLabel.text = [NSString stringWithFormat:@"%ld",appDelegate.port_count]; else { cell.detailTextLabel.text =nil; } // cell.imageView.image = [UIImage imageNamed:[self.toolsinfo[indexPath.row] valueForKey:@"img"]]; return cell; } #ifdef SCANNER_ORDER -(void) scanLogin { [self onUserButtonClick:nil]; } -(void) initAppDelegate { AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; // appDelegate.user_type = USER_ROLE_EMPLOYEE; // appDelegate.can_set_cart_price = true; // appDelegate.can_see_price = true; // appDelegate.can_set_cart_price = true; // appDelegate.can_show_price = true; // appDelegate.can_cancel_order = true; // appDelegate.can_create_order=true; // appDelegate.can_delete_order = true; // appDelegate.can_submit_order = true; // appDelegate.bLogin = true; // RASingleton.sharedInstance.permissions_edit_order = true; RASingleton.sharedInstance.price_type = 1; // [OLDataProvider createScanTempFolder]; NSDictionary *addressDic = [[NSUserDefaults standardUserDefaults] valueForKey:@"ScanAddress"] ; if (addressDic) { // NSUInteger selectedIndex = [[addressDic objectForKey:@"selectedIndex"] integerValue]; // if (selectedIndex == 1) { // self.address = [addressDic objectForKey:@"serverAddress"]; // } // if (selectedIndex == 2) { // self.address = [addressDic objectForKey:@"serverAddress"]; // } appDelegate.address = [addressDic objectForKey:@"serverAddress"]; // [OLDataProvider guestLogin]; NSMutableDictionary* guestjson=[OLDataProvider loadScanTemplate:@"guest.json"]; if(!guestjson) { dispatch_async(dispatch_get_main_queue(), ^{ [RADataProvider updateTemplate:self]; }); } else dispatch_async(dispatch_get_main_queue(), ^{ [self onUserButtonClick:nil]; }); } else { // return; SetupServerViewController * servervc =[[UIStoryboard storyboardWithName:@"SO" bundle:nil] instantiateViewControllerWithIdentifier:@"SetupServerViewController"]; servervc.returnValue = ^{ NSDictionary *addressDic = [[NSUserDefaults standardUserDefaults] valueForKey:@"ScanAddress"]; if (addressDic) { self.labelServer.text = [addressDic objectForKey:@"show_name"]; } dispatch_async(dispatch_get_main_queue(), ^{ [RADataProvider updateTemplate:self]; }); }; [self.navigationController pushViewController:servervc animated:true]; } [RADataProvider default_price_group]; } #endif #pragma mark - Table view delegate - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSString* title = [self.sideMenuItems[indexPath.row] valueForKey:@"title"]; if([title isEqualToString:@"Cache"]) { CacheViewController * settingvc=[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"CacheViewController"]; PopupNavigationController * navi=[[PopupNavigationController alloc] initWithRootViewController:settingvc]; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ //DebugLog(@"login........."); // <#code#> }]; } #ifdef SCANNER_ORDER #endif else if([title isEqualToString:@"Scanner Setting"]) { // #ifndef RA_NOTIFICATION UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; UIViewController* active_vc = appDelegate.active_controller; ScannerSettingViewController * gunVC =[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"ScannerSettingViewController"]; appDelegate.active_controller = gunVC; gunVC.onDismissVC = ^(){ appDelegate.active_controller = active_vc; }; #else ScannerSettingViewController * gunVC =[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"ScannerSettingViewController"]; #endif UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:gunVC] ; // [self hackModalSheetSize:CGSizeMake(450, 200) ofVC:navi]; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ // navi.view.superview.bounds = CGRectMake(0, 0, 480, 320); DebugLog(@"about present........."); // self.btop = false; // <#code#> }]; } else if([title isEqualToString:@"Offline Setting"]) { // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; //UIViewController* active_vc = appDelegate.active_controller; OfflineSettingViewController * offlineVC =[ [UIStoryboard storyboardWithName:@"OLM" bundle:nil] instantiateViewControllerWithIdentifier:@"OfflineSettingViewController"]; // loginvc.delegate = self; // loginvc.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 // appDelegate.active_controller = gunVC; // gunVC.onDismissVC = ^(){ // appDelegate.active_controller = active_vc; // }; UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:offlineVC] ; navi.modalInPresentation=true; // [self hackModalSheetSize:CGSizeMake(450, 200) ofVC:navi]; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ // navi.view.superview.bounds = CGRectMake(0, 0, 480, 320); DebugLog(@"about present........."); // self.btop = false; // <#code#> }]; // [iSalesDB testdata]; } else if([title isEqualToString:@"Function Test"]) { // NSString* url = @"https://shopla.homelegance.com/"; // // // NSString* title = @"NPD"; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // // FunctionTestViewController *ViewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"FunctionTestViewController"]; // ViewController.url = url; // ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if ([title isEqualToString:@"BLOG"]) { NSString* url = URL_BLOG; #ifdef BUILD_HOMER NSString* title = @"HOMER BLOG"; #endif #ifdef BUILD_GATIT NSString* title = @"TITAN BLOG"; #endif #ifdef BUILD_NPD NSString* title = @"NPD BLOG"; #endif #ifdef BUILD_USAI NSString* title = @"USAI BLOG"; #endif #ifdef BUILD_CONTRAST NSString* title = @"CONTRAST BLOG"; #endif title = [NSString stringWithFormat:@"%@ BLOG",COMPANY_SHORT_NAME]; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"NPD Website"]) { NSString* url = @"https://www.newpacificdirect.com";//@"https://shopla.homelegance.com/general.htm?websiteId=1";// NSString* title = @"NPD"; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // // WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"USAI Website"]) { NSString* url = @"http://www.united-us.net/";//@"https://shopla.homelegance.com/general.htm?websiteId=1";// NSString* title = @"USAI"; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // // WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"Homelegance Website"]) { NSString* url = @"http://207.140.24.83";//@"https://shopla.homelegance.com/general.htm?websiteId=1";// NSString* title = @"Homelegance"; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // // WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"HOMER Website"]) { NSString* url = COMPANY_WEB; NSString* title = @"HOMER"; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"TITAN Website"]) { NSString* url = COMPANY_WEB; NSString* title = @"TITAN"; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"NPD Policy"]) { NSString* url = URL_NPD_POLICY;//@"https://shopla.homelegance.com/general.htm?websiteId=1";// NSString* title = @"NPD Policy"; // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // // WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"USAI Policy"]) { NSString* url = URL_NPD_POLICY; NSString* title = @"USAI Policy"; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"HOMER Policy"]) { NSString* url = URL_NPD_POLICY; NSString* title = @"HOMER Policy"; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"Simplified Buying Program"]) { SimplifiedBuyingProgramViewController *ViewController = [[UIStoryboard storyboardWithName:@"NPD_Mobile" bundle:nil] instantiateViewControllerWithIdentifier:@"SimplifiedBuyingProgramViewController"]; UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:ViewController] ; // [self hackModalSheetSize:CGSizeMake(450, 200) ofVC:navi]; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ // navi.view.superview.bounds = CGRectMake(0, 0, 480, 320); DebugLog(@"about present........."); // self.btop = false; // <#code#> }]; } else if ([title isEqualToString:@"Privacy Policy"]) { NSString* url = URL_PRIVACY; NSString* title = @"Privacy Policy"; WebViewController *ViewController = [[UIStoryboard storyboardWithName:@"wkweb" bundle:nil] instantiateViewControllerWithIdentifier:@"WebViewController"]; ViewController.url = url; ViewController.title = title; [self.navigationController pushViewController:ViewController animated:YES]; } else if([title isEqualToString:@"About us"]) { AboutViewController * aboutVC =[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"AboutViewController"]; // loginvc.delegate = self; // loginvc.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:aboutVC] ; // [self hackModalSheetSize:CGSizeMake(450, 200) ofVC:navi]; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ // navi.view.superview.bounds = CGRectMake(0, 0, 480, 320); DebugLog(@"about present........."); // self.btop = false; // <#code#> }]; } // else if([title isEqualToString:@"Wish List"]) // { // [self hideMenu]; // [self switchtowishlist]; // } else if([title isEqualToString:@"Show Price"]) { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; if (appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeStore && [RASingleton sharedInstance].global_lock) { JKLockController *lockVC = [[JKLockController alloc] init]; [lockVC setPasswordKey:[NSString stringWithFormat:@"%@_password",RASingleton.sharedInstance.user]]; __weak typeof(self) weakself = self; lockVC.authoReturn = ^(BOOL failure) { if (weakself) { __strong typeof(weakself) strongself = weakself; [appDelegate set_priceHidden:false]; [strongself initMenuItems]; [strongself hideMenu]; } }; [self.navigationController pushViewController:lockVC animated:YES]; } else { [appDelegate set_priceHidden:false]; [self initMenuItems]; [self hideMenu]; } } else if([title isEqualToString:@"Hide Price"]) { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; if (appDelegate.user_type == USER_ROLE_CUSTOMER && appDelegate.customer_type == CustomerTypeStore && [RASingleton sharedInstance].global_lock) { JKLockController *lockVC = [[JKLockController alloc] init]; [lockVC setPasswordKey:[NSString stringWithFormat:@"%@_password",RASingleton.sharedInstance.user]]; __weak typeof(self) weakself = self; lockVC.authoReturn = ^(BOOL failure) { if (weakself) { __strong typeof(weakself) strongself = weakself; [appDelegate set_priceHidden:true]; [strongself initMenuItems]; [strongself hideMenu]; } }; [self.navigationController pushViewController:lockVC animated:YES]; } else { [appDelegate set_priceHidden:true]; [self initMenuItems]; [self hideMenu]; } } // else if([title isEqualToString:@"Portfolio"] || [title isEqualToString:@"Hang Tag"]) // { // [self hideMenu]; // if([self.current_VC isKindOfClass:[PortfolioViewController class]]) // return; // [self flipFromViewController:self.current_VC toViewController:self.portfolioViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; // } // else if([title isEqualToString:@"View Portfolios"] || [title isEqualToString:@"View Hang Tags"]) // { // [self hideMenu]; // if([self.current_VC isKindOfClass:[PortfolioListViewController class]]) // return; // [self flipFromViewController:self.current_VC toViewController:self.pdfListViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; // } else if([title isEqualToString:@"Contact"]) { // UITableViewCell* cell =(UITableViewCell*) sender.superview.superview; // // NSIndexPath * indexPath = [self.detailTable indexPathForCell:cell]; // // if(indexPath.section!=1) // return ; // // DebugLog(@"shouldchangeedit %d_%d",indexPath.section,indexPath.row); // NSDictionary * item_json = [self.content_data objectForKey:[NSString stringWithFormat:@"item_%ld",(long)indexPath.row]]; // // NSString* product_id = [item_json valueForKey:@"product_id"]; [self hideMenu]; [self switchtocontact]; } else if([title isEqualToString:@"Cam Scan"]) { // UITableViewCell* cell =(UITableViewCell*) sender.superview.superview; // // NSIndexPath * indexPath = [self.detailTable indexPathForCell:cell]; // // if(indexPath.section!=1) // return ; // // DebugLog(@"shouldchangeedit %d_%d",indexPath.section,indexPath.row); // NSDictionary * item_json = [self.content_data objectForKey:[NSString stringWithFormat:@"item_%ld",(long)indexPath.row]]; // // NSString* product_id = [item_json valueForKey:@"product_id"]; [self hideMenu]; // // [self switchtocontact]; ScannerViewController * scannerVC =[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"ScannerViewController"]; [self.navigationController pushViewController:scannerVC animated:true]; } else if ([title isEqualToString:@"Price Setting"]) { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; if ([RASingleton sharedInstance].global_lock) { JKLockController *lockVC = [[JKLockController alloc] init]; [lockVC setPasswordKey:[NSString stringWithFormat:@"%@_password",RASingleton.sharedInstance.user]]; __weak typeof(self) weakself = self; lockVC.authoReturn = ^(BOOL failure) { if (weakself) { __strong typeof(weakself) strongself = weakself; PriceSettingViewController *priceSettingVC =[ [UIStoryboard storyboardWithName:@"CUL" bundle:nil] instantiateViewControllerWithIdentifier:@"PriceSettingViewController"]; UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:priceSettingVC] ; navi.navigationBar.translucent = NO; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [strongself presentViewController:navi animated:YES completion:^{ }]; } }; [self.navigationController pushViewController:lockVC animated:YES]; } else { PriceSettingViewController *priceSettingVC =[ [UIStoryboard storyboardWithName:@"CUL" bundle:nil] instantiateViewControllerWithIdentifier:@"PriceSettingViewController"]; UINavigationController* navi = [[UINavigationController alloc] initWithRootViewController:priceSettingVC] ; navi.navigationBar.translucent = NO; navi.modalPresentationStyle = UIModalPresentationFormSheet;//有三种状态,自己看看是哪种 [self presentViewController:navi animated:YES completion:^{ }]; } } else if ([title isEqualToString:@"Lock"] || [title isEqualToString:@"Unlock"]) { UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; JKLockController *lockVC = [[JKLockController alloc] init]; [lockVC setPasswordKey:[NSString stringWithFormat:@"%@_password",RASingleton.sharedInstance.user]]; __weak typeof(self) weakself = self; lockVC.authoReturn = ^(BOOL failure) { if (weakself) { __strong typeof(weakself) strongself = weakself; [RASingleton sharedInstance].global_lock = ![RASingleton sharedInstance].global_lock; [strongself initMenuItems]; [strongself hideMenu]; } }; [self.navigationController pushViewController:lockVC animated:YES]; } } //#pragma mark - UIAlertViewDelegate //// Called when a button is clicked. The view will be automatically dismissed after this call returns //- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex //{ // UIApplication * app = [UIApplication sharedApplication]; // AppDelegate *appDelegate = (AppDelegate *)[app delegate]; // // // // // MainViewController* main_vc=(MainViewController*)appDelegate.main_vc; // if(buttonIndex==alertView.cancelButtonIndex) // { // // // // } // else if(buttonIndex==1) // { // //open exist // // OrderListViewController* ovc =[ [UIStoryboard storyboardWithName:@"ERP_Mobile_Order" bundle:nil] instantiateViewControllerWithIdentifier:@"OrderListViewController"]; // ovc.showNavibar = true; // ovc.selectOrder = ^(NSMutableDictionary* order_detail){ // if(appDelegate.order_code==nil) // { // [self neworderforCart]; // } // else // { // self.previous_VC = self.current_VC; // [self flipFromViewController:self.current_VC toViewController:self.cartViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; // // [self checklogin:true]; // // } // // }; // ovc.init_style = OL_OPEN; // ovc.onCancel = ^(){ // // [self checklogin:true]; // // }; // ovc.title = @"SAVED ORDER"; // [self.navigationController pushViewController:ovc animated:true]; // } // else // { // //create new; // // if(appDelegate.customerInfo==nil)// select contact if current contact not exist // { // // ContactListViewController* cvc = [[UIStoryboard storyboardWithName:@"ERP_Mobile_Contact" bundle:nil] instantiateViewControllerWithIdentifier:@"ContactListViewController" ]; // cvc.showNavibar = true; // cvc.contact_type = @"Sales_Order_Customer"; // cvc.returnValue = ^(NSMutableDictionary* value,NSIndexPath* source){ // // appDelegate.contact_id=[value valueForKey:@"customer_cid"]; // appDelegate.customerInfo = value; // // // if(appDelegate.order_code==nil) // [self neworderforCart]; // // // }; // // cvc.onCancel = ^(){ // // [RAUtils message_box:@"" message:@"Cannot create order without customer infomation." completion:nil]; // // // // }; // cvc.onReset = ^(){ // [self checklogin:true]; // }; // // [self.navigationController pushViewController:cvc animated:true]; // } // else // { // [self neworderforCart]; // } // // } //} -(void) neworderforCart { // __block UIAlertController * waitalert = [RAUtils waiting_alert:self title:@"Create Order" completion:^{ PopWaitAlert* pop = [RAUtils waiting_pop:@"Create Order" completion:nil]; [RANetwork request_create_order:^(NSMutableDictionary *result) { NSMutableDictionary* return_json = result; // [waitalert dismissViewControllerAnimated:YES completion:^{ [pop hide]; if([[return_json valueForKey:@"result"] intValue]==2) { int result=[[return_json valueForKey:@"result"] intValue]; if(result==2) { //successed. NSString* order_code = [return_json valueForKey:@"orderCode"]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; appDelegate.order_code = order_code; appDelegate.order_status = [[return_json valueForKey:@"orderStatus"] intValue]; self.previous_VC = self.current_VC; [self flipFromViewController:self.current_VC toViewController:self.cartViewController withDirection:UIViewAnimationOptionTransitionCrossDissolve]; #ifdef RA_NOTIFICATION [ActiveViewController Notify:@"CartViewController,OrderListViewController" Message:RA_NOTIFICATION_RELOAD_DATA]; #else [self reloadCart:true immediately:false]; [self reloadOrder:true immediately:false]; #endif } } else { [RAUtils message_box:@"Add To Cart" message:[return_json valueForKey:@"err_msg"] completion:nil] ; } // }]; }]; // }]; } - (void)showPriceAuth:(NSInteger)from { } @end