AsraDailyController.java
6.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
package com.zteits.oa.report.web;
import com.alibaba.fastjson.JSONObject;
import com.xiaoleilu.hutool.date.DateUtil;
import com.xiaoleilu.hutool.util.CollectionUtil;
import com.zteits.oa.api.base.bean.BizResult;
import com.zteits.oa.api.base.bean.PageBean;
import com.zteits.oa.api.base.constants.ErrorType;
import com.zteits.oa.api.base.constants.SessionEnum;
import com.zteits.oa.api.base.exception.BizException;
import com.zteits.oa.api.dto.asradaily.AsraDailyDTO;
import com.zteits.oa.api.dto.asradaily.AsraDailyOpNumForCurrentDayDTO;
import com.zteits.oa.api.dto.asradaily.QueryAsraDailyAllForListReqDTO;
import com.zteits.oa.api.dto.asradaily.param.AsraDailyForTotalNumAndDetailReq;
import com.zteits.oa.api.dto.asradaily.AsraDailyDateChangeDTO;
import com.zteits.oa.api.dto.asradaily.param.AsraDailyQueryReq;
import com.zteits.oa.api.dto.asradaily.param.AsraDailySaveOrUpdateReq;
import com.zteits.oa.api.dto.asraop.AsraOpDTO;
import com.zteits.oa.api.service.report.query.AsraDailyQueryService;
import com.zteits.oa.util.pagepaper.DateForObjectUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;
@Api(value = "日报系统-日报管理", description = "日报系统-日报管理")
@RestController
@RequestMapping("/asraDaily")
public class AsraDailyController {
private static final Logger logger = LoggerFactory.getLogger(AsraDailyController.class);
@Autowired
private AsraDailyQueryService asraDailyQueryService;
@RequestMapping(value="/queryAsraDailyList",method = RequestMethod.POST)
public BizResult<List<AsraDailyDTO>> queryAsraDailyList(@RequestBody AsraDailyQueryReq asraDailyQueryReq, HttpServletRequest request){
logger.info("日报系统-日报管理-根据登录人查询日报信息入参:{}", JSONObject.toJSON(asraDailyQueryReq));
/**1.根据当前登录人查询登录人下面管理的员工-缓存中获取*/
AsraOpDTO asraOpDTO = (AsraOpDTO)request.getSession().getAttribute(SessionEnum.USER_INFO.key());
/**2.判断登录人和时间查询日报*/
Date dailyDate = DateUtil.parseDate(asraDailyQueryReq.getDailyDate());
AsraDailyDateChangeDTO asraDailyDateChangeDTO = DateForObjectUtil.getAsraDailyDTO(dailyDate);
asraDailyQueryReq.setAsarOpId(asraOpDTO.getId());
BeanUtils.copyProperties(asraDailyDateChangeDTO,asraDailyQueryReq);
logger.info("日报系统-日报管理-根据登录人查询日报信息入参:{}", JSONObject.toJSON(asraDailyDateChangeDTO));
BizResult<List<AsraDailyDTO>> result = asraDailyQueryService.queryAsraDailyList(asraDailyQueryReq);
logger.info("日报系统-日报管理-根据登录人查询日报信息结束");
return result;
}
/**
* 工时查询-当天提交及未提交人数汇总.<br/>
* @param request
* @return
* 2018年8月1日 wangfs.<br/>
*/
@RequestMapping("/queryAsraDailyOpNumForCurrentDay")
@ApiOperation("工时查询-当天填报人数统计(汇总)")
public BizResult<AsraDailyOpNumForCurrentDayDTO> queryAsraDailyOpNumForCurrentDay(@RequestBody AsraDailyForTotalNumAndDetailReq request,HttpServletRequest servletRequest){
logger.info("--begin工时查询-当天填报人数统计(汇总),入参={}",JSONObject.toJSON(request));
AsraOpDTO asraOpDTO = (AsraOpDTO)servletRequest.getSession().getAttribute(SessionEnum.USER_INFO.key());
if(asraOpDTO == null ){
throw new BizException(ErrorType.PARAMM_NULL,"获取session为空");
}
request.setOpId(asraOpDTO.getId());
BizResult<AsraDailyOpNumForCurrentDayDTO> result = asraDailyQueryService.queryAsraDailyOpNumForCurrentDay(request);
logger.info("--end工时查询-当天填报人数统计(汇总),结果={}",JSONObject.toJSON(result));
return result;
}
/**
* 工时查询-所有员工及自己或者自己日报.<br/>
* @param request
* @return
* 2018年8月1日 wangfs.<br/>
*/
@RequestMapping("/queryAsraDailyAllForList")
@ApiOperation("工时查询-所有员工及自己或者自己日报")
public BizResult<QueryAsraDailyAllForListReqDTO> queryAsraDailyAllForList(@RequestBody AsraDailyForTotalNumAndDetailReq request,HttpServletRequest servletRequest){
logger.info("--begin工时查询-所有员工及自己或者自己日报,入参={}",JSONObject.toJSON(request));
AsraOpDTO asraOpDTO = (AsraOpDTO)servletRequest.getSession().getAttribute(SessionEnum.USER_INFO.key());
if(asraOpDTO == null ){
throw new BizException(ErrorType.PARAMM_NULL,"获取session为空");
}
request.setOpId(asraOpDTO.getId());
BizResult<QueryAsraDailyAllForListReqDTO> result = asraDailyQueryService.queryAsraDailyAllForList(request);
logger.info("--end工时查询-所有员工及自己或者自己日报,结果={}",JSONObject.toJSON(result));
return result;
}
@ApiOperation("保存或者修改工时日报")
@PostMapping("/saveOrUpdateAsraDaily")
public BizResult<Integer> saveOrUpdateAsraDaily(@RequestBody AsraDailySaveOrUpdateReq asraDailySaveOrUpdateReq,HttpServletRequest request) {
logger.info("日报系统-日报管理-根据登录人提交日报信息入参:{}", JSONObject.toJSON(asraDailySaveOrUpdateReq));
/**1.根据当前登录人查询登录人下面管理的员工-缓存中获取*/
AsraOpDTO asraOpDTO = (AsraOpDTO)request.getSession().getAttribute(SessionEnum.USER_INFO.key());
/**2.判断登录人和时间查询日报*/
Date dailyDate = DateUtil.parseDate(asraDailySaveOrUpdateReq.getDailyDate());
AsraDailyDateChangeDTO asraDailyDateChangeDTO = DateForObjectUtil.getAsraDailyDTO(dailyDate);
asraDailySaveOrUpdateReq.setAsarOpId(asraOpDTO.getId());
asraDailySaveOrUpdateReq.setAsarOpName(asraOpDTO.getOpName());
asraDailySaveOrUpdateReq.setDataState(1);
BeanUtils.copyProperties(asraDailyDateChangeDTO,asraDailySaveOrUpdateReq);
BizResult<Integer> bizResult = asraDailyQueryService.saveOrUpdateAsraDaily(asraDailySaveOrUpdateReq);
return bizResult;
}
}