From 7d617a95135e5a66684d2581ae51a243a22b8555 Mon Sep 17 00:00:00 2001
From: 葛建军 <jun@gejianjundeMac-mini.local>
Date: Fri, 26 May 2017 10:32:00 +0800
Subject: [PATCH] 头像点击进入个人信息。加下载数量接口并刷新数据。修改头像首页左上角刷新。观看资源和微课后历史。

---
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/Contents.json                      | 21 ---------------------
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/微课图标.jpg                   | Bin 16434 -> 0 bytes
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/Contents.json                      | 21 ---------------------
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/mologo.jpg                         | Bin 18081 -> 0 bytes
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/Contents.json                                 |  6 ++++++
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/Contents.json    | 21 +++++++++++++++++++++
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/微课图标.jpg | Bin 0 -> 16434 bytes
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/Contents.json                | 21 +++++++++++++++++++++
 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/mologo.jpg                   | Bin 0 -> 18081 bytes
 YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard                                                          |  9 +++++----
 YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift                              | 84 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------
 YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift                             | 49 ++++++++++++++++++++++++++++++++++++-------------
 YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift                                   | 38 ++++++++++++++++++++++++++++++++------
 YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/NewLoginViewController.swift                            | 15 +++++++++++----
 YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift                            |  1 -
 YouerLiveVideo/YouerLiveVideo/controllers/User/UserEditViewController.swift                                       |  4 ++++
 YouerLiveVideo/YouerLiveVideo/controllers/User/UserViewController.swift                                           |  1 -
 YouerLiveVideo/YouerLiveVideo/util/network.swift                                                                  |  6 +++++-
 18 files changed, 208 insertions(+), 89 deletions(-)
 delete mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/Contents.json
 delete mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/微课图标.jpg
 delete mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/Contents.json
 delete mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/mologo.jpg
 create mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/Contents.json
 create mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/Contents.json
 create mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/微课图标.jpg
 create mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/Contents.json
 create mode 100644 YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/mologo.jpg

diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/Contents.json b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/Contents.json
deleted file mode 100644
index 42f885a..0000000
--- a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/Contents.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "images" : [
-    {
-      "idiom" : "universal",
-      "scale" : "1x"
-    },
-    {
-      "idiom" : "universal",
-      "filename" : "微课图标.jpg",
-      "scale" : "2x"
-    },
-    {
-      "idiom" : "universal",
-      "scale" : "3x"
-    }
-  ],
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}
\ No newline at end of file
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/微课图标.jpg b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/微课图标.jpg
deleted file mode 100644
index 10be673..0000000
Binary files a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_course_placeholder.imageset/微课图标.jpg and /dev/null differ
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/Contents.json b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/Contents.json
deleted file mode 100644
index 828c35d..0000000
--- a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/Contents.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "images" : [
-    {
-      "idiom" : "universal",
-      "scale" : "1x"
-    },
-    {
-      "idiom" : "universal",
-      "filename" : "mologo.jpg",
-      "scale" : "2x"
-    },
-    {
-      "idiom" : "universal",
-      "scale" : "3x"
-    }
-  ],
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}
\ No newline at end of file
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/mologo.jpg b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/mologo.jpg
deleted file mode 100644
index 606452f..0000000
Binary files a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/icon_school_placeholder.imageset/mologo.jpg and /dev/null differ
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/Contents.json b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/Contents.json
new file mode 100644
index 0000000..da4a164
--- /dev/null
+++ b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/Contents.json
@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
\ No newline at end of file
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/Contents.json b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/Contents.json
new file mode 100644
index 0000000..42f885a
--- /dev/null
+++ b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "微课图标.jpg",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
\ No newline at end of file
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/微课图标.jpg b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/微课图标.jpg
new file mode 100644
index 0000000..10be673
Binary files /dev/null and b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/MicroCourse/microCourse_default.imageset/微课图标.jpg differ
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/Contents.json b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/Contents.json
new file mode 100644
index 0000000..828c35d
--- /dev/null
+++ b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "mologo.jpg",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
\ No newline at end of file
diff --git a/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/mologo.jpg b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/mologo.jpg
new file mode 100644
index 0000000..606452f
Binary files /dev/null and b/YouerLiveVideo/YouerLiveVideo/Assets.xcassets/z_NewIcon/icon_school_default.imageset/mologo.jpg differ
diff --git a/YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard b/YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard
index d7b114a..911db97 100644
--- a/YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard
+++ b/YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="16A323" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="fhe-aI-EYq">
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="15G1217" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="fhe-aI-EYq">
     <device id="retina4_7" orientation="portrait">
         <adaptation id="fullscreen"/>
     </device>
