同步所有人员报送发薪日期为入职日期
This commit is contained in:
parent
791bc2ffca
commit
1a061aa346
|
|
@ -0,0 +1,31 @@
|
|||
package com.engine.salary.entity.employeedeclare.param;
|
||||
|
||||
import com.engine.salary.util.valid.DataCheck;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 同步入职日期参数
|
||||
* <p>Copyright: Copyright (c) 2023</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class EmployeeDeclareSyncStartDateParam {
|
||||
// 个税扣缴义务人id
|
||||
@DataCheck(require = true, message = "参数错误,个税扣缴义务人id不能为空")
|
||||
private Long taxAgentId;
|
||||
|
||||
// 税款所属期
|
||||
@DataCheck(require = true, message = "参数错误,税款所属期参数格式错误")
|
||||
private Date taxCycle;
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package com.engine.salary.maintainer.EmployeeDeclare;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.employeedeclare.param.EmployeeDeclareSyncStartDateParam;
|
||||
import com.engine.salary.service.*;
|
||||
import com.engine.salary.service.impl.*;
|
||||
import com.engine.salary.util.valid.ValidUtil;
|
||||
import weaver.hrm.User;
|
||||
|
||||
public class EmployeeDeclareManager extends Service {
|
||||
private TaxAgentService getTaxAgentService(User user) {
|
||||
return ServiceUtil.getService(TaxAgentServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private EmployeeDeclareService getEmployeeDeclareService(User user) {
|
||||
return ServiceUtil.getService(EmployeeDeclareServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private ExtEmpService getExtEmpService(User user) {
|
||||
return ServiceUtil.getService(ExtEmpServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryEmployeeService getSalaryEmployeeService(User user) {
|
||||
return ServiceUtil.getService(SalaryEmployeeServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryCacheService getSalaryCacheService(User user) {
|
||||
return ServiceUtil.getService(SalaryCacheServiceImpl.class, user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 同步任职受雇日期为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String syncEmploymentDate(EmployeeDeclareSyncStartDateParam param) {
|
||||
ValidUtil.doValidator(param);
|
||||
|
||||
return getEmployeeDeclareService(user).syncEmploymentDate(param);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,11 +1,14 @@
|
|||
package com.engine.salary.maintainer;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.employeedeclare.param.EmployeeDeclareSyncStartDateParam;
|
||||
import com.engine.salary.maintainer.EmployeeDeclare.EmployeeDeclareManager;
|
||||
import com.engine.salary.maintainer.datacollection.AddUpSituationManager;
|
||||
import com.engine.salary.maintainer.salaryacct.SalaryAcctManager;
|
||||
import com.engine.salary.maintainer.salaryacct.SalaryAcctSupplementParam;
|
||||
import com.engine.salary.maintainer.salaryarchive.SalaryArchiveManager;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import com.engine.salary.util.SalaryDateUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
|
|
@ -16,6 +19,7 @@ import javax.servlet.http.HttpServletResponse;
|
|||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import java.util.Arrays;
|
||||
|
|
@ -45,6 +49,10 @@ public class MaintainerController {
|
|||
return ServiceUtil.getService(SalaryArchiveManager.class, user);
|
||||
}
|
||||
|
||||
private EmployeeDeclareManager getEmployeeDeclareManager(User user) {
|
||||
return ServiceUtil.getService(EmployeeDeclareManager.class, user);
|
||||
}
|
||||
|
||||
//---------------------------薪资核算 start ------------------------------------
|
||||
|
||||
/**
|
||||
|
|
@ -108,4 +116,32 @@ public class MaintainerController {
|
|||
return new ResponseResult<String, Boolean>(user).run(getSalaryArchiveManager(user)::initPayStartDate);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步所有档案起始发薪日期变为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/salaryArchive/syncPayStartDate")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String syncPayStartDate(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<Void, String>(user).run(getSalaryArchiveManager(user)::syncPayStartDate);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步任职受雇日期为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/employeedeclare/syncEmploymentDate")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String syncEmploymentDate(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "taxAgentId") Long taxAgentId, @QueryParam(value = "taxCycle")String taxCycle) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
EmployeeDeclareSyncStartDateParam param = EmployeeDeclareSyncStartDateParam.builder().taxAgentId(taxAgentId).taxCycle(SalaryDateUtil.stringToDate(taxCycle)).build();
|
||||
return new ResponseResult<EmployeeDeclareSyncStartDateParam, String>(user).run(getEmployeeDeclareManager(user)::syncEmploymentDate,param);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -61,4 +61,15 @@ public class SalaryArchiveManager extends Service {
|
|||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 同步所有档案起始发薪日期变为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String syncPayStartDate() {
|
||||
return getSalaryArchiveService(user).syncPayStartDate();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -175,4 +175,11 @@ public interface EmployeeDeclareService{
|
|||
* @param param
|
||||
*/
|
||||
void getDeclareFeedback(EmployeeDeclareParam param, EmployeeDeclareRateDTO employeeDeclareRate);
|
||||
|
||||
/**
|
||||
* 同步任职受雇日期为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
String syncEmploymentDate(EmployeeDeclareSyncStartDateParam param);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ import com.engine.salary.entity.taxapiflow.po.TaxDeclarationApiFlowRecordPO;
|
|||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationApiConfigPO;
|
||||
import com.engine.salary.enums.SalaryCycleTypeEnum;
|
||||
import com.engine.salary.enums.SalaryOnOffEnum;
|
||||
import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum;
|
||||
import com.engine.salary.enums.employeedeclare.CardTypeEnum;
|
||||
import com.engine.salary.enums.employeedeclare.DeclareStatusEnum;
|
||||
import com.engine.salary.enums.employeedeclare.EmploymentStatusEnum;
|
||||
|
|
@ -703,4 +704,23 @@ public class EmployeeDeclareServiceImpl extends Service implements EmployeeDecla
|
|||
employeeDeclareRate.setMsg(SalaryI18nUtil.getI18nLabel(187388, "报送成功{0}条").replace("{0}", Util.null2String(needUpdateEmployeeDeclares.size())));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String syncEmploymentDate(EmployeeDeclareSyncStartDateParam param) {
|
||||
List<DataCollectionEmployee> employeeList = getSalaryEmployeeService(user).listAll(UseEmployeeTypeEnum.ALL);
|
||||
Map<Long, String> empPayStartDateMap = SalaryEntityUtil.convert2Map(employeeList, DataCollectionEmployee::getEmployeeId, DataCollectionEmployee::getCompanystartdate);
|
||||
|
||||
List<EmployeeDeclarePO> employeeDeclarePOS = listByTaxCycleAndTaxAgentId(param.getTaxCycle(), param.getTaxAgentId());
|
||||
employeeDeclarePOS.forEach(po -> {
|
||||
String payStartDate = empPayStartDateMap.getOrDefault(po.getEmployeeId(), "");
|
||||
if (SalaryDateUtil.checkDay(payStartDate)) {
|
||||
po.setEmploymentDate(SalaryDateUtil.dateStrToLocalDate(payStartDate));
|
||||
po.setNewEmployeeInfo(1);
|
||||
po.setDeclareStatus(DeclareStatusEnum.NOT_DECLARE.getValue());
|
||||
getEmployeeDeclareMapper().updateIgnoreNull(po);
|
||||
}
|
||||
});
|
||||
|
||||
return "执行完毕";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -586,18 +586,6 @@ public class SalaryArchiveController {
|
|||
return new ResponseResult<SalaryArchiveStopParam, String>(user).run(getSalaryArchiveWrapper(user)::stopSalary, stopSalaryParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步所有档案起始发薪日期变为入职日期
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/syncPayStartDate")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String syncPayStartDate(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<Void, String>(user).run(getSalaryArchiveWrapper(user)::syncPayStartDate);
|
||||
}
|
||||
|
||||
// ******** 薪资档案主表 end ***********************************************************************************************/
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue