From 7d617a95135e5a66684d2581ae51a243a22b8555 Mon Sep 17 00:00:00 2001 From: 葛建军 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 @@ - - + + @@ -423,7 +423,7 @@ - + @@ -1476,7 +1476,7 @@ - + @@ -1663,6 +1663,7 @@ + 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=["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=["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=["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=["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=["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=["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