Ver código fonte

1.0测试版本支持8.0系统

Bob 6 anos atrás
pai
commit
456349d476
53 arquivos alterados com 3186 adições e 3380 exclusões
  1. 4 4
      HappyJob/HappyJob.xcodeproj/project.pbxproj
  2. BIN
      HappyJob/HappyJob.xcworkspace/xcuserdata/Bob.xcuserdatad/UserInterfaceState.xcuserstate
  3. 11 5
      HappyJob/HappyJob/Base.lproj/Main.storyboard
  4. 6 0
      HappyJob/HappyJob/DataCenter/Model/Position/HJPositionModel.h
  5. 47 21
      HappyJob/HappyJob/JobList_工作列表信息/FullTime_全职工作/HJFullTimeDetailViewController.m
  6. 3 3
      HappyJob/HappyJob/JobList_工作列表信息/HJPositionDataBox.m
  7. 27 6
      HappyJob/HappyJob/JobList_工作列表信息/PositionDetail_岗位详情/PositionDetailAPIManager/HJPositionDetailDataBox.m
  8. 22 11
      HappyJob/HappyJob/Join_拼工/HJJoinDetailViewController.m
  9. 13 14
      HappyJob/HappyJob/Login_登录/HJLoginBindingPhoneViewController.m
  10. 24 21
      HappyJob/HappyJob/Login_登录/HJLoginFieldView.m
  11. 13 12
      HappyJob/HappyJob/Login_登录/HJLoginViewController.m
  12. 34 21
      HappyJob/HappyJob/Me_我/Auth_实名认证/HJAuthViewController.m
  13. 2 2
      HappyJob/Podfile
  14. 5 5
      HappyJob/Podfile.lock
  15. 30 0
      HappyJob/Pods/JKCountDownButton/JKCountDownButton/JKCountDownButton/JKCountDownButton.h
  16. 145 0
      HappyJob/Pods/JKCountDownButton/JKCountDownButton/JKCountDownButton/JKCountDownButton.m
  17. 3 2
      HappyJob/Pods/SGEasyButton/LICENSE
  18. 67 0
      HappyJob/Pods/JKCountDownButton/README.md
  19. 5 5
      HappyJob/Pods/Manifest.lock
  20. 2608 2628
      HappyJob/Pods/Pods.xcodeproj/project.pbxproj
  21. 3 3
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SGEasyButton.xcscheme
  22. 2 2
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/Pods-HappyJob.xcscheme
  23. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SDCycleScrollView.xcscheme
  24. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SDWebImage.xcscheme
  25. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SVProgressHUD.xcscheme
  26. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/TXScrollLabelView.xcscheme
  27. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/WechatOpenSDK.xcscheme
  28. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/XHLaunchAd.xcscheme
  29. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/YTKNetwork.xcscheme
  30. 1 1
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/YYModel.xcscheme
  31. 5 5
      HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/xcschememanagement.plist
  32. 0 80
      HappyJob/Pods/SGEasyButton/README.md
  33. 0 16
      HappyJob/Pods/SGEasyButton/SGEasyButton/SGEasyButton.h
  34. 0 28
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGCountdown.h
  35. 0 116
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGCountdown.m
  36. 0 20
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGEvent.h
  37. 0 76
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGEvent.m
  38. 0 45
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGImagePosition.h
  39. 0 121
      HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGImagePosition.m
  40. 1 1
      HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-Info.plist
  41. 5 0
      HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-dummy.m
  42. 0 0
      HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-prefix.pch
  43. 17 0
      HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-umbrella.h
  44. 6 0
      HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton.modulemap
  45. 2 2
      HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton.xcconfig
  46. 26 25
      HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-acknowledgements.markdown
  47. 32 31
      HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-acknowledgements.plist
  48. 2 2
      HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-frameworks.sh
  49. 4 4
      HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob.debug.xcconfig
  50. 4 4
      HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob.release.xcconfig
  51. 0 5
      HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-dummy.m
  52. 0 20
      HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-umbrella.h
  53. 0 6
      HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton.modulemap

+ 4 - 4
HappyJob/HappyJob.xcodeproj/project.pbxproj

@@ -2082,12 +2082,12 @@
 				"${BUILT_PRODUCTS_DIR}/FCUUID/FCUUID.framework",
 				"${BUILT_PRODUCTS_DIR}/FLAnimatedImage/FLAnimatedImage.framework",
 				"${BUILT_PRODUCTS_DIR}/IQKeyboardManager/IQKeyboardManager.framework",
+				"${BUILT_PRODUCTS_DIR}/JKCountDownButton/JKCountDownButton.framework",
 				"${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework",
 				"${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework",
 				"${BUILT_PRODUCTS_DIR}/NSDictionary-NilSafe/NSDictionary_NilSafe.framework",
 				"${BUILT_PRODUCTS_DIR}/SDCycleScrollView/SDCycleScrollView.framework",
 				"${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework",
-				"${BUILT_PRODUCTS_DIR}/SGEasyButton/SGEasyButton.framework",
 				"${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework",
 				"${BUILT_PRODUCTS_DIR}/TXScrollLabelView/TXScrollLabelView.framework",
 				"${BUILT_PRODUCTS_DIR}/UICKeyChainStore/UICKeyChainStore.framework",
@@ -2105,12 +2105,12 @@
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FCUUID.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FLAnimatedImage.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/IQKeyboardManager.framework",
+				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/JKCountDownButton.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJRefresh.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Masonry.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/NSDictionary_NilSafe.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDCycleScrollView.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework",
-				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SGEasyButton.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SVProgressHUD.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/TXScrollLabelView.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/UICKeyChainStore.framework",
@@ -2513,7 +2513,7 @@
 				DEVELOPMENT_TEAM = 6TLH64Q4Z4;
 				GCC_PREFIX_HEADER = "HappyJob/HappyJob-Prefix.pch";
 				INFOPLIST_FILE = HappyJob/Info.plist;
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -2533,7 +2533,7 @@
 				DEVELOPMENT_TEAM = 6TLH64Q4Z4;
 				GCC_PREFIX_HEADER = "HappyJob/HappyJob-Prefix.pch";
 				INFOPLIST_FILE = HappyJob/Info.plist;
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",

BIN
HappyJob/HappyJob.xcworkspace/xcuserdata/Bob.xcuserdatad/UserInterfaceState.xcuserstate


+ 11 - 5
HappyJob/HappyJob/Base.lproj/Main.storyboard

@@ -1,20 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
+    <device id="retina4_7" orientation="portrait">
+        <adaptation id="fullscreen"/>
+    </device>
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
-        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14460.20"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <scenes>
         <!--View Controller-->
         <scene sceneID="tne-QT-ifu">
             <objects>
-                <viewController id="BYZ-38-t0r" customClass="ViewController" customModuleProvider="" sceneMemberID="viewController">
+                <viewController id="BYZ-38-t0r" customClass="ViewController" sceneMemberID="viewController">
+                    <layoutGuides>
+                        <viewControllerLayoutGuide type="top" id="F8S-y4-eug"/>
+                        <viewControllerLayoutGuide type="bottom" id="bl7-Wj-leT"/>
+                    </layoutGuides>
                     <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
                         <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                     </view>
                 </viewController>
                 <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>

+ 6 - 0
HappyJob/HappyJob/DataCenter/Model/Position/HJPositionModel.h

@@ -55,12 +55,16 @@ typedef NS_ENUM(NSUInteger, HJPositionType) {
 @property (nonatomic, copy) NSString *salaryStructure;
 /**发工资日*/
 @property (nonatomic, copy) NSString *payDay;
+/**工作年限*/
+@property (nonatomic, copy) NSString *workExperience;
 /**工作时间*/
 @property (nonatomic, copy) NSString *workTime;
 /**工作环境*/
 @property (nonatomic, copy) NSString *workEnvironment;
 /**工作描述*/
 @property (nonatomic, copy) NSString *positionDetail;
+/**基本信息其他*/
+@property (nonatomic, copy) NSString *otherInformation;
 /**岗位要求性别(0:男女不限,1:男,2:女)*/
 @property (nonatomic, assign) NSUInteger gender;
 /**岗位要求年龄范围*/
@@ -69,6 +73,8 @@ typedef NS_ENUM(NSUInteger, HJPositionType) {
 @property (nonatomic, copy) NSString *qualification;
 /**岗位要求专业技能*/
 @property (nonatomic, copy) NSString *profressionSkill;
+/**岗位要求体检(0:不需要,1:需要)*/
+@property (nonatomic, assign) NSUInteger isPhysical;
 /**其他岗位要求*/
 @property (nonatomic, copy) NSString *otherRequirement;
 /**工作餐*/

+ 47 - 21
HappyJob/HappyJob/JobList_工作列表信息/FullTime_全职工作/HJFullTimeDetailViewController.m

@@ -68,14 +68,25 @@
         make.left.greaterThanOrEqualTo(self.titleView.mas_right);
         make.width.mas_greaterThanOrEqualTo(140);
     }];
-    [self.femaleView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.titleView.mas_bottom).with.offset(8);
-        make.left.equalTo(self.titleView);
-    }];
-    [self.maleView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.femaleView);
-        make.left.equalTo(self.femaleView.mas_right).with.offset(5);
-    }];
+    if ([headerView.subviews indexOfObject:self.femaleView] != NSNotFound) {
+        [self.femaleView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.titleView.mas_bottom).with.offset(8);
+            make.left.equalTo(self.titleView);
+        }];
+        if ([headerView.subviews indexOfObject:self.maleView] != NSNotFound) {
+            [self.maleView mas_makeConstraints:^(MASConstraintMaker *make) {
+                make.top.equalTo(self.femaleView);
+                make.left.equalTo(self.femaleView.mas_right).with.offset(5);
+            }];
+        }
+    } else {
+        if ([headerView.subviews indexOfObject:self.maleView] != NSNotFound) {
+            [self.maleView mas_makeConstraints:^(MASConstraintMaker *make) {
+                make.top.equalTo(self.titleView.mas_bottom).with.offset(8);
+                make.left.equalTo(self.titleView);
+            }];
+        }
+    }
     [self.peopleView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.right.equalTo(self.salaryView);
         make.top.equalTo(self.salaryView.mas_bottom).with.offset(10);
@@ -108,15 +119,22 @@
         make.top.equalTo(self.requireInfoView.mas_bottom).with.offset(20);
         make.left.right.equalTo(contentView);
     }];
