浏览代码

初始化项目版本

RONG 1 年之前
当前提交
7b1890d6a7
共有 100 个文件被更改,包括 3486 次插入0 次删除
  1. 1564 0
      LNManager.xcodeproj/project.pbxproj
  2. 7 0
      LNManager.xcodeproj/project.xcworkspace/contents.xcworkspacedata
  3. 二进制
      LNManager.xcodeproj/project.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate
  4. 二进制
      LNManager.xcodeproj/project.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/UserInterfaceState.xcuserstate
  5. 91 0
      LNManager.xcodeproj/xcuserdata/apple.xcuserdatad/xcschemes/LNManager.xcscheme
  6. 22 0
      LNManager.xcodeproj/xcuserdata/apple.xcuserdatad/xcschemes/xcschememanagement.plist
  7. 14 0
      LNManager.xcodeproj/xcuserdata/zhangrong.xcuserdatad/xcschemes/xcschememanagement.plist
  8. 10 0
      LNManager.xcworkspace/contents.xcworkspacedata
  9. 8 0
      LNManager.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
  10. 二进制
      LNManager.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate
  11. 17 0
      LNManager.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
  12. 二进制
      LNManager.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/UserInterfaceState.xcuserstate
  13. 33 0
      LNManager.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
  14. 二进制
      LNManager.xcworkspace/xcuserdata/zhangrong.xcuserdatad/UserInterfaceState.xcuserstate
  15. 15 0
      LNManager/ADLinkVC.h
  16. 71 0
      LNManager/ADLinkVC.m
  17. 13 0
      LNManager/AboutVC.h
  18. 88 0
      LNManager/AboutVC.m
  19. 30 0
      LNManager/AdvertisingColumn.h
  20. 136 0
      LNManager/AdvertisingColumn.m
  21. 39 0
      LNManager/AppDelegate.h
  22. 463 0
      LNManager/AppDelegate.mm
  23. 13 0
      LNManager/AssessorDetail.h
  24. 67 0
      LNManager/AssessorDetail.m
  25. 15 0
      LNManager/AssessorList.h
  26. 160 0
      LNManager/AssessorList.m
  27. 62 0
      LNManager/Assets.xcassets/AppIcon.appiconset/Contents.json
  28. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/man.png
  29. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneApp_60pt@2x.png
  30. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneApp_60pt@3x.png
  31. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneNotification_20pt@2x.png
  32. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneNotification_20pt@3x.png
  33. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight5_29pt@2x.png
  34. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight5_29pt@3x.png
  35. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight7_40pt@2x.png
  36. 二进制
      LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight7_40pt@3x.png
  37. 6 0
      LNManager/Assets.xcassets/Contents.json
  38. 6 0
      LNManager/Assets.xcassets/Job/Contents.json
  39. 21 0
      LNManager/Assets.xcassets/Job/arrow_left.imageset/Contents.json
  40. 二进制
      LNManager/Assets.xcassets/Job/arrow_left.imageset/箭头-5.png
  41. 21 0
      LNManager/Assets.xcassets/Job/arrow_right.imageset/Contents.json
  42. 二进制
      LNManager/Assets.xcassets/Job/arrow_right.imageset/箭头-4.png
  43. 21 0
      LNManager/Assets.xcassets/Job/beginDate.imageset/Contents.json
  44. 二进制
      LNManager/Assets.xcassets/Job/beginDate.imageset/start_time_icon.png
  45. 21 0
      LNManager/Assets.xcassets/Job/endDate.imageset/Contents.json
  46. 二进制
      LNManager/Assets.xcassets/Job/endDate.imageset/end_time_icon.png
  47. 21 0
      LNManager/Assets.xcassets/Job/fold.imageset/Contents.json
  48. 二进制
      LNManager/Assets.xcassets/Job/fold.imageset/收起3.png
  49. 22 0
      LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/Contents.json
  50. 二进制
      LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/ic_assessor_manager-1.png
  51. 二进制
      LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/ic_assessor_manager.png
  52. 22 0
      LNManager/Assets.xcassets/Job/ic_car_manager.imageset/Contents.json
  53. 二进制
      LNManager/Assets.xcassets/Job/ic_car_manager.imageset/ic_car_manager-1.png
  54. 二进制
      LNManager/Assets.xcassets/Job/ic_car_manager.imageset/ic_car_manager.png
  55. 22 0
      LNManager/Assets.xcassets/Job/ic_check_train.imageset/Contents.json
  56. 二进制
      LNManager/Assets.xcassets/Job/ic_check_train.imageset/ic_check_train-1.png
  57. 二进制
      LNManager/Assets.xcassets/Job/ic_check_train.imageset/ic_check_train.png
  58. 22 0
      LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/Contents.json
  59. 二进制
      LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/ic_coach_manager-1.png
  60. 二进制
      LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/ic_coach_manager.png
  61. 21 0
      LNManager/Assets.xcassets/Job/ic_jubao_manager.imageset/Contents.json
  62. 二进制
      LNManager/Assets.xcassets/Job/ic_jubao_manager.imageset/举报管理.png
  63. 22 0
      LNManager/Assets.xcassets/Job/ic_notify.imageset/Contents.json
  64. 二进制
      LNManager/Assets.xcassets/Job/ic_notify.imageset/ic_notify-1.png
  65. 二进制
      LNManager/Assets.xcassets/Job/ic_notify.imageset/ic_notify.png
  66. 21 0
      LNManager/Assets.xcassets/Job/ic_pingjia_manager.imageset/Contents.json
  67. 二进制
      LNManager/Assets.xcassets/Job/ic_pingjia_manager.imageset/评价管理.png
  68. 22 0
      LNManager/Assets.xcassets/Job/ic_school_manager.imageset/Contents.json
  69. 二进制
      LNManager/Assets.xcassets/Job/ic_school_manager.imageset/ic_school_manager-1.png
  70. 二进制
      LNManager/Assets.xcassets/Job/ic_school_manager.imageset/ic_school_manager.png
  71. 22 0
      LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/Contents.json
  72. 二进制
      LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/ic_securitor_manager-1.png
  73. 二进制
      LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/ic_securitor_manager.png
  74. 21 0
      LNManager/Assets.xcassets/Job/ic_squSelect.imageset/Contents.json
  75. 二进制
      LNManager/Assets.xcassets/Job/ic_squSelect.imageset/正方形勾选框-未选中.png
  76. 21 0
      LNManager/Assets.xcassets/Job/ic_squSelect_h.imageset/Contents.json
  77. 二进制
      LNManager/Assets.xcassets/Job/ic_squSelect_h.imageset/筛选tab---选项后面的方形框选中后的样子.png
  78. 22 0
      LNManager/Assets.xcassets/Job/ic_student_manager.imageset/Contents.json
  79. 二进制
      LNManager/Assets.xcassets/Job/ic_student_manager.imageset/ic_student_manager-1.png
  80. 二进制
      LNManager/Assets.xcassets/Job/ic_student_manager.imageset/ic_student_manager.png
  81. 22 0
      LNManager/Assets.xcassets/Job/ic_teach_area.imageset/Contents.json
  82. 二进制
      LNManager/Assets.xcassets/Job/ic_teach_area.imageset/ic_teach_area-1.png
  83. 二进制
      LNManager/Assets.xcassets/Job/ic_teach_area.imageset/ic_teach_area.png
  84. 22 0
      LNManager/Assets.xcassets/Job/ic_teach_log.imageset/Contents.json
  85. 二进制
      LNManager/Assets.xcassets/Job/ic_teach_log.imageset/ic_teach_log-1.png
  86. 二进制
      LNManager/Assets.xcassets/Job/ic_teach_log.imageset/ic_teach_log.png
  87. 22 0
      LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/Contents.json
  88. 二进制
      LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/ic_terminal_manager-1.png
  89. 二进制
      LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/ic_terminal_manager.png
  90. 21 0
      LNManager/Assets.xcassets/Job/ic_tousu_manager.imageset/Contents.json
  91. 二进制
      LNManager/Assets.xcassets/Job/ic_tousu_manager.imageset/投诉管理.png
  92. 二进制
      LNManager/Assets.xcassets/Job/ic_waring_manager.imageset/1.png
  93. 21 0
      LNManager/Assets.xcassets/Job/ic_waring_manager.imageset/Contents.json
  94. 21 0
      LNManager/Assets.xcassets/Job/job_car2.imageset/Contents.json
  95. 二进制
      LNManager/Assets.xcassets/Job/job_car2.imageset/car.png
  96. 二进制
      LNManager/Assets.xcassets/Job/job_car2.imageset/跑车.png
  97. 二进制
      LNManager/Assets.xcassets/Job/job_car2.imageset/车.png
  98. 21 0
      LNManager/Assets.xcassets/Job/job_carOff.imageset/Contents.json
  99. 二进制
      LNManager/Assets.xcassets/Job/job_carOff.imageset/job_carOff.png
  100. 21 0
      LNManager/Assets.xcassets/Job/job_carOn.imageset/Contents.json

