diff --git a/iCemarose.xcodeproj/project.pbxproj b/iCemarose.xcodeproj/project.pbxproj
index 1d6cb45..765ef29 100644
--- a/iCemarose.xcodeproj/project.pbxproj
+++ b/iCemarose.xcodeproj/project.pbxproj
@@ -99,6 +99,8 @@
 		C02986881F0F249D002EB25F /* KWMWishListVC.m in Sources */ = {isa = PBXBuildFile; fileRef = C02986871F0F249D002EB25F /* KWMWishListVC.m */; };
 		C029868F1F0F2663002EB25F /* KWMWishCell.m in Sources */ = {isa = PBXBuildFile; fileRef = C029868D1F0F2663002EB25F /* KWMWishCell.m */; };
 		C02986901F0F2663002EB25F /* KWMWishCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = C029868E1F0F2663002EB25F /* KWMWishCell.xib */; };
+		C02C5A931FD54C7D00E32290 /* KWMRecommendView.m in Sources */ = {isa = PBXBuildFile; fileRef = C02C5A901FD54C7C00E32290 /* KWMRecommendView.m */; };
+		C02C5A941FD54C7D00E32290 /* KWMRecommendView.xib in Resources */ = {isa = PBXBuildFile; fileRef = C02C5A911FD54C7C00E32290 /* KWMRecommendView.xib */; };
 		C02C7D801E640D82008DC29C /* libWeChatSDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C02C7D7B1E640D82008DC29C /* libWeChatSDK.a */; };
 		C02C7D811E640D82008DC29C /* README.txt in Resources */ = {isa = PBXBuildFile; fileRef = C02C7D7C1E640D82008DC29C /* README.txt */; };
 		C02C7D831E640FBF008DC29C /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C02C7D821E640FBF008DC29C /* SystemConfiguration.framework */; };
@@ -221,10 +223,8 @@
 		C04834371F1325CB00A5BFB4 /* KWMHotSalesHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = C04834361F1325CB00A5BFB4 /* KWMHotSalesHeader.m */; };
 		C048343B1F13274300A5BFB4 /* KWMNewHomeVC.m in Sources */ = {isa = PBXBuildFile; fileRef = C04834391F13274300A5BFB4 /* KWMNewHomeVC.m */; };
 		C048343E1F13288F00A5BFB4 /* KWMMenuHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = C048343D1F13288F00A5BFB4 /* KWMMenuHeader.xib */; };
-		C04834411F13350F00A5BFB4 /* KWMRecommendHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = C04834401F13350F00A5BFB4 /* KWMRecommendHeader.m */; };
 		C04834451F1337A800A5BFB4 /* KWMNewHomeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = C04834431F1337A800A5BFB4 /* KWMNewHomeCell.m */; };
 		C04834461F1337A800A5BFB4 /* KWMNewHomeCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = C04834441F1337A800A5BFB4 /* KWMNewHomeCell.xib */; };
-		C04834481F1338F200A5BFB4 /* KWMRecommendHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = C04834471F1338F200A5BFB4 /* KWMRecommendHeader.xib */; };
 		C048344A1F13391A00A5BFB4 /* KWMClothingSetsHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = C04834491F13391A00A5BFB4 /* KWMClothingSetsHeader.xib */; };
 		C048344C1F13393D00A5BFB4 /* KWMHotSalesHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = C048344B1F13393D00A5BFB4 /* KWMHotSalesHeader.xib */; };
 		C04834531F13590500A5BFB4 /* KWMProductBannerItemView.m in Sources */ = {isa = PBXBuildFile; fileRef = C048344E1F13590500A5BFB4 /* KWMProductBannerItemView.m */; };
@@ -544,6 +544,9 @@
 		C029868C1F0F2663002EB25F /* KWMWishCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMWishCell.h; sourceTree = "<group>"; };
 		C029868D1F0F2663002EB25F /* KWMWishCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KWMWishCell.m; sourceTree = "<group>"; };
 		C029868E1F0F2663002EB25F /* KWMWishCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMWishCell.xib; sourceTree = "<group>"; };
+		C02C5A901FD54C7C00E32290 /* KWMRecommendView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KWMRecommendView.m; sourceTree = "<group>"; };
+		C02C5A911FD54C7C00E32290 /* KWMRecommendView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMRecommendView.xib; sourceTree = "<group>"; };
+		C02C5A921FD54C7D00E32290 /* KWMRecommendView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMRecommendView.h; sourceTree = "<group>"; };
 		C02C7D7B1E640D82008DC29C /* libWeChatSDK.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libWeChatSDK.a; sourceTree = "<group>"; };
 		C02C7D7C1E640D82008DC29C /* README.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README.txt; sourceTree = "<group>"; };
 		C02C7D7D1E640D82008DC29C /* WechatAuthSDK.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WechatAuthSDK.h; sourceTree = "<group>"; };
@@ -768,12 +771,9 @@
 		C04834381F13274300A5BFB4 /* KWMNewHomeVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMNewHomeVC.h; sourceTree = "<group>"; };
 		C04834391F13274300A5BFB4 /* KWMNewHomeVC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KWMNewHomeVC.m; sourceTree = "<group>"; };
 		C048343D1F13288F00A5BFB4 /* KWMMenuHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMMenuHeader.xib; sourceTree = "<group>"; };
-		C048343F1F13350F00A5BFB4 /* KWMRecommendHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMRecommendHeader.h; sourceTree = "<group>"; };
-		C04834401F13350F00A5BFB4 /* KWMRecommendHeader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KWMRecommendHeader.m; sourceTree = "<group>"; };
 		C04834421F1337A800A5BFB4 /* KWMNewHomeCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMNewHomeCell.h; sourceTree = "<group>"; };
 		C04834431F1337A800A5BFB4 /* KWMNewHomeCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KWMNewHomeCell.m; sourceTree = "<group>"; };
 		C04834441F1337A800A5BFB4 /* KWMNewHomeCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMNewHomeCell.xib; sourceTree = "<group>"; };
-		C04834471F1338F200A5BFB4 /* KWMRecommendHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMRecommendHeader.xib; sourceTree = "<group>"; };
 		C04834491F13391A00A5BFB4 /* KWMClothingSetsHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMClothingSetsHeader.xib; sourceTree = "<group>"; };
 		C048344B1F13393D00A5BFB4 /* KWMHotSalesHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KWMHotSalesHeader.xib; sourceTree = "<group>"; };
 		C048344D1F13590500A5BFB4 /* KWMProductBannerItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KWMProductBannerItemView.h; sourceTree = "<group>"; };
@@ -1514,6 +1514,9 @@
 				C0DD53261EE55190002D1E0C /* Loading */,
 				C034E7C31D6B10A0006EE129 /* CorePhotoBroswer */,
 				C034E8381D6B10A0006EE129 /* EGO */,
+				C02C5A921FD54C7D00E32290 /* KWMRecommendView.h */,
+				C02C5A901FD54C7C00E32290 /* KWMRecommendView.m */,
+				C02C5A911FD54C7C00E32290 /* KWMRecommendView.xib */,
 				C0AF03981DD5BFB20060623F /* UIViewController+BackButtonHandler.h */,
 				C0AF03991DD5BFB20060623F /* UIViewController+BackButtonHandler.m */,
 				C04834211F13215500A5BFB4 /* KWMBannerView.h */,
@@ -2004,9 +2007,6 @@
 				C048343D1F13288F00A5BFB4 /* KWMMenuHeader.xib */,
 				C048342C1F13254200A5BFB4 /* KWMMenuHeader.h */,
 				C048342D1F13254200A5BFB4 /* KWMMenuHeader.m */,
-				C04834471F1338F200A5BFB4 /* KWMRecommendHeader.xib */,
-				C048343F1F13350F00A5BFB4 /* KWMRecommendHeader.h */,
-				C04834401F13350F00A5BFB4 /* KWMRecommendHeader.m */,
 				C04834491F13391A00A5BFB4 /* KWMClothingSetsHeader.xib */,
 				C04834321F1325A000A5BFB4 /* KWMClothingSetsHeader.h */,
 				C04834331F1325A000A5BFB4 /* KWMClothingSetsHeader.m */,
@@ -2436,7 +2436,7 @@
 				C0F586771E24F820001248E2 /* KWMCollectionCell.xib in Resources */,
 				C0243BBD1EFBD5A10013CFA7 /* Category.storyboard in Resources */,
 				C0F586791E24F820001248E2 /* KWMDetailCell.xib in Resources */,
-				C04834481F1338F200A5BFB4 /* KWMRecommendHeader.xib in Resources */,
+				C02C5A941FD54C7D00E32290 /* KWMRecommendView.xib in Resources */,
 				C0F5867F1E24F820001248E2 /* KWMNewGoodsCell.xib in Resources */,
 				C0DD53101EE54A9E002D1E0C /* KWMBarandSelectView.xib in Resources */,
 				C066650C1D75A2E500F02EF4 /* Mine.storyboard in Resources */,
@@ -2592,7 +2592,6 @@
 				DA4E36981F17729C0007E4D0 /* KWMCategoryModel.m in Sources */,
 				C048B8E21EF3C04B000DA7AF /* KWMBeforePayData.m in Sources */,
 				C03846941DB89EEB008C3BAB /* KWMCemaroseResult.m in Sources */,
-				C04834411F13350F00A5BFB4 /* KWMRecommendHeader.m in Sources */,
 				C0F586871E24F820001248E2 /* KWMNewTypeSelectedVC.m in Sources */,
 				80598D471D99193400BF0F97 /* KWMInformationVC.m in Sources */,
 				C034E7B91D6B0A8D006EE129 /* KWMHomeVC.m in Sources */,
@@ -2663,6 +2662,7 @@
 				C0F586781E24F820001248E2 /* KWMDetailCell.m in Sources */,
 				C03120AD1EF2AC6700E49EFA /* KWMCheckoutPayResult.m in Sources */,
 				801F87BF1DD1D6850038FA4C /* KWMLoadStatus.m in Sources */,
+				C02C5A931FD54C7D00E32290 /* KWMRecommendView.m in Sources */,
 				C03943C31DD1FD3F00141475 /* KWMProductTypeResult.m in Sources */,
 				804771851D6D585B0086B4DC /* KWMValidationVC.m in Sources */,
 				80ED0A4F1D93BD0E00B28DF2 /* KWMShopCartModel.m in Sources */,
diff --git a/iCemarose/Assets.xcassets/ic_choose_nor.imageset/Contents.json b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/Contents.json
new file mode 100644
index 0000000..ba267b4
--- /dev/null
+++ b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_choose_nor@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_choose_nor@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
\ No newline at end of file
diff --git a/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@2x.png b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@2x.png
new file mode 100644
index 0000000..5394e13
Binary files /dev/null and b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@2x.png differ
diff --git a/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@3x.png b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@3x.png
new file mode 100644
index 0000000..ea44c84
Binary files /dev/null and b/iCemarose/Assets.xcassets/ic_choose_nor.imageset/ic_choose_nor@3x.png differ
diff --git a/iCemarose/Assets.xcassets/ic_choose_sel.imageset/Contents.json b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/Contents.json
new file mode 100644
index 0000000..863edea
--- /dev/null
+++ b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_choose_sel@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_choose_sel@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
\ No newline at end of file
diff --git a/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@2x.png b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@2x.png
new file mode 100644
index 0000000..96b8e48
Binary files /dev/null and b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@2x.png differ
diff --git a/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@3x.png b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@3x.png
new file mode 100644
index 0000000..b49895d
Binary files /dev/null and b/iCemarose/Assets.xcassets/ic_choose_sel.imageset/ic_choose_sel@3x.png differ
diff --git a/iCemarose/Class/UI/Login/Login.storyboard b/iCemarose/Class/UI/Login/Login.storyboard
index 232e6a3..947df27 100644
--- a/iCemarose/Class/UI/Login/Login.storyboard
+++ b/iCemarose/Class/UI/Login/Login.storyboard
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
     <device id="retina4_7" orientation="portrait">
         <adaptation id="fullscreen"/>
     </device>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13174"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <customFonts key="customFonts">
diff --git a/iCemarose/Class/UI/NewHome/KWMNewHomeVC.h b/iCemarose/Class/UI/NewHome/KWMNewHomeVC.h
index 649bede..d875a99 100644
--- a/iCemarose/Class/UI/NewHome/KWMNewHomeVC.h
+++ b/iCemarose/Class/UI/NewHome/KWMNewHomeVC.h
@@ -11,7 +11,7 @@
 #import <CHTCollectionViewWaterfallLayout.h>
 #import "KWMAdHeader.h"
 #import "KWMMenuHeader.h"
-#import "KWMRecommendHeader.h"
+#import "KWMRecommendView.h"
 #import "KWMClothingSetsHeader.h"
 #import "KWMHotSalesHeader.h"
 