-    [self.trafficView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.otherInfoView.mas_bottom);
-        make.left.right.equalTo(contentView);
-        make.height.mas_equalTo(36);
-    }];
-    [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.trafficView.mas_bottom).with.offset(20);
-        make.left.right.equalTo(contentView);
-    }];
+    if ([contentView.subviews indexOfObject:self.trafficView] != NSNotFound) {
+        [self.trafficView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.otherInfoView.mas_bottom);
+            make.left.right.equalTo(contentView);
+            make.height.mas_equalTo(36);
+        }];
+        [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.trafficView.mas_bottom).with.offset(20);
+            make.left.right.equalTo(contentView);
+        }];
+    } else {
+        [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.otherInfoView.mas_bottom).with.offset(20);
+            make.left.right.equalTo(contentView);
+        }];
+    }
     // 这个一定要加,这样就可以确定内容的整体高度,UIScrollView就可以根据这个设置contentSize
     [contentView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.bottom.equalTo(self.companyInfoView.mas_bottom);
@@ -177,19 +195,27 @@
     
     self.segmentView.delegate = self;
     self.addressView.titleLabel.text = data[kHJPositionKeyAddress][kHJPositionKeyInnerKey];
-    self.trafficView.titleLabel.text = data[kHJPositionKeyTraffic][kHJPositionKeyInnerKey];
     
+    NSDictionary *trafficDict = data[kHJPositionKeyTraffic];
+    if (trafficDict) {
+        self.trafficView.titleLabel.text = trafficDict[kHJPositionKeyInnerKey];
+        [detailView.scrollLayoutView.contentView addSubview:self.trafficView];
+    }
+    
+    if (!self.femaleView.hidden) {
+        [detailView.scrollLayoutView.headerView addSubview:self.femaleView];
+    }
+    if (!self.maleView.hidden) {
+        [detailView.scrollLayoutView.headerView addSubview:self.maleView];
+    }
     [detailView.scrollLayoutView.headerView addSubview:self.titleView];
     [detailView.scrollLayoutView.headerView addSubview:self.salaryView];
-    [detailView.scrollLayoutView.headerView addSubview:self.femaleView];
-    [detailView.scrollLayoutView.headerView addSubview:self.maleView];
     [detailView.scrollLayoutView.headerView addSubview:self.peopleView];
     [detailView.scrollLayoutView.headerView addSubview:self.addressView];
     [detailView.scrollLayoutView.headerView addSubview:self.segmentView];
     [detailView.scrollLayoutView.contentView addSubview:self.baseInfoView];
     [detailView.scrollLayoutView.contentView addSubview:self.requireInfoView];
     [detailView.scrollLayoutView.contentView addSubview:self.otherInfoView];
-    [detailView.scrollLayoutView.contentView addSubview:self.trafficView];
     [detailView.scrollLayoutView.contentView addSubview:self.companyInfoView];
     [detailView.scrollLayoutView.footerView addSubview:self.detailView.applyButton];
     [detailView.scrollLayoutView makeConstraints];

+ 3 - 3
HappyJob/HappyJob/JobList_工作列表信息/HJPositionDataBox.m

@@ -160,7 +160,7 @@ static NSString * const HJJoinTableViewCellIdentifier = @"HJJoinTableViewCell";
             cell.moneyLabel.text = [NSString stringWithFormat:@"%@ 元", model.basicSalary];
         }
         cell.companyLabel.text = model.hpCompany.companyName;
-        cell.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).address;
+        cell.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).adname;
         cell.dateLabel.text = model.updateDate.xh_format_yyyy_MM_dd;
         NSString *money1 = model.reward;
         NSString *money2 = model.platformAllowance;
@@ -195,7 +195,7 @@ static NSString * const HJJoinTableViewCellIdentifier = @"HJJoinTableViewCell";
             NSString *endDay = [array lastObject];
             cell.baseView.taskTimeLabel.text = [NSString stringWithFormat:@"%@-%@(共计%@天)", startDay.xh_formatYueRi, endDay.xh_formatYueRi, @(array.count)];
             
-            cell.baseView.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).address;
+            cell.baseView.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).adname;
         } else {
             NSString *startDay = model.publishTime;
             NSString *endDay = model.endTime;
@@ -219,7 +219,7 @@ static NSString * const HJJoinTableViewCellIdentifier = @"HJJoinTableViewCell";
             cell.moneyLabel.text = [NSString stringWithFormat:@"%@ 元", model.basicSalary];
         }
         cell.companyLabel.text = model.hpCompany.companyName;
-        cell.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).address;
+        cell.addressLabel.text = ((HJPositionAddressModel *)[model.hpPositionAddressList firstObject]).adname;
         cell.dateLabel.text = model.updateDate.xh_format_yyyy_MM_dd;
         // 当入职最高奖励的两个金额其中一个有值就显示控件,否则就不显示
         NSString *money1 = model.reward;

+ 27 - 6
HappyJob/HappyJob/JobList_工作列表信息/PositionDetail_岗位详情/PositionDetailAPIManager/HJPositionDetailDataBox.m

@@ -113,8 +113,16 @@ NSString * const kHJWorkplaceKeyArea = @"kHJWorkplaceKeyArea";
     [dict setObject:self.salaryLabel forKey:kHJPositionKeySalary];
     
     //返费
-    self.femaleReturnMoneyLabel.text = [NSString stringWithFormat:@"返费%@元", @(model.position.femaleReward)];
-    self.maleReturnMoneyLabel.text = [NSString stringWithFormat:@"返费%@元", @(model.position.maleReward)];
+    if (model.position.femaleReward > 0) {
+        self.femaleReturnMoneyLabel.text = [NSString stringWithFormat:@"返费%@元", @(model.position.femaleReward)];
+    } else {
+        self.femaleReturnMoneyLabel.hidden = YES;
+    }
+    if (model.position.maleReward > 0) {
+        self.maleReturnMoneyLabel.text = [NSString stringWithFormat:@"返费%@元", @(model.position.maleReward)];
+    } else {
+        self.maleReturnMoneyLabel.hidden = YES;
+    }
     [dict setObject:self.femaleReturnMoneyLabel forKey:kHJPositionKeyFemaleReward];
     [dict setObject:self.maleReturnMoneyLabel forKey:kHJPositionKeyMaleReward];
     
@@ -129,14 +137,19 @@ NSString * const kHJWorkplaceKeyArea = @"kHJWorkplaceKeyArea";
     NSArray *addressList = model.position.hpPositionAddressList;
     NSMutableArray *addressArray = [NSMutableArray arrayWithCapacity:addressList.count];
     for (HJPositionAddressModel *addressModel in addressList) {
-        [addressArray addObject:@{kHJWorkplaceKeyAddress: addressModel.address, kHJWorkplaceKeyArea: addressModel.adname}];
+        NSString *adname = [addressModel.adname stringByReplacingOccurrencesOfString:@"-" withString:@""];
+        [addressArray addObject:@{kHJWorkplaceKeyAddress: [NSString stringWithFormat:@"%@%@", adname, addressModel.address], kHJWorkplaceKeyArea: adname}];
     }
-    [dict setObject:@{kHJPositionKeyInnerKey: ((HJPositionAddressModel *)[addressList firstObject]).address,
+    NSString *adname = ((HJPositionAddressModel *)[addressList firstObject]).adname;
+    adname = [adname stringByReplacingOccurrencesOfString:@"-" withString:@""];
+    [dict setObject:@{kHJPositionKeyInnerKey: [NSString stringWithFormat:@"%@%@", adname, ((HJPositionAddressModel *)[addressList firstObject]).address],
                       kHJPositionKeyInnerValue: [addressArray copy]} forKey:kHJPositionKeyAddress];
     
     //交通
-    [dict setObject:@{kHJPositionKeyInnerKey: @"查看厂车路线详情",
-                      kHJPositionKeyInnerValue: model.position.busDetail} forKey:kHJPositionKeyTraffic];
+    if (model.position.busDetail.length > 0) {
+        [dict setObject:@{kHJPositionKeyInnerKey: @"查看厂车路线详情",
+                          kHJPositionKeyInnerValue: model.position.busDetail} forKey:kHJPositionKeyTraffic];
+    }
     
     //选择器
     NSMutableArray *segmentTitleArray = [NSMutableArray arrayWithArray:@[@"基本信息", @"岗位要求", @"其他福利", @"公司详情"]];
@@ -169,6 +182,10 @@ NSString * const kHJWorkplaceKeyArea = @"kHJWorkplaceKeyArea";
     if (model.position.positionDetail.length > 0) {
         [baseInfoArray addObject:@{kHJLeftLabelText: @"工作描述:", kHJRightLabelText: model.position.positionDetail}];
     }
+    if (model.position.otherInformation.length > 0) {
+        [baseInfoArray addObject:@{kHJLeftLabelText: @"其他:", kHJRightLabelText: model.position.otherInformation}];
+    }
+    
     HJJobDetailInfoView *basicsInfoView = [[HJJobDetailInfoView alloc] initWithTitle:@"基本信息" infoArray:[baseInfoArray copy]];
     [dict setObject:basicsInfoView forKey:kHJPositionKeyBaseInfo];
     
@@ -188,6 +205,10 @@ NSString * const kHJWorkplaceKeyArea = @"kHJWorkplaceKeyArea";
     if (model.position.qualification.length > 0) {
         [requireInfoArray addObject:@{kHJLeftLabelText: @"学历要求:", kHJRightLabelText: model.position.qualification}];
     }
+    if (model.position.workExperience.length > 0) {
+        [requireInfoArray addObject:@{kHJLeftLabelText: @"工作年限:", kHJRightLabelText: model.position.workExperience}];
+    }
+    [requireInfoArray addObject:@{kHJLeftLabelText: @"体检:", kHJRightLabelText: (model.position.isPhysical ? @"需要" : @"不需要")}];
     if (model.position.profressionSkill.length > 0) {
         [requireInfoArray addObject:@{kHJLeftLabelText: @"专业技能:", kHJRightLabelText: model.position.profressionSkill}];
     }

+ 22 - 11
HappyJob/HappyJob/Join_拼工/HJJoinDetailViewController.m

@@ -156,15 +156,22 @@
         make.top.equalTo(self.requireInfoView.mas_bottom).with.offset(20);
         make.left.right.equalTo(contentView);
     }];
