PD REPORT CHNAGED

This commit is contained in:
velz 2018-12-12 14:49:42 +05:30
parent 4c09c36b22
commit a68c94660e
3 changed files with 150 additions and 49 deletions

View File

@ -87,7 +87,7 @@ defined('EXIT__AUTO_MAX') OR define('EXIT__AUTO_MAX', 125); // highest auto
// define login route name for token verification
//defined('ROUTE_LOGIN') OR define('ROUTE_LOGIN', '(listLessPDDetails/:any)'); // no errors
//defined('ROUTE_LOGIN') OR define('ROUTE_LOGIN', '(listAllTemplates/:any)'); // no errors
defined('ROUTE_LOGIN') OR define('ROUTE_LOGIN', 'getTypeOfActivetyFromBusinessForm'); // no errors
defined('ROUTE_LOGIN') OR define('ROUTE_LOGIN', 'swapOlderPDReportToLatest'); // no errors
/*********************AWS resources Constants*************************************************/
defined('PROFILE_PICTURE_BUCKET_NAME') OR define('PROFILE_PICTURE_BUCKET_NAME','sineedgedevprofilepic');

View File

@ -169,6 +169,7 @@ $route['generatePDReport'] = 'PD_Controller/generatePDReport';
$route['getLatestPDReportBlob'] = 'PD_Controller/getLatestPDReportBlob';
$route['saveNewVersionOfPDReport'] = 'PD_Controller/saveNewVersionOfPDReport';
$route['getListOfPDReportVersions'] = 'PD_Controller/getListOfPDReportVersions';
$route['swapOlderPDReportToLatest'] = 'PD_Controller/swapOlderPDReporttoLatest';
//PD Form Related
$route['getPDFormDetails'] = 'PD_Controller/getPDFormDetails';

View File

