薪酬系统-多语言配置,调整wrapper、controller、bo文件中复杂中文表述的拼接细节

This commit is contained in:
sy 2023-04-21 17:36:21 +08:00
parent eb8964624a
commit 17f10285a2
11 changed files with 99 additions and 33 deletions

View File

@ -195,9 +195,12 @@ public class SalaryAcctCalculatePriorityBO {
if (Objects.equals(pre.getSalaryItemId(), current.getSalaryItemId())) {
SalaryItemPO preSalaryItemPO = salaryItemPOMap.get(pre.getSalaryItemId());
SalaryItemPO currentSalaryItemPO = salaryItemPOMap.get(current.getSalaryItemId());
String errMsg = SalaryI18nUtil.getI18nLabel(101426, "{0}和{1}的公式中存在相互引用")
String errMsg = SalaryI18nUtil.getI18nLabel(101426, "以下项目的公式中存在相互引用") + "{0}、{1}"
.replace("{0}", Optional.ofNullable(preSalaryItemPO).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
.replace("{1}", Optional.ofNullable(currentSalaryItemPO).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY));
// String errMsg = SalaryI18nUtil.getI18nLabel(101426, "{0}和{1}的公式中存在相互引用")
// .replace("{0}", Optional.ofNullable(preSalaryItemPO).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY))
// .replace("{1}", Optional.ofNullable(currentSalaryItemPO).map(SalaryItemPO::getName).orElse(StringUtils.EMPTY));
throw new SalaryRunTimeException(errMsg);
}
if (CollectionUtils.isEmpty(pre.getPreList())) {

View File

@ -95,26 +95,58 @@ public class SalarySobBO {
Integer salaryCycleFromDay = salarySobPO.getSalaryCycleFromDay();
switch (salaryCycleTypeEnum) {
case BEFORE_LAST_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98395, "上上月1号——上上月最后一天")
: SalaryI18nUtil.getI18nLabel(98399, "上上月{0}号——上月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98395, "上上月1号——上上月最后一天")
// : SalaryI18nUtil.getI18nLabel(98399, "上上月{0}号——上月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (salaryCycleFromDay - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1)
? SalaryI18nUtil.getI18nLabel(98395, "上上个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "上上个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98399, "上上个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98399, "上个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (salaryCycleFromDay - 1));
break;
case LAST_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98396, "上月1号——上月最后一天")
: SalaryI18nUtil.getI18nLabel(98400, "上月{0}号——本月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98396, "上月1号——上月最后一天")
// : SalaryI18nUtil.getI18nLabel(98400, "上月{0}号——本月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (salaryCycleFromDay - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1)
? SalaryI18nUtil.getI18nLabel(98395, "上个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "上个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98400, "上个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98400, "本月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (salaryCycleFromDay - 1));
break;
case THIS_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98397, "本月1号——本月最后一天")
: SalaryI18nUtil.getI18nLabel(98401, "本月{0}号——下月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98397, "本月1号——本月最后一天")
// : SalaryI18nUtil.getI18nLabel(98401, "本月{0}号——下月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (salaryCycleFromDay - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1)
? SalaryI18nUtil.getI18nLabel(98395, "本月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "本月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98401, "本月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98401, "下个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (salaryCycleFromDay - 1));
break;
case NEXT_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98398, "下月1号——下月最后一天")
: SalaryI18nUtil.getI18nLabel(98402, "下月{0}号——下下月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, 1) ? SalaryI18nUtil.getI18nLabel(98398, "下月1号——下月最后一天")
// : SalaryI18nUtil.getI18nLabel(98402, "下月{0}号——下下月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (salaryCycleFromDay - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, 1)
? SalaryI18nUtil.getI18nLabel(98395, "下个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "下个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98402, "下个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98402, "下下个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (salaryCycleFromDay - 1));
break;

View File

@ -38,7 +38,7 @@ public class SalarySobPO {
*/
private Integer incomeCategory;
/**
* 薪资周期1:上上2:3:本月4:
* 薪资周期1:上上2:3:本月4:
*/
private Integer salaryCycleType;
/**
@ -46,11 +46,11 @@ public class SalarySobPO {
*/
private Integer salaryCycleFromDay;
/**
* 税款所属期1:上上2:3:本月4:
* 税款所属期1:上上2:3:本月4:
*/
private Integer taxCycleType;
/**
* 考勤周期1:上上2:3:本月4:
* 考勤周期1:上上2:3:本月4:
*/
private Integer attendCycleType;
/**
@ -58,7 +58,7 @@ public class SalarySobPO {
*/
private Integer attendCycleFromDay;
/**
* 社保福利所属期1:上上2:3:本月4:
* 社保福利所属期1:上上2:3:本月4:
*/
private Integer socialSecurityCycleType;
/**

View File

@ -805,7 +805,7 @@ public class TaxDeclarationDetailListColumn {
SalaryI18nUtil.getI18nLabel(102782, "身份证件号码"),
SalaryI18nUtil.getI18nLabel(102783, "纳税人识别号"),
SalaryI18nUtil.getI18nLabel(102785, "是否为非居民个人"),
SalaryI18nUtil.getI18nLabel(102786, "所得项目"),
SalaryI18nUtil.getI18nLabel(102786, "收入所得项目"),
SalaryI18nUtil.getI18nLabel(96689, "收入"),
SalaryI18nUtil.getI18nLabel(102789, "费用"),
SalaryI18nUtil.getI18nLabel(102790, "免税收入"),

View File

@ -13,10 +13,10 @@ import java.util.Objects;
**/
public enum SalaryCycleTypeEnum implements BaseEnum<Integer> {
BEFORE_LAST_MONTH(1, "上上", 86075),
LAST_MONTH(2, "", 86074),
BEFORE_LAST_MONTH(1, "上上", 86075),
LAST_MONTH(2, "", 86074),
THIS_MONTH(3, "本月", 86072),
NEXT_MONTH(4, "", 86073);
NEXT_MONTH(4, "", 86073);
private int value;

View File

@ -109,26 +109,54 @@ public class TransMethod {
}
switch (salaryCycleTypeEnum) {
case BEFORE_LAST_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98395, "上上月1号——上上月最后一天")
: SalaryI18nUtil.getI18nLabel(98399, "上上月{0}号——上月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98395, "上上月1号——上上月最后一天")
// : SalaryI18nUtil.getI18nLabel(98399, "上上月{0}号——上月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1")
? SalaryI18nUtil.getI18nLabel(98395, "上上个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "上上个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98399, "上上个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98399, "上个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
break;
case LAST_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98396, "上月1号——上月最后一天")
: SalaryI18nUtil.getI18nLabel(98400, "上月{0}号——本月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98396, "上月1号——上月最后一天")
// : SalaryI18nUtil.getI18nLabel(98400, "上月{0}号——本月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1")
? SalaryI18nUtil.getI18nLabel(98395, "上个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "上个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98400, "上个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98400, "本月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
break;
case THIS_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98397, "本月1号——本月最后一天")
: SalaryI18nUtil.getI18nLabel(98401, "本月{0}号——下月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98397, "本月1号——本月最后一天")
// : SalaryI18nUtil.getI18nLabel(98401, "本月{0}号——下月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1")
? SalaryI18nUtil.getI18nLabel(98395, "本月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "本月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98401, "本月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98401, "下个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
break;
case NEXT_MONTH:
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98398, "下月1号——下月最后一天")
: SalaryI18nUtil.getI18nLabel(98402, "下月{0}号——下下月{1}号")
// salaryCycleStr = Objects.equals(salaryCycleFromDay, "1") ? SalaryI18nUtil.getI18nLabel(98398, "下月1号——下月最后一天")
// : SalaryI18nUtil.getI18nLabel(98402, "下月{0}号——下下月{1}号")
// .replace("{0}", "" + salaryCycleFromDay)
// .replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
salaryCycleStr = Objects.equals(salaryCycleFromDay, "1")
? SalaryI18nUtil.getI18nLabel(98395, "下个月") + "-" + "第一天" + "——"
+ SalaryI18nUtil.getI18nLabel(98395, "下个月") + "-" + SalaryI18nUtil.getI18nLabel(98395, "最后一天")
: SalaryI18nUtil.getI18nLabel(98402, "下个月") + "-{0}——"
+ SalaryI18nUtil.getI18nLabel(98402, "下下个月") + "-{1}"
.replace("{0}", "" + salaryCycleFromDay)
.replace("{1}", "" + (Integer.parseInt(salaryCycleFromDay) - 1));
break;

View File

@ -396,7 +396,7 @@ public class SalaryArchiveController {
boolean isInit = SalaryArchiveImportTypeEnum.INIT.getValue().equals(queryParam.getImportType());
boolean isSalaryItemAdjust = SalaryArchiveImportTypeEnum.SALARYITEMADJUST.getValue().equals(queryParam.getImportType());
// 名称
String finalNameI18n = SalaryI18nUtil.getI18nLabel(101601, "薪资档案导入模板-")
String finalNameI18n = SalaryI18nUtil.getI18nLabel(101601, "薪资档案导入模板") + "-"
+ SalaryI18nUtil.getI18nLabel(listTypeEnum.getLabelId(), listTypeEnum.getDefaultLabel());
if (isFixedList) {
// 初始化

View File

@ -181,8 +181,11 @@ public class SalaryAcctEmployeeWrapper extends Service {
List<SalaryAcctEmployeePO> salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user)
.listBySalaryAcctRecordIdAndTaxAgentId(salaryAcctRecordId, NumberUtils.LONG_ZERO);
if (CollectionUtils.isNotEmpty(salaryAcctEmployeePOS)) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98871, "有{0}个人无个税扣缴义务人,请先去薪资档案里维护员工档案,再点击当前页面的刷新按钮")
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98871, "请先去薪资档案里维护员工档案,再点击当前页面的刷新按钮。")
+ SalaryI18nUtil.getI18nLabel(98871, "当前存在未设置个税扣缴义务人的员工数量") + "{0}"
.replace("{0}", "" + salaryAcctEmployeePOS.size()));
// throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98871, "有{0}个人无个税扣缴义务人,请先去薪资档案里维护员工档案,再点击当前页面的刷新按钮")
// .replace("{0}", "" + salaryAcctEmployeePOS.size()));
}
}

View File

@ -317,7 +317,7 @@ public class SalaryArchiveWrapper extends Service {
}
SalaryArchivePO po = getSalaryArchiveService(user).getById(salaryArchiveId);
if (po == null) {
throw new SalaryRunTimeException(String.format(SalaryI18nUtil.getI18nLabel(100463, "薪资档案不存在") + "[id:%s]", salaryArchiveId));
throw new SalaryRunTimeException(String.format(SalaryI18nUtil.getI18nLabel(100463, "薪资档案不存在") + "[id:%s]", salaryArchiveId));
}
List<DataCollectionEmployee> employeeList = employeeService.getEmployeeByIdsAll(Collections.singletonList(po.getEmployeeId()));
@ -552,17 +552,17 @@ public class SalaryArchiveWrapper extends Service {
public SalaryArchivePO getSalaryArchiveInfo(SalaryArchiveQueryParam param) {
SalaryArchivePO po = SalaryArchivePO.builder().employeeId(param.getEmployeeId()).build();
if (param.getEmployeeId() == null) {
throw new SalaryRunTimeException("人员id为空!");
throw new SalaryRunTimeException("人员id为空");
}
if (param.getTaxAgentId() != null) {
po.setTaxAgentId(param.getTaxAgentId());
}
List<SalaryArchivePO> list = getSalaryArchiveService(user).listSome(po);
if (CollectionUtils.isEmpty(list)) {
throw new SalaryRunTimeException("薪资档案不存在!");
throw new SalaryRunTimeException("薪资档案不存在");
}
if (list.size() > 1) {
throw new SalaryRunTimeException("存在多个薪资档案!");
throw new SalaryRunTimeException("存在多个薪资档案");
}
return list.get(0);
}

View File

@ -475,7 +475,7 @@ public class SalarySendWrapper extends Service {
SalarySendPO salarySend = getSalarySendService(user).getById(queryParam.getSalarySendId());
if (salarySend == null) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100510, "工资发放不存在"));
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100510, "工资发放不存在"));
}
SalaryAcctRecordPO salaryAcctRecord = getSalaryAcctRecordService(user).getById(salarySend.getSalaryAccountingId());

View File

@ -223,7 +223,7 @@ public class TaxAgentWrapper extends Service {
if (id != null) {
TaxAgentPO taxAgent = getTaxAgentService(user).getById(id);
if (taxAgent == null) {
throw new SalaryRunTimeException(String.format(SalaryI18nUtil.getI18nLabel(100543, "个税扣缴人不存在") + "[id:%s]", id));
throw new SalaryRunTimeException(String.format(SalaryI18nUtil.getI18nLabel(100543, "个税扣缴义务人不存在") + "[id:%s]", id));
}
BeanUtils.copyProperties(taxAgent, taxAgentFromDTO);
}