yangsunyue_wd

desc:退出登录接口

@@ -247,6 +247,14 @@ export class HttpUrlUtils { @@ -247,6 +247,14 @@ export class HttpUrlUtils {
247 return 'eyJhbGciOiJIUzI1NiIsImtpZCI6ImQ4WkI2QkhxSEZrdjJ2U25BNlRwZEdKRjBHcjItVzBvS2FaYzdLOUUycmcifQ.eyJpc3MiOiJwZW9wbGVzLWRhaWx5LWZvdXJhIiwic3ViIjoicGVvcGxlcy1kYWlseS1mb3VyYSIsImV4cCI6MTcwMzY0OTYwNiwidXNlcklkIjo0NTk3NzYyOTc0NzQ5NDksInVzZXJWZXJzaW9uIjoiNDU5Nzc2Mjk3NDc0OTQ5XzIiLCJ1c2VyTmFtZSI6IkJ1bGlraWtpMTgxIiwidXNlclR5cGUiOjIsImNyZWF0b3JJZCI6NDI2NTM5MH0.jhQ9kylcm3FxWf0-lBMZuLkdtIQ6XpFnAi0AFZJNwfc'; 247 return 'eyJhbGciOiJIUzI1NiIsImtpZCI6ImQ4WkI2QkhxSEZrdjJ2U25BNlRwZEdKRjBHcjItVzBvS2FaYzdLOUUycmcifQ.eyJpc3MiOiJwZW9wbGVzLWRhaWx5LWZvdXJhIiwic3ViIjoicGVvcGxlcy1kYWlseS1mb3VyYSIsImV4cCI6MTcwMzY0OTYwNiwidXNlcklkIjo0NTk3NzYyOTc0NzQ5NDksInVzZXJWZXJzaW9uIjoiNDU5Nzc2Mjk3NDc0OTQ5XzIiLCJ1c2VyTmFtZSI6IkJ1bGlraWtpMTgxIiwidXNlclR5cGUiOjIsImNyZWF0b3JJZCI6NDI2NTM5MH0.jhQ9kylcm3FxWf0-lBMZuLkdtIQ6XpFnAi0AFZJNwfc';
248 } 248 }
249 249
  250 + static getRefreshToken() {
  251 + let refreshToken = SPHelper.default.getSync(SpConstants.USER_REFRESH_TOKEN,"")
  252 + if(StringUtils.isNotEmpty(refreshToken)) {
  253 + return refreshToken as string;
  254 + }
  255 + return '';
  256 + }
  257 +
250 private static getDeviceId() { 258 private static getDeviceId() {
251 // TODO 259 // TODO
252 return '8a81226a-cabd-3e1b-b630-b51db4a720ed'; 260 return '8a81226a-cabd-3e1b-b630-b51db4a720ed';
@@ -337,6 +345,12 @@ export class HttpUrlUtils { @@ -337,6 +345,12 @@ export class HttpUrlUtils {
337 return url; 345 return url;
338 } 346 }
339 347
  348 + static getLogoutUrl() {
  349 + let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/logout";
  350 + return url;
  351 + }
  352 +
  353 +
340 static getResetPassworddUrl() { 354 static getResetPassworddUrl() {
341 let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/resetPassword"; 355 let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/resetPassword";
342 return url; 356 return url;
@@ -221,5 +221,30 @@ export class LoginModel { @@ -221,5 +221,30 @@ export class LoginModel {
221 }) 221 })
222 } 222 }
223 223
  224 + //退出登录
  225 + logOut() {
  226 + let bean: Record<string, string> = {};
  227 + bean['refreshToken'] = HttpUrlUtils.getRefreshToken();
  228 +
  229 + let headers: HashMap<string, string> = HttpUrlUtils.getCommonHeaders();
  230 +
  231 + return new Promise<string>((success, fail) => {
  232 + HttpRequest.post<ResponseDTO<string>>(HttpUrlUtils.getLogoutUrl(), bean, headers).then((data: ResponseDTO<string>) => {
  233 + if (!data || !data.data) {
  234 + fail("数据为空")
  235 + return
  236 + }
  237 + if (data.code != 0) {
  238 + fail(data.message)
  239 + return
  240 + }
  241 + success(data.data)
  242 + }, (error: Error) => {
  243 + fail(error.message)
  244 + Logger.debug("LoginViewModel:error ", error.toString())
  245 + })
  246 + })
  247 + }
  248 +
224 } 249 }
225 250
@@ -139,10 +139,25 @@ export class LoginViewModel { @@ -139,10 +139,25 @@ export class LoginViewModel {
139 fail(message) 139 fail(message)
140 }) 140 })
141 }) 141 })
  142 + }
142 143
  144 + // 登出
  145 + logOut(){
  146 + return new Promise<string>(async (success, fail) => {
  147 + this.loginModel.logOut().then((data) => {
  148 + //清除登录状态以及token、userid等信息
  149 + HttpUrlUtils.setUserId('');
  150 + HttpUrlUtils.setUserType('');
  151 + HttpUrlUtils.setUserToken('');
  152 + success(data)
  153 + }).catch((message: string) => {
  154 + fail(message)
  155 + })
  156 + })
143 } 157 }
144 158
145 159
  160 +
146 async doMd(content: string): Promise<string> { 161 async doMd(content: string): Promise<string> {
147 let mdAlgName = 'SHA256'; // 摘要算法名 162 let mdAlgName = 'SHA256'; // 摘要算法名
148 let message = content; // 待摘要的数据 163 let message = content; // 待摘要的数据