diff --git a/api/application/controllers/SMC_Credit_PD_Controller.php b/api/application/controllers/SMC_Credit_PD_Controller.php index 8dbf9ee8..c8d41b40 100644 --- a/api/application/controllers/SMC_Credit_PD_Controller.php +++ b/api/application/controllers/SMC_Credit_PD_Controller.php @@ -1575,7 +1575,7 @@ public function filterSalesPDList_post() { // print_r($view_data); // 25 "product_abbr": "NBFC/MFI", if($view_data['pd_master_details'][0]['product_abbr'] == "NBFC/MFI"){ - $html_content = $this->load->view('smc_creditpd_reports/MWISE2',$view_data,true); + $html_content = $this->load->view('smc_creditpd_reports/NBFC',$view_data,true); }else{ $html_content = $this->load->view('smc_creditpd_reports/MWISE',$view_data,true); } diff --git a/api/application/helpers/loanform_helper.php b/api/application/helpers/loanform_helper.php index 8ab4eeb1..9c42fe75 100644 --- a/api/application/helpers/loanform_helper.php +++ b/api/application/helpers/loanform_helper.php @@ -1,10 +1,9 @@ ₹"; $facility_amt = MYUTIL::customIndianNumberFormat($loan_form['facility_amount']); $monthly_business_anchor_amt = MYUTIL::customIndianNumberFormat($loan_form['monthly_business_anchor']); $average_invoicevalue_amt = MYUTIL::customIndianNumberFormat($loan_form['average_invoicevalue']); @@ -31,17 +30,17 @@ public static function getanchordetails($loan_form){ // else if($mnt != '' && $yr == ''){ $yrandmnt = $mnt; } // else{ $yrandmnt = '-';} - $anchor_details_display[] = array('particulars' => "Facility Amount Applied For (₹)",'details' => ""." ".$facility_amt.' ('.MYUTIL::numtowords($loan_form['facility_amount']).')'); + $anchor_details_display[] = array('particulars' => "Facility Amount Applied For (₹)",'details' => $rupee_symbol." ".$facility_amt.' ('.MYUTIL::numtowords($loan_form['facility_amount']).')'); $anchor_details_display[] = array('particulars' => "Name of Anchor",'details' => $loan_form['anchor_name']); $anchor_details_display[] = array('particulars' => "Applicant's association vintage with the Anchor Year",'details' => $loan_form['vintage_anchor_year']); $anchor_details_display[] = array('particulars' => "Applicant's association vintage with the Anchor Month",'details' => $loan_form['vintage_anchor_month']); // $anchor_details_display[] = array('particulars' => "Applicant's association vintage with the Anchor Year and Month",'details' => $yrandmnt ); - $anchor_details_display[] = array('particulars' => "Monthly business (sale/purchase) with the Anchor (₹)",'details' => ""." ".$monthly_business_anchor_amt.' ('.MYUTIL::numtowords($loan_form['monthly_business_anchor']).')'); + $anchor_details_display[] = array('particulars' => "Monthly business (sale/purchase) with the Anchor (₹)",'details' => $rupee_symbol." ".$monthly_business_anchor_amt.' ('.MYUTIL::numtowords($loan_form['monthly_business_anchor']).')'); $anchor_details_display[] = array('particulars' => "Business concentration with Anchor",'details' => $loan_form['business_concentration'].' %'); $anchor_details_display[] = array('particulars' => "Credit period with the Anchor (Days)",'details' => $loan_form['credit_period_days']); $anchor_details_display[] = array('particulars' => "Payment Mechanism", 'details' => $payment_mechanism_arr[$loan_form['payment_mechanism']]); - $anchor_details_display[] = array('particulars' => "Average Invoice Value (₹)",'details' => ""." ".$average_invoicevalue_amt.' ('.MYUTIL::numtowords($loan_form['average_invoicevalue']).')'); + $anchor_details_display[] = array('particulars' => "Average Invoice Value (₹)",'details' => $rupee_symbol." ".$average_invoicevalue_amt.' ('.MYUTIL::numtowords($loan_form['average_invoicevalue']).')'); $anchor_details_display[] = array('particulars' => "Are there peak seasons for the business with Anchor",'details' => ucfirst($loan_form['peakseasons_anchor'])); if($loan_form['peakseasons_anchor']=='yes') { @@ -52,7 +51,7 @@ public static function getanchordetails($loan_form){ if($loan_form['anchor_notes']=='yes'){ $anchor_details_display[] = array('particulars' => "Reason for such debit/credit notes",'details' => ucfirst($loan_form['debitcredit_notes']) ); } - $anchor_details_display[] = array('particulars' => "Value of stock related to Anchor (₹)",'details' => ""." ".$stock_related_amt.' ('.MYUTIL::numtowords($loan_form['stock_related_anchor']).')'); + $anchor_details_display[] = array('particulars' => "Value of stock related to Anchor (₹)",'details' => $rupee_symbol." ".$stock_related_amt.' ('.MYUTIL::numtowords($loan_form['stock_related_anchor']).')'); $anchor_details_display[] = array('particulars' => "Observations on Sample Invoices",'details' => $loan_form['sample_invoices'] ); return $anchor_details_display; // print_r($anchor_details_display); diff --git a/api/application/views/report_templates/JSONTOREPORT_DI_AI.php b/api/application/views/report_templates/JSONTOREPORT_DI_AI.php index 42b72c7c..a52e9603 100644 --- a/api/application/views/report_templates/JSONTOREPORT_DI_AI.php +++ b/api/application/views/report_templates/JSONTOREPORT_DI_AI.php @@ -1308,11 +1308,10 @@ if ( isset($pdf) ) { $loan_table_dispaly_rows[] = array('particulars' => 'Source of Own Contribution','details' => $source_of_own_contribution ); } } - - if($pd_master_details[0]['lender_short_name'] != 'UDAAN' || $pd_master_details[0]['lender_short_name'] != 'CFPL') - { - $loan_table_dispaly_rows[] = array('particulars' => 'EMI Comfortable Paying','details' => is_numeric($loan_form['emi_level']) && $loan_form['emi_level'] != 0? ($rupee_symbol." ".MYUTIL::customIndianNumberFormat($loan_form['emi_level']).' ('.MYUTIL::numtowords($loan_form['emi_level']).')') : "Not Provided" ); - } + if(!($pd_master_details[0]['lender_short_name'] == 'UDAAN' || $pd_master_details[0]['lender_short_name'] == 'CFPL')){ + + $loan_table_dispaly_rows[] = array('particulars' => 'EMI Comfortable Paying','details' => is_numeric($loan_form['emi_level']) && $loan_form['emi_level'] != 0? ($rupee_symbol." ".MYUTIL::customIndianNumberFormat($loan_form['emi_level']).' ('.MYUTIL::numtowords($loan_form['emi_level']).')') : "Not Provided" ); + } if(!$is_current_product_bl && !$is_current_product_laep) { diff --git a/api/application/views/report_templates/JSONTOREPORT_DI_AI_SMARTPD.php b/api/application/views/report_templates/JSONTOREPORT_DI_AI_SMARTPD.php index c09caf9e..5ebac9b7 100644 --- a/api/application/views/report_templates/JSONTOREPORT_DI_AI_SMARTPD.php +++ b/api/application/views/report_templates/JSONTOREPORT_DI_AI_SMARTPD.php @@ -1306,7 +1306,7 @@ if ( isset($pdf) ) { } } - if($pd_master_details[0]['lender_short_name'] != 'UDAAN' || $pd_master_details[0]['lender_short_name'] != 'CFPL') + if(!($pd_master_details[0]['lender_short_name'] == 'UDAAN' || $pd_master_details[0]['lender_short_name'] == 'CFPL')) { $loan_table_dispaly_rows[] = array('particulars' => 'EMI Comfortable Paying','details' => is_numeric($loan_form['emi_level']) && $loan_form['emi_level'] != 0? ($rupee_symbol." ".MYUTIL::customIndianNumberFormat($loan_form['emi_level']).' ('.MYUTIL::numtowords($loan_form['emi_level']).')') : "Not Provided" ); } diff --git a/api/application/views/report_templates/JSONTOREPORT_DI_AI_TELE_PD.php b/api/application/views/report_templates/JSONTOREPORT_DI_AI_TELE_PD.php index 88ad07df..cd76177c 100644 --- a/api/application/views/report_templates/JSONTOREPORT_DI_AI_TELE_PD.php +++ b/api/application/views/report_templates/JSONTOREPORT_DI_AI_TELE_PD.php @@ -1312,8 +1312,8 @@ if ( isset($pdf) ) { $loan_table_dispaly_rows[] = array('particulars' => 'Source of Own Contribution','details' => $source_of_own_contribution ); } } - - $loan_table_dispaly_rows[] = array('particulars' => 'EMI Comfortable Paying','details' => is_numeric($loan_form['emi_level']) && $loan_form['emi_level'] != 0? ($rupee_symbol." ".MYUTIL::customIndianNumberFormat($loan_form['emi_level']).' ('.MYUTIL::numtowords($loan_form['emi_level']).')') : "Not Provided" ); + if(!($pd_master_details[0]['lender_short_name'] == 'UDAAN' || $pd_master_details[0]['lender_short_name'] == 'CFPL')){ + $loan_table_dispaly_rows[] = array('particulars' => 'EMI Comfortable Paying','details' => is_numeric($loan_form['emi_level']) && $loan_form['emi_level'] != 0? ($rupee_symbol." ".MYUTIL::customIndianNumberFormat($loan_form['emi_level']).' ('.MYUTIL::numtowords($loan_form['emi_level']).')') : "Not Provided" );} if(!$is_current_product_bl && !$is_current_product_laep) { diff --git a/api/application/views/smc_creditpd_reports/NBFC.php b/api/application/views/smc_creditpd_reports/NBFC.php new file mode 100644 index 00000000..dc70418f --- /dev/null +++ b/api/application/views/smc_creditpd_reports/NBFC.php @@ -0,0 +1,594 @@ +↑'; + $downarrow = ''; + $dash = ' '; + // $product_name = $master[0]['abbr']; + $rupee_symbol = ""; + //print_r($master[0]['abbr']);die(); +?> + + + + + + + + + + + + + +
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + '; + } + + $ownership_type = ''; + if( isset($pd_section_data[8]['business_ownership_type']) && (strtolower($pd_section_data[8]['business_ownership_type'])) == 'owned') + { + $ownership_type = '( Owned )'; + } + else if(isset($pd_section_data[8]['business_ownership_type']) && (strtolower($pd_section_data[8]['business_ownership_type'])) == 'rented') + { + $ownership_type = ' ( Rented ) - Rent paid '.$rupee_symbol.' '.MYUTIL::customIndianNumberFormat($pd_section_data[8]['business_monthly_rented_amt']); + } + + echo ''; + if(isset($pd_section_data[8]['is_business_address']) && strtolower($pd_section_data[8]['is_business_address']) == 'yes') + { + echo ''; + } + echo ''; + echo ''; + echo ''; + echo ''; + } + ?> + + +
Personal Discussion Sheet -
Application ID
Name of the Company/Firm
Name of Person Met During Visit and Contact Number
CityStatePIN
Actual PD Address '.$pd_section_data[2]['alternative_address'].'
Address Type / Ownership '.$pd_section_data[2]['address_type']['address_type'].$ownership_type.'
Period for which business has been
in operation from this address
'.($pd_section_data[8]['business_years'].' Year(s)'.(isset($pd_section_data[8]['business_months']) && $pd_section_data[8]['business_months'] != '' ? ' & ' . $pd_section_data[8]['business_months'] .' Month(s)': '')).'
PD locality '.$pd_section_data[2]['pd_locality']['locality_name'].'
Location Approach '.$pd_section_data[2]['pd_location']['description'].'
Comment On Locality '.$pd_section_data[2]['comment_locality']['rating'].'
Estimated Area of Business Premise '.$pd_section_data[2]['business_estimated_area'].' '.$pd_section_data[2]['uom'].'
+ + +

+
Satellite Image of PD Location

+

GPS Coordinates of location where PD Visit was done :

+ + PD Visted Location Satellite Image + Location access Not Available

';} + ?> +
+ +
+ + + + + + + + + + '; + } + else { + echo ''; + } + ?> + + +
General Section
NameLoan AmountProductLocation
'.$pd_section_data['21']['name'].''.$pd_section_data['21']['loan_amount'].''.$pd_section_data['21']['product'].''.$pd_section_data['21']['location'].'
General Section Not Available
+

+
+ +

History &  Vintage and  Lineage

+

'.$pd_section_data['22']['history_vintage'].'

+

Primary shareholding , promoters  and major   equity  partners

+

'.$pd_section_data['22']['capital_details'].'

+

The  capital  structure and details of  the  various  investments vehicles

+

'.$pd_section_data['22']['history_vintage'].'

'; + } + else { + echo '
Profile
Profile Not Available
'; + } + ?> +

+
+ +

AUM  (  off book  &  on book  ) &e. Trend of Disbursement in last 2 quarters

+

'.$pd_section_data['23']['aum_book'].'

+

States  and geographical  regions & Branches  &  geographical  customer base

+

'.$pd_section_data['23']['geographical_details'].'

+

Branches /employees / structure

+

'.$pd_section_data['23']['branches_employees'].'

+

Portfolio concentration and Cuts to be discussed

+

'.$pd_section_data['23']['portfolio_concentration'].'

+

Who are the competitors to the business

+

'.$pd_section_data['23']['business_competitors'].'

+

Estimated Market Size of the Business& Market share

+

'.$pd_section_data['23']['estimated_market'].'

'; + } + else { + echo '
Size and Geographical Reach
Size and Geographical Reach Not Available
'; + } + ?> + + + +
+ +

Products

+

'.$pd_section_data['24']['products'].'

+

Policies

+

'.$pd_section_data['24']['policies'].'

+

Credit  appraisal mechanism

+

'.$pd_section_data['24']['credit_appraisal'].'

+

Technology and  usage  for    acquisition and  credit

+

'.$pd_section_data['24']['technology_credit'].'

+

Collection policy and   mechanism -Collection efficiency trends in last 12 months (CC/CD, TC/CD,TC/TD) any deviation to be discussed in detail

+

'.$pd_section_data['24']['collection_policy'].'

+

Provisioning policy

+

'.$pd_section_data['24']['provisioning_policy'].'

+

Restructuring policy

+

'.$pd_section_data['24']['restructuring_policy'].'

+

Covid  impact and policy

+

'.$pd_section_data['24']['covid_policy'].'

'; + }else { + echo '
Product  &  Processes
Product  &  Processes Not Available
'; + } + + ?> + +
+
+ +

Par  own book /Par off  book -d

+

'.$pd_section_data['25']['par_book'].'

+

NPAs/Provisioning & resolution strategy

+

'.$pd_section_data['25']['provisioning_resolution'].'

+

Strategy to manage flow as well as  post moratorium stress

+

'.$pd_section_data['25']['post_morotorium'].'

+

Strategy  for non-paying customers

+

'.$pd_section_data['25'][' non-paying_customers'].'

+

PAR (Productwise)/Net NPAs/Write offs Movement of Bucket ,PAR 90+

+

'.$pd_section_data['25']['par'].'

'; + + } + else { + echo '
Portfolio Health
Portfolio Health Not Available
'; + } + + ?> + +
+
+ + +

Types of debt structures and  major debt providers

+

'.$pd_section_data['26']['dept_structures'].'

+

Future plan for additional funding

+

'.$pd_section_data['26']['future_plan'].'

+

Funding received during covid times including liquidity  support  from  DFIs & Banks

+

'.$pd_section_data['26']['dfi_banks'].'

+

Fresh sanctions lined up in the  present month and coming quarters

+

'.$pd_section_data['26']['fresh_sanctions'].'

'; + } + else { + echo '
Total Overall Debt/Equity Profile
Total Overall Debt/Equity Profile Not Available
'; + } + ?> + +
+
+ + + + + + + + + + + + + + + + + + + + ';?> + + + + + + + + + + + + + + + '; + } + else { + echo ''; + } + + ?> + +
Financial  analysis
CAR (Tier-1)/CAR (Tier-1 + Tier-2)Leverage (D/E) (excluding Managed)ALMOpexNIM (%) - as per Audited B/SOpex (% of Avg. Book)
'.$pd_section_data['27']['car_type'].''.$pd_section_data['27']['leverage'].''.$pd_section_data['27']['alm'].''.$pd_section_data['27']['opex'].''.$pd_section_data['27']['nim'].''.$pd_section_data['27']['opex_average'].'
Opex (% of NII)Return on AssetsReturn on EquityIRR (Derived)Avg. Borrowing Cost (Derived)Spread (Derived)
'.$pd_section_data['27']['opex_nii'].''.$pd_section_data['27']['return_asset'].''.$pd_section_data['27']['return_equity'].''.$pd_section_data['27']['irr'].''.$pd_section_data['27']['avg_borrowing'].''.$pd_section_data['27']['spread'].'
Financial  analysis Not Available
+
+
+ +