diff --git a/iCemarose/Class/UI/NewHome/KWMNewHomeVC.m b/iCemarose/Class/UI/NewHome/KWMNewHomeVC.m
index 7796fcb..6c39226 100644
--- a/iCemarose/Class/UI/NewHome/KWMNewHomeVC.m
+++ b/iCemarose/Class/UI/NewHome/KWMNewHomeVC.m
@@ -45,7 +45,7 @@ typedef enum{
 
 @property(nonatomic,strong) KWMMenuHeader *menuHeader;
 
-@property(nonatomic,strong) KWMRecommendHeader *recommendHeader;
+@property(nonatomic,strong) KWMRecommendView *recommendHeader;
 
 @property(nonatomic,strong) KWMClothingSetsHeader *clothingSetsHeader;
 
@@ -110,7 +110,7 @@ typedef enum{
     heightHotSale = UI_SCREEN_WIDTH * 190 / 375 + 60;//60为图片外的布局高度
     self.adHeader = [[KWMAdHeader alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, heightAdHeader)];
     self.menuHeader = [[KWMMenuHeader alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, 100)];
-    self.recommendHeader = [[KWMRecommendHeader alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, 230)];
+    self.recommendHeader = [[KWMRecommendView alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, 230)];
     self.clothingSetsHeader = [[KWMClothingSetsHeader alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, heightClothingSets)];
     self.hotSalesHeader = [[KWMHotSalesHeader alloc]initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, heightHotSale)];
     
@@ -145,7 +145,7 @@ typedef enum{
     
     [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMAdHeader kwmTag]];
     [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMHotSalesHeader kwmTag]];
-    [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMRecommendHeader kwmTag]];
+    [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMRecommendView kwmTag]];
     [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMClothingSetsHeader kwmTag]];
     [self.cvHome registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMMenuHeader kwmTag]];
     
@@ -194,7 +194,7 @@ typedef enum{
 }
 
 #pragma mark - KWMRecommendDelegate
--(void)kwm_gotoRecommendPage{
+-(void)kwm_gotoRecommendPage:(KWMRecommendView *)recommendView{
     [self openURLWithString:@"https://cemarose.myshopify.com/collections/hot-sell-app?title=主推单品"];
 }
 
@@ -264,7 +264,7 @@ typedef enum{
                 }
                 break;
             case HeaderRecommend:
-                headerView = [collectionView dequeueReusableSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMRecommendHeader kwmTag] forIndexPath:indexPath];
+                headerView = [collectionView dequeueReusableSupplementaryViewOfKind:CHTCollectionElementKindSectionHeader withReuseIdentifier:[KWMRecommendView kwmTag] forIndexPath:indexPath];
                 if(headerView.subviews.count == 0){
                     [headerView addSubview:self.recommendHeader];
                 }
@@ -341,7 +341,7 @@ typedef enum{
 - (void) requestProductWithHandle:(NSString *) handle tags:(NSArray *) tags valueKeyPath:(NSString *) valueKeyPath {
     BOOL isHome = [handle isEqualToString:@"products-list-app-homepage"];
     NSInteger cpage = isHome ? self.page : 1;
-    NSDictionary *parameters = [self getProductCacheKeyDictionary:cpage tags:tags handle:handle];
+    NSDictionary *parameters = [KWMPPCacheUtil getProductCacheKeyDictionary:cpage tags:tags handle:handle];
     if(!self.isRefreshUI){
         BOOL useProductDataCache = [self useProductDataCache:parameters valueKeyPath:valueKeyPath page:cpage isHome:isHome];
     }
@@ -439,23 +439,6 @@ typedef enum{
         }
 }
 
-//初始化缓存parameters key
-- (NSDictionary *)getProductCacheKeyDictionary:(NSUInteger)page
-                                   tags:(nullable NSArray <NSString *> *)tags
-                           handle:(nullable NSString *)handle{
-    NSMutableDictionary *params = @{
-                                    @"limit"         : @(self.client.pageSize),
-                                    @"page"          : @(page)
-                                    }.mutableCopy;
-    if (tags) {
-        params[@"tag"] = [tags componentsJoinedByString:@","];
-    }
-    if (handle) {
-        params[@"handle"] = handle;
-    }
-    return params;
-}
-
 //缓存规则:网络请求数据照常,如果没网络,并且缓存有数据,会拿缓存的数据显示。
 -(BOOL)useProductDataCache:(NSDictionary *)cacheKeyDictionary valueKeyPath:(NSString *)valueKeyPath page:(NSUInteger)page isHome:(BOOL)isHome{
     if(!kIsNetwork || page == 1){
diff --git a/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.h b/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.h
index b51a89b..5d67520 100644
--- a/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.h
+++ b/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.h
@@ -16,7 +16,7 @@
 #import "KWMPayTypeVC.h"
 #import "KWMBeforePayData.h"
 
-@interface KWMBeforePayVC : KWMBaseVC<KWMGiftCardDelegate,KWMDiscountDelegate,KWMSelectAddressDelegate,KWMSelectShippingRateDelegate,KWMPayTypeDelegate>
+@interface KWMBeforePayVC : KWMBaseVC<KWMGiftCardDelegate,KWMSelectAddressDelegate,KWMSelectShippingRateDelegate,UITextFieldDelegate>
 
 //沒有默認地址時,高度為37,有地址時,高度為90
 @property(nonatomic,weak) IBOutlet NSLayoutConstraint *vAddressHeight;
@@ -33,13 +33,28 @@
 
 @property (weak, nonatomic) IBOutlet UIView *vHasAddress;
 
-@property (weak, nonatomic) IBOutlet UILabel *lbPayType;
+//支付方式
+@property (weak, nonatomic) IBOutlet UIView *vPayType;
 
-//折扣
-@property (weak, nonatomic) IBOutlet UILabel *lbDiscount;
+@property (weak, nonatomic) IBOutlet UIImageView *ivAliPay;
+
+@property (weak, nonatomic) IBOutlet UIImageView *ivWechatPay;
 
+//折扣
 @property (weak, nonatomic) IBOutlet UILabel *lbGiftCard;
 
+@property (weak, nonatomic) IBOutlet UIButton *btnDiscountCancel;
+
+@property (weak, nonatomic) IBOutlet UIButton *btnDiscountConfirm;
+
+@property (weak, nonatomic) IBOutlet UIButton *btnDiscountEdit;
+
+@property (weak, nonatomic) IBOutlet UITextField *tfDiscount;
+
+@property (weak, nonatomic) IBOutlet UIButton *btnBg;
+
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *marginTopContent;
+//价格
 @property (weak, nonatomic) IBOutlet UILabel *lbTotalPrice;
 
 @property (weak, nonatomic) IBOutlet UILabel *lbShippingRate;
@@ -47,8 +62,6 @@
 //清关信息
 @property (weak, nonatomic) IBOutlet UILabel *lbCustomsClearance;
 
-@property (weak, nonatomic) IBOutlet UIView *vPayType;
-
 @property (weak, nonatomic) IBOutlet NSLayoutConstraint *heightPayType;
 
 @property (weak, nonatomic) IBOutlet NSLayoutConstraint *heightCustomsClearance;
@@ -87,6 +100,9 @@
 
 - (IBAction)onClickCustomsClearance:(id)sender;
 
+- (IBAction)onClickDiscountConfirm:(id)sender;
+
+- (IBAction)onClickDiscountCancel:(id)sender;
 
 @end
 
diff --git a/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.m b/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.m
index 7ab472e..339233f 100644
--- a/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.m
+++ b/iCemarose/Class/UI/ShopCart/KWMBeforePayVC.m
@@ -25,9 +25,9 @@
 #import "KWMShoppingCart.h"
 
 @interface KWMBeforePayVC ()
+@property (nonatomic) BOOL isEditingDiscount;
 @property (nonatomic) BUYCustomer *customer;
 @property (weak, nonatomic) IBOutlet UIButton *submit;
-
 @end
 
 @implementation KWMBeforePayVC
@@ -49,6 +49,7 @@
 
 - (void)viewDidLoad {
     [super viewDidLoad];
+    [self initDiscountHintText];
     self.title = @"提交订单";
     self.payType = [self.userDao.currencyCode isEqualToString:@"EUR"]?TypeWebpay:TypeAlipay;
     self.beforePayData = [KWMBeforePayData new];
@@ -77,8 +78,6 @@
     if(payType == TypeWebpay){
         self.heightPayType.constant = 0;
         self.vPayType.hidden = YES;
-    }else{
-        self.lbPayType.text = [KWMPayUtil payTypeString:payType];
     }
 }
 
@@ -118,6 +117,7 @@
             if (error == nil && checkout) {
                 this.address = address;
                 this.checkout = checkout;
+                
                 [this showToast:@"更新地址成功"];
                 [this flushCheckout:dictionary];
 //                [this initData];
@@ -150,11 +150,6 @@
     [self initData];
 }
 
-- (void)kwm_addedDiscount:(BUYCheckout *)checkout{
-    self.checkout = checkout;
-    [self initData];
-}
-
 - (void)kwm_addedGiftCard:(BUYCheckout *)checkout{
     self.checkout = checkout;
     [self initData];
@@ -167,6 +162,22 @@
 
 -(void)kwm_onSelectPayType:(KWMPayType)payType{
     self.payType = payType;
+    if(payType == TypeWechatPay){
+        self.ivAliPay.image = [UIImage imageNamed:@"ic_choose_nor"];
+        self.ivWechatPay.image = [UIImage imageNamed:@"ic_choose_sel"];
+    }else if(payType == TypeAlipay){
+        self.ivAliPay.image = [UIImage imageNamed:@"ic_choose_sel"];
+        self.ivWechatPay.image = [UIImage imageNamed:@"ic_choose_nor"];
+    }
+}
+
+-(void)initDiscountHintText{
+    NSString *holderText = @"请输入优惠码";
+    NSMutableAttributedString *placeholder = [[NSMutableAttributedString alloc] initWithString:holderText];
+    [placeholder addAttribute:NSForegroundColorAttributeName
+                        value:[UIColor sam_colorWithHex:@"393939"]
+                        range:NSMakeRange(0, holderText.length)];
+    self.tfDiscount.attributedPlaceholder = placeholder;
 }
 
 - (void)initData{
@@ -201,11 +212,17 @@
     }
 
     //优惠码
-    if(self.checkout.discount!=nil){
-        self.lbDiscount.text = self.checkout.discount.code;
+    if(self.checkout.discount){
+        self.tfDiscount.text = self.checkout.discount.code;
     }else{
-        self.lbDiscount.text = @"请输入优惠码";
-    }
+        self.tfDiscount.text = @"";
+    }
+    //优惠码编辑相关
+    self.tfDiscount.enabled = self.isEditingDiscount;
+    [self.tfDiscount endEditing:!self.isEditingDiscount];
+    [self.btnDiscountCancel setHidden:!self.isEditingDiscount];
+    [self.btnDiscountConfirm setHidden:!self.isEditingDiscount];
+    [self.btnDiscountEdit setHidden:self.isEditingDiscount];
     //礼品卡
     if(self.checkout.giftCardsArray!=nil && self.checkout.giftCardsArray.count>0){
         BUYGiftCard *giftCard = [self.checkout.giftCardsArray objectAtIndex:0];
@@ -375,9 +392,13 @@
         [self showToast:@"未成功创建订单"];
         return;
     }
-    KWMPayTypeVC *typeVC = (KWMPayTypeVC *)[KWMBaseVC findControllerBy:[KWMPayTypeVC kwmTag] fromStoryboard:@"ShopCart"];
-    typeVC.delegate = self;
-    [self.navigationController pushViewController:typeVC animated:YES];
+    UITapGestureRecognizer *tapType = sender;
+    UIView *vType = tapType.view;
+    if(vType.tag == 1){
+        [self kwm_onSelectPayType:TypeAlipay];
+    }else if(vType.tag == 2){
+        [self kwm_onSelectPayType:TypeWechatPay];
+    }
 }
 
 //优惠码页面
@@ -386,10 +407,42 @@
         [self showToast:@"未成功创建订单"];
         return;
     }
-    KWMDiscountVC *discountVC = (KWMDiscountVC *)[KWMBaseVC findControllerBy:[KWMDiscountVC kwmTag] fromStoryboard:@"ShopCart"];
-    discountVC.checkout = self.checkout;
-    discountVC.delegate = self;
-    [self.navigationController pushViewController:discountVC animated:YES];
+    self.isEditingDiscount = YES;
+    [self initData];
+    [self.tfDiscount becomeFirstResponder];
+}
+
+-(void)onClickDiscountCancel:(id)sender{
+    self.isEditingDiscount = NO;
+    [self initData];
+    [self.tfDiscount resignFirstResponder];
+}
+
+-(void)onClickDiscountConfirm:(id)sender{
+    if(self.checkout == nil){
+        [self showToast:@"未成功创建订单"];
+        return;
+    }
+    if([KWMStringUtil isBlank:self.tfDiscount.text]){
+        [self showToast:@"优惠码不能为空"];
+        return;
+    }
+    [self.tfDiscount resignFirstResponder];
+    [self showLoading];
+    __weak typeof(self) this = self;
+    [self.client updateCheckout:self.checkout completion:^(NSDictionary *dictionary, BUYCheckout *checkout, NSError *error) {
+        [this hideLoading];
+        if (error == nil && checkout && checkout.discount) {
+            this.checkout = checkout;
+            [this showToast:@"添加优惠码成功"];
+            [this flushCheckout:dictionary];
+            this.isEditingDiscount = NO;
+            [this initData];
+        }else {
+            [this showToast:@"添加优惠码失败"];
+            [this showError:error];
+        }
+    }];
 }
 
 //礼品卡页面
@@ -429,6 +482,24 @@
     [self startCheckout];
 }
 