@@ -423,7 +423,7 @@
                                                                 <rect key="frame" x="0.0" y="0.0" width="207" height="193"/>
                                                                 <autoresizingMask key="autoresizingMask"/>
                                                                 <subviews>
-                                                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="5g9-CD-vXa">
+                                                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="microCourse_default" translatesAutoresizingMaskIntoConstraints="NO" id="5g9-CD-vXa">
                                                                         <rect key="frame" x="0.0" y="0.0" width="207" height="93.5"/>
                                                                         <userDefinedRuntimeAttributes>
                                                                             <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
@@ -1476,7 +1476,7 @@
                                             <rect key="frame" x="0.0" y="0.0" width="375" height="139"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
-                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="qia-pR-e6p">
+                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="microCourse_default" translatesAutoresizingMaskIntoConstraints="NO" id="qia-pR-e6p">
                                                     <rect key="frame" x="8" y="24" width="90" height="90"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" secondItem="qia-pR-e6p" secondAttribute="height" multiplier="1:1" id="6Zi-MO-Pqe"/>
@@ -1663,6 +1663,7 @@
         <image name="icon_tvstation" width="25" height="25"/>
         <image name="icon_user" width="25" height="25"/>
         <image name="icon_watchcount" width="12" height="7"/>
+        <image name="microCourse_default" width="100" height="100"/>
         <image name="starLive" width="30" height="30"/>
         <image name="视窗.png" width="31" height="31"/>
     </resources>
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift
index d77f86e..facc3b2 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift
@@ -10,20 +10,30 @@ import UIKit
 import AVKit
 class MainHomeTableViewController: UITableViewController {
     @IBOutlet var tableHeaderView: UIView!
-    let current=AppDelegate.instance().accountManager
+    var user = AppDelegate.instance().accountManager
+    var photo:UIImageView!
     override func viewDidLoad() {
         super.viewDidLoad()
         tableHeaderView.frame.size.height=getScreenWidth()/12*5
         settingIconAndTitle()
         settingCarouselView()
+        //更新头像
+        NotificationCenter.default.addObserver(self, selector: #selector(MainHomeTableViewController.setUserInfor), name: NSNotification.Name(rawValue: "refreshFirstVC"), object: nil)
+    }
+    func setUserInfor(){
+        photo.sd_setImage(with: URL(string: user.photo()), placeholderImage: #imageLiteral(resourceName: "defphoto.png"))
     }
     //设置左上角头像及背景色等
     func settingIconAndTitle(){
-        let photo=UIImageView(frame: CGRect(x: 0, y: 0, width: 35, height: 35))
-        photo.sd_setImage(with: URL(string: current.photo()), placeholderImage: UIImage(named: "defphoto"))
+        photo=UIImageView(frame: CGRect(x: 0, y: 0, width: 35, height: 35))
+        photo.sd_setImage(with: URL(string: user.photo()), placeholderImage: UIImage(named: "defphoto"))
         photo.layer.cornerRadius=35/2
         photo.layer.masksToBounds=true
-        let leftBarButtonItem=UIBarButtonItem(customView: photo)
+        let btn=UIButton(type: UIButtonType.custom)
+        btn.frame=CGRect(x: 0, y: 0, width: 35, height: 35)
+        btn.addTarget(self, action: #selector(MainHomeTableViewController.userInfo), for: UIControlEvents.touchUpInside)
+        btn.addSubview(photo)
+        let leftBarButtonItem=UIBarButtonItem(customView: btn)
         self.navigationItem.leftBarButtonItem=leftBarButtonItem
         self.configTheme()
         self.navigationController?.navigationBar.barStyle=UIBarStyle.black
@@ -60,8 +70,17 @@ class MainHomeTableViewController: UITableViewController {
             }
         }
     }
-
-
+    //点击头像 跳转
+    func userInfo(){
+        if user.isOnline(){
+            let vc = Story.instantiateViewControllerWithIdentifier("UserEditViewControllerVC", storyName: "User") as! UserEditViewController
+            vc.title = "个人信息"
+            self.navigationController?.pushViewController(vc, animated: true)
+        }else{
+            let vc=Story.instantiateViewControllerWithIdentifier("NewLoginViewControllerVC", storyName: "Login") as! NewLoginViewController
+            self.navigationController?.pushViewController(vc, animated: true)
+        }
+    }
     override func didReceiveMemoryWarning() {
         super.didReceiveMemoryWarning()
     }
@@ -225,11 +244,24 @@ class HomeSecondTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollec
         }
     }
     func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
-        let url = URL(string:dataSet[indexPath.row].f_ResourceUrl)
+        let item=dataSet[indexPath.row]
+        let url = URL(string:item.f_ResourceUrl)
         let player = AVPlayerViewController()
         player.player = AVPlayer(url: url!)
         player.videoGravity = AVLayerVideoGravityResizeAspect
         appRootViewController().present(player, animated: true, completion: nil)
+        AppDelegate.instance().httpServer.updatePv(parameters: ["f_id":item.f_Id as AnyObject]) { (str, error) in
+            if error==nil {
+                if JSON.fromString(jsonString: str)!["status"].intValue == 1{
+                    //更新阅读量成功刷新页面
+                    self.getHotCourseList()
+                }
+            }
+        }
+        AppDelegate.instance().httpServer.addHistoryView(parameters: ["f_ViewType":0 as AnyObject,
+                                                                      "f_ViewId":item.f_Id as AnyObject,
+                                                                      "f_ViewName":item.f_Title as AnyObject]) { (str, error) in
+        }
     }
     func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
         return CGSize(width: (getScreenWidth()-45)/2, height: ((getScreenWidth()-45)/2/33*16+67))
