DoWorkController.java 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. package com.hz.employmentsite.controller.taskAndLog;
  2. import com.github.pagehelper.PageInfo;
  3. import com.hz.employmentsite.filter.exception.BaseErrorEnum;
  4. import com.hz.employmentsite.filter.exception.BaseResponse;
  5. import com.hz.employmentsite.filter.exception.RespGenerstor;
  6. import com.hz.employmentsite.mapper.PcSiteUserMapper;
  7. import com.hz.employmentsite.model.PcSiteUserExample;
  8. import com.hz.employmentsite.services.service.AccountService;
  9. import com.hz.employmentsite.services.service.taskAndLog.DoWorkService;
  10. import com.hz.employmentsite.util.ExcelHelper;
  11. import com.hz.employmentsite.vo.taskAndLog.DoWorkVo;
  12. import com.hz.employmentsite.vo.taskAndLog.RecordsCountVo;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.*;
  15. import javax.servlet.http.HttpServletResponse;
  16. import java.util.ArrayList;
  17. import java.util.Arrays;
  18. import java.util.List;
  19. import java.util.UUID;
  20. @RestController
  21. @RequestMapping(value = "/api/taskAndLog/doWork")
  22. public class DoWorkController {
  23. @Autowired
  24. private AccountService accountService;
  25. @Autowired
  26. private DoWorkService doWorkService;
  27. @Autowired
  28. private PcSiteUserMapper pcSiteUserMapper;
  29. @Autowired
  30. private ExcelHelper excelHelper;
  31. @ResponseBody
  32. @GetMapping("/getList")
  33. public BaseResponse getList(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize, @RequestParam(required = false) List<String> doWorkIDList,
  34. @RequestParam(required = false) String userName,@RequestParam(required = false) String workStartDate, @RequestParam(required = false) String workEndDate,
  35. @RequestParam(required = false) Integer doTypeID, @RequestParam(required = false) String regionCode,@RequestParam(required = false) String streetCode){
  36. PageInfo<DoWorkVo> result = doWorkService.getList(pageIndex, pageSize,doWorkIDList, userName, workStartDate,workEndDate,doTypeID,regionCode,streetCode);
  37. return RespGenerstor.success(result);
  38. }
  39. @GetMapping("get")
  40. public BaseResponse<DoWorkVo> get(@RequestParam(required = false) String doWorkID) {
  41. var data = doWorkService.get(doWorkID);
  42. if (data == null) {
  43. data = new DoWorkVo();
  44. data.doWorkID = UUID.randomUUID().toString();
  45. PcSiteUserExample siteUserExp = new PcSiteUserExample();
  46. PcSiteUserExample.Criteria siteUserCro = siteUserExp.createCriteria();
  47. siteUserCro.andUserIDEqualTo(accountService.getLoginUserID());
  48. var curSiteUserInfo = pcSiteUserMapper.selectByExample(siteUserExp).stream().findFirst().orElse(null);
  49. if(curSiteUserInfo != null){
  50. data.siteUserID = curSiteUserInfo.getSiteUserID();
  51. data.userId = curSiteUserInfo.getUserID();
  52. }
  53. }
  54. return RespGenerstor.success(data);
  55. }
  56. @PostMapping("save")
  57. public BaseResponse<Integer> save(@RequestBody DoWorkVo data) {
  58. return RespGenerstor.success(doWorkService.save(data,accountService.getLoginUserID()));
  59. }
  60. @GetMapping("export")
  61. public BaseResponse export(HttpServletResponse response, @RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
  62. @RequestParam(required = false) List<String> doWorkIDList,
  63. @RequestParam(required = false) String userName,@RequestParam(required = false) String workStartDate, @RequestParam(required = false) String workEndDate,
  64. @RequestParam(required = false) Integer doTypeID, @RequestParam(required = false) String regionCode,@RequestParam(required = false) String streetCode) throws Exception{
  65. PageInfo<DoWorkVo> result = doWorkService.getList(pageIndex, pageSize,doWorkIDList, userName, workStartDate,workEndDate,doTypeID,regionCode,streetCode);
  66. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  67. data.setTitles(Arrays.asList(new String[]{"序号","姓名"," ", "日志类型", "工作情况","所属县区","所属街道"}));
  68. int i = 0;
  69. List<List<Object>> rowsData = new ArrayList();
  70. for (DoWorkVo item : result.getList()) {
  71. List<Object> row = new ArrayList();
  72. ++i;
  73. row.add(i);
  74. row.add(item.userName);
  75. row.add(item.workTime);
  76. row.add(item.logTypeName);
  77. row.add(item.workContent);
  78. row.add(item.regionName);
  79. row.add(item.streetName);
  80. rowsData.add(row);
  81. }
  82. data.setRows(rowsData);
  83. excelHelper.exportExcel(response, data);
  84. return null;
  85. }
  86. @ResponseBody
  87. @PostMapping("/delete")
  88. public BaseResponse<Integer> delete(@RequestBody List<String> idList){
  89. return RespGenerstor.success(doWorkService.delete(idList));
  90. }
  91. /**
  92. * 获取驿站人员指定工作日期所记录的业务数据数量
  93. * @param userId 用户ID
  94. * @param workTime 工作日期时间
  95. * @return 业务数据记录
  96. */
  97. @GetMapping("/getRecordsCount")
  98. public BaseResponse<RecordsCountVo> getRecordsCount(
  99. @RequestParam String userId,
  100. @RequestParam String workTime
  101. ) {
  102. RecordsCountVo recordsCount = doWorkService.getRecordsCount(userId, workTime);
  103. return RespGenerstor.success(recordsCount);
  104. }
  105. }