🐞 fix(账号): 账号注销问题修复
This commit is contained in:
@@ -23,8 +23,8 @@ export default (app: Application) => {
|
||||
router.post('/user/checkversion', tokenParser, controller.game.checkVersion);
|
||||
router.post('/user/checkv', tokenParser, controller.game.checkVersion); // 增加一个接口,规避 iOS 敏感词
|
||||
router.post('/user/deleterole', controller.account.deleteRole);
|
||||
router.post('/user/closeaccount', controller.account.closeAccount);
|
||||
router.post('/user/cancelcloseaccount', controller.account.cancelCloseAccount);
|
||||
router.post('/user/closeaccount', tokenParser, controller.account.closeAccount);
|
||||
router.post('/user/cancelcloseaccount', tokenParser, controller.account.cancelCloseAccount);
|
||||
router.post('/game/getserverlist', tokenParser, controller.game.getServerList);
|
||||
router.post('/game/getnotice', tokenParser, controller.game.getnotice);
|
||||
router.post('/gate/queryenter', tokenParser, controller.game.queryEnter);
|
||||
|
||||
@@ -486,11 +486,11 @@ export default class Auth extends Service {
|
||||
|
||||
public async closeAccount(roleId: string) {
|
||||
const ctx = this.ctx;
|
||||
let role = await RoleModel.findByRoleId(roleId, '+cancelCloseTime');
|
||||
if(!role) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
||||
let role = await RoleModel.findByRoleId(roleId, '+closeTime +cancelCloseTime userInfo');
|
||||
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
||||
if(role.cancelCloseTime > 0 && role.cancelCloseTime + 24 * 60 * 60 > nowSeconds() )
|
||||
return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_COOL_DOWN, `注销冷却中,请${this.getCdTimeStr(role.cancelCloseTime)}后再试`);
|
||||
|
||||
if(role.closeTime > 0) return ctx.service.utils.resResult(STATUS.ROLE_CLOSED);
|
||||
role = await RoleModel.closeAccount(roleId, nowSeconds() + 15 * 24 * 60 * 60);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
||||
}
|
||||
@@ -505,7 +505,10 @@ export default class Auth extends Service {
|
||||
|
||||
public async cancelCloseAccount(roleId: string) {
|
||||
const ctx = this.ctx;
|
||||
let role = await RoleModel.cancelCloseAccount(roleId, nowSeconds());
|
||||
let role = await RoleModel.findByRoleId(roleId, '+cancelCloseTime userInfo');
|
||||
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
||||
|
||||
role = await RoleModel.cancelCloseAccount(roleId, nowSeconds());
|
||||
if(!role) return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_TIME_OVER);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user