O projeto Activiti é uma nova plataforma BPM de código aberto baseada na licença Apache. Este artigo descreverá brevemente as classes comuns do Activiti. Os detalhes são os seguintes:
1. Por que usar fluxo de trabalho
Desvantagens do design tradicional quando os processos mudam:
1. Atributos relacionados ao processo e atributos de objetos de negócios são colocados em objetos de negócios.
2. A lógica relacionada ao processo e a lógica de negócios são todas colocadas na lógica de negócios
Aulas comuns de atividades:
Objeto de configuração do mecanismo de processo ProcessEngineConfiguration (configurando informações de conexão de banco de dados e estratégia de criação de tabela)
ProcessEngine é o objeto central do mecanismo de processo (verifica se o ambiente está correto e gerencia vários serviços)
Objeto de serviço de warehouse RepositoryService (gerenciar informações de implantação)
Objeto de serviço de tempo de execução RuntimeService (inicialização do processo de gerenciamento, transferência e outras operações)
Objeto de serviço de tarefa TaskService (os dados na tabela Tarefa são uma extensão da tabela Execução, o horário de criação da tarefa e a pessoa que a trata)
Classes relacionadas à implantação:
O DeploymentBuilder publica objetos de configuração (aliases para arquivos de regras publicados, imagens de regras e exibições de processos)
Definição do processo ProcessDefinition (usada para descrever as informações gerais do processo de liberação)
Atividade do processo ActivityImpl (usada para descrever informações relacionadas a cada atividade em um processo)
Execute classes relacionadas:
Objeto de execução de execução (usado para descrever as informações básicas do nó ativo atual)
Objeto de instância de processo ProcessInstance (a instância de processo sempre deseja apenas o objeto de execução (raiz))
Objeto de tarefa de tarefa (horário de criação e manipulador da tarefa)
2. Casos de uso:
Gerenciamento de informações de implantação de processos:
1. Processo de liberação
2. Visualize a definição do processo ProcessDefinitionQuery
3. Excluir processo
4. Visualize anexos de processos
Gestão de execução de processos:
1. Inicie o processo
2. Visualizar tarefas (privadas/públicas)
3. Reivindicar UserId e TaskId
4. Tarefa de processo concluída (taskId)
5. Verifique o status da tarefa