多语言(英语、法语、西班牙语、德语、波兰语、阿拉伯语)处理

This commit is contained in:
2026-01-12 09:37:20 +08:00
parent 219caadd45
commit 41f0b72253
113 changed files with 3593 additions and 464 deletions

View File

@ -1,6 +1,7 @@
package com.ho.user.controller;
import com.ho.common.tools.annotation.LogAnnotation;
import com.ho.common.tools.constant.CommonConstant;
import com.ho.common.tools.constant.ContextConstant;
import com.ho.common.tools.constant.RedisKeyConstant;
import com.ho.common.tools.entity.PageVO;
@ -50,7 +51,7 @@ public class DictController {
@ApiOperation(value = "查询字典列表接口(根据类型)")
// @LogAnnotation(title = "字典管理",action = "根据类型查询字典")
public DataResult<DictRespVo> dictList(@RequestBody @Valid DictSearchReqVO vo,HttpServletRequest request) {
String lang =request.getHeader(RedisKeyConstant.User.LANG);
String lang =request.getHeader(CommonConstant.LANG);
DataResult<DictRespVo> result = DataResult.success();
DictTypeAndLabelReqVO typeAndLabelReqVO = new DictTypeAndLabelReqVO();
typeAndLabelReqVO.setType(vo.getType());
@ -80,7 +81,7 @@ public class DictController {
@PostMapping("typeAll")
@ApiOperation(value = "查询所有字典列表接口")
public DataResult<List<DictRespVo>> typeList(HttpServletRequest request) {
String lang =request.getHeader(RedisKeyConstant.User.LANG);
String lang =request.getHeader(CommonConstant.LANG);
DataResult<List<DictRespVo>> result = DataResult.success();
result.setData(dictService.selectDictType(lang));
return result;

View File

@ -294,7 +294,7 @@ public class PermissionController {
public DataResult<List<PermissionRespNode>> getStationPer(@RequestBody PermStationRelation permStationRelation, HttpServletRequest request) {
String token = request.getHeader(RedisKeyConstant.User.ACCESS_TOKEN);
String userTokenKey = RedisKeyConstant.User.TOKEN + token;
String lang=request.getHeader(RedisKeyConstant.User.LANG);
String lang=request.getHeader(CommonConstant.LANG);
UserDetailRespVO user = (UserDetailRespVO) redisService.get(userTokenKey);
DataResult<List<PermissionRespNode>> result = DataResult.success();
result.setData(permissionService.getStationPer(permStationRelation.getStationId(),user,lang));

View File

@ -96,7 +96,7 @@ public class UserController {
public DataResult<UserDetailRespVO> yourSelfInfo(@RequestParam(required = false) String type,HttpServletRequest request) {
String token = request.getHeader(RedisKeyConstant.User.ACCESS_TOKEN);
String userTokenKey = RedisKeyConstant.User.TOKEN + token;
String lang =request.getHeader(RedisKeyConstant.User.LANG);
String lang =request.getHeader(CommonConstant.LANG);
//根据用户的登陆方式(账号还是手机号),延长对应缓存
if (redisService.hasKey(userTokenKey)) {
//每次获取用户信息,都会进行过期时间的延长

View File

@ -12,6 +12,21 @@
<sql id="Base_Column_DictSubList1">
id,label_en label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<sql id="Base_Column_DictSubList2">
id,label_fra label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<sql id="Base_Column_DictSubList3">
id,label_spa label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<sql id="Base_Column_DictSubList4">
id,label_de label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<sql id="Base_Column_DictSubList5">
id,label_pl label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<sql id="Base_Column_DictSubList6">
id,label_ara label, type,`value`, sort, `desc`,create_time, update_time, deleted
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultType="com.ho.user.entity.SysDict">
select
@ -88,6 +103,21 @@
<when test="lang != null and lang=='en_US' ">
<include refid="Base_Column_DictSubList1"></include>
</when>
<when test="lang != null and lang=='fr_FR' ">
<include refid="Base_Column_DictSubList2"/>
</when>
<when test="lang != null and lang=='es_ES' ">
<include refid="Base_Column_DictSubList3"/>
</when>
<when test="lang != null and lang=='de_DE' ">
<include refid="Base_Column_DictSubList4"/>
</when>
<when test="lang != null and lang=='pl_PL' ">
<include refid="Base_Column_DictSubList5"/>
</when>
<when test="lang != null and lang=='ar_EG' ">
<include refid="Base_Column_DictSubList6"/>
</when>
<otherwise>
<include refid="Base_Column_DictSubList"></include>
</otherwise>

View File

@ -3,14 +3,34 @@
<mapper namespace="com.ho.user.mapper.SysPermissionMapper">
<sql id="Base_Column_List">
id
, code, `name`, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
id, code, `name`, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List1">
id
, code, name_en name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
id, code, name_en name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List2">
id, code, name_fra name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List3">
id, code, name_spa name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List4">
id, code, name_de name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List5">
id, code, name_pl name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
<sql id="Base_Column_List6">
id, code, name_ara name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
update_time, deleted, `scope`,is_config ,component, menu_name
</sql>
@ -287,6 +307,21 @@
<choose>
<when test="query.lang != null and query.lang=='en_US' ">
<include refid="Base_Column_List1"></include>
</when>
<when test="query.lang != null and query.lang=='fr_FR' ">
<include refid="Base_Column_List2"></include>
</when>
<when test="query.lang != null and query.lang=='es_ES' ">
<include refid="Base_Column_List3"></include>
</when>
<when test="query.lang != null and query.lang=='de_DE' ">
<include refid="Base_Column_List4"></include>
</when>
<when test="query.lang != null and query.lang=='pl_PL' ">
<include refid="Base_Column_List5"></include>
</when>
<when test="query.lang != null and query.lang=='ar_EG' ">
<include refid="Base_Column_List6"></include>
</when>
<otherwise>
<include refid="Base_Column_List"></include>
@ -425,6 +460,21 @@
<when test="lang != null and lang=='en_US' ">
<include refid="Base_Column_List1"></include>
</when>
<when test="lang != null and lang=='fr_FR' ">
<include refid="Base_Column_List2"/>
</when>
<when test="lang != null and lang=='es_ES' ">
<include refid="Base_Column_List3"/>
</when>
<when test="lang != null and lang=='de_DE' ">
<include refid="Base_Column_List4"/>
</when>
<when test="lang != null and lang=='pl_PL' ">
<include refid="Base_Column_List5"/>
</when>
<when test="lang != null and lang=='ar_EG' ">
<include refid="Base_Column_List6"/>
</when>
<otherwise>
<include refid="Base_Column_List"></include>
</otherwise>