@@ -313,9 +345,9 @@ class HomeSecondCollectionViewCell: UICollectionViewCell {
     @IBOutlet var dateLabel: UILabel!
     @IBOutlet var readCountLabel: UILabel!
     func setUpWithItem(item:MicroCourseModel){
-        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
+        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "microCourse_default"))
         nameLabel.text=item.f_Title
-        teacherNameLabel.text="主讲师:\(item.f_CreatorName) 老师"
+        teacherNameLabel.text="主讲师:\(item.f_CreatorName)"
         dateLabel.text=item.f_CreatorTime
         readCountLabel.text="\(item.f_Pv)"
     }
@@ -353,9 +385,22 @@ class HomeThirdTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollect
         let user=AppDelegate.instance().accountManager
         //点击下载并打开资源文档
         if user.isOnline() && (user.roletype()==1 || user.roletype()==2 || user.roletype()==6){
+            let item=dataSet[indexPath.row]
             let download = DownLoad.share
             download.superVC = ((appRootViewController().childViewControllers[0] as! MViewController).selectedViewController as! UINavigationController).viewControllers[0]
             download.downLoadWithUrl(url: dataSet[indexPath.row].f_ResourceUrl)
+            AppDelegate.instance().httpServer.updateDownloadSum(parameters: ["f_id":item.f_Id as AnyObject]) { (str, error) in
+                if error==nil {
+                    if JSON.fromString(jsonString: str)!["status"].intValue == 1{
+                        //更新下载量成功刷新页面
+                        self.getHotCourseList()
+                    }
+                }
+            }
+            AppDelegate.instance().httpServer.addHistoryView(parameters: ["f_ViewType":1 as AnyObject,
+                                                                          "f_ViewId":item.f_Id as AnyObject,
+                                                                          "f_ViewName":item.f_Title as AnyObject]) { (str, error) in
+            }
         }else{
             AppDelegate.instance().window?.makeToast("无权限查看资源")
         }