文件差异内容过多而无法显示
+ 1564 - 0
LNManager.xcodeproj/project.pbxproj


+ 7 - 0
LNManager.xcodeproj/project.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:LNManager.xcodeproj">
+   </FileRef>
+</Workspace>

二进制
LNManager.xcodeproj/project.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate


二进制
LNManager.xcodeproj/project.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/UserInterfaceState.xcuserstate


+ 91 - 0
LNManager.xcodeproj/xcuserdata/apple.xcuserdatad/xcschemes/LNManager.xcscheme

@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0830"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "1D196E2D1E94CEF600544919"
+               BuildableName = "LNManager.app"
+               BlueprintName = "LNManager"
+               ReferencedContainer = "container:LNManager.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "1D196E2D1E94CEF600544919"
+            BuildableName = "LNManager.app"
+            BlueprintName = "LNManager"
+            ReferencedContainer = "container:LNManager.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "1D196E2D1E94CEF600544919"
+            BuildableName = "LNManager.app"
+            BlueprintName = "LNManager"
+            ReferencedContainer = "container:LNManager.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "1D196E2D1E94CEF600544919"
+            BuildableName = "LNManager.app"
+            BlueprintName = "LNManager"
+            ReferencedContainer = "container:LNManager.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 22 - 0
LNManager.xcodeproj/xcuserdata/apple.xcuserdatad/xcschemes/xcschememanagement.plist

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>SchemeUserState</key>
+	<dict>
+		<key>LNManager.xcscheme</key>
+		<dict>
+			<key>orderHint</key>
+			<integer>0</integer>
+		</dict>
+	</dict>
+	<key>SuppressBuildableAutocreation</key>
+	<dict>
+		<key>1D196E2D1E94CEF600544919</key>
+		<dict>
+			<key>primary</key>
+			<true/>
+		</dict>
+	</dict>
+</dict>
+</plist>

+ 14 - 0
LNManager.xcodeproj/xcuserdata/zhangrong.xcuserdatad/xcschemes/xcschememanagement.plist

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>SchemeUserState</key>
+	<dict>
+		<key>LNManager.xcscheme_^#shared#^_</key>
+		<dict>
+			<key>orderHint</key>
+			<integer>19</integer>
+		</dict>
+	</dict>
+</dict>
+</plist>

+ 10 - 0
LNManager.xcworkspace/contents.xcworkspacedata

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "group:LNManager.xcodeproj">
+   </FileRef>
+   <FileRef
+      location = "group:Pods/Pods.xcodeproj">
+   </FileRef>
+</Workspace>

+ 8 - 0
LNManager.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>IDEDidComputeMac32BitWarning</key>
+	<true/>
+</dict>
+</plist>

二进制
LNManager.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate


+ 17 - 0
LNManager.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Bucket
+   type = "0"
+   version = "2.0">
+   <Breakpoints>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            scope = "1"
+            stopOnStyle = "0">
+         </BreakpointContent>
+      </BreakpointProxy>
+   </Breakpoints>
+</Bucket>

二进制
LNManager.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/UserInterfaceState.xcuserstate


+ 33 - 0
LNManager.xcworkspace/xcuserdata/echoshacolee.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Bucket
+   type = "0"
+   version = "2.0">
+   <Breakpoints>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            scope = "0"
+            stopOnStyle = "0">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "LNManager/JobVC.m"
+            timestampString = "542999531.085747"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "166"
+            endingLineNumber = "166"
+            landmarkName = "-tableView:cellForRowAtIndexPath:"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+   </Breakpoints>
+</Bucket>

二进制
LNManager.xcworkspace/xcuserdata/zhangrong.xcuserdatad/UserInterfaceState.xcuserstate


+ 15 - 0
LNManager/ADLinkVC.h

@@ -0,0 +1,15 @@
+//
+//  ADLinkVC.h
+//  jiaPei
+//
+//  Created by apple on 16/4/26.
+//  Copyright © 2016年 JCZ. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface ADLinkVC : UIViewController
+
+@property (nonatomic, copy) NSString *urlString;
+
+@end

+ 71 - 0
LNManager/ADLinkVC.m

