BUG 5785 Fix Bug Validation of the parent and existing department.
This commit is contained in:
@@ -964,7 +964,17 @@ class wsBase
|
|||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
$department = new department();
|
$department = new Department();
|
||||||
|
if ( ($parentUID != '') && !($department->existsDepartment($parentUID)) ) {
|
||||||
|
$result = new wsCreateDepartmentResponse (26, G::loadTranslation ('ID_PARENT_DEPARTMENT_NOT_EXIST'), $parentUID);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( $department->checkDepartmentName($departmentName, $parentUID ) ) {
|
||||||
|
$result = new wsCreateDepartmentResponse (27, G::loadTranslation ('ID_DEPARTMENT_EXISTS'), '');
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
$row['DEP_TITLE'] = $departmentName;
|
$row['DEP_TITLE'] = $departmentName;
|
||||||
$row['DEP_PARENT'] = $parentUID;
|
$row['DEP_PARENT'] = $parentUID;
|
||||||
|
|
||||||
|
|||||||
@@ -444,6 +444,37 @@ function getDepartments( $DepParent ) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check department name exist in the level
|
||||||
|
* @param string $departmentName name of the department
|
||||||
|
* @param string $parentUID parent UID of the department
|
||||||
|
* @param string $departmentUID department UID
|
||||||
|
* @return boolean $Fields true or false
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function checkDepartmentName($departmentName, $parentUID, $departmentUID = '' )
|
||||||
|
{
|
||||||
|
$oCriteria = new Criteria('workflow');
|
||||||
|
|
||||||
|
$oCriteria->clearSelectColumns();
|
||||||
|
$oCriteria->addSelectColumn( ContentPeer::CON_CATEGORY );
|
||||||
|
$oCriteria->addSelectColumn( ContentPeer::CON_VALUE );
|
||||||
|
$oCriteria->addSelectColumn( DepartmentPeer::DEP_PARENT );
|
||||||
|
$oCriteria->add(ContentPeer::CON_CATEGORY, 'DEPO_TITLE');
|
||||||
|
$oCriteria->addJoin(ContentPeer::CON_ID, DepartmentPeer::DEP_UID, Criteria::LEFT_JOIN);
|
||||||
|
$oCriteria->add(ContentPeer::CON_VALUE, $departmentName);
|
||||||
|
$oCriteria->add(DepartmentPeer::DEP_UID, $departmentUID, Criteria::NOT_EQUAL);
|
||||||
|
$oCriteria->add(ContentPeer::CON_LANG, SYS_LANG );
|
||||||
|
$oCriteria->add(DepartmentPeer::DEP_PARENT, $parentUID);
|
||||||
|
|
||||||
|
$oDataset = DepartmentPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
$aRow = $oDataset->getRow();
|
||||||
|
|
||||||
|
return ($aRow) ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
function getUsersFromDepartment( $sDepUid, $sManagerUid ) {
|
function getUsersFromDepartment( $sDepUid, $sManagerUid ) {
|
||||||
try {
|
try {
|
||||||
$oCriteria = new Criteria('workflow');
|
$oCriteria = new Criteria('workflow');
|
||||||
|
|||||||
@@ -185,24 +185,9 @@ switch ($_POST['action'])
|
|||||||
$dep_name = $_REQUEST['name'];
|
$dep_name = $_REQUEST['name'];
|
||||||
$dep_uid = $_REQUEST['uid'];
|
$dep_uid = $_REQUEST['uid'];
|
||||||
|
|
||||||
$oCriteria = new Criteria('workflow');
|
$oDepartment = new Department();
|
||||||
$oCriteria->clearSelectColumns();
|
$checkVal = $oDepartment->checkDepartmentName($dep_name, $parent, $dep_uid );
|
||||||
$oCriteria->addSelectColumn( ContentPeer::CON_CATEGORY );
|
echo ( !$checkVal ) ? 'true' : 'false';
|
||||||
$oCriteria->addSelectColumn( ContentPeer::CON_VALUE );
|
|
||||||
$oCriteria->addSelectColumn(DepartmentPeer::DEP_PARENT);
|
|
||||||
$oCriteria->add(ContentPeer::CON_CATEGORY, 'DEPO_TITLE');
|
|
||||||
$oCriteria->addJoin(ContentPeer::CON_ID, DepartmentPeer::DEP_UID, Criteria::LEFT_JOIN);
|
|
||||||
$oCriteria->add(ContentPeer::CON_VALUE, $dep_name);
|
|
||||||
$oCriteria->add(DepartmentPeer::DEP_UID,$dep_uid,Criteria::NOT_EQUAL);
|
|
||||||
$oCriteria->add(ContentPeer::CON_LANG, SYS_LANG );
|
|
||||||
$oCriteria->add(DepartmentPeer::DEP_PARENT,$parent);
|
|
||||||
|
|
||||||
$oDataset = DepartmentPeer::doSelectRS($oCriteria);
|
|
||||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
|
||||||
$oDataset->next();
|
|
||||||
$aRow = $oDataset->getRow();
|
|
||||||
|
|
||||||
echo (!$aRow) ? 'true' : 'false';
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'saveDepartment':
|
case 'saveDepartment':
|
||||||
|
|||||||
Reference in New Issue
Block a user