Issue:
Implementar el nuevo endpoint para las grillas de mobile
Cause:
Requerimiento de nuevos end-points para Grids
Solution:
Se han implementado los siguientes end-points:
GET /api/1.0/{workspace}/project/{prj_uid}/dynaform/{dyn_uid}/grid/{grd_name}/field-definitions
GET /api/1.0/{workspace}/project/{prj_uid}/dynaform/{dyn_uid}/grid/{grd_name}/field-definition/{fld_id}
GET /api/1.0/{workspace}/case/{app_uid}/{del_index}/variable/{var_name}
GET /api/1.0/{workspace}/case/{app_uid}/{del_index}/variable/{var_name}/paged
POST /api/1.0/{workspace}/case/{app_uid}/{del_index}/variable/{var_name}
PUT /api/1.0/{workspace}/case/{app_uid}/{del_index}/variable/{var_name}
DELETE /api/1.0/{workspace}/case/{app_uid}/{del_index}/variable/{var_name}
142 lines
3.4 KiB
PHP
142 lines
3.4 KiB
PHP
<?php
|
|
namespace ProcessMaker\BusinessModel\Util;
|
|
|
|
class Attribute
|
|
{
|
|
private $runningWorkflow = true;
|
|
|
|
private $arrayFieldDefinition = [];
|
|
|
|
private $arrayFieldNameForException = [];
|
|
|
|
private $arrayVariableNameForException = [];
|
|
|
|
/**
|
|
* Constructor of the class
|
|
*
|
|
* @param bool $runningWorkflow
|
|
* @param array $arrayFieldDefinition
|
|
* @param array $arrayVariableNameForException
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct($runningWorkflow, array $arrayFieldDefinition, array $arrayVariableNameForException)
|
|
{
|
|
try {
|
|
$this->runningWorkflow = $runningWorkflow;
|
|
$this->arrayFieldDefinition = $arrayFieldDefinition;
|
|
|
|
foreach ($arrayFieldDefinition as $key => $value) {
|
|
if (isset($value['fieldNameAux'])) {
|
|
$this->arrayFieldNameForException[$value['fieldNameAux']] = $key;
|
|
}
|
|
}
|
|
|
|
foreach ($arrayVariableNameForException as $value) {
|
|
$this->arrayVariableNameForException[$value] = $value;
|
|
}
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Set runningWorkflow atributte
|
|
*
|
|
* @param bool $flag
|
|
*
|
|
* @return void
|
|
*/
|
|
public function setRunningWorkflow($flag)
|
|
{
|
|
try {
|
|
$this->runningWorkflow = $flag;
|
|
|
|
$this->setArrayFieldNameForException($this->arrayFieldNameForException);
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Set arrayFieldNameForException atributte by data
|
|
*
|
|
* @param array $arrayData
|
|
*
|
|
* @return void
|
|
*/
|
|
public function setArrayFieldNameForException(array $arrayData)
|
|
{
|
|
try {
|
|
foreach ($arrayData as $key => $value) {
|
|
$this->arrayFieldNameForException[$key] = $this->convertFieldNameByRunningWorkflow($value);
|
|
}
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Set arrayVariableNameForException atributte by data
|
|
*
|
|
* @param array $arrayData
|
|
*
|
|
* @return void
|
|
*/
|
|
public function setArrayVariableNameForException(array $arrayData)
|
|
{
|
|
try {
|
|
foreach ($arrayData as $key => $value) {
|
|
$this->arrayVariableNameForException[$key] = $value;
|
|
}
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Get arrayFieldNameForException atributte
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getArrayFieldNameForException()
|
|
{
|
|
try {
|
|
return $this->arrayFieldNameForException;
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Get arrayVariableNameForException atributte
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getArrayVariableNameForException()
|
|
{
|
|
try {
|
|
return $this->arrayVariableNameForException;
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Convert field name by runningWorkflow
|
|
*
|
|
* @param string $fieldName
|
|
*
|
|
* @return string
|
|
*/
|
|
public function convertFieldNameByRunningWorkflow($fieldName)
|
|
{
|
|
try {
|
|
return ($this->runningWorkflow)? strtoupper($fieldName) : strtolower($fieldName);
|
|
} catch (\Exception $e) {
|
|
throw $e;
|
|
}
|
|
}
|
|
}
|
|
|