package com.gkhy.safePlatform.specialWork.controller;
|
|
import cn.hutool.core.date.DateUtil;
|
import com.gkhy.safePlatform.commons.enums.ResultCodes;
|
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
|
import com.gkhy.safePlatform.specialWork.service.WorkCountService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.time.LocalDateTime;
|
import java.util.Date;
|
import java.util.Map;
|
|
@RestController
|
@RequestMapping("/specialWork/analyse")
|
public class WorkAnalyseController {
|
|
@Autowired
|
private WorkCountService workCountService;
|
|
/**
|
* 八大作业各分类分布数据
|
* @return
|
*/
|
@PostMapping("/everyType/dep")
|
public Object analyseEveryTypeWorkByDep(@RequestBody QueryParam param){
|
LocalDateTime st = DateUtil.parseLocalDateTime(param.startTime);
|
LocalDateTime et = DateUtil.parseLocalDateTime(param.endTime);
|
SearchResultVO resultVO = new SearchResultVO<>();
|
resultVO.setCode(ResultCodes.OK);
|
resultVO.setData(workCountService.countEveryTypeByOptions(st,et,param.depId));
|
return resultVO;
|
}
|
|
|
/**
|
* 统计指定部门的直属子部门作业总数量
|
* @return
|
*/
|
@PostMapping("/allWork/dep")
|
public Object analyseSubDepWork(@RequestBody QueryParam param){
|
LocalDateTime st = DateUtil.parseLocalDateTime(param.startTime);
|
LocalDateTime et = DateUtil.parseLocalDateTime(param.endTime);
|
SearchResultVO resultVO = new SearchResultVO<>();
|
resultVO.setCode(ResultCodes.OK);
|
resultVO.setData(workCountService.countWorkBySubDeps(st,et,param.depId,param.type));
|
return resultVO;
|
}
|
|
/**
|
* 统计指定部门最近12个月的作业数量,按月份统计
|
* @param depId
|
* @return
|
*/
|
@GetMapping("/12month/dep")
|
public Object analyse12MonthAllWorkByDep(Long depId){
|
SearchResultVO resultVO = new SearchResultVO<>();
|
resultVO.setCode(ResultCodes.OK);
|
resultVO.setData(workCountService.count12MonthWorkByDep(depId));
|
return resultVO;
|
}
|
|
public static class QueryParam{
|
private String startTime;
|
private String endTime;
|
private Long depId;
|
private Byte type;
|
|
public String getStartTime() {
|
return startTime;
|
}
|
|
public void setStartTime(String startTime) {
|
this.startTime = startTime;
|
}
|
|
public String getEndTime() {
|
return endTime;
|
}
|
|
public void setEndTime(String endTime) {
|
this.endTime = endTime;
|
}
|
|
public Long getDepId() {
|
return depId;
|
}
|
|
public void setDepId(Long depId) {
|
this.depId = depId;
|
}
|
|
public Byte getType() {
|
return type;
|
}
|
|
public void setType(Byte type) {
|
this.type = type;
|
}
|
}
|
}
|