+#pragma mark - UITextFieldDelegate
+-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
+    self.marginTopContent.constant = 22 - 200;
+    [UIView animateWithDuration:0.5 animations:^{
+        [self.view layoutIfNeeded];
+    }];
+    return YES;
+}
+
+//键盘弹出
+-(void)keyboardWillHide:(NSNotification *)notification{
+    self.marginTopContent.constant = 22;
+    [UIView animateWithDuration:0.5 animations:^{
+        [self.view layoutIfNeeded];
+    }];
+    
+}
+
 -(void)startCheckout{
     if(self.checkout == nil){
         [self showToast:@"未成功初始化订单"];
@@ -485,23 +556,6 @@
         [self showToast:errorMsg];
     }
     return errorMsg != nil;
-//    if(address == nil){
-//        [self showToast:@"您的地址尚未有任何地址,请前往选择地址"];
-//        return YES;
-//    }else if([KWMStringUtil isEmpty:address.firstName] && [KWMStringUtil isEmpty:address.lastName]){
-//        [self showToast:@"您的地址缺少收件人姓名,请前往完善地址"];
-//        return YES;
-//    }else if([KWMStringUtil isEmpty:address.city]){
-//        [self showToast:@"您的地址缺少所在城市,请前往完善地址"];
-//        return YES;
-//    }else if([KWMStringUtil isEmpty:address.zip]){
-//        [self showToast:@"您的地址缺少邮政编码,请前往完善地址"];
-//        return YES;
-//    }else if([KWMStringUtil isEmpty:address.phone]){
-//        [self showToast:@"您的地址缺少收件人电话号码,请前往完善地址"];
-//        return YES;
-//    }
-//    return NO;
 }
 
 
diff --git a/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.h b/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.h
index 0485b0d..cb0b4c3 100644
--- a/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.h
+++ b/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.h
@@ -7,6 +7,8 @@
 //
 
 #import "KWMBaseVC.h"
+#import "KWMRecommendView.h"
+#import "KWMPPCacheUtil.h"
 
 @interface KWMPaySuccessVC : KWMBaseVC
 
@@ -16,12 +18,19 @@
 
 @property (weak, nonatomic) IBOutlet UIButton *btnMyOrder;
 
+@property (weak, nonatomic) IBOutlet UIButton *btnBackHome;
+
+@property (weak, nonatomic) IBOutlet KWMRecommendView *hotRecommendView;
+
+
 - (IBAction)onClickStartTime:(id)sender;
 
 - (IBAction)onClickGetTime:(id)sender;
 
 - (IBAction)onClickMyOrder:(id)sender;
 
+- (IBAction)onClickBackHome:(id)sender;
+
 //用于在跳转后的订单列表页面生成即时订单(支付后的订单需要一定时间后才能从订单列表获取)
 @property (nonatomic) BUYCheckout *paidCheckout;
 
diff --git a/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.m b/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.m
index 3b28500..864eb0f 100644
--- a/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.m
+++ b/iCemarose/Class/UI/ShopCart/KWMPaySuccessVC.m
@@ -13,7 +13,7 @@
 #import "UIViewController+BackButtonHandler.h"
 #import "KWMOrderVC.h"
 
-@interface KWMPaySuccessVC ()
+@interface KWMPaySuccessVC ()<KWMRecommendDelegate>
 
 @end
 
@@ -24,6 +24,9 @@
     self.title = @"支付成功";
    
     [self initButton];
+    [self requestProductWithHandle:@"products-list-app-homepage" tags:nil valueKeyPath:@"productArray"];
+    self.hotRecommendView.title = @"热卖单品";
+    self.hotRecommendView.delegate = self;
 }
 
 +(NSString *)kwmTag{
@@ -45,6 +48,9 @@
     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; //要设置的描边宽
 }
 
 
@@ -70,11 +76,80 @@
     [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
diff --git a/iCemarose/Class/UI/ShopCart/KWMShopCartVC.m b/iCemarose/Class/UI/ShopCart/KWMShopCartVC.m
index ad26fac..6e02de6 100644
--- a/iCemarose/Class/UI/ShopCart/KWMShopCartVC.m
+++ b/iCemarose/Class/UI/ShopCart/KWMShopCartVC.m
@@ -17,8 +17,12 @@
 #import "KWMCategoryVC.h"
 #import "KWMStringUtil.h"
 #import "KWMShoppingCart.h"
+#import "KWMRecommendView.h"
+#import "KWMPPCacheUtil.h"
 
-@interface KWMShopCartVC ()<UIAlertViewDelegate>
+@interface KWMShopCartVC ()<UIAlertViewDelegate,KWMRecommendDelegate>
+@property (nonatomic, weak) IBOutlet KWMRecommendView *newestRecommendView;
+@property (nonatomic, weak) IBOutlet KWMRecommendView *mainRecommendView;
 @property (nonatomic) NSMutableArray *shopCartList;
 @property (nonatomic, strong) NSMutableArray *soldout;
 @end
@@ -53,6 +57,10 @@
     [self setTotalPrice];
     
     [self checkInStockAndRefresh];
+    self.newestRecommendView.title = @"最新单品";
+    self.mainRecommendView.title = @"主推单品";
+    self.newestRecommendView.delegate = self;
+    self.mainRecommendView.delegate = self;
 }
 
 - (void) checkInStockAndRefresh {
@@ -165,13 +173,9 @@
 }
 
 -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
-    
-    if (_shopCartList.count == 0) {
-        self.vBackground.hidden = NO;
-    }else{
-        self.vBackground.hidden = YES;
-    }
-    return _shopCartList.count;
+    NSInteger count = self.shopCartList ? self.shopCartList.count : 0;
+    self.vBackground.hidden = count != 0;
+    return count;
 }
 
 #pragma  mark UITableViewDelegate
@@ -225,6 +229,19 @@
     }
 }
 
+#pragma mark KWMRecommendDelegate
+-(void)kwm_gotoRecommendPage:(KWMRecommendView *)recommendView{
+    if(recommendView.tag == 1){
+        [self openURLWithString:@"https://cemarose.myshopify.com/collections/new?title=最新单品"];
+    }else{
+        [self openURLWithString:@"https://cemarose.myshopify.com/collections/hot-sell-app?title=主推单品"];
+    }
+}
+
+-(void)kwm_onClickProduct:(BUYProduct *)product{
+    [self openURLWithString:[NSString stringWithFormat:@"https://cemarose.myshopify.com/products/%@",product.handle]];
+}
+
 - (void)kwm_onClickDelete:(KWMShopCartModel *)shopCartModel{
     self.vDelete.hidden = NO;
     self.vDelete.delegate = self;
@@ -356,6 +373,11 @@
     self.shopCartList = [[KWMShoppingCart sharedInstance] items];
     [self.tbvCart reloadData];
     [self setTotalPrice];
+    if(! self.shopCartList || self.shopCartList.count == 0){
+        //请求推荐商品数据
+        [self requestProductWithHandle:@"new" tags:nil valueKeyPath:@"newestRecommendView"];
+        [self requestProductWithHandle:@"hot-sell-app" tags:nil valueKeyPath:@"mainRecommendView"];
+    }
 //    [self.client getProductsByIds:[self.shopCartList rx_mapWithBlock:^id(KWMShopCartModel *each) {
 //        return each.product_id;
 //    }] completion:^(NSArray<BUYProduct *> * _Nullable products, NSError * _Nullable error) {
@@ -380,4 +402,44 @@
     _lbTotalPrice.text = total.priceFormatted;
 }
 
+#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 KWMShopCartVC *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){
+                        if([valueKeyPath isEqualToString:@"newestRecommendView"]){
+                            weakSelf.newestRecommendView.productArray = products;
+                        }else{
+                            weakSelf.mainRecommendView.productArray = products;
+                        }
+                    }
+                }
+            }];
+        }
+    }];
+}
+
+-(BOOL)useProductDataCache:(NSDictionary *)cacheKeyDictionary valueKeyPath:(NSString *)valueKeyPath page:(NSUInteger)page{
+    if(!kIsNetwork || page == 1){
+        NSArray *products = [KWMPPCacheUtil getProductDataByCache:cacheKeyDictionary urlKey:CACHE_KEY_SDK_getCollectionByHandle_getProductsPage];
+        if(products && products.count > 0){
+            if([valueKeyPath isEqualToString:@"newestRecommendView"]){
+                self.newestRecommendView.productArray = products;
+            }else{
+                self.mainRecommendView.productArray = products;
+            }
+        }else{
+            return false;
+        }
+    }
+    return !kIsNetwork;
+}
+
+
 @end
diff --git a/iCemarose/Class/UI/ShopCart/ShopCart.storyboard b/iCemarose/Class/UI/ShopCart/ShopCart.storyboard
index a81b982..87f3b41 100644
--- a/iCemarose/Class/UI/ShopCart/ShopCart.storyboard
+++ b/iCemarose/Class/UI/ShopCart/ShopCart.storyboard
@@ -81,39 +81,84 @@
                                 </constraints>
                             </view>
                             <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dhG-84-LF2">
-                                <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
+                                <rect key="frame" x="0.0" y="21" width="375" height="646"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="您的购物车暂无商品" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fYc-B5-hMg">
-                                        <rect key="frame" x="99" y="324" width="178" height="19"/>
-                                        <constraints>
-                                            <constraint firstAttribute="height" constant="19" id="Vfn-JL-87E"/>
-                                            <constraint firstAttribute="width" constant="178" id="jeS-ow-chM"/>
-                                        </constraints>
-                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
-                                        <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
-                                        <color key="highlightedColor" red="0.30588235294117649" green="0.30588235294117649" blue="0.30588235294117649" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                    </label>
-                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mpJ-rx-b9c">
-                                        <rect key="frame" x="148" y="363" width="80" height="25"/>
+                                    <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="E2g-oV-Dfz">
+                                        <rect key="frame" x="0.0" y="0.0" width="375" height="646"/>
+                                        <subviews>
+                                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mfW-gg-QcG" userLabel="content">
+                                                <rect key="frame" x="0.0" y="0.0" width="374" height="679"/>
+                                                <subviews>
+                                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="您的购物车暂无商品" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fYc-B5-hMg">
+                                                        <rect key="frame" x="98" y="80" width="178" height="19"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="height" constant="19" id="Vfn-JL-87E"/>
+                                                            <constraint firstAttribute="width" constant="178" id="jeS-ow-chM"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                        <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
+                                                        <color key="highlightedColor" red="0.30588235294117649" green="0.30588235294117649" blue="0.30588235294117649" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    </label>
+                                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mpJ-rx-b9c">
+                                                        <rect key="frame" x="147" y="114" width="80" height="25"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" constant="80" id="ZD2-l9-Vsa"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" type="system" weight="light" pointSize="12"/>
+                                                        <inset key="contentEdgeInsets" minX="5" minY="5" maxX="5" maxY="5"/>
+                                                        <state key="normal" title="随便看看">
+                                                            <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickRandomBtn:" destination="A3A-mQ-3Aw" eventType="touchUpInside" id="0ei-IK-RXc"/>
+                                                        </connections>
+                                                    </button>
+                                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Dpz-Vi-bYg" customClass="KWMRecommendView">
+                                                        <rect key="frame" x="0.0" y="219" width="374" height="230"/>
+                                                        <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="height" constant="230" id="pqL-xs-Vcm"/>
+                                                        </constraints>
+                                                    </view>
+                                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="B7u-NF-Ik7" customClass="KWMRecommendView">
+                                                        <rect key="frame" x="0.0" y="449" width="374" height="230"/>
+                                                        <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="height" constant="230" id="bMg-ls-I5X"/>
+                                                        </constraints>
+                                                    </view>
+                                                </subviews>
+                                                <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                                <constraints>
+                                                    <constraint firstItem="mpJ-rx-b9c" firstAttribute="centerX" secondItem="mfW-gg-QcG" secondAttribute="centerX" id="2Hk-nD-lKt"/>
+                                                    <constraint firstItem="fYc-B5-hMg" firstAttribute="top" secondItem="mfW-gg-QcG" secondAttribute="top" constant="80" id="DFd-Qy-sD8"/>
+                                                    <constraint firstAttribute="trailing" secondItem="Dpz-Vi-bYg" secondAttribute="trailing" id="JzX-sz-KKi"/>
+                                                    <constraint firstItem="B7u-NF-Ik7" firstAttribute="top" secondItem="Dpz-Vi-bYg" secondAttribute="bottom" id="MPW-2X-33D"/>
+                                                    <constraint firstAttribute="trailing" secondItem="B7u-NF-Ik7" secondAttribute="trailing" id="NRx-gQ-wsI"/>
+                                                    <constraint firstItem="B7u-NF-Ik7" firstAttribute="leading" secondItem="mfW-gg-QcG" secondAttribute="leading" id="YUq-W4-zbb"/>
+                                                    <constraint firstItem="Dpz-Vi-bYg" firstAttribute="leading" secondItem="mfW-gg-QcG" secondAttribute="leading" id="Z9Q-eW-6a9"/>
+                                                    <constraint firstItem="fYc-B5-hMg" firstAttribute="centerX" secondItem="mfW-gg-QcG" secondAttribute="centerX" id="fCw-vo-LWj"/>
+                                                    <constraint firstItem="mpJ-rx-b9c" firstAttribute="top" secondItem="fYc-B5-hMg" secondAttribute="bottom" constant="15" id="i8p-Ql-PXa"/>
+                                                    <constraint firstAttribute="bottom" secondItem="B7u-NF-Ik7" secondAttribute="bottom" id="ne7-ML-gDu"/>
+                                                    <constraint firstItem="Dpz-Vi-bYg" firstAttribute="top" secondItem="mpJ-rx-b9c" secondAttribute="bottom" constant="80" id="prc-wY-0wg"/>
+                                                </constraints>
+                                            </view>
+                                        </subviews>
                                         <constraints>
