yiming
2024-03-27 3963ae3ae3ebc2908905bb1409799d7b883a802f
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
import { setSessionGuid } from "./userAction"
 
 
export const checkLoginInfo = (app, callback) => {
    const token = wx.getStorageSync(app.config.tokenKey)
    if (!token) {
        wx.login({
            success: (res) => {
                wx.getUserInfo({
                    success: (infoRes) => {
                        app.MG.identity.checkWeChatAppAccount({
                            code: res.code,
                            appCode: app.config.appRefCode,
                            encryptedData: infoRes.encryptedData,
                            iv: infoRes.iv
                        }).then(loginRes => {
                            if (!loginRes) {
                                wx.navigateTo({
                                    url: "/pages/bindInfo/index?code=" + res.code,
                                });
                            } else {
                                wx.login({
                                    success: (res) => {
                                        app.MG.identity.loginByWeChatAppCode({
                                            code: res.code,
                                            appRefCode: app.config.appRefCode,
                                            platform: "weChatAppCustom",
                                            encryptedData: infoRes.encryptedData,
                                            iv: infoRes.iv
                                        }).then(res => {
                                            if (res && res.status == "Ok") {
                                                wx.setStorageSync(app.config.tokenKey, res.token);
                                                setSessionGuid()
                                                callback(res.token)
                                            } else {
                                                console.log(res);
                                                callback(false)
                                            }
                                        })
                                    },
                                    fail: (err) => {
                                        console.log(err);
                                        callback(false)
                                    }
                                })
                            }
                        })
                    },
                    fail: (err) => {
                        console.log(err);
                        callback(false)
                    }
                })
            },
            fail: (err) => {
                console.log(err);
                callback(false)
            }
        })
    } else {
        callback(token)
    }
}