diff --git a/src/com/engine/salary/web/SISchemeController.java b/src/com/engine/salary/web/SISchemeController.java index 13b532394..66bab3825 100644 --- a/src/com/engine/salary/web/SISchemeController.java +++ b/src/com/engine/salary/web/SISchemeController.java @@ -20,6 +20,7 @@ import com.engine.salary.util.SalaryI18nUtil; import com.engine.salary.util.page.PageInfo; import com.engine.salary.wrapper.SISchemeWrapper; import io.swagger.v3.oas.annotations.parameters.RequestBody; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.jetbrains.annotations.NotNull; @@ -48,15 +49,16 @@ import java.util.stream.Collectors; * @Date 2022/3/7 * @Version V1.0 **/ +@Slf4j public class SISchemeController { private SISchemeService getService(User user) { - return ServiceUtil.getService(SISchemeServiceImpl.class,user); + return ServiceUtil.getService(SISchemeServiceImpl.class, user); } private SISchemeWrapper getSISchemeWrapper(User user) { - return ServiceUtil.getService(SISchemeWrapper.class,user); + return ServiceUtil.getService(SISchemeWrapper.class, user); } private SIAccountService getSIAccountService(User user) { @@ -65,6 +67,7 @@ public class SISchemeController { /** * 查询福利方案表单 + * * @param request * @param response * @return @@ -77,13 +80,14 @@ public class SISchemeController { User user = HrmUserVarify.getUser(request, response); Map map = ParamUtil.request2Map(request); //InsuranceSchemeDTO insuranceSchemeDTO = InsuranceSchemeDTO.builder().welfareType(welfareTypeEnum).build(); - map.put("welfareTypeEnum",welfareTypeEnum); - return new ResponseResult< Map, Map>(user).run(getService(user)::getForm,map); + map.put("welfareTypeEnum", welfareTypeEnum); + return new ResponseResult, Map>(user).run(getService(user)::getForm, map); } /** * 查询福利方案列表 + * * @param request * @param response * @return @@ -99,6 +103,7 @@ public class SISchemeController { /** * 新增 + * * @param request * @param response * @return @@ -109,12 +114,13 @@ public class SISchemeController { public String insertScheme(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) { User user = HrmUserVarify.getUser(request, response); Map map = ParamUtil.request2Map(request); - map.put("insuranceSchemeReqParam",insuranceSchemeReqParam); - return new ResponseResult< Map, Map>(user).run(getService(user)::insertScheme,map); + map.put("insuranceSchemeReqParam", insuranceSchemeReqParam); + return new ResponseResult, Map>(user).run(getService(user)::insertScheme, map); } /** * 编辑方案主表和明细表数据 + * * @param request * @param response * @param insuranceSchemeReqParam @@ -123,15 +129,16 @@ public class SISchemeController { @POST @Path("/update") @Produces(MediaType.APPLICATION_JSON) - public String update(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) { + public String update(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) { User user = HrmUserVarify.getUser(request, response); Map map = ParamUtil.request2Map(request); - map.put("insuranceSchemeReqParam",insuranceSchemeReqParam); - return new ResponseResult< Map, Map>(user).run(getService(user)::update,map); + map.put("insuranceSchemeReqParam", insuranceSchemeReqParam); + return new ResponseResult, Map>(user).run(getService(user)::update, map); } /** * 编辑方案明细表数据 + * * @param request * @param response * @param schemeDetailList @@ -140,13 +147,14 @@ public class SISchemeController { @POST @Path("/updateSchemeDetail") @Produces(MediaType.APPLICATION_JSON) - public String updateSchemeDetail(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody List schemeDetailList) { + public String updateSchemeDetail(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List schemeDetailList) { User user = HrmUserVarify.getUser(request, response); - return new ResponseResult< List , List>(user).run(getService(user)::updateSchemeDetail,schemeDetailList); + return new ResponseResult, List>(user).run(getService(user)::updateSchemeDetail, schemeDetailList); } /** * 删除(接口中暂无) + * * @param request * @param response * @param insuranceSchemeReqParam @@ -158,13 +166,14 @@ public class SISchemeController { public String deleteTaxRate(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) { User user = HrmUserVarify.getUser(request, response); Map map = ParamUtil.request2Map(request); - map.put("ids",insuranceSchemeReqParam.getIds()); + map.put("ids", insuranceSchemeReqParam.getIds()); map.put("welfareTypeId", insuranceSchemeReqParam.getWelfareTypeEnum().getValue()); - return new ResponseResult< Map, Map>(user).run(getService(user)::delete,map); + return new ResponseResult, Map>(user).run(getService(user)::delete, map); } /** * 复制福利方案表单 + * * @param request * @param response * @return @@ -176,55 +185,61 @@ public class SISchemeController { @QueryParam("id") Long id, @QueryParam("schemeName") String schemeName) { User user = HrmUserVarify.getUser(request, response); Map map = ParamUtil.request2Map(request); - map.put("id",id); - map.put("schemeName",schemeName); - return new ResponseResult< Map, Map>(user).run(getService(user)::copyScheme,map); + map.put("id", id); + map.put("schemeName", schemeName); + return new ResponseResult, Map>(user).run(getService(user)::copyScheme, map); } /** * 导出档案 + * * @return */ @GET @Path("/export") @Produces(MediaType.APPLICATION_OCTET_STREAM) public Response export(@Context HttpServletRequest request, @Context HttpServletResponse response) { - InsuranceArchivesListParam param = buildInsuranceArchivesListParam(request); - User user = HrmUserVarify.getUser(request, response); - XSSFWorkbook workbook = getService(user).export(param); - String fileName ; - //表头 - if (param.getRunStatuses().size() > 0) { - if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "在缴员工"); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "停缴员工"); + try { + InsuranceArchivesListParam param = buildInsuranceArchivesListParam(request); + User user = HrmUserVarify.getUser(request, response); + XSSFWorkbook workbook = getService(user).export(param); + String fileName; + //表头 + if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出" + "-" + "停缴员工"); + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); + } } else { fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); } - } else { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导出"); - } - fileName = fileName + LocalDate.now(); - try { - fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } + fileName = fileName + LocalDate.now(); + try { + fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } - StreamingOutput output = outputStream -> { - workbook.write(outputStream); - outputStream.flush(); - }; - return Response.ok(output) - .header("Content-disposition", "attachment;filename=" + fileName) - .header("Cache-Control", "no-cache").build(); + StreamingOutput output = outputStream -> { + workbook.write(outputStream); + outputStream.flush(); + }; + return Response.ok(output) + .header("Content-disposition", "attachment;filename=" + fileName) + .header("Cache-Control", "no-cache").build(); + } catch (Exception e) { + log.error("社保福利档案导出异常", e); + throw e; + } } @@ -248,58 +263,63 @@ public class SISchemeController { /** * 导出档案和档案模板 + * * @return */ @GET @Path("/template/export") @Produces(MediaType.APPLICATION_OCTET_STREAM) public Response exportTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response) { + try { + InsuranceArchivesListParam param = buildInsuranceArchivesListParam(request); - InsuranceArchivesListParam param = buildInsuranceArchivesListParam(request); - - param.setExportData(Boolean.valueOf(request.getParameter("exportData"))); - param.setExtWelArchiveList(Boolean.valueOf(request.getParameter("extWelArchiveList"))); - User user = HrmUserVarify.getUser(request, response); - if (param.getInspectAll() != null && param.getInspectAll()) { - List insuranceAccountInspectPOS = getSIAccountService(user).allInspects(param.getIds(), param.getBillMonth()); - param.setEmployeeIds(insuranceAccountInspectPOS.stream().map(InsuranceAccountInspectPO::getEmployeeId).distinct().collect(Collectors.toList())); - } - XSSFWorkbook workbook = getService(user).exportTemplate(param); - String fileName; - //表头 - if (param.isExtWelArchiveList()) { - fileName = SalaryI18nUtil.getI18nLabel(0, "社保福利档案导入模板") + "-" + SalaryI18nUtil.getI18nLabel(542679, "非系统人员"); - } else if (param.getRunStatuses().size() > 0) { - if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "在缴员工"); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); - } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "停缴员工"); + param.setExportData(Boolean.valueOf(request.getParameter("exportData"))); + param.setExtWelArchiveList(Boolean.valueOf(request.getParameter("extWelArchiveList"))); + User user = HrmUserVarify.getUser(request, response); + if (param.getInspectAll() != null && param.getInspectAll()) { + List insuranceAccountInspectPOS = getSIAccountService(user).allInspects(param.getIds(), param.getBillMonth()); + param.setEmployeeIds(insuranceAccountInspectPOS.stream().map(InsuranceAccountInspectPO::getEmployeeId).distinct().collect(Collectors.toList())); + } + XSSFWorkbook workbook = getService(user).exportTemplate(param); + String fileName; + //表头 + if (param.isExtWelArchiveList()) { + fileName = SalaryI18nUtil.getI18nLabel(0, "社保福利档案导入模板") + "-" + SalaryI18nUtil.getI18nLabel(542679, "非系统人员"); + } else if (param.getRunStatuses().size() > 0) { + if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_ADD.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_ADD.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.PAYING.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "在缴员工"); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STAY_DEL.getValue()) && param.getRunStatuses().size() == 1) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + EmployeeStatusEnum.STAY_DEL.getDefaultLabel()); + } else if (param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_ADD.getValue()) && param.getRunStatuses().contains(EmployeeStatusEnum.STOP_PAYMENT_FROM_DEL.getValue()) && param.getRunStatuses().size() == 2) { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板" + "-" + "停缴员工"); + } else { + fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + } } else { fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); } - } else { - fileName = SalaryI18nUtil.getI18nLabel(85368, "社保福利档案导入模板"); + + + fileName = fileName + LocalDate.now(); + try { + fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + + StreamingOutput output = outputStream -> { + workbook.write(outputStream); + outputStream.flush(); + }; + return Response.ok(output) + .header("Content-disposition", "attachment;filename=" + fileName) + .header("Cache-Control", "no-cache").build(); + } catch (Exception e) { + log.error("社保福利档案模板导出异常", e); + throw e; } - - - fileName = fileName + LocalDate.now(); - try { - fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - - StreamingOutput output = outputStream -> { - workbook.write(outputStream); - outputStream.flush(); - }; - return Response.ok(output) - .header("Content-disposition", "attachment;filename=" + fileName) - .header("Cache-Control", "no-cache").build(); } @NotNull @@ -307,13 +327,13 @@ public class SISchemeController { InsuranceArchivesListParam param = new InsuranceArchivesListParam(); String ids = request.getParameter("ids"); - if(StringUtils.isNotBlank(ids)){ - param.setIds( Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList())); + if (StringUtils.isNotBlank(ids)) { + param.setIds(Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList())); } String runStatuses = request.getParameter("runStatuses"); - if(StringUtils.isNotBlank(runStatuses)){ - param.setRunStatuses( Arrays.stream(runStatuses.split(",")).map(String::valueOf).collect(Collectors.toList())); + if (StringUtils.isNotBlank(runStatuses)) { + param.setRunStatuses(Arrays.stream(runStatuses.split(",")).map(String::valueOf).collect(Collectors.toList())); } String statusesStr = request.getParameter("statusesStr"); @@ -360,5 +380,4 @@ public class SISchemeController { } - }