You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
weaver-develop/src/com/engine/thinktrans/web/ReportCollectController.java

71 lines
2.9 KiB
Java

package com.engine.thinktrans.web;
import com.engine.common.util.ServiceUtil;
import com.engine.thinktrans.entity.param.TendencyReportParam;
import com.engine.thinktrans.entity.vo.TendencyReportVO;
import com.engine.thinktrans.service.ReportCollectService;
import com.engine.thinktrans.service.impl.ReportCollectServiceImpl;
import com.engine.thinktrans.util.ResponseResult;
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.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.Map;
/**
* @Author liang.cheng
* @Date 2023/11/16 10:42 AM
* @Description: TODO
* @Version 1.0
*/
public class ReportCollectController {
private ReportCollectService getReportCollectService(User user) {
return ServiceUtil.getService(ReportCollectServiceImpl.class,user);
}
@GET
@Path("/personTendency")
@Produces(MediaType.APPLICATION_JSON)
public String getPersonTendency(@Context HttpServletRequest request, @Context HttpServletResponse response,
@QueryParam("deptIds") String deptIds, @QueryParam("year") Integer year, @QueryParam("useKind") String useKind) {
User user = HrmUserVarify.getUser(request, response);
TendencyReportParam tendencyReportParam = TendencyReportParam.builder().deptIds(deptIds).year(year).useKind(useKind).build();
return new ResponseResult<TendencyReportParam, TendencyReportVO>(user).run(getReportCollectService(user) :: getPersonTendency,tendencyReportParam);
}
@GET
@Path("/onJobStatistics")
@Produces(MediaType.APPLICATION_JSON)
public String getOnJobStatistics(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<String, TendencyReportVO>(user).run(getReportCollectService(user) :: getOnJobStatistics);
}
@GET
@Path("/personnelSize")
@Produces(MediaType.APPLICATION_JSON)
public String getPersonnelSize(@Context HttpServletRequest request, @Context HttpServletResponse response,@QueryParam("year") Integer year) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<Integer, TendencyReportVO>(user).run(getReportCollectService(user) :: getPersonnelSize,year);
}
@GET
@Path("/top")
@Produces(MediaType.APPLICATION_JSON)
public String getTop(@Context HttpServletRequest request, @Context HttpServletResponse response,@QueryParam("year") Integer year) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<Integer, Map<String,Object>>(user).run(getReportCollectService(user) :: getTop,year);
}
}