@@ -0,0 +1,71 @@
+//
+//  ADLinkVC.m
+//  jiaPei
+//
+//  Created by apple on 16/4/26.
+//  Copyright © 2016年 JCZ. All rights reserved.
+//
+
+#import "ADLinkVC.h"
+#import <WebKit/WebKit.h>
+#import <MBProgressHUD.h>
+
+@interface ADLinkVC ()<WKNavigationDelegate>
+
+@end
+
+@implementation ADLinkVC
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    self.view.backgroundColor = [UIColor whiteColor];
+    
+    self.tabBarController.tabBar.hidden = YES;
+    
+    if (_urlString.length > 0) {
+        
+        [self creatWebView];
+    }
+}
+
+-(void)creatWebView
+{
+    WKWebView *view = [[WKWebView alloc] initWithFrame:kFrame];
+    view.navigationDelegate = self;
+    [self.view addSubview: view];
+    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:_urlString]];
+
+    [MBProgressHUD showHUDAddedTo:self.view animated:NO];
+    [view loadRequest:request];
+}
+
+#pragma mark -
+// 页面加载失败时调用
+- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(null_unspecified WKNavigation *)navigation withError:(NSError *)error{
+    
+    [MBProgressHUD hideHUDForView:self.view animated:NO];
+}
+
+// 页面加载完毕时调用
+- (void)webView:(WKWebView *)webView didFinishNavigation:(null_unspecified WKNavigation *)navigation{
+    
+    [MBProgressHUD hideHUDForView:self.view animated:NO];
+}
+
+
+- (void)didReceiveMemoryWarning {
+    [super didReceiveMemoryWarning];
+    // Dispose of any resources that can be recreated.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 13 - 0
LNManager/AboutVC.h

@@ -0,0 +1,13 @@
+//
+//  AboutVC.h
+//  jiaPei
+//
+//  Created by apple on 15/11/18.
+//  Copyright (c) 2015年 JCZ. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface AboutVC : UIViewController
+
+@end

+ 88 - 0
LNManager/AboutVC.m

@@ -0,0 +1,88 @@
+//
+//  AboutVC.m
+//  jiaPei
+//
+//  Created by apple on 15/11/18.
+//  Copyright (c) 2015年 JCZ. All rights reserved.
+//
+
+#import "AboutVC.h"
+
+@interface AboutVC ()
+
+@end
+
+@implementation AboutVC
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    [self myInit];
+}
+
+- (void)didReceiveMemoryWarning {
+    [super didReceiveMemoryWarning];
+}
+
+-(void)myInit
+{
+    [self setTitle:@"关于我们"];
+   
+    self.view.backgroundColor = [UIColor whiteColor];
+    
+    UIImageView* iv = [[UIImageView alloc] initWithFrame:CGRectMake(0, -kNavOffSet, kSize.width, kSize.height)];
+    [iv setImage:[UIImage imageNamed:@"about"]];
+    [self.view addSubview:iv];
+    
+    CGFloat x = kSize.width/3.0;
+    CGFloat y = 40;
+    CGFloat w, h;
+    w = h = x;
+    
+    UIImageView *logoImg = [[UIImageView alloc] initWithFrame:CGRectMake(x, y, w, h)];
+    logoImg.image = [UIImage imageNamed:@"defaultLogo"];
+    logoImg.layer.masksToBounds = YES;
+    logoImg.layer.cornerRadius  = 5;
+    [self.view addSubview:logoImg];
+    
+    NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
+    // app名称
+    NSString *app_Name = [infoDictionary objectForKey:@"CFBundleDisplayName"];
+    // app版本
+    NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
+    NSString *str = [NSString stringWithFormat:@"%@(%@)",app_Name,app_Version];
+    
+    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(x - 30, y + h + 0, w + 60, 50)];
+    label.backgroundColor = [UIColor clearColor];
+    [label setText:str Font:24 TextColor:RGB_COLOR(17, 101, 120) Alignment:NSTextAlignmentCenter];
+    [self.view addSubview:label];
+}
+
+@end
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+ 30 - 0
LNManager/AdvertisingColumn.h

@@ -0,0 +1,30 @@
+//
+//  AdvertisingColumn.h
+//  CustomTabBar
+//  Created by shikee_app05 on 14-12-30.
+//  Copyright (c) 2014年 chan kaching. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface AdvertisingColumn : UIView<UIScrollViewDelegate>{
+    
+    NSTimer *_timer;
+}
+
+//广告栏
+@property (nonatomic,strong) UIScrollView *scrollView;
+@property (nonatomic,strong) UIPageControl *pageControl;
+@property (nonatomic,strong) UILabel *imageNum;
+@property (nonatomic,retain) NSArray *imgArray;
+@property (nonatomic,retain) UIViewController *supVC;
+@property (nonatomic) NSInteger totalNum;
+
+
+- (void)setImgArray:(NSArray *)imgArray;
+- (void)openTimer;
+- (void)closeTimer;
+
+
+@end
+

+ 136 - 0
LNManager/AdvertisingColumn.m

