package com.engine.salary.web;
import com.engine.common.util.ServiceUtil;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctRecordFormDTO;
import com.engine.salary.entity.salaryacct.param.SalaryAcctRecordQueryParam;
import com.engine.salary.util.ResponseResult;
import com.engine.salary.util.page.PageInfo;
import com.engine.salary.wrapper.SalaryAcctRecordWrapper;
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;
/**
* 薪资核算
*
Copyright: Copyright (c) 2022
* Company: 泛微软件
*
* @author qiantao
* @version 1.0
**/
public class SalaryAcctController {
private SalaryAcctRecordWrapper salaryAcctRecordWrapper;
private SalaryAcctRecordWrapper getSalaryAcctRecordWrapper(User user) {
return (SalaryAcctRecordWrapper) ServiceUtil.getService(SalaryAcctRecordWrapper.class, user);
}
// private SalaryAcctEmployeeWrapper salaryAcctEmployeeWrapper;
// private SalaryAcctResultWrapper salaryAcctResultWrapper;
// private SalaryAcctCheckResultWrapper salaryAcctCheckResultWrapper;
// private SalaryComparisonResultWrapper salaryComparisonResultWrapper;
// private SalaryAcctExcelWrapper salaryAcctExcelWrapper;
// private SalaryAcctExcelService salaryAcctExcelService;
// private SalaryBatchService salaryBatchService;
//
// /**********************************薪资核算记录相关 start*********************************/
//薪资核算列表
@POST
@Path("/list")
@Produces(MediaType.APPLICATION_JSON)
public String list(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryAcctRecordQueryParam queryParam) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult().run(getSalaryAcctRecordWrapper(user)::listPage, queryParam);
}
//薪资核算详情
@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().run(getSalaryAcctRecordWrapper(user)::getForm, id);
}
//
// @GetMapping("/getSalarySobCycle")
// @ApiOperation(("获取薪资核算的薪资周期、考勤周期等"))
// @WeaPermission
// public WeaResult getSalarySobCycle(@RequestParam(value = "salaryAcctRecordId") Long salaryAcctRecordId) {
// SalarySobCycleDTO salarySobCycle = salaryAcctRecordWrapper.getSalarySobCycleById(salaryAcctRecordId, TenantContext.getCurrentTenantKey());
// return WeaResult.success(salarySobCycle);
// }
//
// @PostMapping("/basic/save")
// @ApiOperation("保存薪资核算的基本信息")
// @WeaPermission
// public WeaResult saveBasic(@RequestBody @Validated SalaryAcctRecordSaveParam saveParam) {
// Long salaryAcctRecordId = salaryAcctRecordWrapper.save(saveParam, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
// return WeaResult.success(salaryAcctRecordId);
// }
//
// @PostMapping("/delete")
// @ApiOperation("删除薪资核算记录")
// @WeaPermission
// public WeaResult