-    [self.trafficView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.otherInfoView.mas_bottom);
-        make.left.right.equalTo(contentView);
-        make.height.mas_equalTo(36);
-    }];
-    [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.top.equalTo(self.trafficView.mas_bottom).with.offset(20);
-        make.left.right.equalTo(contentView);
-    }];
+    if ([contentView.subviews indexOfObject:self.trafficView] != NSNotFound) {
+        [self.trafficView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.otherInfoView.mas_bottom);
+            make.left.right.equalTo(contentView);
+            make.height.mas_equalTo(36);
+        }];
+        [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.trafficView.mas_bottom).with.offset(20);
+            make.left.right.equalTo(contentView);
+        }];
+    } else {
+        [self.companyInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.top.equalTo(self.otherInfoView.mas_bottom).with.offset(20);
+            make.left.right.equalTo(contentView);
+        }];
+    }
     // 这个一定要加,这样就可以确定内容的整体高度,UIScrollView就可以根据这个设置contentSize
     [contentView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.bottom.equalTo(self.companyInfoView.mas_bottom);
@@ -376,13 +383,18 @@
     
     self.segmentView.delegate = self;
     self.addressView.titleLabel.text = data[kHJPositionKeyAddress][kHJPositionKeyInnerKey];
-    self.trafficView.titleLabel.text = data[kHJPositionKeyTraffic][kHJPositionKeyInnerKey];
     self.timerLabel.text = [data[kHJJoinPositionKeyAttributedTimer] string];
     NSMutableAttributedString *attStr = [[NSMutableAttributedString alloc] initWithString:@",您也可以点击查看"];
     [attStr insertAttributedString:data[kHJJoinPositionKeyAttributedJoinCount] atIndex:0];
     self.joinView.allJoinLabel.attributedText = attStr;
     self.joinView.joinGroupArray = data[kHJJoinPositionKeyJoinGroupArray];
     
+    NSDictionary *trafficDict = data[kHJPositionKeyTraffic];
+    if (trafficDict) {
+        self.trafficView.titleLabel.text = trafficDict[kHJPositionKeyInnerKey];
+        [self.scrollLayoutView.contentView addSubview:self.trafficView];
+    }
+    
     //添加活动计时器,每秒回调一次
     self.startTimeInterval = 0;
     [self.countDown countDownWithPER_SECBlock:^{
@@ -429,7 +441,6 @@
     [self.scrollLayoutView.contentView addSubview:self.baseInfoView];
     [self.scrollLayoutView.contentView addSubview:self.requireInfoView];
     [self.scrollLayoutView.contentView addSubview:self.otherInfoView];
-    [self.scrollLayoutView.contentView addSubview:self.trafficView];
     [self.scrollLayoutView.contentView addSubview:self.companyInfoView];
     [self.scrollLayoutView.footerView addSubview:self.joinApplyButton];
     [self.scrollLayoutView makeConstraints];

+ 13 - 14
HappyJob/HappyJob/Login_登录/HJLoginBindingPhoneViewController.m

@@ -10,7 +10,7 @@
 #import "FBScrollLayoutView.h"
 #import "HJLoginFieldView.h"
 #import "UIImage+FBColorToImage.h"
-#import <SGEasyButton/SGEasyButton.h>
+#import "UIButton+Layout.h"
 #import "HJMainViewController.h"
 #import "HJLoginGetAuthCodeAPIManager.h"
 #import "HJLoginBindingPhoneAPIManager.h"
@@ -29,7 +29,6 @@
 
 @property (nonatomic, strong) HJMainViewController *mainViewController;
 
-@property (nonatomic, copy) NSString *authCode;
 @property (nonatomic, strong) HJLoginGetAuthCodeAPIManager *getAuthCodeAPIManager;
 @property (nonatomic, strong) HJLoginDataBox *dataBox;
 @end
@@ -100,12 +99,9 @@
     [self.cancelButton mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.bindingButton.mas_bottom).with.offset(HJVerticalScale(64));
         make.centerX.equalTo(contentView);
-        make.size.mas_equalTo(CGSizeMake(80, 60));
+        make.size.mas_equalTo(self.cancelButton.frame.size);
     }];
     
-    // 图片在上文字在下布局
-    [self.cancelButton SG_imagePositionStyle:SGImagePositionStyleTop spacing:5];
-    
     [contentView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.bottom.equalTo(self.cancelButton.mas_bottom).with.offset(HJVerticalScale(26));
     }];
@@ -133,12 +129,6 @@
 #pragma mark - FBAPIManagerDelegate
 
 - (void)managerCallAPIDidSuccess:(FBBaseAPIManager *)manager {
-    id fetchData = [manager fetchDataWithBox:self.dataBox];
-    
-    if (manager == self.getAuthCodeAPIManager) {
-        self.authCode = fetchData;
-    }
-    
     if (manager == self.bindingPhoneAPIManager) {
         // 跳转到首页
         [self.navigationController pushViewController:self.mainViewController animated:YES];
@@ -170,7 +160,7 @@
         [self.view fb_showFailureWithStatus:@"请输入正确的手机号"];
         return;
     }
-    if (self.loginFieldView.authCode.length != 6 || self.authCode != self.loginFieldView.authCode) {
+    if (self.loginFieldView.authCode.length != 6) {
         [self.view fb_showFailureWithStatus:@"请输入正确的6位验证码"];
         return;
     }
@@ -291,11 +281,20 @@
 - (UIButton *)cancelButton {
     if (_cancelButton == nil) {
         _cancelButton = [UIButton buttonWithType:UIButtonTypeCustom];
-        _cancelButton.titleLabel.font = [UIFont systemFontOfSize:HJHorizontalScale(12)];
+        _cancelButton.titleLabel.font = [UIFont systemFontOfSize:12];
         [_cancelButton setImage:[UIImage imageNamed:@"login_button_cancel"] forState:UIControlStateNormal];
         [_cancelButton setTitle:@"取消" forState:UIControlStateNormal];
         [_cancelButton setTitleColor:[UIColor colorWithRed:221/255.0 green:221/255.0 blue:221/255.0 alpha:1.0] forState:UIControlStateNormal];
         [_cancelButton addTarget:self action:@selector(cancelButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
+        
+        //文字图片上下显示
+        CGSize imageSize = CGSizeMake(34, 34);
+        CGSize titleSize = CGSizeMake(25, 12);
+        CGFloat maxWidth = MAX(imageSize.width, titleSize.width);
+        CGFloat padding = 5;
+        _cancelButton.imageRect = CGRectMake((maxWidth - imageSize.width) / 2, 0, imageSize.width, imageSize.height);
+        _cancelButton.titleRect = CGRectMake((maxWidth - titleSize.width) / 2, imageSize.height + padding, titleSize.width, titleSize.height);
+        _cancelButton.frame = CGRectMake(0, 0, maxWidth, imageSize.height + titleSize.height + padding);
     }
     return _cancelButton;
 }

+ 24 - 21
HappyJob/HappyJob/Login_登录/HJLoginFieldView.m

@@ -8,14 +8,14 @@
 
 #import "HJLoginFieldView.h"
 #import "UIView+FBProgressHUD.h"
-#import <SGEasyButton/SGEasyButton.h>
+#import <JKCountDownButton/JKCountDownButton.h>
 
 @interface HJLoginFieldView ()
 @property (nonatomic, strong) UIImageView *phoneIconImageView;
 @property (nonatomic, strong) UIImageView *codeIconImageView;
 @property (nonatomic, strong) UIImageView *phoneStyleImageView;
 @property (nonatomic, strong) UIImageView *codeStyleImageView;
-@property (nonatomic, strong) UIButton *getCodeButton;
+@property (nonatomic, strong) JKCountDownButton *getCodeButton;
 @end
 
 @implementation HJLoginFieldView
@@ -87,22 +87,6 @@
 
 #pragma mark - event response
 
-- (void)getCodeButtonClicked:(id)sender {
-    if (self.phone.length != 11) {
-        [self fb_showFailureWithStatus:@"请输入正确的手机号"];
-        return;
-    }
-    
-    // 设置按钮倒计时,默认30秒
-    [sender SG_countdownWithSecond:30 completion:^{
-        [sender setTitle:@"重新获取" forState:UIControlStateNormal];
-    }];
-    
-    if ([self.delegate respondsToSelector:@selector(loginFieldViewGetCodeShouldSuccess:)]) {
-        [self.delegate loginFieldViewGetCodeShouldSuccess:self];
-    }
-}
-
 #pragma mark - private methods
 
 #pragma mark - getters and setters
@@ -170,13 +154,32 @@
     return _codeStyleImageView;
 }
 
-- (UIButton *)getCodeButton {
+- (JKCountDownButton *)getCodeButton {
     if (_getCodeButton == nil) {
-        _getCodeButton = [UIButton buttonWithType:UIButtonTypeCustom];
+        _getCodeButton = [JKCountDownButton buttonWithType:UIButtonTypeCustom];
         _getCodeButton.titleLabel.font = [UIFont systemFontOfSize:HJHorizontalScale(12)];
         [_getCodeButton setTitle:@"获取验证码" forState:UIControlStateNormal];
         [_getCodeButton setTitleColor:[UIColor colorWithRed:30/255.0 green:97/255.0 blue:167/255.0 alpha:1.0] forState:UIControlStateNormal];
-        [_getCodeButton addTarget:self action:@selector(getCodeButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
+        [_getCodeButton countDownButtonHandler:^(JKCountDownButton*sender, NSInteger tag) {
+            if (self.phone.length != 11) {
+                [self fb_showFailureWithStatus:@"请输入正确的手机号"];
+            } else {
+                sender.enabled = NO;
+                [sender startCountDownWithSecond:30];
+                [sender countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) {
+                    NSString *title = [NSString stringWithFormat:@"剩余%zd秒",second];
+                    return title;
+                }];
+                [sender countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) {
+                    countDownButton.enabled = YES;
+                    return @"重新获取";
+                }];
+                
+                if ([self.delegate respondsToSelector:@selector(loginFieldViewGetCodeShouldSuccess:)]) {
+                    [self.delegate loginFieldViewGetCodeShouldSuccess:self];
+                }
+            }
+        }];
     }
     return _getCodeButton;
 }

+ 13 - 12
HappyJob/HappyJob/Login_登录/HJLoginViewController.m

@@ -19,7 +19,7 @@
 #import "FBScrollLayoutView.h"
 #import "HJLoginAgreementView.h"
 #import "UIImage+FBColorToImage.h"
-#import <SGEasyButton/SGEasyButton.h>
+#import "UIButton+Layout.h"
 #import "HJLoginBindingPhoneViewController.h"
 
 @interface HJLoginViewController () <HJLoginFieldViewDelegate, HJWeiXinAPIManagerDelegate, FBScrollLayoutViewDelegate, HJLoginAgreementDelegate, FBAPIManagerDelegate, FBAPIManagerInterceptor>
@@ -34,7 +34,6 @@
 @property (nonatomic, strong) HJLoginBindingPhoneViewController *bindingPhoneViewController;
 @property (nonatomic, strong) HJMainViewController *mainViewController;
 
-@property (nonatomic, copy) NSString *authCode;
 @property (nonatomic, strong) HJLoginGetAuthCodeAPIManager *getAuthCodeAPIManager;
 @property (nonatomic, strong) HJLoginPhoneLoginAPIManager *phoneLoginAPIManager;
 @property (nonatomic, strong) HJWeiXinAPIManager *wxAPIManager;
@@ -98,12 +97,9 @@
     [self.wechatLoginButton mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.agreementView.mas_bottom).with.offset(HJVerticalScale(40));
         make.centerX.equalTo(contentView);
-        make.size.mas_equalTo(CGSizeMake(80, 60));
+        make.size.mas_equalTo(self.wechatLoginButton.frame.size);
     }];
 
-    // 图片在上文字在下布局
-    [self.wechatLoginButton SG_imagePositionStyle:SGImagePositionStyleTop spacing:10];
-
     [contentView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.bottom.equalTo(self.wechatLoginButton.mas_bottom).with.offset(HJVerticalScale(15));
     }];
@@ -157,10 +153,6 @@
     HJLoginDataBox *loginDataBox = [[HJLoginDataBox alloc] init];
     id fetchData = [manager fetchDataWithBox:loginDataBox];
     
-    if (manager == self.getAuthCodeAPIManager) {
-        self.authCode = fetchData;
-    }
-    
     if (manager == self.phoneLoginAPIManager || (manager == self.wechatLgoinAPIManager && self.wechatLgoinAPIManager.type == HJLoginWeChatLoginAPIManagerTypeNotBinding)) {
         // 跳转到首页
         [self.navigationController pushViewController:self.mainViewController animated:YES];
@@ -193,7 +185,7 @@
         [self.view fb_showFailureWithStatus:@"请输入正确的手机号"];
         return;
     }
-    if (self.loginFieldView.authCode.length != 6 || self.authCode != self.loginFieldView.authCode) {
+    if (self.loginFieldView.authCode.length != 6) {
         [self.view fb_showFailureWithStatus:@"请输入正确的6位验证码"];
         return;
     }
@@ -292,11 +284,20 @@
 - (UIButton *)wechatLoginButton {
     if (_wechatLoginButton == nil) {
         _wechatLoginButton = [UIButton buttonWithType:UIButtonTypeCustom];
-        _wechatLoginButton.titleLabel.font = [UIFont systemFontOfSize:HJHorizontalScale(10)];
+        _wechatLoginButton.titleLabel.font = [UIFont systemFontOfSize:10];
         [_wechatLoginButton setImage:[UIImage imageNamed:@"login_button_wechat"] forState:UIControlStateNormal];
         [_wechatLoginButton setTitle:@"微信快捷登录" forState:UIControlStateNormal];
         [_wechatLoginButton setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];
         [_wechatLoginButton addTarget:self action:@selector(wechatLoginButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
+        
+        //文字图片上下显示
+        CGSize imageSize = CGSizeMake(36, 30);
+        CGSize titleSize = CGSizeMake(62, 10);
+        CGFloat maxWidth = MAX(imageSize.width, titleSize.width);
+        CGFloat padding = 10;
+        _wechatLoginButton.imageRect = CGRectMake((maxWidth - imageSize.width) / 2, 0, imageSize.width, imageSize.height);
+        _wechatLoginButton.titleRect = CGRectMake((maxWidth - titleSize.width) / 2, imageSize.height + padding, titleSize.width, titleSize.height);
+        _wechatLoginButton.frame = CGRectMake(0, 0, maxWidth, imageSize.height + titleSize.height + padding);
     }
     return _wechatLoginButton;
 }

+ 34 - 21
HappyJob/HappyJob/Me_我/Auth_实名认证/HJAuthViewController.m

@@ -12,13 +12,17 @@
 #import "HJAuthSectionView.h"
 #import "HJAuthingViewController.h"
 #import "HJAuthSuccessViewController.h"
-#import <SGEasyButton/SGEasyButton.h>
+#import "UIButton+Layout.h"
 #import "HJAuthNavBarView.h"
 #import "UIView+FBProgressHUD.h"
 #import "HJRealApproveAPIManager.h"
 #import "HJMeDataBox.h"
 #import "UIViewController+FBImagePicker.h"
 
+static const CGFloat LeadSpacing = 15;
+static const CGFloat TailSpacing = 15;
+static const CGFloat FixedSpacing = 30;
+
 @interface HJAuthViewController () <FBScrollLayoutViewDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate, FBAPIManagerDelegate, FBAPIManagerInterceptor>
 @property (nonatomic, strong) FBScrollLayoutView *scrollLayoutView;
 @property (nonatomic, strong) HJAuthNavBarView *navBarView;
@@ -108,36 +112,32 @@
         make.left.right.height.equalTo(self.authSectionView1);
     }];
     // 二等分布局
-    NSArray *views = @[self.cardForegroundButton, self.cardBackgroundButton];
-    CGFloat leadSpacing = 15;
-    CGFloat tailSpacing = 15;
-    CGFloat fixedSpacing = 30;
-    [views mas_distributeViewsAlongAxis:MASAxisTypeHorizontal withFixedSpacing:fixedSpacing leadSpacing:leadSpacing tailSpacing:tailSpacing];
-    [views mas_makeConstraints:^(MASConstraintMaker *make) {
+    [self.cardForegroundButton mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.top.equalTo(self.authSectionView2.mas_bottom).with.offset(24);
+        make.left.equalTo(contentView).with.offset(LeadSpacing);
+        make.size.mas_equalTo(self.cardForegroundButton.frame.size);
+    }];
+    [self.cardBackgroundButton mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.authSectionView2.mas_bottom).with.offset(24);
-        make.height.mas_equalTo(103);
+        make.right.equalTo(contentView).with.offset(-TailSpacing);
+        make.size.mas_equalTo(self.cardBackgroundButton.frame.size);
     }];
-    // 图片在上文字在下布局
-    [self.cardForegroundButton SG_imagePositionStyle:SGImagePositionStyleTop spacing:12];
-    [self.cardBackgroundButton SG_imagePositionStyle:SGImagePositionStyleTop spacing:12];
     // 手持身份证照片
     [self.authSectionView3 mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.cardBackgroundButton.mas_bottom).with.offset(24);
         make.left.right.height.equalTo(self.authSectionView1);
     }];
     // 二等分布局
