CoachQRPageController.swift 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. //
  2. // CoachQRPageController.swift
  3. // JiaPeiManage
  4. //
  5. // Created by Ning.ge on 2023/7/5.
  6. //
  7. import UIKit
  8. import RxSwift
  9. import RxCocoa
  10. final class CoachQRPageController: BaseViewController {
  11. // MARK: 服务属性
  12. private let cocahService: CoachServiceType = CoachService(networking: CoachNetworking())
  13. @IBOutlet weak var user_iconimageView: UIImageView!
  14. @IBOutlet weak var user_nameLabel: UILabel!
  15. @IBOutlet weak var idcard_label: UILabel!
  16. @IBOutlet weak var qrcode_imageView: UIImageView!
  17. @IBOutlet weak var android_button: UIButton!
  18. @IBOutlet weak var ios_button: UIButton!
  19. @IBOutlet weak var viewbg_imageView: UIImageView!
  20. var coachJsonInfo:CoachJsonInfo?
  21. override func viewDidLoad() {
  22. super.viewDidLoad()
  23. //UI
  24. setupUI()
  25. //biand绑定
  26. biandView()
  27. //获取信息
  28. getCoachQrInfo()
  29. }
  30. // MARK: 私有方法
  31. func getCoachQrInfo(){
  32. NYTips.show()
  33. let suid:String = String(LocalManager.userInfo.id)
  34. self.cocahService.coachQrInfoRequest(id:suid,city: LocalManager.userInfo.city!).subscribe(onSuccess: {[unowned self] coachJsonInfo in
  35. print("%@",coachJsonInfo)
  36. self.coachJsonInfo = coachJsonInfo
  37. self.user_nameLabel.text = coachJsonInfo.name
  38. self.idcard_label.text = LocalManager.userInfo.idcard
  39. self.user_iconimageView.sd_setImage(with: LocalManager.userInfo.photoPath.urlValue, placeholderImage: LocalManager.userInfo.sex == "1" ? NYImage.Mine.usermale:NYImage.Mine.userfemale)
  40. // let encoder = JSONEncoder()
  41. // encoder.outputFormatting = .prettyPrinted
  42. // do {
  43. // let jsonData = try encoder.encode(coachJsonInfo)
  44. // // 将 JSON 数据转换为字符串
  45. // if let jsonString = String(data: jsonData, encoding: .utf8) {
  46. // self.qrcode_imageView.image = UIImage.generateQRCode(from: jsonString, size: CGSize(width: 124.f, height: 124.f))
  47. // }
  48. // } catch {
  49. // print("Failed to encode CoachJsonInfo object:", error)
  50. // }
  51. let content = "#FJCOACH#@@\(coachJsonInfo.id)@@"+coachJsonInfo.dqbh
  52. let result = "#DECODE#"+DES3Util.encrypt(content)
  53. self.qrcode_imageView.image = UIImage.generateQRCode(from: result, size: CGSize(width: 124.f, height: 124.f))
  54. NYTips.hide()
  55. }, onError: { error in
  56. NYTips.hide()
  57. })
  58. .disposed(by: disposeBag)
  59. }
  60. func setupUI(){
  61. if isIphoneX {self.nav_top_layout.constant = 24.f}
  62. self.view.backgroundColor = .db_theme
  63. if kScreenHeight >= 736.f{
  64. self.viewbg_imageView.image = UIImage(named: "viewbg_long");
  65. }else {
  66. self.viewbg_imageView.image = UIImage(named: "viewbg_short");
  67. }
  68. }
  69. //绑定-rx
  70. func biandView(){
  71. //android
  72. self.android_button.rx.tap.subscribe ({ [unowned self] (_) in
  73. if !LocalManager.isOpenLogin() { return}
  74. NYSwRouter.push(NYSwPushType.coach_qrcode_download,context:0)
  75. }).disposed(by: disposeBag)
  76. //ios
  77. self.ios_button.rx.tap.subscribe ({ [unowned self] (_) in
  78. if !LocalManager.isOpenLogin() { return}
  79. NYSwRouter.push(NYSwPushType.coach_qrcode_download,context:1)
  80. }).disposed(by: disposeBag)
  81. }
  82. }