-                                            <constraint firstAttribute="width" constant="80" id="ZD2-l9-Vsa"/>
+                                            <constraint firstItem="mfW-gg-QcG" firstAttribute="top" secondItem="E2g-oV-Dfz" secondAttribute="top" id="4i6-JJ-uy4"/>
+                                            <constraint firstAttribute="trailing" secondItem="mfW-gg-QcG" secondAttribute="trailing" id="Jly-IN-M6N"/>
+                                            <constraint firstAttribute="bottom" secondItem="mfW-gg-QcG" secondAttribute="bottom" id="PFx-p9-L4K"/>
+                                            <constraint firstItem="mfW-gg-QcG" firstAttribute="leading" secondItem="E2g-oV-Dfz" secondAttribute="leading" id="ebF-Cd-oRI"/>
+                                            <constraint firstItem="mfW-gg-QcG" firstAttribute="centerX" secondItem="E2g-oV-Dfz" secondAttribute="centerX" id="hvW-Ei-CU4"/>
                                         </constraints>
-                                        <fontDescription key="fontDescription" type="system" weight="light" pointSize="12"/>
-                                        <inset key="contentEdgeInsets" minX="5" minY="5" maxX="5" maxY="5"/>
-                                        <state key="normal" title="随便看看">
-                                            <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                        </state>
-                                        <connections>
-                                            <action selector="onClickRandomBtn:" destination="A3A-mQ-3Aw" eventType="touchUpInside" id="0ei-IK-RXc"/>
-                                        </connections>
-                                    </button>
+                                    </scrollView>
                                 </subviews>
                                 <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstItem="fYc-B5-hMg" firstAttribute="centerY" secondItem="dhG-84-LF2" secondAttribute="centerY" id="DVu-zF-1td"/>
-                                    <constraint firstItem="fYc-B5-hMg" firstAttribute="centerX" secondItem="dhG-84-LF2" secondAttribute="centerX" id="UWw-ka-lFZ"/>
-                                    <constraint firstItem="mpJ-rx-b9c" firstAttribute="top" secondItem="fYc-B5-hMg" secondAttribute="bottom" constant="20" id="c1a-RE-4m8"/>
-                                    <constraint firstItem="mpJ-rx-b9c" firstAttribute="centerX" secondItem="fYc-B5-hMg" secondAttribute="centerX" id="nIM-JD-0wh"/>
+                                    <constraint firstItem="E2g-oV-Dfz" firstAttribute="top" secondItem="dhG-84-LF2" secondAttribute="top" id="D80-tZ-9M9"/>
+                                    <constraint firstAttribute="bottom" secondItem="E2g-oV-Dfz" secondAttribute="bottom" id="SSu-Pr-lHR"/>
+                                    <constraint firstItem="E2g-oV-Dfz" firstAttribute="leading" secondItem="dhG-84-LF2" secondAttribute="leading" id="VDp-RW-mFC"/>
+                                    <constraint firstAttribute="trailing" secondItem="E2g-oV-Dfz" secondAttribute="trailing" id="YHr-gf-Rne"/>
                                 </constraints>
                             </view>
                             <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sSj-dM-fFH" customClass="KWMDeleteView">
@@ -138,9 +183,8 @@
                             <constraint firstItem="Dak-2L-vlZ" firstAttribute="leading" secondItem="eZd-0g-0dl" secondAttribute="leading" id="9h4-e8-KgS"/>
                             <constraint firstItem="sSj-dM-fFH" firstAttribute="leading" secondItem="eZd-0g-0dl" secondAttribute="leading" id="D3b-x8-dx2"/>
                             <constraint firstItem="NfP-ox-q3K" firstAttribute="top" secondItem="Dak-2L-vlZ" secondAttribute="bottom" id="Fzd-Cf-VAq"/>
-                            <constraint firstItem="dhG-84-LF2" firstAttribute="top" secondItem="eZd-0g-0dl" secondAttribute="top" id="SwY-v9-H0y"/>
+                            <constraint firstItem="dhG-84-LF2" firstAttribute="top" secondItem="k8A-rc-sdg" secondAttribute="bottom" id="U3U-M9-NrZ"/>
                             <constraint firstItem="sSj-dM-fFH" firstAttribute="top" secondItem="eZd-0g-0dl" secondAttribute="top" id="aRJ-p9-Erc"/>
-                            <constraint firstItem="dhG-84-LF2" firstAttribute="centerY" secondItem="eZd-0g-0dl" secondAttribute="centerY" id="aSb-yV-Xjx"/>
                             <constraint firstAttribute="bottom" secondItem="NfP-ox-q3K" secondAttribute="bottom" id="nue-gB-FxL"/>
                             <constraint firstItem="NfP-ox-q3K" firstAttribute="leading" secondItem="eZd-0g-0dl" secondAttribute="leading" id="nv2-sL-9Y9"/>
                             <constraint firstItem="Dak-2L-vlZ" firstAttribute="top" secondItem="eZd-0g-0dl" secondAttribute="top" id="pv4-tG-A94"/>
@@ -154,6 +198,8 @@
                     <connections>
                         <outlet property="btnRandom" destination="mpJ-rx-b9c" id="EbJ-V6-kp6"/>
                         <outlet property="lbTotalPrice" destination="JEi-kv-QfH" id="Fef-yf-nkH"/>
+                        <outlet property="mainRecommendView" destination="B7u-NF-Ik7" id="79l-z4-tBw"/>
+                        <outlet property="newestRecommendView" destination="Dpz-Vi-bYg" id="f3g-5b-SKK"/>
                         <outlet property="tbvCart" destination="Dak-2L-vlZ" id="Ek8-gV-ASp"/>
                         <outlet property="vBackground" destination="dhG-84-LF2" id="Zav-74-Ogn"/>
                         <outlet property="vDelete" destination="sSj-dM-fFH" id="OQv-SW-v52"/>
@@ -161,7 +207,7 @@
                 </viewController>
                 <placeholder placeholderIdentifier="IBFirstResponder" id="e7Y-ej-nID" userLabel="First Responder" sceneMemberID="firstResponder"/>
             </objects>
-            <point key="canvasLocation" x="249" y="170"/>
+            <point key="canvasLocation" x="248.80000000000001" y="169.56521739130437"/>
         </scene>
         <!--收货地址-->
         <scene sceneID="ioM-eK-Y5z">
@@ -393,7 +439,7 @@
                                         <rect key="frame" x="0.0" y="223" width="375" height="118"/>
                                         <subviews>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0.00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hix-Co-z5J">
-                                                <rect key="frame" x="157.5" y="15" width="60.5" height="28"/>
+                                                <rect key="frame" x="158" y="15" width="60" height="28"/>
                                                 <fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="20"/>
                                                 <color key="textColor" red="0.94509803920000002" green="0.57254901960000004" blue="0.60392156860000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 <nil key="highlightedColor"/>
@@ -602,8 +648,8 @@
                             <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lUQ-J5-kOq">
                                 <rect key="frame" x="0.0" y="0.0" width="375" height="549"/>
                                 <subviews>
-                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BlA-Cz-DcE">
-                                        <rect key="frame" x="0.0" y="0.0" width="374" height="522"/>
+                                    <view contentMode="scaleToFill" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="BlA-Cz-DcE">
+                                        <rect key="frame" x="0.0" y="-222" width="374" height="562"/>
                                         <subviews>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="寄送地址" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="MY5-C7-Kcb">
                                                 <rect key="frame" x="30" y="22" width="60" height="21"/>
@@ -689,7 +735,7 @@
                                                 </constraints>
                                             </view>
                                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Yux-Ro-p2d" userLabel="支付方式">
-                                                <rect key="frame" x="0.0" y="145" width="374" height="95"/>
+                                                <rect key="frame" x="0.0" y="145" width="374" height="135"/>
                                                 <subviews>
                                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="d3K-2Z-bMD" userLabel="支付">
                                                         <rect key="frame" x="0.0" y="0.0" width="374" height="55"/>
@@ -708,51 +754,120 @@
                                                             <constraint firstItem="Afz-nz-wCb" firstAttribute="leading" secondItem="d3K-2Z-bMD" secondAttribute="leading" constant="30" id="UMX-hS-jD3"/>
                                                         </constraints>
                                                     </view>
-                                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="1ep-3i-rAZ" userLabel="v支付方式">
+                                                    <view tag="1" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="0t9-CT-iWp" userLabel="支付宝">
                                                         <rect key="frame" x="0.0" y="55" width="374" height="40"/>
                                                         <subviews>
-                                                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请选择一种付款方式" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Fr9-gU-u2X">
-                                                                <rect key="frame" x="30" y="12" width="314" height="17"/>
+                                                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="支付宝支付" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ZTw-Ec-fab">
+                                                                <rect key="frame" x="30" y="11.5" width="60" height="17"/>
                                                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
-                                                                <color key="textColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <color key="textColor" red="0.30588235289999999" green="0.30588235289999999" blue="0.30588235289999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                                 <nil key="highlightedColor"/>
                                                             </label>
-                                                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3Ed-rJ-foG">
-                                                                <rect key="frame" x="324" y="10" width="20" height="20"/>
+                                                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Jh2-0e-Ceb" userLabel="line">
+                                                                <rect key="frame" x="0.0" y="39" width="374" height="1"/>
+                                                                <color key="backgroundColor" red="0.84705882349999995" green="0.85882352939999995" blue="0.87058823529999996" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                                 <constraints>
-                                                                    <constraint firstAttribute="height" constant="20" id="F3M-l6-kCX"/>
-                                                                    <constraint firstAttribute="width" constant="20" id="ULG-n2-05F"/>
+                                                                    <constraint firstAttribute="height" constant="1" id="HTJ-Ty-IZI"/>
                                                                 </constraints>
-                                                                <state key="normal" image="button_order_deit"/>
-                                                                <connections>
-                                                                    <outletCollection property="gestureRecognizers" destination="aLt-AM-zGa" appends="YES" id="k32-ow-FRi"/>
-                                                                </connections>
-                                                            </button>
+                                                            </view>
+                                                            <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_choose_sel" translatesAutoresizingMaskIntoConstraints="NO" id="qA8-Up-cG8">
+                                                                <rect key="frame" x="329" y="12.5" width="15" height="15"/>
+                                                                <constraints>
+                                                                    <constraint firstAttribute="width" constant="15" id="Am7-8O-RUu"/>
+                                                                    <constraint firstAttribute="height" constant="15" id="FYw-Li-qLW"/>
+                                                                </constraints>
+                                                            </imageView>
                                                         </subviews>
                                                         <color key="backgroundColor" red="0.95686274510000002" green="0.96078431369999995" blue="0.96862745100000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                         <constraints>
-                                                            <constraint firstAttribute="trailing" secondItem="3Ed-rJ-foG" secondAttribute="trailing" constant="30" id="57V-oG-ci0"/>
-                                                            <constraint firstAttribute="trailing" secondItem="Fr9-gU-u2X" secondAttribute="trailing" constant="30" id="M7U-Jv-ok2"/>
-                                                            <constraint firstItem="3Ed-rJ-foG" firstAttribute="centerY" secondItem="1ep-3i-rAZ" secondAttribute="centerY" id="Ugt-Rl-La6"/>
-                                                            <constraint firstItem="Fr9-gU-u2X" firstAttribute="leading" secondItem="1ep-3i-rAZ" secondAttribute="leading" constant="30" id="fcL-xz-nJH"/>
-                                                            <constraint firstItem="Fr9-gU-u2X" firstAttribute="centerY" secondItem="1ep-3i-rAZ" secondAttribute="centerY" id="zUq-aP-qzD"/>
-                                                            <constraint firstAttribute="height" constant="40" id="zbx-Pl-0TZ"/>
+                                                            <constraint firstAttribute="height" constant="40" id="32w-IK-79o"/>
+                                                            <constraint firstItem="Jh2-0e-Ceb" firstAttribute="leading" secondItem="0t9-CT-iWp" secondAttribute="leading" id="QDx-29-HUV"/>
+                                                            <constraint firstAttribute="bottom" secondItem="ZTw-Ec-fab" secondAttribute="bottom" id="V7G-gU-cS8"/>
+                                                            <constraint firstAttribute="bottom" secondItem="Jh2-0e-Ceb" secondAttribute="bottom" id="Wdy-jS-ub1"/>
+                                                            <constraint firstItem="ZTw-Ec-fab" firstAttribute="top" secondItem="0t9-CT-iWp" secondAttribute="top" id="gyr-wF-w2J"/>
+                                                            <constraint firstAttribute="trailing" secondItem="Jh2-0e-Ceb" secondAttribute="trailing" id="hUA-Rx-NPH"/>
+                                                            <constraint firstItem="qA8-Up-cG8" firstAttribute="centerY" secondItem="0t9-CT-iWp" secondAttribute="centerY" id="j47-nG-wrd"/>
+                                                            <constraint firstAttribute="trailing" secondItem="qA8-Up-cG8" secondAttribute="trailing" constant="30" id="kYM-dI-919"/>
+                                                            <constraint firstItem="ZTw-Ec-fab" firstAttribute="leading" secondItem="0t9-CT-iWp" secondAttribute="leading" constant="30" id="sXw-lU-ohe"/>
+                                                            <constraint firstItem="ZTw-Ec-fab" firstAttribute="centerY" secondItem="0t9-CT-iWp" secondAttribute="centerY" id="w0q-gc-guw"/>
                                                         </constraints>
+                                                        <variation key="default">
+                                                            <mask key="constraints">
+                                                                <exclude reference="V7G-gU-cS8"/>
+                                                                <exclude reference="gyr-wF-w2J"/>
+                                                            </mask>
+                                                        </variation>
+                                                        <connections>
+                                                            <outletCollection property="gestureRecognizers" destination="aLt-AM-zGa" appends="YES" id="d7k-HE-2Lk"/>
+                                                        </connections>
+                                                    </view>
+                                                    <view tag="2" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="SQP-ML-8dW" userLabel="微信">
+                                                        <rect key="frame" x="0.0" y="95" width="374" height="40"/>
+                                                        <subviews>
+                                                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="微信支付" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="I1W-Yg-7VA">
+                                                                <rect key="frame" x="30" y="12" width="48" height="17"/>
+                                                                <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                                <color key="textColor" red="0.30588235289999999" green="0.30588235289999999" blue="0.30588235289999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <nil key="highlightedColor"/>
+                                                            </label>
+                                                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="B9t-Fw-Xfq" userLabel="line">
+                                                                <rect key="frame" x="0.0" y="39" width="374" height="1"/>
+                                                                <color key="backgroundColor" red="0.84705882349999995" green="0.85882352939999995" blue="0.87058823529999996" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <constraints>
+                                                                    <constraint firstAttribute="height" constant="1" id="E5z-EV-AmJ"/>
+                                                                </constraints>
+                                                            </view>
+                                                            <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_choose_nor" translatesAutoresizingMaskIntoConstraints="NO" id="RK9-ZZ-KNx">
+                                                                <rect key="frame" x="329" y="12.5" width="15" height="15"/>
+                                                                <constraints>
+                                                                    <constraint firstAttribute="width" constant="15" id="CaA-Ht-9GE"/>
+                                                                    <constraint firstAttribute="height" constant="15" id="Let-ex-vMV"/>
+                                                                </constraints>
+                                                            </imageView>
+                                                        </subviews>
+                                                        <color key="backgroundColor" red="0.95686274510000002" green="0.96078431369999995" blue="0.96862745100000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        <constraints>
+                                                            <constraint firstItem="I1W-Yg-7VA" firstAttribute="top" secondItem="SQP-ML-8dW" secondAttribute="top" id="6Kz-Cu-2H6"/>
+                                                            <constraint firstAttribute="bottom" secondItem="B9t-Fw-Xfq" secondAttribute="bottom" id="8Pe-Nl-bDS"/>
+                                                            <constraint firstItem="B9t-Fw-Xfq" firstAttribute="leading" secondItem="I1W-Yg-7VA" secondAttribute="trailing" id="FFb-eI-WhB"/>
+                                                            <constraint firstItem="RK9-ZZ-KNx" firstAttribute="centerY" secondItem="SQP-ML-8dW" secondAttribute="centerY" id="Glr-Qk-jDv"/>
+                                                            <constraint firstItem="I1W-Yg-7VA" firstAttribute="leading" secondItem="SQP-ML-8dW" secondAttribute="leading" constant="30" id="JdO-uB-Pg6"/>
+                                                            <constraint firstItem="B9t-Fw-Xfq" firstAttribute="leading" secondItem="SQP-ML-8dW" secondAttribute="leading" id="JoY-h9-aCp"/>
+                                                            <constraint firstAttribute="bottom" secondItem="I1W-Yg-7VA" secondAttribute="bottom" id="LwS-F0-IaT"/>
+                                                            <constraint firstAttribute="height" constant="40" id="e48-qe-S93"/>
+                                                            <constraint firstAttribute="trailing" secondItem="RK9-ZZ-KNx" secondAttribute="trailing" constant="30" id="oa7-YE-qYE"/>
+                                                            <constraint firstItem="I1W-Yg-7VA" firstAttribute="centerY" secondItem="SQP-ML-8dW" secondAttribute="centerY" id="tOY-l3-6t4"/>
+                                                            <constraint firstAttribute="trailing" secondItem="B9t-Fw-Xfq" secondAttribute="trailing" id="xeI-uE-TZl"/>
+                                                        </constraints>
+                                                        <variation key="default">
+                                                            <mask key="constraints">
+                                                                <exclude reference="6Kz-Cu-2H6"/>
+                                                                <exclude reference="LwS-F0-IaT"/>
+                                                                <exclude reference="FFb-eI-WhB"/>
+                                                            </mask>
+                                                        </variation>
+                                                        <connections>
+                                                            <outletCollection property="gestureRecognizers" destination="b82-TH-poK" appends="YES" id="hYg-u1-Ab1"/>
+                                                        </connections>
                                                     </view>
                                                 </subviews>
                                                 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
                                                 <constraints>
                                                     <constraint firstItem="d3K-2Z-bMD" firstAttribute="leading" secondItem="Yux-Ro-p2d" secondAttribute="leading" id="4bm-GZ-rkF"/>
-                                                    <constraint firstAttribute="height" constant="95" id="CG5-Ai-UwP"/>
+                                                    <constraint firstItem="SQP-ML-8dW" firstAttribute="leading" secondItem="Yux-Ro-p2d" secondAttribute="leading" id="4y0-F0-46w"/>
+                                                    <constraint firstAttribute="height" constant="135" id="CG5-Ai-UwP"/>
+                                                    <constraint firstItem="0t9-CT-iWp" firstAttribute="top" secondItem="d3K-2Z-bMD" secondAttribute="bottom" id="Efi-PE-Kd7"/>
+                                                    <constraint firstItem="0t9-CT-iWp" firstAttribute="leading" secondItem="Yux-Ro-p2d" secondAttribute="leading" id="Mhy-fS-gKb"/>
                                                     <constraint firstItem="d3K-2Z-bMD" firstAttribute="top" secondItem="Yux-Ro-p2d" secondAttribute="top" id="QfR-4b-sNf"/>
+                                                    <constraint firstItem="SQP-ML-8dW" firstAttribute="top" secondItem="0t9-CT-iWp" secondAttribute="bottom" id="V0o-ol-vuj"/>
+                                                    <constraint firstAttribute="trailing" secondItem="0t9-CT-iWp" secondAttribute="trailing" id="aBZ-aN-Fmc"/>
+                                                    <constraint firstAttribute="trailing" secondItem="SQP-ML-8dW" secondAttribute="trailing" id="cti-BK-87R"/>
                                                     <constraint firstAttribute="trailing" secondItem="d3K-2Z-bMD" secondAttribute="trailing" id="gDq-ll-USd"/>
-                                                    <constraint firstItem="1ep-3i-rAZ" firstAttribute="leading" secondItem="Yux-Ro-p2d" secondAttribute="leading" id="lFv-Kv-G8N"/>
-                                                    <constraint firstItem="1ep-3i-rAZ" firstAttribute="top" secondItem="d3K-2Z-bMD" secondAttribute="bottom" id="o84-jd-8ls"/>
-                                                    <constraint firstAttribute="trailing" secondItem="1ep-3i-rAZ" secondAttribute="trailing" id="q6K-5w-m6s"/>
+                                                    <constraint firstItem="SQP-ML-8dW" firstAttribute="top" secondItem="0t9-CT-iWp" secondAttribute="bottom" id="mcO-O3-PsN"/>
                                                 </constraints>
                                             </view>
                                             <view hidden="YES" clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="p5p-5f-gFk" userLabel="清关信息">
-                                                <rect key="frame" x="0.0" y="240" width="374" height="0.0"/>
+                                                <rect key="frame" x="0.0" y="280" width="374" height="0.0"/>
                                                 <subviews>
                                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eN3-dd-3jc">
                                                         <rect key="frame" x="0.0" y="0.0" width="374" height="55"/>
@@ -815,13 +930,13 @@
                                                 </constraints>
                                             </view>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="配送方式" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Hsl-7w-xKW" userLabel="配送">
-                                                <rect key="frame" x="30" y="262" width="60" height="21"/>
+                                                <rect key="frame" x="30" y="302" width="60" height="21"/>
                                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
                                                 <color key="textColor" red="0.21960784310000001" green="0.21960784310000001" blue="0.21960784310000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 <nil key="highlightedColor"/>
                                             </label>
                                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BOf-h7-67C" userLabel="v配送">
-                                                <rect key="frame" x="0.0" y="295" width="374" height="39"/>
+                                                <rect key="frame" x="0.0" y="335" width="374" height="39"/>
                                                 <subviews>
                                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请选择配送方式" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pVN-aG-lfu">
                                                         <rect key="frame" x="30" y="11" width="314" height="17"/>
@@ -830,10 +945,10 @@
                                                         <nil key="highlightedColor"/>
                                                     </label>
                                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="NLd-j2-QfA">
-                                                        <rect key="frame" x="324" y="10" width="20" height="20"/>
+                                                        <rect key="frame" x="314" y="0.0" width="40" height="40"/>
                                                         <constraints>
-                                                            <constraint firstAttribute="height" constant="20" id="F64-dO-dOC"/>
-                                                            <constraint firstAttribute="width" constant="20" id="Nte-ol-YAV"/>
+                                                            <constraint firstAttribute="height" constant="40" id="F64-dO-dOC"/>
+                                                            <constraint firstAttribute="width" constant="40" id="Nte-ol-YAV"/>
                                                         </constraints>
                                                         <state key="normal" image="button_order_deit"/>
                                                         <connections>
@@ -847,18 +962,18 @@
                                                     <constraint firstAttribute="height" constant="39" id="Hyj-oK-dyN"/>
                                                     <constraint firstItem="pVN-aG-lfu" firstAttribute="leading" secondItem="BOf-h7-67C" secondAttribute="leading" constant="30" id="KYY-vC-ia0"/>
                                                     <constraint firstItem="NLd-j2-QfA" firstAttribute="centerY" secondItem="BOf-h7-67C" secondAttribute="centerY" id="RvI-H6-B6M"/>
-                                                    <constraint firstAttribute="trailing" secondItem="NLd-j2-QfA" secondAttribute="trailing" constant="30" id="ShM-Cx-tjp"/>
+                                                    <constraint firstAttribute="trailing" secondItem="NLd-j2-QfA" secondAttribute="trailing" constant="20" id="ShM-Cx-tjp"/>
                                                     <constraint firstAttribute="trailing" secondItem="pVN-aG-lfu" secondAttribute="trailing" constant="30" id="mp4-Bl-gsC"/>
                                                 </constraints>
                                             </view>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="礼品卡" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="meM-14-BFw" userLabel="礼品卡">