-    NSArray *views1 = @[self.cardPhotoIcon, self.cardPhotoButton];
-    CGFloat leadSpacing1 = 15;
-    CGFloat tailSpacing1 = 15;
-    CGFloat fixedSpacing1 = 30;
-    [views1 mas_distributeViewsAlongAxis:MASAxisTypeHorizontal withFixedSpacing:fixedSpacing1 leadSpacing:leadSpacing1 tailSpacing:tailSpacing1];
-    [views1 mas_makeConstraints:^(MASConstraintMaker *make) {
+    [self.cardPhotoIcon mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.authSectionView3.mas_bottom).with.offset(24);
-        make.height.mas_equalTo(103);
+        make.left.equalTo(contentView).with.offset(LeadSpacing);
+        make.size.mas_equalTo(self.cardPhotoIcon.frame.size);
+    }];
+    [self.cardPhotoButton mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.top.equalTo(self.authSectionView3.mas_bottom).with.offset(24);
+        make.right.equalTo(contentView).with.offset(-TailSpacing);
+        make.size.mas_equalTo(self.cardPhotoButton.frame.size);
     }];
-    // 图片在上文字在下布局
-    //[self.cardPhotoIcon SG_imagePositionStyle:SGImagePositionStyleBottom spacing:-22];
-    [self.cardPhotoButton SG_imagePositionStyle:SGImagePositionStyleTop spacing:12];
     
     [self.remarkLabel1 mas_makeConstraints:^(MASConstraintMaker *make) {
         make.top.equalTo(self.cardPhotoIcon.mas_bottom).with.offset(30);
@@ -307,6 +307,17 @@
         [button setTitle:@"" forState:UIControlStateSelected];
         [button setTitleColor:[UIColor colorWithRed:204/255.0 green:204/255.0 blue:204/255.0 alpha:1.0] forState:UIControlStateNormal];
     }
+    
+    //按钮固定尺寸
+    CGSize size = CGSizeMake((SCREEN_WIDTH-LeadSpacing-TailSpacing-FixedSpacing)/2, 103);
+    //文字图片上下显示
+    CGSize imageSize = image.size;
+    CGSize titleSize = CGSizeMake(105, 12);
+    CGFloat maxWidth = size.width;
+    CGFloat padding = 13;
+    button.imageRect = CGRectMake((maxWidth - imageSize.width) / 2, 30, imageSize.width, imageSize.height);
+    button.titleRect = CGRectMake((maxWidth - titleSize.width) / 2, 30 + imageSize.height + padding, titleSize.width, titleSize.height);
+    button.frame = CGRectMake(0, 0, size.width, size.height);
     return button;
 }
 
@@ -369,6 +380,8 @@
         _cardPhotoIcon.layer.masksToBounds = YES;
         _cardPhotoIcon.image = [UIImage imageNamed:@"auth_card_photo"];
         _cardPhotoIcon.contentMode = UIViewContentModeCenter;
+        CGSize size = CGSizeMake((SCREEN_WIDTH-LeadSpacing-TailSpacing-FixedSpacing)/2, 103);
+        _cardPhotoIcon.frame = CGRectMake(0, 0, size.width, size.height);
     }
     return _cardPhotoIcon;
 }

+ 2 - 2
HappyJob/Podfile

@@ -1,4 +1,4 @@
-platform :ios, '9.0'
+platform :ios, '8.0'
 inhibit_all_warnings!
 use_frameworks!
 
@@ -14,7 +14,7 @@ target 'HappyJob' do
   pod 'AMapLocation-NO-IDFA', '~> 2.6.1'
   pod 'AFNetworking', '~> 3.2.1'
   pod 'YTKNetwork', '~> 2.0.4'
-  pod 'SGEasyButton', '~> 0.0.6'
+  pod 'JKCountDownButton', '~> 1.3.0'
   pod 'FCUUID', '~> 1.3.1'
   pod 'WechatOpenSDK', '~> 1.8.4'
   pod 'YYModel', '~> 1.0.4'

+ 5 - 5
HappyJob/Podfile.lock

@@ -25,6 +25,7 @@ PODS:
     - UICKeyChainStore (~> 2.1.0)
   - FLAnimatedImage (1.0.12)
   - IQKeyboardManager (6.2.0)
+  - JKCountDownButton (1.3.0)
   - Masonry (1.1.0)
   - MJRefresh (3.1.15.7)
   - NSDictionary-NilSafe (0.2.0)
@@ -33,7 +34,6 @@ PODS:
   - SDWebImage (4.4.6):
     - SDWebImage/Core (= 4.4.6)
   - SDWebImage/Core (4.4.6)
-  - SGEasyButton (0.0.6)
   - SVProgressHUD (2.2.5)
   - TXScrollLabelView (1.3.2)
   - UICKeyChainStore (2.1.2)
@@ -51,12 +51,12 @@ DEPENDENCIES:
   - DZNEmptyDataSet (~> 1.8.1)
   - FCUUID (~> 1.3.1)
   - IQKeyboardManager (~> 6.2.0)
+  - JKCountDownButton (~> 1.3.0)
   - Masonry (~> 1.1.0)
   - MJRefresh (~> 3.1.15.7)
   - NSDictionary-NilSafe (~> 0.2.0)
   - SDCycleScrollView (~> 1.75)
   - SDWebImage (~> 4.4.6)
-  - SGEasyButton (~> 0.0.6)
   - SVProgressHUD (~> 2.2.5)
   - TXScrollLabelView (~> 1.3.2)
   - WechatOpenSDK (~> 1.8.4)
@@ -74,12 +74,12 @@ SPEC REPOS:
     - FCUUID
     - FLAnimatedImage
     - IQKeyboardManager
+    - JKCountDownButton
     - Masonry
     - MJRefresh
     - NSDictionary-NilSafe
     - SDCycleScrollView
     - SDWebImage
-    - SGEasyButton
     - SVProgressHUD
     - TXScrollLabelView
     - UICKeyChainStore
@@ -97,12 +97,12 @@ SPEC CHECKSUMS:
   FCUUID: bb054fc90cd7cd99320f9f6ff8e130fe607fba05
   FLAnimatedImage: 4a0b56255d9b05f18b6dd7ee06871be5d3b89e31
   IQKeyboardManager: 6194101620b73af5e67900b8f89707a99de0b804
