package com.engine.salary.web; import com.engine.common.util.ParamUtil; import com.engine.common.util.ServiceUtil; import com.engine.salary.service.DemoService; import com.engine.salary.service.TaxAgentService; import com.engine.salary.service.impl.DemoServiceImpl; import com.engine.salary.service.impl.TaxAgentServiceImpl; import com.engine.salary.util.ResponseResult; import weaver.general.BaseBean; import weaver.hrm.HrmUserVarify; import weaver.hrm.User; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; public class DemoController { private BaseBean logger = new BaseBean(); private DemoService getService(User user) { return (DemoService) ServiceUtil.getService(DemoServiceImpl.class, user); } @GET @Path("/list") @Produces(MediaType.TEXT_PLAIN) public String list(@Context HttpServletRequest request, @Context HttpServletResponse response) { User user = HrmUserVarify.getUser(request, response); return ResponseResult.run(getService(user)::list, ParamUtil.request2Map(request)); } @GET @Path("/getForm") @Produces(MediaType.TEXT_PLAIN) public String getForm(@Context HttpServletRequest request, @Context HttpServletResponse response) { User user = HrmUserVarify.getUser(request, response); return ResponseResult.run(getService(user)::getForm, ParamUtil.request2Map(request)); } @POST @Path("/save") @Produces(MediaType.TEXT_PLAIN) public String getFrom(@Context HttpServletRequest request, @Context HttpServletResponse response) { User user = HrmUserVarify.getUser(request, response); return ResponseResult.run(getService(user)::save, getRequestParams(request,response)); } protected Map getRequestParams(HttpServletRequest request, HttpServletResponse response){ Map params = new HashMap(); Enumeration em = request.getParameterNames(); while(em.hasMoreElements()){ String paramname = em.nextElement(); params.put(paramname, request.getParameter(paramname)); } params.put("param_ip", request.getRemoteAddr());//加入ip return params; } }