-                                                <rect key="frame" x="30" y="356" width="45" height="21"/>
+                                                <rect key="frame" x="30" y="396" width="45" height="21"/>
                                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
                                                 <color key="textColor" red="0.21960784310000001" green="0.21960784310000001" blue="0.21960784310000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 <nil key="highlightedColor"/>
                                             </label>
                                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3g3-iU-dSA" userLabel="v礼品卡">
-                                                <rect key="frame" x="0.0" y="389" width="374" height="39"/>
+                                                <rect key="frame" x="0.0" y="429" width="374" height="39"/>
                                                 <subviews>
                                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请输入礼品卡" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2lC-1w-Lfh">
                                                         <rect key="frame" x="30" y="11" width="314" height="17"/>
@@ -867,10 +982,10 @@
                                                         <nil key="highlightedColor"/>
                                                     </label>
                                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="KWz-4a-4cN">
-                                                        <rect key="frame" x="324" y="10" width="20" height="20"/>
+                                                        <rect key="frame" x="314" y="0.0" width="40" height="40"/>
                                                         <constraints>
-                                                            <constraint firstAttribute="height" constant="20" id="CfT-Ob-p0q"/>
-                                                            <constraint firstAttribute="width" constant="20" id="mVF-VS-Hor"/>
+                                                            <constraint firstAttribute="height" constant="40" id="CfT-Ob-p0q"/>
+                                                            <constraint firstAttribute="width" constant="40" id="mVF-VS-Hor"/>
                                                         </constraints>
                                                         <state key="normal" image="button_order_deit"/>
                                                         <connections>
@@ -882,46 +997,81 @@
                                                 <constraints>
                                                     <constraint firstAttribute="trailing" secondItem="2lC-1w-Lfh" secondAttribute="trailing" constant="30" id="4lR-e2-c0z"/>
                                                     <constraint firstItem="2lC-1w-Lfh" firstAttribute="leading" secondItem="3g3-iU-dSA" secondAttribute="leading" constant="30" id="XNK-em-UQ0"/>
-                                                    <constraint firstAttribute="trailing" secondItem="KWz-4a-4cN" secondAttribute="trailing" constant="30" id="gy6-mq-ZYR"/>
+                                                    <constraint firstAttribute="trailing" secondItem="KWz-4a-4cN" secondAttribute="trailing" constant="20" id="gy6-mq-ZYR"/>
                                                     <constraint firstAttribute="height" constant="39" id="oQy-B4-b7L"/>
                                                     <constraint firstItem="KWz-4a-4cN" firstAttribute="centerY" secondItem="3g3-iU-dSA" secondAttribute="centerY" id="s2P-bM-AOg"/>
                                                     <constraint firstItem="2lC-1w-Lfh" firstAttribute="centerY" secondItem="3g3-iU-dSA" secondAttribute="centerY" id="x7E-Dd-tDj"/>
                                                 </constraints>
                                             </view>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠码" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="LpT-uQ-5JS" userLabel="优惠码">
-                                                <rect key="frame" x="30" y="450" width="45" height="21"/>
+                                                <rect key="frame" x="30" y="490" width="45" height="21"/>
                                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
                                                 <color key="textColor" red="0.21960784310000001" green="0.21960784310000001" blue="0.21960784310000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 <nil key="highlightedColor"/>
                                             </label>
                                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Wga-vh-5gr" userLabel="v优惠码">
-                                                <rect key="frame" x="0.0" y="483" width="374" height="39"/>
+                                                <rect key="frame" x="0.0" y="523" width="374" height="39"/>
                                                 <subviews>
-                                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请输入优惠码" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7E5-kf-ON8">
-                                                        <rect key="frame" x="30" y="11" width="314" height="17"/>
+                                                    <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入优惠码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="O0I-6i-BPd">
+                                                        <rect key="frame" x="30" y="10.5" width="244" height="17"/>
+                                                        <nil key="textColor"/>
                                                         <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
-                                                        <color key="textColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                                        <nil key="highlightedColor"/>
-                                                    </label>
+                                                        <textInputTraits key="textInputTraits"/>
+                                                        <connections>
+                                                            <outlet property="delegate" destination="96G-49-ueh" id="YL6-b9-2HH"/>
+                                                        </connections>
+                                                    </textField>
+                                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Njp-Tr-7rt">
+                                                        <rect key="frame" x="314" y="-0.5" width="40" height="40"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" constant="40" id="J6y-02-BFY"/>
+                                                            <constraint firstAttribute="height" constant="40" id="twm-DT-q22"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="完成">
+                                                            <color key="titleColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="calibratedRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickDiscountConfirm:" destination="96G-49-ueh" eventType="touchUpInside" id="1db-hb-XV4"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="irm-07-UsY">
+                                                        <rect key="frame" x="274" y="-1" width="40" height="40"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="height" constant="40" id="htz-1Y-hwa"/>
+                                                            <constraint firstAttribute="width" constant="40" id="lTf-HK-V7k"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="取消">
+                                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="calibratedRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickDiscountCancel:" destination="96G-49-ueh" eventType="touchUpInside" id="Pqo-di-Qga"/>
+                                                        </connections>
+                                                    </button>
                                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="DwA-xG-fhn">
-                                                        <rect key="frame" x="324" y="10" width="20" height="20"/>
+                                                        <rect key="frame" x="314" y="0.0" width="40" height="40"/>
                                                         <constraints>
-                                                            <constraint firstAttribute="height" constant="20" id="0d1-DV-KQv"/>
-                                                            <constraint firstAttribute="width" constant="20" id="57c-D7-820"/>
+                                                            <constraint firstAttribute="height" constant="40" id="0d1-DV-KQv"/>
+                                                            <constraint firstAttribute="width" constant="40" id="57c-D7-820"/>
                                                         </constraints>
                                                         <state key="normal" image="button_order_deit"/>
                                                         <connections>
-                                                            <outletCollection property="gestureRecognizers" destination="MUf-e4-Ltu" appends="YES" id="jST-yg-832"/>
+                                                            <action selector="onClickDiscount:" destination="96G-49-ueh" eventType="touchUpInside" id="OrH-Dt-0De"/>
                                                         </connections>
                                                     </button>
                                                 </subviews>
                                                 <color key="backgroundColor" red="0.95686274510000002" green="0.96078431369999995" blue="0.96862745100000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 <constraints>
-                                                    <constraint firstItem="7E5-kf-ON8" firstAttribute="centerY" secondItem="Wga-vh-5gr" secondAttribute="centerY" id="PJU-bd-Lyn"/>
+                                                    <constraint firstAttribute="trailing" secondItem="Njp-Tr-7rt" secondAttribute="trailing" constant="20" id="CNZ-PQ-GSw"/>
+                                                    <constraint firstItem="DwA-xG-fhn" firstAttribute="leading" secondItem="irm-07-UsY" secondAttribute="trailing" id="LnR-fb-4Jf"/>
+                                                    <constraint firstItem="irm-07-UsY" firstAttribute="leading" secondItem="O0I-6i-BPd" secondAttribute="trailing" id="TlB-73-EAo"/>
+                                                    <constraint firstItem="O0I-6i-BPd" firstAttribute="centerY" secondItem="Wga-vh-5gr" secondAttribute="centerY" id="WD2-Fv-zwU"/>
+                                                    <constraint firstItem="irm-07-UsY" firstAttribute="centerY" secondItem="Wga-vh-5gr" secondAttribute="centerY" id="ZUz-4c-cf3"/>
+                                                    <constraint firstItem="O0I-6i-BPd" firstAttribute="leading" secondItem="Wga-vh-5gr" secondAttribute="leading" constant="30" id="eZz-Gc-bK7"/>
                                                     <constraint firstAttribute="height" constant="39" id="fHQ-Qe-3sb"/>
-                                                    <constraint firstAttribute="trailing" secondItem="7E5-kf-ON8" secondAttribute="trailing" constant="30" id="jM4-tK-eJX"/>
-                                                    <constraint firstItem="7E5-kf-ON8" firstAttribute="leading" secondItem="Wga-vh-5gr" secondAttribute="leading" constant="30" id="mVC-1p-d0G"/>
-                                                    <constraint firstAttribute="trailing" secondItem="DwA-xG-fhn" secondAttribute="trailing" constant="30" id="nUl-Ff-lDa"/>
+                                                    <constraint firstItem="Njp-Tr-7rt" firstAttribute="centerY" secondItem="Wga-vh-5gr" secondAttribute="centerY" id="giA-jB-9Dz"/>
+                                                    <constraint firstAttribute="trailing" secondItem="DwA-xG-fhn" secondAttribute="trailing" constant="20" id="nUl-Ff-lDa"/>
                                                     <constraint firstItem="DwA-xG-fhn" firstAttribute="centerY" secondItem="Wga-vh-5gr" secondAttribute="centerY" id="neD-uc-tQc"/>
                                                 </constraints>
                                             </view>
@@ -977,7 +1127,7 @@
                                 <rect key="frame" x="0.0" y="549" width="375" height="118"/>
                                 <subviews>
                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0.00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fdr-W0-QCc">
-                                        <rect key="frame" x="157.5" y="15" width="60.5" height="28"/>
+                                        <rect key="frame" x="158" y="15" width="60" height="28"/>
                                         <fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="20"/>
                                         <color key="textColor" red="0.94509803920000002" green="0.57254901960000004" blue="0.60392156860000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
@@ -1033,20 +1183,25 @@
                         </constraints>
                     </view>
                     <connections>
+                        <outlet property="btnDiscountCancel" destination="irm-07-UsY" id="cdU-Gk-Asv"/>
+                        <outlet property="btnDiscountConfirm" destination="Njp-Tr-7rt" id="frr-7T-Bpb"/>
+                        <outlet property="btnDiscountEdit" destination="DwA-xG-fhn" id="GpC-ph-2b3"/>
                         <outlet property="heightCustomsClearance" destination="s99-VF-fm4" id="5e1-GB-6Ei"/>
                         <outlet property="heightPayType" destination="CG5-Ai-UwP" id="QPf-PX-6P9"/>
+                        <outlet property="ivAliPay" destination="qA8-Up-cG8" id="3Yp-Zb-XO6"/>
+                        <outlet property="ivWechatPay" destination="RK9-ZZ-KNx" id="Uxo-Pt-8fR"/>
                         <outlet property="lbAddress" destination="z0p-CX-h3t" id="Imu-6N-5GL"/>
                         <outlet property="lbAddressDetail" destination="pnS-J7-TEY" id="kvk-bc-pgl"/>
                         <outlet property="lbCustomsClearance" destination="n4b-gy-dbB" id="gCj-lc-dpW"/>
-                        <outlet property="lbDiscount" destination="7E5-kf-ON8" id="fYS-Bf-nSI"/>
                         <outlet property="lbGiftCard" destination="2lC-1w-Lfh" id="qgB-lu-d2a"/>
                         <outlet property="lbName" destination="DOa-mI-Adp" id="dCI-ct-wcu"/>
                         <outlet property="lbNoAddress" destination="jrD-RP-Kug" id="2gr-hq-IA1"/>
-                        <outlet property="lbPayType" destination="Fr9-gU-u2X" id="951-Bu-erP"/>
                         <outlet property="lbPhone" destination="XAZ-es-XbK" id="3xN-ic-WmI"/>
                         <outlet property="lbShippingRate" destination="pVN-aG-lfu" id="YuB-rr-DOP"/>
                         <outlet property="lbTotalPrice" destination="fdr-W0-QCc" id="Cfi-P2-B3O"/>
+                        <outlet property="marginTopContent" destination="58G-Ar-blr" id="0hg-Y4-Ske"/>
                         <outlet property="submit" destination="vT5-Az-K57" id="fwS-UU-AZ4"/>
+                        <outlet property="tfDiscount" destination="O0I-6i-BPd" id="d3J-D9-wvt"/>
                         <outlet property="vAddressHeight" destination="zO1-RN-x44" id="VIC-wQ-AuJ"/>
                         <outlet property="vHasAddress" destination="gba-z6-T82" id="syf-hx-7rS"/>
                         <outlet property="vPayType" destination="Yux-Ro-p2d" id="qih-Ka-xDX"/>
@@ -1063,14 +1218,14 @@
                         <action selector="onClickShipping:" destination="96G-49-ueh" id="8Ur-cr-PfF"/>
                     </connections>
                 </tapGestureRecognizer>
-                <tapGestureRecognizer id="aLt-AM-zGa" userLabel="tapPayType">
+                <tapGestureRecognizer id="aLt-AM-zGa" userLabel="tapPayTypeAliPay">
                     <connections>
                         <action selector="onClickPayType:" destination="96G-49-ueh" id="OBE-n5-6xG"/>
                     </connections>
                 </tapGestureRecognizer>
-                <tapGestureRecognizer id="MUf-e4-Ltu" userLabel="tapDiscount">
+                <tapGestureRecognizer id="b82-TH-poK" userLabel="tapPayTypeWechatPay">
                     <connections>
