Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 4 |
CRAP | |
0.00% |
0 / 24 |
SubjectSemesterService | |
0.00% |
0 / 1 |
|
0.00% |
0 / 4 |
56.00 | |
0.00% |
0 / 24 |
__construct | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 3 |
|||
__clone | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 2 |
|||
getInstance | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 5 |
|||
assignSubjectToSemesters | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 14 |
<?php | |
/** | |
* User: jithinvijayan | |
* Date: 04/11/19 | |
* Time: 12:27 PM | |
*/ | |
namespace com\linways\core\ams\professional\service; | |
use com\linways\core\ams\professional\exception\ProfessionalException; | |
use com\linways\core\ams\professional\logging\AMSLogger; | |
use com\linways\core\ams\professional\request\AssignSubjectToSemestersRequest; | |
class SubjectSemesterService extends BaseService | |
{ | |
/** | |
* Presence of a static member variable | |
* | |
* @var null | |
*/ | |
private static $_instance = null; | |
/** | |
* @var null | |
*/ | |
private $logger = null; | |
/** | |
* Mapper variable | |
* @var array | |
*/ | |
private $mapper = []; | |
/** | |
* Initialise mapper, logger, hooks here | |
* | |
* ReportGenderService constructor. | |
*/ | |
private function __construct() | |
{ | |
/** | |
* Initialising mapper | |
*/ | |
// $this->mapper = SBSServiceMapper::getInstance()->getMapper(); | |
/** | |
* Initialising ams logger | |
* logging to elastic search | |
*/ | |
$this->logger = AMSLogger::getLogger(); | |
} | |
/** | |
* Prevent any object or instance of that class to be cloned | |
*/ | |
private function __clone() | |
{ | |
} | |
/** | |
* Have a single globally accessible static method | |
* | |
* @return SubjectSemesterService|null | |
*/ | |
public static function getInstance() | |
{ | |
if (!is_object(self::$_instance)) | |
self::$_instance = new self (); | |
return self::$_instance; | |
} | |
/** | |
* Assign semesters to subjects | |
* | |
* @param AssignSubjectToSemestersRequest $request | |
* @throws ProfessionalException | |
* @author jithinvijayan | |
*/ | |
public function assignSubjectToSemesters(AssignSubjectToSemestersRequest $request) | |
{ | |
$request = $this->realEscapeObject($request); | |
$sql = "INSERT IGNORE INTO subject_sem_relation (subjectID, semID, created_by, created_date, updated_by, updated_date) | |
VALUES "; | |
foreach ($request->semesterIds as $semesterId) { | |
$sql .= " ($request->subjectId,$semesterId,$request->createdBy,UTC_TIMESTAMP(),$request->updatedBy,UTC_TIMESTAMP()),"; | |
} | |
try { | |
$sql = rtrim($sql, ","); | |
$this->executeQuery($sql); | |
} catch (\Exception $e) { | |
throw new ProfessionalException($e->getCode(), $e->getMessage()); | |
} | |
} | |
} |