@@ -379,9 +424,9 @@ class HomeThirdCollectionViewCell: UICollectionViewCell {
     @IBOutlet var dateLabel: UILabel!
     @IBOutlet var readCountLabel: UILabel!
     func setUpWithItem(item:MicroCourseModel){
-        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
+        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "microCourse_default"))
         nameLabel.text=item.f_Title
-        teacherNameLabel.text="上传者:\(item.f_CreatorName) 老师"
+        teacherNameLabel.text="上传者:\(item.f_CreatorName)"
         dateLabel.text=item.f_CreatorTime
         readCountLabel.text="\(item.f_DownloadSum)"
     }
@@ -416,16 +461,21 @@ class HomeFourTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollecti
         }
     }
     func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
-        //点击进入学校 appRootViewController()
+        //点击进入校园电视台
+        let item=dataSet[indexPath.row]
         let vc = Story.instantiateViewControllerWithIdentifier("TVStationInforViewControllerVC", storyName: "TVStation") as! TVStationInforViewController
         if collectionView.tag == 1{
-            vc.TVStationProgram = TVStationInfor(item: dataSet[indexPath.row])
-            vc.title = dataSet[indexPath.row].f_Title
+            vc.TVStationProgram = TVStationInfor(item: item)
+            vc.title = item.f_Title
         }else if collectionView.tag == 3{
-            vc.title = dataSet[indexPath.row].f_Title
-            vc.excellentTVStationProgram = TVStationSubject(item: dataSet[indexPath.row])
+            vc.title = item.f_Title
+            vc.excellentTVStationProgram = TVStationSubject(item: item)
         }
         ((appRootViewController().childViewControllers[0] as! MViewController).selectedViewController as! UINavigationController).pushViewController(vc, animated: true)
+        AppDelegate.instance().httpServer.addHistoryView(parameters: ["f_ViewType":2 as AnyObject,
+                                                                      "f_ViewId":item.f_Id as AnyObject,
+                                                                      "f_ViewName":item.f_Title as AnyObject]) { (str, error) in
+        }
     }
     func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
         return CGSize(width: (getScreenWidth()-40)/3, height: (getScreenWidth()-40)/3+30)
