Commit 0f3df602 authored by Steven杜宇's avatar Steven杜宇

// 人脉

parent b3e79596
......@@ -10,6 +10,8 @@ import UIKit
class YHMyNameCardViewController: YHBaseViewController {
var userId: String = ""
let viewModel = YHMatchUserViewModel()
lazy var tableView: UITableView = {
let tableView = UITableView(frame:.zero, style:.grouped)
tableView.estimatedSectionHeaderHeight = 100
......@@ -67,6 +69,11 @@ class YHMyNameCardViewController: YHBaseViewController {
createUI()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
requestNameCardInfo()
}
func createUI() {
gk_navigationBar.isHidden = true
self.view.backgroundColor = UIColor.init(hex: 0xF8FAFB)
......@@ -185,3 +192,14 @@ extension YHMyNameCardViewController: UITableViewDelegate, UITableViewDataSource
}
}
extension YHMyNameCardViewController {
func requestNameCardInfo() {
self.viewModel.getUserNameCardInfo(uid: self.userId) {
success, error in
self.viewModel.nameCardInfo
}
}
}
......@@ -47,3 +47,36 @@ class YHMatchUserAddress: SmartCodable {
}
}
class YHUserNameCardInfo: SmartCodable {
var id: String = ""
var yhId: String = ""
var isSigned: Bool = false
var avatar: String = ""
var username: String = ""
var address: YHMatchUserAddress = YHMatchUserAddress()
var zodiac: String = ""
var signature: String = ""
var bio: String = ""
var college: String = ""
var major: String = ""
var background: String = ""
var companyName: String = ""
var position: String = ""
var industry: String = ""
var honor: String = ""
let topics: [String] = []
required init() {
}
enum CodingKeys: String, CodingKey {
case id
case yhId = "yh_id"
case isSigned = "is_signed"
case avatar, username, address, zodiac, signature, bio, college, major, background
case companyName = "company_name"
case position, industry, honor, topics
}
}
......@@ -13,6 +13,13 @@ class YHMyEducationCell: UITableViewCell {
var editBlock: EditBlock?
static let cellReuseIdentifier = "YHMyEducationCell"
var userModel:YHUserNameCardInfo = YHUserNameCardInfo() {
didSet {
self.collegeLabel.text = self.userModel.college
self.detailLabel.text = self.userModel.background
}
}
lazy var cardView: UIView = {
let view = UIView()
view.backgroundColor = .white
......
......@@ -13,6 +13,11 @@ class YHMyIntroductionCell: UITableViewCell {
var editBlock: EditBlock?
static let cellReuseIdentifier = "YHMyIntroductionCell"
var userModel:YHUserNameCardInfo = YHUserNameCardInfo() {
didSet {
self.detailLabel.text = self.userModel.bio
}
}
lazy var cardView: UIView = {
let view = UIView()
view.backgroundColor = .white
......
......@@ -14,6 +14,17 @@ class YHMyNameCardAvatarInfoCell: UITableViewCell {
static let cellReuseIdentifier = "YHMyNameCardAvatarInfoCell"
let headWidth = 74.0
var userModel:YHUserNameCardInfo = YHUserNameCardInfo() {
didSet {
if let url = URL(string: self.userModel.avatar) {
self.headImgV.kf.setImage(with: url, placeholder: UIImage(named: "people_head_default"))
}
self.nameLabel.text = self.userModel.username
self.professionalLabel.text = self.userModel.position
self.detailLabel.text = self.userModel.signature
self.signImgV.isHidden = !self.userModel.isSigned
}
}
lazy var headImgV:UIImageView = {
let view = UIImageView()
......
......@@ -56,6 +56,14 @@ class YHMyWorkExperienceCell: UITableViewCell {
typealias EditBlock = () -> ()
var editBlock: EditBlock?
static let cellReuseIdentifier = "YHMyWorkExperienceCell"
var userModel:YHUserNameCardInfo = YHUserNameCardInfo() {
didSet {
if !self.userModel.companyName.isEmpty {
self.companyView.detailLabel.text = ""
}
}
}
lazy var cardView: UIView = {
let view = UIView()
......
......@@ -11,6 +11,7 @@ import UIKit
class YHMatchUserViewModel: NSObject {
var matchUserArr:[YHMatchUserInfo?] = []
var nameCardInfo: YHUserNameCardInfo = YHUserNameCardInfo()
var friendListModel:YHFriendListModel = YHFriendListModel()
func getMatchUserlist(_ callBack: @escaping (_ success: Bool,_ error: YHErrorModel?)->()) {
......@@ -96,4 +97,35 @@ class YHMatchUserViewModel: NSObject {
callBack(false, error)
}
}
func getUserNameCardInfo(uid: String, callBack: @escaping (_ success: Bool,_ error: YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.People.nameCardInfoApi
let _ = YHNetRequest.getRequest(url: strUrl) {
[weak self] json, code in
guard let self = self else { return }
let dic = json.data
printLog("model 是 ==> \(json)")
if json.code == 200 {
guard let result = YHUserNameCardInfo.deserialize(dict: dic as? Dictionary ) else {
let error = YHErrorModel(errorCode: YHErrorCode.dictParseError.rawValue, errorMsg: YHErrorCode.dictParseError.description())
self.nameCardInfo = YHUserNameCardInfo()
callBack(false, error)
return
}
self.nameCardInfo = result
callBack(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
self.nameCardInfo = YHUserNameCardInfo()
callBack(false, error)
}
} failBlock: { error in
self.nameCardInfo = YHUserNameCardInfo()
callBack(false, error)
}
}
}
......@@ -316,6 +316,8 @@ class YHAllApiName {
static let receiveFriendRequestApi = "super-app/community/process-friend-requests"
// 好友列表
static let friendListApi = "super-app/community/my-friends"
// 我的名片
static let nameCardInfoApi = "super-app/business-card/my-detail"
static let change = "super-app/avatar/change"
static let userSubmit = "super-app/user-base/submit"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment