数据字典实现中英文切换

This commit is contained in:
zhn
2022-04-15 15:41:37 +08:00
parent c724bc3cd0
commit 00ab8406d8
11 changed files with 72 additions and 22 deletions
@@ -24,7 +24,7 @@ import java.util.Map;
* @since 2018-12-28
*/
public interface SysDictMapper extends BaseMapper<SysDict> {
/**
* 重复检查SQL
* @return
@@ -32,7 +32,7 @@ public interface SysDictMapper extends BaseMapper<SysDict> {
public Long duplicateCheckCountSql(DuplicateCheckVo duplicateCheckVo);
public Long duplicateCheckCountSqlNoDataId(DuplicateCheckVo duplicateCheckVo);
public List<DictModel> queryDictItemsByCode(@Param("code") String code);
@Deprecated
@@ -47,6 +47,8 @@ public interface SysDictMapper extends BaseMapper<SysDict> {
public String queryDictTextByKey(@Param("code") String code,@Param("key") String key);
public String queryDictTextByKeyEn(@Param("code") String code,@Param("key") String key);
public String queryDictKeyByText(@Param("code") String code,@Param("text") String key);
@Deprecated
@@ -60,13 +62,13 @@ public interface SysDictMapper extends BaseMapper<SysDict> {
* @return
*/
public List<DictModel> queryAllDepartBackDictModel();
/**
* 查询所有用户 作为字典信息 username -->value,realname -->text
* @return
*/
public List<DictModel> queryAllUserBackDictModel();
/**
* 通过关键字查询出字典表
* @param table
@@ -15,6 +15,12 @@
where s.dict_id = (select id from sys_dict where dict_code = #{code})
and s.item_value = #{key}
</select>
<!-- 通过字典code获取字典数据(英文) -->
<select id="queryDictTextByKeyEn" parameterType="String" resultType="String">
select s.en_name from sys_dict_item s
where s.dict_id = (select id from sys_dict where dict_code = #{code})
and s.item_value = #{key}
</select>
<!-- 通过字典code获取字典数据 -->
<select id="queryDictKeyByText" parameterType="String" resultType="String">
@@ -33,6 +33,7 @@ public interface ISysDictService extends IService<SysDict> {
public List<DictModel> queryTableDictItemsByCodeAndFilter(String table, String text, String code, String filterSql);
public String queryDictTextByKey(String code, String key);
public String queryDictTextByKeyEn(String code, String key,String cut);
@Deprecated
String queryTableDictTextByKey(String table, String text, String code, String key);
@@ -51,7 +51,7 @@ import java.util.*;
/**
* @Description: 底层共通业务API,提供其他独立模块调用
* @Author: scott
* @Date:2019-4-20
* @Date:2019-4-20
* @Version:V1.0
*/
@Slf4j
@@ -118,6 +118,11 @@ public class SysBaseApiImpl implements ISysBaseAPI {
return sysDictService.queryDictTextByKey(code, key);
}
@Override
public String translateDictEn(String code, String key, String cut) {
return sysDictService.queryDictTextByKeyEn(code, key,cut);
}
@Override
public List<SysPermissionDataRuleModel> queryPermissionDataRule(String component, String requestPath, String username) {
List<SysPermission> currentSyspermission = null;
@@ -1015,4 +1020,4 @@ public class SysBaseApiImpl implements ISysBaseAPI {
public List<SysDepartTreeModel> listSonDepartsByDepId(String departId) {
return sysDepartService.listSonDepartsByDepId(departId);
}
}
}
@@ -123,6 +123,12 @@ public class SysDictServiceImpl extends ServiceImpl<SysDictMapper, SysDict> impl
log.debug("无缓存dictText的时候调用这里!");
return sysDictMapper.queryDictTextByKey(code, key);
}
@Override
@Cacheable(value = CacheConstant.SYS_DICT_CACHE,key = "#code+':'+#key+#cut")
public String queryDictTextByKeyEn(String code, String key,String cut) {
log.debug("无缓存dictText的时候调用这里!");
return sysDictMapper.queryDictTextByKeyEn(code, key);
}
/**
* 通过查询指定table的 text code 获取字典