Преглед изворни кода

修改Model Detail数量检查。
测试发现Model Detail文本框显示购买数量和Stepper的数量不一致,已修改。
修改Customer新建订单时,当前订单为Shop Order。

Pen Li пре 9 година
родитељ
комит
a146b9d2e4

BIN
RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/xcuserdata/macmini1.xcuserdatad/UserInterfaceState.xcuserstate


+ 0 - 18
RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/xcuserdata/macmini1.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -2,22 +2,4 @@
 <Bucket
    type = "0"
    version = "2.0">
-   <Breakpoints>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "common/CommonEditor/CommonEditorCellImg.m"
-            timestampString = "510212834.660539"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "73"
-            endingLineNumber = "73"
-            landmarkName = "-TouchImageViewOnTouche:"
-            landmarkType = "7">
-         </BreakpointContent>
-      </BreakpointProxy>
-   </Breakpoints>
 </Bucket>

+ 1 - 1
RedAnt ERP Mobile/common/Functions/modelDetail/DetailHeaderCell.h

@@ -25,7 +25,7 @@
 @end
 
 
-@interface DetailHeaderCell : UITableViewCell<PhotoStackViewDataSource, PhotoStackViewDelegate,UIAlertViewDelegate>
+@interface DetailHeaderCell : UITableViewCell<PhotoStackViewDataSource, PhotoStackViewDelegate,UIAlertViewDelegate,UITextFieldDelegate>
 {
 @private
     //    id <MDSpreadViewDataSource>__unsafe_unretained _dataSource;

+ 119 - 5
RedAnt ERP Mobile/common/Functions/modelDetail/DetailHeaderCell.m

@@ -39,7 +39,7 @@
 //    self.selector_imageView.layer.borderColor = [UIColorFromRGB(0x996633) CGColor];
 //    self.selector_imageView.layer.borderWidth = 1;
     
-    
+    self.quantity_text.delegate = self;
     
     self.selector_Button.layer.borderWidth = 0.5;
     self.selector_Button.layer.borderColor = [[UIColor lightGrayColor] CGColor];
@@ -662,6 +662,8 @@
                                 if ([msg hasPrefix:@"Out of Stock.\n"]) {
                                     title = @"Add To Cart: Out of Stock";
                                     msg = [msg substringFromIndex:[@"Out of Stock.\n" length]];
+                                    self.btnNotifyMe.enabled = YES;
+                                    self.btnaddCart.enabled = NO;
                                 }
                                 
                                 [RAUtils message_alert:msg title:title controller:vc] ;
@@ -736,6 +738,8 @@
                                         if ([msg hasPrefix:@"Out of Stock.\n"]) {
                                             title = @"Add To Cart: Out of Stock";
                                             msg = [msg substringFromIndex:[@"Out of Stock.\n" length]];
+                                            self.btnNotifyMe.enabled = YES;
+                                            self.btnaddCart.enabled = NO;
                                         }
                                         
                                         [RAUtils message_alert:msg title:title controller:vc] ;
@@ -884,6 +888,8 @@
                             if ([msg hasPrefix:@"Out of Stock.\n"]) {
                                 title = @"Add To Cart: Out of Stock";
                                 msg = [msg substringFromIndex:[@"Out of Stock.\n" length]];
+                                self.btnNotifyMe.enabled = YES;
+                                self.btnaddCart.enabled = NO;
                             }
                             
                             [RAUtils message_alert:msg title:title controller:vc] ;
@@ -963,6 +969,8 @@
                         if ([msg hasPrefix:@"Out of Stock.\n"]) {
                             title = @"Add To Cart: Out of Stock";
                             msg = [msg substringFromIndex:[@"Out of Stock.\n" length]];
+                            self.btnNotifyMe.enabled = YES;
+                            self.btnaddCart.enabled = NO;
                         }
                         
                         [RAUtils message_alert:msg title:title controller:vc] ;
@@ -1155,6 +1163,8 @@
                 if ([msg hasPrefix:@"Out of Stock.\n"]) {
                     title = @"Add To Cart: Out of Stock";
                     msg = [msg substringFromIndex:[@"Out of Stock.\n" length]];
+                    self.btnNotifyMe.enabled = YES;
+                    self.btnaddCart.enabled = NO;
                 }
                 
                 [RAUtils message_alert:msg title:title controller:vc] ;
@@ -1303,6 +1313,18 @@
     
     [celldelegate stepClicked:(int)sender.value];
     //    -(void) stepClicked:(int) value;
+    
+    // 检查缺货
+//    NSString *cartQtyString = nil;
+//    if (self.cqyt_label.text) {
+//        cartQtyString = [self.cqyt_label.text substringFromIndex:[@"Model QTY in Cart:" length]];
+//    }
+//
+//    int availability = [self.count_Label.text intValue];
+//    int buyQTY = [self.quantity_text.text intValue];
+//    int cartQTY = [cartQtyString intValue];
+//
+//    [self checkAvailability:availability buyQTY:buyQTY cartQTY:cartQTY];
 }
 
 
