diff --git a/api/application/models/Template_Management_Model.php b/api/application/models/Template_Management_Model.php index c589583a..23dbc813 100644 --- a/api/application/models/Template_Management_Model.php +++ b/api/application/models/Template_Management_Model.php @@ -156,27 +156,18 @@ class Template_Management_Model extends SPARQ_Model { $fields = array('fk_question_id'); $where_condition_array = array('fk_template_question_category_id' => $category_id,'fk_template_id' => $template_id); $result_data = $this->selectCustomRecords($fields,$where_condition_array,TEMPLATEQUESTION); - // print_r($result_data); + if(count($result_data)) { + $temp_array = array(); foreach($result_data as $res) { array_push($temp_array,$res['fk_question_id']); } - // $this->db->SELECT('question_id,question'); - // $this->db->FROM(QUESTIONS); - // $this->db->WHERE('fk_question_category',$category_id); - // $this->db->WHERE_NOT_IN('question_id',$temp_array); - // $questions = $this->db->get()->result_array(); - - $this->db->SELECT('QUESTIONS.question_id,QUESTIONS.question,TEMPLATEQUESTION.template_question_id, TEMPLATEQUESTION.fk_template_id, TEMPLATEQUESTION.fk_question_id, TEMPLATEQUESTION.question_weightage, TEMPLATEQUESTION.question_answerable_by,TEMPLATEQUESTION.fk_template_question_category_id, TEMPLATEQUESTION.isactive'); - //$this->db->FROM(TEMPLATEQUESTION.' as TEMPLATEQUESTION'); + $this->db->SELECT('QUESTIONS.question_id,QUESTIONS.question'); $this->db->FROM(QUESTIONS.' as QUESTIONS'); - $this->db->JOIN(TEMPLATEQUESTION.' as TEMPLATEQUESTION','QUESTIONS.question_id = TEMPLATEQUESTION.fk_question_id','LEFT'); - // $this->db->JOIN(USERPROFILE.' as USERPROFILE','TEMPLATEQUESTION.fk_createdby = USERPROFILE.userid','LEFT'); - // $this->db->JOIN(USERPROFILE.' as USERPROFILE1','TEMPLATEQUESTION.fk_updatedby = USERPROFILE1.userid','LEFT'); $this->db->WHERE('QUESTIONS.fk_question_category',$category_id); $this->db->WHERE_NOT_IN('QUESTIONS.question_id',$temp_array); $questions = $this->db->GET()->result_array(); @@ -187,45 +178,77 @@ class Template_Management_Model extends SPARQ_Model { foreach($questions as $answer_key => $question) { - $this->db->SELECT('QUESTIONANSWERS.question_answer_id,QUESTIONANSWERS.answer,TEMPLATEANSWERWEIGHTAGE.template_answer_weightage_id, TEMPLATEANSWERWEIGHTAGE.fk_template_question_id, TEMPLATEANSWERWEIGHTAGE.fk_question_answer_id, TEMPLATEANSWERWEIGHTAGE.template_answer_weightage, TEMPLATEANSWERWEIGHTAGE.isactive'); + $this->db->SELECT('QUESTIONANSWERS.question_answer_id,QUESTIONANSWERS.answer'); $this->db->FROM(QUESTIONANSWERS.' as QUESTIONANSWERS'); - $this->db->JOIN(TEMPLATEANSWERWEIGHTAGE.' as TEMPLATEANSWERWEIGHTAGE','QUESTIONANSWERS.question_answer_id = TEMPLATEANSWERWEIGHTAGE.fk_question_answer_id','LEFT'); $this->db->WHERE('QUESTIONANSWERS.fk_question_id',$question['question_id']); $answers = $this->db->GET()->result_array(); + + // Attach TEMPLATEANSWERWEIGHTAGE table keys for front purpose + if(count($answers)) + { + foreach($answers as $key => $answer) + { + $answers[$key]['template_answer_weightage_id'] = null; + $answers[$key]['fk_template_question_id'] = null; + $answers[$key]['fk_question_answer_id'] = null; + $answers[$key]['template_answer_weightage'] = null; + + } + } $questions[$answer_key]['answers'] = $answers; } } - //$questions['answers'] = $questions; + } else { - $this->db->SELECT('QUESTIONS.question_id,QUESTIONS.question,TEMPLATEQUESTION.template_question_id, TEMPLATEQUESTION.fk_template_id, TEMPLATEQUESTION.fk_question_id, TEMPLATEQUESTION.question_weightage, TEMPLATEQUESTION.question_answerable_by,TEMPLATEQUESTION.fk_template_question_category_id, TEMPLATEQUESTION.isactive'); - //$this->db->FROM(TEMPLATEQUESTION.' as TEMPLATEQUESTION'); + + $this->db->SELECT('QUESTIONS.question_id,QUESTIONS.question'); $this->db->FROM(QUESTIONS.' as QUESTIONS'); - $this->db->JOIN(TEMPLATEQUESTION.' as TEMPLATEQUESTION','QUESTIONS.question_id = TEMPLATEQUESTION.fk_question_id','LEFT'); - // $this->db->JOIN(USERPROFILE.' as USERPROFILE','TEMPLATEQUESTION.fk_createdby = USERPROFILE.userid','LEFT'); - // $this->db->JOIN(USERPROFILE.' as USERPROFILE1','TEMPLATEQUESTION.fk_updatedby = USERPROFILE1.userid','LEFT'); $this->db->WHERE('QUESTIONS.fk_question_category',$category_id); - //$this->db->WHERE('TEMPLATEQUESTION.fk_template_id',$template_id); $questions = $this->db->GET()->result_array(); + + + if(count($questions)) { foreach($questions as $answer_key => $question) { - $this->db->SELECT('QUESTIONANSWERS.question_answer_id,QUESTIONANSWERS.answer,TEMPLATEANSWERWEIGHTAGE.template_answer_weightage_id, TEMPLATEANSWERWEIGHTAGE.fk_template_question_id, TEMPLATEANSWERWEIGHTAGE.fk_question_answer_id, TEMPLATEANSWERWEIGHTAGE.template_answer_weightage, TEMPLATEANSWERWEIGHTAGE.isactive'); + $this->db->SELECT('QUESTIONANSWERS.question_answer_id,QUESTIONANSWERS.answer'); $this->db->FROM(QUESTIONANSWERS.' as QUESTIONANSWERS'); - $this->db->JOIN(TEMPLATEANSWERWEIGHTAGE.' as TEMPLATEANSWERWEIGHTAGE','QUESTIONANSWERS.question_answer_id = TEMPLATEANSWERWEIGHTAGE.fk_question_answer_id','LEFT'); $this->db->WHERE('QUESTIONANSWERS.fk_question_id',$question['question_id']); $answers = $this->db->GET()->result_array(); - $questions[$answer_key]['answers'] = $answers; + + // Attach TEMPLATEANSWERWEIGHTAGE table keys for front purpose + if(count($answers)) + { + foreach($answers as $key => $answer) + { + $answers[$key]['template_answer_weightage_id'] = null; + $answers[$key]['fk_template_question_id'] = null; + $answers[$key]['fk_question_answer_id'] = null; + $answers[$key]['template_answer_weightage'] = null; + + } + } + + // Attach TEMPLATEQUESTION table keys for front purpose + $questions[$answer_key]['answers'] = $answers; + $questions[$answer_key]['template_question_id'] = null; + $questions[$answer_key]['fk_template_id'] = null; + $questions[$answer_key]['fk_question_id'] = null; + $questions[$answer_key]['question_weightage'] = null; + $questions[$answer_key]['question_answerable_by'] = null; + $questions[$answer_key]['fk_template_question_category_id'] = null; } } } } - return $questions; + + return $questions; } } \ No newline at end of file