+  JKCountDownButton: 3b557e75d23e7243bb63c8130e6d12d8510468dd
   Masonry: 678fab65091a9290e40e2832a55e7ab731aad201
   MJRefresh: 697f8ec75ebdbe9207767bb682cf0f51b0d8a41f
   NSDictionary-NilSafe: 3df5056bf920974cb9822ed24bfc41af44225201
   SDCycleScrollView: 884b88f0266dd4708a0e1934975c69cb971707b1
   SDWebImage: 3f3f0c02f09798048c47a5ed0a13f17b063572d8
-  SGEasyButton: 988365a76be60c569fda5ee4b6bb225cedf659b4
   SVProgressHUD: 1428aafac632c1f86f62aa4243ec12008d7a51d6
   TXScrollLabelView: 0e1650caf61198bf5dc0938ea6493254aeb80f90
   UICKeyChainStore: 85db518bb1d294366d15ec9b92a416c4e670518f
@@ -111,6 +111,6 @@ SPEC CHECKSUMS:
   YTKNetwork: df8a7a5597bda1664a4efaa7ef871a818a887fe0
   YYModel: 2a7fdd96aaa4b86a824e26d0c517de8928c04b30
 
-PODFILE CHECKSUM: 111723b26705f1f5ca4ab8e7abf5a60034b3d86c
+PODFILE CHECKSUM: 6282c94fa60ca77994ada24887ad67a9c2b81a80
 
 COCOAPODS: 1.6.1

+ 30 - 0
HappyJob/Pods/JKCountDownButton/JKCountDownButton/JKCountDownButton/JKCountDownButton.h

@@ -0,0 +1,30 @@
+//
+//  JKCountDownButton.h
+//  JKCountDownButton
+//
+//  Created by Jakey on 15/3/8.
+//  Copyright (c) 2015年 www.skyfox.org. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+@class JKCountDownButton;
+typedef NSString* (^CountDownChanging)(JKCountDownButton *countDownButton,NSUInteger second);
+typedef NSString* (^CountDownFinished)(JKCountDownButton *countDownButton,NSUInteger second);
+typedef void (^TouchedCountDownButtonHandler)(JKCountDownButton *countDownButton,NSInteger tag);
+
+@interface JKCountDownButton : UIButton
+@property(nonatomic,strong) id userInfo;
+///倒计时按钮点击回调
+- (void)countDownButtonHandler:(TouchedCountDownButtonHandler)touchedCountDownButtonHandler;
+//倒计时时间改变回调
+- (void)countDownChanging:(CountDownChanging)countDownChanging;
+//倒计时结束回调
+- (void)countDownFinished:(CountDownFinished)countDownFinished;
+///开始倒计时
+- (void)startCountDownWithSecond:(NSUInteger)second;
+///停止倒计时
+- (void)stopCountDown;
+@end
+
+
+

+ 145 - 0
HappyJob/Pods/JKCountDownButton/JKCountDownButton/JKCountDownButton/JKCountDownButton.m

@@ -0,0 +1,145 @@
+//
+//  JKCountDownButton.m
+//  JKCountDownButton
+//
+//  Created by Jakey on 15/3/8.
+//  Copyright (c) 2015年 www.skyfox.org. All rights reserved.
+//
+
+#import "JKCountDownButton.h"
+@interface NSTimer (JKCountDownBlocksSupport)
++ (NSTimer *)jkcd_scheduledTimerWithTimeInterval:(NSTimeInterval)interval
+                                           block:(void(^)(void))block
+                                         repeats:(BOOL)repeats;
+@end
+
+
+@interface JKCountDownButton(){
+    NSInteger _second;
+    NSUInteger _totalSecond;
+    
+    NSTimer *_timer;
+    NSDate *_startDate;
+    
+    CountDownChanging _countDownChanging;
+    CountDownFinished _countDownFinished;
+    TouchedCountDownButtonHandler _touchedCountDownButtonHandler;
+}
+@end
+
+@implementation JKCountDownButton
+#pragma -mark touche action
+- (void)countDownButtonHandler:(TouchedCountDownButtonHandler)touchedCountDownButtonHandler{
+    _touchedCountDownButtonHandler = [touchedCountDownButtonHandler copy];
+    [self addTarget:self action:@selector(touched:) forControlEvents:UIControlEventTouchUpInside];
+}
+
+- (void)touched:(JKCountDownButton*)sender{
+    if (_touchedCountDownButtonHandler) {
+        dispatch_async(dispatch_get_main_queue(), ^{
+            _touchedCountDownButtonHandler(sender,sender.tag);
+        });
+    }
+}
+
+#pragma -mark count down method
+- (void)startCountDownWithSecond:(NSUInteger)totalSecond
+{
+    _totalSecond = totalSecond;
+    _second = totalSecond;
+   
+    
+    __weak typeof(self) weakSelf = self;
+    _timer = [NSTimer jkcd_scheduledTimerWithTimeInterval:1.0 block:^{
+         typeof(weakSelf) strongSelf = weakSelf;
+        [strongSelf timerStart];
+    } repeats:YES];
+    
+    _startDate = [NSDate date];
+    _timer.fireDate = [NSDate distantPast];
+    [[NSRunLoop currentRunLoop]addTimer:_timer forMode:NSRunLoopCommonModes];
+}
+- (void)timerStart {
+     double deltaTime = [[NSDate date] timeIntervalSinceDate:_startDate];
+    
+     _second = _totalSecond - (NSInteger)(deltaTime+0.5) ;
+
+    
+    if (_second< 0.0)
+    {
+        [self stopCountDown];
+    }
+    else
+    {
+        if (_countDownChanging)
+        {
+            dispatch_async(dispatch_get_main_queue(), ^{
+                NSString *title = _countDownChanging(self,_second);
+                [self setTitle:title forState:UIControlStateNormal];
+                [self setTitle:title forState:UIControlStateDisabled];
+            });
+        }
+        else
+        {
+            NSString *title = [NSString stringWithFormat:@"%zd秒",_second];
+            [self setTitle:title forState:UIControlStateNormal];
+            [self setTitle:title forState:UIControlStateDisabled];
+
+        }
+    }
+}
+
+- (void)stopCountDown{
+    if (_timer) {
+        if ([_timer respondsToSelector:@selector(isValid)])
+        {
+            if ([_timer isValid])
+            {
+                [_timer invalidate];
+                _second = _totalSecond;
+                if (_countDownFinished)
+                {
+                    dispatch_async(dispatch_get_main_queue(), ^{
+                        NSString *title = _countDownFinished(self,_totalSecond);
+                        [self setTitle:title forState:UIControlStateNormal];
+                        [self setTitle:title forState:UIControlStateDisabled];
+                    });
+                }
+                else
+                {
+                    [self setTitle:@"重新获取" forState:UIControlStateNormal];
+                    [self setTitle:@"重新获取" forState:UIControlStateDisabled];
+
+                }
+            }
+        }
+    }
+}
+#pragma -mark block
+- (void)countDownChanging:(CountDownChanging)countDownChanging{
+    _countDownChanging = [countDownChanging copy];
+}
+- (void)countDownFinished:(CountDownFinished)countDownFinished{
+    _countDownFinished = [countDownFinished copy];
+}
+@end
+
+
+@implementation NSTimer (JKCountDownBlocksSupport)
++ (NSTimer *)jkcd_scheduledTimerWithTimeInterval:(NSTimeInterval)interval
+                                           block:(void(^)(void))block
+                                         repeats:(BOOL)repeats
+{
+    return [self scheduledTimerWithTimeInterval:interval
+                                         target:self
+                                       selector:@selector(jkcd_blockInvoke:)
+                                       userInfo:[block copy]
+                                        repeats:repeats];
+}
++ (void)jkcd_blockInvoke:(NSTimer *)timer {
+    void (^block)(void) = timer.userInfo;
+    if(block) {
+        block();
+    }
+}
+@end

+ 3 - 2
HappyJob/Pods/SGEasyButton/LICENSE

@@ -1,6 +1,6 @@
-MIT License
+The MIT License (MIT)
 
-Copyright (c) 2017 kingsic
+Copyright (c) 2015 
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
@@ -19,3 +19,4 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.
+

+ 67 - 0
HappyJob/Pods/JKCountDownButton/README.md