Future plan on  expansion  geographies wise , products and regions . Equity  and debt structuring as well as  dilution in future. Target book for the present quarter and  YOY   projections

+

'.$pd_section_data['28']['future_plan'].'

'; + } + else { + echo '
Overall Plan of Action
Overall Plan of Action Not Available
'; + } + ?> + +
+
+
Validation Points vide Systems and Books at HQ & Branches
+

Stock to be validated from system

+

'.$pd_section_data['29']['stock_validated'].'

+

Collateral coverage for existing borrowing ( System Mapping to be checked)

+

'.$pd_section_data['29']['collateral_coverage'].'

+

Collection efficiency and system flagging to be counterchecked and same with PAR cuts

+

'.$pd_section_data['29']['collection_efficiency'].'

+

Sample check of loan dox, application form along with PAN for Active loan accounts

+

'.$pd_section_data['29']['loan_dox'].'

+

Disbursement no to be checked from system

+

'.$pd_section_data['29']['disbursement'].'

+

Top 20 exposure to be checked with data submitted

+

'.$pd_section_data['29']['top20_exposure'].'

+

Sample Sanction letters to validate collateral cover stipulated for existing Borrowing

+

'.$pd_section_data['29']['sanction_letters'].'

+

Provisioning /Write-off/NPA flagging to be counter checked

