2011-12-22 16:56:22 -04:00
|
|
|
<?php
|
2017-08-10 14:30:37 -04:00
|
|
|
use ProcessMaker\Util\ParseSoapVariableName;
|
2012-10-17 14:21:55 -04:00
|
|
|
|
2017-08-10 14:55:16 -04:00
|
|
|
ini_set("soap.wsdl_cache_enabled", 0); //disabling WSDL cache
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
define( 'WEB_SERVICE_VERSION', '2.0' );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
//$wsdl = PATH_METHODS . "services" . PATH_SEP . "pmos.wsdl";
|
|
|
|
|
$wsdl = PATH_METHODS . "services" . PATH_SEP . "pmos2.wsdl";
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function login ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->login( $params->userid, $params->password );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ('status_code' => $res->status_code,'message' => $res->message,'version' => WEB_SERVICE_VERSION,'timestamp' => $res->timestamp
|
2010-12-02 23:34:41 +00:00
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function ProcessList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("processes" => $o
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) != 0) {
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->processList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("processes" => $res
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_FACTORY' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2" . G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("processes" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
/**
|
|
|
|
|
* if you are not an admin user, then this function will return only your valid process *
|
|
|
|
|
*/
|
|
|
|
|
if (ifPermission( $params->sessionId, 'PM_FACTORY' ) == 0) {
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->processListVerified( $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("processes" => $res
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->processList();
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("processes" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function RoleList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("roles" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("roles" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$res = $ws->roleList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("roles" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function GroupList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("groups" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("groups" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$res = $ws->groupList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("groups" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function DepartmentList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("departments" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("departments" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$res = $ws->departmentList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("departments" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function CaseList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->status = '';
|
|
|
|
|
$o->delIndex = '';
|
2012-10-12 12:16:19 -04:00
|
|
|
$o->processId = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->status = '';
|
|
|
|
|
$o->delIndex = '';
|
2012-10-12 12:16:19 -04:00
|
|
|
$o->processId = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->caseList( $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function UnassignedCaseList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->delIndex = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $o
|
|
|
|
|
);
|
2012-01-19 17:22:58 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
|
|
|
|
$o->name = '';
|
|
|
|
|
$o->delIndex = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $o
|
|
|
|
|
);
|
2012-01-19 17:22:58 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
2012-01-19 17:22:58 -04:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->unassignedCaseList( $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("cases" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2012-01-19 17:22:58 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function UserList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("users" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("users" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$res = $ws->userList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("users" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function triggerList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->processId = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("triggers" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->processId = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("triggers" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$res = $ws->triggerList();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("triggers" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function outputDocumentList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->outputDocumentList( $params->caseId, $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function inputDocumentList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->inputDocumentList( $params->caseId, $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function inputDocumentProcessList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->description = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->description = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->inputDocumentProcessList( $params->processId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("documents" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function removeDocument ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->removeDocument( $params->appDocUid );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function SendMessage ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->sendMessage( $params->caseId, $params->from, $params->to, $params->cc, $params->bcc, $params->subject, $params->template );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return $res->getPayloadArray();
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function getCaseInfo ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->getCaseInfo( $params->caseId, $params->delIndex );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function SendVariables ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase();
|
|
|
|
|
$variables = $params->variables;
|
2012-10-17 14:21:55 -04:00
|
|
|
$Fields = array ();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_object( $variables )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
$Fields[$variables->name] = $variables->value;
|
2012-10-17 14:21:55 -04:00
|
|
|
} elseif (is_array( $variables )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
foreach ($variables as $index => $obj) {
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_object( $obj ) && isset( $obj->name ) && isset( $obj->value )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
$Fields[$obj->name] = $obj->value;
|
|
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$params->variables = $Fields;
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->sendVariables( $params->caseId, $params->variables );
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
return $res->getPayloadArray();
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function GetVariables ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
if (! is_array( $params->variables )) {
|
|
|
|
|
$params->variables = array ($params->variables
|
|
|
|
|
);
|
2011-09-15 16:35:48 -04:00
|
|
|
}
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsGetVariableResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES'), null );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->getVariables( $params->caseId, $params->variables );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function GetVariablesNames ($params)
|
2012-10-05 16:38:14 -04:00
|
|
|
{
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-10-05 16:38:14 -04:00
|
|
|
|
|
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsGetVariableResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES'), null );
|
2012-10-05 16:38:14 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->getVariablesNames( $params->caseId );
|
2012-10-05 16:38:14 -04:00
|
|
|
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function DerivateCase ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2010-12-02 23:34:41 +00:00
|
|
|
$oSession = new Sessions();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $oSession->getSessionUser( $params->sessionId );
|
2010-12-02 23:34:41 +00:00
|
|
|
|
|
|
|
|
$oStd->stored_system_variables = true;
|
|
|
|
|
$oStd->wsSessionId = $params->sessionId;
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$ws = new wsBase( $oStd );
|
2013-06-24 10:24:45 -04:00
|
|
|
$res = $ws->derivateCase($user["USR_UID"], $params->caseId, $params->delIndex, true);
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function RouteCase ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2010-12-02 23:34:41 +00:00
|
|
|
$oSession = new Sessions();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $oSession->getSessionUser( $params->sessionId );
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2015-05-08 17:52:40 -04:00
|
|
|
$oStd = new stdclass();
|
2010-12-02 23:34:41 +00:00
|
|
|
$oStd->stored_system_variables = true;
|
|
|
|
|
$oStd->wsSessionId = $params->sessionId;
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$ws = new wsBase( $oStd );
|
2013-06-24 10:24:45 -04:00
|
|
|
$res = $ws->derivateCase($user["USR_UID"], $params->caseId, $params->delIndex, true);
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return $res;
|
|
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function executeTrigger ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSession = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $oSession->getSessionUser( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$delIndex = (isset( $params->delIndex )) ? $params->delIndex : 1;
|
|
|
|
|
$res = $ws->executeTrigger( $user['USR_UID'], $params->caseId, $params->triggerIndex, $delIndex );
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
return $res->getPayloadArray();
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function NewCaseImpersonate ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-07-04 10:21:13 -04:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_CASES" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
///////
|
2010-12-02 23:34:41 +00:00
|
|
|
$variables = $params->variables;
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$field = array ();
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_object( $variables )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
$field[$variables->name] = $variables->value;
|
|
|
|
|
} else {
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_array( $variables )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
foreach ($variables as $index => $obj) {
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_object( $obj ) && isset( $obj->name ) && isset( $obj->value )) {
|
2012-07-04 10:21:13 -04:00
|
|
|
$field[$obj->name] = $obj->value;
|
|
|
|
|
}
|
|
|
|
|
}
|
2012-04-25 17:19:54 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$params->variables = $field;
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
///////
|
|
|
|
|
$ws = new wsBase();
|
2014-06-16 12:43:25 -04:00
|
|
|
$res = $ws->newCaseImpersonate($params->processId, $params->userId, $params->variables, $params->taskId);
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
/**
|
|
|
|
|
* Begins a new case under the name of the logged-in user.
|
|
|
|
|
* Where the parameter value is:
|
|
|
|
|
* - string sessionId: The ID of the session, which is obtained during login.
|
|
|
|
|
* - string processId: The ID of the process where the case should start, which
|
|
|
|
|
* can be obtained with processList().
|
|
|
|
|
* - string taskId: The ID of the task where the case should start. This will
|
|
|
|
|
* generally be the first task in a process, which can be obtained with taskList().
|
|
|
|
|
* - array variables: An array of variableStruct objects which contain information
|
|
|
|
|
* to start the case. This array has the following format.
|
|
|
|
|
*
|
|
|
|
|
* @param object $params
|
|
|
|
|
*
|
|
|
|
|
* @return object
|
|
|
|
|
*/
|
|
|
|
|
function NewCase($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2017-08-08 00:21:36 -04:00
|
|
|
$parseSoapVariableVame = new ParseSoapVariableName();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-07-04 10:21:13 -04:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
if (ifPermission($params->sessionId, 'PM_CASES') == 0) {
|
|
|
|
|
$result = new wsResponse(2, G::LoadTranslation('ID_NOT_PRIVILEGES'));
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
$oSession = new Sessions();
|
2017-08-08 00:21:36 -04:00
|
|
|
$session = $oSession->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
2012-04-25 17:19:54 -04:00
|
|
|
$variables = $params->variables;
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
$field = array();
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
if (is_object($variables) && $variables->name === '__POST_VARIABLES__') {
|
2015-11-19 12:01:31 -04:00
|
|
|
$field = G::json_decode($variables->value, true);
|
|
|
|
|
$variables = null;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
if (is_object($variables)) {
|
2012-07-11 15:24:11 -04:00
|
|
|
$field[$variables->name] = $variables->value;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
if (is_array($variables)) {
|
|
|
|
|
foreach ($variables as $val) {
|
|
|
|
|
if (!is_object($val->value)) {
|
|
|
|
|
$parseSoapVariableVame->buildVariableName($field, $val->name, $val->value);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
}
|
2012-07-04 10:21:13 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
$params->variables = $field;
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-04-25 17:19:54 -04:00
|
|
|
$ws = new wsBase();
|
2013-06-24 10:24:45 -04:00
|
|
|
|
2017-08-08 00:21:36 -04:00
|
|
|
$res = $ws->newCase($params->processId, $userId, $params->taskId, $params->variables, (isset($params->executeTriggers)) ? (int) ($params->executeTriggers) : 0);
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
// we need to register the case id for a stored session variable. like a normal Session.
|
2017-08-08 00:21:36 -04:00
|
|
|
$oSession->registerGlobal('APPLICATION', $res->caseId);
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function AssignUserToGroup ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
$sessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $sessions->getSessionUser( $params->sessionId );
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (! is_array( $user )) {
|
|
|
|
|
return new wsResponse( 3, 'User not registered in the system' );
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->assignUserToGroup( $params->userId, $params->groupId );
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
return $res->getPayloadArray();
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function AssignUserToDepartment ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
$sessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $sessions->getSessionUser( $params->sessionId );
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (! is_array( $user )) {
|
2013-03-14 15:15:04 -04:00
|
|
|
return new wsResponse( 3, G::LoadTranslation('ID_USER_NOT_REGISTERED_SYSTEM') );
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->AssignUserToDepartment( $params->userId, $params->departmentId, $params->manager );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
return $res->getPayloadArray();
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function CreateUser ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsCreateUserResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 12:52:43 -04:00
|
|
|
$ws = new wsBase();
|
|
|
|
|
|
2013-03-20 10:58:19 -04:00
|
|
|
try {
|
|
|
|
|
$res = $ws->createUser( $params->userId, $params->firstname, $params->lastname, $params->email, $params->role, $params->password, ((isset( $params->dueDate )) ? $params->dueDate : null), ((isset( $params->status )) ? $params->status : null) );
|
|
|
|
|
} catch(Exception $oError) {
|
|
|
|
|
return $oError->getMessage();
|
|
|
|
|
}
|
2012-07-11 12:52:43 -04:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function updateUser ($params)
|
2012-07-25 18:27:48 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = isValidSession( $params->sessionId );
|
2012-07-25 18:27:48 -04:00
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_USERS" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-25 18:27:48 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = $ws->updateUser( $params->userUid, $params->userName, ((isset( $params->firstName )) ? $params->firstName : null), ((isset( $params->lastName )) ? $params->lastName : null), ((isset( $params->email )) ? $params->email : null), ((isset( $params->dueDate )) ? $params->dueDate : null), ((isset( $params->status )) ? $params->status : null), ((isset( $params->role )) ? $params->role : null), ((isset( $params->password )) ? $params->password : null) );
|
2012-07-25 18:27:48 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-11-15 12:56:33 -04:00
|
|
|
function informationUser($params)
|
|
|
|
|
{
|
|
|
|
|
$result = isValidSession($params->sessionId);
|
|
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ifPermission($params->sessionId, "PM_USERS") == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse(2, G::LoadTranslation('ID_NOT_PRIVILEGES'));
|
2012-11-15 12:56:33 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$result = $ws->informationUser($params->userUid);
|
|
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function CreateGroup ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = new wsCreateGroupResponse( $vsResult->status_code, $vsResult->message, '' );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsCreateGroupResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES'), '' );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->createGroup( $params->name );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function CreateDepartment ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-07-04 10:21:13 -04:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_USERS' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsCreateUserResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $result;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->CreateDepartment( $params->name, $params->parentUID );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function TaskList ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("tasks" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2" . G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("tasks" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2010-12-02 23:34:41 +00:00
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->getSessionUser( $params->sessionId );
|
|
|
|
|
$userId = $session['USR_UID'];
|
|
|
|
|
$res = $ws->taskList( $userId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("tasks" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function TaskCase ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
2012-10-17 14:21:55 -04:00
|
|
|
$o->guid = $vsResult->status_code . ' ' . $vsResult->message;
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("taskCases" => $o
|
|
|
|
|
);
|
2011-01-26 02:32:51 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES' ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$o->guid = "2".G::LoadTranslation('ID_INSUFFICIENT_PRIVILEGES_FUNCTION');
|
2012-07-04 10:21:13 -04:00
|
|
|
$o->name = '';
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("taskCases" => $o
|
|
|
|
|
);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->taskCase( $params->caseId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return array ("taskCases" => $res
|
|
|
|
|
);
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function ReassignCase ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->reassignCase( $params->sessionId, $params->caseId, $params->delIndex, $params->userIdSource, $params->userIdTarget );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
|
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function systemInformation ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->systemInformation();
|
|
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function getCaseNotes ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
BUG 9043 Variable for Case Notes content needed SOLVED
- Se crearon varias funciones para este caso.
- La funcion getCaseNotes en la class.case.php con los parametros applicationID, type que es la forma que quiere que se devuelvan los datos, puede ser array, objetc, string por defecto esta en array, y userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- Se modifico la funcion getNotesList para poder traer las notas por un determinado usuario y por defecto recupera las notas de todos los usuarios.
- en class.pmFunctions.php se creo la funcion PMFGetCaseNotes con los parametros applicationID, type que es la forma que quiere que se devuelvan los datos, puede ser array, objetc, string por defecto esta en array, y userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- En class.wsBase.php la funcion getCaseNotes con los parametros applicationID, userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios, esta funcion nos devuelve un array con los fieds en minuscula.
- En soap2.php getCaseNotes donde se tienen los siguiente parametros: sessionId, se necesita iniciar una session para poder utilizarlo, applicationID, userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- Se adiciono la funcion para utilizarlo en SoapServer.
- En wsResponse se creo un nuevo template para la respuesta del webservice wsGetCaseNotesResponse con los campos status_code, message, notes, timestamp.
- En pmos2.wsdl se agregaron los datos necesarios para la salida correcta del webservice.
2012-05-02 09:56:30 -04:00
|
|
|
}
|
|
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->getCaseNotes( $params->applicationID, $params->userUid );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
BUG 9043 Variable for Case Notes content needed SOLVED
- Se crearon varias funciones para este caso.
- La funcion getCaseNotes en la class.case.php con los parametros applicationID, type que es la forma que quiere que se devuelvan los datos, puede ser array, objetc, string por defecto esta en array, y userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- Se modifico la funcion getNotesList para poder traer las notas por un determinado usuario y por defecto recupera las notas de todos los usuarios.
- en class.pmFunctions.php se creo la funcion PMFGetCaseNotes con los parametros applicationID, type que es la forma que quiere que se devuelvan los datos, puede ser array, objetc, string por defecto esta en array, y userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- En class.wsBase.php la funcion getCaseNotes con los parametros applicationID, userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios, esta funcion nos devuelve un array con los fieds en minuscula.
- En soap2.php getCaseNotes donde se tienen los siguiente parametros: sessionId, se necesita iniciar una session para poder utilizarlo, applicationID, userID que nos daria solo las notas de ese usuario, por defecto nos devuelve de todos los usuarios.
- Se adiciono la funcion para utilizarlo en SoapServer.
- En wsResponse se creo un nuevo template para la respuesta del webservice wsGetCaseNotesResponse con los campos status_code, message, notes, timestamp.
- En pmos2.wsdl se agregaron los datos necesarios para la salida correcta del webservice.
2012-05-02 09:56:30 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
/**
|
|
|
|
|
* **********
|
2012-07-04 10:21:13 -04:00
|
|
|
* #added By Erik AO <erik@colosa.com> in datetime 26.06.2008 10:00:00
|
2012-10-17 14:21:55 -04:00
|
|
|
* # modified 12-01-2010 by erik
|
|
|
|
|
*/
|
|
|
|
|
function isValidSession ($sessionId)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2010-12-02 23:34:41 +00:00
|
|
|
$oSessions = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$session = $oSessions->verifySession( $sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (is_array( $session )) {
|
2013-03-14 15:15:04 -04:00
|
|
|
return new wsResponse( 0, G::LoadTranslation('ID_SESSION_ACTIVE') );
|
2010-12-02 23:34:41 +00:00
|
|
|
} else {
|
2013-03-14 15:15:04 -04:00
|
|
|
return new wsResponse( 9, G::LoadTranslation('ID_SESSION_EXPIRED') );
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
//add removeUserFromGroup
|
2012-10-17 14:21:55 -04:00
|
|
|
function removeUserFromGroup ($params)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$vsResult = isValidSession( $params->sessionId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
2011-02-02 21:29:47 +00:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2012-07-11 15:24:11 -04:00
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$res = $ws->removeUserFromGroup( $params->userId, $params->groupId );
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
return $res;
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//end add
|
2012-10-17 14:21:55 -04:00
|
|
|
function ifPermission ($sessionId, $permission)
|
2012-07-04 10:21:13 -04:00
|
|
|
{
|
|
|
|
|
global $RBAC;
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
$RBAC->initRBAC();
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
$oSession = new Sessions();
|
2012-10-17 14:21:55 -04:00
|
|
|
$user = $oSession->getSessionUser( $sessionId );
|
2012-07-04 10:21:13 -04:00
|
|
|
|
|
|
|
|
$oRBAC = RBAC::getSingleton();
|
2012-10-17 14:21:55 -04:00
|
|
|
$oRBAC->loadUserRolePermission( $oRBAC->sSystem, $user['USR_UID'] );
|
2012-07-04 10:21:13 -04:00
|
|
|
$aPermissions = $oRBAC->aUserInfo[$oRBAC->sSystem]['PERMISSIONS'];
|
2012-10-17 14:21:55 -04:00
|
|
|
$sw = 0;
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
foreach ($aPermissions as $aPermission) {
|
|
|
|
|
if ($aPermission['PER_CODE'] == $permission) {
|
2012-07-11 15:24:11 -04:00
|
|
|
$sw = 1;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-07-04 10:21:13 -04:00
|
|
|
}
|
2012-07-11 15:24:11 -04:00
|
|
|
|
2012-07-04 10:21:13 -04:00
|
|
|
return $sw;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function deleteCase ($params)
|
2012-09-11 16:41:05 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = isValidSession( $params->sessionId );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_CASES" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = $ws->deleteCase( $params->caseUid );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function cancelCase ($params)
|
2012-09-11 16:41:05 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = isValidSession( $params->sessionId );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_CASES" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = $ws->cancelCase( $params->caseUid, $params->delIndex, $params->userUid );
|
2012-09-11 16:41:05 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function pauseCase ($params)
|
2012-09-12 14:46:26 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = isValidSession( $params->sessionId );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_CASES" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = $ws->pauseCase( $params->caseUid, $params->delIndex, $params->userUid, ((isset( $params->unpauseDate )) ? $params->unpauseDate : null) );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
function unpauseCase ($params)
|
2012-09-12 14:46:26 -04:00
|
|
|
{
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = isValidSession( $params->sessionId );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-17 14:21:55 -04:00
|
|
|
if (ifPermission( $params->sessionId, "PM_CASES" ) == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse( 2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
2012-10-17 14:21:55 -04:00
|
|
|
$result = $ws->unpauseCase( $params->caseUid, $params->delIndex, $params->userUid );
|
2012-09-12 14:46:26 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2012-11-19 14:35:10 -04:00
|
|
|
function addCaseNote($params)
|
|
|
|
|
{
|
|
|
|
|
$result = isValidSession($params->sessionId);
|
|
|
|
|
|
|
|
|
|
if ($result->status_code != 0) {
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ifPermission($params->sessionId, "PM_CASES") == 0) {
|
2013-03-14 15:15:04 -04:00
|
|
|
$result = new wsResponse(2, G::LoadTranslation('ID_NOT_PRIVILEGES') );
|
2012-11-19 14:35:10 -04:00
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$result = $ws->addCaseNote(
|
|
|
|
|
$params->caseUid,
|
|
|
|
|
$params->processUid,
|
|
|
|
|
$params->taskUid,
|
|
|
|
|
$params->userUid,
|
|
|
|
|
$params->note,
|
|
|
|
|
(isset($params->sendMail))? $params->sendMail : 1
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
2013-10-24 14:23:40 -04:00
|
|
|
function claimCase($params)
|
2013-10-24 13:56:24 -04:00
|
|
|
{
|
|
|
|
|
$vsResult = isValidSession($params->sessionId);
|
|
|
|
|
if ($vsResult->status_code !== 0) {
|
|
|
|
|
return $vsResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ifPermission($params->sessionId, 'PM_CASES') == 0) {
|
|
|
|
|
$result = new wsResponse(2, G::LoadTranslation('ID_NOT_PRIVILEGES'));
|
|
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->claimCase($session['USR_UID'], $params->guid, $params->delIndex);
|
|
|
|
|
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
2017-02-21 15:46:11 -04:00
|
|
|
$options = array(
|
|
|
|
|
'cache_wsdl' => WSDL_CACHE_NONE
|
|
|
|
|
);
|
|
|
|
|
$server = new SoapServer($wsdl, $options);
|
2012-11-15 12:56:33 -04:00
|
|
|
|
|
|
|
|
$server->addFunction("Login");
|
|
|
|
|
$server->addFunction("ProcessList");
|
|
|
|
|
$server->addFunction("CaseList");
|
|
|
|
|
$server->addFunction("UnassignedCaseList");
|
|
|
|
|
$server->addFunction("RoleList");
|
|
|
|
|
$server->addFunction("GroupList");
|
|
|
|
|
$server->addFunction("DepartmentList");
|
|
|
|
|
$server->addFunction("UserList");
|
|
|
|
|
$server->addFunction("TriggerList");
|
|
|
|
|
$server->addFunction("outputDocumentList");
|
|
|
|
|
$server->addFunction("inputDocumentList");
|
|
|
|
|
$server->addFunction("inputDocumentProcessList");
|
|
|
|
|
$server->addFunction("removeDocument");
|
|
|
|
|
$server->addFunction("SendMessage");
|
|
|
|
|
$server->addFunction("SendVariables");
|
|
|
|
|
$server->addFunction("GetVariables");
|
|
|
|
|
$server->addFunction("GetVariablesNames");
|
|
|
|
|
$server->addFunction("DerivateCase");
|
|
|
|
|
$server->addFunction("RouteCase");
|
|
|
|
|
$server->addFunction("executeTrigger");
|
|
|
|
|
$server->addFunction("NewCaseImpersonate");
|
|
|
|
|
$server->addFunction("NewCase");
|
|
|
|
|
$server->addFunction("AssignUserToGroup");
|
|
|
|
|
$server->addFunction("AssignUserToDepartment");
|
|
|
|
|
$server->addFunction("CreateGroup");
|
|
|
|
|
$server->addFunction("CreateDepartment");
|
|
|
|
|
$server->addFunction("CreateUser");
|
|
|
|
|
$server->addFunction("updateUser");
|
|
|
|
|
$server->addFunction("informationUser");
|
|
|
|
|
$server->addFunction("getCaseInfo");
|
|
|
|
|
$server->addFunction("TaskList");
|
|
|
|
|
$server->addFunction("TaskCase");
|
|
|
|
|
$server->addFunction("ReassignCase");
|
|
|
|
|
$server->addFunction("systemInformation");
|
|
|
|
|
$server->addFunction("removeUserFromGroup");
|
|
|
|
|
$server->addFunction("getCaseNotes");
|
|
|
|
|
$server->addFunction("deleteCase");
|
|
|
|
|
$server->addFunction("cancelCase");
|
|
|
|
|
$server->addFunction("pauseCase");
|
|
|
|
|
$server->addFunction("unpauseCase");
|
2012-11-19 14:35:10 -04:00
|
|
|
$server->addFunction("addCaseNote");
|
2013-10-24 14:23:40 -04:00
|
|
|
$server->addFunction("claimCase");
|
2010-12-02 23:34:41 +00:00
|
|
|
$server->handle();
|
2012-07-11 15:24:11 -04:00
|
|
|
|