@@ -0,0 +1,67 @@
+# JKCountDownButton
+JKCountDownButton,子类化UIButton实现IOS倒计时按钮,常常用于注册等发送验证码的时候进行倒计时操作
+
+JKCountDownButton, subclassing UIButton implementation iOS countdown button, register with sending the verification code and countdown
+
+## Installation
+
+### Installation with CocoaPods
+
+	platform :ios
+ 	pod 'JKCountDownButton'
+ 	
+### Manually
+
+Copy JKCountDownButton.h JKCountDownButton.m in JKCountDownButton/ to your project.
+
+## Usage
+### Code
+    JKCountDownButton *_countDownCode;
+    _countDownCode = [JKCountDownButton buttonWithType:UIButtonTypeCustom];
+    _countDownCode.frame = CGRectMake(81, 200, 108, 32);
+    [_countDownCode setTitle:@"开始" forState:UIControlStateNormal];
+    _countDownCode.backgroundColor = [UIColor blueColor];
+    [self.view addSubview:_countDownCode];
+    
+     [_countDownCode countDownButtonHandler:^(JKCountDownButton*sender, NSInteger tag) {
+        sender.enabled = NO;
+
+        [sender startCountDownWithSecond:10];
+
+        [sender countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) {
+            NSString *title = [NSString stringWithFormat:@"剩余%zd秒",second];
+            return title;
+        }];
+        [sender countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) {
+            countDownButton.enabled = YES;
+            return @"点击重新获取";
+            
+        }];
+
+    }];
+
+    
+###xib
+    @property (weak, nonatomic) IBOutlet JKCountDownButton *countDownXib;
+
+    - (IBAction)countDownXibTouched:(JKCountDownButton*)sender {
+    sender.enabled = NO;
+    //button type要 设置成custom 否则会闪动
+    [sender startCountDownWithSecond:60];
+ 
+    [sender countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) {
+        NSString *title = [NSString stringWithFormat:@"剩余%zd秒",second];
+        return title;
+    }];
+    [sender countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) {
+        countDownButton.enabled = YES;
+        return @"点击重新获取";
+        
+    }];
+}
+## License
+
+This code is distributed under the terms and conditions of the MIT license.
+
+## Demo
+![](https://raw.githubusercontent.com/shaojiankui/JKCountDownButton/master/demo.gif)

+ 5 - 5
HappyJob/Pods/Manifest.lock

@@ -25,6 +25,7 @@ PODS:
     - UICKeyChainStore (~> 2.1.0)
   - FLAnimatedImage (1.0.12)
   - IQKeyboardManager (6.2.0)
+  - JKCountDownButton (1.3.0)
   - Masonry (1.1.0)
   - MJRefresh (3.1.15.7)
   - NSDictionary-NilSafe (0.2.0)
@@ -33,7 +34,6 @@ PODS:
   - SDWebImage (4.4.6):
     - SDWebImage/Core (= 4.4.6)
   - SDWebImage/Core (4.4.6)
-  - SGEasyButton (0.0.6)
   - SVProgressHUD (2.2.5)
   - TXScrollLabelView (1.3.2)
   - UICKeyChainStore (2.1.2)
@@ -51,12 +51,12 @@ DEPENDENCIES:
   - DZNEmptyDataSet (~> 1.8.1)
   - FCUUID (~> 1.3.1)
   - IQKeyboardManager (~> 6.2.0)
+  - JKCountDownButton (~> 1.3.0)
   - Masonry (~> 1.1.0)
   - MJRefresh (~> 3.1.15.7)
   - NSDictionary-NilSafe (~> 0.2.0)
   - SDCycleScrollView (~> 1.75)
   - SDWebImage (~> 4.4.6)
-  - SGEasyButton (~> 0.0.6)
   - SVProgressHUD (~> 2.2.5)
   - TXScrollLabelView (~> 1.3.2)
   - WechatOpenSDK (~> 1.8.4)
@@ -74,12 +74,12 @@ SPEC REPOS:
     - FCUUID
     - FLAnimatedImage
     - IQKeyboardManager
+    - JKCountDownButton
     - Masonry
     - MJRefresh
     - NSDictionary-NilSafe
     - SDCycleScrollView
     - SDWebImage
-    - SGEasyButton
     - SVProgressHUD
     - TXScrollLabelView
     - UICKeyChainStore
@@ -97,12 +97,12 @@ SPEC CHECKSUMS:
   FCUUID: bb054fc90cd7cd99320f9f6ff8e130fe607fba05
   FLAnimatedImage: 4a0b56255d9b05f18b6dd7ee06871be5d3b89e31
   IQKeyboardManager: 6194101620b73af5e67900b8f89707a99de0b804
+  JKCountDownButton: 3b557e75d23e7243bb63c8130e6d12d8510468dd
   Masonry: 678fab65091a9290e40e2832a55e7ab731aad201
   MJRefresh: 697f8ec75ebdbe9207767bb682cf0f51b0d8a41f
   NSDictionary-NilSafe: 3df5056bf920974cb9822ed24bfc41af44225201
   SDCycleScrollView: 884b88f0266dd4708a0e1934975c69cb971707b1
   SDWebImage: 3f3f0c02f09798048c47a5ed0a13f17b063572d8
-  SGEasyButton: 988365a76be60c569fda5ee4b6bb225cedf659b4
   SVProgressHUD: 1428aafac632c1f86f62aa4243ec12008d7a51d6
   TXScrollLabelView: 0e1650caf61198bf5dc0938ea6493254aeb80f90
   UICKeyChainStore: 85db518bb1d294366d15ec9b92a416c4e670518f
@@ -111,6 +111,6 @@ SPEC CHECKSUMS:
   YTKNetwork: df8a7a5597bda1664a4efaa7ef871a818a887fe0
   YYModel: 2a7fdd96aaa4b86a824e26d0c517de8928c04b30
 
-PODFILE CHECKSUM: 111723b26705f1f5ca4ab8e7abf5a60034b3d86c
+PODFILE CHECKSUM: 6282c94fa60ca77994ada24887ad67a9c2b81a80
 
 COCOAPODS: 1.6.1

Diferenças do arquivo suprimidas por serem muito extensas
+ 2608 - 2628
HappyJob/Pods/Pods.xcodeproj/project.pbxproj


+ 3 - 3
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SGEasyButton.xcscheme

@@ -14,9 +14,9 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "674F94CB719E03849A93DC3AE9F7EDCA"
-               BuildableName = "SGEasyButton.framework"
-               BlueprintName = "SGEasyButton"
+               BlueprintIdentifier = "E893DDE40CFA4576C3C9CE365DC98B78"
+               BuildableName = "JKCountDownButton.framework"
+               BlueprintName = "JKCountDownButton"
                ReferencedContainer = "container:Pods.xcodeproj">
             </BuildableReference>
          </BuildActionEntry>

+ 2 - 2
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/Pods-HappyJob.xcscheme

@@ -14,7 +14,7 @@
             buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "F750332C16E1F2EC56B73EDC38DED0B6"
+               BlueprintIdentifier = "372E41B12534225F545B838F77959899"
                BuildableName = "Pods_HappyJob.framework"
                BlueprintName = "Pods-HappyJob"
                ReferencedContainer = "container:Pods.xcodeproj">
@@ -45,7 +45,7 @@
       <MacroExpansion>
          <BuildableReference
             BuildableIdentifier = "primary"
-            BlueprintIdentifier = "F750332C16E1F2EC56B73EDC38DED0B6"
+            BlueprintIdentifier = "372E41B12534225F545B838F77959899"
             BuildableName = "Pods_HappyJob.framework"
             BlueprintName = "Pods-HappyJob"
             ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SDCycleScrollView.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "43CB3EC3D30BFF05A60C825D0E5BCBDC"
+               BlueprintIdentifier = "13681B0030F8178240E820A196EF9157"
                BuildableName = "SDCycleScrollView.framework"
                BlueprintName = "SDCycleScrollView"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SDWebImage.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "C77C435FFABC371C0513347CC9FF9ACC"
+               BlueprintIdentifier = "33693293ECAAB24F7D49E9580CB1B087"
                BuildableName = "SDWebImage.framework"
                BlueprintName = "SDWebImage"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/SVProgressHUD.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "2362F3F8E918D5464F37B6F92AC28E1C"
+               BlueprintIdentifier = "4E9560872CF18695A5A97A0C841ECBA6"
                BuildableName = "SVProgressHUD.framework"
                BlueprintName = "SVProgressHUD"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/TXScrollLabelView.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "8384D37E0E4F06982C0CB36A8DC5512A"
+               BlueprintIdentifier = "E835EB94DE56E6240348341B6762B015"
                BuildableName = "TXScrollLabelView.framework"
                BlueprintName = "TXScrollLabelView"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/WechatOpenSDK.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "76D1F703BE4F873320C7308E0A1B97C9"
+               BlueprintIdentifier = "4CC9959F483C65380C34F2EB89783516"
                BuildableName = "WechatOpenSDK"
                BlueprintName = "WechatOpenSDK"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/XHLaunchAd.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "6491DE3482126E53E7E83BB8AE385156"
+               BlueprintIdentifier = "8EA33D6BD77B12092378457FAD66BF54"
                BuildableName = "XHLaunchAd.framework"
                BlueprintName = "XHLaunchAd"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/YTKNetwork.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "A525C8E9AC0AB7F192551302FD05C098"
+               BlueprintIdentifier = "D35B42DDA9333A08166D56E7DB25FD6C"
                BuildableName = "YTKNetwork.framework"
                BlueprintName = "YTKNetwork"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 1 - 1
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/YYModel.xcscheme

@@ -14,7 +14,7 @@
             buildForArchiving = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
-               BlueprintIdentifier = "D33C8742D0BB493CA7115D96C491A579"
+               BlueprintIdentifier = "82FF85136F0F7B95F47F00311D884074"
                BuildableName = "YYModel.framework"
                BlueprintName = "YYModel"
                ReferencedContainer = "container:Pods.xcodeproj">

+ 5 - 5
HappyJob/Pods/Pods.xcodeproj/xcuserdata/Bob.xcuserdatad/xcschemes/xcschememanagement.plist

@@ -44,6 +44,11 @@
 			<key>isShown</key>
 			<false/>
 		</dict>
+		<key>JKCountDownButton.xcscheme</key>
+		<dict>
+			<key>isShown</key>
+			<false/>
+		</dict>
 		<key>MJRefresh.xcscheme</key>
 		<dict>
 			<key>isShown</key>
@@ -74,11 +79,6 @@
 			<key>isShown</key>
 			<false/>
 		</dict>
-		<key>SGEasyButton.xcscheme</key>
-		<dict>
-			<key>isShown</key>
-			<false/>
-		</dict>
 		<key>SVProgressHUD.xcscheme</key>
 		<dict>
 			<key>isShown</key>

+ 0 - 80
HappyJob/Pods/SGEasyButton/README.md

@@ -1,80 +0,0 @@
-
-# SGEasyButton
-
-
-## 前沿
-
-* SGEasyButton 是关于 UIButton 的一个分类集合
-
-
-### 效果图:一句代码搞定按钮的图片与文字布局样式
-
-![](https://github.com/kingsic/SGEasyButton/raw/master/Picture/sorgle.png)
-
-
-## 主要内容的介绍
-
-* `UIButton+SGEvent (按钮响应事件时间间隔分类)`<br>
-
-* `UIButton+SGCountdown (获取验证码分类)`<br>
-
-* `UIButton+SGImagePosition (一句代码搞定按钮的图片与文字布局样式分类)`<br>
-
-
-## SGEasyButton 集成
-
-* 1、CocoaPods 导入 pod 'SGEasyButton' '~> 0.0.5'
-
-* 2、下载、拖拽 “SGEasyButton” 文件夹到工程中
- 
-#### 一句代码搞定按钮的连续点击问题
-```
-button.SG_eventTimeInterval = 1;
-```
-
-#### 一句代码搞定按钮的获取验证码设置
-```
-[button SG_countdownWithSec:30];
-```
-
-#### 一句代码搞定按钮的图片与文字布局样式
-```
-/**
- *  设置图片与文字样式
- *
- *  @param imagePositionStyle     图片位置样式
- *  @param spacing                图片与文字之间的间距
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing;
-
-/**
- *  设置图片与文字样式(推荐使用)
- *
- *  @param imagePositionStyle     图片位置样式
- *  @param spacing                图片与文字之间的间距
- *  @param imagePositionBlock     在此 Block 中设置按钮的图片、文字以及 contentHorizontalAlignment 属性
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing imagePositionBlock:(void (^)(UIButton *button))imagePositionBlock;
-```
-
-
-## 问题及解决方案
-
-#### 1、CocoaPods 安装 SGEasyButton 时,遇到的问题及解决方案
-
-* 若在使用 CocoaPods 安装 SGEasyButton 时,出现 [!] Unable to find a specification for SGEasyButton 提示时,打开终端先输入 pod repo remove master;执行完毕后再输入 pod setup 即可 (可能会等待一段时间)
-
-
-## 版本记录
-
-2017-09-17 :初始化版本
-
-2017-09-25 :新增获取验证码分类
-
-2017-11-21 :v0.0.5 新增 SG_imagePositionStyle:spacing:imagePosition 方法
-
-
-## Concluding remarks
-
-* 如在使用中, 遇到什么问题或有更好建议者, 请记得 [Issues me](https://github.com/kingsic/SGEasyButton/issues) 或 kingsic@126.com 邮箱联系我
-

+ 0 - 16
HappyJob/Pods/SGEasyButton/SGEasyButton/SGEasyButton.h

@@ -1,16 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic
-//
-//  SGEasyButton.h
-//  Version 0.0.6
-//
-//  Created by kingsic on 2017/9/18.
-//  Copyright © 2017年 kingsic. All rights reserved.
-//
-
-#import "UIButton+SGEvent.h"
-#import "UIButton+SGCountdown.h"
-#import "UIButton+SGImagePosition.h"

+ 0 - 28
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGCountdown.h

@@ -1,28 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGCountdown.h
-//  SGEasyButtonExample
-//
-//  Created by kingsic on 2017/9/25.
-//  Copyright © 2017年 kingsic. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-
-typedef void(^SGCountdownCompletionBlock)(void);
-
-@interface UIButton (SGCountdown)
-/** 倒计时,s倒计 */
-- (void)SG_countdownWithSec:(NSInteger)time;
-/** 倒计时,秒字倒计 */
-- (void)SG_countdownWithSecond:(NSInteger)second;
-/** 倒计时,s倒计,带有回调 */
-- (void)SG_countdownWithSec:(NSInteger)sec completion:(SGCountdownCompletionBlock)block;
-/** 倒计时,秒字倒计,带有回调 */
-- (void)SG_countdownWithSecond:(NSInteger)second completion:(SGCountdownCompletionBlock)block;
-
-@end

+ 0 - 116
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGCountdown.m

@@ -1,116 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGCountdown.m
-//  SGEasyButtonExample
-//
-//  Created by kingsic on 2017/9/25.
-//  Copyright © 2017年 kingsic. All rights reserved.
-//
-
-#import "UIButton+SGCountdown.h"
-
-@implementation UIButton (SGCountdown)
-
-/** 倒计时,s倒计 */
-- (void)SG_countdownWithSec:(NSInteger)sec {
-    __block NSInteger tempSecond = sec;
-    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
-    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
-    dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0);
-    dispatch_source_set_event_handler(timer, ^{
-        if (tempSecond <= 1) {
-            dispatch_source_cancel(timer);
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = YES;
-                [self setTitle:@"获取验证码" forState:UIControlStateNormal];
-            });
-        } else {
-            tempSecond--;
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = NO;
-                [self setTitle:[NSString stringWithFormat:@"%lds", (long)tempSecond] forState:UIControlStateNormal];
-            });
-        }
-    });
-    dispatch_resume(timer);
-}
-
-/** 倒计时,秒字倒计 */
-- (void)SG_countdownWithSecond:(NSInteger)second {
-    __block NSInteger tempSecond = second;
-    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
-    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
-    dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0);
-    dispatch_source_set_event_handler(timer, ^{
-        if (tempSecond <= 1) {
-            dispatch_source_cancel(timer);
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = YES;
-                [self setTitle:@"获取验证码" forState:UIControlStateNormal];
-            });
-        } else {
-            tempSecond--;
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = NO;
-                [self setTitle:[NSString stringWithFormat:@"%ld秒", (long)tempSecond] forState:UIControlStateNormal];
-            });
-        }
-    });
-    dispatch_resume(timer);
-}
-
-/** 倒计时,s倒计,带有回调 */
-- (void)SG_countdownWithSec:(NSInteger)sec completion:(SGCountdownCompletionBlock)block {
-    __block NSInteger tempSecond = sec;
-    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
-    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
-    dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0);
-    dispatch_source_set_event_handler(timer, ^{
-        if (tempSecond <= 1) {
-            dispatch_source_cancel(timer);
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = YES;
-                block();
-            });
-        } else {
-            tempSecond--;
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = NO;
-                [self setTitle:[NSString stringWithFormat:@"%lds", (long)tempSecond] forState:UIControlStateNormal];
-            });
-        }
-    });
-    dispatch_resume(timer);
-}
-
-/** 倒计时,秒字倒计,带有回调 */
-- (void)SG_countdownWithSecond:(NSInteger)second completion:(SGCountdownCompletionBlock)block {
-    __block NSInteger tempSecond = second;
-    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
-    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
-    dispatch_source_set_timer(timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0);
-    dispatch_source_set_event_handler(timer, ^{
-        if (tempSecond <= 1) {
-            dispatch_source_cancel(timer);
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = YES;
-                block();
-            });
-        } else {
-            tempSecond--;
-            dispatch_async(dispatch_get_main_queue(), ^{
-                self.enabled = NO;
-                [self setTitle:[NSString stringWithFormat:@"%ld秒", (long)tempSecond] forState:UIControlStateNormal];
-            });
-        }
-    });
-    dispatch_resume(timer);
-}
-
-
-@end
-