@@ -0,0 +1,136 @@
+//
+//  AdvertisingColumn.m
+//  CustomTabBar
+//
+//  Created by shikee_app05 on 14-12-30.
+//  Copyright (c) 2014年 chan kaching. All rights reserved.
+//
+
+#import "AdvertisingColumn.h"
+#import "ADLinkVC.h"
+
+@implementation AdvertisingColumn
+
+- (id)initWithFrame:(CGRect)frame
+{
+    self = [super initWithFrame:frame];
+    if (self) {
+        _scrollView = [[UIScrollView alloc]initWithFrame:frame];
+        _scrollView.delegate = self;//设置代理UIscrollViewDelegate
+        _scrollView.showsVerticalScrollIndicator = NO;//是否显示竖向滚动条
+        _scrollView.showsHorizontalScrollIndicator = NO;//是否显示横向滚动条
+        _scrollView.pagingEnabled = YES;//是否设置分页
+        _scrollView.bounces = NO;
+        
+        [self addSubview:_scrollView];
+
+        /*
+         ***容器,装载
+         */
+        UIView *containerView = [[UIView alloc]initWithFrame:CGRectMake(0, CGRectGetHeight(self.frame)-20, CGRectGetWidth(self.frame), 20)];
+        containerView.backgroundColor = [UIColor clearColor];
+        [self addSubview:containerView];
+        UIView *alphaView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, CGRectGetWidth(containerView.frame), CGRectGetHeight(containerView.frame))];
+        alphaView.alpha = 0.7;
+        [containerView addSubview:alphaView];
+        
+        //分页控制
+        _pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(kSize.width*0.5 - 15, 0, kSize.width, 20)];
+        _pageControl.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
+        _pageControl.currentPage = 0; //初始页码为0
+        [containerView addSubview:_pageControl];
+        
+        //图片张数
+        _imageNum = [[UILabel alloc]initWithFrame:CGRectMake(10, 0, CGRectGetWidth(containerView.frame)-20, 20)];
+        _imageNum.font = [UIFont scaleSize:15];
+        _imageNum.backgroundColor = [UIColor clearColor];
+        _imageNum.textColor = [UIColor whiteColor];
+        _imageNum.textAlignment = NSTextAlignmentRight;
+        [containerView addSubview:_imageNum];
+        
+        /*
+         ***配置定时器,自动滚动广告栏
+         */
+        _timer = [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(timerAction:) userInfo:nil repeats:YES];
+        [[NSRunLoop  currentRunLoop] addTimer:_timer forMode:NSDefaultRunLoopMode];
+        //[_timer setFireDate:[NSDate distantFuture]];//关闭定时器
+    }
+    self.backgroundColor = [UIColor orangeColor];
+    return self;
+}
+//---------------------------------------------------------------------------------
+
+-(void)timerAction:(NSTimer *)timer{
+    if (_totalNum>1) {
+        CGPoint newOffset = _scrollView.contentOffset;
+        newOffset.x = newOffset.x + CGRectGetWidth(_scrollView.frame);
+        //    NSLog(@"newOffset.x = %f",newOffset.x);
+        if (newOffset.x > (CGRectGetWidth(_scrollView.frame) * (_totalNum-1))) {
+            newOffset.x = 0 ;
+        }
+        int index = newOffset.x / CGRectGetWidth(_scrollView.frame);   //当前是第几个视图
+        newOffset.x = index * CGRectGetWidth(_scrollView.frame);
+        _imageNum.text = [NSString stringWithFormat:@"%d / %d",index+1,(int)_totalNum];
+        [_scrollView setContentOffset:newOffset animated:YES];
+    }else{
+        [_timer setFireDate:[NSDate distantFuture]];//关闭定时器
+    }
+}
+
+#pragma mark- PageControl绑定ScrollView
+- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
+   
+    if ([scrollView isMemberOfClass:[UITableView class]]) {
+        
+    }else {
+        int index = fabs(scrollView.contentOffset.x) / scrollView.frame.size.width;   //当前是第几个视图
+        _pageControl.currentPage = index;
+        _imageNum.text = [NSString stringWithFormat:@"%d / %d",(int)_pageControl.currentPage+1,(int)_totalNum];
+    }
+}
+- (void)setImgArray:(NSArray *)imgArray{
+    
+    _imgArray = imgArray;
+    _totalNum = [imgArray count];
+  
+    for (int i = 0; i<_totalNum; i++) {
+        UIImageView *img = [[UIImageView alloc]initWithFrame:CGRectMake(i*CGRectGetWidth(_scrollView.frame), 0, CGRectGetWidth(_scrollView.frame), CGRectGetHeight(_scrollView.frame))];
+        img.contentMode = UIViewContentModeScaleAspectFill;
+        //img.image = [UIImage imageNamed:imgArray[i]];
+        [img setClipsToBounds:YES];
+        img.image = [UIImage imageNamed:imgArray[i]];
+        [img setTag:i];
+        
+        //把手势添加到指定视图上
+        [img setUserInteractionEnabled:YES];
+        UITapGestureRecognizer *tapGesture  = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(skipToADLink:)];
+        [img addGestureRecognizer:tapGesture];
+        
+        [_scrollView addSubview:img];
+    }
+    _imageNum.text = [NSString stringWithFormat:@"%d / %d",(int)_pageControl.currentPage+1,(int)_totalNum];
+    _pageControl.numberOfPages = _totalNum; //设置页数 //滚动范围 600=300*2,分2页
+    CGRect frame;
+    frame = _pageControl.frame;
+    frame.size.width = 15*_totalNum;
+    _pageControl.frame = frame;
+    
+    _scrollView.contentSize = CGSizeMake(CGRectGetWidth(_scrollView.frame)*_totalNum,CGRectGetHeight(_scrollView.frame));//滚动范围 600=300*2,分2页
+
+}
+
+//程序内跳转
+-(void)skipToADLink:(UITapGestureRecognizer *)gesture
+{
+    
+}
+
+- (void)openTimer{
+    [_timer setFireDate:[NSDate distantPast]];//开启定时器
+}
+- (void)closeTimer{
+    [_timer setFireDate:[NSDate distantFuture]];//关闭定时器
+}
+
+
+@end

+ 39 - 0
LNManager/AppDelegate.h

@@ -0,0 +1,39 @@
+//
+//  AppDelegate.h
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/5.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import <GTSDK/GeTuiSdk.h>
+#import <BaiduMapAPI_Base/BMKMapManager.h>
+// iOS10 及以上需导入 UserNotifications.framework
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+#import <UserNotifications/UserNotifications.h>
+#endif
+
+//baidu
+
+/// 个推开发者网站中申请App时,注册的AppId、AppKey、AppSecret
+#define kGtAppId           @"40sxADS8cV9TDpGxYgyIr"
+#define kGtAppKey          @"upVdSNBI7L6vdDe8V0Iyo6"
+#define kGtAppSecret       @"HH8IC2sg4WArzyFg9qpHN3"
+
+//bugly
+#define BUGLY_APP_ID       @"dc465e4179"
+
+
+
+@interface AppDelegate : UIResponder <UIApplicationDelegate>
+
+@property (strong, nonatomic) UIWindow *window;
+
+//登录信息
+@property (nonatomic, retain)NSDictionary * userDic;
+
+@property (nonatomic, copy)NSString *clientId;
+
+@end
+

+ 463 - 0
LNManager/AppDelegate.mm

