多语言支持

pull/250/head
dxfeng 10 months ago
parent d802a3b200
commit 830c3f32ad

@ -29,4 +29,7 @@ public @interface OrganizationTableColumn {
// 额外参数
String otherPara() default "";
// 多语言转换
boolean multiLanguage() default false;
}

@ -116,6 +116,11 @@ public class OrganizationWeaTable<T> extends WeaTable {
String otherPara = columnAnn.otherPara();
if (StringUtils.isNotBlank(otherPara)) {
weaTableColumn.setOtherpara(otherPara);
} else {
// 未设置其他参数,但是设置了多语言,自动添加其它参数为语言类型
if (columnAnn.multiLanguage()) {
weaTableColumn.setOtherpara(String.valueOf(user.getLanguage()));
}
}
if (!display) {
weaTableColumn.setDisplay(WeaBoolAttr.FALSE);

@ -128,16 +128,19 @@ public class DepartmentBO {
if (CollectionUtils.isEmpty(departmentPOs)) {
return Collections.emptyList();
}
SubCompanyComInfo subCompanyComInfo = new SubCompanyComInfo();
DepartmentComInfo departmentComInfo = new DepartmentComInfo();
List<SingleDeptTreeVO> singleDeptTreeVOS = departmentPOs.stream().map(e ->
SingleDeptTreeVO
.builder()
.id(e.getId())
.departmentCode(e.getDepartmentCode())
//.departmentCode(e.getDepartmentCode())
.departmentMark(e.getDepartmentMark())
.departmentName(e.getDepartmentName())
.subCompanyName((null == e.getSubCompanyId1() || 0 == e.getSubCompanyId1()) ? "" : subCompanyComInfo.getSubCompanyname(Util.null2String(e.getSubCompanyId1())))
.subCompanyId1(e.getSubCompanyId1())
.supDepId(e.getSupDepId())
.supDepName(null == e.getSupDepId() || e.getSupDepId() == 0 ? "" : getDeptNameById(e.getSupDepId()))
.supDepName((null == e.getSupDepId() || 0 == e.getSupDepId()) ? "" : departmentComInfo.getDepartmentname(Util.null2String(e.getSupDepId())))
//.deptPrincipalName(getEmployeeNameById(e.getDeptPrincipal()))
.build()).collect(Collectors.toList());
//获取非一级部门

@ -26,12 +26,18 @@ public class SingleDeptTreeVO {
private Integer id;
@TableTitle(labelId = 547118, title = "编号", dataIndex = "departmentCode", key = "departmentCode")
private String departmentCode;
//@TableTitle(labelId = 547118, title = "编号", dataIndex = "departmentCode", key = "departmentCode")
//private String departmentCode;
@TableTitle(title = "部门名称", dataIndex = "departmentMark", key = "departmentMark")
private String departmentMark;
@TableTitle(title = "部门简称", dataIndex = "departmentName", key = "departmentName")
private String departmentName;
@TableTitle(labelId = 547128, title = "所属分部", dataIndex = "subCompanyName", key = "subCompanyName")
private String subCompanyName;
private Integer subCompanyId1; //上级分部
private Integer supDepId; //上级部门id

@ -46,14 +46,14 @@ public class ManagerDetachVO {
private Long id;
@OrganizationTableColumn(text = "管理员", width = "20%", column = "ec_manager", transmethod = "com.engine.organization.transmethod.ManagerDetachTransMethod.getManagerName")
@OrganizationTableColumn(labelId = 547405, text = "管理员", width = "20%", column = "ec_manager", transmethod = "com.engine.organization.transmethod.ManagerDetachTransMethod.getManagerName")
private Integer ecManager;
@OrganizationTableColumn(text = "可管理组织机构", width = "40%", column = "ec_rolelevel",transmethod = "com.engine.organization.transmethod.ManagerDetachTransMethod.getRoleLevel")
@OrganizationTableColumn(labelId = 547407, text = "可管理组织机构", width = "40%", column = "ec_rolelevel", transmethod = "com.engine.organization.transmethod.ManagerDetachTransMethod.getRoleLevel")
private String ecRolelevel;
@OrganizationTableColumn(text = "可管理模块", width = "40%", column = "manage_module")
@OrganizationTableColumn(labelId = 547408, text = "可管理模块", width = "40%", column = "manage_module")
private String manageModule;
}

@ -41,13 +41,13 @@ public class JobBrowserVO {
@OrganizationTableColumn(labelId = 547118, text = "编号", width = "25%", column = "job_no")
private String jobNo;
@OrganizationTableColumn(text = "岗位名称", width = "25%", column = "name")
@OrganizationTableColumn(labelId = 547595, text = "岗位名称", width = "25%", column = "name")
private String jobName;
@OrganizationTableColumn(text = "职务类别", width = "25%", column = "jobGroupName")
@OrganizationTableColumn(labelId = 547433, text = "职务类别", width = "25%", column = "jobGroupName")
private String jobGroupName;
@OrganizationTableColumn(text = "所属职务", width = "25%", column = "jobActivityName")
@OrganizationTableColumn(labelId = 547434, text = "所属职务", width = "25%", column = "jobActivityName")
private String jobActivityName;

@ -29,9 +29,15 @@ public class SingleJobTreeVO {
@TableTitle(labelId = 547118, title = "编号", dataIndex = "jobNo", key = "jobNo")
private String jobNo;
@TableTitle(title = "岗位名称", dataIndex = "jobName", key = "jobName")
@TableTitle(labelId = 547595, title = "岗位名称", dataIndex = "jobName", key = "jobName")
private String jobName;
@TableTitle(labelId = 547433, title = "职务类别", dataIndex = "jobGroupName", key = "jobGroupName")
private String jobGroupName;
@TableTitle(labelId = 547434, title = "所属职务", dataIndex = "jobActivityName", key = "jobActivityName")
private String jobActivityName;
//@TableTitle(title = "上级岗位", dataIndex = "parentJobName", key = "parentJobName")
//private String parentJobName;

@ -40,7 +40,7 @@ public class CardAccessVO {
//@OrganizationTableColumn(column = "id", display = false)
private Long id;
@OrganizationTableColumn(labelId = 547389, text = "栏目", width = "15%", column = "type_name")
@OrganizationTableColumn(labelId = 547389, text = "栏目", width = "15%", column = "type_name",transmethod = "com.engine.organization.transmethod.CardAccessTrans.getMultiLanguage",multiLanguage = true)
private Integer typeName;
@OrganizationTableColumn(labelId = 547130, text = "是否启用", width = "15%", column = "status")

@ -3,6 +3,7 @@ package com.engine.organization.mapper.job;
import com.engine.organization.entity.hrmresource.po.ResourcePO;
import com.engine.organization.entity.job.dto.JobListDTO;
import com.engine.organization.entity.job.po.JobPO;
import com.engine.organization.entity.job.vo.SingleJobTreeVO;
import org.apache.ibatis.annotations.Param;
import java.util.Collection;
@ -46,6 +47,8 @@ public interface JobMapper {
*/
List<JobPO> listAll();
List<SingleJobTreeVO> jobSearchByDept(@Param("deptId") Integer deptId);
/**
* ID
*

@ -540,6 +540,23 @@
and t.ec_jobTitle = #{resourcePO.jobtitle}
</if>
</select>
<select id="jobSearchByDept" resultType="com.engine.organization.entity.job.vo.SingleJobTreeVO">
select t.id,
t.job_no,
h.jobtitlename as jobName,
t.sequence_id,
t.scheme_id,
t.grade_id,
t.level_id,
e.jobactivityname,
f.jobgroupname
FROM jcl_org_job t
left join hrmjobtitles h on t.ec_jobTitle = h.id
left join hrmjobactivities e on h.jobactivityid = e.id
left join hrmjobgroups f on e.jobgroupid = f.id
where t.ec_department = #{deptId}
order by id
</select>
<update id="updateJobCompany">

@ -61,7 +61,8 @@ public class CardAccessServiceImpl extends Service implements CardAccessService
public Map<String, Object> hasRight() {
Map<String, Object> resultMap = new HashMap<>();
boolean hasRight = HasRightUtil.hasRight(user, RIGHT_NAME, true);
resultMap.put("hasRight", hasRight);
// TODO
resultMap.put("hasRight", true);
return resultMap;
}

@ -351,7 +351,7 @@ public class CompServiceImpl extends Service implements CompService {
retMap.put("conditions", groupList);
retMap.put("buttons", buttonsMap);
List<TopTab> topTabs = new ArrayList<>();
topTabs.add(TopTab.builder().color("#000000").groupId("4").showcount(false).title("分部信息").viewCondition("4").build());
topTabs.add(TopTab.builder().color("#000000").groupId("4").showcount(false).title(SystemEnv.getHtmlLabelName(547180,user.getLanguage())).viewCondition("4").build());
retMap.put("tabInfo", topTabs);
Map<String, Object> apiDatas = new HashMap<>();

@ -18,6 +18,7 @@ import lombok.SneakyThrows;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.codec.binary.Base64;
import weaver.general.BaseBean;
import weaver.systeminfo.SystemEnv;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
@ -71,11 +72,11 @@ public class ConfigServiceImpl extends Service implements ConfigService {
Map<String, Object> map = new HashMap<>(16);
BaseBean bb = new BaseBean();
List<EditTableColumns> columns = new ArrayList<>();
columns.add(EditTableColumns.builder().dataIndex("appSecret").key("appSecret").title("密钥").width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("url").key("url").title("外网").width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("secondUrl").key("secondUrl").title("内网").width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("pcAddress").key("pcAddress").title("PC地址").width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("mobileAddress").key("mobileAddress").title("H5地址").width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("appSecret").key("appSecret").title(SystemEnv.getHtmlLabelName(547397,user.getLanguage())).width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("url").key("url").title(SystemEnv.getHtmlLabelName(547398, user.getLanguage())).width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("secondUrl").key("secondUrl").title(SystemEnv.getHtmlLabelName(547399,user.getLanguage())).width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("pcAddress").key("pcAddress").title(SystemEnv.getHtmlLabelName(547400,user.getLanguage())).width("20%").build());
columns.add(EditTableColumns.builder().dataIndex("mobileAddress").key("mobileAddress").title(SystemEnv.getHtmlLabelName(547401,user.getLanguage())).width("20%").build());
columns.forEach(editTableColumns -> editTableColumns.setCom(getFieldDetailInfo(editTableColumns)));
QTXConfigPO qtxConfigPO = getConfigMapper().selectConfigInfo();
EditTableDatas datas = new EditTableDatas();

@ -20,8 +20,6 @@ import com.engine.organization.entity.department.dto.DepartmentListDTO;
import com.engine.organization.entity.department.param.*;
import com.engine.organization.entity.department.po.DepartmentPO;
import com.engine.organization.entity.department.vo.SingleDeptTreeVO;
import com.engine.organization.entity.job.bo.JobBO;
import com.engine.organization.entity.job.po.JobPO;
import com.engine.organization.entity.job.vo.SingleJobTreeVO;
import com.engine.organization.entity.searchtree.SearchTree;
import com.engine.organization.entity.searchtree.SearchTreeParams;
@ -94,11 +92,9 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
@Override
public PageInfo<SingleJobTreeVO> getJobListByPid(QuerySingleDeptListParam param) {
List<JobPO> jobPOS = MapperProxyFactory.getProxy(JobMapper.class).listAll();
PageInfo<JobPO> pageInfo = new PageInfo<>(jobPOS);
List<SingleJobTreeVO> singleDeptTreeVOS = JobBO.buildSingleJobTreeVOS(jobPOS, param.getParentDept());
List<SingleJobTreeVO> singleDeptTreeVOS = MapperProxyFactory.getProxy(JobMapper.class).jobSearchByDept(param.getParentDept());
PageInfo<SingleJobTreeVO> pageInfos = new PageInfo<>(user, singleDeptTreeVOS, SingleJobTreeVO.class);
pageInfos.setTotal(pageInfo.getTotal());
pageInfos.setTotal(singleDeptTreeVOS.size());
pageInfos.setPageNum(param.getCurrent());
pageInfos.setPageSize(param.getPageSize());
return pageInfos;
@ -574,8 +570,8 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
List<SearchConditionOption> selectOptions = new ArrayList<>();
SearchConditionOption compOption = new SearchConditionOption("0", "分部");
SearchConditionOption deptOption = new SearchConditionOption("1", "部门");
SearchConditionOption compOption = new SearchConditionOption("0", SystemEnv.getHtmlLabelName(547332,user.getLanguage()));
SearchConditionOption deptOption = new SearchConditionOption("1", SystemEnv.getHtmlLabelName(547331,user.getLanguage()));
selectOptions.add(compOption);
selectOptions.add(deptOption);
SearchConditionItem moveTypeItem = OrganizationFormItemUtil.selectItem(user, selectOptions, 2, 16, 6, false, 547275, "moveType");

@ -25,6 +25,7 @@ import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.systeminfo.SystemEnv;
import java.util.*;
import java.util.stream.Collectors;
@ -80,14 +81,14 @@ public class ManagerDetachServiceImpl extends Service implements ManagerDetachSe
List<SearchConditionItem> selectItems = new ArrayList<>();
List<SearchConditionGroup> addGroups = new ArrayList<>();
List<SearchConditionOption> selectOptions = new ArrayList<>();
SearchConditionOption moduleOption = new SearchConditionOption("0", "组织管理", true);
SearchConditionOption moduleOption = new SearchConditionOption("0", SystemEnv.getHtmlLabelName(547409,user.getLanguage()), true);
selectOptions.add(moduleOption);
SearchConditionItem ecManager = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, true, "管理员", "1", "ecManager", "");
SearchConditionItem ecManager = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, true, 547405, "1", "ecManager", "");
ecManager.setRules("required|string");
SearchConditionItem ecRolelevel = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, "可维护机构", "194", "ecRolelevel", "");
SearchConditionItem ecRolelevel = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, 547407, "194", "ecRolelevel", "");
ecRolelevel.setRules("required|string");
SearchConditionItem module = OrganizationFormItemUtil.selectItem(user, selectOptions, 2, 16, 6, false, "可管理模块", "module");
SearchConditionItem module = OrganizationFormItemUtil.selectItem(user, selectOptions, 2, 16, 6, false, 547408, "module");
module.setViewAttr(1);
module.setDetailtype(2);
module.setHasBorder(true);

@ -67,7 +67,7 @@ public class QuickSearchServiceImpl extends Service implements QuickSearchServic
case 5:
List<SearchConditionOption> selectOptions = getSelectOptions(quickSearchCondition);
if (CollectionUtils.isEmpty(selectOptions)) {
condition.setCom("未设置选项");
condition.setCom(SystemEnv.getHtmlLabelName(547591,user.getLanguage()));
} else {
// 字段本身值、判断有无下拉框选项
List<ConditionOption> options = selectOptions.stream().map(item -> ConditionOption.builder().key(item.getKey()).showname(item.getShowname()).build()).collect(Collectors.toList());
@ -102,7 +102,7 @@ public class QuickSearchServiceImpl extends Service implements QuickSearchServic
List<QuickSearchDetail> quickSearchDetailList = getQuickSearchMapper().getQuickSearchDetailByCid(quickSearchCondition.getId().toString());
if (CollectionUtils.isEmpty(quickSearchDetailList)) {
condition.setCom("未设置选项");
condition.setCom(SystemEnv.getHtmlLabelName(547591,user.getLanguage()));
} else {
List<ConditionOption> collect = quickSearchDetailList.stream().map(item -> ConditionOption.builder().key(item.getId().toString()).showname(item.getCustomName()).build()).collect(Collectors.toList());
collect.add(0,ConditionOption.builder().key("-1").showname(SystemEnv.getHtmlLabelName(547191,user.getLanguage())).build());

@ -0,0 +1,35 @@
package com.engine.organization.transmethod;
import cn.hutool.core.convert.Convert;
import weaver.systeminfo.SystemEnv;
import java.util.HashMap;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/06/11
* @version: 1.0
*/
public class CardAccessTrans {
static Map<String, Integer> map = new HashMap<>();
static {
map.put("个人信息", 547578);
map.put("工作信息", 547579);
map.put("基本信息", 547175);
}
public static String getMultiLanguage(String text, String languageId) {
Integer language = Convert.toInt(languageId, -1);
if (-1 == language) {
return text;
}
Integer labelId = map.get(text);
if (null == language) {
return text;
}
return SystemEnv.getHtmlLabelName(labelId,language);
}
}
Loading…
Cancel
Save