@@ -443,7 +493,7 @@ class HomeFourCollectionViewCell: UICollectionViewCell {
     @IBOutlet var iconImageView: UIImageView!
     @IBOutlet var nameLabel: UILabel!
     func setUpWithItem(item:MicroCourseModel){
-        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
+        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "microCourse_default"))
         nameLabel.text=item.f_Title
     }
 }
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift
index 9970d4c..db020f8 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift
@@ -75,6 +75,7 @@ class MicroCourseViewController: UIViewController,UITableViewDelegate,UITableVie
             self.resourceData.removeAll()
             var p:Dictionary<String,AnyObject>=["type":0 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
             if self.parameter != nil {
+                self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
                 p=self.parameter!
             }
             self.refreshLivesAction(parameters: p, completionHandler: { (success) in
@@ -90,6 +91,7 @@ class MicroCourseViewController: UIViewController,UITableViewDelegate,UITableVie
             //上拉加载更多
             var p:Dictionary<String,AnyObject>=["type":0 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
             if self.parameter != nil {
+                self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
                 p=self.parameter!
             }
             self.refreshLivesAction(parameters: p, completionHandler: { (success) in
@@ -164,18 +166,39 @@ class MicroCourseViewController: UIViewController,UITableViewDelegate,UITableVie
 //        let vc = UIStoryboard(name: "Resource", bundle: nil).instantiateViewController(withIdentifier: "LiveInforViewControllerVC") as! LiveInforViewController
 //        vc.item=item
 //        self.superVC.navigationController!.pushViewController(vc, animated: true)
+        var item:MicroCourseModel!
         if tableView==searchTableView {
-            let url = URL(string:searchAry[indexPath.row].f_ResourceUrl)
-            let player = AVPlayerViewController()
-            player.player = AVPlayer(url: url!)
-            player.videoGravity = AVLayerVideoGravityResizeAspect
-            self.present(player, animated: true, completion: nil)
+            item=searchAry[indexPath.row]
         }else{
-            let url = URL(string:resourceData[indexPath.row].f_ResourceUrl)
-            let player = AVPlayerViewController()
-            player.player = AVPlayer(url: url!)
-            player.videoGravity = AVLayerVideoGravityResizeAspect
-            self.present(player, animated: true, completion: nil)
+            item=resourceData[indexPath.row]
+        }
+        let url = URL(string:item.f_ResourceUrl)
+        let player = AVPlayerViewController()
+        player.player = AVPlayer(url: url!)
+        player.videoGravity = AVLayerVideoGravityResizeAspect
+        self.present(player, animated: true, completion: nil)
+        AppDelegate.instance().httpServer.updatePv(parameters: ["f_id":item.f_Id as AnyObject]) { (str, error) in
+            if error==nil {
+                if JSON.fromString(jsonString: str)!["status"].intValue == 1{
+                    //更新阅读量成功刷新页面
+                    self.currentPage=1
+                    self.resourceData.removeAll()
+                    var p:Dictionary<String,AnyObject>=["type":0 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
+                    if self.parameter != nil {
+                        self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
+                        p=self.parameter!
+                    }
+                    self.refreshLivesAction(parameters: p, completionHandler: { (success) in
+                        if success{
+                            self.tableView.reloadData()
+                        }
+                    })
+                }
+            }
+        }
+        AppDelegate.instance().httpServer.addHistoryView(parameters: ["f_ViewType":0 as AnyObject,
+                                                                      "f_ViewId":item.f_Id as AnyObject,
+                                                                      "f_ViewName":item.f_Title as AnyObject]) { (str, error) in
         }
     }
     //取消键盘输入状态
@@ -237,11 +260,11 @@ class MicroCourseViewControllerTableViewCell:UITableViewCell{
     var superVC:MicroCourseViewController!
     func setUpWith(item: MicroCourseModel){
         self.item=item
-        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
+        iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "microCourse_default"))
         titleLabel.text=item.f_Title
-        updateTeacherLabel.text="上传者:\(item.f_CreatorName) 老师"
+        updateTeacherLabel.text="主讲师:\(item.f_CreatorName)"
         timeLabel.text=setDateToString(date:dateFromISO8601(dateString: item.f_CreatorTime))
-        downLoadCountLabel.text="\(item.f_DownloadSum)"
+        downLoadCountLabel.text="\(item.f_Pv)"
     }
     @IBAction func pushDetailVC(_ sender: UIButton) {
 //        let vc = UIStoryboard(name: "Resource", bundle: nil).instantiateViewController(withIdentifier: "LiveInforViewControllerVC") as! LiveInforViewController
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift
index 4207818..e0669b5 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift
@@ -75,6 +75,7 @@ class ResourceViewController: UIViewController,UITableViewDelegate,UITableViewDa
             self.resourceData.removeAll()
             var p:Dictionary<String,AnyObject>=["type":1 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
             if self.parameter != nil {
+                self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
                 p=self.parameter!
             }
             self.refreshLivesAction(parameters: p, completionHandler: { (success) in
@@ -90,6 +91,7 @@ class ResourceViewController: UIViewController,UITableViewDelegate,UITableViewDa
             //上拉加载更多
             var p:Dictionary<String,AnyObject>=["type":1 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
             if self.parameter != nil {
+                self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
                 p=self.parameter!
             }
             self.refreshLivesAction(parameters: p, completionHandler: { (success) in
@@ -161,13 +163,37 @@ class ResourceViewController: UIViewController,UITableViewDelegate,UITableViewDa
         }
     }
     func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
+        var item:MicroCourseModel!
         if tableView==searchTableView {
-            let vc = UIStoryboard(name: "HomePage", bundle: nil).instantiateViewController(withIdentifier: "RankingTableViewController") as! RankingTableViewController
-            self.navigationController?.pushViewController(vc, animated: true)
+            item=searchAry[indexPath.row]
         }else{
-            let download = DownLoad.share
-            download.superVC = self
-            download.downLoadWithUrl(url: resourceData[indexPath.row].f_ResourceUrl)
+            item=resourceData[indexPath.row]
+        }
+        let download = DownLoad.share
+        download.superVC = self
+        download.downLoadWithUrl(url: item.f_ResourceUrl)
+        AppDelegate.instance().httpServer.updateDownloadSum(parameters: ["f_id":item.f_Id as AnyObject]) { (str, error) in
+            if error==nil {
+                if JSON.fromString(jsonString: str)!["status"].intValue == 1{
+                    //更新下载量成功刷新页面
+                    self.currentPage=1
+                    self.resourceData.removeAll()
+                    var p:Dictionary<String,AnyObject>=["type":1 as AnyObject,"orderby":1 as AnyObject,"pageIndex":self.currentPage as AnyObject,"pageSize":10 as AnyObject]
+                    if self.parameter != nil {
+                        self.parameter!.updateValue(self.currentPage as AnyObject, forKey: "pageIndex")
+                        p=self.parameter!
+                    }
+                    self.refreshLivesAction(parameters: p, completionHandler: { (success) in
+                        if success{
+                            self.tableView.reloadData()
+                        }
+                    })
+                }
+            }
+        }
+        AppDelegate.instance().httpServer.addHistoryView(parameters: ["f_ViewType":1 as AnyObject,
+                                                                      "f_ViewId":item.f_Id as AnyObject,
+                                                                      "f_ViewName":item.f_Title as AnyObject]) { (str, error) in
         }
     }
     //取消键盘输入状态
@@ -247,7 +273,7 @@ class ResourceViewControllerTableViewCell:UITableViewCell{
     func setUpWith(item: MicroCourseModel){
         iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
         titleLabel.text=item.f_Title
-        updateTeacherLabel.text="上传者:\(item.f_CreatorName) 老师"
+        updateTeacherLabel.text="上传者:\(item.f_CreatorName)"
         timeLabel.text=setDateToString(date:dateFromISO8601(dateString: item.f_CreatorTime))
         downLoadCountLabel.text="\(item.f_DownloadSum)"
     }
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/NewLoginViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/NewLoginViewController.swift
index 09f0c44..d76d96c 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/NewLoginViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/NewLoginViewController.swift
@@ -19,17 +19,17 @@ class NewLoginViewController: UIViewController,UITextFieldDelegate {
         constraintContentOffset.constant=20
         view.backgroundColor=UIColorFromRGB(0xf7f7f7)
         Theme.configButton(buttonLogin)
+        NotificationCenter.default.addObserver(self, selector: #selector(NewLoginViewController.refreshUser), name: NSNotification.Name(rawValue: "refreshLoginUser"), object: nil)
+        NotificationCenter.default.addObserver(self, selector: #selector(NewLoginViewController.keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
+        NotificationCenter.default.addObserver(self, selector: #selector(NewLoginViewController.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
     }
     override func viewWillAppear(_ animated: Bool) {
         super.viewWillAppear(animated)
-        NotificationCenter.default.addObserver(self, selector: #selector(NewLoginViewController.keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
-        NotificationCenter.default.addObserver(self, selector: #selector(NewLoginViewController.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
         fieldAccount.tintColor=Theme.topBarColor()
         fieldPassword.tintColor=Theme.topBarColor()
     }
     override func viewWillDisappear(_ animated: Bool) {
         super.viewWillDisappear(animated)
-        NotificationCenter.default.removeObserver(self)
     }
 
 
@@ -37,7 +37,10 @@ class NewLoginViewController: UIViewController,UITextFieldDelegate {
         super.didReceiveMemoryWarning()
         // Dispose of any resources that can be recreated.
     }
-    
+    //注册完了后自动填充账号
+    func refreshUser(noti:Notification){
+        fieldAccount.text = "\(noti.object!)"
+    }
     @IBAction func onLoginClicked(_ sender: UIButton) {
         self.view.endEditing(true)
         let account=fieldAccount.text
@@ -139,6 +142,10 @@ class NewLoginViewController: UIViewController,UITextFieldDelegate {
             self.viewContent.layoutIfNeeded()
         })
     }
+    // MARK: - 销毁通知
+    deinit {
+        NotificationCenter.default.removeObserver(self)
+    }
 }
 
 
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift
index 0a4ac62..945f46b 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift
@@ -25,7 +25,6 @@ class RegisterViewController: UIViewController,UIAlertViewDelegate,UIImagePicker
     var timer :Timer!
     override func viewDidLoad() {
         super.viewDidLoad()
-        self.configTheme()
     }
 
     @IBAction func touchAction(_ sender: AnyObject) {
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserEditViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserEditViewController.swift
index 1de3248..d4b5e44 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserEditViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserEditViewController.swift
@@ -77,6 +77,8 @@ class UserEditViewController: UIViewController ,UIImagePickerControllerDelegate,
                                             if finish{
                                                 self.user=AppDelegate.instance().accountManager
                                                 self.tableView.reloadData()
+                                                //发出刷新首页通知
+                                                NotificationCenter.default.post(name: NSNotification.Name(rawValue: "refreshFirstVC"), object: nil)
                                             }
                                         })
                                     }, failHandler: { (error) in
@@ -144,6 +146,8 @@ extension UserEditViewController:UITableViewDelegate,UITableViewDataSource{
                                             self.user=AppDelegate.instance().accountManager
                                             self.setContentArr()
                                             self.tableView.reloadData()
+                                            //发出刷新首页通知
+                                            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "refreshFirstVC"), object: nil)
                                         }
                                     })
                                 }, failHandler: { (error) in
diff --git a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserViewController.swift b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserViewController.swift
index ee147f6..b3de30d 100644
--- a/YouerLiveVideo/YouerLiveVideo/controllers/User/UserViewController.swift
+++ b/YouerLiveVideo/YouerLiveVideo/controllers/User/UserViewController.swift
@@ -36,7 +36,6 @@ class UserViewController: UIViewController {
         userPhoto.layer.masksToBounds = true
         userName.text = user.name()
         userPhoto.sd_setImage(with: URL(string: user.photo()), placeholderImage: #imageLiteral(resourceName: "defphoto.png"))
-        
     }
 
     override func didReceiveMemoryWarning() {
diff --git a/YouerLiveVideo/YouerLiveVideo/util/network.swift b/YouerLiveVideo/YouerLiveVideo/util/network.swift
index 83f525b..9248a37 100644
--- a/YouerLiveVideo/YouerLiveVideo/util/network.swift
+++ b/YouerLiveVideo/YouerLiveVideo/util/network.swift
@@ -148,6 +148,7 @@ final class HTTPServer{
     static let URL_USERCENTERGETDELETERESOURCE=HOST+"/api/UserCenter/DeleteResource"                //删除资源/微课/校园电视台
     static let URL_USERCENTERGETHIDERESOURCE=HOST+"/api/UserCenter/HideResource"                    //隐藏资源/微课/校园电视台
     static let URL_USERCENTERGETUPDATEDOWNLOADSUM=HOST+"/api/UserCenter/UpdateDownloadSum"          //资源下载时更新下载量
+    static let URL_USERCENTERGETUPDATEPV=HOST+"/api/UserCenter/UpdatePv"                            //预览时增加预览量
     static let URL_USERCENTERGETGETHISTORYVIEW=HOST+"/api/UserCenter/GetHistroyView"                //历史记录
     static let URL_USERCENTERGETADDHISTORYVIEW=HOST+"/api/UserCenter/AddHistoryView"                //添加历史记录
     static let URL_USERCENTERGETGETMYUSER=HOST+"/api/UserCenter/GetMyUser"                          //已开设账号
@@ -393,7 +394,10 @@ final class HTTPServer{
     func updateDownloadSum(parameters: [String : AnyObject]?,completionHandler:@escaping (String?, NSError?) -> ()){
         KHttp.GET(url: HTTPServer.URL_USERCENTERGETUPDATEDOWNLOADSUM, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler)
     }
-
+    //预览时增加预览量
+    func updatePv(parameters: [String : AnyObject]?,completionHandler:@escaping (String?, NSError?) -> ()){
+        KHttp.GET(url: HTTPServer.URL_USERCENTERGETUPDATEPV, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler)
+    }
     //历史记录
     func getHistroyView(parameters: [String : AnyObject]?,completionHandler:@escaping (String?, NSError?) -> ()){
         KHttp.POST(url: HTTPServer.URL_USERCENTERGETGETHISTORYVIEW, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler)
--
libgit2 0.21.0