+ 0 - 20
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGEvent.h

@@ -1,20 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGEvent.h
-//  UIButton+SGEvent
-//
-//  Created by kingsic on 16/10/9.
-//  Copyright © 2016年 kingsic. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-
-@interface UIButton (SGEvent)
-/** 按钮事件响应间隔 */
-@property (nonatomic, assign) NSTimeInterval SG_eventTimeInterval;
-
-@end

+ 0 - 76
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGEvent.m

@@ -1,76 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGEvent.m
-//  UIButton+SGEvent
-//
-//  Created by kingsic on 16/10/9.
-//  Copyright © 2016年 kingsic. All rights reserved.
-//
-
-#import "UIButton+SGEvent.h"
-#import <objc/runtime.h>
-
-@interface UIButton ()
-/// 是否忽略点击事件;YES,忽略点击事件,NO,允许点击事件
-@property (nonatomic, assign) BOOL isIgnoreEvent;
-@end
-
-@implementation UIButton (SGEvent)
-
-static const CGFloat SGEventDefaultTimeInterval = 0;
-
-- (BOOL)isIgnoreEvent {
-    return [objc_getAssociatedObject(self, @"isIgnoreEvent") boolValue];
-}
-
-- (void)setIsIgnoreEvent:(BOOL)isIgnoreEvent {
-    objc_setAssociatedObject(self, @"isIgnoreEvent", @(isIgnoreEvent), OBJC_ASSOCIATION_ASSIGN);
-}
-
-- (NSTimeInterval)SG_eventTimeInterval {
-    return [objc_getAssociatedObject(self, @"SG_eventTimeInterval") doubleValue];
-}
-
-- (void)setSG_eventTimeInterval:(NSTimeInterval)SG_eventTimeInterval {
-    objc_setAssociatedObject(self, @"SG_eventTimeInterval", @(SG_eventTimeInterval), OBJC_ASSOCIATION_ASSIGN);
-}
-
-+ (void)load {
-    static dispatch_once_t onceToken;
-    dispatch_once(&onceToken, ^{
-        SEL systemSEL = @selector(sendAction:to:forEvent:);
-        SEL replaceSEL = @selector(SG_sendAction:to:forEvent:);
-        Method systemMethod = class_getInstanceMethod(self, systemSEL);
-        Method replaceMethod = class_getInstanceMethod(self, replaceSEL);
-        
-        BOOL isAdd = class_addMethod(self, systemSEL, method_getImplementation(replaceMethod), method_getTypeEncoding(replaceMethod));
-        
-        if (isAdd) {
-            class_replaceMethod(self, replaceSEL, method_getImplementation(systemMethod), method_getTypeEncoding(systemMethod));
-        } else {
-            // 添加失败,说明本类中有 replaceMethod 的实现,此时只需要将 systemMethod 和 replaceMethod 的IMP互换一下即可
-            method_exchangeImplementations(systemMethod, replaceMethod);
-        }
-    });
-}
-
-- (void)SG_sendAction:(SEL)action to:(id)target forEvent:(UIEvent *)event {
-    self.SG_eventTimeInterval = self.SG_eventTimeInterval == 0 ? SGEventDefaultTimeInterval : self.SG_eventTimeInterval;
-    if (self.isIgnoreEvent){
-        return;
-    } else if (self.SG_eventTimeInterval >= 0) {
-        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(self.SG_eventTimeInterval * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
-            [self setIsIgnoreEvent:NO];
-        });
-    }
-    self.isIgnoreEvent = YES;
-    [self SG_sendAction:action to:target forEvent:event];
-}
-
-
-@end
-

+ 0 - 45
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGImagePosition.h

