推送:保存用户个推cid
This commit is contained in:
@@ -23,17 +23,17 @@ export default class Auth extends Service {
|
||||
* @param telNo - 用户手机号
|
||||
*/
|
||||
|
||||
public async deviceLogin(isGuest: boolean, token: string, deviceId: string, platform: string, pkgName: string, serverType: string) {
|
||||
public async deviceLogin(isGuest: boolean, token: string, deviceId: string, platform: string, pkgName: string, serverType: string, getuiCID: string) {
|
||||
const ctx = this.ctx;
|
||||
|
||||
let user = await UserModel.findUserByToken(token);
|
||||
|
||||
if (!user) {
|
||||
if(isGuest) {
|
||||
if (isGuest) {
|
||||
const tel = ctx.service.utils.genCode(10);
|
||||
const token = ctx.service.utils.generateStr(256);
|
||||
let lastGuest = await UserModel.getLastDeviceGuest(deviceId, token);
|
||||
if(lastGuest) {
|
||||
if (lastGuest) {
|
||||
let param = this.getReturnParam(lastGuest);
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
canLogin: true, // 未设置密码等于未创建账号
|
||||
@@ -42,6 +42,9 @@ export default class Auth extends Service {
|
||||
} else {
|
||||
|
||||
user = await UserModel.createUser(isGuest, tel, token, platform, pkgName, serverType, deviceId);
|
||||
if (getuiCID) {//更新个推cid
|
||||
await UserModel.updateGetuiCID(tel, getuiCID);
|
||||
}
|
||||
let param = this.getReturnParam(user);
|
||||
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
@@ -51,7 +54,7 @@ export default class Auth extends Service {
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
canLogin: false
|
||||
});
|
||||
@@ -59,10 +62,13 @@ export default class Auth extends Service {
|
||||
} else {
|
||||
const token = ctx.service.utils.generateStr(256);
|
||||
user = await UserModel.updateToken(user.tel, token, deviceId);
|
||||
if (getuiCID) {//更新个推cid
|
||||
await UserModel.updateGetuiCID(user.tel, getuiCID);
|
||||
}
|
||||
let param = this.getReturnParam(user);
|
||||
|
||||
let canLogin = true;
|
||||
if(!user.isGuest && !user.hasSetPw) canLogin = false;
|
||||
if (!user.isGuest && !user.hasSetPw) canLogin = false;
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
canLogin, // 未设置密码等于未创建账号
|
||||
...param
|
||||
@@ -76,11 +82,11 @@ export default class Auth extends Service {
|
||||
let isAdult = age >= ADULT_AGE;
|
||||
let todayPlayTime = user.todayPlayTime;
|
||||
let type = user.todayPlayType;
|
||||
if(shouldRefresh(user.reportTime, new Date(), 0)) {
|
||||
if (shouldRefresh(user.reportTime, new Date(), 0)) {
|
||||
todayPlayTime = 0;
|
||||
type = 0;
|
||||
}
|
||||
if((user.isGuest || !user.hasAuthenticated) && user.guestTime > GUEST_MAX_TIME) {
|
||||
if ((user.isGuest || !user.hasAuthenticated) && user.guestTime > GUEST_MAX_TIME) {
|
||||
type = ADDICTION_PREVENTION_CODE.GUEST;
|
||||
}
|
||||
|
||||
@@ -137,9 +143,9 @@ export default class Auth extends Service {
|
||||
return telVerify.resResult;
|
||||
}
|
||||
|
||||
if(type == GET_SMS_TYPE.BIND) {
|
||||
if (type == GET_SMS_TYPE.BIND) {
|
||||
let telUser = await UserModel.findUserByTel(tel);
|
||||
if(telUser && telUser.uid != ctx.uid) {
|
||||
if (telUser && telUser.uid != ctx.uid) {
|
||||
return ctx.service.utils.resResult(STATUS.TEL_HAS_USED);
|
||||
}
|
||||
}
|
||||
@@ -179,7 +185,7 @@ export default class Auth extends Service {
|
||||
* @param pkgName 包名
|
||||
* @param serverType 服务器类型
|
||||
*/
|
||||
public async smsLogin(tel: string, deviceId: string, code: string, platform: string, pkgName: string, serverType: string) {
|
||||
public async smsLogin(tel: string, deviceId: string, code: string, platform: string, pkgName: string, serverType: string, getuiCID: string) {
|
||||
const ctx = this.ctx;
|
||||
// 参数检查
|
||||
const telVerify = this.checkTelNo(tel);
|
||||
@@ -211,6 +217,9 @@ export default class Auth extends Service {
|
||||
// 用户注册登录
|
||||
const token = ctx.service.utils.generateStr(256);
|
||||
const user = await UserModel.createOrUpdate(false, tel, token, platform, pkgName, serverType, deviceId);
|
||||
if (getuiCID) {//更新个推cid
|
||||
await UserModel.updateGetuiCID(tel, getuiCID);
|
||||
}
|
||||
let param = this.getReturnParam(user);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, param);
|
||||
}
|
||||
@@ -224,8 +233,8 @@ export default class Auth extends Service {
|
||||
const ctx = this.ctx;
|
||||
|
||||
const sms = await smsModel.findByTel(tel);
|
||||
if(sms) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {code: sms?.code});
|
||||
if (sms) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { code: sms?.code });
|
||||
} else {
|
||||
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
|
||||
}
|
||||
@@ -238,7 +247,7 @@ export default class Auth extends Service {
|
||||
public async setPassword(password: string) {
|
||||
const { ctx } = this;
|
||||
const { uid } = ctx;
|
||||
if(!password) return ctx.service.utils.resResult(STATUS.PASSWORD_ILLEGEL);
|
||||
if (!password) return ctx.service.utils.resResult(STATUS.PASSWORD_ILLEGEL);
|
||||
|
||||
let user = await UserModel.setPass(uid, password);
|
||||
if (user) {
|
||||
@@ -257,7 +266,7 @@ export default class Auth extends Service {
|
||||
* @param pkgName 包名
|
||||
* @param serverType 服务器类型
|
||||
*/
|
||||
public async pwLogin(tel: string, deviceId: string, pw: string) {
|
||||
public async pwLogin(tel: string, deviceId: string, pw: string, getuiCID: string) {
|
||||
const ctx = this.ctx;
|
||||
// 参数检查
|
||||
const telVerify = this.checkTelNo(tel);
|
||||
@@ -269,8 +278,10 @@ export default class Auth extends Service {
|
||||
// 用户注册登录
|
||||
const token = ctx.service.utils.generateStr(256);
|
||||
const user = await UserModel.checkPass(tel, pw, token, deviceId);
|
||||
if(!user) return ctx.service.utils.resResult(STATUS.PASSWORD_ERR);
|
||||
|
||||
if (!user) return ctx.service.utils.resResult(STATUS.PASSWORD_ERR);
|
||||
if (getuiCID) {//更新个推cid
|
||||
await UserModel.updateGetuiCID(tel, getuiCID);
|
||||
}
|
||||
let param = this.getReturnParam(user);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { ...param });
|
||||
}
|
||||
@@ -336,12 +347,12 @@ export default class Auth extends Service {
|
||||
}
|
||||
|
||||
let telUser = await UserModel.findUserByTel(tel);
|
||||
if(telUser && telUser.uid != ctx.uid) {
|
||||
if (telUser && telUser.uid != ctx.uid) {
|
||||
return ctx.service.utils.resResult(STATUS.TEL_HAS_USED);
|
||||
}
|
||||
|
||||
let user = await UserModel.bindTel(ctx.uid, tel);
|
||||
if(!user) return ctx.service.utils.resResult(STATUS.ACCOUNT_NOT_GUEST);
|
||||
if (!user) return ctx.service.utils.resResult(STATUS.ACCOUNT_NOT_GUEST);
|
||||
let param = this.getReturnParam(user);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, param);
|
||||
}
|
||||
@@ -355,7 +366,7 @@ export default class Auth extends Service {
|
||||
// TODO 接SDK
|
||||
console.log(name, idNum);
|
||||
let result = await authenticate(name, idNum, ctx.userCode, ctx.pkgName);
|
||||
if(!result) return ctx.service.utils.resResult(STATUS.AUTHEN_FAIL);
|
||||
if (!result) return ctx.service.utils.resResult(STATUS.AUTHEN_FAIL);
|
||||
|
||||
let birthday = this.getBirthdayByIdCard(idNum);
|
||||
let user = await UserModel.authentication(ctx.uid, birthday, '');
|
||||
@@ -364,9 +375,9 @@ export default class Auth extends Service {
|
||||
}
|
||||
|
||||
private getBirthdayByIdCard(idNum: string) {
|
||||
let year = idNum.slice(6,10);
|
||||
let month = idNum.slice(10,12);
|
||||
let date = idNum.slice(12,14);
|
||||
let year = idNum.slice(6, 10);
|
||||
let month = idNum.slice(10, 12);
|
||||
let date = idNum.slice(12, 14);
|
||||
return `${year}-${month}-${date}`;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user