소스 검색

feat:积分应用/取消逻辑处理

“wangdongchao” 1 년 전
부모
커밋
d7b4bbf6d4

+ 33 - 4
Asteria/Fuction/Cart/Cart_CheckoutC.m

@@ -83,10 +83,16 @@
             }else if(num == 1){//删除优惠券
             }else if(num == 1){//删除优惠券
                 [self reqNet_DEL_cartsMineCoupons];
                 [self reqNet_DEL_cartsMineCoupons];
             }
             }
+        } else if ([data isKindOfClass:[ASCheckoutPointData class]]) {
+            ASCheckoutPointData *pointData = (ASCheckoutPointData *)data;
+            if(num ==0){ //使用积分
+                [self requestUseLimitPoint:pointData.usePoint];
+            }else if(num == 1){//取消使用积分
+                [self requestCancelUsePoint];
+            }
         }
         }
     };
     };
     
     
-//    [self updateData];
 }
 }
 
 
 - (void)ry_respnsData:(id)data
 - (void)ry_respnsData:(id)data
@@ -163,7 +169,9 @@
         
         
     } else if ([mark isEqualToString:Cart_cartsMineItems_Post]
     } else if ([mark isEqualToString:Cart_cartsMineItems_Post]
               || [mark isEqualToString:DEL_cartsMineItems]
               || [mark isEqualToString:DEL_cartsMineItems]
-              || [mark isEqualToString:PUT_cartsMineCoupons]){
+              || [mark isEqualToString:PUT_cartsMineCoupons]
+              || [mark isEqualToString:Chectout_PUT_usePoints]
+              || [mark isEqualToString:Chectout_DEL_cancelusePoints]){
         if(sucessOrFail){
         if(sucessOrFail){
             [self reqNet_Cart_cartsMineTotals];
             [self reqNet_Cart_cartsMineTotals];
         }else{
         }else{
@@ -188,9 +196,20 @@
     self.couponCellM.discount_amount = self.totalsM.discount_amount;
     self.couponCellM.discount_amount = self.totalsM.discount_amount;
     self.couponCellM.currency_symbol = self.totalsM.currency_symbol;
     self.couponCellM.currency_symbol = self.totalsM.currency_symbol;
     [self.TableV.infodata addObject:self.couponCellM];
     [self.TableV.infodata addObject:self.couponCellM];
+     
+    
+    NSDictionary *pointScaleDic = [Current_normalTool dicFromjsonStr:[self.totalsM.extension_attributes objectForKey:@"mw_earn_points_data"]];
+    
+    if (pointScaleDic.count > 0) {
+        self.pointCellM.pointScale = [[pointScaleDic allValues] objectAtIndex:0];
+        self.pointCellM.priceScale = [[pointScaleDic allKeys] objectAtIndex:0];
+    }
     
     
-    self.pointCellM.pointCountInput = @"20";
-    self.pointCellM.pointBalance = @"10";
+//    self.pointCellM.pointCountInput = @"20";
+    self.pointCellM.usePoint = [NSString stringWithFormat:@"%@", [self.totalsM.extension_attributes objectForKey:@"mw_rwrdpoints_amnt"]];
+    self.pointCellM.usePrice = [NSString stringWithFormat:@"%@", [self.totalsM.extension_attributes objectForKey:@"mw_rwrdpoints_cur_amnt"]];
+    self.pointCellM.pointBalance = [ASUserInfoManager shared].userPoints;
+    self.pointCellM.priceSymbol = self.totalsM.currency_symbol;
     [self.TableV.infodata addObject:self.pointCellM];
     [self.TableV.infodata addObject:self.pointCellM];
     
     
     //邮寄地址--邮寄方式
     //邮寄地址--邮寄方式
@@ -306,6 +325,16 @@
     [MBProgressHUD showHUDAddedTo:self.view animated:YES];
     [MBProgressHUD showHUDAddedTo:self.view animated:YES];
     [self.VM ry_requestDeleteApi:DEL_cartsMineCoupons paramStr:@""];
     [self.VM ry_requestDeleteApi:DEL_cartsMineCoupons paramStr:@""];
 }
 }
+//使用指定积分
+- (void)requestUseLimitPoint:(NSString *)point {
+    [MBProgressHUD showHUDAddedTo:self.view animated:YES];
+    [self.VM ry_requestPutApi:Chectout_PUT_usePoints param:point];
+}
+//取消使用积分
+- (void)requestCancelUsePoint {
+    [MBProgressHUD showHUDAddedTo:self.view animated:YES];
+    [self.VM ry_requestDeleteApi:Chectout_DEL_cancelusePoints paramStr:@""];
+}
 
 
 #pragma mark --- 懒加载 ---
 #pragma mark --- 懒加载 ---
 - (void)ucm_bindvmmodel{
 - (void)ucm_bindvmmodel{

+ 10 - 0
Asteria/Fuction/Cart/Checkout/ASCheckoutPointApplyCell.h

@@ -14,6 +14,16 @@ NS_ASSUME_NONNULL_BEGIN
 @property (nonatomic, copy) NSString *pointCountInput;
 @property (nonatomic, copy) NSString *pointCountInput;
 @property (nonatomic, copy) NSString *pointBalance;
 @property (nonatomic, copy) NSString *pointBalance;
 
 
+//积分兑换比例
+@property (nonatomic, copy) NSString *pointScale;
+@property (nonatomic, copy) NSString *priceScale;
+@property (nonatomic, copy) NSString *priceSymbol;
+//已使用积分数量及对应金额
+@property (nonatomic, copy) NSString *usePoint;
+@property (nonatomic, copy) NSString *usePrice;
+
+//@property (nonatomic, copy) NSString *usePoint;
+
 @end
 @end
 
 
 @interface ASCheckoutPointApplyCell : TT_BaseCell
 @interface ASCheckoutPointApplyCell : TT_BaseCell

+ 20 - 20
Asteria/Fuction/Cart/Checkout/ASCheckoutPointApplyCell.m

@@ -90,33 +90,33 @@
         [[Current_normalTool topViewController].view makeToast:@"Please fill in the points count" duration:2 position:CSToastPositionCenter];
         [[Current_normalTool topViewController].view makeToast:@"Please fill in the points count" duration:2 position:CSToastPositionCenter];
         return;
         return;
     }
     }
-//    if(btn.selected == NO){
-//        self.pointCellData.coupon_code  = self.codeTF.text;
-//        if(self.currencyparameterClose){
-//            self.currencyparameterClose(0,self.cellData);
-//        }
-//    }else{
-//        self.cellData.coupon_code  = @"";
-//        if(self.currencyparameterClose){
-//            self.currencyparameterClose(1, self.cellData);
-//        }
-//    }
+    if(btn.selected == NO){
+        self.pointCellData.usePoint  = self.codeTF.text;
+        if(self.currencyparameterClose){
+            self.currencyparameterClose(0,self.pointCellData);
+        }
+    }else{
+        self.pointCellData.usePoint  = @"";
+        if(self.currencyparameterClose){
+            self.currencyparameterClose(1, self.pointCellData);
+        }
+    }
 }
 }
 
 
 - (void)configData:(id)Data{
 - (void)configData:(id)Data{
     ASCheckoutPointData *model = (ASCheckoutPointData *)Data;
     ASCheckoutPointData *model = (ASCheckoutPointData *)Data;
     self.pointCellData = model;
     self.pointCellData = model;
     
     
-//    if(![model.pointCountInput isEmpty] && model.pointCountInput.length>0){
-//        self.codeTF.text = MM_str(model.pointCountInput);
-//        self.applyBtn.selected = YES;
-//    }else{
-//        self.codeTF.text = @"";
-//        self.applyBtn.selected = NO;
-//    }
+    if([model.usePoint integerValue] > 0){
+        self.codeTF.text = MM_str(model.usePoint);
+        self.applyBtn.selected = YES;
+    }else{
+        self.codeTF.text = @"";
+        self.applyBtn.selected = NO;
+    }
     
     
-    NSString *pointStr = @"You have 10 Reward Points ($1.00) available. ";
-    NSString *pointLastStr = @"10 point = $1. Input points value below to redeem.";
+    NSString *pointStr = [NSString stringWithFormat:@"You have %@ Reward Points available", model.pointBalance];
+    NSString *pointLastStr = [NSString stringWithFormat:@"%@ point = %@%@. Input points value below to redeem.", model.pointScale, model.priceSymbol, model.priceScale];
     
     
     NSMutableAttributedString *couponStr = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@%@", pointStr, pointLastStr]];
     NSMutableAttributedString *couponStr = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@%@", pointStr, pointLastStr]];
 //    couponStr.color = [UIColor colorWithHexString:@"#B2B2B2"];
 //    couponStr.color = [UIColor colorWithHexString:@"#B2B2B2"];

+ 4 - 1
Asteria/Fuction/Cart/VM/CartVM.h

@@ -30,7 +30,10 @@
 #define Chectout_addShipAddress_id   BaseRequestrUrl(@"carts/mine/estimate-shipping-methods-by-address-id")
 #define Chectout_addShipAddress_id   BaseRequestrUrl(@"carts/mine/estimate-shipping-methods-by-address-id")
 //根据邮寄地址获取邮寄方式
 //根据邮寄地址获取邮寄方式
 #define Chectout_getShipMethod       BaseRequestrUrl(@"carts/mine/shipping-methods")
 #define Chectout_getShipMethod       BaseRequestrUrl(@"carts/mine/shipping-methods")
-
+//使用指定积分
+#define Chectout_PUT_usePoints       BaseRequestrUrl(@"mw-rewardpoints/mine/points")
+////取消使用积分
+#define Chectout_DEL_cancelusePoints BaseRequestrUrl(@"mw-rewardpoints/mine/points")
 
 
 NS_ASSUME_NONNULL_BEGIN
 NS_ASSUME_NONNULL_BEGIN