From ae60ad1dd19a86dd9723b199111bc3e2fb45f126 Mon Sep 17 00:00:00 2001
From: yubo <autumnal_wind@yeah.net>
Date: 星期五, 03 四月 2026 20:58:59 +0800
Subject: [PATCH] refactor(hr): 移除保险提醒相关冗余代码并调整退休延迟计算
---
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 117 insertions(+), 0 deletions(-)
diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java
index f5b688f..a9a02e8 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpBaseInfoController.java
@@ -103,6 +103,7 @@
throw new FebsException("已存在此身份证号:" + empBaseinfo.getCertificateNumb());
}
try {
+ empBaseinfo.setEntryType("20");
this.empBaseInfoService.createEmpBaseInfo(empBaseinfo);
} catch (Exception e) {
String message = "新增员工基本信息失败";
@@ -243,6 +244,7 @@
@ApiOperation(value = "关闭员工档案")
@PostMapping("dimission")
+ @PreAuthorize("hasAuthority('empBaseinfo:dimission')")
public void dimissionEmp(EmpDimissionLog empDimissionLog) throws FebsException {
try {
this.empBaseInfoService.closeEmpArchives(empDimissionLog);
@@ -254,6 +256,7 @@
}
@ApiOperation(value = "员工岗位变更")
@PostMapping("jobChange")
+ @PreAuthorize("hasAuthority('empBaseinfo:jobChange')")
public void changeEmpJob(EmpJobChange empJobChange) throws FebsException {
try {
this.empBaseInfoService.changeEmpJob(empJobChange);
@@ -288,4 +291,118 @@
throw new FebsException(message);
}
}
+
+ @ApiOperation(value = "社保提醒人员基本信息翻页列表")
+ @GetMapping("insurance/alert")
+ @PreAuthorize("hasAuthority('empBaseinfo:list')")
+ public FebsResponse insuranceAlertEmpBaseInfoList(QueryRequest request, EmpBaseInfo empBaseinfo) {
+ empBaseinfo.setTimeRange(2);
+ Map<String, Object> dataTable = FebsUtil.getDataTable(this.empBaseInfoService.findInsuranceEmpBaseInfos(request, empBaseinfo));
+ return new FebsResponse().data(dataTable);
+ }
+
+ @ApiOperation(value = "退休提醒人员基本信息翻页列表")
+ @GetMapping("retire/alert")
+ @PreAuthorize("hasAuthority('empBaseinfo:list')")
+ public FebsResponse retirementAlertEmpBaseInfoList(QueryRequest request, EmpBaseInfo empBaseinfo) {
+ empBaseinfo.setTimeRange(2);
+ Map<String, Object> dataTable = FebsUtil.getDataTable(this.empBaseInfoService.findRetirementEmpBaseInfos(request, empBaseinfo));
+ return new FebsResponse().data(dataTable);
+ }
+
+ @ApiOperation(value = "退休解骋")
+ @PostMapping("retire/dismiss")
+ @PreAuthorize("hasAuthority('empBaseinfo:dimission')")
+ public void retireDismissionEmp(EmpDimissionLog empDimissionLog) throws FebsException {
+ try {
+ empDimissionLog.setDimissionDate(new Date());
+
+ this.empBaseInfoService.closeEmpArchives(empDimissionLog);
+ } catch (Exception e) {
+ String message = "退休解骋员工失败";
+ log.error(message, e);
+ throw new FebsException(message);
+ }
+ }
+ @ApiOperation(value = "转正提醒人员基本信息翻页列表")
+ @GetMapping("probation/alert")
+ @PreAuthorize("hasAuthority('empBaseinfo:list')")
+ public FebsResponse probationAlertEmpBaseInfoList(QueryRequest request, EmpBaseInfo empBaseinfo) {
+ Map<String, Object> dataTable = FebsUtil.getDataTable(this.empBaseInfoService.findProbationEmpBaseInfos(request, empBaseinfo));
+ return new FebsResponse().data(dataTable);
+ }
+ @ApiOperation(value = "设置人员转正信息")
+ @PostMapping("probation/change")
+ @PreAuthorize("hasAuthority('empBaseinfo:dimission')")
+ public void probationChangeEmpBaseInfo(EmpBaseInfo empBaseinfo) {
+ this.empBaseInfoService.probationEmpBaseInfo(empBaseinfo);
+ }
+
+ @ApiOperation(value = "导出社保四险员工")
+ @PostMapping(value = "export/insurance")
+ @ControllerEndpoint(operation = "导出社保四险数据", exceptionMessage = "导出 Excel 失败")
+ public void exportInsuranceWithField(QueryRequest request, HttpServletResponse response, String exportField, EmpBaseInfo empBaseinfo) throws IOException {
+ request.setPageSize(25535);
+ request.setPageNum(1);
+ List<EmpBaseInfo> exportList = this.empBaseInfoService.findInsuranceEmpBaseInfos(request, empBaseinfo).getRecords();
+ exportExcel(response, exportField, exportList, "社保四险员工列表");
+ }
+
+ @ApiOperation(value = "导出退休提醒员工")
+ @PostMapping(value = "export/retirement")
+ @ControllerEndpoint(operation = "导出退休提醒数据", exceptionMessage = "导出 Excel 失败")
+ public void exportRetirementWithField(QueryRequest request, HttpServletResponse response, String exportField, EmpBaseInfo empBaseinfo) throws IOException {
+ request.setPageSize(25535);
+ request.setPageNum(1);
+ List<EmpBaseInfo> exportList = this.empBaseInfoService.findRetirementEmpBaseInfos(request, empBaseinfo).getRecords();
+ exportExcel(response, exportField, exportList, "退休提醒员工列表");
+ }
+
+ @ApiOperation(value = "导出转正提醒员工")
+ @PostMapping(value = "export/probation")
+ @ControllerEndpoint(operation = "导出转正提醒数据", exceptionMessage = "导出 Excel 失败")
+ public void exportProbationWithField(QueryRequest request, HttpServletResponse response, String exportField, EmpBaseInfo empBaseinfo) throws IOException {
+ request.setPageSize(25535);
+ request.setPageNum(1);
+ List<EmpBaseInfo> exportList = this.empBaseInfoService.findProbationEmpBaseInfos(request, empBaseinfo).getRecords();
+ exportExcel(response, exportField, exportList, "转正提醒员工列表");
+ }
+
+ @ApiOperation(value = "导出身份证到期员工")
+ @PostMapping(value = "export/sfz")
+ @ControllerEndpoint(operation = "导出身份证到期员工", exceptionMessage = "导出 Excel 失败")
+ public void exportIdNumberWithField(QueryRequest request, HttpServletResponse response, String exportField, EmpBaseInfo empBaseinfo) throws IOException {
+ request.setPageSize(25535);
+ request.setPageNum(1);
+ String index = empBaseinfo.getTimeRange().toString();
+ List<EmpBaseInfo> exportList = this.empBaseInfoService.baseInfoList(index, null, null, "25535", "1", "11", null).getRecords();
+ exportExcel(response, exportField, exportList, "身份证到期员工列表");
+ }
+
+ @ApiOperation(value = "导出合同到期员工")
+ @PostMapping(value = "export/expireHt")
+ @ControllerEndpoint(operation = "导出合同证到期员工", exceptionMessage = "导出 Excel 失败")
+ public void exportExpireHtWithField(QueryRequest request, HttpServletResponse response, String exportField, EmpBaseInfo empBaseinfo) throws IOException {
+ request.setPageSize(25535);
+ request.setPageNum(1);
+ String index = empBaseinfo.getTimeRange().toString();
+ List<EmpBaseInfo> exportList = this.empBaseInfoService.baseInfoHeList(index, null, null, "25535", "1", "12", null).getRecords();
+ exportExcel(response, exportField, exportList, "合同到期员工列表");
+ }
+
+ /**
+ * 通用 Excel 导出方法
+ *
+ * @param response HTTP 响应对象
+ * @param exportField 导出字段
+ * @param exportList 导出数据列表
+ * @param fileName 文件名(不含日期)
+ * @throws IOException IO 异常
+ */
+ private void exportExcel(HttpServletResponse response, String exportField, List<EmpBaseInfo> exportList, String fileName) throws IOException {
+ List<Map<String, Object>> allList = PoiExportExcel.getDataList(exportField, exportList, null);
+ Date currentDate = new Date();
+ String dateStr = DateUtil.formatDate(currentDate);
+ PoiExportExcel.exportCommonExcel(response, fileName + dateStr, fileName, allList);
+ }
}
--
Gitblit v1.8.0