| Current Path : /var/www/cesa.co.za/php/includes/ |
| Current File : /var/www/cesa.co.za/php/includes/ADQAnswers.php |
<?php
/*
* Contact otto@igotafrica.com for details
*/
include_once('BaseTableClass.php');
/**
* Control the ADQAnswers table
*
* @author Otto Saayman
*/
class ADQAnswers extends BaseTableClass {
public function getByADQFirmIdQId($qid, $adqFirmId) {
$sql = "SELECT adqa.* FROM ADQAnswers adqa "
. "RIGHT JOIN ADQuestions adq ON (adqa.ADQuestionID=adq.ADQuestionID AND adqa.ADQFirmID=" . $adqFirmId . ") "
. "WHERE adq.ADQID=" . $qid . " "
. "ORDER BY adq.SectionNum, adq.QuestionNum";
// echo $sql;
// exit;
return $this->sqlf->getAll($sql);
}
function testAndCopy($questionnaireFirmID, $memberFirmID, $questionnaireId, $auditYear) {
$answers = $this->sqlf->getAll("SELECT * FROM ADQAnswers WHERE ADQFirmID = $questionnaireFirmID");
if (!is_countable($answers) || count($answers) <= 0) {
$adqFirms = new ADQFirms($this->sqlf);
$prevFirmQuestionnaire = $adqFirms->findByMemberFirmIdQuestionnaireIdYear($memberFirmID, $questionnaireId, ($auditYear - 1));
if (is_countable($prevFirmQuestionnaire) && count($prevFirmQuestionnaire) > 0) {
$prevAnswers = $this->sqlf->getAll("SELECT * FROM ADQAnswers WHERE ADQFirmID = " . $prevFirmQuestionnaire['ADQFirmID']);
if (is_countable($prevAnswers) && count($prevAnswers) > 0) {
echo '<p>Fetched data from previous year</p>';
$firmQuestionnaire = $adqFirms->findByMemberFirmIdQuestionnaireIdYear($memberFirmID, $questionnaireId, $auditYear);
foreach ($prevAnswers as $prevAnswer) {
$prevAnswer['ADQFirmID'] = $firmQuestionnaire['ADQFirmID'];
$this->sqlf->autoExecute('ADQAnswers', $prevAnswer, 'INSERT');
}
}
}
}
}
function getCertificationAnswer($ADQID, $ADQFirmID) {
$sql = "SELECT * "
. "FROM ADQAnswers JOIN ADQuestions USING (ADQuestionID) "
. "INNER JOIN ADecQuestionnaires USING (ADQID) "
. "WHERE ADQuestions.ADQID=" . $ADQID . " AND ADQAnswers.ADQFirmID=" . $ADQFirmID . " AND SectionNum=1 AND QuestionNum IN (1,3,4) ORDER BY QuestionNum";
return $this->sqlf->getRow($sql);
}
function upsert($ADQAnswers) {
$action = 'INSERT';
$where = '';
// var_dump($ADQAnswers);
// exit;
if (isset($ADQAnswers['ADQFirmID']) && $ADQAnswers['ADQFirmID'] > 0 && isset($ADQAnswers['ADQuestionID']) && $ADQAnswers['ADQuestionID'] > 0) {
$ADQAnswersTest = $this->sqlf->getRow("SELECT * FROM ADQAnswers WHERE ADQFirmID = " . $ADQAnswers['ADQFirmID'] . " AND ADQuestionID = " . $ADQAnswers['ADQuestionID']);
// var_dump($ADQAnswersTest);
if (is_array($ADQAnswersTest) && count($ADQAnswersTest) > 0) {
$action = 'UPDATE';
$where = 'ADQFirmID = ' . $ADQAnswers['ADQFirmID'] . ' AND ADQuestionID = ' . $ADQAnswers['ADQuestionID'];
}
}
return $this->sqlf->autoExecute('ADQAnswers', $ADQAnswers, $action, $where, '');
}
}