Merge branch 'release/2.16.1.2410.01' into feature/权限

This commit is contained in:
钱涛 2024-10-30 17:11:04 +08:00
commit 13ed52d1d8
1 changed files with 37 additions and 36 deletions

View File

@ -12,13 +12,12 @@ import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO;
import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO;
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
import com.engine.salary.entity.taxagent.po.TaxAgentEmpChangePO;
import com.engine.salary.enums.salaryarchive.SalaryArchiveItemAdjustReasonEnum;
import com.engine.salary.enums.salaryarchive.SalaryArchiveStatusEnum;
import com.engine.salary.enums.taxagent.TaxAgentEmpChangeTypeEnum;
import com.engine.salary.util.SalaryEntityUtil;
import com.engine.salary.util.SalaryI18nUtil;
import com.google.common.collect.Lists;
import com.engine.salary.util.db.IdGenerator;
import com.google.common.collect.Lists;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@ -216,40 +215,42 @@ public class SalaryArchiveBO {
// 如果是新增 说明如果没有档案则新增如果有档案而且是停薪就挪到待定薪中以个税扣缴义务人和人员id判断唯一
if (change.getChangeType() == TaxAgentEmpChangeTypeEnum.ADD.getValue()) {
if (salaryArchive != null) {
// 停薪中跳回待定薪从a调动到b又调动到a或者是删除待办后再覆盖
if (stopStatus.contains(salaryArchive.getRunStatus())) {
// 跳回待定薪
salaryArchive.setRunStatus(SalaryArchiveStatusEnum.PENDING.getValue());
if (salaryArchive.getRunStatus().equals(SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
salaryArchive.setPayStartDate(today);
salaryArchive.setPayEndDate(null);
}
salaryArchiveUpdateTodoList.add(salaryArchive);
// 待停薪到停薪的就要复制最新的薪资项目
if (salaryArchive.getRunStatus().equals(SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
// 拷贝最新的薪资项目数据
List<SalaryArchiveItemPO> salaryArchiveItemValuelList = salaryArchiveItemList.stream().filter(i -> i.getSalaryArchiveId().equals(salaryArchive.getId())).collect(Collectors.toList());
salaryArchiveItemValuelList.forEach(i -> {
salaryArchiveItemAddTodos.add(SalaryArchiveItemPO.builder()
.id(IdGenerator.generate())
.salaryArchiveId(salaryArchive.getId())
.employeeId(salaryArchive.getEmployeeId())
.effectiveTime(today)
.adjustReason(SalaryArchiveItemAdjustReasonEnum.INIT.getValue())
.salaryItemId(i.getSalaryItemId())
.itemValue(i.getItemValue())
.description("")
// 不用设置操作人
.operateTime(now)
.createTime(now)
.updateTime(now)
.creator(currentEmployeeId)
.deleteType(NumberUtils.INTEGER_ZERO)
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
.build());
});
}
}
//存在历史档案不做处理
// // 停薪中跳回待定薪从a调动到b又调动到a或者是删除待办后再覆盖
// if (stopStatus.contains(salaryArchive.getRunStatus())) {
// // 跳回待定薪
// salaryArchive.setRunStatus(SalaryArchiveStatusEnum.PENDING.getValue());
// if (salaryArchive.getRunStatus().equals(SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
// salaryArchive.setPayStartDate(today);
// salaryArchive.setPayEndDate(null);
// }
// salaryArchiveUpdateTodoList.add(salaryArchive);
// // 待停薪到停薪的就要复制最新的薪资项目
// if (salaryArchive.getRunStatus().equals(SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
// // 拷贝最新的薪资项目数据
// List<SalaryArchiveItemPO> salaryArchiveItemValuelList = salaryArchiveItemList.stream().filter(i -> i.getSalaryArchiveId().equals(salaryArchive.getId())).collect(Collectors.toList());
// salaryArchiveItemValuelList.forEach(i -> {
// salaryArchiveItemAddTodos.add(SalaryArchiveItemPO.builder()
// .id(IdGenerator.generate())
// .salaryArchiveId(salaryArchive.getId())
// .employeeId(salaryArchive.getEmployeeId())
// .effectiveTime(today)
// .adjustReason(SalaryArchiveItemAdjustReasonEnum.INIT.getValue())
// .salaryItemId(i.getSalaryItemId())
// .itemValue(i.getItemValue())
// .description("")
// // 不用设置操作人
// .operateTime(now)
// .createTime(now)
// .updateTime(now)
// .creator(currentEmployeeId)
// .deleteType(NumberUtils.INTEGER_ZERO)
// .tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
// .build());
// });
// }
// }
} else {
salaryArchiveAddTodoList.add(SalaryArchivePO.builder()
.id(IdGenerator.generate())