| | |
| | | import cn.iocoder.yudao.module.hrm.service.salary.HrmSalaryCalculationService; |
| | | import cn.iocoder.yudao.module.system.api.dept.DeptApi; |
| | | import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; |
| | | import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| | | import io.swagger.v3.oas.annotations.Operation; |
| | | import io.swagger.v3.oas.annotations.Parameter; |
| | | import io.swagger.v3.oas.annotations.tags.Tag; |
| | |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT; |
| | | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| | | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| | | import static cn.iocoder.yudao.module.hrm.enums.ErrorCodeConstants.SALARY_CALCULATION_NOT_EXISTS; |
| | | |
| | | @Tag(name = "管理后台 - HRM 薪酬核算") |
| | | @RestController |
| | |
| | | @Resource |
| | | private DeptApi deptApi; |
| | | |
| | | @GetMapping("/my-page") |
| | | @Operation(summary = "获得我的薪资核算分页") |
| | | public CommonResult<PageResult<HrmSalaryCalculationRespVO>> getMySalaryCalculationPage(@Valid HrmSalaryCalculationPageReqVO pageReqVO) { |
| | | // 只查当前登录人自己的薪资,无需薪酬查询权限,登录即可访问 |
| | | PageResult<HrmSalaryCalculationDO> pageResult = salaryCalculationService |
| | | .getMySalaryCalculationPage(SecurityFrameworkUtils.getLoginUserId(), pageReqVO); |
| | | List<HrmSalaryCalculationRespVO> list = BeanUtils.toBean(pageResult.getList(), HrmSalaryCalculationRespVO.class); |
| | | return success(new PageResult<>(list, pageResult.getTotal())); |
| | | } |
| | | |
| | | @GetMapping("/my-get") |
| | | @Operation(summary = "获得我的薪资核算") |
| | | @Parameter(name = "id", description = "编号", required = true, example = "1024") |
| | | public CommonResult<HrmSalaryCalculationRespVO> getMySalaryCalculation(@RequestParam("id") Long id) { |
| | | HrmSalaryCalculationDO calculation = salaryCalculationService |
| | | .getMySalaryCalculation(id, SecurityFrameworkUtils.getLoginUserId()); |
| | | // 记录不存在、或不属于当前登录人时统一返回“不存在”,避免泄露他人薪资是否存在 |
| | | if (calculation == null) { |
| | | throw exception(SALARY_CALCULATION_NOT_EXISTS); |
| | | } |
| | | return success(BeanUtils.toBean(calculation, HrmSalaryCalculationRespVO.class)); |
| | | } |
| | | |
| | | @GetMapping("/page") |
| | | @Operation(summary = "获得薪酬核算分页") |
| | | @PreAuthorize("@ss.hasPermission('hrm:salary:query')") |