Webservice responsável por realizar operações referentes a usuários no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar usuários, entre outros recursos.
Nota
title
Atenção
...
!
Os métodos createColleague, createColleaguewithDependencies, updateColleague e updateColleaguewithDependencies, em um dos seus parâmetros, recebe uma lista
listas os valores para os campos de senha (password) devem ser criptografados com o algoritmo de hash MD5, exceto no caso de possuir o identity configurado, neste caso a senha deverá ser passada normalmente sem a criptografia.
Métodos
Cloak
visible
true
title
No quadro 8, é mostrado todos os métodos disponíveis na classe ColleagueService.
createColleague
Cria um usuário.
Método:
createColleague(String username, String password, int companyId, ColleagueDto[] colleagues)
docSecurity: segurança do documento que será alterado.
docApprovers: nível de aprovação que os aprovadores do documento estão inseridos.
levels: níveis de aprovação que o documento terá.
relDocs: documentos relacionados ao documento que será alterado.
Retorno: WebServiceMessage[].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
updateGroupSecurityType
Modifica a o tipo da segurança dos grupos na permissão e na restrição. Existem duas opções que são representadas por um inteiro:
0 - TODOS os usuários dos Grupos.
1 - SOMENTE usuários comuns dos grupos.
Método:
updateGroupSecurityType(String user, String password, int companyId, int documentId, int version, int permissionType, int restrictionType, String colleagueId)
Parâmetros:
user: código do usuário de integração.
password: senha do usuário de integração.
companyId: código da empresa.
documentId: código do documento.
version: versão do documento.
permissionType: tipo da permissão (0 - TODOS os usuários dos Grupos / 1 - SOMENTE usuários comuns dos grupos)
restrictionType: tipo da restrição (0 - TODOS os usuários dos Grupos / 1 - SOMENTE usuários comuns dos grupos)
colleagueId: matrícula do usuário
Retorno: WebServiceMessage[]
Estrutura de retorno com sucesso
Estrutura de retorno com erro
updateSimpleDocument
Altera de forma simples um documento.
Método:
updateSimpleDocument(String username, String password, int companyId, int documentId, String publisherId, String documentDescription, Attachment[] attachments)
Parâmetros:
username: login do usuário de integração.
password: senha do usuário de integração.
companyId: código da empresa.
documentId: número do documento que será alterado.
publisherId: matrícula do usuário que realizará a alteração do documento.
documentDescription: descrição do documento.
attachments: arquivos anexados na alteração.
Retorno: WebServiceMessage[].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
validateIntegrationRequirements
Verifica a integração do usuário no fluig.
Método:
validateIntegrationRequirements (String user, String password, int companyId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 14: Métodos da DocumentService
...
Cloak
visible
true
title
No quadro 16, é mostrado todos os métodos disponíveis na classe FolderService.
dbDriver: driver do banco de dados (MySql- com.mysql.jdbc.Driver. SQLServer - net.sourceforge.jtds.jdbc.Driver. Oracle -oracle.jdbc.driver.OracleDriver)
dbUser: username banco de dados.
dbPassword: password banco de dados.
dbServer: servidor de conexão do banco de dados.
dbPort: porta servidor banco de dados.
dbScheme: database.
dbInstance: instância do banco, utilizada para SQLServer, caso não seja o caso passar em branco ("").
mailServer: nome do servidor SMTP.
emailSender: e-mail do remetente padrão do produto.
emailPort: porta do servidor SMTP.
emailDefaultSender:
emailUser: usuário de email, somente se o servidor necessitar de autenticação.
emailPassword: password do email, somente se o servidor necessitar de autenticação.
emailTLS: servidor utilizará criptografia no envio de email (true/false)
paramsRMTPTPort: porta utilizada pelo Flex.
lsType: tipo de licença utilizada, LM/LS.
paramsLSHost: servidor de licenças.
paramsLSPort: porta servidor de licenças.
paramsOpenOfficeDir: diretório de instalação do OpenOffice
paramsOpenOfficePorts: porta utilizado pelo OpenOffice
portsSetName: porta portas utilizadas pelo sistema (ports-default, ports-01, ports-02)
Retorno: String.
Atenção
Método depreciado e não mais utilizável no fluig.
updateGlobalParam
Altera parâmetros gerais de uma empresa.
Método:
updateGlobalParam(String username, String password, int companyId, GlobalParamDto[] global)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
global: parâmetros gerais da empresa.
Retorno: String.
Quadro 17: Métodos da GlobalParamService.
...
Cloak
visible
true
title
No quadro 23, é mostrado todos os métodos disponíveis na classe WorkflowEngineService.
calculateDeadLineHours
Calcula um prazo a partir de uma data com base no expediente e feriados cadastrados no produto passando o prazo em horas.
Método:
calculateDeadLineHours(String username, String password, int companyId, String userId, String data, int segundos, int prazo, String periodId)
Parâmetros:
username - Usuário de Integração
password - Senha de Integração
companyId - Código da empresa
userId - Matrícula do usuário
data - data (Tipo String no formato "yyyy-MM-dd").
segundos - Quantidade de segundos após a meia noite
prazo - Prazo que será aplicado em horas (Variável int).
periodId - Código de Expediente
Retorno: Objeto DeadLineDto que contem variáveis com a data e hora.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
calculateDeadLineTime
Calcula um prazo a partir de uma data com base no expediente e feriados cadastrados no produto passando o prazo em minutos.
Método:
calculateDeadLineHours(String username, String password, int companyId, String userId, String data, int segundos, int prazo, String periodId)
Parâmetros:
username - Usuário de Integração
password - Senha de Integração
companyId - Código da empresa
userId - Matrícula do usuário
data - data (Tipo String no formato "yyyy-MM-dd").
segundos - Quantidade de segundos após a meia noite
prazo - Prazo que será aplicado em minutos (Variável int).
periodId - Código de Expediente
Retorno: Objeto DeadLineDto que contem variáveis com a data e hora.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
cancelInstance
Cancela uma solicitação.
Método:
cancelInstance(String user, String password, int companyId, int processInstanceId, String userId, String cancelText)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
userId: mátricula do usuário.
cancelText: comentários do cancelamento.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
cancelInstanceByReplacement
Cancela uma solicitação utilizando usuário substituto.
Método:
cancelInstanceByReplacement(String user, String password, int companyId, int processInstanceId, String userId, String cancelText, String replacementId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
userId: mátricula do usuário.
cancelText: comentários do cancelamento.
replacementId: matrícula do usuário substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
createWorkFlowProcessVersion
Cria nova versão do processo workflow.
Método:
createWorkFlowProcessVersion(String user, String password, int companyId, int processId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: número da solicitação.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
exportProcess
Retorna o processo selecionado em uma String.
Método:
exportProcess (String username, String password, int companyId, String processId)
Parâmetros:
username - Usuário de Integração
password - Senha de Integração
companyId - Código da empresa
processId - Código do processo
Retorno: String que contém a definição do processo.
exportProcessInZipFormat
Retorna o processo selecionado no formato zip.
Método:
exportProcessInZipFormat(String username, String password, int companyId, String processId)
Parâmetros:
username - Usuário de Integração
password - Senha de Integração
companyId - Código da empresa
processId - Código do processo
Retorno: byte[] que contém a definição do processo.
getActualThread
Retorna a sequência da thread de uma solicitação.
Método:
getActualThread(String user, String password, int companyId, int processInstanceId, int stateSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
userId: matrícula do usuário.
stateSequence: sequência do estado.
Retorno: int.
getAllActiveStates
Retorna o número da atividade em que uma solicitação esta.
Método:
getAllActiveStates(String user, String password, int companyId, String userId, int processInstanceId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
userId: matrícula do usuário.
processInstanceId: número da solicitação.
Retorno: Integer[].
getAllProcessAvailableToExport
Retorna uma lista de processos disponíveis para serem exportados.
Método:
getAllProcessAvailableToExport (String username, String password, int companyId)
Retorna o número da próxima atividade de uma solicitação.
Método:
getAvailableStates(String user, String password, int companyId, String processId, int processInstanceId, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: código do processo.
processInstanceId: número da solicitação.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: Integer[].
getAvailableStatesDetail
Retorna detalhes das atividades disponíveis para seleção...
Atenção
Caso haja necessidade de utilizar este método na primeira instância do processo, favor consultar a .
Método:
getAvailableStatesDetail(String user, String password, int companyId, String processId, int processInstanceId, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: código do processo.
processInstanceId: número da solicitação.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorna os usuários que podem executar a tarefa corrente de uma solicitação.
Método:
getAvailableUsers(String username, String password, int companyId, int processInstanceId, int state, int threadSequence)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
state: número da atividade.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[].
getAvailableUsersOnDemand
Retorna os usuários que podem executar a tarefa corrente de uma solicitação, paginados e com busca.
Método:
getAvailableUsersOnDemand(String username, String password, int companyId, int processInstanceId, int state, int threadSequence, int limit, int initialUser, String userSearch)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
state: número da atividade.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorna os usuários disponíveis na abertura de uma solicitação.
Método:
getAvailableUsersStart (String username, String password, int companyId, String processId, int state, int threadSequence)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: código do processo.
state: número da atividade.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[].
getAvailableUsersStartOnDemand
Retorna os usuários disponíveis na abertura de uma solicitação, paginados e com busca.
Método:
getAvailableUsersStart (String username, String password, int companyId, String processId, int state, int threadSequence, int limit, int initialUser, String userSearch)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: código do processo.
state: número da atividade.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
newProcess: indica se deve ser criado um processo ou atualizado o existente.
overWrite: indica se as atividade se as atividades e fluxos do processo existente dever existentes devem ser sobrescritas.
colleagueId : matrícula do usuário.
parentDocId: número do formulário.
docDescription: descrição.
cardDescription: nome.
datasetName: nome do dataset.
cardAttachs: arquivo anexo.
customEvents: eventos.
update: caso verdadeiro ('true'), informa que será uma atualização.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
releaseProcess
Libera processos workflow.
Método:
releaseProcess(String user, String password, int companyId, String processId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processId: código do processo.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
saveAndSendTask
Movimenta solicitação para próxima atividade.
Método:
saveAndSendTask(String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, String[][] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
choosedState: número da atividade.
colleagueIds: usuário que receberá a tarefa.
comments: comentários.
userId: matrícula do usuário que vai executar a tarefa.
completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
attachments: anexos da solicitação.
cardData: dados do registro de formulário.
appointment: apontamentos da tarefa.
managerMode: indica se usuário esta executando a tarefa como gestor do processo.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
saveAndSendTaskByReplacement
Movimenta solicitação para próxima atividade utilizando usuário substituto.
Método:
saveAndSendTaskByReplacement (String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, String[][] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence, String replacementId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
choosedState: número da atividade.
colleagueIds: usuário que receberá a tarefa.
comments: comentários.
userId: matrícula do usuário que vai executar a tarefa.
completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
attachments: anexos da solicitação.
cardData: dados do registro de formulário.
appointment: apontamentos da tarefa.
managerMode: indica se usuário esta executando a tarefa como gestor do processo.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
replacementId: matrícula do usuário substituto.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
saveAndSendTaskClassic
Movimenta solicitação para próxima atividade e retorna um array de objeto com chave e valor.
Método:
saveAndSendTaskClassic(String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, KeyValueDto[] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
choosedState: número da atividade.
colleagueIds: usuário que receberá a tarefa.
comments: comentários.
userId: matrícula do usuário que vai executar a tarefa.
completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
attachments: anexos da solicitação.
cardData: dados do registro de formulário.
appointment: apontamentos da tarefa.
managerMode: indica se usuário esta executando a tarefa como gestor do processo.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Estrutura mínima para movimentação com anexo
xmlExemplo usando SoapUI
O exemplo de movimentação com anexo foi criado considerando do uso da pasta de upload do volume. Sendo assim, o arquivo para transferência deverá estar contido na pasta de upload do usuário.
Considerando o exemplo acima, o arquivo pdf_para_teste.pdf deverá estar contido na pasta do usuário, que fica localizada dentro do diretório upload no volume do fluig.
Caso não queira utilizar este tipo de transferência para anexo e sim a transferência via Bytes, devem ser adicionadas à estrutura, abaixo da tag <fileName>, as seguintes tags:
<fileSize> = para indicar o tamanho do arquivo
<filecontent> = que deverá conter os bytes referentes ao arquivo
Adicionando estas tags será ignorada a busca no diretório de upload do usuário, sendo considerado o arquivo contido na tag <filecontent>.
Seleciona usuário(s) e avança atividade automática.
Método:
setAutomaticDecisionClassic(String user, String password, int companyId, int processInstanceId, int iTaskAutom, int iTask, int condition, String[] colleagueIds, String comments, String userId, boolean managerMode, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
iTaskAutom: número da atividade automática.
iTask: numero número da atividade atual.
condition: numero número da condição da atividade automática.
colleagueIds: usuário que receberá a tarefa.
comments: comentários.
userId: matrícula do usuário que vai executar a tarefa.
managerMode: indica se usuário esta executando a tarefa como gestor do processo.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
setDueDate(String user, String password, int companyId, int processInstanceId, String userId, int threadSequence, String newDueDate, int timeInSeconds)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
userId: matrícula do usuário. Quando é Para um Grupo ou Para um Papel deve ser passado da seguinte forma: Papel: "Pool:Role:CodigoDoPapel"; Grupo: "Pool:Group:CodigoDoGrupo".
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
newDueDate: nova data de prazo da tarefa. Exemplo: "2014-08-20".
timeInSeconds: quantidade de segundos após a meia noite. Exemplo: "32000".
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
setTasksComments
Altera os comentários da tarefa.
Método:
setTasksComments(String user, String password, int companyId, int processInstanceId, String userId, int threadSequence, String comments)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação.
userId: mátricula do usuário.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
colleagueIds: usuário que receberá a tarefa. Caso a solicitação esteja sendo atribuída "Para um Papel" ou "Para um Grupo", o parâmetro colleagueIds deve ser informado da seguinte forma: Papel: Pool:Role:Nome_do_papel Grupo: Pool:Group:Nome_do_grupo
comments: comentários.
userId: matrícula do usuário que vai iniciar a solicitação.
completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
attachments: anexos da solicitação.
cardData: dados do registro de formulário.
appointment: apontamentos da tarefa.
managerMode: indica se usuário esta iniciando a solicitação como gestor do processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
startProcessClassic
Inicia uma solicitação e retorna um array de objeto com chave e valor.
userId: matrícula do usuário que vai iniciar a solicitação.
completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
attachments: anexos da solicitação.
cardData: dados do registro de formulário.
appointment: apontamentos da tarefa.
managerMode: indica se usuário esta iniciando a solicitação como gestor do processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
takeProcessTask
Assume uma tarefa.
Método:
takeProcessTask(String user, String password, int companyId, String userId, int processInstanceId, int threadSequence)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
userId: matrícula do usuário.
processInstanceId: número da solicitação.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
takeProcessTaskByReplacement
Assume uma tarefa utilizando usuário substituto.
Método:
takeProcessTask(String user, String password, int companyId, String userId, int processInstanceId, int threadSequence, String replacementId)
Parâmetros:
user: login do usuário.
password: senha do usuário.
companyId: código da empresa.
userId: matrícula do usuário.
processInstanceId: número da solicitação.
threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
replacementId: matrícula do usuário substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
updateWorkflowAttachment
Atualiza um documento do tipo 7.
Retorna uma string contendo a descrição de sucesso ou falha da operação.
Método:
updateWorkflowAttachment(String username, String password, int companyId, int processInstanceId, String usuario, DocumentDto[] docdtos, Attachment[] attach)
Parâmetros:
username: login do usuário.
password: senha do usuário.
companyId: código da empresa.
processInstanceId: número da solicitação workflow.
usuario: usuário responsável pela edição do documento.
documents: documento ou documentos que serão publicados.