-                        <action selector="onClickDiscount:" destination="96G-49-ueh" id="wVf-be-zPi"/>
+                        <action selector="onClickPayType:" destination="96G-49-ueh" id="xdY-Ft-jR3"/>
                     </connections>
                 </tapGestureRecognizer>
                 <tapGestureRecognizer id="HXT-5x-KhM" userLabel="tapGiftCard">
@@ -1645,71 +1800,122 @@
                         <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="puG-Vo-gdd">
-                                <rect key="frame" x="0.0" y="224" width="375" height="220"/>
+                            <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Vg2-sq-isc">
+                                <rect key="frame" x="0.0" y="21" width="375" height="646"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="你可能关心的问题" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="T4V-4O-WbC">
-                                        <rect key="frame" x="128" y="0.0" width="120" height="21"/>
-                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
-                                        <color key="textColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                        <nil key="highlightedColor"/>
-                                    </label>
-                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3MF-En-1mW">
-                                        <rect key="frame" x="133" y="55" width="110" height="26"/>
-                                        <constraints>
-                                            <constraint firstAttribute="width" constant="110" id="ngO-1H-8Oy"/>
-                                            <constraint firstAttribute="height" constant="26" id="vQh-S3-96L"/>
-                                        </constraints>
-                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
-                                        <state key="normal" title="何时发货?">
-                                            <color key="titleColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                        </state>
-                                        <connections>
-                                            <action selector="onClickStartTime:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="LUl-BL-Q02"/>
-                                        </connections>
-                                    </button>
-                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3iW-9e-nhE">
-                                        <rect key="frame" x="133" y="116" width="110" height="26"/>
-                                        <constraints>
-                                            <constraint firstAttribute="width" constant="110" id="1k1-DN-dRt"/>
-                                            <constraint firstAttribute="height" constant="26" id="wAk-Pf-BA3"/>
-                                        </constraints>
-                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
-                                        <state key="normal" title="多久到货?">
-                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                        </state>
-                                        <connections>
-                                            <action selector="onClickGetTime:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="27h-gg-ltV"/>
-                                        </connections>
-                                    </button>
-                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3ni-BC-6WW">
-                                        <rect key="frame" x="132" y="177" width="110" height="26"/>
+                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="asp-5G-J9r" userLabel="content">
+                                        <rect key="frame" x="0.0" y="0.0" width="374" height="590"/>
+                                        <subviews>
+                                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="puG-Vo-gdd" userLabel="v问题">
+                                                <rect key="frame" x="0.0" y="40" width="374" height="280"/>
+                                                <subviews>
+                                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="你可能关心的问题" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="T4V-4O-WbC">
+                                                        <rect key="frame" x="127" y="0.0" width="120" height="21"/>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
+                                                        <color key="textColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        <nil key="highlightedColor"/>
+                                                    </label>
+                                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3MF-En-1mW">
+                                                        <rect key="frame" x="132" y="55" width="110" height="26"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" constant="110" id="ngO-1H-8Oy"/>
+                                                            <constraint firstAttribute="height" constant="26" id="vQh-S3-96L"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="何时发货?">
+                                                            <color key="titleColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickStartTime:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="LUl-BL-Q02"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3iW-9e-nhE">
+                                                        <rect key="frame" x="132" y="116" width="110" height="26"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" constant="110" id="1k1-DN-dRt"/>
+                                                            <constraint firstAttribute="height" constant="26" id="wAk-Pf-BA3"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="多久到货?">
+                                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickGetTime:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="27h-gg-ltV"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3ni-BC-6WW">
+                                                        <rect key="frame" x="132" y="177" width="110" height="26"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" constant="110" id="N0D-kQ-eGq"/>
+                                                            <constraint firstAttribute="height" constant="26" id="lwv-mc-6ZC"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="订单详情">
+                                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickMyOrder:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="xb3-78-doh"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fNK-il-q71">
+                                                        <rect key="frame" x="132" y="238" width="110" height="26"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="height" constant="26" id="FMN-fV-IvB"/>
+                                                            <constraint firstAttribute="width" constant="110" id="SCu-i5-Gin"/>
+                                                        </constraints>
+                                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
+                                                        <state key="normal" title="回到首页">
+                                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                        </state>
+                                                        <connections>
+                                                            <action selector="onClickBackHome:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="nJt-ar-Muw"/>
+                                                            <action selector="onClickMyOrder:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="uSs-kA-v6D"/>
+                                                        </connections>
+                                                    </button>
+                                                </subviews>
+                                                <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                <constraints>
+                                                    <constraint firstItem="fNK-il-q71" firstAttribute="top" secondItem="3ni-BC-6WW" secondAttribute="bottom" constant="35" id="7PG-pn-epx"/>
+                                                    <constraint firstItem="T4V-4O-WbC" firstAttribute="top" secondItem="puG-Vo-gdd" secondAttribute="top" id="9GE-TI-UPB"/>
+                                                    <constraint firstItem="3iW-9e-nhE" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="BfY-sE-5kb"/>
+                                                    <constraint firstItem="3ni-BC-6WW" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="CqI-1L-ERJ"/>
+                                                    <constraint firstItem="3ni-BC-6WW" firstAttribute="top" secondItem="3iW-9e-nhE" secondAttribute="bottom" constant="35" id="ISt-z3-thL"/>
+                                                    <constraint firstItem="T4V-4O-WbC" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="MvE-KT-EgQ"/>
+                                                    <constraint firstAttribute="height" constant="280" id="Wbe-Fv-YHk"/>
+                                                    <constraint firstItem="3MF-En-1mW" firstAttribute="top" secondItem="T4V-4O-WbC" secondAttribute="bottom" constant="34" id="b1r-Lb-cP7"/>
+                                                    <constraint firstItem="fNK-il-q71" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="q00-Io-iy1"/>
+                                                    <constraint firstItem="3MF-En-1mW" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="sVI-Au-PtI"/>
+                                                    <constraint firstItem="3iW-9e-nhE" firstAttribute="top" secondItem="3MF-En-1mW" secondAttribute="bottom" constant="35" id="wpN-Nc-3yi"/>
+                                                </constraints>
+                                            </view>
+                                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="KyD-KF-VLd" customClass="KWMRecommendView">
+                                                <rect key="frame" x="0.0" y="360" width="374" height="230"/>
+                                                <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                                <constraints>
+                                                    <constraint firstAttribute="height" constant="230" id="fpi-jA-eUC"/>
+                                                </constraints>
+                                            </view>
+                                        </subviews>
+                                        <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
                                         <constraints>
-                                            <constraint firstAttribute="width" constant="110" id="N0D-kQ-eGq"/>
-                                            <constraint firstAttribute="height" constant="26" id="lwv-mc-6ZC"/>
+                                            <constraint firstItem="puG-Vo-gdd" firstAttribute="leading" secondItem="asp-5G-J9r" secondAttribute="leading" id="3cZ-HG-Ae3"/>
+                                            <constraint firstAttribute="trailing" secondItem="puG-Vo-gdd" secondAttribute="trailing" id="Q6a-qa-Zid"/>
+                                            <constraint firstAttribute="trailing" secondItem="KyD-KF-VLd" secondAttribute="trailing" id="TKa-Z3-aMl"/>
+                                            <constraint firstItem="puG-Vo-gdd" firstAttribute="top" secondItem="asp-5G-J9r" secondAttribute="top" constant="40" id="UWA-jM-RoS"/>
+                                            <constraint firstItem="KyD-KF-VLd" firstAttribute="top" secondItem="puG-Vo-gdd" secondAttribute="bottom" constant="40" id="X5n-dC-MDG"/>
+                                            <constraint firstAttribute="bottom" secondItem="KyD-KF-VLd" secondAttribute="bottom" id="h1u-Yg-y2E"/>
+                                            <constraint firstItem="KyD-KF-VLd" firstAttribute="leading" secondItem="asp-5G-J9r" secondAttribute="leading" id="rpW-9h-J3l"/>
                                         </constraints>
-                                        <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="12"/>
-                                        <state key="normal" title="订单详情">
-                                            <color key="titleColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                                        </state>
-                                        <connections>
-                                            <action selector="onClickMyOrder:" destination="iFV-ZT-0zX" eventType="touchUpInside" id="xb3-78-doh"/>
-                                        </connections>
-                                    </button>
+                                    </view>
                                 </subviews>
-                                <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstItem="T4V-4O-WbC" firstAttribute="top" secondItem="puG-Vo-gdd" secondAttribute="top" id="9GE-TI-UPB"/>
-                                    <constraint firstItem="3iW-9e-nhE" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="BfY-sE-5kb"/>
-                                    <constraint firstItem="3ni-BC-6WW" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="CqI-1L-ERJ"/>
-                                    <constraint firstItem="3ni-BC-6WW" firstAttribute="top" secondItem="3iW-9e-nhE" secondAttribute="bottom" constant="35" id="ISt-z3-thL"/>
-                                    <constraint firstItem="T4V-4O-WbC" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="MvE-KT-EgQ"/>
-                                    <constraint firstAttribute="height" constant="220" id="Wbe-Fv-YHk"/>
-                                    <constraint firstItem="3MF-En-1mW" firstAttribute="top" secondItem="T4V-4O-WbC" secondAttribute="bottom" constant="34" id="b1r-Lb-cP7"/>
-                                    <constraint firstItem="3MF-En-1mW" firstAttribute="centerX" secondItem="puG-Vo-gdd" secondAttribute="centerX" id="sVI-Au-PtI"/>
-                                    <constraint firstItem="3iW-9e-nhE" firstAttribute="top" secondItem="3MF-En-1mW" secondAttribute="bottom" constant="35" id="wpN-Nc-3yi"/>
+                                    <constraint firstItem="asp-5G-J9r" firstAttribute="top" secondItem="Vg2-sq-isc" secondAttribute="top" id="86m-7i-o0y"/>
+                                    <constraint firstItem="asp-5G-J9r" firstAttribute="leading" secondItem="Vg2-sq-isc" secondAttribute="leading" id="8HP-Wl-9WR"/>
+                                    <constraint firstAttribute="bottom" secondItem="asp-5G-J9r" secondAttribute="bottom" id="PwH-Gz-lVj"/>
+                                    <constraint firstItem="asp-5G-J9r" firstAttribute="centerX" secondItem="Vg2-sq-isc" secondAttribute="centerX" id="QP0-po-uma"/>
+                                    <constraint firstAttribute="trailing" secondItem="asp-5G-J9r" secondAttribute="trailing" id="mtu-ZZ-alZ"/>
                                 </constraints>
-                            </view>
+                            </scrollView>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Uhy-T8-YZe" userLabel="line">
                                 <rect key="frame" x="0.0" y="20" width="375" height="1"/>
                                 <color key="backgroundColor" red="0.84705882349999995" green="0.85882352939999995" blue="0.87058823529999996" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
@@ -1720,18 +1926,21 @@
                         </subviews>
                         <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <constraints>
+                            <constraint firstAttribute="trailing" secondItem="Vg2-sq-isc" secondAttribute="trailing" id="13T-Vu-o9g"/>
                             <constraint firstItem="Uhy-T8-YZe" firstAttribute="leading" secondItem="5n2-NO-agg" secondAttribute="leading" id="Hzx-cg-lJT"/>
                             <constraint firstItem="Uhy-T8-YZe" firstAttribute="top" secondItem="bus-kZ-rMS" secondAttribute="bottom" id="Jg5-zg-Owf"/>
-                            <constraint firstItem="puG-Vo-gdd" firstAttribute="centerY" secondItem="5n2-NO-agg" secondAttribute="centerY" id="KgV-l8-J2b"/>
-                            <constraint firstItem="puG-Vo-gdd" firstAttribute="leading" secondItem="5n2-NO-agg" secondAttribute="leading" id="Spz-wt-OBe"/>
-                            <constraint firstAttribute="trailing" secondItem="puG-Vo-gdd" secondAttribute="trailing" id="q6n-YR-4Ml"/>
+                            <constraint firstAttribute="bottom" secondItem="Vg2-sq-isc" secondAttribute="bottom" id="WRl-sF-3Xz"/>
+                            <constraint firstItem="Vg2-sq-isc" firstAttribute="top" secondItem="Uhy-T8-YZe" secondAttribute="bottom" id="ZwH-wl-xI8"/>
+                            <constraint firstItem="Vg2-sq-isc" firstAttribute="leading" secondItem="5n2-NO-agg" secondAttribute="leading" id="bqS-H0-RwW"/>
                             <constraint firstAttribute="trailing" secondItem="Uhy-T8-YZe" secondAttribute="trailing" id="sou-hm-27J"/>
                         </constraints>
                     </view>
                     <connections>
