diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveItemMapper.xml b/src/com/engine/salary/mapper/archive/SalaryArchiveItemMapper.xml index 10a6325f8..85f95635f 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveItemMapper.xml +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveItemMapper.xml @@ -1057,8 +1057,8 @@ AND t.salary_archive_id IN - - #{salaryItemId} + + #{salaryArchivesId} diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java index 7ecf03545..ce2bd1414 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java @@ -10,105 +10,112 @@ import java.util.List; public interface SalaryArchiveMapper { - /** + /** * 查询所有记录 * * @return 返回集合,没有返回空List */ - List listAll(); + List listAll(); - /** - * 修改,修改所有字段 - * - * @param salaryArchive 修改的记录 - * @return 返回影响行数 - */ - int update(SalaryArchivePO salaryArchive); - + /** + * 修改,修改所有字段 + * + * @param salaryArchive 修改的记录 + * @return 返回影响行数 + */ + int update(SalaryArchivePO salaryArchive); - /** + + /** * 根据主键查询 * * @param id 主键 * @return 返回记录,没有返回null */ - SalaryArchivePO getById(Long id); - - /** + SalaryArchivePO getById(Long id); + + /** * 删除记录 * * @param salaryArchive 待删除的记录 * @return 返回影响行数 */ - int delete(SalaryArchivePO salaryArchive); + int delete(SalaryArchivePO salaryArchive); - /** - * 查询薪资档案列表 - * @param param - * @return - */ - List list(@Param("param") SalaryArchiveQueryParam param); + /** + * 查询薪资档案列表 + * + * @param param + * @return + */ + List list(@Param("param") SalaryArchiveQueryParam param); - /** - * 批量插入 - * @param salaryArchiveSaves - */ - void batchInsert(@Param("collection") List salaryArchiveSaves); + /** + * 批量插入 + * + * @param salaryArchiveSaves + */ + void batchInsert(@Param("collection") List salaryArchiveSaves); - /** - * 批量更新 - * - * @param salaryArchiveUpdates - */ - void batchUpdate(@Param("collection") List salaryArchiveUpdates); + /** + * 批量更新 + * + * @param salaryArchiveUpdates + */ + void batchUpdate(@Param("collection") List salaryArchiveUpdates); - /** - * 获取历史数据 - * @return - */ - List getHistoryData(); + /** + * 获取历史数据 + * + * @return + */ + List getHistoryData(); - /** - * 删除历史数据 - * @param build - * @return - */ - void batchDeleteHistoryData(SalaryArchivePO build); + /** + * 删除历史数据 + * + * @param build + * @return + */ + void batchDeleteHistoryData(SalaryArchivePO build); - /** - * 条件查询 - * @param param - * @return - */ - List listSome(@Param("param") SalaryArchivePO param); + /** + * 条件查询 + * + * @param param + * @return + */ + List listSome(@Param("param") SalaryArchivePO param); - /** - * 获取人员状态为空的数据 - * @return - */ - List getStatusIsNullData(); + /** + * 获取人员状态为空的数据 + * + * @return + */ + List getStatusIsNullData(); - /** - * 更新状态 - * @param build - */ - void updateStatus(SalaryArchivePO build); + /** + * 更新状态 + * + * @param build + */ + void updateStatus(SalaryArchivePO build); - void updateRunStatusByIdsAndPayEndDate(SalaryArchivePO po); + void updateRunStatusByIdsAndPayEndDate(SalaryArchivePO po); - void updateFixed(SalaryArchivePO build); + void updateFixed(SalaryArchivePO build); - void updateSuspend(SalaryArchivePO build); + void updateSuspend(SalaryArchivePO build); - void gotoFixed(Collection ids); + void gotoFixed(@Param("ids") Collection ids); - void gotoStop(Collection ids); + void gotoStop(@Param("ids") Collection ids); - void gotoPendingFromStop(Collection ids); + void gotoPendingFromStop(@Param("ids") Collection ids); - void gotoFixedFromStop(Collection ids); + void gotoFixedFromStop(@Param("ids") Collection ids); } \ No newline at end of file diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml index 8f1adbbec..db9827f7e 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml @@ -473,12 +473,18 @@ - AND t.run_status = #{runStatus} + AND t.run_status = #{param.runStatus} AND t.run_status IN - + + #{runStatus} + + + + AND t.id IN + #{id} diff --git a/src/com/engine/salary/service/impl/SalaryArchiveItemServiceImpl.java b/src/com/engine/salary/service/impl/SalaryArchiveItemServiceImpl.java index 2523c43bf..de4b2fdf9 100644 --- a/src/com/engine/salary/service/impl/SalaryArchiveItemServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryArchiveItemServiceImpl.java @@ -418,7 +418,6 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi .salaryArchivesIds(finalSalaryItemIds) .salaryItemIds(finalSalaryItemIds) .effectiveTime(new Date()).build()))); - // 解密 return salaryArchiveItems; } } diff --git a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java index 3e5b0a1f9..9a2d5be01 100644 --- a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java @@ -1901,6 +1901,9 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe } List salaryArchiveList = getSalaryArchiveMapper().listSome(SalaryArchivePO.builder().ids(ids).runStatus(SalaryArchiveStatusEnum.PENDING.getValue()).build()); + if (CollectionUtils.isEmpty(salaryArchiveList)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(145969, "档案不存在!")); + } List unableList = salaryArchiveList.stream().filter(f -> f.getPayStartDate() == null).collect(Collectors.toList()); @@ -1996,6 +1999,10 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe .runStatus(SalaryArchiveStatusEnum.SUSPEND.getValue()) .build()); + if (CollectionUtils.isEmpty(oldList)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(145969, "档案不存在!")); + } + List unableList = oldList.stream().filter(f -> f.getPayEndDate() == null).collect(Collectors.toList()); int total = ids.size(); int errorCount = unableList.size(); @@ -2075,6 +2082,12 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe .runStatusList(Arrays.asList(SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue(), SalaryArchiveStatusEnum.STOP_FROM_SUSPEND.getValue())) .build()); + + if (CollectionUtils.isEmpty(oldList)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(145969, "档案不存在!")); + } + + List taxAgentManageRangeEmployees = getTaxAgentService(user).listTaxAgentAndEmployee((long) user.getUID()); List oldPendingList = oldList.stream().filter(f -> f.getRunStatus().equals(SalaryArchiveStatusEnum.STOP_FROM_PENDING.getValue())).collect(Collectors.toList()); boolean isNotExist = oldPendingList.stream().anyMatch(te -> taxAgentManageRangeEmployees.stream().noneMatch(p -> p.getEmployeeId() != null && p.getEmployeeId().equals(te.getEmployeeId()) && p.getTaxAgentId().equals(te.getTaxAgentId()))); diff --git a/src/com/engine/salary/web/SalaryArchiveController.java b/src/com/engine/salary/web/SalaryArchiveController.java index a7d9758e9..c3917413b 100644 --- a/src/com/engine/salary/web/SalaryArchiveController.java +++ b/src/com/engine/salary/web/SalaryArchiveController.java @@ -29,10 +29,7 @@ import javax.ws.rs.core.StreamingOutput; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.time.LocalDate; -import java.util.Arrays; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -97,33 +94,30 @@ public class SalaryArchiveController { * @param ids * @return */ -// @POST -// @Path("/pendingList") -// @Produces(MediaType.APPLICATION_JSON) -// public String pendingList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryArchiveQueryParam queryParam) { -// User user = HrmUserVarify.getUser(request, response); -// return new ResponseResult>(user).run(getSalaryArchiveWrapper(user)::pendingList, queryParam); -// } -// @PostMapping("/gotoFixed") -// @ApiOperation("设为定薪员工") -// @WeaPermission -// public WeaResult> gotoFixed(@RequestBody Collection ids) { -// return WeaResult.success(salaryArchiveWrapper.gotoFixed(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } + @POST + @Path("/gotoFixed") + @Produces(MediaType.APPLICATION_JSON) + public String gotoFixed(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, Map>(user).run(getSalaryArchiveWrapper(user)::gotoFixed, ids); + } + + + /** + * 一键全部设为定薪员工 + * + * @param queryParam + * @return + */ + @POST + @Path("/allGotoFixed") + @Produces(MediaType.APPLICATION_JSON) + public String allGotoFixed(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryArchiveQueryParam queryParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getSalaryArchiveWrapper(user)::allGotoFixed, queryParam); + } + -// /** -// * 一键全部设为定薪员工 -// * -// * @param queryParam -// * @return -// */ -// @PostMapping("/allGotoFixed") -// @ApiOperation("一键全部设为定薪员工") -// @WeaPermission -// public WeaResult> allGotoFixed(@RequestBody SalaryArchiveQueryParam queryParam) { -// return WeaResult.success(salaryArchiveWrapper.allGotoFixed(queryParam, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } -// // /** // * 删除待定薪待办 // * @@ -166,32 +160,36 @@ public class SalaryArchiveController { return new ResponseResult>(user).run(getSalaryArchiveWrapper(user)::suspendList, queryParam); } -// /** -// * 停薪 -// * -// * @param ids -// * @return -// */ -// @PostMapping("/gotoStop") -// @ApiOperation("停薪") -// @WeaPermission -// public WeaResult> gotoStop(@RequestBody Collection ids) { -// return WeaResult.success(salaryArchiveWrapper.gotoStop(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } -// -// /** -// * 一键全部停薪 -// * -// * @param queryParam -// * @return -// */ -// @PostMapping("/allGotoStop") -// @ApiOperation("一键全部停薪") -// @WeaPermission -// public WeaResult> allGotoStop(@RequestBody SalaryArchiveQueryParam queryParam) { -// return WeaResult.success(salaryArchiveWrapper.allGotoStop(queryParam, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } -// + /** + * 停薪 + * + * @param ids + * @return + */ + @POST + @Path("/gotoStop") + @Produces(MediaType.APPLICATION_JSON) + public String gotoStop(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, Map>(user).run(getSalaryArchiveWrapper(user)::gotoStop, ids); + } + + + /** + * 一键全部停薪 + * + * @param queryParam + * @return + */ + @POST + @Path("/allGotoStop") + @Produces(MediaType.APPLICATION_JSON) + public String allGotoStop(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryArchiveQueryParam queryParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getSalaryArchiveWrapper(user)::allGotoStop, queryParam); + } + + // /** // * 删除待停薪待办 // * @@ -220,21 +218,19 @@ public class SalaryArchiveController { } -// /** -// * 取消停薪 -// * -// * @param ids -// * @return -// */ -// @PostMapping("/cancelStop") -// @ApiOperation("取消停薪") -// @WeaPermission -// public WeaResult cancelStop(@RequestBody Collection ids) { -// return WeaResult.success(salaryArchiveWrapper.cancelStop(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } -// -// -// + /** + * 取消停薪 + * + * @param ids + * @return + */ + @POST + @Path("/cancelStop") + @Produces(MediaType.APPLICATION_JSON) + public String cancelStop(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, Map>(user).run(getSalaryArchiveWrapper(user)::cancelStop, ids); + } /** diff --git a/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java b/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java index bf500e9a8..79a65bf51 100644 --- a/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java @@ -251,34 +251,30 @@ public class SalaryArchiveWrapper extends Service { // * @param currentTenantKey // * @return // */ -// public String deletePendingTodo(Collection ids, Long currentEmployeeId, String currentTenantKey) { -// return getSalaryArchiveService(user).deletePendingTodo(ids, currentEmployeeId, currentTenantKey); +// public String deletePendingTodo(Collection ids) { +// return getSalaryArchiveService(user).deletePendingTodo(ids); // } -// -// /** -// * 停薪 -// * -// * @param ids -// * @param currentEmployeeId -// * @param currentTenantKey -// * @return -// */ -// public Map gotoStop(Collection ids, Long currentEmployeeId, String currentTenantKey) { -// return getSalaryArchiveService(user).gotoStop(ids, currentEmployeeId, currentTenantKey); -// } -// -// /** -// * 一键全部停薪 -// * -// * @param queryParam -// * @param currentEmployeeId -// * @param currentTenantKey -// * @return -// */ -// public Map allGotoStop(SalaryArchiveQueryParam queryParam, Long currentEmployeeId, String currentTenantKey) { -// return getSalaryArchiveService(user).allGotoStop(queryParam, currentEmployeeId, currentTenantKey); -// } -// + + /** + * 停薪 + * + * @param ids + * @return + */ + public Map gotoStop(Collection ids) { + return getSalaryArchiveService(user).gotoStop(ids); + } + + /** + * 一键全部停薪 + * + * @param queryParam + * @return + */ + public Map allGotoStop(SalaryArchiveQueryParam queryParam) { + return getSalaryArchiveService(user).allGotoStop(queryParam); + } + // /** // * 删除待停薪待办 // * @@ -287,22 +283,20 @@ public class SalaryArchiveWrapper extends Service { // * @param currentTenantKey // * @return // */ -// public String deleteSuspendTodo(Collection ids, Long currentEmployeeId, String currentTenantKey) { -// return getSalaryArchiveService(user).deleteSuspendTodo(ids, currentEmployeeId, currentTenantKey); -// } -// -// /** -// * 取消停薪 -// * -// * @param ids -// * @param currentEmployeeId -// * @param currentTenantKey -// * @return -// */ -// public String cancelStop(Collection ids, Long currentEmployeeId, String currentTenantKey) { -// return getSalaryArchiveService(user).cancelStop(ids, currentEmployeeId, currentTenantKey); +// public String deleteSuspendTodo(Collection ids) { +// return getSalaryArchiveService(user).deleteSuspendTodo(ids); // } + /** + * 取消停薪 + * + * @param ids + * @return + */ + public String cancelStop(Collection ids) { + return getSalaryArchiveService(user).cancelStop(ids); + } + /** * 获取薪资档案详情表单