diff --git a/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareParam.java b/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareParam.java index 8af42f76a..036a3ad7a 100644 --- a/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareParam.java +++ b/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareParam.java @@ -8,6 +8,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; +import java.util.List; /** * 人员报送 @@ -34,4 +35,10 @@ public class EmployeeDeclareParam extends BaseQueryParam { */ @DataCheck(require = true,message = "参数错误,税款所属期参数格式错误") private Date taxCycle; + + /** + * 批量报送,个税扣缴义务人id集合 + */ + private List taxAgentIds; + } diff --git a/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareRefreshParam.java b/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareRefreshParam.java index b70cba7b5..073dd793a 100644 --- a/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareRefreshParam.java +++ b/src/com/engine/salary/entity/employeedeclare/param/EmployeeDeclareRefreshParam.java @@ -7,6 +7,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; +import java.util.List; /** * 刷新报送人员 @@ -25,12 +26,18 @@ public class EmployeeDeclareRefreshParam { /** * 个税扣缴义务人id */ - @DataCheck(require = true,message = "参数错误,个税扣缴义务人id不能为空") + @DataCheck(require = true, message = "参数错误,个税扣缴义务人id不能为空") private Long taxAgentId; /** * 税款所属期 */ - @DataCheck(require = true,message = "参数错误,税款所属期参数格式错误") + @DataCheck(require = true, message = "参数错误,税款所属期参数格式错误") private Date taxCycle; + + + /** + * 批量操作,个税扣缴义务人id集合 + */ + private List taxAgentIds; } diff --git a/src/com/engine/salary/web/EmployeeDeclareController.java b/src/com/engine/salary/web/EmployeeDeclareController.java index af3295194..356801c50 100644 --- a/src/com/engine/salary/web/EmployeeDeclareController.java +++ b/src/com/engine/salary/web/EmployeeDeclareController.java @@ -200,6 +200,14 @@ public class EmployeeDeclareController { return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::refresh, refreshParam); } + @POST + @Path("/batRefresh") + @Produces(MediaType.APPLICATION_JSON) + public String batRefresh(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody EmployeeDeclareRefreshParam refreshParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::batRefresh, refreshParam); + } + /** * 人员报送-获取整体的报送情况 * @@ -228,6 +236,14 @@ public class EmployeeDeclareController { return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::declare, employeeDeclareParam); } + @POST + @Path("/batDeclare") + @Produces(MediaType.APPLICATION_JSON) + public String batDeclare(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody EmployeeDeclareParam employeeDeclareParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::batDeclare, employeeDeclareParam); + } + /** * 人员报送-获取报送结果反馈 * @@ -242,6 +258,13 @@ public class EmployeeDeclareController { return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::getDeclareFeedback, employeeDeclareParam); } + @POST + @Path("/batGetDeclareFeedback") + @Produces(MediaType.APPLICATION_JSON) + public String batGetDeclareFeedback(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody EmployeeDeclareParam employeeDeclareParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getEmployeeDeclareWrapper(user)::batGetDeclareFeedback, employeeDeclareParam); + } /** * 人员报送-后端业务逻辑是否已经完成 diff --git a/src/com/engine/salary/wrapper/EmployeeDeclareWrapper.java b/src/com/engine/salary/wrapper/EmployeeDeclareWrapper.java index 9372a990a..23fad260f 100644 --- a/src/com/engine/salary/wrapper/EmployeeDeclareWrapper.java +++ b/src/com/engine/salary/wrapper/EmployeeDeclareWrapper.java @@ -452,6 +452,26 @@ public class EmployeeDeclareWrapper extends Service { return employeeDeclareRate.getIndex(); } + public String batRefresh(EmployeeDeclareRefreshParam param) { + List taxAgentIds = param.getTaxAgentIds(); + int success = 0; + int fail = 0; + StringBuilder msg = new StringBuilder(); + for (Long taxAgentId : taxAgentIds) { + param.setTaxAgentId(taxAgentId); + try { + getEmployeeDeclareService(user).refresh(param, Long.valueOf(user.getUID())); + success++; + } catch (Exception e) { + log.error("刷新数据失败:{}", e.getMessage(), e); + msg.append(e.getMessage()).append(";"); + fail++; + } finally { + } + } + return "成功:" + success + "个,失败:" + fail + "个,失败原因:" + msg; + } + /** * 人员报送-获取人员报送的整体情况 * @@ -497,6 +517,26 @@ public class EmployeeDeclareWrapper extends Service { return employeeDeclareRate.getIndex(); } + public String batDeclare(EmployeeDeclareParam param) { + List taxAgentIds = param.getTaxAgentIds(); + int success = 0; + int fail = 0; + StringBuilder msg = new StringBuilder(); + for (Long taxAgentId : taxAgentIds) { + param.setTaxAgentId(taxAgentId); + try { + getEmployeeDeclareService(user).declare(param); + success++; + } catch (Exception e) { + log.error("全部报送失败:{}", e.getMessage(), e); + msg.append(e.getMessage()).append(";"); + fail++; + } finally { + } + } + return "成功:" + success + "个,失败:" + fail + "个,失败原因:" + msg; + } + /** * 人员报送-获取报送结果反馈 * @@ -532,6 +572,31 @@ public class EmployeeDeclareWrapper extends Service { return employeeDeclareRate.getIndex(); } + public String batGetDeclareFeedback(EmployeeDeclareParam param) { + List taxAgentIds = param.getTaxAgentIds(); + int success = 0; + int fail = 0; + StringBuilder msg = new StringBuilder(); + for (Long taxAgentId : taxAgentIds) { + param.setTaxAgentId(taxAgentId); + try { + EmployeeDeclareRateDTO employeeDeclareRate = new EmployeeDeclareRateDTO() + .setIndex(UUID.randomUUID().toString()) + .setStatus(true) + .setFinish(false) + .setMsg(""); + getEmployeeDeclareService(user).getDeclareFeedback(param,employeeDeclareRate); + success++; + } catch (Exception e) { + log.error("获取报送结果反馈失败:{}", e.getMessage(), e); + msg.append(e.getMessage()).append(";"); + fail++; + } finally { + } + } + return "成功:" + success + "个,失败:" + fail + "个,失败原因:" + msg; + } + /** * 获取人员报送相关后端接口是否已经完成