weaver-hrm-salary/src/com/engine/salary/web/SISchemeController.java

163 lines
5.9 KiB
Java

package com.engine.salary.web;
import com.engine.common.util.ParamUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.salary.entity.sischeme.dto.InsuranceSchemeListDTO;
import com.engine.salary.entity.sischeme.param.InsuranceSchemeParam;
import com.engine.salary.entity.sischeme.param.InsuranceSchemeReqParam;
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
import com.engine.salary.service.SISchemeService;
import com.engine.salary.service.impl.SISchemeServiceImpl;
import com.engine.salary.util.ResponseResult;
import com.engine.salary.util.page.PageInfo;
import com.engine.salary.wrapper.SISchemeWrapper;
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.Map;
/**
* @Author weaver_cl
* @Description: TODO 社保方案控制器
* @Date 2022/3/7
* @Version V1.0
**/
public class SISchemeController {
private SISchemeService getService(User user) {
return ServiceUtil.getService(SISchemeServiceImpl.class,user);
}
private SISchemeWrapper getSISchemeWrapper(User user) {
return ServiceUtil.getService(SISchemeWrapper.class,user);
}
/**
* 查询福利方案表单
* @param request
* @param response
* @return
*/
@GET
@Path("/getForm")
@Produces(MediaType.APPLICATION_JSON)
public String getForm(@Context HttpServletRequest request, @Context HttpServletResponse response,
@DefaultValue("SOCIAL_SECURITY") @QueryParam(value = "welfareTypeEnum") WelfareTypeEnum welfareTypeEnum) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
//InsuranceSchemeDTO insuranceSchemeDTO = InsuranceSchemeDTO.builder().welfareType(welfareTypeEnum).build();
map.put("welfareTypeEnum",welfareTypeEnum);
return ResponseResult.run(getService(user)::getForm, map);
}
/**
* 查询福利方案列表
* @param request
* @param response
* @return
*/
// @GET
// @Path("/getTable")
// @Produces(MediaType.APPLICATION_JSON)
// public String getTable(@Context HttpServletRequest request, @Context HttpServletResponse response,
// @QueryParam("searchCondition") String searchCondition, @QueryParam("welfareTypeEnum") WelfareTypeEnum welfareTypeEnum ) {
// User user = HrmUserVarify.getUser(request, response);
// InsuranceSchemeDTO insuranceSchemeDTO = InsuranceSchemeDTO.builder().welfareType(welfareTypeEnum).build();
// Integer welfareType = insuranceSchemeDTO.getWelfareType().getValue();
// Map<String, Object> map = ParamUtil.request2Map(request);
// map.put("searchCondition",searchCondition);
// map.put("welfareType",welfareType);
// return ResponseResult.run(getService(user)::listPage, map);
// }
@POST
@Path("/getTable")
@Produces(MediaType.APPLICATION_JSON)
public String list(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody InsuranceSchemeParam insuranceSchemeParam) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<InsuranceSchemeParam, PageInfo<InsuranceSchemeListDTO>>(user).run(getSISchemeWrapper(user)::listPage, insuranceSchemeParam);
}
/**
* 新增
* @param request
* @param response
* @return
*/
@POST
@Path("/insert")
@Produces(MediaType.APPLICATION_JSON)
public String insertScheme(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
map.put("insuranceSchemeReqParam",insuranceSchemeReqParam);
return ResponseResult.run(getService(user)::insertScheme, map);
}
/**
* 编辑
* @param request
* @param response
* @param insuranceSchemeReqParam
* @return
*/
@POST
@Path("/update")
@Produces(MediaType.APPLICATION_JSON)
public String update(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody InsuranceSchemeReqParam insuranceSchemeReqParam) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
map.put("insuranceSchemeReqParam",insuranceSchemeReqParam);
return ResponseResult.run(getService(user)::update, map);
}
/**
* 删除(接口中暂无)
* @param request
* @param response
* @param ids
* @return
*/
@POST
@Path("/delete")
@Produces(MediaType.APPLICATION_JSON)
public String deleteTaxRate(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection<Long> ids) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
map.put("ids",ids);
return ResponseResult.run(getService(user)::delete, map);
}
/**
* 复制福利方案表单
* @param request
* @param response
* @return
*/
@GET
@Path("/copyScheme")
@Produces(MediaType.APPLICATION_JSON)
public String copyScheme(@Context HttpServletRequest request, @Context HttpServletResponse response,
@QueryParam("id") Long id, @QueryParam("schemeName") String schemeName) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
map.put("id",id);
map.put("schemeName",schemeName);
return ResponseResult.run(getService(user)::copyScheme, map);
}
}