TASK: 语言;
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ai.da.common.config.exception;
|
|||||||
|
|
||||||
import com.ai.da.common.context.UserContext;
|
import com.ai.da.common.context.UserContext;
|
||||||
import com.ai.da.common.response.ResultEnum;
|
import com.ai.da.common.response.ResultEnum;
|
||||||
|
import com.ai.da.model.enums.Language;
|
||||||
import com.ai.da.model.vo.AuthPrincipalVo;
|
import com.ai.da.model.vo.AuthPrincipalVo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@@ -49,7 +50,7 @@ public class BusinessException extends RuntimeException {
|
|||||||
if (Objects.isNull(userInfo)) {
|
if (Objects.isNull(userInfo)) {
|
||||||
return new Locale("en");
|
return new Locale("en");
|
||||||
}
|
}
|
||||||
return new Locale(userInfo.getLanguage());
|
return new Locale(Language.valueOf(userInfo.getLanguage()).getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String getMessageFromResource(String msg, Locale userLocale) {
|
private static String getMessageFromResource(String msg, Locale userLocale) {
|
||||||
|
|||||||
@@ -70,8 +70,14 @@ public class AccountController {
|
|||||||
|
|
||||||
@ApiOperation(value = "获取当前用户语言")
|
@ApiOperation(value = "获取当前用户语言")
|
||||||
@PostMapping("/getUserLanguage")
|
@PostMapping("/getUserLanguage")
|
||||||
public Response<String> getUserLanguage() {
|
public Response<Language> getUserLanguage() {
|
||||||
return Response.success(accountService.getUserLanguage());
|
return Response.success(accountService.getUserLanguage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation(value = "获取当前用户语言")
|
||||||
|
@PostMapping("/changeUserLanguage")
|
||||||
|
public Response<String> changeUserLanguage(String language) {
|
||||||
|
return Response.success(accountService.changeUserLanguage(language));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -91,5 +91,7 @@ public interface AccountService extends IService<Account> {
|
|||||||
*/
|
*/
|
||||||
Boolean editUser(AccountEditDTO accountEditDTO);
|
Boolean editUser(AccountEditDTO accountEditDTO);
|
||||||
|
|
||||||
String getUserLanguage();
|
Language getUserLanguage();
|
||||||
|
|
||||||
|
String changeUserLanguage(String language);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -404,9 +404,18 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUserLanguage() {
|
public Language getUserLanguage() {
|
||||||
AuthPrincipalVo userInfo = UserContext.getUserHolder();
|
AuthPrincipalVo userInfo = UserContext.getUserHolder();
|
||||||
// Language language = Language.valueOf(userInfo.getLanguage());
|
return Language.valueOf(userInfo.getLanguage());
|
||||||
return userInfo.getLanguage();
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String changeUserLanguage(String language) {
|
||||||
|
AuthPrincipalVo userInfo = UserContext.getUserHolder();
|
||||||
|
Account account = accountMapper.selectById(userInfo.getId());
|
||||||
|
account.setLanguage(language);
|
||||||
|
accountMapper.updateById(account);
|
||||||
|
String accountToken = createAccountToken(account);
|
||||||
|
return accountToken;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user