@ -2594,21 +2594,20 @@ class PD_Controller extends REST_Controller {
$records = $this->post('records');
$pdid = $records['pd_id'];
$original_template = "RAW";
// echo "RE called";
// die();
$is_regenerate = 0;
if($records['regen'])
{
$is_regenerate = 1;
}
$pd_master_details = $this->PD_Model->getPDMasterDetails($pdid);
//getSingleObjectInaBucketAsSignedURI($bucket_name,$folder_name,$time = '+5 minutes')
// //CHeck if already pd original version created
// if($pd_master_details[0]['is_original_report_created'] == "" || $pd_master_details[0]['is_original_report_created'] == null)
// {
//Get PD Report Functions
//Get PD Report orginal blob
$fields = array('report_template_id', 'fk_template_id','content');
$where_condition_array = array('fk_template_id'=>$pd_master_details[0]['fk_pd_template_id'],'isactive'=>1);
$result_array = $this->PD_Model->selectCustomRecords($fields,$where_condition_array,REPORTTEMPLATES);
$original_template = $result_array[0]['content'];
// //CHeck if already pd original version created
if(count($result_array))
{
@ -2651,7 +2650,16 @@ class PD_Controller extends REST_Controller {
if(file_put_contents($output_file2, $pdf_doc))
{
$bucketname = LENDER_BUCKET_NAME_PREFIX.$pd_master_details[0]['fk_lender_id'];
$key = 'pd'.$pdid.'/pd_reports/pd_report_original_version.pdf';
$key = "";
if($is_regenerate == 0)
{
$key = 'pd'.$pdid.'/pd_reports/pd_report_original_version.pdf';
}
else
{
$latest_version = $pd_master_details[0]['pd_report_latest_version'] + 1;
$key = 'pd'.$pdid.'/pd_reports/'.$latest_version.'.pdf';
}
$sourcefile = $output_file2;
$bucket_data = array('bucket_name'=>$bucketname,'key'=>$key,'sourcefile'=>$sourcefile);
@ -2667,7 +2675,7 @@ class PD_Controller extends REST_Controller {
//call all reports functionality and send it.
$urls = $this->getALLPDReportsSingedURLs($bucket_name,$key);
$urls = $this->getALLPDReportsSingedURLs($bucketname,$key);
if($id != null || $id != "" )
{
@ -2686,36 +2694,8 @@ class PD_Controller extends REST_Controller {
}
}
// }
// else
// {
// //get latest or same original version of pd_report_original_version
// $flag = 0;
// if($pd_master_details[0]['pd_report_latest_version'] != null || $pd_master_details[0]['pd_report_latest_version'] != "")
// {
// $flag = 1;
// }
// $bucketname = LENDER_BUCKET_NAME_PREFIX.$pd_master_details[0]['fk_lender_id'];
// //$bucketname = LENDER_BUCKET_NAME_PREFIX.'8';
// $key = 'pd'.$pdid.'/'.'pd_report_original_version.pdf';
// //$key = 'pd'.'4'.'/'.'11.pdf';
// if($flag == 1)
// {
// $key = 'pd'.$pdid.'/'.'version'.$pd_master_details[0]['pd_report_latest_version'].'.pdf';
// }
// //echo $key;
// $uri = $this->aws_s3->getSingleObjectInaBucketAsSignedURI($bucketname,$key,$time = '3600 seconds');
// if($uri != "" || $uri != null)
// {
// $data['dataStatus'] = true;
// $data['status'] = REST_Controller::HTTP_OK;
// $data['records'] = array('pd_report_uri' => $uri);
// $this->response($data,REST_Controller::HTTP_OK);
// }
// }
}
}
@ -2736,16 +2716,18 @@ class PD_Controller extends REST_Controller {
//print_r($pd_master_details);
//update BLOB in pd trigger Table
$latest_version = $pd_master_details[0]['pd_report_latest_version'] + 1;
$latest_version = $pd_master_details[0]['pd_report_latest_version'];
$where_condition_array = array('pd_id' => $pdid);
$temp_array = array('pd_report_latest_version' => $latest_version,'pd_report_latest_version_blob' => $blob);
$temp_array = array('pd_report_latest_version_blob' => $blob,'fk_updatedby' => $fk_updatedby);
$mas_id = $this->PD_Model->updateRecords($temp_array,PDTRIGGER,$where_condition_array);
//store BLOB in t_pd_reports_version_blob Table
//$latest_version = $pd_master_details[0]['pd_report_latest_version'] + 1;
//$where_condition_array = array('pd_id' => $pdid);
$temp_array_one = array('fk_pd_id'=>$pdid,'version_no' => $latest_version,'content' => $blob,'fk_createdby'=>$fk_createdby,'fk_updatedby'=>$fk_updatedby);
$id = $this->PD_Model->saveRecords($temp_array_one,PDREPORTSVERSIONBLOB);
$temp_array_one = array('content' => $blob,'fk_updatedby'=>$fk_updatedby);
$where_condition_array = array('fk_pd_id' => ,'version_no' => $latest_version);
$id = $this->PD_Model->updateRecords($temp_array_one,PDREPORTSVERSIONBLOB,$where_condition_array);
//convert BLOB as html then pdf then store it s3.
$output_file = APPPATH."/docs/temp.html";
@ -2813,9 +2795,10 @@ class PD_Controller extends REST_Controller {
$lender_id = $pd_master_details[0]['fk_lender_id'];
$bucket_name = LENDER_BUCKET_NAME_PREFIX.$lender_id;
$key = 'pd'.$pdid.'pd_reports';
$key = 'pd'.$pdid.'/pd_reports';
//$key = 'pd'.$pdid;
$urls = $this->getALLPDReportsSingedURLs($bucket_name,$key);
if(count($urls))
{
@ -2855,7 +2838,8 @@ class PD_Controller extends REST_Controller {
foreach($uri as $uri_key => $url)
{
$uri[$uri_key]['doc_uri'] = $this->aws_s3->getSingleObjectInaBucketAsSignedURI($bucket_name,$url['doc_name'],$time = '3600 seconds');
$uri[$uri_key]['doc_name'] = $uri[$uri_key]['doc_name'];
//echo $key;
$uri[$uri_key]['doc_name'] = str_replace($key.'/',"",$uri[$uri_key]['doc_name']);
if($uri_key == (count($uri)-1))
{
$uri[$uri_key]['is_latest'] = 1;
@ -2912,4 +2896,120 @@ class PD_Controller extends REST_Controller {
}
/*********************************************************************************************
*********************************************************************************************/
public function swapOlderPDReporttoLatest_post()
{
$records = $this->post('records');
$pdid = $records['pd_id'];
$doc_name = $records['doc_name'];
$fk_createdby = $records['fk_createdby'];
//pd_report_version_blob_id, version_no, content, is_latest, createdon, updateon, fk_createdby, fk_updatedby, fk_pd_id
$version_no = substr($doc_name,-5,1);
//Get Latest Version from PD Master Table
$pd_master_details = $this->PD_Model->getPDMasterDetails($pdid);
//Get Blob from blob table
$fields = array('content');
$where_condition_array = array('fk_pd_id'=>$pdid,'version_no'=>$version_no);
$result = $this->PD_Model->selectCustomRecords($fields,$where_condition_array,PDREPORTSVERSIONBLOB);
if(count($result))
{
$temp_array = array('content' => $result[0]['content'],'fk_pd_id'=> $pdid,'fk_createdby'=>$fk_createdby,'version_no' => ($pd_master_details[0]['pd_report_latest_version'] + 1));
$id = $this->PD_Model->saveRecords($temp_array,PDREPORTSVERSIONBLOB);
if($id != null || $id != "")
{
$temp_array = array('pd_report_latest_version_blob' => $result[0]['content'],'pd_report_latest_version' => ($pd_master_details[0]['pd_report_latest_version'] + 1));
$where_condition_array = array('pd_id'=>$pdid);
$master_result = $this->PD_Model->updateRecords($temp_array,$where_condition_array,PDTRIGGER);
if($master_result != null || $master_result != "")
{
//do doc renegerate things here.....
$output_file = APPPATH."/docs/temp.html";
$ifp = fopen( $output_file, 'wb' );
//fwrite( $ifp, $original_template );
fwrite( $ifp, $result[0]['content'] );
fclose( $ifp );
//print_r($output_file);
$file= file_get_contents($output_file);
$pdf_doc = $this->pdfgenerator->generate($file, $filename='version', $stream=false, $paper = 'A4', $orientation = "portrait");
//print_r($pdf_doc);
$output_file2 = APPPATH."/docs/sample.pdf";
if(file_put_contents($output_file2, $pdf_doc))
{
$bucketname = LENDER_BUCKET_NAME_PREFIX.$pd_master_details[0]['fk_lender_id'];
$key = 'pd'.$pdid.'/pd_reports/'.'version'.($pd_master_details[0]['pd_report_latest_version'] + 1).'.pdf';
$sourcefile = $output_file2;
$bucket_data = array('bucket_name'=>$bucketname,'key'=>$key,'sourcefile'=>$sourcefile);
$s3result= $this->aws_s3->uploadFileToS3Bucket($bucket_data);
if(is_object($s3result) && $s3result['ObjectURL'] != '' && $s3result['@metadata']['statusCode'] == 200)
{
$urls = $this->getALLPDReportsSingedURLs($bucketname,$key);
if($id != null || $id != "" )
{
$data['dataStatus'] = true;
$data['status'] = REST_Controller::HTTP_OK;
$data['records'] = $urls;
$this->response($data,REST_Controller::HTTP_OK);
}
else
{
$data['dataStatus'] = false;
$data['status'] = REST_Controller::HTTP_NOT_MODIFIED;
$data['msg'] = 'Something Went Wrong..!Try later';
$this->response($data,REST_Controller::HTTP_OK);
}
}
}
}
else
{
$data['dataStatus'] = false;
$data['status'] = REST_Controller::HTTP_NOT_MODIFIED;
$data['msg'] = 'Version Not Updated in Master Table! Contact System Admin';
$this->response($data,REST_Controller::HTTP_OK);
}
}
else
{
$data['dataStatus'] = false;
$data['status'] = REST_Controller::HTTP_NOT_MODIFIED;
$data['msg'] = 'Version Not Updated!';
$this->response($data,REST_Controller::HTTP_OK);
}
}
else
{
$data['dataStatus'] = false;
$data['status'] = REST_Controller::HTTP_NOT_MODIFIED;
$data['msg'] = 'No older Version Available for this PD!';
$this->response($data,REST_Controller::HTTP_OK);
}
}
}