薪酬系统-多语言, 合并231102产品分支代码,并处理冲突

This commit is contained in:
sy 2023-12-01 12:46:43 +08:00
parent efadc32622
commit 329f9e85bf
15 changed files with 188 additions and 25 deletions

View File

@ -686,7 +686,7 @@ public class SIArchivesBiz extends Service {
if (oldOtherInfoList.size() == 1) {
InsuranceArchivesOtherSchemePO oldOtherInfo = oldOtherInfoList.get(0);
//设置福利档案基数调整记录数据
encryptUtil.decrypt(oldOtherInfo, InsuranceArchivesOtherSchemePO.class);
encryptUtil.decrypt(oldOtherInfo, InsuranceArchivesOtherSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldOtherInfo.getOtherPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldOtherInfo.getOtherSchemeId());
//新数据
@ -812,7 +812,7 @@ public class SIArchivesBiz extends Service {
if (oldFundInfoList.size() == 1) {
InsuranceArchivesFundSchemePO oldFundInfo = oldFundInfoList.get(0);
//设置福利档案基数调整记录数据
encryptUtil.decrypt(oldFundInfo, InsuranceArchivesFundSchemePO.class);
encryptUtil.decrypt(oldFundInfo, InsuranceArchivesFundSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldFundInfo.getFundPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldFundInfo.getFundSchemeId());
//新数据
@ -951,7 +951,7 @@ public class SIArchivesBiz extends Service {
//老数据
InsuranceArchivesSocialSchemePO oldSocialInfo = oldSocialInfoList.get(0);
//设置福利档案基数调整记录数据
encryptUtil.decrypt(oldSocialInfo, InsuranceArchivesSocialSchemePO.class);
encryptUtil.decrypt(oldSocialInfo, InsuranceArchivesSocialSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldSocialInfo.getSocialPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldSocialInfo.getSocialSchemeId());
//新数据
@ -1929,7 +1929,7 @@ public class SIArchivesBiz extends Service {
if (oldBaseInfoList.size() == 1) {
//新增调整记录变更
InsuranceArchivesSocialSchemePO oldBaseInfo = oldBaseInfoList.get(0);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesSocialSchemePO.class);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesSocialSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldBaseInfo.getSocialPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldBaseInfo.getSocialSchemeId());
} else if (oldBaseInfoList.size() > 1) {
@ -1959,7 +1959,7 @@ public class SIArchivesBiz extends Service {
if (oldBaseInfoList.size() == 1) {
//新增调整记录变更
InsuranceArchivesFundSchemePO oldBaseInfo = oldBaseInfoList.get(0);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesFundSchemePO.class);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesFundSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldBaseInfo.getFundPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldBaseInfo.getFundSchemeId());
} else if (oldBaseInfoList.size() > 1) {
@ -1988,7 +1988,7 @@ public class SIArchivesBiz extends Service {
if (oldBaseInfoList.size() == 1) {
//新增调整记录变更
InsuranceArchivesOtherSchemePO oldBaseInfo = oldBaseInfoList.get(0);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesOtherSchemePO.class);
encryptUtil.decrypt(oldBaseInfo, InsuranceArchivesOtherSchemePO.class, user);
adjustInfo.setAdjustBeforeBaseJson(oldBaseInfo.getOtherPaymentBaseString());
adjustInfo.setAdjustBeforeSchemeId(oldBaseInfo.getOtherSchemeId());
} else if (oldBaseInfoList.size() > 1) {

View File

@ -1,14 +1,17 @@
package com.engine.salary.biz;
import cn.hutool.core.codec.Base64Encoder;
import com.engine.core.impl.Service;
import com.engine.salary.entity.sicategory.bo.ICategoryBO;
import com.engine.salary.entity.sicategory.dto.ICategoryFormDTO;
import com.engine.salary.entity.sicategory.po.ICategoryPO;
import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO;
import com.engine.salary.enums.sicategory.IsPaymentEnum;
import com.engine.salary.enums.sicategory.PaymentScopeEnum;
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
import com.engine.salary.exception.SalaryRunTimeException;
import com.engine.salary.mapper.sicategory.ICategoryMapper;
import com.engine.salary.util.SalaryEnumUtil;
import com.engine.salary.util.SalaryI18nUtil;
import com.mzlion.core.utils.BeanUtils;
import org.apache.commons.collections4.CollectionUtils;
@ -43,6 +46,11 @@ public class SICategoryBiz extends Service {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(user.getLanguage(),542148, "数据不存在"));
}
BeanUtils.copyProperties(iCategoryPO,iCategoryFormDTO);
PaymentScopeEnum[] paymentScopeEnums = SalaryEnumUtil.stringToEnums(iCategoryPO.getPaymentScope(), ",");
iCategoryFormDTO.setPaymentScope(paymentScopeEnums);
WelfareTypeEnum welfareTypeEnum = WelfareTypeEnum.parseByValue(iCategoryPO.getWelfareType());
iCategoryFormDTO.setWelfareType(welfareTypeEnum);
iCategoryFormDTO.setInsuranceName("base64_" + Base64Encoder.encode(iCategoryPO.getInsuranceName()));
return iCategoryFormDTO;
}

View File

@ -424,7 +424,7 @@ public class SISchemeBiz extends Service {
insuranceSchemeMapper.insert(batchPO);
List<InsuranceSchemeDetailPO> detailList = insuranceSchemeDetailMapper.queryListBySchemeId(id);
detailList = encryptUtil.decryptList(detailList,InsuranceSchemeDetailPO.class);
detailList = encryptUtil.decryptList(detailList,InsuranceSchemeDetailPO.class, user);
if (CollectionUtils.isNotEmpty(detailList)) {
List<InsuranceSchemeDetailPO> detailPOS = detailList.stream().map(item -> InsuranceSchemeDetailPO.builder()
.creator(employeeId)

View File

@ -49,6 +49,7 @@ public class SICategoryGetFormCmd extends AbstractCommonCommand<Map<String, Obje
input.setLength(10); // 设置输入长度
input.setLabel(SalaryI18nUtil.getI18nLabel(user.getLanguage(),544163, "福利名称")); //设置文本值 这个将覆盖多语言标签的值
input.setRules("required"); //设置字段填入规则
input.setInputType("multilang");
items.put("insuranceName",input);
@ -65,6 +66,8 @@ public class SICategoryGetFormCmd extends AbstractCommonCommand<Map<String, Obje
radio.setOptions(radioOptions);
radio.setLabel(SalaryI18nUtil.getI18nLabel(user.getLanguage(),500401, "类型"));
radio.setRules("required");
radio.setDetailtype(3);
radio.setConditionType(ConditionType.SELECT);
items.put("welfareType",radio);
SearchConditionItem checkbox = conditionFactory.createCondition(ConditionType.CHECKBOX,502327,"paymentScope");
@ -79,6 +82,8 @@ public class SICategoryGetFormCmd extends AbstractCommonCommand<Map<String, Obje
checkbox.setOptions(checkOptions);
checkbox.setLabel(SalaryI18nUtil.getI18nLabel(user.getLanguage(),543169, "缴纳对象"));
checkbox.setRules("required");
checkbox.setDetailtype(2);
checkbox.setConditionType(ConditionType.SELECT);
items.put("paymentScope",checkbox);
apidatas.put("item",items);

View File

@ -204,9 +204,9 @@ public class SalaryItemBO {
public static SalaryItemFormDTO convert2FormDTO(SalaryItemPO salaryItemPO, User user) {
//获取name多语言
String name = "";
// name = salaryItemPO.getLabelId() != null ? SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryItemPO.getLabelId(),salaryItemPO.getName()) : salaryItemPO.getName();
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
name = Util.formatMultiLang(salaryItemPO.getName(), String.valueOf(user.getLanguage()));
// 20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
// name = Util.formatMultiLang(salaryItemPO.getName(), String.valueOf(user.getLanguage()));
name = salaryItemPO.getName();
return new SalaryItemFormDTO()
.setId(salaryItemPO.getId())
.setName(name)

View File

@ -93,7 +93,8 @@ public class SysSalaryItemBO {
String name = "";
// name = sysSalaryItemPO.getLabelId() != null ? SalaryI18nUtil.getI18nLabel(user.getLanguage(),sysSalaryItemPO.getLabelId(),sysSalaryItemPO.getName()) : sysSalaryItemPO.getName();
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
name = Util.formatMultiLang(sysSalaryItemPO.getName(), String.valueOf(user.getLanguage()));
// name = Util.formatMultiLang(sysSalaryItemPO.getName(), String.valueOf(user.getLanguage()));
name = sysSalaryItemPO.getName();
return new SalaryItemFormDTO()
.setId(sysSalaryItemPO.getId())
.setName(name)

View File

@ -33,7 +33,7 @@ public class SalaryItemSaveParam {
private Long id;
//名称
@DataCheck(require = true, max = 40, message = "名称不允许为空,名称不能超过40个字符")
@DataCheck(require = true, max = 500, message = "名称不允许为空,名称不能超过40个字符")
private String name;
/**

View File

@ -1,5 +1,6 @@
package com.engine.salary.entity.salarysob.bo;
import cn.hutool.core.codec.Base64Encoder;
import com.engine.salary.annotation.SalaryFormulaVar;
import com.engine.salary.entity.salaryformula.ExpressFormula;
import com.engine.salary.entity.salaryformula.dto.SalaryFormulaEmployeeDTO;
@ -94,7 +95,6 @@ public class SalarySobItemAggregateBO {
.map(e -> {
//获取name多语言
String name = "";
// name = e.getLabelId() != null ? SalaryI18nUtil.getI18nLabel(user.getLanguage(), e.getLabelId(), e.getName()) : e.getName();
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
name = Util.formatMultiLang(e.getName(), String.valueOf(user.getLanguage()));
return SalarySobItemGroupDTO.builder()
@ -221,6 +221,145 @@ public class SalarySobItemAggregateBO {
.build();
}
/**
* 转换成聚合dto, todo
*
* @return
*/
public SalarySobItemAggregateDTO convert2AggregateDTOWithBase64(User user) {
List<SalarySobItemDTO> itemsWithoutGroup = Lists.newArrayList();
// 薪资账套的薪资项目分类po转换成dto
List<SalarySobItemGroupDTO> salarySobItemGroupDTOS = salarySobItemGroups.stream()
.map(e -> {
//获取name多语言
String name = "";
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
// name = Util.formatMultiLang(e.getName(), String.valueOf(user.getLanguage()));
name = "base64_" + Base64Encoder.encode(e.getName());
return SalarySobItemGroupDTO.builder()
.id(e.getId())
.salarySobId(e.getSalarySobId())
.name(name)
.sortedIndex(e.getSortedIndex())
.itemHide(e.getItemHide())
.build();
})
.collect(Collectors.toList());
Map<Long, SalarySobItemGroupDTO> salarySobItemGroupDTOMap = SalaryEntityUtil.convert2Map(salarySobItemGroupDTOS, SalarySobItemGroupDTO::getId);
salarySobDefaultItemPOS = salarySobDefaultItemPOS.stream().filter(po -> po.getSysSalaryItemId() != 0).collect(Collectors.toList());
Map<Long, Integer> longIntegerMap = SalaryEntityUtil.convert2Map(salarySobDefaultItemPOS, SalarySobDefaultItemPO::getSysSalaryItemId, SalarySobDefaultItemPO::getCanDelete);
salaryItems.forEach(item -> {
if (item.getSystemType() == 1) {
item.setCanDelete(1);
if (item.getSysSalaryItemId() != null) {
item.setCanDelete(longIntegerMap.getOrDefault(item.getSysSalaryItemId(), 1));
}
}
});
Map<Long, SalaryItemPO> salaryItemMap = SalaryEntityUtil.convert2Map(salaryItems, SalaryItemPO::getId);
Map<Long, List<SalarySobItemPO>> salarySobItemMap = SalaryEntityUtil.group2Map(salarySobItems, SalarySobItemPO::getSalarySobItemGroupId);
Map<Long, String> formulaMap = SalaryEntityUtil.convert2Map(expressFormulas, ExpressFormula::getId, ExpressFormula::getFormula);
// 薪资账套的薪资项目副本po转换成dto
salarySobItemMap.forEach((k, v) -> {
List<SalarySobItemDTO> items = Lists.newArrayList();
for (int i = 0; i < v.size(); i++) {
SalarySobItemPO salarySobItemPO = v.get(i);
SalaryItemPO salaryItemPO = salaryItemMap.get(salarySobItemPO.getSalaryItemId());
if (salaryItemPO != null) {
//获取name多语言
String name = "";
// name = salaryItemPO.getLabelId() != null ? SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryItemPO.getLabelId(),salaryItemPO.getName()) : salaryItemPO.getName();
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
name = Util.formatMultiLang(salaryItemPO.getName(), String.valueOf(user.getLanguage()));
Integer valueType = Optional.ofNullable(salarySobItemPO.getValueType()).orElse(salaryItemPO.getValueType());
items.add(SalarySobItemDTO.builder()
.id(salarySobItemPO.getId())
.salarySobId(salarySob.getId())
.salaryItemGroupId(k)
.salaryItemId(salaryItemPO.getId())
.dataType(salaryItemPO.getDataType())
.valueType(valueType)
.roundingMode(Optional.ofNullable(salarySobItemPO.getRoundingMode()).orElse(salaryItemPO.getRoundingMode()))
.pattern(Optional.ofNullable(salarySobItemPO.getPattern()).orElse(salaryItemPO.getPattern()))
.name(name)
.itemHide(salarySobItemPO.getItemHide())
.formulaId(salarySobItemPO.getFormulaId())
.formulaContent(formulaMap.getOrDefault(salarySobItemPO.getFormulaId(), ""))
.originFormulaContent(valueType == SalaryValueTypeEnum.FORMULA.getValue() ? formulaMap.getOrDefault(salarySobItemPO.getFormulaId(), "") : "")
.originSqlContent(valueType == SalaryValueTypeEnum.SQL.getValue() ? formulaMap.getOrDefault(salarySobItemPO.getFormulaId(), "") : "")
.taxDeclarationColumn(SalaryItemBO.buildTaxDeclarationColumn(salaryItemPO.getCode(), user))
.sortedIndex(salarySobItemPO.getSortedIndex())
.canEdit(openFormulaForcedEditing || Objects.equals(salaryItemPO.getCanEdit(), 1))
.canDelete(openFormulaForcedEditing || salaryItemPO.getCanDelete() == null || Objects.equals(salaryItemPO.getCanDelete(), 1))
.build());
}
}
if (!salarySobItemGroupDTOMap.containsKey(k)) {
itemsWithoutGroup.addAll(items);
} else {
SalarySobItemGroupDTO salarySobItemGroupDTO = salarySobItemGroupDTOMap.get(k);
salarySobItemGroupDTO.setItems(sortItem(items));
}
});
// 薪资账套的员工信息字段po转换成dto
List<SalarySobEmpFieldDTO> salarySobEmpFieldDTOS = buildEmpField(salarySobEmpFields, user);
List<SalarySobItemIncomeCategoryDTO> incomeCategories = Lists.newArrayList();
// List<Integer> incomeCategoryValues = JsonUtil.parseList(salarySob.getIncomeCategory(), Integer.class);
Integer incomeCategory = salarySob.getIncomeCategory();
List<Integer> incomeCategoryValues = Lists.newArrayList(incomeCategory);
for (Integer incomeCategoryValue : incomeCategoryValues) {
IncomeCategoryEnum incomeCategoryEnum = IncomeCategoryEnum.parseByValue(incomeCategoryValue);
SalarySobItemIncomeCategoryDTO salarySobItemIncomeCategoryDTO = new SalarySobItemIncomeCategoryDTO()
.setId(incomeCategoryValue.longValue())
.setName(Optional.ofNullable(incomeCategoryEnum)
.map(e -> SalaryI18nUtil.getI18nLabel(user.getLanguage(),e.getLabelId(), e.getDefaultLabel()))
.orElse(StringUtils.EMPTY))
.setItemGroups(sortItemGroup(salarySobItemGroupDTOS))
.setItems(sortItem(itemsWithoutGroup));
incomeCategories.add(salarySobItemIncomeCategoryDTO);
}
// 薪资回算项目
List<SalarySobItemDTO> backCalcItems = salarySobBackItems.stream()
.map(salarySobBackItem -> {
SalaryItemPO salaryItem = salaryItemMap.get(salarySobBackItem.getSalaryItemId());
//获取name多语言
String name = "";
// name = salaryItem.getLabelId() != null ? SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryItem.getLabelId(),salaryItem.getName()) : salaryItem.getName();
//20231113逻辑变更对福利险种薪资项目薪资项目分组的名称舍弃基于labelId的多语言适配逻辑直接以多语言命名方式设置name
name = Util.formatMultiLang(salaryItem.getName(), String.valueOf(user.getLanguage()));
return SalarySobItemDTO.builder()
.id(salarySobBackItem.getId())
.salarySobId(salarySob.getId())
.salaryItemId(salaryItem.getId())
.salaryItemGroupId(0L)
.dataType(salaryItem.getDataType())
.name(name)
.formulaId(salarySobBackItem.getFormulaId())
.formulaContent(formulaMap.getOrDefault(salarySobBackItem.getFormulaId(), SalaryI18nUtil.getI18nLabel(user.getLanguage(),554, "输入")))
.taxDeclarationColumn(SalaryItemBO.buildTaxDeclarationColumn(salaryItem.getCode(), user))
.sortedIndex(0)
.canEdit(true)
.canDelete(false)
.build();
}).collect(Collectors.toList());
return SalarySobItemAggregateDTO.builder()
.salarySobId(salarySob.getId())
.empFields(salarySobEmpFieldDTOS)
.items(sortItem(itemsWithoutGroup))
.itemGroups(sortItemGroup(salarySobItemGroupDTOMap.values()))
.incomeCategories(incomeCategories)
.backCalcItems(backCalcItems)
.build();
}
/**
* 薪资账套的员工信息字段po转换成dto
*

View File

@ -14,9 +14,9 @@ import java.util.Arrays;
**/
public enum MessageChannelEnum implements BaseEnum<Integer> {
MSG(0, "系统消息", 93212),
MSG(0, "系统消息", 543707),
EMAIL(1, "邮件", 71),
SMS(2, "短信", 93287);
SMS(2, "短信", 0);
private int value;

View File

@ -1165,9 +1165,9 @@ public class SIArchivesServiceImpl extends Service implements SIArchivesService
public PageInfo<InsuranceArchivesBaseHistoryDTO> getAdjustHistoryList(SIArchiveBaseHistoryListParam param) {
if (param.getWelfareTypeEnum() == null) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0, "参数错误"));
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(user.getLanguage(), 389204, "参数错误"));
}
List<InsuranceArchivesBaseHistoryDTO> adjustHistoryDTOS = siArchivesBiz.getAdjustHistoryList(param.getPaymentOrganization(), param.getEmployeeId());
List<InsuranceArchivesBaseHistoryDTO> adjustHistoryDTOS = getSiArchivesBiz(user).getAdjustHistoryList(param.getPaymentOrganization(), param.getEmployeeId());
List<InsuranceArchivesBaseHistoryDTO> targetHistory = adjustHistoryDTOS.stream()
.filter(f -> f.getWelfareType().equals(param.getWelfareTypeEnum().getValue())).collect(Collectors.toList());
@ -1181,7 +1181,7 @@ public class SIArchivesServiceImpl extends Service implements SIArchivesService
@Override
public PageInfo<InsuranceArchivesBaseHistoryDTO> historyListByEmployeeIdAndOperator(SIArchiveBaseHistoryListParam param) {
List<InsuranceArchivesBaseHistoryDTO> adjustHistoryDTOS = siArchivesBiz.getBaseHistoryByEmployeeIdAndOperator(param.getOperator(), param.getEmployeeId());
List<InsuranceArchivesBaseHistoryDTO> adjustHistoryDTOS = getSiArchivesBiz(user).getBaseHistoryByEmployeeIdAndOperator(param.getOperator(), param.getEmployeeId());
PageInfo<InsuranceArchivesBaseHistoryDTO> listPage = SalaryPageUtil.buildPage(param.getCurrent(), param.getPageSize(),
adjustHistoryDTOS , InsuranceArchivesBaseHistoryDTO.class);

View File

@ -632,7 +632,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
// 获取所有可以选择的薪资项目
SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(param.getSalaryAcctRecordId());
if (Objects.isNull(salaryAcctRecordPO)) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(0, "薪资核算记录不存在或已被删除"));
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(user.getLanguage(), 542300, "薪资核算记录不存在或已被删除"));
}
// 查询薪资核算记录所用的薪资账套的薪资项目副本
List<SalarySobItemPO> salarySobItems = getSalarySobItemService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId());

View File

@ -657,8 +657,12 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
String userstatus = queryParam.getUserstatus();
r.setUsername(employee.getUsername());
r.setDepartmentName(employee.getDepartmentName());
r.setEmployeeStatus(UserStatusEnum.getDefaultLabelByValue(Integer.parseInt(employee.getStatus())));
r.setAdjustReason(SalaryArchiveItemAdjustReasonEnum.getDefaultLabelByValue(r.getAdjustReason()));
UserStatusEnum userStatusEnum = UserStatusEnum.parseByValue(Integer.parseInt(employee.getStatus()));
SalaryArchiveItemAdjustReasonEnum salaryArchiveItemAdjustReasonEnum = SalaryArchiveItemAdjustReasonEnum.parseByValue(r.getAdjustReason());
r.setEmployeeStatus(SalaryI18nUtil.getI18nLabel(user.getLanguage(),userStatusEnum.getLabelId(), userStatusEnum.getDefaultLabel()));
r.setAdjustReason(SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryArchiveItemAdjustReasonEnum.getLabelId(), salaryArchiveItemAdjustReasonEnum.getDefaultLabel()));
return (StringUtils.isBlank(username) || employee.getUsername().contains(username))
&& (CollectionUtils.isEmpty(departmentIds) || departmentIds.contains(employee.getDepartmentId()))
&& (CollectionUtils.isEmpty(positionIds) || positionIds.contains(employee.getJobtitleId()))

View File

@ -273,9 +273,11 @@ public class SalaryArchiveItemWrapper extends Service implements SalaryArchiveIt
String userstatus = queryParam.getUserstatus();
r.setUsername(employee.getUsername());
r.setDepartmentName(employee.getDepartmentName());
r.setEmployeeStatus(StringUtils.isNotBlank(employee.getStatus())&& NumberUtils.isCreatable(employee.getStatus())?
UserStatusEnum.getDefaultLabelByValue(Integer.parseInt(employee.getStatus())):"");
r.setAdjustReason(SalaryArchiveItemAdjustReasonEnum.getDefaultLabelByValue(r.getAdjustReason()));
UserStatusEnum userStatusEnum = UserStatusEnum.parseByValue(Integer.parseInt(employee.getStatus()));
SalaryArchiveItemAdjustReasonEnum salaryArchiveItemAdjustReasonEnum = SalaryArchiveItemAdjustReasonEnum.parseByValue(r.getAdjustReason());
r.setEmployeeStatus(SalaryI18nUtil.getI18nLabel(user.getLanguage(),userStatusEnum.getLabelId(), userStatusEnum.getDefaultLabel()));
r.setAdjustReason(SalaryI18nUtil.getI18nLabel(user.getLanguage(),salaryArchiveItemAdjustReasonEnum.getLabelId(), salaryArchiveItemAdjustReasonEnum.getDefaultLabel()));
return (StringUtils.isBlank(username) || employee.getUsername().contains(username))
&& (CollectionUtils.isEmpty(departmentIds) || departmentIds.contains(employee.getDepartmentId()))
&& (CollectionUtils.isEmpty(positionIds) || positionIds.contains(employee.getJobtitleId()))

View File

@ -1,5 +1,6 @@
package com.engine.salary.wrapper;
import cn.hutool.core.codec.Base64Encoder;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.entity.salaryformula.ExpressFormula;
@ -155,6 +156,7 @@ public class SalaryFieldWrapper extends Service {
expressFormula = getSalaryFormulaService(user).getExpressFormula(salaryItemPO.getFormulaId());
salaryItemFormDTO.setFormulaContent(Optional.ofNullable(expressFormula).map(ExpressFormula::getFormula).orElse(""));
}
salaryItemFormDTO.setName("base64_" + Base64Encoder.encode(salaryItemFormDTO.getName()));
return salaryItemFormDTO;
}

View File

@ -1,5 +1,6 @@
package com.engine.salary.wrapper;
import cn.hutool.core.codec.Base64Encoder;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.component.WeaFormOption;
@ -200,7 +201,7 @@ public class SalaryItemWrapper extends Service {
}
String formulaContent = Optional.ofNullable(expressFormula).map(ExpressFormula::getFormula).orElse("");
//20231115逻辑变更适配多语言将前台展示公式内容获取方式变更由原本直接查询库中存储公式改为由formulaRunScript拆分-转义-重组公式
String formulaContentByFormulaRunScript = getFormulaByFormulaRunScript(expressFormula.getFormulaRunScript());
String formulaContentByFormulaRunScript = expressFormula == null ? null : getFormulaByFormulaRunScript(expressFormula.getFormulaRunScript());
if (StringUtils.isNotBlank(formulaContentByFormulaRunScript)) {
formulaContent = formulaContentByFormulaRunScript;
}
@ -208,6 +209,7 @@ public class SalaryItemWrapper extends Service {
salaryItemFormDTO.setOriginFormulaContent(salaryItemFormDTO.getValueType().equals(SalaryValueTypeEnum.FORMULA.getValue()) ? formulaContent : "");
salaryItemFormDTO.setOriginSqlContent(salaryItemFormDTO.getValueType().equals(SalaryValueTypeEnum.SQL.getValue()) ? formulaContent : "");
}
salaryItemFormDTO.setName("base64_" + Base64Encoder.encode(salaryItemFormDTO.getName()));
return salaryItemFormDTO;
}