|
|
@@ -108,7 +108,8 @@
|
|
|
<script>
|
|
|
import { encryptor } from "@/common/jse";
|
|
|
import { loginSms, accountLogin, smsLogin, openidLogin } from "@/utils/login";
|
|
|
-import { authorize, backCode } from "@/common/authorize";
|
|
|
+import { authorize, backOpenId } from "@/common/authorize";
|
|
|
+import { checkBindGzh, OfficialLogin } from "@/utils/user";
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -175,6 +176,7 @@ export default {
|
|
|
codeTips: "",
|
|
|
isUse: false,
|
|
|
options: {},
|
|
|
+ openid: "",
|
|
|
};
|
|
|
},
|
|
|
onLoad(options) {
|
|
|
@@ -182,7 +184,7 @@ export default {
|
|
|
authorize();
|
|
|
},
|
|
|
onShow() {
|
|
|
- backCode(this.openidLogin);
|
|
|
+ backOpenId(this.openidLogin);
|
|
|
},
|
|
|
onReady() {
|
|
|
this.$refs.uForm1.setRules(this.rules);
|
|
|
@@ -223,6 +225,7 @@ export default {
|
|
|
})
|
|
|
.then((data) => {
|
|
|
this.$u.toast("登录成功");
|
|
|
+ this.openid && this.bindOpenId();
|
|
|
this.loginCallback(data);
|
|
|
})
|
|
|
.finally(() => {
|
|
|
@@ -267,9 +270,20 @@ export default {
|
|
|
sectionChange(index) {
|
|
|
this.current = index;
|
|
|
},
|
|
|
+ // 绑定openid和unionid
|
|
|
+ bindOpenId() {
|
|
|
+ checkBindGzh().then((res) => {
|
|
|
+ if (!res) {
|
|
|
+ OfficialLogin({
|
|
|
+ gzhOpenid: this.openid,
|
|
|
+ unionId: uni.getStorageSync("unionid"),
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
loginCallback(data) {
|
|
|
- backCode();
|
|
|
this.$store.commit("LOGIN_CB", data);
|
|
|
+ this.openid && this.bindOpenId();
|
|
|
this.$store.dispatch("getUserInfo").then((res) => {
|
|
|
if (this.options.backBill) {
|
|
|
let href = uni.getStorageSync("BillHerf");
|
|
|
@@ -289,10 +303,10 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
- openidLogin(code) {
|
|
|
- openidLogin({ openid: code }).then((data) => {
|
|
|
- this.$store.commit("LOGIN_CB", data);
|
|
|
- this.$store.dispatch("getUserInfo");
|
|
|
+ openidLogin(openid) {
|
|
|
+ this.openid = openid;
|
|
|
+ openidLogin({ openid }).then((data) => {
|
|
|
+ this.loginCallback(data);
|
|
|
});
|
|
|
},
|
|
|
},
|