JCAddFriendViewController.swift 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. //
  2. // JCAddFriendViewController.swift
  3. // JChat
  4. //
  5. // Created by deng on 2017/4/27.
  6. // Copyright © 2017年 HXHG. All rights reserved.
  7. //
  8. import UIKit
  9. import JMessage
  10. class JCAddFriendViewController: UIViewController {
  11. var user: JMSGUser?
  12. override func viewDidLoad() {
  13. super.viewDidLoad()
  14. _init()
  15. }
  16. private lazy var navRightButton: UIBarButtonItem = UIBarButtonItem(title: "发送", style: .plain, target: self, action: #selector(_addFriend))
  17. fileprivate lazy var textField: UITextField = UITextField(frame: CGRect(x: 0, y: 64, width: self.view.width, height: 45))
  18. //MARK: - private func
  19. private func _init() {
  20. self.title = "验证信息"
  21. view.backgroundColor = UIColor(netHex: 0xe8edf3)
  22. textField.text = "我是"
  23. textField.backgroundColor = .white
  24. textField.leftView = UIView(frame: CGRect(x: 0, y: 0, width: 15, height: 0))
  25. textField.leftViewMode = .always
  26. view.addSubview(textField)
  27. _setupNavigation()
  28. }
  29. private func _setupNavigation() {
  30. navigationItem.rightBarButtonItem = navRightButton
  31. }
  32. //MARK: - click func
  33. @objc func _addFriend() {
  34. guard let user = user else {
  35. return
  36. }
  37. JMSGFriendManager.sendInvitationRequest(withUsername: user.username, appKey: user.appKey, reason: textField.text) { (result, error) in
  38. if error == nil {
  39. let info = JCVerificationInfo.create(username: user.username, nickname: user.nickname, appkey: user.appKey!, resaon: self.textField.text, state: JCVerificationType.wait.rawValue)
  40. JCVerificationInfoDB.shareInstance.insertData(info)
  41. NotificationCenter.default.post(name: Notification.Name(rawValue: kUpdateVerification), object: nil)
  42. MBProgressHUD_JChat.show(text: "好友请求已发送", view: self.view, 2)
  43. weak var weakSelf = self
  44. let time: TimeInterval = 2
  45. DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + time) {
  46. weakSelf?.navigationController?.popViewController(animated: true)
  47. }
  48. } else {
  49. MBProgressHUD_JChat.show(text: "\(String.errorAlert(error! as NSError))", view: self.view)
  50. }
  51. }
  52. }
  53. }