From 349b23e536ad2762173c1fd2257e72df9c2a5c81 Mon Sep 17 00:00:00 2001 From: VE10-Sanjeev Date: Fri, 2 Dec 2022 15:02:00 +0530 Subject: [PATCH] Sales PD photograph : ps --- .../controllers/Sales_PD_Controller.php | 121 +++++++++--------- 1 file changed, 64 insertions(+), 57 deletions(-) diff --git a/api/application/controllers/Sales_PD_Controller.php b/api/application/controllers/Sales_PD_Controller.php index de228e3e..10d6d261 100644 --- a/api/application/controllers/Sales_PD_Controller.php +++ b/api/application/controllers/Sales_PD_Controller.php @@ -986,70 +986,77 @@ class Sales_PD_Controller extends REST_Controller { { $records = $this->post('records'); $section_data = array(); - if(!is_numeric($records['section_id'])){ - // echo "i am here if"; - // die(); + if(!is_numeric($records['section_id'])){ // Sales PD Section ListPage. $fields=array('id','sales_pd_id','section_id','status','createdby','createdon'); if($records['section_id'] == 'data'){ $fields[] = 'section_data'; } - $section_data=$this->Sales_PD_Model->selectCustomRecords($fields,array('sales_pd_id' => $records['sales_pd_id'],'isactive' => 1),SALESPD_SECTION_DATA); + $section_data=$this->Sales_PD_Model->selectCustomRecords($fields,array('sales_pd_id' => $records['sales_pd_id'],'isactive' => 1),SALESPD_SECTION_DATA); } - else{ - // echo "i am here else"; + else{// Get-Single Section Json Data From DB. $section_data = $this->Sales_PD_Model->selectCustomRecords(array('*'),array('sales_pd_id' => $records['sales_pd_id'],'isactive' => 1,'section_id' => $records['section_id']),SALESPD_SECTION_DATA); - // // echo "section_data"; - // // // print_r($section_data); - // // //print_r( json_decode($section_data[0]['section_data'],true));die(); - // // if($records['section_id'] == 9 && count($section_data)) - // // { - // // $all_sales_pd_images = $this->Sales_PD_Model->selectCustomRecords(array('*'),array('fk_sales_pd_id' => $records['sales_pd_id'],'img_name !=' => 'satellite','isactive' => 1),SALEPD_DOCS); + if($records['section_id'] == 9 && count($section_data)) + { + $all_sales_pd_images = $this->Sales_PD_Model->selectCustomRecords(array('*'),array('fk_sales_pd_id' => $records['sales_pd_id'],'img_name !=' => 'satellite','isactive' => 1),SALEPD_DOCS); - // // $photo_questions = (json_decode(($section_data[0]['section_data']),true)); - // // // print_r($photo_questions); - // // foreach ($photo_questions['questions'] as $key => $value) - // // { - // // if(isset($value['answer_value']) && $value['answer_value'] && !$value['is_repeatable']) - // // { - // // $selfie = $this->Sales_PD_Model->selectCustomRecords(array('*'),array('fk_sales_pd_id' => $records['sales_pd_id'],'img_name' => 'selfie_with_person_met','isactive' => 1),SALEPD_DOCS); - // // if(count($selfie)) - // // { - // // $photo_questions['questions'][$key]['answer_value'] = $selfie[0]['img']; - // // //$photo_questions['questions'][$key]['answer_value'] = "CHNAGED"; - // // } - // // } - // // else - // // { - - // // foreach ($value['questions_group'] as $v_key => $individual_value) - // // { - // // //print_r($individual_value);die(); - // // //if($individual_value['questions'][0]['answer_value']) - // // if(isset($individual_value['questions'][0]['answer_value'])) - // // { - // // //iterate all_sales_pd_images to get one - // // foreach ($all_sales_pd_images as $img_key => $img_value) - // // { - // // if($individual_value['questions'][0]['question_key'] == $img_value['img_name']) - // // { - // // $photo_questions['questions'][$key]['questions_group'][$v_key]['questions'][0]['answer_value'] = $img_value['img']; - // // //$photo_questions['questions'][$key]['questions_group'][$v_key]['questions'][0]['answer_value'] = "CHANGED"; - // // unset($all_sales_pd_images[$img_key]); - // // break; - // // } - // // } - // // } - // // } - // // } - // // } - // // //die(); - // // $photo_questions = json_encode($photo_questions); - // $section_data[0]['section_data'] = $photo_questions; - // } - - - + $photo_questions = (json_decode(($section_data[0]['section_data']),true)); + $array1 = array_map(function($element){ + return $element['img_name']; + }, $all_sales_pd_images); + $array2 = (array_count_values($array1)); + $array3 = array(); + foreach ($photo_questions['questions'] as $key => $value) + { + $array3[$value['question_key']] = (isset($value['questions_group']) && $value['is_repeatable']) ? count($value['questions_group']) : ($value['answer_value'] ? 1 : 0 ); + } + $result = array(); + foreach ($array2 as $key => $value) { + $var = $array2[$key] - $array3[$key]; + $result[$key] = ($var < 0 ? 0 : $var); + } + + foreach ($photo_questions['questions'] as $key => $value) + { + if(isset($value['answer_value']) && $value['answer_value'] && !$value['is_repeatable']) + { + $selfie = $this->Sales_PD_Model->selectCustomRecords(array('*'),array('fk_sales_pd_id' => $records['sales_pd_id'],'img_name' => 'selfie_with_person_met','isactive' => 1),SALEPD_DOCS); + if(count($selfie)) + { + $photo_questions['questions'][$key]['answer_value'] = $selfie[0]['img']; + $photo_questions['questions'][$key]['image_location'] = $selfie[0]['location']; + $photo_questions['questions'][$key]['image_id'] = $selfie[0]['doc_id']; + } + } + else + { + foreach ($value['questions_group'] as $v_key => $individual_value) + { + if (array_key_exists($individual_value['questions'][0]['question_key'],$result)){ + for($i=1;$i<=$result[$individual_value['questions'][0]['question_key']];$i++){ + $photo_questions['questions'][$key]['questions_group'][$v_key+($i)] = $photo_questions['questions'][$key]['questions_group'][0]; + } + } + if(isset($individual_value['questions'][0]['answer_value'])) + { + //iterate all_sales_pd_images to get one + foreach ($all_sales_pd_images as $img_key => $img_value) + { + if($individual_value['questions'][0]['question_key'] == $img_value['img_name']) + { + $photo_questions['questions'][$key]['questions_group'][$v_key]['questions'][0]['answer_value'] = $img_value['img']; + $photo_questions['questions'][$key]['questions_group'][$v_key]['questions'][0]['image_location'] = $img_value['location']; + $photo_questions['questions'][$key]['questions_group'][$v_key]['questions'][0]['image_id'] = $img_value['doc_id']; + unset($all_sales_pd_images[$img_key]); + break; + } + } + } + } + } + } + $photo_questions = json_encode($photo_questions); + $section_data[0]['section_data'] = $photo_questions; + } } - if($section_data) { $data['dataStatus'] = true;