weaver-hrm-salary/src/com/engine/salary/maintainer/MaintainerController.java

98 lines
3.8 KiB
Java
Raw Normal View History

2023-04-23 17:30:43 +08:00
package com.engine.salary.maintainer;
import com.engine.common.util.ServiceUtil;
2023-04-23 17:43:02 +08:00
import com.engine.salary.maintainer.datacollection.AddUpSituationManager;
2023-04-23 17:30:43 +08:00
import com.engine.salary.maintainer.salaryacct.SalaryAcctManager;
import com.engine.salary.maintainer.salaryacct.SalaryAcctSupplementParam;
import com.engine.salary.util.ResponseResult;
import lombok.extern.slf4j.Slf4j;
2023-04-25 17:08:42 +08:00
import org.apache.commons.lang3.StringUtils;
2023-04-23 17:30:43 +08:00
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
2023-04-23 17:43:02 +08:00
import javax.ws.rs.GET;
2023-04-23 17:30:43 +08:00
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
2023-04-25 17:08:42 +08:00
import java.util.Arrays;
2023-04-23 17:30:43 +08:00
import java.util.Map;
2023-04-25 17:08:42 +08:00
import java.util.stream.Collectors;
2023-04-23 17:30:43 +08:00
/**
* 累计专项附加扣除
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
@Slf4j
public class MaintainerController {
private SalaryAcctManager getSalaryAcctManager(User user) {
return ServiceUtil.getService(SalaryAcctManager.class, user);
}
2023-04-23 17:43:02 +08:00
private AddUpSituationManager getAddUpSituationManager(User user) {
return ServiceUtil.getService(AddUpSituationManager.class, user);
}
2023-04-23 17:30:43 +08:00
//---------------------------薪资核算 start ------------------------------------
/**
* 补充核算
*
* @return
*/
2023-04-24 14:55:32 +08:00
@GET
2023-04-24 09:19:18 +08:00
@Path("/acct/supplement")
2023-04-23 17:30:43 +08:00
@Produces(MediaType.APPLICATION_JSON)
2023-04-24 14:55:32 +08:00
public String supplementAcctRecord(@Context HttpServletRequest request, @Context HttpServletResponse response) {
2023-04-25 17:08:42 +08:00
String type = request.getParameter("type");
String salaryAcctRecordStrIds = request.getParameter("salaryAcctRecordStrIds");
String salarySobStrIds = request.getParameter("salarySobStrIds");
String salaryItemStrIds = request.getParameter("salaryItemStrIds");
2023-04-24 14:55:32 +08:00
SalaryAcctSupplementParam queryParam = SalaryAcctSupplementParam.builder()
2023-04-25 17:08:42 +08:00
.type(type)
.salaryAcctRecordStrIds(salaryAcctRecordStrIds)
.salarySobStrIds(salarySobStrIds)
.salaryItemStrIds(salaryItemStrIds)
.build();
if (StringUtils.isNotBlank(salaryAcctRecordStrIds)) {
queryParam.setSalaryAcctRecordIds(Arrays.stream(salaryAcctRecordStrIds.split(",")).map(Long::valueOf).collect(Collectors.toList()));
}
if (StringUtils.isNotBlank(salarySobStrIds)) {
queryParam.setSalarySobIds(Arrays.stream(salarySobStrIds.split(",")).map(Long::valueOf).collect(Collectors.toList()));
}
if (StringUtils.isNotBlank(salaryItemStrIds)) {
queryParam.setSalaryItemIds(Arrays.stream(salaryItemStrIds.split(",")).map(Long::valueOf).collect(Collectors.toList()));
}
2023-04-23 17:30:43 +08:00
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<SalaryAcctSupplementParam, Map<String, Object>>(user).run(getSalaryAcctManager(user)::supplementAcctRecord, queryParam);
}
//---------------------------薪资核算 end ------------------------------------
2023-04-23 17:43:02 +08:00
//---------------------------数据采集 往期累计情况 start ------------------------------------
2023-04-24 14:55:32 +08:00
2023-04-23 17:43:02 +08:00
/**
* 恢复所有已申报的往期累计数据
*
* @return
*/
@GET
@Path("/addupsituation/recover")
@Produces(MediaType.APPLICATION_JSON)
public String recoverAddUpSituationHistoryData(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
2023-04-24 14:55:32 +08:00
return new ResponseResult<Map<String, Object>, Boolean>(user).run(getAddUpSituationManager(user)::recoverAddUpHistoryData);
2023-04-23 17:43:02 +08:00
}
//---------------------------数据采集 往期累计情况 end ------------------------------------
2023-04-23 17:30:43 +08:00
}