Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 4 |
CRAP | |
0.00% |
0 / 46 |
| SpecialGradesAwardedService | |
0.00% |
0 / 1 |
|
0.00% |
0 / 4 |
156.00 | |
0.00% |
0 / 46 |
| __construct | n/a |
0 / 0 |
1 | n/a |
0 / 0 |
|||||
| __clone | n/a |
0 / 0 |
1 | n/a |
0 / 0 |
|||||
| getInstance | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 5 |
|||
| getSpecialGradeAwardedActivities | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
| assignSpecialGradesAwardedToStudents | |
0.00% |
0 / 1 |
20.00 | |
0.00% |
0 / 23 |
|||
| getSpecialGradesAwardedToStudents | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 9 |
|||
| <?php | |
| namespace com\linways\core\ams\professional\service; | |
| use com\linways\core\ams\professional\exception\ProfessionalException; | |
| class SpecialGradesAwardedService extends BaseService | |
| { | |
| // /Condition 1 - Presence of a static member variable | |
| private static $_instance = null; | |
| private $mapper = []; | |
| // /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; | |
| } | |
| public function getSpecialGradeAwardedActivities ( ) { | |
| $activities = []; | |
| $sql = "SELECT id, activity FROM special_grades_awarded_activities"; | |
| try { | |
| $activities = $this->executeQueryForList($sql); | |
| } catch (\Exception $e) { | |
| throw new ProfessionalException($e->getCode(), $e->getMessage()); | |
| } | |
| return $activities; | |
| } | |
| public function assignSpecialGradesAwardedToStudents ( $specialGradesAwards ) { | |
| $values = []; | |
| $specialGradesAwards = $this->realEscapeArray($specialGradesAwards); | |
| if ( !empty ( $specialGradesAwards ) ) { | |
| $batchId = $specialGradesAwards["batchId"]; | |
| $semId = $specialGradesAwards["semId"]; | |
| $createdBy = $specialGradesAwards["createdBy"]; | |
| $sql = "INSERT INTO special_grades_awarded_students ( studentId, batchId, semId, activityId, gradeAwarded, createdBy) VALUES "; | |
| foreach ($specialGradesAwards["activityGrades"] as $specialGrade ) { | |
| $specialGrade = (object) $specialGrade; | |
| $values[] = "( $specialGrade->studentId, $batchId, $semId, $specialGrade->activityId, '$specialGrade->gradeAwarded', $createdBy )"; | |
| } | |
| $sql .= implode ( ", ", $values ) . " ON DUPLICATE KEY UPDATE gradeAwarded = VALUES(gradeAwarded), updatedBy = VALUES(createdBy) "; | |
| try { | |
| $this->executeQuery($sql); | |
| } catch (\Exception $e) { | |
| throw new ProfessionalException($e->getCode(), $e->getMessage()); | |
| } | |
| return true; | |
| } | |
| else { | |
| throw new ProfessionalException(ProfessionalException::INSUFFICIENT_PARAMETERS, "Please assign special grades to students"); | |
| } | |
| } | |
| public function getSpecialGradesAwardedToStudents ( $studentId ) { | |
| $gradeAwarded = []; | |
| $sql = "SELECT sgas.studentId, sgas.activityId, sgaa.activity, sgas.gradeAwarded FROM special_grades_awarded_students sgas INNER JOIN special_grades_awarded_activities sgaa ON (sgas.activityId = sgaa.id) WHERE studentId = '$studentId' "; | |
| try { | |
| $gradeAwarded = $this->executeQueryForList($sql); | |
| } catch (\Exception $e) { | |
| throw new ProfessionalException($e->getCode(), $e->getMessage()); | |
| } | |
| return $gradeAwarded; | |
| } | |
| } | |
| ?> |