@@ -0,0 +1,463 @@
+//
+//  AppDelegate.m
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/5.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import "AppDelegate.h"
+#import "LoginVC.h"
+#import "XueShiCheckList.h"
+#import "MyUINavigationController.h"
+#import "WelcomeVC.h"
+
+//客服
+#import "QMProfileManager.h"
+//bugly腾讯bug统计
+#import <Bugly/Bugly.h>
+
+
+@interface AppDelegate ()<GeTuiSdkDelegate, UNUserNotificationCenterDelegate>
+{
+    NSString *pushType;
+}
+@end
+
+@implementation AppDelegate
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
+    
+    NSUserDefaults *ud  = [NSUserDefaults standardUserDefaults];
+    if ([[ud objectForKey:@"isFirstOpenApp"] isEqualToString:@"NO"]) {
+        LoginVC * loginvc = [[LoginVC alloc]init];
+        self.window.rootViewController = loginvc;
+    }else{
+        [ud setObject:@"NO" forKey:@"isFirstOpenApp"];
+        WelcomeVC *vc = [[WelcomeVC alloc]init];
+        self.window.rootViewController = vc;
+    }
+    [self.window makeKeyAndVisible];
+    
+    //版本检查
+    [self onCheckVersion];
+    
+    //第三方sdk启动
+    [self registerThirdSDK];
+    
+    /*
+     若用户点击icon启动,lauchOptions内无数据
+     */
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+    //didReceiveNotificationResponse 统一处理
+    
+    
+#else
+    //远程通知
+    if (launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey])
+    {
+        //关于这个方法远程和进程不一样 一个是userinfo字典。一个是本地通知
+        NSDictionary* userInfo = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
+        [self remoteNotificationDealWithPayLoadDic:userInfo];
+    }
+    
+#endif
+    return YES;
+}
+
+- (void)applicationWillResignActive:(UIApplication *)application {
+    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
+    // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game.
+}
+
+
+- (void)applicationDidEnterBackground:(UIApplication *)application {
+    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
+    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
+}
+
+
+- (void)applicationWillEnterForeground:(UIApplication *)application {
+    // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.
+}
+
+
+- (void)applicationDidBecomeActive:(UIApplication *)application {
+    //删除程序小红点
+    [GeTuiSdk resetBadge]; //重置角标计数(同步到服务器)
+    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; // APP 清空角标
+}
+
+
+- (void)applicationWillTerminate:(UIApplication *)application {
+    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
+}
+
+#pragma mark 第三方sdk注册
+-(void)registerThirdSDK{
+    
+    //异常统计
+#ifdef DEBUG
+    //do sth1.
+#else
+    [Bugly startWithAppId:BUGLY_APP_ID];
+#endif
+    
+    //百度地图
+    BMKMapManager * mapManager = [[BMKMapManager alloc]init];
+    // 如果要关注网络及授权验证事件,请设定     generalDelegate参数
+    BOOL ret = [mapManager start:BAIDU_APPKEY  generalDelegate:nil];
+    if (!ret) {
+        NSLog(@"manager start failed!");
+    }
+    
+    //客服注册
+    QMProfileManager *manger = [QMProfileManager sharedInstance];
+    [manger loadProfile:@"sinatechcn" password:@"321456"];//8062moor 123456
+    
+    
+    
+    // 通过个推平台分配的appId、 appKey 、appSecret 启动SDK,注:该方法需要在主线程中调用
+    [GeTuiSdk startSdkWithAppId:kGtAppId appKey:kGtAppKey appSecret:kGtAppSecret delegate:self];
+    // 注册 通知(本地/远程)
+    [self registerRemoteNotification];
+    
+}
+
+#pragma mark 推送注册
+/** 注册 APNs */
+- (void)registerRemoteNotification {
+    /*
+     警告:Xcode8 需要手动开启"TARGETS -> Capabilities -> Push Notifications"
+     */
+    
+    if ([[UIDevice currentDevice].systemVersion floatValue] >= 10.0) {
+        
+        UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
+        center.delegate = self;
+        [center requestAuthorizationWithOptions:(UNAuthorizationOptionBadge | UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionCarPlay) completionHandler:^(BOOL granted, NSError *_Nullable error) {
+            if (!error) {
+                NSLog(@"request authorization succeeded!(iOS >= 10.0)");
+            }
+        }];
+        
+    } else if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0) {
+        UIUserNotificationType types = (UIUserNotificationTypeAlert | UIUserNotificationTypeSound | UIUserNotificationTypeBadge);
+        UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
+        [[UIApplication sharedApplication] registerUserNotificationSettings:settings];
+    }
+    
+    //远程需添加
+    [[UIApplication sharedApplication] registerForRemoteNotifications];
+}
+
+/** 远程通知注册成功委托 */
+- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
+    
+    NSString *token = [[deviceToken description] stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]];
+    token = [token stringByReplacingOccurrencesOfString:@" " withString:@""];
+    NSLog(@"\n>>>[DeviceToken Success]:%@\n\n", token);
+    
+    // 向个推服务器注册deviceToken
+    [GeTuiSdk registerDeviceToken:token];
+}
+
+/** 远程通知注册失败委托 */
+- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
+    
+    NSLog(@"FailToRegisterForRemoteNotificationsWithError:%@",error);
+    
+}
+
+//iOS7.0 以后支持 APP 后台刷新数据,会回调 performFetchWithCompletionHandler 接口。为保证个推SDK的数据刷新,需在该回调接口中调用[GeTuiSdk resume]方法帮助个推 SDK 刷新数据。
+- (void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
+    /// Background Fetch 恢复SDK 运行
+    [GeTuiSdk resume];
+    completionHandler(UIBackgroundFetchResultNewData);
+}
+
+#pragma mark - iOS < 10
+//------远程推送
+//处理PNs 通知点击事件 A,统计有效用户点击数
+- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
+    
+    NSLog(@"didReceiveRemoteNotification and iOS<10");
+    // 将收到的APNs信息传给个推统计
+    [GeTuiSdk handleRemoteNotification:userInfo];
+    completionHandler(UIBackgroundFetchResultNewData);
+    
+    [self remoteNotificationDealWithPayLoadDic:userInfo];
+}
+
+#pragma mark iOS > 10
+/*
+ 1.对于iOS 10 及以后版本,为处理 APNs 通知点击,统计有效用户点击数,需先添加 UNUserNotificationCenterDelegate
+ 2.app可以处于任何状态(terminate,前/后台)
+ */
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+
+- (void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions))completionHandler {
+    
+    NSLog(@"willPresentNotification and iOS>10前台:%@", notification.request.content.userInfo);
+    
+    // 根据APP需要,判断是否要提示用户Badge、Sound、Alert(ios>10 如果需要应用在前台也展示通知)
+    completionHandler(UNNotificationPresentationOptionBadge | UNNotificationPresentationOptionSound | UNNotificationPresentationOptionAlert);
+    
+}
+
+//  iOS 10: 统一获取推送的接口  点击通知进入App时触发,在该方法内统计有效用户点击数 (点击弹窗,不管app处于任何状态(terminate,前/后台)都会调用)
+- (void)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler {
+    
+    NSLog(@"didReceiveNotificationResponse iOS>10:%@", response.notification.request.content.userInfo);
+    
+    //远程推送
+    //将收到的APNs信息传给个推统计
+    [GeTuiSdk handleRemoteNotification:response.notification.request.content.userInfo];
+    completionHandler();
+    
+    NSDictionary* dictionary = response.notification.request.content.userInfo;
+    
+    [self remoteNotificationDealWithPayLoadDic:dictionary];
+}
+
+#endif
+
+#pragma mark - 个推相关方法
+
+/** SDK启动成功返回cid */
+- (void)GeTuiSdkDidRegisterClient:(NSString *)clientId {
+    //个推SDK已注册,返回clientId
+    NSLog(@"\n>>>[GeTuiSdk RegisterClient]:%@\n\n", clientId);
+
+    self.clientId = clientId;
+    [LoginVC saveAppIosImei];
+    
+}
+
+/** SDK遇到错误回调 */
+- (void)GeTuiSdkDidOccurError:(NSError *)error {
+    //个推错误报告,集成步骤发生的任何错误都在这里通知,如果集成后,无法正常收到消息,查看这里的通知。
+    NSLog(@"\n>>>[GexinSdk error]:%@\n\n", [error localizedDescription]);
+}
+
+/** SDK收到透传消息回调 *//*(个推-客户端)*/
+//只要你不是点通知窗口进来的,and发消息的时候有选择离线的情况,都会进这里---by@lee
+- (void)GeTuiSdkDidReceivePayloadData:(NSData *)payloadData andTaskId:(NSString *)taskId andMsgId:(NSString *)msgId andOffLine:(BOOL)offLine fromGtAppId:(NSString *)appId {
+    
+    //收到个推消息
+    if (payloadData) {
+        NSString * payloadMsg = [[NSString alloc] initWithBytes:payloadData.bytes length:payloadData.length encoding:NSUTF8StringEncoding];
+        NSLog(@"GeTuiSdkDidReceivepayloadMsg:%@",payloadMsg);
+        
+        //判断是否被处理过[即发送离线消息的时候,会走apns+个推sdk(有效期内)]
+        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
+        NSString *oldmsgId = [userDefaults objectForKey:@"remoteNotifymsgId"];
+        if ([oldmsgId isEqualToString:msgId]) {
+            return;
+        }
+        
+        NSDictionary * payloadDic = [NSJSONSerialization JSONObjectWithData:payloadData options:NSJSONReadingMutableContainers error:nil];
+        if (payloadDic.count == 0) {
+            return;
+        }
+        pushType = [NSString stringWithFormat:@"%@",payloadDic[@"code"]];
+        if (pushType != 0) {
+            //报警信息
+            UIAlertController *alertFind = [UIAlertController alertControllerWithTitle:payloadDic[@"title"] message:payloadDic[@"body"] preferredStyle:UIAlertControllerStyleAlert];
+            
+            [alertFind addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
+                
+            }]];
+            [alertFind addAction:[UIAlertAction actionWithTitle:@"前往" style:UIAlertActionStyleDefault handler:^(UIAlertAction *  action) {
+                
+                [self gotopPush];
+            }]];
+            UIViewController *vc = self.window.rootViewController.presentedViewController ? self.window.rootViewController.presentedViewController :self.window.rootViewController;
+            [vc presentViewController:alertFind animated:true completion:nil];
+        }else{
+            //其它信息
+            [self showMsgByArertWithTitle:payloadDic[@"title"] message:payloadDic[@"body"]];
+        }
+        
+    }
+}
+
+#pragma mark 远程通知的数据处理
+-(void)remoteNotificationDealWithPayLoadDic:(NSDictionary *)userInfo{
+    
+    /*
+     {
+     "_ge_" = 1;
+     "_gmid_" = "OSL-0818_bJ6zVRy8cC6JsflZOYPXO9:965f14a1051748c4a48f9db2437362e5:d48422d462d2bcf0b9d962f150b235b9";
+     "_gurl_" = "sdk.open.extension.getui.com:8123";
+     aps =     {
+     alert =         {
+     body = "\U60a8\U9a7e\U6821\U6709\U8f66\U8f86\U7ec8\U7aef\U62a5\U8b66\U9700\U89e3\U9664\Uff0c\U8bf7\U67e5\U770b\U5e76\U5904\U7406";
+     title = "\U544a\U8b66\U6d88\U606f";
+     };
+     badge = 2;
+     category = "button\U663e\U793a";
+     "content-available" = 1;
+     "mutable-content" = 1;
+     sound = default;
+     };
+     payload = "{\"title\":\"\U544a\U8b66\U6d88\U606f\",\"type\":\"1\",\"msg\":\"\U60a8\U9a7e\U6821\U6709\U8f66\U8f86\U7ec8\U7aef\U62a5\U8b66\U9700\U89e3\U9664\Uff0c\U8bf7\U67e5\U770b\U5e76\U5904\U7406\"}";
+     }
+     */
+    
+    
+    // _gmid_对应-- taskId msgId clientID
+    //这里使用msgid判断是否被处理【不过似乎应该用taskid?@lee,幻想着一个任务多条消息]
+    NSString *msgId = [userInfo[@"_gmid_"] componentsSeparatedByString:@":"][1];
+    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
+    NSString *oldMsgId = [userDefaults objectForKey:@"remoteNotifymsgId"];
+    
+    if ([msgId isEqualToString:oldMsgId]) {
+        return;
+    }
+    
+    //开始处理
+    [userDefaults setObject:msgId forKey:@"remoteNotifymsgId"];
+    [userDefaults synchronize];
+    
+    NSString *jsonStr = userInfo[@"payload"];
+    if ([jsonStr length] == 0) {
+        return;
+    }
+    
+    NSData *data = [jsonStr dataUsingEncoding:NSUTF8StringEncoding];
+    if (data) {
+        NSDictionary * payloadDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
+        if (payloadDic.count == 0) {
+            return;
+        }
+        pushType = [NSString stringWithFormat:@"%@",payloadDic[@"code"]];
+        if (pushType != 0) {
+            [self gotopPush];
+        }else{
+            //其它信息
+            [self showMsgByArertWithTitle:payloadDic[@"title"] message:payloadDic[@"body"]];
+        }
+    }
+}
+
+-(void)showMsgByArertWithTitle:(NSString *)title message:(NSString *)message{
+    
+    if (message.length == 0) {
+        return;
+    }
+    
+    //其它信息
+    UIAlertController *alertFind = [UIAlertController alertControllerWithTitle:title message:message preferredStyle:UIAlertControllerStyleAlert];
+    
+    [alertFind addAction:[UIAlertAction actionWithTitle:@"我知道了" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
+        
+    }]];
+    UIViewController *vc = self.window.rootViewController.presentedViewController ? self.window.rootViewController.presentedViewController :self.window.rootViewController;
+    [vc presentViewController:alertFind animated:true completion:nil];
+}
+
+#pragma mark - 推送跳转
+
+-(void)gotopPush{
+    
+    switch ([pushType integerValue]) {
+        case 1:
+//            [self goXueShiCheck];
+            break;
+        case 2:
+            
+            break;
+        default:
+            break;
+    }
+}
+
+-(void)goXueShiCheck{
+    //这里处理和其它端不一样
+    if (self.userDic == nil) {
+        
+        [self showMsgByArertWithTitle:@"提示" message:@"请在登录成功后,前往\"学时送审\"查看详情"];
+        return;
+    }
+    XueShiCheckList *vc = [[XueShiCheckList alloc]init];
+    vc.type = @"1";
+    MyUINavigationController *nav = [[MyUINavigationController alloc]initWithRootViewController:vc];
+    [self.window.rootViewController presentViewController:nav animated:YES completion:nil];
+}
+
+
+#pragma mark       检查新旧
+-(void)onCheckVersion
+{
+    if (![NetworkManager connectedToNetWork]) {
+        
+        return;
+    }
+    
+    NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];
+    NSString *currentVersion = [infoDic objectForKey:@"CFBundleShortVersionString"];
+    
+    NSString *URL = @"http://itunes.apple.com/cn/lookup?id=1247395205";
+    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
+    [request setURL:[NSURL URLWithString:URL]];
+    [request setHTTPMethod:@"POST"];
+    
+    NSOperationQueue *queue=[NSOperationQueue mainQueue];
+    [NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
+        
+        //这个导致部分手机网络不好时候出现闪退情况
+        if (!data) {
+            return;
+        }
+        //如果data等于nil的时候 再去解析 会发生崩溃
+        NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
+        
+        if (!dic) {
+            return;
+        }
+        NSArray *infoArray = [dic objectForKey:@"results"];
+        if ([infoArray count]) {
+            NSDictionary *releaseInfo = [infoArray objectAtIndex:0];
+            NSString *lastVersion = [releaseInfo objectForKey:@"version"];
+            
+            
+            NSInteger lastInt = [[lastVersion substringToIndex:1] integerValue];
+            NSInteger currInt = [[currentVersion substringToIndex:1] integerValue];
+            
+            if (lastInt > currInt) {
+                
+                [self updateVersion];
+            }else{
+                
+                double lastDoub = [[lastVersion substringWithRange:NSMakeRange(2, 3)]doubleValue];
+                double currDoub = [[currentVersion substringWithRange:NSMakeRange(2, 3)]doubleValue];
+                
+                if (lastDoub > currDoub) {
+                    
+                    [self updateVersion];
+                }
+            }
+        }
+    }];
+}
+
+-(void)updateVersion
+{
+    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"更新提示" message:@"有新的版本发布,是否前往更新?" delegate:self cancelButtonTitle:@"关闭" otherButtonTitles:@"更新", nil];
+    alert.tag = 10000;
+    [alert show];
+}
+
+-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
+{
+    if (alertView.tag == 10000) {
+        
+        if (buttonIndex == 1) {
+            NSURL *url = [NSURL URLWithString:@"itms-apps://itunes.apple.com/cn/app/id1247395205?l=en&mt=8"];
+            [[UIApplication sharedApplication]openURL:url];
+        }
+    }
+}
+
+@end