@@ -1,45 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGImagePosition.h
-//  UIButton+SGImagePosition
-//
-//  Created by kingsic on 2017/8/7.
-//  Copyright © 2017年 kingsic. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-
-typedef enum : NSUInteger {
-    /// 图片在左,文字在右
-    SGImagePositionStyleDefault,
-    /// 图片在右,文字在左
-    SGImagePositionStyleRight,
-    /// 图片在上,文字在下
-    SGImagePositionStyleTop,
-    /// 图片在下,文字在上
-    SGImagePositionStyleBottom,
-} SGImagePositionStyle;
-
-@interface UIButton (SGImagePosition)
-/**
- *  设置图片与文字样式
- *
- *  @param imagePositionStyle     图片位置样式
- *  @param spacing                图片与文字之间的间距
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing;
-
-/**
- *  设置图片与文字样式(推荐使用)
- *
- *  @param imagePositionStyle     图片位置样式
- *  @param spacing                图片与文字之间的间距
- *  @param imagePositionBlock     在此 Block 中设置按钮的图片、文字以及 contentHorizontalAlignment 属性
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing imagePositionBlock:(void (^)(UIButton *button))imagePositionBlock;
-
-@end

+ 0 - 121
HappyJob/Pods/SGEasyButton/SGEasyButton/UIButton+SGImagePosition.m

@@ -1,121 +0,0 @@
-//
-//  如遇到问题或有更好方案,请通过以下方式进行联系
-//      QQ:1357127436
-//      Email:kingsic@126.com
-//      GitHub:https://github.com/kingsic/SGEasyButton
-//
-//  UIButton+SGImagePosition.m
-//  UIButton+SGImagePosition
-//
-//  Created by kingsic on 2017/8/7.
-//  Copyright © 2017年 kingsic. All rights reserved.
-//
-
-#import "UIButton+SGImagePosition.h"
-
-@implementation UIButton (SGImagePosition)
-
-/**
- *  设置图片与文字样式
- *
- *  @param imagePositionStyle     图片的文字
- *  @param spacing           图片与文字之间的间距
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing {
-    if (imagePositionStyle == SGImagePositionStyleDefault) {
-        if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentLeft) {
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, spacing, 0, 0);
-        } else if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentRight) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, spacing);
-        } else {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, - 0.5 * spacing, 0, 0.5 * spacing);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, 0.5 * spacing, 0, - 0.5 * spacing);
-        }
-    } else if (imagePositionStyle == SGImagePositionStyleRight) {
-        CGFloat imageW = self.imageView.image.size.width;
-        CGFloat titleW = self.titleLabel.frame.size.width;
-        if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentLeft) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, titleW + spacing, 0, 0);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, 0, 0);
-        } else if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentRight) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, - titleW);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, 0, 0, imageW + spacing);
-        } else {
-            CGFloat imageOffset = titleW + 0.5 * spacing;
-            CGFloat titleOffset = imageW + 0.5 * spacing;
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, imageOffset, 0, - imageOffset);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, - titleOffset, 0, titleOffset);
-        }
-    } else if (imagePositionStyle == SGImagePositionStyleTop) {
-        CGFloat imageW = self.imageView.frame.size.width;
-        CGFloat imageH = self.imageView.frame.size.height;
-        CGFloat titleIntrinsicContentSizeW = self.titleLabel.intrinsicContentSize.width;
-        CGFloat titleIntrinsicContentSizeH = self.titleLabel.intrinsicContentSize.height;
-        self.imageEdgeInsets = UIEdgeInsetsMake(- titleIntrinsicContentSizeH - spacing, 0, 0, - titleIntrinsicContentSizeW);
-        self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, - imageH - spacing, 0);
-    } else if (imagePositionStyle == SGImagePositionStyleBottom) {
-        CGFloat imageW = self.imageView.frame.size.width;
-        CGFloat imageH = self.imageView.frame.size.height;
-        CGFloat titleIntrinsicContentSizeW = self.titleLabel.intrinsicContentSize.width;
-        CGFloat titleIntrinsicContentSizeH = self.titleLabel.intrinsicContentSize.height;
-        self.imageEdgeInsets = UIEdgeInsetsMake(titleIntrinsicContentSizeH + spacing, 0, 0, - titleIntrinsicContentSizeW);
-        self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, imageH + spacing, 0);
-    }
-}
-
-
-/**
- *  设置图片与文字样式(推荐使用)
- *
- *  @param imagePositionStyle     图片位置样式
- *  @param spacing                图片与文字之间的间距
- *  @param imagePositionBlock     在此 Block 中设置按钮的图片、文字以及 contentHorizontalAlignment 属性
- */
-- (void)SG_imagePositionStyle:(SGImagePositionStyle)imagePositionStyle spacing:(CGFloat)spacing imagePositionBlock:(void (^)(UIButton *button))imagePositionBlock {
-
-    imagePositionBlock(self);
-    
-    if (imagePositionStyle == SGImagePositionStyleDefault) {
-        if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentLeft) {
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, spacing, 0, 0);
-        } else if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentRight) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, spacing);
-        } else {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, - 0.5 * spacing, 0, 0.5 * spacing);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, 0.5 * spacing, 0, - 0.5 * spacing);
-        }
-    } else if (imagePositionStyle == SGImagePositionStyleRight) {
-        CGFloat imageW = self.imageView.image.size.width;
-        CGFloat titleW = self.titleLabel.frame.size.width;
-        if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentLeft) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, titleW + spacing, 0, 0);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, 0, 0);
-        } else if (self.contentHorizontalAlignment == UIControlContentHorizontalAlignmentRight) {
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, - titleW);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, 0, 0, imageW + spacing);
-        } else {
-            CGFloat imageOffset = titleW + 0.5 * spacing;
-            CGFloat titleOffset = imageW + 0.5 * spacing;
-            self.imageEdgeInsets = UIEdgeInsetsMake(0, imageOffset, 0, - imageOffset);
-            self.titleEdgeInsets = UIEdgeInsetsMake(0, - titleOffset, 0, titleOffset);
-        }
-    } else if (imagePositionStyle == SGImagePositionStyleTop) {
-        CGFloat imageW = self.imageView.frame.size.width;
-        CGFloat imageH = self.imageView.frame.size.height;
-        CGFloat titleIntrinsicContentSizeW = self.titleLabel.intrinsicContentSize.width;
-        CGFloat titleIntrinsicContentSizeH = self.titleLabel.intrinsicContentSize.height;
-        self.imageEdgeInsets = UIEdgeInsetsMake(- titleIntrinsicContentSizeH - spacing, 0, 0, - titleIntrinsicContentSizeW);
-        self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, - imageH - spacing, 0);
-    } else if (imagePositionStyle == SGImagePositionStyleBottom) {
-        CGFloat imageW = self.imageView.frame.size.width;
-        CGFloat imageH = self.imageView.frame.size.height;
-        CGFloat titleIntrinsicContentSizeW = self.titleLabel.intrinsicContentSize.width;
-        CGFloat titleIntrinsicContentSizeH = self.titleLabel.intrinsicContentSize.height;
-        self.imageEdgeInsets = UIEdgeInsetsMake(titleIntrinsicContentSizeH + spacing, 0, 0, - titleIntrinsicContentSizeW);
-        self.titleEdgeInsets = UIEdgeInsetsMake(0, - imageW, imageH + spacing, 0);
-    }
-}
-
-
-@end
-

+ 1 - 1
HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-Info.plist

@@ -15,7 +15,7 @@
   <key>CFBundlePackageType</key>
   <string>FMWK</string>
   <key>CFBundleShortVersionString</key>
-  <string>0.0.6</string>
+  <string>1.3.0</string>
   <key>CFBundleSignature</key>
   <string>????</string>
   <key>CFBundleVersion</key>

+ 5 - 0
HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-dummy.m

@@ -0,0 +1,5 @@
+#import <Foundation/Foundation.h>
+@interface PodsDummy_JKCountDownButton : NSObject
+@end
+@implementation PodsDummy_JKCountDownButton
+@end

HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-prefix.pch → HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-prefix.pch


+ 17 - 0
HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton-umbrella.h

@@ -0,0 +1,17 @@
+#ifdef __OBJC__
+#import <UIKit/UIKit.h>
+#else
+#ifndef FOUNDATION_EXPORT
+#if defined(__cplusplus)
+#define FOUNDATION_EXPORT extern "C"
+#else
+#define FOUNDATION_EXPORT extern
+#endif
+#endif
+#endif
+
+#import "JKCountDownButton.h"
+
+FOUNDATION_EXPORT double JKCountDownButtonVersionNumber;
+FOUNDATION_EXPORT const unsigned char JKCountDownButtonVersionString[];
+

+ 6 - 0
HappyJob/Pods/Target Support Files/JKCountDownButton/JKCountDownButton.modulemap

@@ -0,0 +1,6 @@
+framework module JKCountDownButton {
+  umbrella header "JKCountDownButton-umbrella.h"
+
+  export *
+  module * { export * }
+}

+ 2 - 2
HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton.xcconfig

@@ -1,8 +1,8 @@
-CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SGEasyButton
+CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/JKCountDownButton
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
 PODS_ROOT = ${SRCROOT}
-PODS_TARGET_SRCROOT = ${PODS_ROOT}/SGEasyButton
+PODS_TARGET_SRCROOT = ${PODS_ROOT}/JKCountDownButton
 PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
 SKIP_INSTALL = YES

+ 26 - 25
HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-acknowledgements.markdown

@@ -140,6 +140,32 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.
 
 
+## JKCountDownButton
+
+The MIT License (MIT)
+
+Copyright (c) 2015 
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+
+
 ## MJRefresh
 
 Copyright (c) 2013-2015 MJRefresh (https://github.com/CoderMJLee/MJRefresh)
@@ -258,31 +284,6 @@ THE SOFTWARE.
 
 
 
-## SGEasyButton
-
-MIT License
-
-Copyright (c) 2017 kingsic
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-
-
 ## SVProgressHUD
 
 MIT License

+ 32 - 31
HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-acknowledgements.plist

@@ -201,6 +201,38 @@ SOFTWARE.
 		</dict>
 		<dict>
 			<key>FooterText</key>
+			<string>The MIT License (MIT)
+
+Copyright (c) 2015 
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+</string>
+			<key>License</key>
+			<string>MIT</string>
+			<key>Title</key>
+			<string>JKCountDownButton</string>
+			<key>Type</key>
+			<string>PSGroupSpecifier</string>
+		</dict>
+		<dict>
+			<key>FooterText</key>
 			<string>Copyright (c) 2013-2015 MJRefresh (https://github.com/CoderMJLee/MJRefresh)
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -351,37 +383,6 @@ THE SOFTWARE.
 			<key>FooterText</key>
 			<string>MIT License
 
-Copyright (c) 2017 kingsic
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-</string>
-			<key>License</key>
-			<string>MIT</string>
-			<key>Title</key>
-			<string>SGEasyButton</string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-		<dict>
-			<key>FooterText</key>
-			<string>MIT License
-
 Copyright (c) 2011-2018 Sam Vermette, Tobias Tiemerding and contributors.
 
 Permission is hereby granted, free of charge, to any person obtaining a copy

+ 2 - 2
HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob-frameworks.sh

@@ -159,12 +159,12 @@ if [[ "$CONFIGURATION" == "Debug" ]]; then
   install_framework "${BUILT_PRODUCTS_DIR}/FCUUID/FCUUID.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/FLAnimatedImage/FLAnimatedImage.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/IQKeyboardManager/IQKeyboardManager.framework"
+  install_framework "${BUILT_PRODUCTS_DIR}/JKCountDownButton/JKCountDownButton.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/NSDictionary-NilSafe/NSDictionary_NilSafe.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SDCycleScrollView/SDCycleScrollView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework"
-  install_framework "${BUILT_PRODUCTS_DIR}/SGEasyButton/SGEasyButton.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/TXScrollLabelView/TXScrollLabelView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/UICKeyChainStore/UICKeyChainStore.framework"
@@ -179,12 +179,12 @@ if [[ "$CONFIGURATION" == "Release" ]]; then
   install_framework "${BUILT_PRODUCTS_DIR}/FCUUID/FCUUID.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/FLAnimatedImage/FLAnimatedImage.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/IQKeyboardManager/IQKeyboardManager.framework"
+  install_framework "${BUILT_PRODUCTS_DIR}/JKCountDownButton/JKCountDownButton.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/NSDictionary-NilSafe/NSDictionary_NilSafe.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SDCycleScrollView/SDCycleScrollView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework"
-  install_framework "${BUILT_PRODUCTS_DIR}/SGEasyButton/SGEasyButton.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/TXScrollLabelView/TXScrollLabelView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/UICKeyChainStore/UICKeyChainStore.framework"

Diferenças do arquivo suprimidas por serem muito extensas
+ 4 - 4
HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob.debug.xcconfig


Diferenças do arquivo suprimidas por serem muito extensas
+ 4 - 4
HappyJob/Pods/Target Support Files/Pods-HappyJob/Pods-HappyJob.release.xcconfig


+ 0 - 5
HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-dummy.m

@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_SGEasyButton : NSObject
-@end
-@implementation PodsDummy_SGEasyButton
-@end

+ 0 - 20
HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton-umbrella.h

@@ -1,20 +0,0 @@
-#ifdef __OBJC__
-#import <UIKit/UIKit.h>
-#else
-#ifndef FOUNDATION_EXPORT
-#if defined(__cplusplus)
-#define FOUNDATION_EXPORT extern "C"
-#else
-#define FOUNDATION_EXPORT extern
-#endif
-#endif
-#endif
-
-#import "SGEasyButton.h"
-#import "UIButton+SGCountdown.h"
-#import "UIButton+SGEvent.h"
-#import "UIButton+SGImagePosition.h"
-
-FOUNDATION_EXPORT double SGEasyButtonVersionNumber;
-FOUNDATION_EXPORT const unsigned char SGEasyButtonVersionString[];
-

+ 0 - 6
HappyJob/Pods/Target Support Files/SGEasyButton/SGEasyButton.modulemap

@@ -1,6 +0,0 @@
-framework module SGEasyButton {
-  umbrella header "SGEasyButton-umbrella.h"
-
-  export *
-  module * { export * }
-}