艾志《2024-01个税申报问题汇总》1、3、5、6
This commit is contained in:
parent
9072bc164c
commit
7dafb37263
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.entity.employeedeclare.bo;
|
||||
|
||||
import com.api.formmode.page.util.Util;
|
||||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
||||
import com.engine.salary.entity.employeedeclare.dto.EmployeeDeclareRefreshDTO;
|
||||
|
|
@ -10,18 +9,18 @@ import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO;
|
|||
import com.engine.salary.enums.SalaryOnOffEnum;
|
||||
import com.engine.salary.enums.employeedeclare.*;
|
||||
import com.engine.salary.enums.salaryaccounting.EmployeeTypeEnum;
|
||||
import com.engine.salary.enums.salaryarchive.SalaryArchiveStatusEnum;
|
||||
import com.engine.salary.enums.sicategory.DeleteTypeEnum;
|
||||
import com.engine.salary.util.SalaryDateUtil;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.IdGenerator;
|
||||
import com.engine.salary.util.valid.SalaryCardUtil;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.engine.salary.util.db.IdGenerator;
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
|
||||
public class EmployeeDeclareRefresh {
|
||||
|
|
@ -37,14 +36,16 @@ public class EmployeeDeclareRefresh {
|
|||
// 非系统人员的数据(任职受雇从业类型)
|
||||
Map<Long, ExtEmpPO> extEmployeeMap = SalaryEntityUtil.convert2Map(dto.getExtEmployees(), ExtEmpPO::getId);
|
||||
Date now = new Date();
|
||||
LocalDate checkLocalDate = SalaryDateUtil.dateToLocalDate(dto.getTaxCycle()).plusMonths(2);
|
||||
|
||||
// 对已有人员处理「人员状态」、「离职日期」、「任职受雇从业类型」
|
||||
for (EmployeeDeclarePO employeeDeclare : dto.getEmployeeDeclares()) {
|
||||
SalaryArchivePO salaryArchive = salaryArchiveMap.get(employeeDeclare.getEmployeeId());
|
||||
if (salaryArchive != null &&
|
||||
(Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())
|
||||
|| Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue()))) {
|
||||
if (salaryArchive != null) {
|
||||
// if (Objects.equals(employeeDeclare.getEmploymentStatus(), EmploymentStatusEnum.ABNORMAL.getValue())
|
||||
// || Objects.equals(Util.null2String(employeeDeclare.getDismissDate()), Util.null2String(salaryArchive.getPayEndDate()))) {
|
||||
if (Objects.equals(employeeDeclare.getEmploymentStatus(), EmploymentStatusEnum.ABNORMAL.getValue())
|
||||
|| Objects.equals(Util.null2String(employeeDeclare.getDismissDate()), Util.null2String(salaryArchive.getPayEndDate()))) {
|
||||
|| (!SalaryDateUtil.localDate2YearMonth(salaryArchive.getLastPayDate()).plusMonths(2).isAfter(SalaryDateUtil.localDate2YearMonth(dto.getTaxCycle())) )) {
|
||||
employeeDeclare.setEmploymentStatus(EmploymentStatusEnum.ABNORMAL.getValue());
|
||||
employeeDeclare.setDismissDate(salaryArchive.getLastPayDate());
|
||||
employeeDeclare.setNewEmployeeInfo(1);
|
||||
|
|
@ -76,8 +77,11 @@ public class EmployeeDeclareRefresh {
|
|||
employeeDeclare.setUpdateTime(now);
|
||||
// 对人员处理「人员状态」、「离职日期」、「任职受雇从业类型」
|
||||
SalaryArchivePO salaryArchive = salaryArchiveMap.get(employeeDeclare.getEmployeeId());
|
||||
if (salaryArchive != null && (Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())
|
||||
|| Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue()))) {
|
||||
// if (salaryArchive != null && (Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())
|
||||
// || Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue()))) {
|
||||
// 校验 末次发薪日期+2 是否等于或早于当前税款所属期
|
||||
if (!SalaryDateUtil.localDate2YearMonth(salaryArchive.getLastPayDate()).plusMonths(2)
|
||||
.isAfter(SalaryDateUtil.localDate2YearMonth(dto.getTaxCycle())) ) {
|
||||
employeeDeclare.setDeclareStatus(DeclareStatusEnum.NOT_DECLARE.getValue());
|
||||
employeeDeclare.setEmploymentStatus(EmploymentStatusEnum.ABNORMAL.getValue());
|
||||
employeeDeclare.setDismissDate(salaryArchive.getLastPayDate());
|
||||
|
|
@ -128,9 +132,13 @@ public class EmployeeDeclareRefresh {
|
|||
SalaryArchivePO salaryArchive = salaryArchiveMap.get(employeeDeclare.getEmployeeId());
|
||||
if (salaryArchive != null) {
|
||||
// employeeDeclare.setEmploymentType(Util.getIntValue(salaryArchive.getEmploymentType()));
|
||||
employeeDeclare.setEmploymentDate(salaryArchive.getFirstPayDate());
|
||||
if (Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())
|
||||
|| Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
|
||||
// 24-02-26存在修改义务人的情况,需求改回取起始发薪日期
|
||||
employeeDeclare.setEmploymentDate(salaryArchive.getPayStartDate());
|
||||
// if (Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())
|
||||
// || Objects.equals(salaryArchive.getRunStatus(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) {
|
||||
// 校验 末次发薪日期+2 是否等于或早于当前税款所属期
|
||||
if (!SalaryDateUtil.localDate2YearMonth(salaryArchive.getLastPayDate()).plusMonths(2)
|
||||
.isAfter(SalaryDateUtil.localDate2YearMonth(dto.getTaxCycle())) ) {
|
||||
employeeDeclare.setEmploymentStatus(EmploymentStatusEnum.ABNORMAL.getValue());
|
||||
employeeDeclare.setDismissDate(salaryArchive.getLastPayDate());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,11 +72,6 @@ public class SalaryEmployeeServiceImpl extends Service implements SalaryEmployee
|
|||
}
|
||||
|
||||
|
||||
private EmployMapper getEmployMapper() {
|
||||
return SqlProxyHandle.getProxy(EmployMapper.class);
|
||||
}
|
||||
|
||||
|
||||
private ExtEmpService getExtEmpService(User user) {
|
||||
return ServiceUtil.getService(ExtEmpServiceImpl.class, user);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue