Merge branch 'feature/V3-editSalaryAdjustment-11-17' into release/2.2.2.2211.03

This commit is contained in:
Harryxzy 2022-11-17 18:35:12 +08:00
commit 11c4b1e4f7
2 changed files with 26 additions and 25 deletions

View File

@ -238,14 +238,14 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
// 获取生效+未生效的数据
List<SalaryArchiveItemPO> salaryItemsBySalaryArchiveIdAndItemIds = getSalaryItemsBySalaryArchiveIdAndItemIds(salaryArchiveItemSaveParam.getSalaryArchiveId(), salaryItemIds);
// 获取当前已生效数据
List<SalaryArchiveItemPO> effectiveSalaryItems = getEffectiveSalaryItems(salaryArchiveItemSaveParam.getSalaryArchiveId(), salaryItemIds);
// List<SalaryArchiveItemPO> effectiveSalaryItems = getEffectiveSalaryItems(salaryArchiveItemSaveParam.getSalaryArchiveId(), salaryItemIds);
// 待保存生效时间
Date saveEffectiveTime = salaryArchiveItemSaveParam.getEffectiveTime();
salaryArchiveItems.forEach(e -> {
// 已生效
List<SalaryArchiveItemPO> effectiveList = effectiveSalaryItems.stream().filter(i -> i.getSalaryItemId().equals(e.getSalaryItemId())).collect(Collectors.toList());
// List<SalaryArchiveItemPO> effectiveList = effectiveSalaryItems.stream().filter(i -> i.getSalaryItemId().equals(e.getSalaryItemId())).collect(Collectors.toList());
// 当前已生效
SalaryArchiveItemPO effectiveSalaryItem = CollectionUtils.isNotEmpty(effectiveList) && effectiveList.size() > 0 ? effectiveList.get(0) : null;
// SalaryArchiveItemPO effectiveSalaryItem = CollectionUtils.isNotEmpty(effectiveList) && effectiveList.size() > 0 ? effectiveList.get(0) : null;
List<SalaryArchiveItemPO> list = salaryItemsBySalaryArchiveIdAndItemIds.stream().filter(i -> i.getSalaryItemId().equals(e.getSalaryItemId())).collect(Collectors.toList());
boolean isNotNumber = StringUtils.isNotEmpty(e.getAdjustValue()) && !Pattern.matches(SalaryArchiveConstant.NUMBER_REGEX, e.getAdjustValue());
if (isNotNumber) {
@ -261,19 +261,19 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
}
// 1.检验是否可以调整
if (effectiveSalaryItem != null) {
// if (effectiveSalaryItem != null) {
// 当前已经生效的时间
Date effectiveTime = effectiveSalaryItem.getEffectiveTime();
// Date effectiveTime = effectiveSalaryItem.getEffectiveTime();
// 1.1 如果保存的生效日期早于<当前已生效
if (saveEffectiveTime.before(effectiveTime)) {
if(salaryArchiveItemSaveParam.getCanOperator() == Boolean.TRUE){
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100429, "生效日期不可早于当前已生效的调整日期,仅修改备注"));
}
// 仅可编辑说明
salaryArchiveItemMapper.updateIgnoreNull( SalaryArchiveItemPO.builder().id(salaryArchiveItemSaveParam.getSalaryArchiveItemId())
.description(salaryArchiveItemSaveParam.getDescription()).build());
}
}
// if (saveEffectiveTime.before(effectiveTime)) {
// if(salaryArchiveItemSaveParam.getCanOperator() == Boolean.TRUE){
// throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100429, "生效日期不可早于当前已生效的调整日期"));
// }
// // 仅可编辑说明
// salaryArchiveItemMapper.updateIgnoreNull( SalaryArchiveItemPO.builder().id(salaryArchiveItemSaveParam.getSalaryArchiveItemId())
// .description(salaryArchiveItemSaveParam.getDescription()).build());
// }
// }
});
return SalaryArchiveItemPO.builder().id(salaryArchiveItemSaveParam.getSalaryArchiveItemId()).effectiveTime(salaryArchiveItemSaveParam.getEffectiveTime()).adjustReason(salaryArchiveItemSaveParam.getAdjustReason())
.description(salaryArchiveItemSaveParam.getDescription()).itemValue(salaryArchiveItemSaveParam.getSalaryArchiveItems().get(0).getAdjustValue()).build();
@ -530,13 +530,13 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
if (salaryArchiveItem == null) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98299, "参数错误,薪资项目不存在或已被删除"));
}
if (salaryArchiveItem.getEffectiveTime().after(new Date())) {
// if (salaryArchiveItem.getEffectiveTime().after(new Date())) {
salaryArchiveItem.setDeleteType(1);
// 删除未生效数据
salaryArchiveItemMapper.updateById(salaryArchiveItem);
} else {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98299, "该薪资项目已生效不可删除"));
}
// } else {
// throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98299, "该薪资项目已生效不可删除"));
// }
return StringUtils.EMPTY;
}

View File

@ -343,13 +343,14 @@ public class SalaryArchiveItemWrapper extends Service implements SalaryArchiveIt
for (int i = 0; i < resultList.size(); i++) {
SingleSalaryItemAdjustRecordListDTO singleSalaryItemAdjustRecord = resultList.get(i);
if(singleSalaryItemAdjustRecord.getId().equals(queryParam.getId())){
Optional<SalaryArchiveItemPO> optional = effectiveSalaryItems.stream().filter(f -> f.getSalaryItemId().equals(singleSalaryItemAdjustRecord.getSalaryItemId())).findFirst();
Date effectiveDate = optional.map(SalaryArchiveItemPO::getEffectiveTime).orElse(null);
if (effectiveDate != null && singleSalaryItemAdjustRecord.getEffectiveTime().before(effectiveDate)) {
singleSalaryItemAdjustRecord.setCanOperator(Boolean.FALSE);
} else {
singleSalaryItemAdjustRecord.setCanOperator(Boolean.TRUE);
}
// Optional<SalaryArchiveItemPO> optional = effectiveSalaryItems.stream().filter(f -> f.getSalaryItemId().equals(singleSalaryItemAdjustRecord.getSalaryItemId())).findFirst();
// Date effectiveDate = optional.map(SalaryArchiveItemPO::getEffectiveTime).orElse(null);
// if (effectiveDate != null && singleSalaryItemAdjustRecord.getEffectiveTime().before(effectiveDate)) {
// singleSalaryItemAdjustRecord.setCanOperator(Boolean.FALSE);
// } else {
// singleSalaryItemAdjustRecord.setCanOperator(Boolean.TRUE);
// }
singleSalaryItemAdjustRecord.setCanOperator(Boolean.TRUE);
Map<String, Object> map = new HashMap<>(3);
map.put("salaryItem", String.valueOf(singleSalaryItemAdjustRecord.getSalaryItemId()));
map.put("salaryBefore", singleSalaryItemAdjustRecord.getAdjustBefore());