1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/fengyexjtu-spring-boot-activiti

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

3. Процесс выполнения

## 3. Выполнение процесса

import com.fengye.example.service.ActivitiService;
import org.activiti.engine.task.Task;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;  

@RestController
public class MyRestController {
    @Autowired
    private ActivitiService myService;
    
    // Запуск экземпляра процесса
    @RequestMapping(value = "/process/{personId}/{compId}", method = RequestMethod.GET)
    public void startProcessInstance(@PathVariable Long personId, @PathVariable Long compId) {
        myService.startProcess(personId, compId);
    }
    
    // Получение задач текущего пользователя
    @RequestMapping(value = "/tasks", method = RequestMethod.GET)
    public List<TaskRepresentation> getTasks(@RequestParam String assignee) {
        List<Task> tasks = myService.getTasks(assignee);
        List<TaskRepresentation> dtos = new ArrayList<TaskRepresentation>();
        for (Task task : tasks) {
            dtos.add(new TaskRepresentation(task.getId(), task.getName()));
        }
        return dtos;
    }
    
    // Завершение задачи
    @RequestMapping(value = "/complete/{joinApproved}/{taskId}", method = RequestMethod.GET)
    public String complete(@PathVariable Boolean joinApproved, @PathVariable String taskId) {
        myService.completeTasks(joinApproved, taskId);
        return "ok";
    }
    
    static class TaskRepresentation {
        private String id;
        private String name;
        
        public TaskRepresentation(String id, String name) {
            this.id = id;
            this.name = name;
        }
        
        public String getId() {
            return id;
        }
        
        public void setId(String id) {
            this.id = id;
        }
        
        public String getName() {
            return name;
        }
        
        public void setName(String name) {
            this.name = name;
        }
    }
}

4. Процесс выполнения

Чтобы присоединиться к компании с идентификатором 1, пользователь с идентификатором 2 должен выполнить следующие действия:

  • Посетить URL http://localhost:8080/process/2/1.

  • Проверить изменения в таблицах базы данных ACT_RU_TASK и ACT_RU_IDENTITYLINK.

  • Чтобы проверить задачи пользователя с правами администратора, посетить URL http://localhost:8080/tasks?assignee=admin.

  • Для завершения задачи посетить URL http://localhost:8080/complete/true/10, где true означает согласие (можно выбрать false).

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Комбинация Spring Boot и Activiti: демонстрация небольшого проекта. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/fengyexjtu-spring-boot-activiti.git
git@api.gitlife.ru:oschina-mirror/fengyexjtu-spring-boot-activiti.git
oschina-mirror
fengyexjtu-spring-boot-activiti
fengyexjtu-spring-boot-activiti
master