ActivitiResource.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package com.common.workflow.web.rest;
  2. import com.common.workflow.service.activiti.ActivitiService;
  3. import com.common.workflow.service.dto.ActiHistoricTaskDTO;
  4. import com.common.workflow.web.rest.vm.ActiCompleteVM;
  5. import com.common.workflow.web.rest.vm.ActiMyTaskVM;
  6. import com.common.workflow.web.rest.vm.ActiProcessVM;
  7. import com.common.workflow.web.rest.vm.MultiActiCompleteVM;
  8. import org.activiti.engine.task.Task;
  9. import org.slf4j.Logger;
  10. import org.slf4j.LoggerFactory;
  11. import org.springframework.http.HttpStatus;
  12. import org.springframework.http.ResponseEntity;
  13. import org.springframework.web.bind.annotation.*;
  14. import javax.servlet.http.HttpServletResponse;
  15. import javax.validation.Valid;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * Created by gyue on 2018-12-31.
  20. */
  21. @RestController
  22. @RequestMapping("/api/acti")
  23. public class ActivitiResource {
  24. private final Logger log = LoggerFactory.getLogger(ActivitiResource.class);
  25. private final ActivitiService activitiService;
  26. public ActivitiResource(ActivitiService activitiService) {
  27. this.activitiService = activitiService;
  28. }
  29. @PostMapping("/start-process")
  30. public ResponseEntity<String> startProcess(@Valid @RequestBody ActiProcessVM actiVm) {
  31. String processInstanceId = activitiService.startProcesses(actiVm.getProcessKey(), actiVm.getBusinessKey(), actiVm.getUserNames());
  32. return ResponseEntity.ok(processInstanceId);
  33. }
  34. @PostMapping("/task-complete")
  35. public ResponseEntity<String> taskComplete(@Valid @RequestBody ActiCompleteVM actiVm) {
  36. activitiService.completeTask(actiVm);
  37. return ResponseEntity.ok("true");
  38. }
  39. @PostMapping("/multi-task-complete")
  40. public ResponseEntity<String> MultiTaskComplete(@Valid @RequestBody MultiActiCompleteVM actiVm) {
  41. activitiService.multiCompleteTask(actiVm);
  42. return ResponseEntity.ok("true");
  43. }
  44. @PostMapping("/my-tasks")
  45. public ResponseEntity<String> getMyTasks(@Valid @RequestBody ActiMyTaskVM actiVm) {
  46. String businessKeys = activitiService.findTasksByUserId(actiVm.getProcessKey(), actiVm.getUserId());
  47. return ResponseEntity.ok(businessKeys);
  48. }
  49. @PostMapping("/my-tasks-finished")
  50. public ResponseEntity<String> getMyTasksFinished(@Valid @RequestBody ActiMyTaskVM actiVm) {
  51. String businessKeys = activitiService.findTaskHistByUserId(actiVm.getProcessKey(), actiVm.getUserId());
  52. return ResponseEntity.ok(businessKeys);
  53. }
  54. @PostMapping("/historic-tasks")
  55. public ResponseEntity<List<ActiHistoricTaskDTO>> getHistoricTasks(@Valid @RequestBody ActiProcessVM actiVm) {
  56. List<ActiHistoricTaskDTO> taskDTOS = activitiService.getHistoricTasks(actiVm.getProcessKey(), actiVm.getBusinessKey(), actiVm.getProcessInstanceId());
  57. return ResponseEntity.ok(taskDTOS);
  58. }
  59. @PostMapping("/historic-tasks-image")
  60. public void getActivitiProccessImage(@Valid @RequestBody ActiProcessVM actiVm, HttpServletResponse response) {
  61. activitiService.getActivitiProccessImage(actiVm.getProcessInstanceId(), response);
  62. }
  63. }