package com.engine.salary.report.web; import com.engine.common.util.ServiceUtil; import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam; import com.engine.salary.report.entity.param.SalaryStatisticsReportQueryParam; import com.engine.salary.report.entity.param.SalaryStatisticsReportSaveParam; import com.engine.salary.report.entity.po.SalaryStatisticsReportPO; import com.engine.salary.report.wrapper.SalaryStatisticsReportWrapper; import com.engine.salary.util.ResponseResult; import io.swagger.v3.oas.annotations.parameters.RequestBody; import weaver.hrm.HrmUserVarify; import weaver.hrm.User; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.ws.rs.*; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; import java.util.Collection; import java.util.List; import java.util.Map; /** * @Description: 薪酬统计报表 * @Author: wangxiangzhong * @Date: 2022/12/15 11:40 */ public class SalaryStatisticsReportController { private SalaryStatisticsReportWrapper getSalaryStatisticsReportWrapper(User user) { return ServiceUtil.getService(SalaryStatisticsReportWrapper.class, user); } /** * 薪酬统计报表列表 * * @return */ @POST @Path("/list") @Produces(MediaType.APPLICATION_JSON) public String list(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsReportQueryParam queryParam) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult>>(user).run(getSalaryStatisticsReportWrapper(user)::list, queryParam); } /** * 获取薪酬统计报表表单 * * @return */ @GET @Path("/getForm") @Produces(MediaType.APPLICATION_JSON) public String getForm(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "id") Long id) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult(user).run(getSalaryStatisticsReportWrapper(user)::getFrom, id); } /** * 保存薪酬统计报表 * * @param param * @return */ @POST @Path("/save") @Produces(MediaType.APPLICATION_JSON) public String save(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsReportSaveParam param) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult(user).run(getSalaryStatisticsReportWrapper(user)::save, param); } /** * 删除薪酬统计报表 * * @param ids * @return */ @POST @Path("/delete") @Produces(MediaType.APPLICATION_JSON) public String delete(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult, Map>(user).run(getSalaryStatisticsReportWrapper(user)::delete, ids); } // @GetMapping("/getSearchCondition") // @ApiOperation("获取薪酬统计报表查询条件") // @WeaPermission(publicPermission = true) // public WeaResult getSearchCondition(@RequestParam Long id) { // return WeaResult.success(salaryStatisticsReportWrapper.getSearchCondition(id, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); // } // /** // * 保存薪酬统计报表查询条件 // * // * @param param // * @return // */ // @PostMapping("/saveSearchCondition") // @ApiOperation("保存薪酬统计报表查询条件") // @WeaPermission(publicPermission = true) // public WeaResult saveSearchCondition(@RequestBody SalaryStatisticsSearchConditionSaveParam param) { // return WeaResult.success(salaryStatisticsReportWrapper.saveSearchCondition(param, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); // } /** * 获取薪酬统计报表数据 * * @param param * @return */ @POST @Path("/getData") @Produces(MediaType.APPLICATION_JSON) public String delete(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsReportDataQueryParam param) { User user = HrmUserVarify.getUser(request, response); return new ResponseResult>(user).run(getSalaryStatisticsReportWrapper(user)::getData, param); } // /** // * 导出报表数据 // * // * @param param // * @return // */ // @PostMapping("/exportData") // @ApiOperation("导出报表数据") // @WeaPermission(publicPermission = true) // public WeaResult> exportData(@RequestBody SalaryStatisticsReportDataQueryParam param) { // return WeaResult.success(salaryStatisticsReportWrapper.exportData(param, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); }