+                        <outlet property="btnBackHome" destination="fNK-il-q71" id="iQP-jZ-9kq"/>
                         <outlet property="btnGetTime" destination="3iW-9e-nhE" id="gtS-q7-tMn"/>
                         <outlet property="btnMyOrder" destination="3ni-BC-6WW" id="FAR-6k-c7A"/>
                         <outlet property="btnStartTime" destination="3MF-En-1mW" id="G5E-nK-0vG"/>
+                        <outlet property="hotRecommendView" destination="KyD-KF-VLd" id="OZG-7l-fs1"/>
                     </connections>
                 </viewController>
                 <placeholder placeholderIdentifier="IBFirstResponder" id="q8Y-cR-r5c" userLabel="First Responder" sceneMemberID="firstResponder"/>
@@ -1751,7 +1960,7 @@
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="line" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="1AJ-qv-ehg">
-                                <rect key="frame" x="78" y="74" width="220" height="37"/>
+                                <rect key="frame" x="77.5" y="74" width="220" height="37"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="220" id="lZz-tj-gMK"/>
                                     <constraint firstAttribute="height" constant="37" id="ysz-YY-djj"/>
@@ -1760,7 +1969,7 @@
                                 <textInputTraits key="textInputTraits"/>
                             </textField>
                             <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mlf-Ho-Tnf">
-                                <rect key="frame" x="303" y="73" width="37" height="37"/>
+                                <rect key="frame" x="302.5" y="73" width="37" height="37"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="37" id="HQR-0I-BIh"/>
                                     <constraint firstAttribute="width" constant="37" id="POV-7x-eGi"/>
@@ -1771,13 +1980,13 @@
                                 </connections>
                             </button>
                             <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="100元抵用" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AbL-PF-Lqf">
-                                <rect key="frame" x="153" y="131" width="70" height="21"/>
+                                <rect key="frame" x="152.5" y="131" width="70" height="21"/>
                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
                                 <color key="textColor" red="0.94509803921568625" green="0.5725490196078431" blue="0.60392156862745094" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠券不存在" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0BL-mf-31s">
-                                <rect key="frame" x="142" y="131" width="92" height="18"/>
+                                <rect key="frame" x="141.5" y="131" width="92" height="18"/>
                                 <fontDescription key="fontDescription" type="system" pointSize="15"/>
                                 <color key="textColor" red="0.22352941176470587" green="0.22352941176470587" blue="0.22352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
@@ -2003,7 +2212,7 @@
                                 </connections>
                             </webView>
                             <activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="Elh-Ku-4Mx">
-                                <rect key="frame" x="178" y="324" width="20" height="20"/>
+                                <rect key="frame" x="177.5" y="323.5" width="20" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="EUz-TN-Y66"/>
                                     <constraint firstAttribute="width" constant="20" id="dNY-fj-HIa"/>
@@ -2050,7 +2259,7 @@
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="line" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="1OO-h3-X4P">
-                                <rect key="frame" x="78" y="74" width="220" height="37"/>
+                                <rect key="frame" x="77.5" y="74" width="220" height="37"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="220" id="2eS-Fa-mYH"/>
                                     <constraint firstAttribute="height" constant="37" id="VOn-5o-BXi"/>
@@ -2059,7 +2268,7 @@
                                 <textInputTraits key="textInputTraits"/>
                             </textField>
                             <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MPg-VK-2Ep">
-                                <rect key="frame" x="303" y="73" width="37" height="37"/>
+                                <rect key="frame" x="302.5" y="73" width="37" height="37"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="37" id="xBG-yL-E4m"/>
                                     <constraint firstAttribute="height" constant="37" id="xfy-2l-93L"/>
@@ -2070,13 +2279,13 @@
                                 </connections>
                             </button>
                             <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="100元抵用" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="aPW-gB-Qu6">
-                                <rect key="frame" x="153" y="131" width="70" height="21"/>
+                                <rect key="frame" x="152.5" y="131" width="70" height="21"/>
                                 <fontDescription key="fontDescription" name="PingFangSC-Regular" family="PingFang SC" pointSize="15"/>
                                 <color key="textColor" red="0.94509803920000002" green="0.57254901960000004" blue="0.60392156860000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠券不存在" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="SBw-MX-isC">
-                                <rect key="frame" x="142" y="131" width="92" height="18"/>
+                                <rect key="frame" x="141.5" y="131" width="92" height="18"/>
                                 <fontDescription key="fontDescription" type="system" pointSize="15"/>
                                 <color key="textColor" red="0.22352941179999999" green="0.22352941179999999" blue="0.22352941179999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
@@ -2314,6 +2523,8 @@
     <resources>
         <image name="btn_login_captcha wrong_del" width="28" height="23"/>
         <image name="button_order_deit" width="12" height="13"/>
+        <image name="ic_choose_nor" width="22" height="22"/>
+        <image name="ic_choose_sel" width="22" height="22"/>
         <image name="ic_count_bg" width="100" height="25"/>
         <image name="ic_pay_AliPay" width="18" height="18"/>
         <image name="ic_pay_WeChat" width="20" height="17"/>
diff --git a/iCemarose/Class/Util/KWMPPCacheUtil.h b/iCemarose/Class/Util/KWMPPCacheUtil.h
index 5e6d3ed..8a11825 100644
--- a/iCemarose/Class/Util/KWMPPCacheUtil.h
+++ b/iCemarose/Class/Util/KWMPPCacheUtil.h
@@ -20,6 +20,11 @@
                                     tags:(nullable NSArray <NSString *> *)tags
                             inCollection:(nullable NSNumber *)collectionId;
 
+//初始化缓存parameters key
++ (NSDictionary *)getProductCacheKeyDictionary:(NSUInteger)page
+                                          tags:(nullable NSArray <NSString *> *)tags
+                                        handle:(nullable NSString *)handle;
+
 + (void)saveDataToCache:(NSDictionary *)cacheKeyDictionary urlKey:(NSString *)urlKey products:(NSArray *)products;
 
 + (NSArray *)getProductDataByCache:(NSDictionary *)cacheKeyDictionary urlKey:(NSString *)urlKey;
diff --git a/iCemarose/Class/Util/KWMPPCacheUtil.m b/iCemarose/Class/Util/KWMPPCacheUtil.m
index 544b73b..ee094b2 100644
--- a/iCemarose/Class/Util/KWMPPCacheUtil.m
+++ b/iCemarose/Class/Util/KWMPPCacheUtil.m
@@ -33,6 +33,23 @@
     return params;
 }
 
+//初始化缓存parameters key
++ (NSDictionary *)getProductCacheKeyDictionary:(NSUInteger)page
+                                          tags:(nullable NSArray <NSString *> *)tags
+                                        handle:(nullable NSString *)handle{
+    NSMutableDictionary *params = @{
+//                                    @"limit"         : @(self.client.pageSize),
+                                    @"page"          : @(page)
+                                    }.mutableCopy;
+    if (tags) {
+        params[@"tag"] = [tags componentsJoinedByString:@","];
+    }
+    if (handle) {
+        params[@"handle"] = handle;
+    }
+    return params;
+}
+
 
 + (void)saveDataToCache:(NSDictionary *)cacheKeyDictionary urlKey:(NSString *)urlKey products:(NSArray *)products{
     NSMutableArray *dictArray = [NSMutableArray array];
diff --git a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.h b/iCemarose/Class/View/KWMRecommendView.h
similarity index 76%
rename from iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.h
rename to iCemarose/Class/View/KWMRecommendView.h
index 07a9541..75f240e 100644
--- a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.h
+++ b/iCemarose/Class/View/KWMRecommendView.h
@@ -8,15 +8,16 @@
 
 #import <UIKit/UIKit.h>
 #import <Buy/Buy.h>
+@class KWMRecommendView;
 
 @protocol KWMRecommendDelegate <NSObject>
 
 - (void)kwm_onClickProduct:(BUYProduct *)product;
 
-- (void)kwm_gotoRecommendPage;
+- (void)kwm_gotoRecommendPage:(KWMRecommendView *)recommendView;
 
 @end
-@interface KWMRecommendHeader : UIView<UICollectionViewDataSource,UICollectionViewDelegate>
+@interface KWMRecommendView : UIView<UICollectionViewDataSource,UICollectionViewDelegate>
 
 + (NSString *)kwmTag;
 
@@ -24,4 +25,9 @@
 
 @property(nonatomic) NSArray *productArray;
 
+@property(nonatomic) NSString *title;
+
+//已购买商品,用于去重
+@property(nonatomic) NSArray *boughtProductIdArray;
+
 @end
diff --git a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.m b/iCemarose/Class/View/KWMRecommendView.m
similarity index 78%
rename from iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.m
rename to iCemarose/Class/View/KWMRecommendView.m
index aab520c..62823db 100644
--- a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.m
+++ b/iCemarose/Class/View/KWMRecommendView.m
@@ -6,21 +6,23 @@
 //  Copyright © 2017年 kollway. All rights reserved.
 //
 
-#import "KWMRecommendHeader.h"
+#import "KWMRecommendView.h"
 #import "KWMCollectionCell.h"
 
-@interface KWMRecommendHeader()
+@interface KWMRecommendView()
 
 @property (nonatomic,weak) IBOutlet UIView *vView;
 
 @property (nonatomic,weak) IBOutlet UICollectionView *cvRecommend;
 
+@property (nonatomic,weak) IBOutlet UILabel *lbTitle;
+
 @end
 
-@implementation KWMRecommendHeader
+@implementation KWMRecommendView
 
 +(NSString *)kwmTag{
-    return @"KWMRecommendHeader";
+    return @"KWMRecommendView";
 }
 
 - (id)init{
@@ -68,11 +70,33 @@
     self.cvRecommend.collectionViewLayout = layout;
 }
 
+-(void)setTitle:(NSString *)title{
+    _title = title;
+    if(self.lbTitle){
+        [self.lbTitle setText:title];
+    }
+}
+
 -(void)setProductArray:(NSArray *)productArray{
     _productArray = productArray;
+    [self removeSameProduct];
     [self.cvRecommend reloadData];
 }
 
+-(void)setBoughtProductIdArray:(NSArray *)boughtProductIdArray{
+    _boughtProductIdArray = boughtProductIdArray;
+    [self removeSameProduct];
+    [self.cvRecommend reloadData];
+}
+
+-(void)removeSameProduct{
+    if(self.productArray && self.boughtProductIdArray){
+        _productArray = [self.productArray rx_filterWithBlock:^BOOL(BUYProduct *each){
+            return (![self.boughtProductIdArray containsObject:each.identifier]);
+        }];
+    }
+}
+
 #pragma mark - UICollectionViewDataSource
 -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
     KWMCollectionCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([KWMCollectionCell class]) forIndexPath:indexPath];
@@ -93,17 +117,26 @@
 }
 
 -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
-    if(self.productArray && self.productArray.count > 9){
+    NSInteger productCount = self.productArray?self.productArray.count:0;
+    NSInteger boughtCount = self.boughtProductIdArray?self.boughtProductIdArray.count:0;
+    if(productCount > 9){
         return 10;
     }
+    if(productCount + boughtCount > 9){
+        return productCount+1;
+    }
     return self.productArray?self.productArray.count:0;
 }
 
 -(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
     [collectionView deselectItemAtIndexPath:indexPath animated:YES];
-    if(indexPath.row == 9){
+    NSInteger productCount = self.productArray?self.productArray.count:0;
+    NSInteger boughtCount = self.boughtProductIdArray?self.boughtProductIdArray.count:0;
+    BOOL hasMore = (productCount > 9) || (productCount + boughtCount > 9);
+    if([self collectionView:self.cvRecommend numberOfItemsInSection:0] == indexPath.row + 1
+       && hasMore){
         if(self.delegate){
-            [self.delegate kwm_gotoRecommendPage];
+            [self.delegate kwm_gotoRecommendPage:self];
         }
     }else{
         BUYProduct *product = [self.productArray objectAtIndex:indexPath.row];
diff --git a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.xib b/iCemarose/Class/View/KWMRecommendView.xib
similarity index 90%
rename from iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.xib
rename to iCemarose/Class/View/KWMRecommendView.xib
index fbf0627..c4957e1 100644
--- a/iCemarose/Class/UI/NewHome/Cell/KWMRecommendHeader.xib
+++ b/iCemarose/Class/View/KWMRecommendView.xib
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
     <device id="retina4_7" orientation="portrait">
         <adaptation id="fullscreen"/>
     </device>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <customFonts key="customFonts">
@@ -14,9 +14,10 @@
         </array>
     </customFonts>
     <objects>
-        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="KWMRecommendHeader">
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="KWMRecommendView">
             <connections>
                 <outlet property="cvRecommend" destination="YkQ-i0-Pi8" id="k1I-3x-9pe"/>
+                <outlet property="lbTitle" destination="7Fq-VX-XvA" id="643-OU-gbL"/>
                 <outlet property="vView" destination="iN0-l3-epB" id="4mj-ET-3eS"/>
             </connections>
         </placeholder>