TaskController.java 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. package com.xintong.visualinspection.controller;
  2. import java.util.ArrayList;
  3. import java.util.Date;
  4. import java.util.List;
  5. import javax.servlet.http.HttpServletRequest;
  6. import javax.validation.Valid;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.web.bind.annotation.PathVariable;
  9. import org.springframework.web.bind.annotation.RequestBody;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RestController;
  12. import com.github.pagehelper.PageHelper;
  13. import com.github.pagehelper.PageInfo;
  14. import com.xintong.system.err.BusinessException;
  15. import com.xintong.visualinspection.bean.Constant;
  16. import com.xintong.visualinspection.bean.Task;
  17. import com.xintong.visualinspection.bean.TaskStatus;
  18. import com.xintong.visualinspection.bean.User;
  19. import com.xintong.visualinspection.service.TaskService;
  20. import com.xintong.visualinspection.util.AuthorUtil;
  21. import com.xintong.visualinspection.util.CacheUtil;
  22. import com.xintong.visualinspection.util.Constants;
  23. /**
  24. * 文件名:TestController
  25. * 版本信息:日期:2017/3/30 Copyright 江苏省交通规划设计院 Corporation 2017 版权所有.
  26. */
  27. @RestController
  28. @RequestMapping("/task")
  29. public class TaskController extends BaseController {
  30. @Autowired
  31. private TaskService taskService;
  32. /**
  33. * 添加考核任务
  34. * @return
  35. * String
  36. * @exception
  37. * @since 1.0.0
  38. */
  39. @RequestMapping(value = "/add")
  40. public String add(@Valid @RequestBody Task task){
  41. taskService.insert(task);
  42. return super.returnSuccessResult("添加成功");
  43. }
  44. /**
  45. * 修改考核任务
  46. * @return
  47. * String
  48. * @exception
  49. * @since 1.0.0
  50. */
  51. @RequestMapping(value = "/update")
  52. public String update(HttpServletRequest request,@Valid @RequestBody Task task){
  53. if(task.getId()==null){
  54. throw new BusinessException(20002);
  55. }
  56. User user = getCurrentUser(request);
  57. task.setUpdate_user(new Long(user.getId()));
  58. taskService.update(task);
  59. Task t = taskService.getById(task.getId());
  60. return super.returnSuccessResult("修改成功",t);
  61. }
  62. @RequestMapping(value = "/taskEnd")
  63. public String taskEnd(HttpServletRequest request, @Valid @RequestBody Task task){
  64. if(task.getId()==null){
  65. throw new BusinessException(20002);
  66. }
  67. if(task.getCheck_status()==null || "".equals(task.getCheck_status())){
  68. task.setCheck_status(Constants.STATUS_CHECK_END);
  69. }
  70. User user = getCurrentUser(request);
  71. task.setUpdate_user(new Long(user.getId()));
  72. taskService.update(task);
  73. return super.returnSuccessResult("修改成功");
  74. }
  75. @RequestMapping(value = "/taskStart")
  76. public String taskStart(HttpServletRequest request,@Valid @RequestBody Task task){
  77. if(task.getId()==null){
  78. throw new BusinessException(20002);
  79. }
  80. if(task.getCheck_status()==null || "".equals(task.getCheck_status())){
  81. task.setCheck_status(Constants.STATUS_CHECK_START);
  82. }
  83. User user = getCurrentUser(request);
  84. task.setUpdate_user(new Long(user.getId()));
  85. taskService.update(task);
  86. return super.returnSuccessResult("修改成功");
  87. }
  88. /**
  89. * 删除考核任务
  90. * @return
  91. * String
  92. * @exception
  93. * @since 1.0.0
  94. */
  95. @RequestMapping(value = "/delete")
  96. public String delete(@RequestBody Task task){
  97. if(task.getId()==null){
  98. throw new BusinessException(20002);
  99. }
  100. taskService.delete(task.getId());
  101. return super.returnSuccessResult("删除成功");
  102. }
  103. @RequestMapping(value = "/dispatch")
  104. public String dispatch(HttpServletRequest request, @RequestBody Task task){
  105. if(task.getCheck_status()==null || "".equals(task.getCheck_status())){
  106. task.setCheck_status(Constants.STATUS_CHECK_END);
  107. }
  108. if(task.getUpdate_check_status()==null || "".equals(task.getUpdate_check_status())){
  109. task.setUpdate_check_status(Constants.STATUS_CHECK_DISPATCH);
  110. }
  111. List<Task> taskList = taskService.getTaskList(task);
  112. List<TaskStatus> taskStatusList = new ArrayList<TaskStatus>();
  113. User u = getCurrentUser(request);
  114. for(Task t:taskList) {
  115. //插入状态到表
  116. TaskStatus status = new TaskStatus();
  117. status.setTask_id(t.getId());
  118. status.setUpdate_time(new Date());
  119. status.setUpdate_user(new Long(u.getId()));
  120. status.setUpdate_username(u.getTruename());
  121. status.setCheck_status(task.getUpdate_check_status());
  122. String name = (CacheUtil.codeMap.get("task_status_"+task.getUpdate_check_status())).getCode_name();
  123. status.setCheck_status_name(name);
  124. taskStatusList.add(status);
  125. }
  126. taskService.dispatch(task);
  127. taskService.insertStatusBatch(taskStatusList);
  128. return super.returnSuccessResult("下发成功");
  129. }
  130. @RequestMapping(value = "/dispatchById")
  131. public String dispatchById(HttpServletRequest request, @RequestBody Task task){
  132. if(task.getId()==null){
  133. throw new BusinessException(20002);
  134. }
  135. if(task.getCheck_status()==null || "".equals(task.getCheck_status())){
  136. task.setCheck_status(Constants.STATUS_CHECK_DISPATCH);
  137. }
  138. taskService.dispatchById(task);
  139. //插入状态到表
  140. TaskStatus status = new TaskStatus();
  141. User u = getCurrentUser(request);
  142. status.setTask_id(task.getId());
  143. status.setUpdate_time(new Date());
  144. status.setUpdate_user(new Long(u.getId()));
  145. status.setUpdate_username(u.getTruename());
  146. status.setCheck_status(task.getCheck_status());
  147. String name = (CacheUtil.codeMap.get("task_status_"+task.getCheck_status())).getCode_name();
  148. status.setCheck_status_name(name);
  149. taskService.insertStatus(status);
  150. return super.returnSuccessResult("下发成功");
  151. }
  152. /**
  153. * 通过id获取考核任务
  154. * @return
  155. * String
  156. * @exception
  157. * @since 1.0.0
  158. */
  159. @RequestMapping(value = "/getById")
  160. public String getById(@RequestBody Task task){
  161. if(task.getId()==null){
  162. throw new BusinessException(20002);
  163. }
  164. Task t = taskService.getById(task.getId());
  165. return super.returnSuccessResult(t);
  166. }
  167. /**
  168. * 通过多条件获取考核任务
  169. * @return
  170. * String
  171. * @exception
  172. * @since 1.0.0
  173. */
  174. @RequestMapping(value = "/getTaskList/{page}/{size}")
  175. public String getTaskList(HttpServletRequest request, @PathVariable Integer page,@PathVariable Integer size, @RequestBody Task task){
  176. PageHelper.startPage(page, size);
  177. User user = getCurrentUser(request);
  178. if(AuthorUtil.hasRole(user, Constants.ROLE_STATION_ADMIN)
  179. ||AuthorUtil.hasRole(user, Constants.ROLE_STATION)
  180. ||AuthorUtil.hasRole(user, Constants.ROLE_STATION_AGENT)
  181. ||AuthorUtil.containsRole(user, "ROLE_STATION")){
  182. task.setChecked_dept((long)user.getOrganid());
  183. }else if(AuthorUtil.hasRole(user, Constants.ROLE_JICHA)){
  184. task.setCheckman(new Long(user.getId()));
  185. }
  186. List<Task> taskList = taskService.getTaskList(task);
  187. if(taskList==null) return super.returnSuccessResult(new PageInfo(new ArrayList()));
  188. return super.returnSuccessResult(new PageInfo(taskList));
  189. }
  190. /**
  191. * 通过id获取状态
  192. * @return
  193. * String
  194. * @exception
  195. * @since 1.0.0
  196. */
  197. @RequestMapping(value = "/getStatusById")
  198. public String getStatusById(@RequestBody Task task){
  199. if(task.getId()==null){
  200. throw new BusinessException(20002);
  201. }
  202. List<TaskStatus> tList = taskService.getTaskStatusList(task.getId());
  203. return super.returnSuccessResult(tList);
  204. }
  205. /**
  206. * 删除用户被考核次数
  207. * @return
  208. * String
  209. * @exception
  210. * @since 1.0.0
  211. */
  212. @RequestMapping(value = "/deleteUserCount")
  213. public String deleteUserCount(@RequestBody Task task){
  214. if(task.getId()==null){
  215. throw new BusinessException(20002);
  216. }
  217. taskService.deleteInvalidTaskCount(task.getId());
  218. return super.returnSuccessResult("删除成功!");
  219. }
  220. /**
  221. * 更新用户被考核次数
  222. * @return
  223. * String
  224. * @exception
  225. * @since 1.0.0
  226. */
  227. @RequestMapping(value = "/updateUserCount")
  228. public String updateUserCount(@RequestBody Task task){
  229. if(task.getId()==null){
  230. throw new BusinessException(20002);
  231. }
  232. taskService.updateInvalidTaskCount(task);;
  233. return super.returnSuccessResult("修改成功!");
  234. }
  235. }