OrderProjectApiController.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. package com.goafanti.order.controller;
  2. import java.io.IOException;
  3. import java.io.OutputStream;
  4. import java.text.ParseException;
  5. import java.text.SimpleDateFormat;
  6. import java.util.Date;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import org.apache.poi.xssf.usermodel.XSSFWorkbook;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.RequestMethod;
  13. import org.springframework.web.bind.annotation.RestController;
  14. import com.goafanti.common.bo.Result;
  15. import com.goafanti.common.constant.ErrorConstants;
  16. import com.goafanti.common.controller.CertifyApiController;
  17. import com.goafanti.common.model.TTaskHours;
  18. import com.goafanti.common.utils.StringUtils;
  19. import com.goafanti.order.bo.TOrderTaskDetailBo;
  20. import com.goafanti.order.service.OrderProjectService;
  21. @RestController
  22. @RequestMapping(value = "/api/admin/orderProject")
  23. public class OrderProjectApiController extends CertifyApiController {
  24. @Autowired
  25. private OrderProjectService orderProjectService;
  26. /**
  27. * 项目分配
  28. */
  29. @RequestMapping(value = "/projectDistribution", method = RequestMethod.POST)
  30. public Result projectDistribution(Integer taskId,String taskReceiverId,Integer specially ){
  31. Result res = new Result();
  32. if(null==taskId || StringUtils.isBlank(taskReceiverId)){
  33. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "任务编号和受理人"));
  34. return res;
  35. }
  36. res.setData(orderProjectService.updateProjectDistribution( taskId, taskReceiverId,specially));
  37. return res;
  38. }
  39. /**
  40. * 任务派单列表
  41. */
  42. @RequestMapping(value="/orderTaskList" ,method = RequestMethod.GET)
  43. public Result orderTaskList(String name,String orderNo,String taskId,Integer taskStatus,String adminName,Integer specially,String depId ,Integer pageNo,Integer pageSize){
  44. Result res=new Result();
  45. res.setData(orderProjectService.orderTaskList( name, orderNo, taskId, taskStatus, adminName,specially , depId,pageNo, pageSize));
  46. return res;
  47. }
  48. /**
  49. * 任务派单查询
  50. */
  51. @RequestMapping(value="/selectTaskList" ,method = RequestMethod.GET)
  52. public Result selectTaskList(String name,String orderNo,String taskId,Integer taskStatus,String adminName,Integer specially ,String depId ,Integer pageNo,Integer pageSize){
  53. Result res=new Result();
  54. res.setData(orderProjectService.selectTaskList( name, orderNo, taskId, taskStatus, adminName,specially , depId ,pageNo, pageSize));
  55. return res;
  56. }
  57. /**
  58. * 任务详情
  59. */
  60. @RequestMapping(value="/orderTaskDetail" ,method = RequestMethod.GET)
  61. public Result orderTaskDetail(String id){
  62. Result res=new Result();
  63. res.setData(orderProjectService.orderTaskDetail(id));
  64. return res;
  65. }
  66. /**
  67. * 任务修改
  68. */
  69. @RequestMapping(value="/updateOrderTask" ,method = RequestMethod.POST)
  70. public Result updateOrderTask(TOrderTaskDetailBo t){
  71. Result res=new Result();
  72. res.setData(orderProjectService.updateOrderTask(t));
  73. return res;
  74. }
  75. /**
  76. * 添加工时
  77. */
  78. @RequestMapping(value="/addTaskHours" ,method = RequestMethod.POST)
  79. public Result addTaskHours(TTaskHours t,String taskDate){
  80. Result res=new Result();
  81. if (t.getHours()==null) {
  82. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "任务时间"));
  83. return res;
  84. }
  85. if (StringUtils.isBlank(taskDate)) {
  86. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "工作日期"));
  87. return res;
  88. }
  89. if (StringUtils.isBlank(t.getRemarks())) {
  90. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "工作内容"));
  91. return res;
  92. }
  93. if (StringUtils.isNotBlank(taskDate)) {
  94. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  95. try {
  96. t.setTaskDay(sdf.parse(taskDate));
  97. } catch (ParseException e) {
  98. e.printStackTrace();
  99. }
  100. }
  101. res.setData(orderProjectService.addTaskHours(t));
  102. return res;
  103. }
  104. /**
  105. * 任务工时列表
  106. */
  107. @RequestMapping(value="/taskHoursList" ,method = RequestMethod.GET)
  108. public Result taskHoursList(String name, String taskId ,String starTime,String endTime ,
  109. Integer pageNo, Integer pageSize){
  110. Result res=new Result();
  111. res.setData(orderProjectService.taskHoursList(name,taskId, starTime, endTime ,pageNo, pageSize));
  112. return res;
  113. }
  114. /**
  115. * 任务操作日志
  116. */
  117. @RequestMapping(value="/TaskLogList" ,method = RequestMethod.GET)
  118. public Result TaskLogList(Integer id){
  119. Result res=new Result();
  120. res.setData(orderProjectService.TaskLogList(id));
  121. return res;
  122. }
  123. /** 任务文件上传 **/
  124. @RequestMapping(value = "/uploadOrderTaskFile", method = RequestMethod.POST)
  125. public Result uploadOrderTaskFile(HttpServletRequest req,String sign){
  126. Result res = new Result();
  127. res.setData(handleFile(res, "/order_task_file/", false, req, sign));
  128. return res;
  129. }
  130. /**
  131. * 任务工时表
  132. * @throws IOException
  133. */
  134. @RequestMapping(value = "/exportTaskHoursListData", method = RequestMethod.GET)
  135. public Result exportTaskHoursListData(String name, String taskId ,String starTime,String endTime ,HttpServletResponse response) throws IOException{
  136. Result res = new Result();
  137. XSSFWorkbook wb = orderProjectService.exportTaskHoursListData( name, taskId, starTime, endTime);
  138. if(null == wb){
  139. res.getError().add(buildError("", "没有找到数据"));
  140. return res;
  141. }
  142. String fileName = "任务工时表 " + new SimpleDateFormat("yyyy-MM-dd").format(new Date()) + ".xls";
  143. OutputStream out = response.getOutputStream();
  144. response.addHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes(),"iso-8859-1"));
  145. response.setContentType("application/octet-stream;charset=utf-8");
  146. try {
  147. // 返回数据流
  148. wb.write(out);
  149. out.flush();
  150. out.close();
  151. } finally {
  152. out.flush();
  153. out.close();
  154. }
  155. return res;
  156. }
  157. }