Correccion de BUGS en DEPARTAMENTS
This commit is contained in:
@@ -135,9 +135,24 @@ class Department
|
|||||||
*
|
*
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getAvailableUser($dep_uid)
|
public function getAvailableUser($dep_uid, $start = 0, $limit = 0, $search = '')
|
||||||
{
|
{
|
||||||
$dep_uid = Validator::depUid($dep_uid);
|
$dep_uid = Validator::depUid($dep_uid);
|
||||||
|
|
||||||
|
$start = (int)$start;
|
||||||
|
$start = abs($start);
|
||||||
|
if ($start != 0) {
|
||||||
|
$start+1;
|
||||||
|
}
|
||||||
|
|
||||||
|
$limit = (int)$limit;
|
||||||
|
$limit = abs($limit);
|
||||||
|
if ($limit == 0) {
|
||||||
|
$limit = 25;
|
||||||
|
} else {
|
||||||
|
$limit = (int)$limit;
|
||||||
|
}
|
||||||
|
|
||||||
$oCriteria = new \Criteria( 'workflow' );
|
$oCriteria = new \Criteria( 'workflow' );
|
||||||
$oCriteria->addSelectColumn( UsersPeer::USR_UID );
|
$oCriteria->addSelectColumn( UsersPeer::USR_UID );
|
||||||
$oCriteria->addSelectColumn( UsersPeer::USR_USERNAME );
|
$oCriteria->addSelectColumn( UsersPeer::USR_USERNAME );
|
||||||
@@ -147,6 +162,13 @@ class Department
|
|||||||
$oCriteria->add( UsersPeer::DEP_UID, '' );
|
$oCriteria->add( UsersPeer::DEP_UID, '' );
|
||||||
$oCriteria->add( UsersPeer::USR_STATUS, 'CLOSED', \Criteria::NOT_EQUAL );
|
$oCriteria->add( UsersPeer::USR_STATUS, 'CLOSED', \Criteria::NOT_EQUAL );
|
||||||
|
|
||||||
|
$oCriteria->setLimit( $limit );
|
||||||
|
$oCriteria->setOffset( $start );
|
||||||
|
|
||||||
|
if ($search != '') {
|
||||||
|
$oCriteria->add( $oCriteria->getNewCriterion( UsersPeer::USR_USERNAME, '%' . $search . '%', \Criteria::LIKE )->addOr( $oCriteria->getNewCriterion( UsersPeer::USR_FIRSTNAME, '%' . $search . '%', \Criteria::LIKE )->addOr( $oCriteria->getNewCriterion( UsersPeer::USR_LASTNAME, '%' . $search . '%', \Criteria::LIKE ) ) ) );
|
||||||
|
}
|
||||||
|
|
||||||
$oDataset = UsersPeer::doSelectRS( $oCriteria );
|
$oDataset = UsersPeer::doSelectRS( $oCriteria );
|
||||||
$oDataset->setFetchmode( \ResultSet::FETCHMODE_ASSOC );
|
$oDataset->setFetchmode( \ResultSet::FETCHMODE_ASSOC );
|
||||||
$aUsers = array ();
|
$aUsers = array ();
|
||||||
@@ -257,11 +279,26 @@ class Department
|
|||||||
$dep_uid = Validator::depUid($dep_uid);
|
$dep_uid = Validator::depUid($dep_uid);
|
||||||
$usr_uid = Validator::usrUid($usr_uid);
|
$usr_uid = Validator::usrUid($usr_uid);
|
||||||
|
|
||||||
|
$oCriteria = new \Criteria( 'workflow' );
|
||||||
|
$oCriteria->addSelectColumn( DepartmentPeer::DEP_UID );
|
||||||
|
$oCriteria->add( DepartmentPeer::DEP_MANAGER, $usr_uid, \Criteria::EQUAL );
|
||||||
|
|
||||||
|
$oDataset = DepartmentPeer::doSelectRS( $oCriteria );
|
||||||
|
$oDataset->setFetchmode( \ResultSet::FETCHMODE_ASSOC );
|
||||||
|
if ($oDataset->next()) {
|
||||||
|
throw (new \Exception(\G::LoadTranslation("ID_DEPARTMENT_MANAGER_EXIST", array('usr_uid',$usr_uid))));
|
||||||
|
}
|
||||||
|
|
||||||
$editDepartment['DEP_UID'] = $dep_uid;
|
$editDepartment['DEP_UID'] = $dep_uid;
|
||||||
$editDepartment['DEP_MANAGER'] = $usr_uid;
|
$editDepartment['DEP_MANAGER'] = $usr_uid;
|
||||||
$oDept = new \Department();
|
$oDept = new \Department();
|
||||||
$oDept->update( $editDepartment );
|
$oDept->update( $editDepartment );
|
||||||
$oDept->updateDepartmentManager( $dep_uid );
|
$oDept->updateDepartmentManager( $dep_uid );
|
||||||
|
|
||||||
|
$oDept = new \Department();
|
||||||
|
$oDept->load($dep_uid);
|
||||||
|
$oDept->addUserToDepartment($dep_uid, $usr_uid, ($oDept->getDepManager() == "")? true : false, false);
|
||||||
|
$oDept->updateDepartmentManager($dep_uid);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -59,6 +59,9 @@ class Department extends Api
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $dep_uid {@min 1}{@max 32}
|
* @param string $dep_uid {@min 1}{@max 32}
|
||||||
|
* @param string $start {@from path}
|
||||||
|
* @param string $limit {@from path}
|
||||||
|
* @param string $search {@from path}
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @author Brayan Pereyra (Cochalo) <brayan@colosa.com>
|
* @author Brayan Pereyra (Cochalo) <brayan@colosa.com>
|
||||||
@@ -68,11 +71,11 @@ class Department extends Api
|
|||||||
*
|
*
|
||||||
* @url GET /:dep_uid/available-user
|
* @url GET /:dep_uid/available-user
|
||||||
*/
|
*/
|
||||||
public function doGetAvailableUser($dep_uid)
|
public function doGetAvailableUser($dep_uid, $start = 0, $limit = 0, $search = '')
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$oDepartment = new \ProcessMaker\BusinessModel\Department();
|
$oDepartment = new \ProcessMaker\BusinessModel\Department();
|
||||||
$response = $oDepartment->getAvailableUser($dep_uid);
|
$response = $oDepartment->getAvailableUser($dep_uid, $start, $limit, $search);
|
||||||
return $response;
|
return $response;
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||||
|
|||||||
Reference in New Issue
Block a user