Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 18 |
CRAP | |
0.00% |
0 / 161 |
FileService | |
0.00% |
0 / 1 |
|
0.00% |
0 / 18 |
1332.00 | |
0.00% |
0 / 161 |
__construct | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 2 |
|||
__clone | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
getInstance | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 5 |
|||
getFileCategories | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
createFileCategory | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
updateFileCategory | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
getFileCategoryById | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 10 |
|||
createFileCategoryRoles | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 15 |
|||
getFileCategoryRolesByCategoryId | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 10 |
|||
deleteFileCategoryRoles | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
deleteFileCategory | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 11 |
|||
getfileLocationDetails | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
createFileLocationDetails | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
updateFileLocationDetails | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
deleteFileLocationDetails | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
getFileLocationDetailsById | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 10 |
|||
getFileCategoryByRole | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 15 |
|||
getfileLocationDetailsByCategoryId | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 10 |
<?php | |
namespace com\linways\core\ams\professional\service; | |
use com\linways\core\ams\professional\exception\ProfessionalException; | |
use com\linways\core\ams\professional\dto\FileCategory; | |
use com\linways\core\ams\professional\dto\FileLocationDetails; | |
class FileService extends BaseService | |
{ | |
// /Condition 1 - Presence of a static member variable | |
private static $_instance = null; | |
// /Condition 2 - Locked down the constructor | |
private function __construct() | |
{ | |
} | |
// Prevent any oustide instantiation of this class | |
// /Condition 3 - Prevent any object or instance of that class to be cloned | |
private function __clone() | |
{} | |
// Prevent any copy of this object | |
// /Condition 4 - Have a single globally accessible static method | |
public static function getInstance() | |
{ | |
if (! is_object(self::$_instance)) // or if( is_null(self::$_instance) ) or if( self::$_instance == null ) | |
self::$_instance = new self(); | |
return self::$_instance; | |
} | |
/** | |
* Get all file categories | |
* @throws ProfessionalException | |
* @return object|array|\com\linways\base\util\$objectList[] | |
*/ | |
public function getFileCategories() | |
{ | |
$sql = "select id, code, name, description from category"; | |
try { | |
$categoryDetails = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $categoryDetails; | |
} | |
/** | |
* create file category | |
* @param FileCategory $fileCategory | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function createFileCategory($fileCategory) | |
{ | |
$fileCategory = $this->realEscapeObject($fileCategory); | |
$sql = "insert into category (code, name, description, createdBy, createdDate, updatedBy, updatedDate) values (\"$fileCategory->code\",\"$fileCategory->name\",\"$fileCategory->description\", $fileCategory->createdBy,utc_timestamp(), $fileCategory->createdBy, utc_timestamp())"; | |
try { | |
return $this->executeQueryForObject($sql,true); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* update file category | |
* @param FileCategory $fileCategory | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function updateFileCategory($fileCategory) | |
{ | |
$fileCategory = $this->realEscapeObject($fileCategory); | |
$sql = "update category set code = \"$fileCategory->code\", name = \"$fileCategory->name\", description = \"$fileCategory->description\", updatedBy = $fileCategory->updatedBy, updatedDate = utc_timestamp() where id = $fileCategory->id"; | |
try { | |
return $this->executeQueryForObject($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* get file category by id | |
* @param int $id | |
* @throws ProfessionalException | |
* @return object|array|\com\linways\base\util\$objectList[] | |
*/ | |
public function getFileCategoryById($id) | |
{ | |
$id = $this->realEscapeString($id); | |
$sql = "select code, cat.name, description, role from category cat left join category_role cr on cat.id = cr.categoryId where cat.id = $id"; | |
try { | |
$categoryDetails = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $categoryDetails; | |
} | |
/** | |
* create file catgory roles | |
* @param int $categoryId | |
* @param string $roles | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function createFileCategoryRoles($categoryId,$roles) | |
{ | |
$categoryId = $this->realEscapeString($categoryId); | |
$roles = $this->realEscapeArray($roles); | |
$sql = "insert into category_role (categoryId, role) values "; | |
foreach ($roles as $role) | |
{ | |
$sql.= "($categoryId,\"$role\"), "; | |
} | |
$sql = rtrim($sql,", "); | |
try { | |
return $this->executeQueryForObject($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* Get file category roles by categoryId | |
* @param int $categoryId | |
* @throws ProfessionalException | |
* @return object|array|\com\linways\base\util\$objectList[] | |
*/ | |
public function getFileCategoryRolesByCategoryId($categoryId) | |
{ | |
$categoryId = $this->realEscapeString($categoryId); | |
$sql = "select role from category_role where categoryId = $categoryId"; | |
try { | |
$roles = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $roles; | |
} | |
/** | |
* Delete file category roles | |
* @param int $categoryId | |
* @throws ProfessionalException | |
* @return \com\linways\base\dto\MySqlResult | |
*/ | |
public function deleteFileCategoryRoles($categoryId) | |
{ | |
$categoryId = $this->realEscapeString($categoryId); | |
$sql = "delete from category_role where categoryId = $categoryId"; | |
try { | |
return $this->executeQuery($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* Delete file category | |
* @param int $categoryId | |
* @throws ProfessionalException | |
*/ | |
public function deleteFileCategory($categoryId) | |
{ | |
$categoryId = $this->realEscapeString($categoryId); | |
$sql = "delete from category where id = $categoryId"; | |
try { | |
$this->executeQuery($sql); | |
$this->deleteFileCategoryRoles($categoryId); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return true; | |
} | |
/** | |
* Get file location details | |
* @throws ProfessionalException | |
* @return object|array|\com\linways\base\util\$objectList[] | |
*/ | |
public function getfileLocationDetails() | |
{ | |
$sql = "select fl.id as fileId, categoryId, fl.name as fileName, link, code, cat.name, description from file_location_details fl left join category cat on fl.categoryId = cat.id"; | |
try { | |
$fileLocationDetails = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $fileLocationDetails; | |
} | |
/** | |
* Create file location details | |
* @param FileLocationDetails $fileStorage | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function createFileLocationDetails($fileStorage) | |
{ | |
$fileStorage = $this->realEscapeObject($fileStorage); | |
$sql = "insert into file_location_details (categoryId, name, link, createdBy, createdDate, updatedBy, updatedDate) values ($fileStorage->categoryId, \"$fileStorage->name\", \"$fileStorage->link\", $fileStorage->createdBy, UTC_TIMESTAMP(), $fileStorage->updatedBy, UTC_TIMESTAMP())"; | |
try { | |
return $this->executeQueryForObject($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* update file location details | |
* @param FileLocationDetails $fileStorage | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function updateFileLocationDetails($fileStorage) | |
{ | |
$fileStorage = $this->realEscapeObject($fileStorage); | |
$sql = "update file_location_details set categoryId = $fileStorage->categoryId, name = \"$fileStorage->name\", link = \"$fileStorage->link\", updatedBy = $fileStorage->updatedBy, updatedDate = UTC_TIMESTAMP() where id = $fileStorage->id"; | |
try { | |
return $this->executeQueryForObject($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* Delete file location details | |
* @param string $id | |
* @throws ProfessionalException | |
* @return \com\linways\base\dto\MySqlResult | |
*/ | |
public function deleteFileLocationDetails($id) | |
{ | |
$id = $this->realEscapeString($id); | |
$sql = "delete from file_location_details where id = $id"; | |
try { | |
return $this->executeQuery($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
} | |
/** | |
* get file location details by Id | |
* @param string $id | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function getFileLocationDetailsById($id) | |
{ | |
$id = $this->realEscapeString($id); | |
$sql = "select categoryId, name, link from file_location_details where id = $id"; | |
try { | |
$fileDetails = $this->executeQueryForObject($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $fileDetails; | |
} | |
/** | |
* get file category details by role | |
* @param string $role | |
* @throws ProfessionalException | |
* @return object|NULL|\com\linways\base\util\$objectList[] | |
*/ | |
public function getFileCategoryByRole($role) | |
{ | |
$roles = $this->realEscapeArray($role); | |
foreach ($roles as $role ) | |
{ | |
$sql_role.="'".$role."', " ; | |
} | |
$sql_role = rtrim($sql_role,", "); | |
$sql = "select distinct cat.id, code, name from category cat left join category_role cr on cat.id = cr.categoryId where role in ($sql_role)"; | |
try { | |
$categoryDetails = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $categoryDetails; | |
} | |
/** | |
* Get file location details by categoryId | |
* @throws ProfessionalException | |
* @return object|array|\com\linways\base\util\$objectList[] | |
*/ | |
public function getfileLocationDetailsByCategoryId($categoryId) | |
{ | |
$categoryId = $this->realEscapeString($categoryId); | |
$sql = "select fl.id as fileId, categoryId, fl.name as fileName, link, code, cat.name, description from file_location_details fl left join category cat on fl.categoryId = cat.id where categoryId = $categoryId"; | |
try { | |
$fileLocationDetails = $this->executeQueryForList($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(),$e->getMessage()); | |
} | |
return $fileLocationDetails; | |
} | |
} | |