+ 13 - 0
LNManager/AssessorDetail.h

@@ -0,0 +1,13 @@
+//
+//  AssessorDetail.h
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/10.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import "Job_Detail_base.h"
+
+@interface AssessorDetail : Job_Detail_base
+
+@end

+ 67 - 0
LNManager/AssessorDetail.m

@@ -0,0 +1,67 @@
+//
+//  AssessorDetail.m
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/10.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import "AssessorDetail.h"
+
+@interface AssessorDetail ()
+
+@end
+
+@implementation AssessorDetail
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    
+    self.navigationItem.title = @"考核员详情";
+    
+    [self setSegmentControllWithTitles:@[@"基本信息"]];
+}
+
+-(void)setData{
+    _keysArr = @[
+              @[@"培训机构编号",@"EI_INSCODE"],
+              @[@"考核员全国编号",@"EI_EXAMNUM"],
+              
+              @[@"姓名",@"EI_NAME"],
+              @[@"性别",@"EI_SEX"],
+              @[@"证件号",@"EI_IDCARD"],
+              @[@"手机号码",@"EI_MOBILE"],
+              @[@"联系地址",@"EI_ADDRESS"],
+              
+              @[@"驾驶证号",@"EI_DRILICENCE"],
+              @[@"驾驶证初领日期",@"EI_FSTDRILICDATE"],
+              @[@"职业资格证号",@"EI_OCCUPATIONNO"],
+              @[@"职业资格等级",@"EI_OCCUPATIONLEVEL"],
+              @[@"准驾车型",@"EI_DRIPERMITTED"],
+              @[@"准教车型",@"EI_TEACHPERMITTED"],
+              @[@"供职状态",@"EI_EMPLOYSTATUS"],
+              @[@"入职日期",@"EI_HIREDATE"],
+              @[@"离职日期",@"EI_LEAVEDATE"],
+              @[@"备案时间",@"EI_RECORD_TIME"],
+              @[@"备案状态",@"EI_RECORD_STATUS"]];
+    
+    [super setData];
+}
+
+
+- (void)didReceiveMemoryWarning {
+    [super didReceiveMemoryWarning];
+    // Dispose of any resources that can be recreated.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 15 - 0
LNManager/AssessorList.h

@@ -0,0 +1,15 @@
+//
+//  AssessorList.h
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/8.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import "SYBase_tbVC.h"
+
+@interface AssessorList : SYBase_tbVC
+
+@property(nonatomic,copy)NSDictionary * shcDic;
+
+@end

+ 160 - 0
LNManager/AssessorList.m

@@ -0,0 +1,160 @@
+//
+//  AssessorList.m
+//  LNManager
+//
+//  Created by EchoShacolee on 2017/4/8.
+//  Copyright © 2017年 lee. All rights reserved.
+//
+
+#import "AssessorList.h"
+#import "AssessorDetail.h"
+
+@interface AssessorList ()
+
+@end
+
+@implementation AssessorList
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    
+    self.navigationItem.title = @"考核员列表";
+    
+    [self getData];
+    
+    __weak typeof(self) weakSelf = self;
+    _block = ^{
+        [weakSelf getData];
+    };
+}
+
+-(void)getData{
+    
+    NSMutableDictionary * mdic = [NSMutableDictionary new];
+    [mdic setValue:[NSString stringWithFormat:@"%@",_shcDic[@"TSI_DQBH"]]  forKey:@"dqbh"];
+    [mdic setValue:[NSString stringWithFormat:@"%@",_shcDic[@"TSI_QXBH"]]  forKey:@"qxbh"];
+    [mdic setValue:[NSString stringWithFormat:@"%@",_shcDic[@"TSI_INSCODE"]]  forKey:@"inscode"];
+    [mdic setValue:@""  forKey:@"examerName"];
+    [mdic setValue:@""  forKey:@"idcard"];
+    [mdic setValue:@""  forKey:@"isPage"];
+    [mdic setValue:@""  forKey:@"pageSize"];
+    [mdic setValue:@""  forKey:@"currentPage"];
+    [mdic setValue:@"" forKey:@"phone"];
+    
+    [self getDataWithDic:mdic method:@"examers" block:^(NSDictionary *successdic) {
+        NSArray * arr = successdic[@"body"];
+        if (arr.count != 0) {
+            self.holderV.hidden = YES;
+        }
+        
+        for (NSDictionary * dic in arr) {
+            if (![_sectionTitles containsObject:dic[@"ZM"]]) {
+                [_sectionTitles addObject:dic[@"ZM"]];
+                [_dataSource addObject:[NSMutableArray new]];
+            }
+        }
+        
+        //排序
+        [_sectionTitles sortUsingSelector:@selector(compare:)];
+        
+        for (NSDictionary * dic in arr) {
+            NSInteger location = [_sectionTitles indexOfObject:dic[@"ZM"]];
+            [_dataSource[location] addObject:dic];
+        }
+        
+        [self.tableView reloadData];
+    }];
+}
+
+-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    NSDictionary * dic;
+    if (_hasSearch) {
+        dic = _resultArray[indexPath.row];
+    }else{
+        dic = _dataSource[indexPath.section][indexPath.row];
+    }
+    
+    UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"cellId" forIndexPath:indexPath];
+    if ([_dataSource[indexPath.section] count] > 0) {
+        cell.textLabel.text = dic[@"EI_NAME"];
+    }
+    return cell;
+}
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
+    
+    NSMutableDictionary * dic;
+    if (_hasSearch) {
+        dic = _resultArray[indexPath.row];
+    }else{
+        dic = _dataSource[indexPath.section][indexPath.row];
+    }
+    
+    AssessorDetail * vc = [[AssessorDetail alloc]init];
+    vc.dataSource = dic;
+    [self.navigationController pushViewController:vc animated:YES];
+    
+}
+
+#pragma mark - 搜索代理
+- (void)updateSearchResultsForSearchController:(UISearchController *)searchController
+{
+    NSString *searchString = _searchController.searchBar.text;
+    //    NSLog(@"searchString-->%@",searchString);
+    _hasSearch = NO;
+    if (searchString.length > 0) {
+        [_resultArray removeAllObjects];
+        if ([searchString integerValue] == 0)
+        {//汉字
+            
+            for (NSArray *sectionArr in _dataSource)
+            {
+                for (NSDictionary *dic in sectionArr)
+                {
+                    if ([dic[@"CI_NAME"] rangeOfString:searchString].location != NSNotFound)
+                    {
+                        [_resultArray addObject:dic];
+                    }
+                }
+            }
+            
+        }else{
+            
+            for (NSArray *sectionArr in _dataSource)
+            {
+                for (NSDictionary *dic in sectionArr)
+                {
+                    BOOL isTrue1 = [[NSString stringWithFormat:@"%@",dic[@"EI_MOBILE"]] rangeOfString:searchString].location != NSNotFound;
+                    BOOL isTrue2 = [[NSString stringWithFormat:@"%@",dic[@"EI_IDCARD"]] rangeOfString:searchString].location != NSNotFound;
+                    if (isTrue2)
+                    {
+                        [_resultArray addObject:dic];
+                    }else if(isTrue1)
+                    {
+                        [_resultArray addObject:dic];
+                    }
+                }
+            }
+        }
+        _hasSearch = YES;
+    }
+    [self.tableView reloadData];
+}
+
+- (void)didReceiveMemoryWarning {
+    [super didReceiveMemoryWarning];
+    // Dispose of any resources that can be recreated.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 62 - 0
LNManager/Assets.xcassets/AppIcon.appiconset/Contents.json

@@ -0,0 +1,62 @@
+{
+  "images" : [
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneNotification_20pt@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneNotification_20pt@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneSpootlight5_29pt@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneSpootlight5_29pt@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneSpootlight7_40pt@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneSpootlight7_40pt@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneApp_60pt@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "微信图片_201803061623131iPhoneApp_60pt@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "1024x1024",
+      "idiom" : "ios-marketing",
+      "filename" : "man.png",
+      "scale" : "1x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/AppIcon.appiconset/man.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneApp_60pt@2x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneApp_60pt@3x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneNotification_20pt@2x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneNotification_20pt@3x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight5_29pt@2x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight5_29pt@3x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight7_40pt@2x.png


二进制
LNManager/Assets.xcassets/AppIcon.appiconset/微信图片_201803061623131iPhoneSpootlight7_40pt@3x.png


+ 6 - 0
LNManager/Assets.xcassets/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 6 - 0
LNManager/Assets.xcassets/Job/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 21 - 0
LNManager/Assets.xcassets/Job/arrow_left.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "箭头-5.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/arrow_left.imageset/箭头-5.png


+ 21 - 0
LNManager/Assets.xcassets/Job/arrow_right.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "箭头-4.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/arrow_right.imageset/箭头-4.png


+ 21 - 0
LNManager/Assets.xcassets/Job/beginDate.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "start_time_icon.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/beginDate.imageset/start_time_icon.png


+ 21 - 0
LNManager/Assets.xcassets/Job/endDate.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "end_time_icon.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/endDate.imageset/end_time_icon.png


+ 21 - 0
LNManager/Assets.xcassets/Job/fold.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "收起3.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/fold.imageset/收起3.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_assessor_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_assessor_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/ic_assessor_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_assessor_manager.imageset/ic_assessor_manager.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_car_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_car_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_car_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_car_manager.imageset/ic_car_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_car_manager.imageset/ic_car_manager.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_check_train.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_check_train.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_check_train-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_check_train.imageset/ic_check_train-1.png


二进制
LNManager/Assets.xcassets/Job/ic_check_train.imageset/ic_check_train.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_coach_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_coach_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/ic_coach_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_coach_manager.imageset/ic_coach_manager.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_jubao_manager.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "举报管理.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_jubao_manager.imageset/举报管理.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_notify.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_notify.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_notify-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_notify.imageset/ic_notify-1.png


二进制
LNManager/Assets.xcassets/Job/ic_notify.imageset/ic_notify.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_pingjia_manager.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "评价管理.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_pingjia_manager.imageset/评价管理.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_school_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_school_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_school_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_school_manager.imageset/ic_school_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_school_manager.imageset/ic_school_manager.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_securitor_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_securitor_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/ic_securitor_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_securitor_manager.imageset/ic_securitor_manager.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_squSelect.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "正方形勾选框-未选中.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_squSelect.imageset/正方形勾选框-未选中.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_squSelect_h.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "筛选tab---选项后面的方形框选中后的样子.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_squSelect_h.imageset/筛选tab---选项后面的方形框选中后的样子.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_student_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_student_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_student_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_student_manager.imageset/ic_student_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_student_manager.imageset/ic_student_manager.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_teach_area.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_teach_area.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_teach_area-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_teach_area.imageset/ic_teach_area-1.png


二进制
LNManager/Assets.xcassets/Job/ic_teach_area.imageset/ic_teach_area.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_teach_log.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_teach_log.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_teach_log-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_teach_log.imageset/ic_teach_log-1.png


二进制
LNManager/Assets.xcassets/Job/ic_teach_log.imageset/ic_teach_log.png


+ 22 - 0
LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "ic_terminal_manager.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "ic_terminal_manager-1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/ic_terminal_manager-1.png


二进制
LNManager/Assets.xcassets/Job/ic_terminal_manager.imageset/ic_terminal_manager.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_tousu_manager.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "投诉管理.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/ic_tousu_manager.imageset/投诉管理.png


二进制
LNManager/Assets.xcassets/Job/ic_waring_manager.imageset/1.png


+ 21 - 0
LNManager/Assets.xcassets/Job/ic_waring_manager.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "1.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 21 - 0
LNManager/Assets.xcassets/Job/job_car2.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "car.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/job_car2.imageset/car.png


二进制
LNManager/Assets.xcassets/Job/job_car2.imageset/跑车.png


二进制
LNManager/Assets.xcassets/Job/job_car2.imageset/车.png


+ 21 - 0
LNManager/Assets.xcassets/Job/job_carOff.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "job_carOff.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

二进制
LNManager/Assets.xcassets/Job/job_carOff.imageset/job_carOff.png


+ 21 - 0
LNManager/Assets.xcassets/Job/job_carOn.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "车2的副本.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

部分文件因为文件数量过多而无法显示