@@ -1339,9 +1361,9 @@
 -(void)setup {
     
     
-    
+//    int availability = [self.count_Label.text intValue];
     self.stepper.minimumValue= self.step;
-    
+    self.stepper.maximumValue = INTMAX_MAX;
     
     
     self.stepper.stepValue= self.step;
@@ -1355,8 +1377,7 @@
     if(true)//(self.photos==nil)
     {
         
-        self.photos = [NSArray arrayWithObjects:
-                       nil];
+        self.photos = [NSArray array];
     }
     if(true)//(self.photoStack==nil)
     {
@@ -1382,5 +1403,98 @@
     
 }
 
+#pragma mark - TextField Delegate
+
+- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
+    
+   
+    
+    NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
+//    NSString *cartQtyString = nil;
+//    if (self.cqyt_label.text) {
+//        cartQtyString = [self.cqyt_label.text substringFromIndex:[@"Model QTY in Cart:" length]];
+//    }
+    
+//    int availability = [self.count_Label.text intValue];
+    int buyQTY = [newString intValue];
+//    int cartQTY = [cartQtyString intValue];
+    
+//    [self checkAvailability:availability buyQTY:buyQTY cartQTY:cartQTY];
+    
+    self.stepper.value = buyQTY;
+    
+    return YES;
+}
+
+#pragma mark - Private
+/**检查是否缺货*/
+- (void)checkAvailability:(int)availability buyQTY:(int)buyQty cartQTY:(int)cartQty { // availability不可以通过textField.text取得
+    
+#ifdef BUILD_NPD
+    AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
+    
+    if (!appDelegate.bLogin || appDelegate.offline_mode || buyQty < 1) {
+        return;
+    }
+    
+    
+    if (appDelegate.user_type == USER_ROLE_CUSTOMER) { // customer
+        
+        if (!appDelegate.order_code) { // 未打开订单状态
+            
+            if ((buyQty + cartQty) > availability) {
+                
+                self.btnaddCart.enabled = NO;
+                self.btnNotifyMe.enabled = YES;
+            } else {
+                
+                self.btnaddCart.enabled = YES;
+                self.btnNotifyMe.enabled = NO;
+            }
+            
+        } else {
+            // 打开订单状态
+            if (![Singleton sharedInstance].currentOrderIsMerged) {
+                // Shop Order
+                self.btnaddCart.enabled = YES;
+                // 默认未缺货
+                self.btnNotifyMe.enabled = NO;
+                
+                if ((buyQty + cartQty) > availability) { // 缺货
+                    
+                    self.btnNotifyMe.enabled = YES;
+                }
+                
+                
+            } else {
+                // Purchase Order
+                if ((buyQty + cartQty) > availability) { // 缺货
+                    self.btnaddCart.enabled = NO;
+                    self.btnNotifyMe.enabled = YES;
+                } else { // 未缺货
+                    self.btnNotifyMe.enabled = NO;
+                    self.btnaddCart.enabled = YES;
+                }
+                
+            }
+            
+            
+        }
+        
+    } else { // empoyee
+        
+        if ((buyQty + cartQty) > availability) { // 缺货
+            self.btnaddCart.enabled = NO;
+            self.btnNotifyMe.enabled = YES;
+        } else { // 未缺货
+            self.btnNotifyMe.enabled = NO;
+            self.btnaddCart.enabled = YES;
+        }
+        
+    }
+#endif
+    
+}
+
 
 @end

+ 0 - 4
RedAnt ERP Mobile/common/Functions/modelDetail/DetailViewController.m

@@ -963,10 +963,6 @@ self.isrefreshing=false;
         } else {
 #ifdef BUILD_NPD
             NSString *qtyStr = [section_json valueForKey:@"Availability"];
-//            cell.btnNotifyMe.layer.borderColor = [UIColor blackColor].CGColor;
-//            cell.btnNotifyMe.layer.borderWidth = 1.0f;
-//            cell.btnNotifyMe.layer.cornerRadius = 3.0f;
-//            cell.btnNotifyMe.layer.masksToBounds = YES;
             
             __weak typeof(self) weakself = self;
             cell.notifyMeBlock = ^{

+ 5 - 0
RedAnt ERP Mobile/common/data_provider/iSalesNetwork.m

@@ -1991,6 +1991,11 @@ repeat:
     }
     
     [appDelegate SetSo:[jsobj valueForKey:@"soId"]];
+    
+    if (appDelegate.user_type == USER_ROLE_CUSTOMER) {
+        [Singleton sharedInstance].currentOrderIsMerged = NO;
+    }
+    
     return jsobj;
 }
 +(NSDictionary*) add_toPortfolio:(NSString* ) item_id