BUG 8315 Se añadio el webservice unassignedCaseList.

This commit is contained in:
Alvaro Campos
2012-01-19 17:22:58 -04:00
parent 0e03847386
commit a55548cfd1
5 changed files with 159 additions and 2 deletions

View File

@@ -26,6 +26,7 @@
// * It works with the table CONFIGURATION in a WF dataBase
require_once ( "classes/model/Application.php" );
require_once ( "classes/model/AppCacheView.php" );
require_once ( "classes/model/AppDelegation.php" );
require_once ( "classes/model/AppDocument.php" );
require_once ( "classes/model/AppDelay.php");
@@ -327,6 +328,30 @@ class wsBase
}
}
/*
* Get unassigned case list
* @param string $userId
* @return $result will return an object
*/
public function unassignedCaseList( $userId ) {
try {
$result = array();
$oAppCache = new AppCacheView();
$Criteria = $oAppCache->getUnassignedListCriteria($userId);
$oDataset = AppCacheViewPeer::doSelectRS($Criteria);
$oDataset -> setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset->next();
while($aRow = $oDataset->getRow()){
$result[] = array ( 'guid' => $aRow['APP_UID'], 'name' => $aRow['APP_NUMBER'], 'delIndex' => $aRow['DEL_INDEX'] );
$oDataset-> next();
}
return $result;
}
catch ( Exception $e ) {
$result[] = array ( 'guid' => $e->getMessage(), 'name' => $e->getMessage(), 'status' => $e->getMessage() , 'status' => $e->getMessage() );
return $result;
}
}
/*
* get all groups

View File

@@ -138,6 +138,13 @@
<xs:element name="delIndex" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="unassignedCaseListStruct">
<xs:sequence>
<xs:element name="guid" type="xs:string"/>
<xs:element name="name" type="xs:string"/>
<xs:element name="delIndex" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="caseListRequest">
<xs:complexType>
<xs:sequence>
@@ -145,6 +152,13 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="unassignedCaseListRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="sessionId" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="caseListResponse">
<xs:complexType>
<xs:sequence>
@@ -152,6 +166,13 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="unassignedCaseListResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="cases" maxOccurs="unbounded" type="xs0:unassignedCaseListStruct"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="createUserRequest">
<xs:complexType>
<xs:sequence>
@@ -680,6 +701,12 @@
<message name="caseListResponse">
<part name="parameters" element="xs0:caseListResponse"/>
</message>
<message name="unassignedCaseListRequest">
<part name="parameters" element="xs0:unassignedCaseListRequest"/>
</message>
<message name="unassignedCaseListResponse">
<part name="parameters" element="xs0:unassignedCaseListResponse"/>
</message>
<message name="createUserRequest">
<part name="parameters" element="xs0:createUserRequest"/>
</message>
@@ -830,6 +857,10 @@
<input message="xs0:caseListRequest"/>
<output message="xs0:caseListResponse"/>
</operation>
<operation name="unassignedCaseList">
<input message="xs0:unassignedCaseListRequest"/>
<output message="xs0:unassignedCaseListResponse"/>
</operation>
<operation name="createUser">
<input message="xs0:createUserRequest"/>
<output message="xs0:createUserResponse"/>
@@ -992,6 +1023,15 @@
<soap12:body use="literal"/>
</output>
</operation>
<operation name="unassignedCaseList">
<soap12:operation soapAction="urn:unassignedCaseList" soapActionRequired="true" style="document"/>
<input>
<soap12:body use="literal"/>
</input>
<output>
<soap12:body use="literal"/>
</output>
</operation>
<operation name="createUser">
<soap12:operation soapAction="urn:createUser" soapActionRequired="true" style="document"/>
<input>

View File

@@ -166,6 +166,32 @@
return array("cases" => $res );
}
function UnassignedCaseList( $params ) {
$vsResult = isValidSession($params->sessionId);
if( $vsResult->status_code !== 0 ){
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
$o->name = '';
$o->delIndex = '';
return array("cases" => $o);
}
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
$o->guid = "2 Insufficient privileges to execute this function";
$o->name = '';
$o->delIndex = '';
return array("cases" => $o);
}
G::LoadClass('sessions');
$oSessions = new Sessions();
$session = $oSessions->getSessionUser($params->sessionId);
$userId = $session['USR_UID'];
$ws = new wsBase ();
$res = $ws->unassignedCaseList( $userId );
return array("cases" => $res );
}
function UserList( $params ) {
$vsResult = isValidSession($params->sessionId);
if( $vsResult->status_code !== 0 ){

View File

@@ -395,8 +395,73 @@ switch ($_POST ['action']) {
}
G::RenderPage ( 'publish', 'raw' );
break;
break;
case "UnassignedCaseList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'UnassignedCaseList', array ($params ));
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char', 'delIndex' => 'char' );
$result = G::PMWSCompositeResponse($wsResponse, 'cases');
if ( is_array( $result )) {
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
if (isset ( $item->delIndex ))
$delIndex = $item->delIndex;
}
$rows [] = array ('guid' => $guid, 'name' => $name, 'delIndex' => $delIndex );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['case'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'case' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrUnassignedCaseList', $c );
}
else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "UserList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );

View File

@@ -92,6 +92,7 @@ $allWebservices [] = 'SendVariables';
$allWebservices [] = 'SendMessage';
$allWebservices [] = 'ProcessList';
$allWebservices [] = 'CaseList';
$allWebservices [] = 'UnassignedCaseList';
$allWebservices [] = 'RoleList';
$allWebservices [] = 'GroupList';
$allWebservices [] = 'UserList';