杨锴
2025-05-11 7453d2d0cef415b34323d1b91e6cfa4a6ba31178
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
//
//  JoinMemberIntroduceVC.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/8.
//
 
import UIKit
import QMUIKit
import WebKit
import JQTools
 
class JoinMemberIntroduceVC: BaseVC {
                @IBOutlet weak var btn_join: QMUIButton!
                @IBOutlet weak var webView: WKWebView!
 
                override func viewDidLoad() {
                                super.viewDidLoad()
                                title = "成为会员"
 
                                Services.querySystemImg(type: .becomeVip).subscribe(onNext: {data in
                                                if let imgString = data.data{
                                                                let html = "<img src='\(imgString)' width='\(JQ_ScreenW)' loading=eager/>"
                                                                self.webView.loadHTMLString(html.jq_wrapHtml(), baseURL: nil)
                                                }
                                }) { error in
 
                                }.disposed(by: disposeBag)
                }
 
                override func setUI() {
                                btn_join.spacingBetweenImageAndTitle = 3
                                btn_join.imagePosition = .left
                }
 
 
                @IBAction func joinAction(_ sender: QMUIButton) {
 
                                var price = 0.01
#if !DEBUG
                                price = 199
#endif
 
                                PaymentView.show(enumType: .joinMember, money: (ali:price,wx:price,coin:nil,course:nil,integral:nil)) { type in
                                                Services.enrollMember(paytype: type).subscribe(onNext: {data in
                                                                if let m = data.data{
                                                                                switch type {
                                                                                                case .aliPay:
                                                                                                                if let orderString = data.data?.orderString{
                                                                                                                                YYPaymentManager.shared.sendPaymentRequest(YYAlipayRequest(orderString: orderString)) {[weak self] result in
                                                                                                                                                guard let weakSelf = self else { return }
                                                                                                                                                switch result {
                                                                                                                                                                case .success:
                                                                                                                                                                                let vc = PaymentResultVC(result: .success, objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil)
                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                case .cancel:
                                                                                                                                                                                let vc = PaymentResultVC(result: .fail("已取消支付", 0), objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil)
                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                case .failure(let error):
                                                                                                                                                                                if let er = error as? NetworkRequest.NetRequestError{
                                                                                                                                                                                                switch er {
                                                                                                                                                                                                                case .Other(let code,let string):
                                                                                                                                                                                                                                let vc = PaymentResultVC(result: .fail(string,code), objType: .member)
                                                                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                                                                default:
                                                                                                                                                                                                                                let vc = PaymentResultVC(result: .fail("支付失败",0), objType: .member)
                                                                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                                                }
                                                                                                                                                                                }
                                                                                                                                                }
                                                                                                                                }
                                                                                                                }
                                                                                                case .wechat:
                                                                                                                YYPaymentManager.shared.sendPaymentRequest(YYWeChatPayRequest(partnerId: m.partnerid, prepayId: m.prepayid, package: m.package, nonceStr: m.noncestr, timeStamp: m.timestamp, sign: m.sign)) {[weak self] result in
                                                                                                                                guard let weakSelf = self else { return }
                                                                                                                                switch result {
                                                                                                                                                case .success:
                                                                                                                                                                let vc = PaymentResultVC(result: .success, objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil)
                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                case .cancel:
                                                                                                                                                                let vc = PaymentResultVC(result: .fail("已取消支付", 0), objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil)
                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                case .failure(let error):
                                                                                                                                                                if let er = error as? NetworkRequest.NetRequestError{
                                                                                                                                                                                switch er {
                                                                                                                                                                                                case .Other(let code,let string):
                                                                                                                                                                                                                let vc = PaymentResultVC(result: .fail(string,code), objType: .member)
                                                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                                                default:
                                                                                                                                                                                                                let vc = PaymentResultVC(result: .fail("支付失败",0), objType: .member)
                                                                                                                                                                                                                weakSelf.push(vc: vc)
                                                                                                                                                                                }
                                                                                                                                                                }
                                                                                                                                }
                                                                                                                }
                                                                                                default:break
                                                                                }
                                                                }
 
                                                }).disposed(by: self.disposeBag)
                                }
                }
}