shishuangxi

修复创造者账号无法登录问题

@@ -84,7 +84,11 @@ export class LoginModel { @@ -84,7 +84,11 @@ export class LoginModel {
84 // {"password":"523acd319228efde34e8a30268ee8ca5e4fc421d72affa531676e1765940d22c","phone":"13625644528","loginType":0,"oldPassword":"BA5FD74F827AF9B271FE17CADC489C36","deviceId":"60da5af6-9c59-3566-8622-8c6c00710994"} 84 // {"password":"523acd319228efde34e8a30268ee8ca5e4fc421d72affa531676e1765940d22c","phone":"13625644528","loginType":0,"oldPassword":"BA5FD74F827AF9B271FE17CADC489C36","deviceId":"60da5af6-9c59-3566-8622-8c6c00710994"}
85 appLoginByPassword(phone: string, loginType: number, password: string, oldPassword: string) { 85 appLoginByPassword(phone: string, loginType: number, password: string, oldPassword: string) {
86 let bean: Record<string, string | number> = {}; 86 let bean: Record<string, string | number> = {};
  87 + if (loginType == 0) {
87 bean['phone'] = phone 88 bean['phone'] = phone
  89 + } else {
  90 + bean['userName'] = phone
  91 + }
88 bean['loginType'] = loginType 92 bean['loginType'] = loginType
89 bean['deviceId'] = '60da5af6-9c59-3566-8622-8c6c00710994' 93 bean['deviceId'] = '60da5af6-9c59-3566-8622-8c6c00710994'
90 bean['password'] = password 94 bean['password'] = password
@@ -196,7 +196,6 @@ struct LoginPage { @@ -196,7 +196,6 @@ struct LoginPage {
196 Column() { 196 Column() {
197 TextInput({ placeholder: "请输入账号", controller: this.phoneController }) 197 TextInput({ placeholder: "请输入账号", controller: this.phoneController })
198 .fontSize(16) 198 .fontSize(16)
199 - .maxLength(11)  
200 .height(48) 199 .height(48)
201 .backgroundColor("#F5F5F5") 200 .backgroundColor("#F5F5F5")
202 .borderRadius(4) 201 .borderRadius(4)
1 import { Logger } from 'wdKit/src/main/ets/utils/Logger' 1 import { Logger } from 'wdKit/src/main/ets/utils/Logger'
2 import { LoginModel } from './LoginModel' 2 import { LoginModel } from './LoginModel'
3 import { LoginBean } from './LoginBean' 3 import { LoginBean } from './LoginBean'
4 -import { SPHelper } from 'wdKit' 4 +import { SPHelper, StringUtils } from 'wdKit'
5 import { CheckVerifyBean } from './CheckVerifyBean' 5 import { CheckVerifyBean } from './CheckVerifyBean'
6 import cryptoFramework from '@ohos.security.cryptoFramework' 6 import cryptoFramework from '@ohos.security.cryptoFramework'
7 import buffer from '@ohos.buffer' 7 import buffer from '@ohos.buffer'
@@ -66,11 +66,17 @@ export class LoginViewModel { @@ -66,11 +66,17 @@ export class LoginViewModel {
66 } 66 }
67 67
68 async appLoginByPassword(phone: string, loginType: number, password: string, oldPassword: string) { 68 async appLoginByPassword(phone: string, loginType: number, password: string, oldPassword: string) {
69 - 69 + let newLoginType: number
  70 + let isPhone = this.verifyIsPhoneNumber(phone)
  71 + if (isPhone) {
  72 + newLoginType = 0;
  73 + } else {
  74 + newLoginType = 8;
  75 + }
70 return new Promise<LoginBean>(async (success, fail) => { 76 return new Promise<LoginBean>(async (success, fail) => {
71 let passwordNew = await this.doMd(password) 77 let passwordNew = await this.doMd(password)
72 Logger.debug(TAG, "PASSWORD:" + passwordNew) 78 Logger.debug(TAG, "PASSWORD:" + passwordNew)
73 - this.loginModel.appLoginByPassword(phone, loginType, passwordNew, oldPassword).then((data: LoginBean) => { 79 + this.loginModel.appLoginByPassword(phone, newLoginType, passwordNew, oldPassword).then((data: LoginBean) => {
74 SPHelper.default.saveSync(SpConstants.USER_FIRST_MARK, data.firstMark) 80 SPHelper.default.saveSync(SpConstants.USER_FIRST_MARK, data.firstMark)
75 SPHelper.default.saveSync(SpConstants.USER_ID, data.id) 81 SPHelper.default.saveSync(SpConstants.USER_ID, data.id)
76 SPHelper.default.saveSync(SpConstants.USER_JWT_TOKEN, data.jwtToken) 82 SPHelper.default.saveSync(SpConstants.USER_JWT_TOKEN, data.jwtToken)
@@ -234,4 +240,18 @@ export class LoginViewModel { @@ -234,4 +240,18 @@ export class LoginViewModel {
234 }) 240 })
235 }) 241 })
236 } 242 }
  243 +
  244 +
  245 + public verifyIsPhoneNumber(phone: string): boolean {
  246 + const regex = /^1[3-9]\d{9}$/;
  247 + let isMatch: boolean;
  248 + if (StringUtils.isEmpty(phone)) {
  249 + return false;
  250 + } else if (phone.length != 11) {
  251 + return false;
  252 + } else {
  253 + isMatch = regex.test(phone)
  254 + }
  255 + return isMatch;
  256 + }
237 } 257 }