+

'.$pd_section_data['29']['provisioning'].'

+

Restructuring of Loans in system on sample basis

+

'.$pd_section_data['29']['restructuring_loan'].'

+

EMI cycle date in system

+

'.$pd_section_data['29']['emi_date'].'

+

Cash and Bank ledger to be checked

+

'.$pd_section_data['29']['cash_checked'].'

+

Free FD details to be taken and validated from Accounting system

+

'.$pd_section_data['29']['fd_details'].'

+

Application/Systems used for Boarding /Loan management

+

'.$pd_section_data['29']['loan_management'].'

'; + } + else { + echo ' Validation Points vide Systems and Books at HQ & Branches Not Available '; + } + ?> + + +
+ + + + + + 'Others','2' => 'Rude','3' => 'Polite'); + $over_all = array('2' => 'Positive','3' => 'Negative'); + ?> + + + + $val) + { $reason .= ($key + 1).' '.$val['reason'].'
'; } + ?> + + '; + + } } else{ + echo ''; + }?> +
Final Remarks of PD officer
Customer Behaviour + [Polite / Rude / Others (Please specify)]
PD Officer's overall assessment + (Positive / Negative)
PD Officer's key points considered while arriving at the aforementioned status
Remarks'.$pd_section_data[19]['final_form_remarks'] .'
Final Remarks of PD officer Not Available
+ 'Selfie with person met','person_met_id_proof' => 'Person met ID Proof','approach_to_pd_location' => 'Approach to pd location','name_board_seen' => 'Name board seen', 'stock_image' => 'Stock image','supplier_image' => 'Supplier Bills','client_image' => 'Client Bills','machinary_image' => 'Machinary Image'); + // if($master[0]['sales_pd_type'] == 2){ $photo_names['selfie_with_person_met'] = 'Selfie of the person contacted';} + // echo count($smc_images);die(); + //print_r(array_keys($section9));die(); + $tot_rows = ceil(count($smc_images) / 3); +if(count($smc_images)) + { + echo '
'; + echo '
Photograph`s

'; + + $add_factor = 0; + for($row = 0;$row < $tot_rows; $row++) + { + echo ''; + + $from = $row == 0 ? $row : ($row+$add_factor); + $to = ($from + 2); + $add_factor = $add_factor + 2; + for($i = $from ; $i <= $to; $i++) + { + + if(isset($smc_images[$i])) + { + + echo ''; + } + + //unset($p_key); + } + echo ''; + } + echo '
'.$smc_images[$i]['img_name'].'
'.$photo_names [ $smc_images[$i]['img_name'] ].'
'; + }?> + + + +

+ + + + + + + + + + + + + +
Name of Credit Manager
Date of PD Visit
+ + + + + + \ No newline at end of file