Objetivo



Esse documento tem o objetivo de exemplificar o uso da API para inserção de cronograma.

1 - API de entrada de Cronograma Planejado


Esta API permitirá a entrada de valores no cronograma planejado.

O cronograma da tarefa será removido e será preenchido com os valores enviados nesta chamada.

O campo de cost deve enviar o valor da tarefa relativo ao período de datas.

O campo de percentage deve enviar o percentual da tarefa relativo ao período de datas. Os dois campos podem ser enviados juntos, desde que o parâmetro do projeto para cronograma defina que use percentual ou valor.

Estas datas podem incluir mais de período do projeto. O valor será distribuído proporcional pelas datas informadas.

O campo de warning irá retornar uma lista de avisos que não provocaram erros.

Máscara de Url: http://{domínio}:{porta}/api/construction-projects/v1/planningInput

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{
    "companyId": 1,
    "projectId": 2,
    "tasks": [
        {
            "taskId": 1,
            "dates": [
                {
                    "startAt": "2011-03-11T00:00:00",
                    "endAt": "2011-03-15T00:00:00",
                    "cost": 50000.26,
                    "percentage": 100
                }
            ]
        }
    ],
    "warnings": []
}


2 - API de entrada de Cronograma Medido


Esta API permitirá a entrada de valores no cronograma medido.

O campo accumulatedPercentageCompleted deve seta preenchido com o percentual total das medições até o período indicado pela data do campo measuredIn. O percentual será calculado com a diferença do somatório dos períodos anteriores com o percentual enviado. Este resultado pode ser um percentual negativo.

O cronograma medido dos períodos posteriores ao informado, serão removidos.

Máscara de Url: http://{domínio}:{porta}/api/construction-projects/v1/measuredInput

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{
    "companyId": 1,
    "projectId": 2,
    "measuredIn":"2020-02-02",
    "tasks": [
        {
            "taskId": 1,
            "accumulatedPercentageCompleted":11
        }
    ]
}

3 - API de entrada de Cronograma Realizado 


Esta API permitirá a entrada de valores no cronograma Realizado.

O campo accumulatedPercentageCompleted deve seta preenchido com o percentual total das medições até o período indicado pela data do campo accomplishedIn. O percentual será calculado com a diferença do somatório dos períodos anteriores com o percentual enviado. Este resultado pode ser um percentual negativo.

O cronograma realizado dos períodos posteriores ao informado, serão removidos.

Alterado para que as API's de planejado e de realizado atualizem os campos de data inicio e fim do planejamento ou realizado, respectivamente, no PERT.

Estas datas serão atualizadas apenas se forem menor que a data inicial ou maior que a data final.

A data início real somente será alterada se o percentual enviado for maior que 0 (zero).

A data fim real somente será alterada se o percentual enviado for maior ou igual a 100.

Máscara de Url: http://{domínio}:{porta}/api/construction-projects/v1/accomplishedInput

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{
"companyId": 1,
"projectId": 57,
"accomplishedIn":"2022-05-01",
"tasks":[

{     "taskId":9,     "accumulatedPercentageCompleted":41 }
,
}

4 - API de Cálculo de Cronograma


Esta API permitirá a execução do cálculo do cronograma

As parâmetros deverão identificar qual projeto e planilha deverá ser calculado.

Máscara de Url: http://{domínio}:{porta}/api/construction-projects/v1/calculate-schedule

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{
        "companyId": 1,
        "projectId": 2,
        "spreadsheetType": 0,
        "scenarioId": 0
}


5 - API de Cálculo de Envio de Custos Incorridos


Esta API permitirá a execução de custos incorridos no cronograma.

O campo de parâmetro de entrada serve para definir o tipo de agrupamento. (groupingType)

Valores possíveis:

0-Nenhum

1-Por dia

2-Por mês

Máscara de Url: http://localhost:8051/api/construction-projects/v1/appropriatedSchedule

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{     
		"companyId": 1,
	    "projectId": 2,  
		"startDate": "2001-11-20T00:00:00",
	    "endDate": "2022-11-20T00:00:00",     
		"tasks": [54],   
		"groupingType": 1
 }


6 - API de Serviços para copia de parâmetro


Esta API permitirá a execução de serviços para a copia de parâmetro.

  • Copiar os parâmetros de um projeto para outro

Máscara de Url: http://localhost:8051/api/construction-projects/v1/copy-parameters

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{          
   "companyIdOrigin": 1,
   "projectIdOrigin": 2, 
   "companyIdDestiny": 1, 
   "projectIdDestiny": 59

}


  • Atualizar os períodos de um projeto com base nos parâmetros de data inicio, periodicidade e quantidade de períodos 

Valores possíveis para o campo typeOfPeriods

0   - Personalizado
1   - Diario
-7   Semanal
7   - SemanalCorridos
-15 - Quinzenal
15  - QuinzenalCorridos
30  - Mensal
-10 - Dezena
10  - DezenaCorridos

Máscara de Url: http://localhost:8051/api/construction-projects/v1/schedule-Parameters

Método de entrada: Post

Exemplo de JSon de entrada

JSON
{  
          
	"companyId": 1,
	"projectId": 59, 
 	"dateInitialProject": "2022-10-01", 
	"numberPeriods": 6, 
	"typeOfPeriods": 0,  
 	"numberDaysPerPeriods" :3  

}






  • Sem rótulos