薪酬系统-多语言,薪资账套薪资项目公式显示内容获取逻辑变更、薪资单薪资项目及分组显示适配多语言逻辑
This commit is contained in:
parent
181e6323ff
commit
03954fb320
|
|
@ -83,7 +83,7 @@ public class SalaryStatisticsDimensionWrapper extends Service {
|
|||
.id(m.getId())
|
||||
.dimName(m.getDimName())
|
||||
.remark(m.getRemark())
|
||||
.dimType(salaryStatisticsDimensionTypeEnum.getDefaultLabel())
|
||||
.dimType(SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryStatisticsDimensionTypeEnum.getLabelId(), salaryStatisticsDimensionTypeEnum.getDefaultLabel()))
|
||||
.isDefault(m.getIsDefault())
|
||||
.canEdit(true)
|
||||
.canDelete(true)
|
||||
|
|
@ -117,22 +117,22 @@ public class SalaryStatisticsDimensionWrapper extends Service {
|
|||
List<WeaFormOption> statsDimOptions = Lists.newArrayList();
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_SEX, SalaryI18nUtil.getI18nLabel(user.getLanguage(),416, "性别")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_JOB_CALL, SalaryI18nUtil.getI18nLabel(user.getLanguage(),806, "职称")));
|
||||
// statsDimOptions.add(new WeaFormOption("", SalaryI18nUtil.getI18nLabel(user.getLanguage(),173996, "办公地点")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_SUPERIOR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),173997, "上级")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_MARITAL_STATUS, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174007, "婚姻状况")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_EDUCATION, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174005, "学历")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_DEGREE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174004, "学位")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_NATION, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174107, "民族")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_HOUSEHOLD_TYPE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174106, "户口类型")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_POLITICS_STATUS, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174105, "政治面貌")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_AGE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174001, "年龄")));
|
||||
statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_WORK_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174000, "工龄")));
|
||||
statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_COMPANY_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174003, "司龄")));
|
||||
// statsDimOptions.add(new WeaFormOption("", SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "办公地点")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_SUPERIOR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "上级")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_MARITAL_STATUS, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "婚姻状况")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_EDUCATION, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "学历")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_DEGREE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "学位")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_NATION, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "民族")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_HOUSEHOLD_TYPE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "户口类型")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_POLITICS_STATUS, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "政治面貌")));
|
||||
// statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_AGE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "年龄")));
|
||||
statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_WORK_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),505549, "工龄")));
|
||||
statsDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_COMPANY_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),527582, "司龄")));
|
||||
|
||||
List<WeaFormOption> groupDimOptions = Lists.newArrayList();
|
||||
// groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_AGE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174001, "年龄")));
|
||||
groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_WORK_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174000, "工龄")));
|
||||
groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_COMPANY_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),174003, "司龄")));
|
||||
// groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_AGE, SalaryI18nUtil.getI18nLabel(user.getLanguage(),0, "年龄")));
|
||||
groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_WORK_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),505549, "工龄")));
|
||||
groupDimOptions.add(new WeaFormOption(SalaryStatisticsDimensionConstant.DM_COMPANY_YEAR, SalaryI18nUtil.getI18nLabel(user.getLanguage(),527582, "司龄")));
|
||||
List<SalaryItemPO> salaryItemList = salaryItemService(user).listAll();
|
||||
groupDimOptions.addAll(salaryItemList.stream()
|
||||
.filter(item -> SalaryDataTypeEnum.NUMBER.getValue().equals(item.getDataType()))
|
||||
|
|
@ -146,7 +146,7 @@ public class SalaryStatisticsDimensionWrapper extends Service {
|
|||
if (id != null) {
|
||||
SalaryStatisticsDimensionPO po = this.salaryStatisticsDimensionService(user).getById(id);
|
||||
if (po == null) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(user.getLanguage(),161116, "薪酬统计维度不存在"));
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(user.getLanguage(),544210, "统计维度不存在"));
|
||||
}
|
||||
groupSetting = po.getSetting();
|
||||
Map<String, Object> result = JsonUtil.parseMap(po, Object.class);
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ public class AttendQuoteFieldServiceImpl extends Service implements AttendQuoteF
|
|||
@Override
|
||||
public PageInfo<AttendQuoteFieldListDTO> listPage(AttendQuoteFieldQueryParam queryParam) {
|
||||
List<AttendQuoteFieldListDTO> list = getAttendQuoteFieldMapper().list(queryParam);
|
||||
return SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, AttendQuoteFieldListDTO.class);
|
||||
return SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, AttendQuoteFieldListDTO.class, user);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ public class SICategoryServiceImpl extends Service implements SICategoryService
|
|||
DTO.setWelfareTypeSpan(SalaryI18nUtil.getI18nLabel(user.getLanguage(), welfareTypeEnum.getLabelId(), welfareTypeEnum.getDefaultLabel()));
|
||||
DTO.setPaymentScopeSpan( buildPaymentScope( DTO.getPaymentScope()));
|
||||
});
|
||||
PageInfo<ICategoryListDTO> page = SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, ICategoryListDTO.class);
|
||||
PageInfo<ICategoryListDTO> page = SalaryPageUtil.buildPage(queryParam.getCurrent(), queryParam.getPageSize(), list, ICategoryListDTO.class, user);
|
||||
return page;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ import com.engine.salary.util.SalaryEntityUtil;
|
|||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.valid.ValidUtil;
|
||||
import com.engine.salary.wrapper.SalaryItemWrapper;
|
||||
import dm.jdbc.util.IdGenerator;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
|
@ -96,6 +97,10 @@ public class SalarySobItemServiceImpl extends Service implements SalarySobItemSe
|
|||
}
|
||||
// private LoggerTemplate salarySobLoggerTemplate;
|
||||
|
||||
private SalaryItemWrapper getSalaryItemWrapper(User user) {
|
||||
return ServiceUtil.getService(SalaryItemWrapper.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SalarySobItemPO> list() {
|
||||
return salarySobItemMapper.listAll();
|
||||
|
|
@ -169,6 +174,14 @@ public class SalarySobItemServiceImpl extends Service implements SalarySobItemSe
|
|||
formulaIds.addAll(SalaryEntityUtil.properties(salarySobBackItems, SalarySobBackItemPO::getFormulaId));
|
||||
// 查询公式详情
|
||||
List<ExpressFormula> expressFormulas = getSalaryFormulaService(user).listExpressFormula(formulaIds);
|
||||
//20231115逻辑变更,适配多语言,将前台展示公式内容获取方式变更,由原本直接查询库中存储公式改为由formulaRunScript拆分-转义-重组公式
|
||||
for (ExpressFormula expressFormula : expressFormulas) {
|
||||
String formulaContentByFormulaRunScript = getSalaryItemWrapper(user).getFormulaByFormulaRunScript(expressFormula.getFormulaRunScript());
|
||||
if (StringUtils.isNotBlank(formulaContentByFormulaRunScript)) {
|
||||
expressFormula.setFormula(formulaContentByFormulaRunScript);
|
||||
}
|
||||
}
|
||||
|
||||
// 查询薪资账套的薪资项目副本+回算的薪资项目所关联的薪资项目
|
||||
Set<Long> salaryItemIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getSalaryItemId);
|
||||
Set<Long> backCalcItemIds = SalaryEntityUtil.properties(salarySobBackItems, SalarySobBackItemPO::getSalaryItemId);
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ public class SalaryAcctEmployeeWrapper extends Service {
|
|||
private PageInfo<SalaryAccEmployeeListDTO> convert2ListDTO(PageInfo<SalaryAcctEmployeePO> page) {
|
||||
List<SalaryAcctEmployeePO> list = page.getList();
|
||||
if (CollectionUtils.isEmpty(list)) {
|
||||
return new PageInfo<>(SalaryAccEmployeeListDTO.class);
|
||||
return new PageInfo<>(SalaryAccEmployeeListDTO.class, user);
|
||||
}
|
||||
// 查询人员信息
|
||||
List<Long> employeeIds = list.stream().map(SalaryAcctEmployeePO::getEmployeeId).collect(Collectors.toList());
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.salary.wrapper;
|
||||
|
||||
import com.api.formmode.mybatis.util.SqlProxyHandle;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.salaryBill.bo.SalaryBillItemNameBO;
|
||||
|
|
@ -9,16 +10,21 @@ import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO;
|
|||
import com.engine.salary.entity.salaryBill.po.SalaryTemplatePO;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobBackItemPO;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobEmpFieldPO;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobItemGroupPO;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobPO;
|
||||
import com.engine.salary.enums.salarybill.SalaryTemplateReplenishRuleEnum;
|
||||
import com.engine.salary.enums.salarybill.SalaryTemplateVarEnum;
|
||||
import com.engine.salary.enums.salarybill.SalaryTemplateWhetherEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.salarysob.SalarySobEmpFieldMapper;
|
||||
import com.engine.salary.mapper.salarysob.SalarySobItemGroupMapper;
|
||||
import com.engine.salary.service.*;
|
||||
import com.engine.salary.service.impl.*;
|
||||
import com.engine.salary.util.JsonUtil;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.mzlion.core.utils.BeanUtils;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
|
@ -72,6 +78,18 @@ public class SalaryTemplateWrapper extends Service {
|
|||
return ServiceUtil.getService(SalaryBillItemNameServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalarySobEmpFieldMapper getSalarySobEmpFieldMapper() {
|
||||
return MapperProxyFactory.getProxy(SalarySobEmpFieldMapper.class);
|
||||
}
|
||||
|
||||
private SalarySobItemWrapper getSalarySobItemWrapper(User user) {
|
||||
return ServiceUtil.getService(SalarySobItemWrapper.class, user);
|
||||
}
|
||||
|
||||
private SalarySobItemGroupMapper getSalarySobItemGroupMapper() {
|
||||
return SqlProxyHandle.getProxy(SalarySobItemGroupMapper.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 工资单模板列表
|
||||
*
|
||||
|
|
@ -265,6 +283,20 @@ public class SalaryTemplateWrapper extends Service {
|
|||
itemIdNameMap.put(itemPO.getId(), name);
|
||||
}
|
||||
}
|
||||
|
||||
//同步项目分组名称
|
||||
List<SalarySobItemGroupPO> allSalaryItemGroups = getSalarySobItemGroupMapper().listAll();
|
||||
Map<String, String> groupNameMap = new HashMap<>();
|
||||
groupNameMap.put("222222222222222222", SalaryI18nUtil.getI18nLabel(user.getLanguage(), 542650, "无分类"));
|
||||
groupNameMap.put("333333333333333333", SalaryI18nUtil.getI18nLabel(user.getLanguage(), 542651, "已发补发"));
|
||||
groupNameMap.put("111111111111111111", SalaryI18nUtil.getI18nLabel(user.getLanguage(),28448, "员工信息"));
|
||||
if (allSalaryItemGroups.size() > 0) {
|
||||
for (SalarySobItemGroupPO groupPO : allSalaryItemGroups) {
|
||||
//20231113逻辑变更,对福利险种、薪资项目、薪资项目分组的名称舍弃基于labelId的多语言适配逻辑,直接以多语言命名方式设置name
|
||||
groupNameMap.put(groupPO.getId().toString(), Util.formatMultiLang(groupPO.getName(), String.valueOf(user.getLanguage())));
|
||||
}
|
||||
}
|
||||
|
||||
// Map<Long, String> itemIdNameMap = SalaryEntityUtil.convert2Map(itemPOS, SalaryItemPO::getId, SalaryItemPO::getName);
|
||||
|
||||
// List<SalarySobItemGroupPO> groupPOS = getSalarySobItemGroupService(user).listBySalarySobId(po.getSalarySobId());
|
||||
|
|
@ -282,23 +314,60 @@ public class SalaryTemplateWrapper extends Service {
|
|||
} else {
|
||||
itemShowNameMap = Collections.emptyMap();
|
||||
}
|
||||
|
||||
//获取人员基本信息字段(汇总)
|
||||
Collection<Map<String, String>> empFieldList = getSalarySobItemWrapper(user).empFieldList();
|
||||
Map<String, String> empFieldMap = new HashMap<>();
|
||||
for (Map map : empFieldList) {
|
||||
if (map.get("id") != null && map.get("name") != null) {
|
||||
empFieldMap.put(map.get("id").toString(), map.get("name").toString());
|
||||
}
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(salaryTemplateShowSetData)) {
|
||||
// salaryTemplateShowSetData.stream()
|
||||
// //排除人员消息
|
||||
// .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111"))
|
||||
// .forEach(data -> {
|
||||
// data.getItems().forEach(item -> {
|
||||
// Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
// item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
// item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
// item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) +")");
|
||||
// }else{
|
||||
// item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// }
|
||||
// });
|
||||
// });
|
||||
//20231116,需要对人员信息进行多语言适配
|
||||
salaryTemplateShowSetData.stream()
|
||||
//排除人员消息
|
||||
.filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111"))
|
||||
.forEach(data -> {
|
||||
data.getItems().forEach(item -> {
|
||||
Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) +")");
|
||||
}else{
|
||||
item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
}
|
||||
});
|
||||
if (!StringUtils.equals(data.getGroupId(), "111111111111111111")) {
|
||||
data.setGroupName(groupNameMap.getOrDefault(data.getGroupId(), data.getGroupName()));
|
||||
data.getItems().forEach(item -> {
|
||||
Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) +")");
|
||||
}else{
|
||||
item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.setGroupName(groupNameMap.getOrDefault(data.getGroupId(), data.getGroupName()));
|
||||
data.getItems().forEach(item -> {
|
||||
SalarySobEmpFieldPO fieldPO = getSalarySobEmpFieldMapper().getById(Long.valueOf(item.getSalaryItemId()));
|
||||
String fieldCode = fieldPO != null ? fieldPO.getFieldCode() : "";
|
||||
if (StringUtils.isNotBlank(fieldCode)) {
|
||||
item.setName(empFieldMap.getOrDefault(fieldCode, item.getName()));
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -460,6 +529,20 @@ public class SalaryTemplateWrapper extends Service {
|
|||
itemIdNameMap.put(itemPO.getId(), name);
|
||||
}
|
||||
}
|
||||
|
||||
//同步项目分组名称
|
||||
List<SalarySobItemGroupPO> allSalaryItemGroups = getSalarySobItemGroupMapper().listAll();
|
||||
Map<String, String> groupNameMap = new HashMap<>();
|
||||
groupNameMap.put("222222222222222222", SalaryI18nUtil.getI18nLabel(user.getLanguage(), 542650, "无分类"));
|
||||
groupNameMap.put("333333333333333333", SalaryI18nUtil.getI18nLabel(user.getLanguage(), 542651, "已发补发"));
|
||||
groupNameMap.put("111111111111111111", SalaryI18nUtil.getI18nLabel(user.getLanguage(),28448, "员工信息"));
|
||||
if (allSalaryItemGroups.size() > 0) {
|
||||
for (SalarySobItemGroupPO groupPO : allSalaryItemGroups) {
|
||||
//20231113逻辑变更,对福利险种、薪资项目、薪资项目分组的名称舍弃基于labelId的多语言适配逻辑,直接以多语言命名方式设置name
|
||||
groupNameMap.put(groupPO.getId().toString(), Util.formatMultiLang(groupPO.getName(), String.valueOf(user.getLanguage())));
|
||||
}
|
||||
}
|
||||
|
||||
// 获取工资单薪资项目展示名信息
|
||||
List<SalaryBillItemNamePO> billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(1).build());
|
||||
Map<Long, String> itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName);
|
||||
|
|
@ -467,23 +550,59 @@ public class SalaryTemplateWrapper extends Service {
|
|||
List<SalaryBillItemNameDTO> salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList);
|
||||
salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId);
|
||||
|
||||
//获取人员基本信息字段(汇总)
|
||||
Collection<Map<String, String>> empFieldList = getSalarySobItemWrapper(user).empFieldList();
|
||||
Map<String, String> empFieldMap = new HashMap<>();
|
||||
for (Map map : empFieldList) {
|
||||
if (map.get("id") != null && map.get("name") != null) {
|
||||
empFieldMap.put(map.get("id").toString(), map.get("name").toString());
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(replenishSalaryItemSetting)) {
|
||||
// replenishSalaryItemSetting.stream()
|
||||
// //排除人员消息
|
||||
// .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111"))
|
||||
// .forEach(data -> {
|
||||
// data.getItems().forEach(item -> {
|
||||
// Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
// item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
// item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
// item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) + ")");
|
||||
// }else{
|
||||
// item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
// }
|
||||
// });
|
||||
// });
|
||||
replenishSalaryItemSetting.stream()
|
||||
//排除人员消息
|
||||
.filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111"))
|
||||
.forEach(data -> {
|
||||
data.getItems().forEach(item -> {
|
||||
Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) + ")");
|
||||
}else{
|
||||
item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
}
|
||||
});
|
||||
});
|
||||
.forEach(data -> {
|
||||
if (!StringUtils.equals(data.getGroupId(), "111111111111111111")) {
|
||||
data.setGroupName(groupNameMap.getOrDefault(data.getGroupId(), data.getGroupName()));
|
||||
data.getItems().forEach(item -> {
|
||||
Long salaryItemId = Long.valueOf(item.getSalaryItemId());
|
||||
item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
if(itemShowNameMap.containsKey(salaryItemId)){
|
||||
item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId));
|
||||
item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) + ")");
|
||||
}else{
|
||||
item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName()));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.setGroupName(groupNameMap.getOrDefault(data.getGroupId(), data.getGroupName()));
|
||||
data.getItems().forEach(item -> {
|
||||
SalarySobEmpFieldPO fieldPO = getSalarySobEmpFieldMapper().getById(Long.valueOf(item.getSalaryItemId()));
|
||||
String fieldCode = fieldPO != null ? fieldPO.getFieldCode() : "";
|
||||
if (StringUtils.isNotBlank(fieldCode)) {
|
||||
item.setName(empFieldMap.getOrDefault(fieldCode, item.getName()));
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
replenishSalaryItemSetting = getReplenishSalaryItemSet(replenishFormQueryParam.getSalarySobId());
|
||||
|
|
|
|||
Loading…
Reference in New Issue