Server IP : 103.191.208.50 / Your IP : 216.73.216.53 Web Server : LiteSpeed System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64 User : celkcksm ( 1031) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, popen, exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/celkcksm/ecampus.ncriptech.com/application/controllers/admin/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php defined('BASEPATH') OR exit('No direct script access allowed'); //require_once(APPPATH.'third_party/vendor/paytm/paytmchecksum/PaytmChecksum.php'); //use paytm\checksum\PaytmChecksumLibrary; /** * */ class Admission extends BaseAdminController { protected $inst_id=''; protected $inst_parent_id=''; protected $branch_parent_inst_id=''; protected $user_id=''; protected $inst_code=''; protected $inst_ph=''; protected $inst_email=''; protected $inst_type=''; protected $user_type=''; protected $admission_view_access=''; protected $student_upload_limit=''; protected $student_data_can_be_uploaded='no'; protected $course_fees_edit_access='no'; protected $course_booking_fees_edit_access='no'; protected $user_has_online_pay_mode='no'; protected $user_has_split_pay_mode='no'; protected $inst_sem_payment_restriction='yes'; protected $inst_lateral_course_applicable='no'; protected $inst_lateral_sem_start='0'; protected $inst_student_data_excel_format='1'; function __construct() { parent::__construct(); $institute_data=check_institute($this->data['userdata']); //print_obj($institute_data);die; $this->user_type=$institute_data['user_type']; $this->inst_id=$institute_data['institute_id']; $this->inst_parent_id=$institute_data['inst_parent_id']; $this->branch_parent_inst_id=$institute_data['branch_parent_inst_id']; $this->inst_ph=$institute_data['inst_ph']; $this->inst_email=$institute_data['inst_email']; $this->user_id=$institute_data['user_id']; $this->inst_code=$institute_data['inst_code']; $this->inst_type=$institute_data['inst_type']; $this->admission_view_access=$institute_data['admission_view_access']; $this->admission_add_access=$institute_data['admission_add_access']; $this->student_upload_limit=$institute_data['student_upload_limit']; $this->student_data_can_be_uploaded=$institute_data['student_data_can_be_uploaded']; $this->course_fees_edit_access=$institute_data['course_fees_edit']; $this->course_booking_fees_edit_access=$institute_data['course_booking_fees_edit']; $this->ams_access=$institute_data['ams_access']; $this->user_has_online_pay_mode=$institute_data['user_has_online_pay_mode']; $this->user_has_split_pay_mode=$institute_data['user_has_split_pay_mode']; $this->inst_in_bill_print=$institute_data['inst_in_bill_print']; $this->inst_sem_payment_restriction=$institute_data['inst_sem_payment_restriction']; $this->inst_phonepay_txn_required=$institute_data['inst_phonepay_txn_required']; $this->inst_lateral_sem_start=$institute_data['inst_lateral_sem_start']; $this->inst_lateral_course_applicable=$institute_data['inst_lateral_course_applicable']; $this->inst_student_data_excel_format=$institute_data['inst_student_data_excel_format']; } function index(){ if(session_userdata('isAdminLoggedin')){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $this->data['bredcrumb_data']='Admission'; $this->data['page_title']='Admission'; if($this->data[userdata]->user_role=='1'){ $this->admission_view_access='yes'; } if($this->admission_view_access=='yes'){ $data_access=check_access_control($this->data['userdata'],'admission_process',['view']); if($this->data[userdata]->user_role=='1'){ $data_access='yes'; } if($data_access=='yes'){ $inst_permissions=array(); $paytmParams = array(); $sessions=$this->sessm->get_session_specific('session_id,session_inst_id,session_start_year,session_end_year,session_status',array('session_inst_id'=>$this->inst_id,'session_status'=>'active'),FALSE); $courses=$this->cm->get_course(array('course_inst_id'=>$this->inst_id),FALSE); $session_courses=$this->sessm->get_session_courses(array('session_inst_id'=>$this->inst_id),FALSE); $get_institute_permissions=$this->um->get_institute_permissions(array('permission_inst_id'=>$this->inst_id,'permission_inst_type'=>$this->inst_type,'permission_status'=>'active'),FALSE,FALSE); if(!empty($get_institute_permissions)){ foreach ($get_institute_permissions as $key => $value) { $inst_permissions[]=$value->permission_value; } } if(in_array('admission_process', $inst_permissions)){ $module_permitted='yes'; }else{ $module_permitted='no'; } $check_upload_limit=check_max_upload_limit($this->data['userdata'],$db_group); $check_account=check_account_renewal_status($this->data['userdata']); $this->data['sessions']=$sessions; $this->data['courses']=$courses; $this->data['session_courses']=$session_courses; $this->data['student_upload_limit']=$this->student_upload_limit;//$check_upload_limit['student_upload_limit']; $this->data['student_data_can_be_uploaded']=$this->student_data_can_be_uploaded;//$check_upload_limit['student_data_can_be_uploaded']; $this->data['module_permitted']=$module_permitted; $this->data['expiry_message']=$check_account['expiry_message']; $this->data['expired_message']=$check_account['expired_message']; $this->data['excel_type']='direct_admission'; if($this->inst_student_data_excel_format==1){ $excel_format=base_url('uploads/app/samples/sample-student-excel-1.xlsx'); }else if($this->inst_student_data_excel_format==2){ $excel_format=base_url('uploads/app/samples/sample-student-excel-2.xlsx'); } $this->data['excel_type']=$this->inst_student_data_excel_format; $this->data['excel_format']=$excel_format; //print_obj($this->data);die; $this->theme->title($this->data['page_title'])->add_partial('partial_upload_direct_admission_excel_modal',$this->data)->add_partial('partial_temp_exceldata_load_modal',$this->data)->load('admission/vw_admission', $this->data); }else{ $this->theme->title($this->data['page_title'])->load('admission/vw_permission_denied', $this->data); } }else{ $this->theme->title($this->data['page_title'])->load('admission/vw_permission_denied', $this->data); } }else{ redirect($this->data['base_url']); } } function indexRegister(){ if(session_userdata('isAdminLoggedin')){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $this->data['page_title']='Admission'; $this->data['bredcrumb_data']='Admission'; //print_obj($this->data);die; if($this->data['userdata']->user_role=='1'){ $this->admission_add_access='yes'; } if($this->admission_add_access=='yes'){ $data_access=check_access_control($this->data['userdata'],'admission_process',['add']); if($this->data['userdata']->user_type=='institute'){ $data_access='yes'; }else if($this->data['userdata']->user_type=='agent'){ $data_access='yes'; } if($data_access=='yes'){ $_hostels=array(); $_hostels_arr[]=array( 'hostel_id'=>'no', 'hostel_name'=>'Not want to avail' ); $countries=$this->sm->_get_countries(null,FALSE); $states=$this->sm->_get_states(null,FALSE); $admission_type=$this->sm->_get_booking_types(null,FALSE); $application_type=$this->sm->_get_application_types(array('application_type_inst_id'=>$this->inst_id),FALSE); $caste_category=$this->cst->get_caste_category(null,FALSE); $sections=$this->sec->get_section(array('section_institute_id'=>$this->inst_id),FALSE); $religions=$this->cst->get_religion(null,FALSE); $sessions=$this->sessm->get_session(array('session_inst_id'=>$this->inst_id),FALSE); $courses=$this->cm->get_course(array('course_inst_id'=>$this->inst_id),FALSE); $session_courses=$this->sessm->get_session_courses(array('session_inst_id'=>$this->inst_id),FALSE); $blood_groups=$this->sm->_get_blood_groups(null,FALSE); $occupations=$this->sm->_get_occupations(null,FALSE); $hostels=$this->hm->get_hostel(array('hostel_inst_id'=>$this->inst_id),FALSE); if(!empty($hostels)){ foreach ($hostels as $key => $value) { $_hostels[]=array( 'hostel_id'=>$value->hostel_id, 'hostel_name'=>$value->hostel_name, ); } } $this->data['hostels']=array_merge($_hostels_arr, $_hostels); $banks=$this->sm->get_banks(array('bank_inst_id'=>$this->inst_id)); $genders=array( 'Male'=>'', 'Female'=>'', 'Other'=>'' ); $this->data['agents']=$this->um->get_agents(array('agent_inst_id' =>$this->inst_id,'agent_approval_status'=>'approved'),FALSE); //print_obj($this->data['agents']);die; $fees_types=$this->fm->__get_fees_type(array('fees_type_inst_id'=>$this->inst_id,'fees_type_group'=>'Admission'),FALSE); $check_upload_limit=check_max_upload_limit($this->data['userdata'],$db_group); $check_account=check_account_renewal_status($this->data['userdata']); $this->data['tenth_boards']= $this->config->item('tenth_boards'); $this->data['twelfth_boards']= $this->config->item('twelfth_boards'); $this->data['student_upload_limit']=$this->student_upload_limit;//$check_upload_limit['student_upload_limit']; $this->data['student_data_can_be_uploaded']=$this->student_data_can_be_uploaded;//$check_upload_limit['student_data_can_be_uploaded']; $this->data['course_fees_edit_access']=$this->course_fees_edit_access; $this->data['expiry_message']=$check_account['expiry_message']; $this->data['expired_message']=$check_account['expired_message']; $this->data['fees_types']=$fees_types; $this->data['countries']=$countries; $this->data['states']=$states; $this->data['admission_type']=$admission_type; $this->data['application_type']=$application_type; $this->data['cate_category']=$caste_category; $this->data['sections']=$sections; $this->data['religions']=$religions; $this->data['blood_groups']=$blood_groups; $this->data['genders']=$genders; $this->data['sessions']=$sessions; $this->data['courses']=$courses; $this->data['session_courses']=$session_courses; $this->data['occupations']=$occupations; $this->data['banks']=$banks; $this->data['inst_in_bill_print']=$this->inst_in_bill_print; if($userdata->user_type=='agent'){ $view='admission/vw_admission_register_agent'; }else{ $view='admission/vw_admission_register'; } $this->theme->title($this->data['page_title'])->add_partial('partial_student_course_admission_fees_update',$this->data)->load($view, $this->data); }else{ $this->theme->title($this->data['page_title'])->load('admission/vw_permission_denied', $this->data); } }else{ $this->theme->title($this->data['page_title'])->load('admission/vw_permission_denied', $this->data); } }else{ redirect($this->data['base_url']); } } public function indexAdmissionExcelData($file_id=null){ if(session_userdata('isAdminLoggedin')){ if($file_id!=null){ $file_id=decode_data($file_id); $excel_file_type=$this->inst_student_data_excel_format; $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$file_id),FALSE,$this->inst_code); //$this->data['session_id']=$session; //$this->data['course_id']=$course; //$this->data['subject_id']=$subject; $this->data['states']=$this->sm->_get_states(null,FALSE,$this->inst_code); $this->data['courses']=$this->cm->get_course(array('course_inst_id'=>$this->inst_id),FALSE,$this->inst_code); $this->data['sessions']=$this->sessm->get_session(null,FALSE,$this->inst_code); $this->data['castes']=$this->cst->get_caste_category(null,FALSE,$this->inst_code); $this->data['excel_file_type']=$excel_file_type; $this->data['file_id']=encode_data($file_id); if($excel_file_type==1){ $view='admission/vw_admission_excel_temp_data_type_one'; }else if($excel_file_type==2){ $view='admission/vw_admission_excel_temp_data'; } $this->theme->title($this->data['page_title'])->load($view, $this->data); } }else{ redirect($this->data['base_url']); } } Public function onCreateAdmission(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ //if($this->admission_add_access=='yes'){ $institute_data=check_institute($this->data['userdata']); $inst_id=$institute_data['institute_id']; $inst_type=$institute_data['inst_type']; $inst_email=$institute_data['inst_email']; $inst_ph=$institute_data['inst_ph']; $parent_inst_id=$institute_data['inst_parent_id']; $inst_code=$institute_data['inst_code']; $storage_dir='institutes/'.$inst_code.'/students/'.date('Y'); $booking_type=post_data('booking_type'); $booking_id=post_data('booking_id'); $admission_type=post_data('admission_type'); $admission_date=post_data('admission_date'); $admission_session=post_data('admission_session'); $admission_course=post_data('admission_course'); $admission_course_fees=post_data('admission_course_fees'); $admission_section='0';//post_data('admission_section'); $admission_agent=post_data('admission_agent'); $booking_agent_payout_amount=post_data('admission_agent_payout_amount'); $admission_subject=post_data('admission_subject'); $admission_avail_hostel=post_data('admission_avail_hostel'); $admission_avail_hostel='no'; if($admission_avail_hostel!=='no'){ $avail_hostel='yes'; $hostel_id=$admission_avail_hostel; $hostel_admission_fees_data=$this->hm->get_hostel_admission_fees(array('admission_hostel_id'=>$hostel_id)); }else{ $avail_hostel='no'; $hostel_id=null; $hostel_admission_fees_data=null; } $total_admissions=$this->adm->get_total_admissions(array('admission_inst_id'=>$inst_id,'DATE(created_at)'=>date('Y-m-d'))); if ($total_admissions > 0) { $code_to_add = $total_admissions + 1; } else { $code_to_add = '1'; } //$admission_code=ge_rand_code('ADM',2,TRUE).$code_to_add; $admission_code=ge_rand_code('ADM'); $stu_first_name=post_data('stu_first_name'); $stu_middle_name=post_data('stu_middle_name'); $stu_last_name=post_data('stu_last_name'); $stu_dob=post_data('stu_dob'); $stu_gender=post_data('stu_gender'); $stu_religion=post_data('stu_religion'); $stu_caste=post_data('stu_caste'); $stu_blood_grp=post_data('stu_blood_grp'); $stu_aadhar_no=post_data('stu_aadhar_no'); $stu_ph_no=post_data('stu_ph_no'); $stu_whatsapp_no=post_data('stu_whatsapp_no'); $stu_email_address=post_data('stu_email_address'); $stu_has_illness=post_data('stu_has_illness'); $stu_illness_remarks=post_data('stu_illness_remarks'); $stu_identiy_mark=post_data('stu_identiy_mark'); $stu_nationality=post_data('stu_nationality'); $stu_10th_board=post_data('stu_10th_board'); $stu_10th_yop=post_data('stu_10th_year_of_passing'); $stu_10th_total_marks=post_data('stu_10th_total_marks'); $stu_10th_percentage_marks=post_data('stu_10th_percentage_marks'); $stu_10th_division=post_data('stu_10th_division'); $stu_10th_subjects=post_data('stu_10th_subjects'); $stu_10_2_board=post_data('stu_10_2_board'); $stu_10_2_yop=post_data('stu_10_2_year_of_passing'); $stu_10_2_total_marks=post_data('stu_10_2_total_marks'); $stu_10_2_percentage_marks=post_data('stu_10_2_percentage_marks'); $stu_10_2_division=post_data('stu_10_2_division'); $stu_10_2_subjects=post_data('stu_10_2_subjects'); $stu_grad_board=post_data('stu_grad_board'); $stu_grad_yop=post_data('stu_grad_year_of_passing'); $stu_grad_total_marks=post_data('stu_grad_total_marks'); $stu_grad_percentage_marks=post_data('stu_grad_percentage_marks'); $stu_grad_division=post_data('stu_grad_division'); $stu_grad_subjects=post_data('stu_grad_subjects'); $stu_post_grad_board=post_data('stu_post_grad_board'); $stu_post_grad_yop=post_data('stu_post_grad_year_of_passing'); $stu_post_grad_total_marks=post_data('stu_post_grad_total_marks'); $stu_post_grad_percentage_marks=post_data('stu_post_grad_percentage_marks'); $stu_post_grad_division=post_data('stu_post_grad_division'); $stu_post_grad_subjects=post_data('stu_post_grad_subjects'); $stu_other_grad_board=post_data('stu_other_grad_board'); $stu_other_grad_yop=post_data('stu_other_grad_year_of_passing'); $stu_other_grad_total_marks=post_data('stu_other_grad_total_marks'); $stu_other_grad_percentage_marks=post_data('stu_other_grad_percentage_marks'); $stu_other_grad_division=post_data('stu_other_grad_division'); $stu_other_grad_subjects=post_data('stu_other_grad_subjects'); $stu_father_first_name=post_data('stu_father_first_name'); $stu_father_mid_name=post_data('stu_father_mid_name'); $stu_father_last_name=post_data('stu_father_last_name'); $stu_father_occupation=post_data('stu_father_occupation'); $stu_father_mobile=post_data('stu_father_mobile'); $stu_father_email_address=post_data('stu_father_email_address'); $stu_father_income=post_data('stu_father_income'); $stu_mother_first_name=post_data('stu_mother_first_name'); $stu_mother_mid_name=post_data('stu_mother_mid_name'); $stu_mother_last_name=post_data('stu_mother_last_name'); $stu_mother_occupation=post_data('stu_mother_occupation'); $stu_mother_mobile=post_data('stu_mother_mobile'); $stu_mother_email_address=post_data('stu_mother_email_address'); $stu_mother_income=post_data('stu_mother_income'); $stu_guardian_first_name=post_data('stu_guardian_first_name'); $stu_guardian_mid_name=post_data('stu_guardian_mid_name'); $stu_guardian_last_name=post_data('stu_guardian_last_name'); $stu_guardian_occupation=post_data('stu_guardian_occupation'); $stu_guardian_mobile=post_data('stu_guardian_mobile'); $stu_guardian_email_address=post_data('stu_guardian_email_address'); $stu_guardian_income=post_data('stu_guardian_income'); $stu_c_o=post_data('stu_c_o'); $stu_city_village=post_data('stu_city_village'); $stu_district=post_data('stu_district'); $stu_state=post_data('stu_state'); $stu_p_s=post_data('stu_p_s'); $stu_p_o=post_data('stu_p_o'); $stu_pincode=post_data('stu_pincode'); $stu_address_landmark=post_data('stu_address_landmark'); $stu_perma_c_o=post_data('stu_perma_c_o'); $stu_perma_city_village=post_data('stu_perma_city_village'); $stu_perma_district=post_data('stu_perma_district'); $stu_perma_state=post_data('stu_perma_state'); $stu_perma_p_s=post_data('stu_perma_p_s'); $stu_perma_p_o=post_data('stu_perma_p_o'); $stu_perma_pincode=post_data('stu_perma_pincode'); $stu_perma_address_landmark=post_data('stu_perma_address_landmark'); $admission_course_is_lateral=post_data('admission_course_is_lateral'); $address_same_as=post_data('address_same_as'); $college_id=$inst_id;//$this->data['userdata']->user_id; $user_id=$this->data['userdata']->user_id; if($this->data['userdata']->user_type=='institute'){ $parent_inst_id=$this->data['userdata']->user_id; $storage_dir='institutes/'.$this->data['userdata']->user_code.'/students/'.date('Y'); }else if($this->data['userdata']->user_type=='institute_branch'){ $parent_inst_id=$this->data['userdata']->branch_parent_inst_id; $inst_data=$this->um->get_institute(array('user_pk_id'=>$parent_inst_id)); $storage_dir='institutes/'.$inst_data->user_code.'/students/'.date('Y'); } if(!empty($admission_subject) && $admission_subject==0){ $subject_required=true; $admission_subject_id=null; }else if(!empty($subject_data) && $admission_subject>0){ $subject_required=false; $admission_subject_id=$admission_subject; }else{ $subject_required=false; $admission_subject_id=null; } if($subject_required==true){ $subject_data=$this->cm->get_subject(array('subject_id'=>$admission_subject_id,'subject_inst_id'=>$inst_id,'subject_course_id'=>$admission_course),TRUE); } $course_data=$this->cm->get_course(array('course_id'=>$admission_course,'course_inst_id'=>$this->data['userdata']->user_id)); $session_data=$this->sessm->get_session(array('session_id'=>$admission_session,'session_inst_id'=>$this->data['userdata']->user_id)); if($subject_required==false){ if(!empty($stu_email_address)){ $student_found=$this->um->get_duplicate_student(array('stu_email'=>$stu_email_address),array('stu_ph_no'=>$stu_ph_no),null,null,FALSE); }else{ $student_found=$this->um->get_duplicate_student(array('stu_ph_no'=>$stu_ph_no),null,null,null,FALSE); } if($admission_agent>0 && $booking_agent_payout_amount<$admission_course_fees){ $agent_data_valid=true; }else{ $agent_data_valid=false; } if($student_found[0]->counted==0){ $total_students=$this->um->get_count_students(array('stu_inst_id'=>$inst_id)); $college_id=$inst_id; $stu_inst_parent_id=$parent_inst_id; $student_data=compact('college_id','parent_inst_id','stu_first_name','stu_middle_name','stu_last_name','stu_email_address','stu_ph_no','stu_whatsapp_no','stu_aadhar_no','stu_dob','stu_gender','stu_religion','stu_caste','stu_blood_grp','stu_nationality','stu_has_illness','stu_illness_remarks','stu_identiy_mark','stu_father_first_name','stu_father_mid_name','stu_father_last_name','stu_father_mobile','stu_father_email_address','stu_father_income','stu_father_occupation','stu_mother_first_name','stu_mother_mid_name','stu_mother_last_name','stu_mother_mobile','stu_mother_email_address','stu_mother_income','stu_mother_occupation','stu_guardian_first_name','stu_guardian_mid_name','stu_guardian_last_name','stu_guardian_mobile','stu_guardian_email_address','stu_guardian_income','stu_guardian_occupation','stu_c_o','stu_nationality','stu_state','stu_city_village','stu_district','stu_pincode','stu_p_s','stu_p_o','stu_address_landmark','stu_perma_c_o','stu_nationality','stu_perma_state','stu_perma_city_village','stu_perma_district','stu_perma_pincode','stu_perma_p_s','stu_perma_p_o','stu_perma_address_landmark','address_same_as','admission_type','avail_hostel','user_id'); $student_id=store_students($student_data); if($student_id){ $student_id_val=$total_students+1; $student_code_settings=$this->data['student_code_settings']; $course_code=($admission_course_is_lateral=='yes')?$course_data->course_code.'(L)':$course_data->course_code; $session_start_year=$session_data->session_start_year; $session_end_year=$session_data->session_end_year; $user_code=$this->data['user_code']; $code_data=compact('student_code_settings','course_code','session_start_year','session_end_year','user_code','student_id_val'); $stu_user_code=generate_stu_code($code_data); $this->um->update_students(array('stu_user_code'=>$stu_user_code),array('stu_id'=>$student_id)); $stu_password=post_data('stu_password'); $password=generate_password($stu_password); $stu_username=post_data('stu_username'); if(!empty($stu_username)){ $user_name=$stu_username; }else{ $user_name=$stu_ph_no; } $student_userdata=array( 'user_name'=>$user_name, 'user_code'=>$this->inst_code, 'user_password'=>$password, 'user_password_visible'=>encode_data($stu_password), 'user_type'=>'student', 'user_permissions'=>null, 'user_status'=>'active', 'created_by_type'=>'ntadmin', 'created_by'=>$this->data['userdata']->user_id, 'created_at'=>date('Y-m-d') ); $student_user_id=$this->um->store_users($student_userdata); if($student_user_id){ $this->um->update_students(array('stu_user_id'=>$student_user_id),array('stu_id'=>$student_id));//die; //Hostel & Hostel Fees Assign if($avail_hostel=='yes' && !empty($hostel_admission_fees_data)){ $hostel_assign_data=$this->hm->get_hostel_admission_fees_assign_data(array('assign_stu_id'=>$student_user_id,'assign_hostel_id'=>$hostel_id)); if(empty($hostel_assign_data)){ $this->hm->store_hostel_admission_fees_assign_data( array( 'assign_stu_id'=>$student_user_id, 'assign_hostel_id'=>$hostel_id, 'assign_hostel_admission_fees_id'=>$hostel_admission_fees_data->admission_fees_id, 'assign_fees_paid'=>'no' ) ); } } } $academic_data=compact('student_user_id','college_id','parent_inst_id','stu_10th_board','stu_10th_yop','stu_10th_total_marks','stu_10th_percentage_marks','stu_10th_division','stu_10th_subjects','stu_10_2_board','stu_10_2_yop','stu_10_2_total_marks','stu_10_2_percentage_marks','stu_10_2_division','stu_10_2_subjects','stu_grad_board','stu_grad_yop','stu_grad_total_marks','stu_grad_percentage_marks','stu_grad_division','stu_grad_subjects','stu_post_grad_board','stu_post_grad_yop','stu_post_grad_total_marks','stu_post_grad_percentage_marks','stu_post_grad_division','stu_post_grad_subjects','stu_other_grad_board','stu_other_grad_yop','stu_other_grad_total_marks','stu_other_grad_percentage_marks','stu_other_grad_division','stu_other_grad_subjects','user_id'); store_students_academics($academic_data); if(isset($_FILES['stu_addhar_card_file']) && $_FILES['stu_addhar_card_file']['name']!=''){ $addhar_file=array( 'file_size'=>'0.05', 'file_name'=>'stu_addhar_card_file', 'file_types'=>'png,jpg,jpeg', 'file_storage_type'=>'aadhar_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($addhar_file); } if(isset($_FILES['stu_madhyamik_admit_card_file']) && $_FILES['stu_madhyamik_admit_card_file']['name']!=''){ $madhyamik_admitcard=array( 'file_size'=>'0.05', 'file_name'=>'stu_madhyamik_admit_card_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'madhyamik_admit_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($madhyamik_admitcard); } if(isset($_FILES['stu_madhyamik_result_file']) && $_FILES['stu_madhyamik_result_file']['name']!=''){ $madhyamik_result=array( 'file_size'=>'5', 'file_name'=>'stu_madhyamik_result_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'madhyamik_result_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($madhyamik_result); } if(isset($_FILES['stu_madhyamik_rank_file']) && $_FILES['stu_madhyamik_rank_file']['name']!=''){ $madhyamik_rank_card=array( 'file_size'=>'0.05', 'file_name'=>'stu_madhyamik_rank_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'madhyamik_rank_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($madhyamik_rank_card); } if(isset($_FILES['stu_madhyamik_reg_card_file']) && $_FILES['stu_madhyamik_reg_card_file']['name']!=''){ $madhyamik_reg_card=array( 'file_size'=>'0.03', 'file_name'=>'stu_madhyamik_reg_card_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'madhyamik_registration_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($madhyamik_reg_card); } if(isset($_FILES['stu_post_signature_file']) && $_FILES['stu_post_signature_file']['name']!=''){ $profile_signature=array( 'file_size'=>'0.01', 'file_name'=>'stu_post_signature_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'student_signature_photo', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($profile_signature); } if(isset($_FILES['stu_profile_photo_file']) && $_FILES['stu_profile_photo_file']['name']!=''){ $profile_photo=array( 'file_size'=>'0.01', 'file_name'=>'stu_profile_photo_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'student_profile_photo', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($profile_photo); } if(isset($_FILES['stu_12th_result_file']) && $_FILES['stu_12th_result_file']['name']!=''){ $hs_result=array( 'file_size'=>'0.05', 'file_name'=>'stu_12th_result_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'12th_result_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($hs_result); } if(isset($_FILES['stu_grad_result_file']) && $_FILES['stu_grad_result_file']['name']!=''){ $grad_result=array( 'file_size'=>'0.05', 'file_name'=>'stu_grad_result_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'grad_result_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($grad_result); } if(isset($_FILES['stu_post_grad_result_file']) && $_FILES['stu_post_grad_result_file']['name']!=''){ $post_grad_result=array( 'file_size'=>'0.05', 'file_name'=>'stu_post_grad_result_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'post_grad_result_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($post_grad_result); } if(isset($_FILES['stu_other_certificate_file']) && $_FILES['stu_other_certificate_file']['name']!=''){ $other_certificate=array( 'file_size'=>'0.05', 'file_name'=>'stu_other_certificate_file', 'file_types'=>'png,jpg,jpeg,pdf', 'file_storage_type'=>'other_certificate_card', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$student_user_id, 'file_parent_id'=>$college_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$this->data['userdata']->user_id ); $this->onUploadFiles($other_certificate); } $admission_application_type='new_admission'; $admission_details=compact('booking_type','booking_id','student_user_id','college_id','parent_inst_id','admission_session','admission_course','admission_subject_id','admission_section','admission_type','admission_application_type','admission_agent','admission_code','avail_hostel','hostel_id','admission_date','user_id'); $admission_id=store_admission_data($admission_details); if($admission_id){ //Store student course fees data //if(empty($admission_course_fees) && $admission_course_fees>0){ $stu_course_data=array( 'session_id'=>$admission_session, 'session_inst_id'=>$this->inst_id, 'session_stu_id'=>$student_user_id, 'session_course_id'=>$admission_course, 'session_course_fees'=>$admission_course_fees, 'is_lateral'=>$admission_course_is_lateral, 'session_course_booking_fee'=>0 ); $this->sessm->store_session_course_student_wise($stu_course_data); //} if(!empty($stu_middle_name)){ $student_name=$stu_first_name.' '.$stu_middle_name.' '.$stu_last_name; }else{ $student_name=$stu_first_name.' '.$stu_last_name; } if($agent_data_valid==true){ if(!empty($booking_agent_payout_amount) && $booking_agent_payout_amount>0){ $agent_payment_data=compact('inst_id','parent_inst_id','admission_agent','admission_session','admission_course','student_user_id','admission_subject_id','admission_id','admission_code','booking_agent_payout_amount'); //print_obj($agent_payment_data); store_agent_payment($agent_payment_data,'admission'); } } $mail_data['inst_id']=$inst_id; $mail_data['mail_from']='webmaster'; $mail_data['to_email']=$stu_email_address; $mail_data['mail_from_name']=$inst_name; $mail_data['mail_subject']=ucwords($inst_name).' Admission Registration Details'; $mail_data['mail_type']='html'; $mail_data['mail_custom_type']='html'; $mail_data['log_type']='admission'; $mail_data['log_user_type']='student'; $mail_data['log_user_id']=$student_user_id; $mail_data['mail_data']=array( 'stu_name'=>ucwords($student_name), 'stu_email'=>$stu_email_address, 'stu_ph'=>$stu_ph_no, 'booking_code'=>$admission_code, 'booking_session'=>$session_data->session_start_year.'-'.$session_data->session_end_year, 'booking_course'=>$course_data->course_name, 'booking_subject'=>(!empty($subject_data))?$subject_data->subject_name:'N/A', 'user_name'=>$username, 'user_password'=>$stu_password, 'portal_url'=>$this->data['base_url'], 'portal_logo'=>$inst_logo_url, 'portal_inst_name'=>$inst_name, 'college_email'=>$inst_email, 'college_phone'=>$inst_ph, 'default_logo_small'=>$this->data['default_logo_small'], 'created_at'=>date('d-m-Y',strtotime($admission_date)) ); $mail_data['mail_view']='_pages/mails/vw_admission_book_mail'; $mail_msg=$this->onSendMail($mail_data); if($avail_hostel=='yes'){ $this->adm->update_admission_data(array('admission_avail_hostel'=>'yes','admission_hostel_id'=>$hostel_id),array('admission_stu_id'=>$student_user_id)); } } $return['success']='Registration successfull.Payment can be recieved now or later.'.$mail_msg; $return['registration_admission_id']=encode_data($admission_id); $return['document_verification']='I am giving my consent that all documents and data has been verified and checked.'; $return['redirect_payment']=$this->data['base_url'].'/admission/payments/'.encode_data($admission_id); }else{ $return['error']='Error occurred.'; } }else{ $return['error']='Data alreday found with same email or phone no.'; } }else{ $return['error']='Select subject'; } // }else{ // $return['error']='You do not have the permission'; // } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onDeleteAdmission(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $admission_id=post_data('admission_id'); if(!empty($admission_id)){ $admission_id=decode_data($admission_id); $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if(!empty($adm_data)){ $deleted=$this->adm->delete_admission_data(array('admission_id'=>$admission_id)); if($deleted){ $logs_data=array( 'log_user_type'=>$userdata->user_type, 'log_user_id'=>$userdata->user_id, 'log_stu_id'=>$adm_data->admission_stu_id, 'log_user_code'=>$userdata->user_code, 'admission_data'=>$adm_data ); create_admission_data_delete_log($logs_data); $return['success']='Data Deleted'; }else{ $return['error']='data not deleted'; } }else{ $return['error']='Admission_data not'; } }else{ $return['error']='Data manipulation not allowed'; } }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUpdateAdmissionSingleData(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $data_field_to_update=post_data('data_field'); $data_value=post_data('data_value'); $admission_id=post_data('admission_id'); $admission_id=decode_data($admission_id); $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if(!empty($admission_data)){ $student_data=$this->um->get_user(array('user_id'=>$admission_data->admission_stu_id),'student'); if($student_data->stu_mid_name!=''){ $stu_name=$student_data->stu_first_name.' '.$student_data->stu_mid_name.' '.$student_data->stu_last_name; }else{ $stu_name=$student_data->stu_first_name.' '.$student_data->stu_last_name; } if($data_field_to_update=='admission_docs_completed'){ $updated=$this->adm->update_admission_data(array($data_field_to_update=>$data_value,'admission_payment_can_be_scheduled'=>'yes','admission_docs_verified_by'=>$this->data['userdata']->user_id),array('admission_id'=>$admission_id)); /* $mail_data['inst_id']=$student_data->stu_inst_id; $mail_data['mail_from']='webmaster'; $mail_data['to_email']=$this->data['userdata']->user_email; $mail_data['mail_from_name']='Autobot'; $mail_data['mail_subject']=$stu_name.'['.$admission_data->admission_code.'] documents approval.'; $mail_data['mail_type']='text'; $mail_data['mail_data']=$stu_name.' uploaded documents has been approved.'; $mail_data['mail_log']='true'; $mail_data['inst_parent_id']=''; $mail_data['notify_type']='stu_data_approved'; $mail_data['notify_type_data']=$stu_name; $mail_data['notify_type_id']=$student_data->stu_user_id; $mail_data['notify_has_attachment']='no'; $mail_data['notify_status']='unread'; $mail_msg=$this->onSendMail($mail_data);*/ }else{ $updated=$this->adm->update_admission_data(array($data_field_to_update=>$data_value),array('admission_id'=>$admission_id)); } if($updated){ $return['success']='Data has been updated successfully'; }else{ $return['error']='data not updated'; } }else{ $return['error']='Admission_data not available'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } /** * This function is used to search the admissions list with the given parameters. It uses the datatables library to generate the list. * @param array $posts It contains the parameters for the search. * @param array $param It contains the parameters for the search. * @return array It returns the data for the datatables library. */ public function onSearchAdmissionsList(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $db_group=$this->data['userdata']->user_code; $param['column_order'] = array( null, 'admission_code' ); $param['inst_id']=$this->data['userdata']->user_id; $param['application_type']='new_admission'; $param['column_search'] = array('admission_code','stu_first_name','stu_mid_name','stu_last_name','course_name'); $param['order'] = array('admission_id' => 'ASC'); $posts=$this->input->post(); if(isset($posts['admission_session']) && $posts['admission_session']>0){ $param['admission_session']=$posts['admission_session']; } if(isset($posts['admission_course']) && $posts['admission_course']>0){ $param['admission_course']=$posts['admission_course']; } $list = $this->adm->_get_admissions_data($posts,$param,FALSE,FALSE,$db_group); $data = array(); $no = isset($posts['start'])?$posts['start']:0; $action=''; foreach ($list as $stu){ $no++; $row = array(); $action='<div class="btn-group" role="group" aria-label="Basic example">'; if($stu->stu_mid_name!=''){ $student_name=$stu->stu_first_name.' '.$stu->stu_mid_name.' '.$stu->stu_last_name; }else{ $student_name=$stu->stu_first_name.' '.$stu->stu_last_name; } $course_fees=$this->sessm->__get_session_course_student_wise(array('session_stu_id'=>$stu->stu_user_id),'session_course_id,session_course_fees',TRUE); $course_fees_amount = isset($course_fees->session_course_fees) ? number_format($course_fees->session_course_fees, 2) : 'N/A'; $row[] = $no; $agent_name[$stu->stu_user_id]=''; if($stu->agent_name!=null){ $agent_name[$stu->stu_user_id].='<br><b>Consultant:'.$stu->agent_name.'</b>'; } if($stu->admission_docs_completed=='no'){ $admission_code = $stu->admission_code.'<br><a href="'.$this->data['base_url'].'/students/register/'.encode_data($stu->stu_id).'" class="btn btn-xs btn-dark">Check & Approve Data</a>'; }else{ if($stu->admission_completed=='no'){ $admission_code = $stu->admission_code.'<br><button type="button" data-admission_id="" class="btn btn-xs btn-warning btn_update_admission_status" style="color:#000000;">Update Admission Status:Pending</button>'; }else{ $admission_code = $stu->admission_code; } } $session_and_course=$stu->course_code.'/'.$stu->session_start_year.'-'.$stu->session_end_year.'<br>Fee:'.$course_fees_amount; //$stu->stu_email.'<br>'.$stu->stu_ph_no.' $row[] = $student_name.'<br>'.$stu->stu_user_code.'<br>'.$admission_code.$agent_name[$stu->stu_user_id]; $row[] = $session_and_course; $admission_date=(!empty($stu->admission_date) || $stu->admission_date!=NULL)?date('d-m-Y',strtotime($stu->admission_date)):'N/A'; $row[] = $admission_date ; $row[] = date('d-m-Y',strtotime($stu->created_at)); /* if($stu->is_old_data=='yes'){ // $row[] = '<a class="btn btn-xs btn-dark" href="'.$this->data['base_url'].'/bills?type=installments_old_fees&code='.encode_data($stu->admission_id).'" target="_blank"><i class="fa fa-print"></i> Print Bill</a>'; $row[] = '<button data-admission_id='.encode_data($stu->admission_id).'" type="button" class="btn btn-xs btn-dark"><i class="fa fa-eye"></i></button>'; }else{*/ if($stu->admission_docs_completed=='yes'){ $action .= '<a class="btn btn-xs btn-dark" href="'.$this->data['base_url'].'/admission/payments/'.encode_data($stu->admission_id).'" data-id="'.$stu->admission_id.'"> Payments</a>'; }else{ if($stu->admission_payment_can_be_scheduled=='yes'){ $action .= '<a class="btn btn-dark d-none d-lg-block m-l-15" href="'.$this->data['base_url'].'/admission/payments/'.encode_data($stu->admission_id).'"> Schedule Payment</a>'; }else{ $action .= '<span class="badge badge-danger"> Documents Not Updated Yet</span>'; } } //} $action.='<button type="button" class="btn btn-xs btn-danger btn_del_admission" data-admission_id="'.encode_data($stu->admission_id).'"><i class="fa fa-trash"></i></button>'; $action.='</div>'; $row[]=$action; $data[] = $row; } $output = array( "draw" => isset($posts['draw'])?$posts['draw']:'', "recordsTotal" => $this->adm->_get_admissions_data($posts,$param,TRUE,FALSE,$db_group), "recordsFiltered" => $this->adm->_get_admissions_data($posts,$param,TRUE,FALSE,$db_group), "data" => $data, ); echo json_encode($output); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUploadAdmissionExcelFiles_v1(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ //$this->load->config('cms_config'); $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $today=date('Y-m-d'); $tempdata=array(); $institute_data=check_institute($this->data['userdata']); $tenth_boards= $this->config->item('tenth_boards_arr'); $inst_id=$this->inst_id; $inst_type=$this->inst_type; $inst_parent_id=$this->inst_parent_id; $inst_code=$this->inst_code; $max_student_upload_limit=$institute_data['student_upload_limit']; $course_is_lateral='no'; $session=0; //$this->inst_student_data_excel_format $course_data=[]; //$course=post_data('booking_course'); if($this->input->post('booking_session')){ $session=post_data('booking_session'); } // $subject=post_data('booking_subject'); $excel_type=post_data('excel_type'); $excel_upload_type=$this->inst_student_data_excel_format; if($excel_upload_type>0){ $table_rows=''; //$course_data=$this->cm->get_course(array('course_id'=>$course,'course_inst_id'=>$inst_id)); $session_data=$this->sessm->get_session(array('session_id'=>$session,'session_inst_id'=>$inst_id),TRUE,$inst_code); //$course_session_data=$this->sessm->get_session_course(array('session_inst_id'=>$inst_id,'session_id'=>$session,'session_course_id'=>$course)); // $get_college_seat_settings=$this->sm->get_college_seat_settings(array('seats_inst_id'=>$inst_id,'seats_sess_id'=>$session,'seats_course_id'=>$course)); $get_college_seat_settings=$this->sm->get_college_seat_settings(array('seats_inst_id'=>$inst_id,'seats_sess_id'=>$session),TRUE,$inst_code); if(!empty($get_college_seat_settings)){ $available_seats=$get_college_seat_settings->seats_available; }else{ $available_seats='0'; } if(isset($_FILES['excel_file']) && $_FILES['excel_file']['name']!=''){ // $get_excel_tempstatus_students=$this->um->get_excel_tempstatus_students(array('session_id'=>$session,'course_id'=>$course,'inst_id'=>$inst_id,'excel_file_name'=>$_FILES['excel_file']['name'])); $get_excel_tempstatus_students=$this->um->get_excel_tempstatus_students(array('session_id'=>$session,'inst_id'=>$inst_id,'excel_file_name'=>$_FILES['excel_file']['name']),$inst_code); if(empty($get_excel_tempstatus_students)){ $excel_data=array( 'file_size'=>'10', 'file_name'=>'excel_file', 'file_types'=>'xls,xlsx', ); $file_path=$this->onUploadExcelFiles($excel_data); if(is_file($file_path)){ $validated=validate_admission_excel($file_path,'Xlsx',$max_student_upload_limit,$excel_upload_type); //print_obj($validated);die; if($validated['validated']==200){ $exceldata=$validated['exceldata']; if(!empty($exceldata)){ $temp_status_data_to_add=array( 'inst_id'=>$inst_id, 'session_id'=>$session, 'course_id'=>0, 'subject_id'=>0, 'excel_upload_type'=>$excel_type, 'excel_file_name'=>$_FILES['excel_file']['name'], 'excel_upload_status'=>'uploaded_not_imported', 'excel_uploaded_by'=>$user_id ); $status_added=$this->um->store_excel_tempstatus_students($temp_status_data_to_add,FALSE,$inst_code); if($status_added){ if($excel_upload_type=='1'){ foreach ($exceldata as $key => $value){ $row=$key+1; $f_name = isset($value[2])?strip_javascript(xss_clean(trim($value[2]))):''; $m_name = isset($value[3])?strip_javascript(xss_clean(trim($value[3]))):''; $l_name = isset($value[4])?strip_javascript(xss_clean(trim($value[4]))):''; $father_name = isset($value[5])?strip_javascript(xss_clean(trim($value[5]))):''; $mother_name = isset($value[6])?strip_javascript(xss_clean(trim($value[6]))):''; $dob = isset($value[7])?strip_javascript(xss_clean(trim($value[7]))):''; $gender = isset($value[8])?strip_javascript(xss_clean(trim($value[8]))):''; $cast = isset($value[9])?strip_javascript(xss_clean(trim($value[9]))):''; $blood_group = isset($value[10])?strip_javascript(xss_clean(trim($value[10]))):''; $aadhar = isset($value[11])?strip_javascript(xss_clean(trim($value[11]))):''; $phno = isset($value[12])?strip_javascript(xss_clean(trim($value[12]))):''; $gaurdian_phno = isset($value[13])?strip_javascript(xss_clean(trim($value[13]))):''; $whatsapp_no = isset($value[14])?strip_javascript(xss_clean(trim($value[14]))):''; $email = isset($value[15])?strip_javascript(xss_clean(trim($value[15]))):''; $permanent_address = isset($value[16])?strip_javascript(xss_clean(trim($value[16]))):''; $city_village = isset($value[17])?strip_javascript(xss_clean(trim($value[17]))):''; $district = isset($value[18])?strip_javascript(xss_clean(trim($value[18]))):''; $po = isset($value[19])?strip_javascript(xss_clean(trim($value[19]))):''; $ps = isset($value[20])?strip_javascript(xss_clean(trim($value[20]))):''; $state = isset($value[21])?strip_javascript(xss_clean(trim($value[21]))):''; if(in_array($state, array('wb','W.B','w.b','west bengal','West Bengal'))){ $state='West Bengal'; $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$inst_code); if(!empty($state_data)){ $state_id=$state_data->state_id; }else{ $state_id=0; } }else{ $state_id=0; } $pin = isset($value[22])?strip_javascript(xss_clean(trim($value[22]))):''; $qualification = isset($value[23])?strip_javascript(xss_clean(trim($value[23]))):''; $total_marks = isset($value[24])?strip_javascript(xss_clean(trim($value[24]))):''; $marksobtained = isset($value[25])?strip_javascript(xss_clean(trim($value[25]))):''; $percentage = isset($value[26])?strip_javascript(xss_clean(trim($value[26]))):''; $board = isset($value[27])?strip_javascript(xss_clean(trim($value[27]))):''; $school = isset($value[28])?strip_javascript(xss_clean(trim($value[28]))):''; $yearofpass = isset($value[29])?strip_javascript(xss_clean(trim($value[29]))):''; $course = isset($value[30])?strip_javascript(xss_clean(trim($value[30]))):''; if(!empty($course)){ $course_data = $this->cm->get_course(array('course_code' => $course)); } if(!empty($course_data)){ $course_id=$course_data->course_id; }else{ $course_id=0; } $course_is_lateral = isset($value[31])?strip_javascript(xss_clean(trim($value[31]))):''; if( in_array($course_is_lateral, array('yes','Yes','YES','y','Y'))){ $is_lateral='yes'; }else{ $is_lateral='no'; } $fees = isset($value[32])?strip_javascript(xss_clean(trim($value[32]))):''; $admission_date = isset($value[33])?strip_javascript(xss_clean(trim($value[33]))):''; $seat_book_fee = isset($value[34])?strip_javascript(xss_clean(trim($value[34]))):''; $admission_fee = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; $discount = isset($value[36])?strip_javascript(xss_clean(trim($value[36]))):''; $first_installment = isset($value[37])?strip_javascript(xss_clean(trim($value[37]))):''; $first_installment_due_date = isset($value[38])?strip_javascript(xss_clean(trim($value[38]))):''; $first_installment_pay_date = isset($value[39])?strip_javascript(xss_clean(trim($value[39]))):''; $first_installment_paid = isset($value[40])?strip_javascript(xss_clean(trim($value[40]))):''; $second_installment = isset($value[41])?strip_javascript(xss_clean(trim($value[41]))):''; $second_installment_due_date = isset($value[42])?strip_javascript(xss_clean(trim($value[42]))):''; $second_installment_pay_date = isset($value[43])?strip_javascript(xss_clean(trim($value[43]))):''; $second_installment_paid = isset($value[44])?strip_javascript(xss_clean(trim($value[44]))):''; $third_installment = isset($value[45])?strip_javascript(xss_clean(trim($value[45]))):''; $third_installment_due_date = isset($value[46])?strip_javascript(xss_clean(trim($value[46]))):''; $third_installment_pay_date = isset($value[47])?strip_javascript(xss_clean(trim($value[47]))):''; $third_installment_paid = isset($value[48])?strip_javascript(xss_clean(trim($value[48]))):''; $fourth_installment = isset($value[49])?strip_javascript(xss_clean(trim($value[49]))):''; $fourth_installment_due_date = isset($value[50])?strip_javascript(xss_clean(trim($value[50]))):''; $fourth_installment_pay_date = isset($value[51])?strip_javascript(xss_clean(trim($value[51]))):''; $fourth_installment_paid = isset($value[52])?strip_javascript(xss_clean(trim($value[52]))):''; $fifth_installment = isset($value[53])?strip_javascript(xss_clean(trim($value[53]))):''; $fifth_installment_due_date = isset($value[54])?strip_javascript(xss_clean(trim($value[54]))):''; $fifth_installment_pay_date = isset($value[55])?strip_javascript(xss_clean(trim($value[55]))):''; $fifth_installment_paid = isset($value[56])?strip_javascript(xss_clean(trim($value[56]))):''; $sixth_installment = isset($value[57])?strip_javascript(xss_clean(trim($value[57]))):''; $sixth_installment_due_date = isset($value[58])?strip_javascript(xss_clean(trim($value[58]))):''; $sixth_installment_pay_date = isset($value[59])?strip_javascript(xss_clean(trim($value[59]))):''; $sixth_installment_paid = isset($value[60])?strip_javascript(xss_clean(trim($value[60]))):''; $seventh_installment = isset($value[61])?strip_javascript(xss_clean(trim($value[61]))):''; $seventh_installment_due_date = isset($value[62])?strip_javascript(xss_clean(trim($value[62]))):''; $seventh_installment_pay_date = isset($value[63])?strip_javascript(xss_clean(trim($value[63]))):''; $seventh_installment_paid = isset($value[64])?strip_javascript(xss_clean(trim($value[64]))):''; $eighth_installment = isset($value[65])?strip_javascript(xss_clean(trim($value[65]))):''; $eighth_installment_due_date = isset($value[66])?strip_javascript(xss_clean(trim($value[66]))):''; $eighth_installment_pay_date = isset($value[67])?strip_javascript(xss_clean(trim($value[67]))):''; $eighth_installment_paid = isset($value[68])?strip_javascript(xss_clean(trim($value[68]))):''; // $total_paid = isset($value[48])?strip_javascript(xss_clean(trim($value[48]))):''; // $total_due = isset($value[49])?strip_javascript(xss_clean(trim($value[49]))):''; $agent_fee = isset($value[69])?strip_javascript(xss_clean(trim($value[69]))):''; $agent_code = isset($value[70])?strip_javascript(xss_clean(trim($value[70]))):''; //$payment_date = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; if(in_array($gender, array('m','M','male','Male','MALE'))){ $gender='male'; }else if(in_array($gender, array('f','F','female','Female','FEMALE'))){ $gender='female'; }else{ $gender='others'; } $cast_data=$this->cst->get_caste_category(array('caste_name'=>$cast)); if(!empty($cast_data)){ $caste_id=$cast_data->caste_id; }else{ $caste_id=$this->cst->store_ucaste_category(array('caste_name'=>$cast)); } $father_name=split_name($father_name); $mother_name=split_name($mother_name); $dob=(!empty($dob))?date('Y-m-d',strtotime($dob)):''; $tempdata[]=array( 'inst_id'=>$inst_id, 'inst_parent_id'=>$inst_parent_id, 'inst_type'=>$inst_type, 'inst_code'=>$inst_code, 'temp_status_id'=>$status_added, 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phno, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste_id, 'blood_group'=>$blood_group, 'aadhar'=>$aadhar, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_name[0], 'father_middle_name'=>$father_name[1], 'father_last_name'=>$father_name[2], 'mother_first_name'=>$mother_name[0], 'mother_middle_name'=>$mother_name[1], 'mother_last_name'=>$mother_name[2], 'course_session'=>$session, 'course'=>$course_id, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'first_installment'=>$first_installment, 'second_installment'=>$second_installment, 'third_installment'=>$third_installment, 'fourth_installment'=>$fourth_installment, 'fifth_installment'=>$fifth_installment, 'sixth_installment'=>$sixth_installment, 'seventh_installment'=>$seventh_installment, 'eighth_installment'=>$eighth_installment, 'first_installment_date'=>$first_installment_due_date, 'second_installment_date'=>$second_installment_due_date, 'third_installment_date'=>$third_installment_due_date, 'fourth_installment_date'=>$fourth_installment_due_date, 'fifth_installment_date'=>$fifth_installment_due_date, 'sixth_installment_date'=>$sixth_installment_due_date, 'seventh_installment_date'=>$seventh_installment_due_date, 'eighth_installment_date'=>$eighth_installment_due_date, 'first_installment_payment_date'=>$first_installment_pay_date, 'second_installment_payment_date'=>$second_installment_pay_date, 'third_installment_payment_date'=>$third_installment_pay_date, 'fourth_installment_payment_date'=>$fourth_installment_pay_date, 'fifth_installment_payment_date'=>$fifth_installment_pay_date, 'sixth_installment_payment_date'=>$sixth_installment_pay_date, 'seventh_installment_payment_date'=>$seventh_installment_pay_date, 'eighth_installment_payment_date'=>$eighth_installment_pay_date, 'first_installment_paid'=>$first_installment_paid, 'second_installment_paid'=>$second_installment_paid, 'third_installment_paid'=>$third_installment_paid, 'fourth_installment_paid'=>$fourth_installment_paid, 'fifth_installment_paid'=>$fifth_installment_paid, 'sixth_installment_paid'=>$sixth_installment_paid, 'seventh_installment_paid'=>$seventh_installment_paid, 'eighth_installment_paid'=>$eighth_installment_paid, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'created_by'=>$this->data['userdata']->user_id ); $lastIndex = count($tempdata) - 1; // Get the index of the last inserted element // Merge the additional data for 'tenth_board', 'tenth_passing_year', etc. if (in_array($board, $tenth_boards)) { $tempdata[$lastIndex]['tenth_board'] = $board; $tempdata[$lastIndex]['tenth_passing_year'] = $yearofpass; $tempdata[$lastIndex]['tenth_total_marks'] = $total_marks; $tempdata[$lastIndex]['tenth_passing_marks'] = $marksobtained; $tempdata[$lastIndex]['tenth_percentage'] = $percentage; }else{ $tempdata[$lastIndex]['tenth_board'] = null; $tempdata[$lastIndex]['tenth_passing_year'] = null; $tempdata[$lastIndex]['tenth_total_marks'] = null; $tempdata[$lastIndex]['tenth_passing_marks'] = null; $tempdata[$lastIndex]['tenth_percentage'] = null; } } if(!empty($tempdata)){ $added=$this->um->store_excel_temp_students($tempdata,TRUE); if($added){ $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$status_added),FALSE); $this->data['session_id']=$session; //$this->data['course_id']=$course; //$this->data['subject_id']=$subject; $this->data['states']=$this->sm->_get_states(null,FALSE); $this->data['courses']=$this->sessm->get_session_courses(array('session_id'=>$session),FALSE); $this->data['castes']=$this->cst->get_caste_category(null,FALSE); $return['html']=$this->theme->view('_pages/admission/vw_admission_excel_temp_data',$this->data,true); //$return['success']='Excel data uploaded.You need to verify the data in next popup for final data import'; $return['success']='Excel data uploaded to the system stack successfully.System will now verify each data and update the system in the background.Please wait for the update to complete.Eventually uploaded data can be seen in the Admission List page on reloading the page.'; }else{ $return['error']='Error occurred.Try after some time.'; } }else{ $return['error']='No data found to import'; } }else if($excel_upload_type=='2'){ //print_obj($exceldata);die; foreach ($exceldata as $key => $value){ $row=$key+1; //New $admission_date = isset($value[2])?strip_javascript(xss_clean(trim($value[2]))):''; $course = isset($value[3])?strip_javascript(xss_clean(trim($value[3]))):''; if(!empty($course)){ $course_data = $this->cm->get_course(array('course_code' => $course),TRUE,$inst_code); } if(!empty($course_data)){ $course_id=$course_data->course_id; }else{ $course_id=0; } $is_lateral='no'; $method = isset($value[4])?strip_javascript(xss_clean(trim($value[4]))):''; $second_method = isset($value[5])?strip_javascript(xss_clean(trim($value[5]))):''; $batch = isset($value[6])?strip_javascript(xss_clean(trim($value[6]))):''; if (!empty($batch)) { $batch_exp = char_separated_to_array($batch, '-'); if (count($batch_exp) === 2) { $batch_start_year = $batch_exp[0]; $batch_end_year = $batch_exp[1]; if (preg_match('/^\d{4}$/', $batch_start_year) && preg_match('/^\d{4}$/', $batch_end_year)) { $session_data=$this->sessm->get_session(array('session_start_year'=>$batch_start_year,'session_end_year'=>$batch_end_year),TRUE,$db_group); if(!empty($session_data)){ $session=$session_data->session_id; } } } } if($course_id>0 && $session>0){ $f_name = isset($value[7])?strip_javascript(xss_clean(trim($value[7]))):''; $m_name = isset($value[8])?strip_javascript(xss_clean(trim($value[8]))):''; $l_name = isset($value[9])?strip_javascript(xss_clean(trim($value[9]))):''; $father_name = isset($value[10])?strip_javascript(xss_clean(trim($value[10]))):''; $mother_name = isset($value[11])?strip_javascript(xss_clean(trim($value[11]))):''; //echo $f_name;die; $dob = isset($value[12])?strip_javascript(xss_clean(trim($value[12]))):''; $gender = isset($value[13])?strip_javascript(xss_clean(trim($value[13]))):''; $cast = isset($value[14])?strip_javascript(xss_clean(trim($value[14]))):''; $blood_group = isset($value[15])?strip_javascript(xss_clean(trim($value[15]))):''; //New $college_roll_no = isset($value[16])?strip_javascript(xss_clean(trim($value[16]))):''; $enrollment_no = isset($value[17])?strip_javascript(xss_clean(trim($value[17]))):''; $reg_no = isset($value[18])?strip_javascript(xss_clean(trim($value[18]))):''; $aadhar = isset($value[19])?strip_javascript(xss_clean(trim($value[19]))):''; //New $pan = isset($value[20])?strip_javascript(xss_clean(trim($value[20]))):''; $phno = isset($value[21])?strip_javascript(xss_clean(trim($value[21]))):''; $gaurdian_phno = isset($value[22])?strip_javascript(xss_clean(trim($value[24]))):''; $whatsapp_no = isset($value[23])?strip_javascript(xss_clean(trim($value[23]))):''; $email = isset($value[24])?strip_javascript(xss_clean(trim($value[24]))):''; $permanent_address = isset($value[25])?strip_javascript(xss_clean(trim($value[25]))):''; $city_village = isset($value[26])?strip_javascript(xss_clean(trim($value[26]))):''; $district = isset($value[27])?strip_javascript(xss_clean(trim($value[27]))):''; $po = isset($value[28])?strip_javascript(xss_clean(trim($value[28]))):''; $ps = isset($value[29])?strip_javascript(xss_clean(trim($value[29]))):''; $state = isset($value[30])?strip_javascript(xss_clean(trim($value[30]))):''; if(in_array($state, array('wb','W.B','w.b','west bengal','West Bengal'))){ $state='West Bengal'; $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$inst_code); if(!empty($state_data)){ $state_id=$state_data->state_id; }else{ $state_id=0; } }else{ $state_id=0; } $pin = isset($value[31])?strip_javascript(xss_clean(trim($value[31]))):''; $qualification = isset($value[32])?strip_javascript(xss_clean(trim($value[32]))):''; $yearofpass = isset($value[33])?strip_javascript(xss_clean(trim($value[33]))):''; $total_marks = isset($value[34])?strip_javascript(xss_clean(trim($value[34]))):''; $marksobtained = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; $percentage = isset($value[36])?strip_javascript(xss_clean(trim($value[36]))):''; //New $subject = isset($value[37])?strip_javascript(xss_clean(trim($value[37]))):''; $hons_pass = isset($value[38])?strip_javascript(xss_clean(trim($value[38]))):''; $board = isset($value[39])?strip_javascript(xss_clean(trim($value[39]))):''; $school = isset($value[40])?strip_javascript(xss_clean(trim($value[40]))):''; $school_yop = isset($value[41])?strip_javascript(xss_clean(trim($value[41]))):''; $course_fees = isset($value[42])?strip_javascript(xss_clean(trim($value[42]))):''; $seatbooking_date = isset($value[43])?strip_javascript(xss_clean(trim($value[43]))):''; $seat_book_fee = isset($value[44])?strip_javascript(xss_clean(trim($value[44]))):''; $admission_fee = isset($value[45])?strip_javascript(xss_clean(trim($value[45]))):''; $discount = isset($value[46])?strip_javascript(xss_clean(trim($value[46]))):''; $first_installment = isset($value[47])?strip_javascript(xss_clean(trim($value[47]))):''; $first_installment_due_date = isset($value[48])?strip_javascript(xss_clean(trim($value[48]))):''; $first_installment_pay_date = isset($value[49])?strip_javascript(xss_clean(trim($value[49]))):''; $first_installment_paid = isset($value[50])?strip_javascript(xss_clean(trim($value[50]))):''; $second_installment = isset($value[51])?strip_javascript(xss_clean(trim($value[51]))):''; $second_installment_due_date = isset($value[52])?strip_javascript(xss_clean(trim($value[52]))):''; $second_installment_pay_date = isset($value[53])?strip_javascript(xss_clean(trim($value[53]))):''; $second_installment_paid = isset($value[54])?strip_javascript(xss_clean(trim($value[54]))):''; $third_installment = isset($value[55])?strip_javascript(xss_clean(trim($value[55]))):''; $third_installment_due_date = isset($value[56])?strip_javascript(xss_clean(trim($value[56]))):''; $third_installment_pay_date = isset($value[57])?strip_javascript(xss_clean(trim($value[57]))):''; $third_installment_paid = isset($value[58])?strip_javascript(xss_clean(trim($value[58]))):''; $fourth_installment = isset($value[59])?strip_javascript(xss_clean(trim($value[59]))):''; $fourth_installment_due_date = isset($value[60])?strip_javascript(xss_clean(trim($value[60]))):''; $fourth_installment_pay_date = isset($value[61])?strip_javascript(xss_clean(trim($value[61]))):''; $fourth_installment_paid = isset($value[62])?strip_javascript(xss_clean(trim($value[62]))):''; $fifth_installment = isset($value[63])?strip_javascript(xss_clean(trim($value[63]))):''; $fifth_installment_due_date = isset($value[64])?strip_javascript(xss_clean(trim($value[64]))):''; $fifth_installment_pay_date = isset($value[65])?strip_javascript(xss_clean(trim($value[65]))):''; $fifth_installment_paid = isset($value[66])?strip_javascript(xss_clean(trim($value[66]))):''; $sixth_installment = isset($value[67])?strip_javascript(xss_clean(trim($value[67]))):''; $sixth_installment_due_date = isset($value[68])?strip_javascript(xss_clean(trim($value[68]))):''; $sixth_installment_pay_date = isset($value[69])?strip_javascript(xss_clean(trim($value[69]))):''; $sixth_installment_paid = isset($value[70])?strip_javascript(xss_clean(trim($value[70]))):''; $seventh_installment = isset($value[71])?strip_javascript(xss_clean(trim($value[71]))):''; $seventh_installment_due_date = isset($value[72])?strip_javascript(xss_clean(trim($value[72]))):''; $seventh_installment_pay_date = isset($value[73])?strip_javascript(xss_clean(trim($value[73]))):''; $seventh_installment_paid = isset($value[74])?strip_javascript(xss_clean(trim($value[74]))):''; $eighth_installment = isset($value[75])?strip_javascript(xss_clean(trim($value[75]))):''; $eighth_installment_due_date = isset($value[76])?strip_javascript(xss_clean(trim($value[76]))):''; $eighth_installment_pay_date = isset($value[77])?strip_javascript(xss_clean(trim($value[77]))):''; $eighth_installment_paid = isset($value[78])?strip_javascript(xss_clean(trim($value[78]))):''; $nineth_installment = isset($value[79])?strip_javascript(xss_clean(trim($value[79]))):''; $nineth_installment_due_date = isset($value[80])?strip_javascript(xss_clean(trim($value[80]))):''; $nineth_installment_pay_date = isset($value[81])?strip_javascript(xss_clean(trim($value[81]))):''; $nineth_installment_paid = isset($value[82])?strip_javascript(xss_clean(trim($value[82]))):''; $tenth_installment = isset($value[82])?strip_javascript(xss_clean(trim($value[82]))):''; $tenth_installment_due_date = isset($value[83])?strip_javascript(xss_clean(trim($value[83]))):''; $tenth_installment_pay_date = isset($value[84])?strip_javascript(xss_clean(trim($value[84]))):''; $tenth_installment_paid = isset($value[85])?strip_javascript(xss_clean(trim($value[85]))):''; $eleventh_installment = isset($value[86])?strip_javascript(xss_clean(trim($value[86]))):''; $eleventh_installment_due_date = isset($value[87])?strip_javascript(xss_clean(trim($value[87]))):''; $eleventh_installment_pay_date = isset($value[88])?strip_javascript(xss_clean(trim($value[88]))):''; $eleventh_installment_paid = isset($value[89])?strip_javascript(xss_clean(trim($value[89]))):''; $twelfth_installment = isset($value[90])?strip_javascript(xss_clean(trim($value[90]))):''; $twelfth_installment_due_date = isset($value[91])?strip_javascript(xss_clean(trim($value[91]))):''; $twelfth_installment_pay_date = isset($value[92])?strip_javascript(xss_clean(trim($value[92]))):''; $twelfth_installment_paid = isset($value[93])?strip_javascript(xss_clean(trim($value[93]))):''; $agent_fee = isset($value[94])?strip_javascript(xss_clean(trim($value[94]))):''; $agent_code = isset($value[95])?strip_javascript(xss_clean(trim($value[95]))):''; //$payment_date = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; if(in_array($gender, array('m','M','male','Male','MALE'))){ $gender='male'; }else if(in_array($gender, array('f','F','female','Female','FEMALE'))){ $gender='female'; }else{ $gender='others'; } $cast_data=$this->cst->get_caste_category(array('caste_name'=>$cast)); if(!empty($cast_data)){ $caste_id=$cast_data->caste_id; }else{ $caste_id=$this->cst->store_ucaste_category(array('caste_name'=>$cast)); } $father_name=split_name($father_name); $mother_name=split_name($mother_name); $dob=(!empty($dob))?date('Y-m-d',strtotime($dob)):''; $tempdata[]=array( 'inst_id'=>$inst_id, 'inst_parent_id'=>$inst_parent_id, 'inst_type'=>$inst_type, 'inst_code'=>$inst_code, 'temp_status_id'=>$status_added, 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phno, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste_id, 'blood_group'=>$blood_group, 'college_roll_no'=>$college_roll_no, 'enrollment_no'=>$enrollment_no, 'reg_no'=>$reg_no, 'aadhar'=>$aadhar, 'pan_no'=>$pan, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_name[0], 'father_middle_name'=>$father_name[1], 'father_last_name'=>$father_name[2], 'mother_first_name'=>$mother_name[0], 'mother_middle_name'=>$mother_name[1], 'mother_last_name'=>$mother_name[2], 'course_session'=>$session, 'course'=>$course_id, 'course_fees'=>$course_fees, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'method'=>$method, 'second_method'=>$second_method, 'batch'=>$batch, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'seat_booking_date'=>$seatbooking_date, 'subject'=>$subject, 'hons_pass'=>$hons_pass, 'first_installment'=>$first_installment, 'second_installment'=>$second_installment, 'third_installment'=>$third_installment, 'fourth_installment'=>$fourth_installment, 'fifth_installment'=>$fifth_installment, 'sixth_installment'=>$sixth_installment, 'seventh_installment'=>$seventh_installment, 'eighth_installment'=>$eighth_installment, 'nineth_installment'=>$eighth_installment, 'tenth_installment'=>$tenth_installment, 'eleventh_installment'=>$eleventh_installment, 'twelfth_installment'=>$twelfth_installment, 'first_installment_date'=>$first_installment_due_date, 'second_installment_date'=>$second_installment_due_date, 'third_installment_date'=>$third_installment_due_date, 'fourth_installment_date'=>$fourth_installment_due_date, 'fifth_installment_date'=>$fifth_installment_due_date, 'sixth_installment_date'=>$sixth_installment_due_date, 'seventh_installment_date'=>$seventh_installment_due_date, 'eighth_installment_date'=>$eighth_installment_due_date, 'first_installment_payment_date'=>$first_installment_pay_date, 'second_installment_payment_date'=>$second_installment_pay_date, 'third_installment_payment_date'=>$third_installment_pay_date, 'fourth_installment_payment_date'=>$fourth_installment_pay_date, 'fifth_installment_payment_date'=>$fifth_installment_pay_date, 'sixth_installment_payment_date'=>$sixth_installment_pay_date, 'seventh_installment_payment_date'=>$seventh_installment_pay_date, 'eighth_installment_payment_date'=>$eighth_installment_pay_date, 'nineth_installment_payment_date'=>$nineth_installment_pay_date, 'tenth_installment_payment_date'=>$tenth_installment_pay_date, 'eleventh_installment_payment_date'=>$eleventh_installment_pay_date, 'twelfth_installment_payment_date'=>$twelfth_installment_pay_date, 'first_installment_paid'=>$first_installment_paid, 'second_installment_paid'=>$second_installment_paid, 'third_installment_paid'=>$third_installment_paid, 'fourth_installment_paid'=>$fourth_installment_paid, 'fifth_installment_paid'=>$fifth_installment_paid, 'sixth_installment_paid'=>$sixth_installment_paid, 'seventh_installment_paid'=>$seventh_installment_paid, 'eighth_installment_paid'=>$eighth_installment_paid, 'nineth_installment_paid'=>$nineth_installment_paid, 'tenth_installment_paid'=>$tenth_installment_paid, 'eleventh_installment_paid'=>$eleventh_installment_paid, 'twelfth_installment_paid'=>$twelfth_installment_paid, 'last_qualification'=>$qualification, 'year_of_passing'=>$yearofpass, 'obtained_marks'=>$marksobtained, 'total_marks'=>$total_marks, 'obtained_percentage'=>$percentage, 'cgpa'=>$percentage, 'university_board'=>$board, 'school_name'=>$school, 'school_yop'=>$school_yop, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'created_by'=>$this->data['userdata']->user_id ); $lastIndex = count($tempdata) - 1; // Get the index of the last inserted element // Merge the additional data for 'tenth_board', 'tenth_passing_year', etc. if (in_array($board, $tenth_boards)) { $tempdata[$lastIndex]['tenth_board'] = $board; $tempdata[$lastIndex]['tenth_passing_year'] = $yearofpass; $tempdata[$lastIndex]['tenth_total_marks'] = $total_marks; $tempdata[$lastIndex]['tenth_passing_marks'] = $marksobtained; $tempdata[$lastIndex]['tenth_percentage'] = $percentage; }else{ $tempdata[$lastIndex]['tenth_board'] = null; $tempdata[$lastIndex]['tenth_passing_year'] = null; $tempdata[$lastIndex]['tenth_total_marks'] = null; $tempdata[$lastIndex]['tenth_passing_marks'] = null; $tempdata[$lastIndex]['tenth_percentage'] = null; } }else{ $return['error']='Course & Session/Batch not found'; } } // print_obj($tempdata);die; if(!empty($tempdata)){ $added=$this->um->store_excel_temp_students($tempdata,TRUE,$inst_code); if($added){ $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$status_added),FALSE,$inst_code); $this->data['session_id']=$session; //$this->data['course_id']=$course; //$this->data['subject_id']=$subject; $this->data['states']=$this->sm->_get_states(null,FALSE,$inst_code); $this->data['courses']=$this->sessm->get_session_courses(array('session_id'=>$session),FALSE,'session_inst_id','ASC',$inst_code); $this->data['castes']=$this->cst->get_caste_category(null,FALSE,$inst_code); $return['html']=$this->theme->view('_pages/admission/vw_admission_excel_temp_data',$this->data,true); //$return['success']='Excel data uploaded.You need to verify the data in next popup for final data import'; $return['success']='Excel data uploaded to the system stack successfully.System will now verify each data and update the system in the background.Please wait for the update to complete.Eventually uploaded data can be seen in the Admission List page on reloading the page.'; }else{ $return['error']='Error occurred.Try after some time.'; } }else{ $return['error']='No data found to import'; } } }else{ $return['error']='Excel can not be uploadede now.Try after sometime.'; } }else{ $return['error']='Data can not be imported now.Try after sometime.'; } }else{ $return['error']=$validated['error']; } }else{ $return['error']='File upload error'; } }else{ $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$get_excel_tempstatus_students->excel_status_id),FALSE); $this->data['session_id']=$get_excel_tempstatus_students->session_id; //$this->data['course_id']=$get_excel_tempstatus_students->course_id; //$this->data['subject_id']=$get_excel_tempstatus_students->subject_id; $return['html']=$this->theme->view('_pages/admission/vw_admission_seatbook_excel_temp_data',$this->data,true); $return['error']='Excel file already uploaded with same file name.Please check again.'; } }else{ $return['error']='Excel file is missing'; } }else{ $return['error']='Upload type not defined'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUploadAdmissionExcelFiles(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $today=date('Y-m-d'); $tempdata=array(); $tenth_boards= $this->config->item('tenth_boards_arr'); $inst_id=$this->inst_id; $inst_type=$this->inst_type; $inst_parent_id=$this->inst_parent_id; $inst_code=$this->inst_code; $max_student_upload_limit=$this->student_upload_limit; $course_is_lateral='no'; $session=0; $excel_type=post_data('excel_type'); $excel_upload_type=$this->inst_student_data_excel_format; if(isset($_FILES['excel_file']) && $_FILES['excel_file']['name']!=''){ $get_excel_tempstatus_students=$this->um->get_excel_tempstatus_students(array('inst_id'=>$inst_id,'excel_file_type'=>$excel_upload_type,'excel_file_name'=>$_FILES['excel_file']['name']),$inst_code); if(empty($get_excel_tempstatus_students)){ $excel_data=array( 'file_size'=>'10', 'file_name'=>'excel_file', 'file_types'=>'xls,xlsx', ); $file_path=$this->onUploadExcelFiles($excel_data); if(is_file($file_path)){ $validated=validate_admission_excel($file_path,'Xlsx',$max_student_upload_limit,$excel_upload_type); if($validated['validated']==200){ $exceldata=$validated['exceldata']; if(!empty($exceldata)){ $temp_status_data_to_add=array( 'excel_file_type'=>$excel_upload_type, 'inst_id'=>$inst_id, 'session_id'=>$session, 'course_id'=>0, 'subject_id'=>0, 'excel_upload_type'=>$excel_type, 'excel_file_name'=>$_FILES['excel_file']['name'], 'excel_upload_status'=>'uploaded_not_imported', 'excel_uploaded_by'=>$user_id ); $status_added=$this->um->store_excel_tempstatus_students($temp_status_data_to_add,FALSE,$inst_code); if($status_added){ if($excel_upload_type==1){ $session=post_data('booking_session'); }else if($excel_upload_type==2){ foreach ($exceldata as $key => $value){ $row=$key+1; //New $admission_date = isset($value[2])?strip_javascript(xss_clean(trim($value[2]))):''; $course = isset($value[3])?strip_javascript(xss_clean(trim($value[3]))):''; if(!empty($course)){ $course_data = $this->cm->get_course(array('course_code' => $course),TRUE,$inst_code); } if(!empty($course_data)){ $course_id=$course_data->course_id; }else{ $course_id=0; } $is_lateral='no'; $method = isset($value[4])?strip_javascript(xss_clean(trim($value[4]))):''; $second_method = isset($value[5])?strip_javascript(xss_clean(trim($value[5]))):''; $batch = isset($value[6])?strip_javascript(xss_clean(trim($value[6]))):''; if (!empty($batch)) { $batch_exp = char_separated_to_array($batch, '-'); if (count($batch_exp) === 2) { $batch_start_year = $batch_exp[0]; $batch_end_year = $batch_exp[1]; if (preg_match('/^\d{4}$/', $batch_start_year) && preg_match('/^\d{4}$/', $batch_end_year)) { $session_data=$this->sessm->get_session(array('session_start_year'=>$batch_start_year,'session_end_year'=>$batch_end_year),TRUE,$db_group); if(!empty($session_data)){ $session=$session_data->session_id; } } } } $f_name = isset($value[7])?strip_javascript(xss_clean(trim($value[7]))):''; $m_name = isset($value[8])?strip_javascript(xss_clean(trim($value[8]))):''; $l_name = isset($value[9])?strip_javascript(xss_clean(trim($value[9]))):''; $father_name = isset($value[10])?strip_javascript(xss_clean(trim($value[10]))):''; $mother_name = isset($value[11])?strip_javascript(xss_clean(trim($value[11]))):''; //echo $f_name;die; $dob = isset($value[12])?strip_javascript(xss_clean(trim($value[12]))):''; $gender = isset($value[13])?strip_javascript(xss_clean(trim($value[13]))):''; $cast = isset($value[14])?strip_javascript(xss_clean(trim($value[14]))):''; $blood_group = isset($value[15])?strip_javascript(xss_clean(trim($value[15]))):''; //New $college_roll_no = isset($value[16])?strip_javascript(xss_clean(trim($value[16]))):''; $enrollment_no = isset($value[17])?strip_javascript(xss_clean(trim($value[17]))):''; $reg_no = isset($value[18])?strip_javascript(xss_clean(trim($value[18]))):''; $aadhar = isset($value[19])?strip_javascript(xss_clean(trim($value[19]))):''; //New $pan = isset($value[20])?strip_javascript(xss_clean(trim($value[20]))):''; $phno = isset($value[21])?strip_javascript(xss_clean(trim($value[21]))):''; $gaurdian_phno = isset($value[22])?strip_javascript(xss_clean(trim($value[24]))):''; $whatsapp_no = isset($value[23])?strip_javascript(xss_clean(trim($value[23]))):''; $email = isset($value[24])?strip_javascript(xss_clean(trim($value[24]))):''; $permanent_address = isset($value[25])?strip_javascript(xss_clean(trim($value[25]))):''; $city_village = isset($value[26])?strip_javascript(xss_clean(trim($value[26]))):''; $district = isset($value[27])?strip_javascript(xss_clean(trim($value[27]))):''; $po = isset($value[28])?strip_javascript(xss_clean(trim($value[28]))):''; $ps = isset($value[29])?strip_javascript(xss_clean(trim($value[29]))):''; $state = isset($value[30])?strip_javascript(xss_clean(trim($value[30]))):''; if(in_array($state, array('wb','W.B','w.b','west bengal','West Bengal'))){ $state='West Bengal'; $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$inst_code); if(!empty($state_data)){ $state_id=$state_data->state_id; }else{ $state_id=0; } }else{ $state_id=0; } $pin = isset($value[31])?strip_javascript(xss_clean(trim($value[31]))):''; $qualification = isset($value[32])?strip_javascript(xss_clean(trim($value[32]))):''; $yearofpass = isset($value[33])?strip_javascript(xss_clean(trim($value[33]))):''; $total_marks = isset($value[34])?strip_javascript(xss_clean(trim($value[34]))):''; $marksobtained = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; $percentage = isset($value[36])?strip_javascript(xss_clean(trim($value[36]))):''; //New $subject = isset($value[37])?strip_javascript(xss_clean(trim($value[37]))):''; $hons_pass = isset($value[38])?strip_javascript(xss_clean(trim($value[38]))):''; $board = isset($value[39])?strip_javascript(xss_clean(trim($value[39]))):''; $school = isset($value[40])?strip_javascript(xss_clean(trim($value[40]))):''; $school_yop = isset($value[41])?strip_javascript(xss_clean(trim($value[41]))):''; $course_fees = isset($value[42])?strip_javascript(xss_clean(trim($value[42]))):''; $seatbooking_date = isset($value[43])?strip_javascript(xss_clean(trim($value[43]))):''; $seat_book_fee = isset($value[44])?strip_javascript(xss_clean(trim($value[44]))):''; $admission_fee = isset($value[45])?strip_javascript(xss_clean(trim($value[45]))):''; $discount = isset($value[46])?strip_javascript(xss_clean(trim($value[46]))):''; $first_installment = isset($value[47])?strip_javascript(xss_clean(trim($value[47]))):''; $first_installment_due_date = isset($value[48])?strip_javascript(xss_clean(trim($value[48]))):''; $first_installment_pay_date = isset($value[49])?strip_javascript(xss_clean(trim($value[49]))):''; $first_installment_paid = isset($value[50])?strip_javascript(xss_clean(trim($value[50]))):''; $second_installment = isset($value[51])?strip_javascript(xss_clean(trim($value[51]))):''; $second_installment_due_date = isset($value[52])?strip_javascript(xss_clean(trim($value[52]))):''; $second_installment_pay_date = isset($value[53])?strip_javascript(xss_clean(trim($value[53]))):''; $second_installment_paid = isset($value[54])?strip_javascript(xss_clean(trim($value[54]))):''; $third_installment = isset($value[55])?strip_javascript(xss_clean(trim($value[55]))):''; $third_installment_due_date = isset($value[56])?strip_javascript(xss_clean(trim($value[56]))):''; $third_installment_pay_date = isset($value[57])?strip_javascript(xss_clean(trim($value[57]))):''; $third_installment_paid = isset($value[58])?strip_javascript(xss_clean(trim($value[58]))):''; $fourth_installment = isset($value[59])?strip_javascript(xss_clean(trim($value[59]))):''; $fourth_installment_due_date = isset($value[60])?strip_javascript(xss_clean(trim($value[60]))):''; $fourth_installment_pay_date = isset($value[61])?strip_javascript(xss_clean(trim($value[61]))):''; $fourth_installment_paid = isset($value[62])?strip_javascript(xss_clean(trim($value[62]))):''; $fifth_installment = isset($value[63])?strip_javascript(xss_clean(trim($value[63]))):''; $fifth_installment_due_date = isset($value[64])?strip_javascript(xss_clean(trim($value[64]))):''; $fifth_installment_pay_date = isset($value[65])?strip_javascript(xss_clean(trim($value[65]))):''; $fifth_installment_paid = isset($value[66])?strip_javascript(xss_clean(trim($value[66]))):''; $sixth_installment = isset($value[67])?strip_javascript(xss_clean(trim($value[67]))):''; $sixth_installment_due_date = isset($value[68])?strip_javascript(xss_clean(trim($value[68]))):''; $sixth_installment_pay_date = isset($value[69])?strip_javascript(xss_clean(trim($value[69]))):''; $sixth_installment_paid = isset($value[70])?strip_javascript(xss_clean(trim($value[70]))):''; $seventh_installment = isset($value[71])?strip_javascript(xss_clean(trim($value[71]))):''; $seventh_installment_due_date = isset($value[72])?strip_javascript(xss_clean(trim($value[72]))):''; $seventh_installment_pay_date = isset($value[73])?strip_javascript(xss_clean(trim($value[73]))):''; $seventh_installment_paid = isset($value[74])?strip_javascript(xss_clean(trim($value[74]))):''; $eighth_installment = isset($value[75])?strip_javascript(xss_clean(trim($value[75]))):''; $eighth_installment_due_date = isset($value[76])?strip_javascript(xss_clean(trim($value[76]))):''; $eighth_installment_pay_date = isset($value[77])?strip_javascript(xss_clean(trim($value[77]))):''; $eighth_installment_paid = isset($value[78])?strip_javascript(xss_clean(trim($value[78]))):''; $nineth_installment = isset($value[79])?strip_javascript(xss_clean(trim($value[79]))):''; $nineth_installment_due_date = isset($value[80])?strip_javascript(xss_clean(trim($value[80]))):''; $nineth_installment_pay_date = isset($value[81])?strip_javascript(xss_clean(trim($value[81]))):''; $nineth_installment_paid = isset($value[82])?strip_javascript(xss_clean(trim($value[82]))):''; $tenth_installment = isset($value[82])?strip_javascript(xss_clean(trim($value[82]))):''; $tenth_installment_due_date = isset($value[83])?strip_javascript(xss_clean(trim($value[83]))):''; $tenth_installment_pay_date = isset($value[84])?strip_javascript(xss_clean(trim($value[84]))):''; $tenth_installment_paid = isset($value[85])?strip_javascript(xss_clean(trim($value[85]))):''; $eleventh_installment = isset($value[86])?strip_javascript(xss_clean(trim($value[86]))):''; $eleventh_installment_due_date = isset($value[87])?strip_javascript(xss_clean(trim($value[87]))):''; $eleventh_installment_pay_date = isset($value[88])?strip_javascript(xss_clean(trim($value[88]))):''; $eleventh_installment_paid = isset($value[89])?strip_javascript(xss_clean(trim($value[89]))):''; $twelfth_installment = isset($value[90])?strip_javascript(xss_clean(trim($value[90]))):''; $twelfth_installment_due_date = isset($value[91])?strip_javascript(xss_clean(trim($value[91]))):''; $twelfth_installment_pay_date = isset($value[92])?strip_javascript(xss_clean(trim($value[92]))):''; $twelfth_installment_paid = isset($value[93])?strip_javascript(xss_clean(trim($value[93]))):''; $agent_fee = isset($value[94])?strip_javascript(xss_clean(trim($value[94]))):''; $agent_code = isset($value[95])?strip_javascript(xss_clean(trim($value[95]))):''; //$payment_date = isset($value[35])?strip_javascript(xss_clean(trim($value[35]))):''; if(in_array($gender, array('m','M','male','Male','MALE'))){ $gender='male'; }else if(in_array($gender, array('f','F','female','Female','FEMALE'))){ $gender='female'; }else{ $gender='others'; } $cast_data=$this->cst->get_caste_category(array('caste_name'=>$cast)); if(!empty($cast_data)){ $caste_id=$cast_data->caste_id; }else{ $caste_id=$this->cst->store_ucaste_category(array('caste_name'=>$cast)); } $father_name=split_name($father_name); $mother_name=split_name($mother_name); $dob=(!empty($dob))?date('Y-m-d',strtotime($dob)):''; $tempdata[]=array( 'inst_id'=>$inst_id, 'inst_parent_id'=>$inst_parent_id, 'inst_type'=>$inst_type, 'inst_code'=>$inst_code, 'temp_status_id'=>$status_added, 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phno, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste_id, 'blood_group'=>$blood_group, 'college_roll_no'=>$college_roll_no, 'enrollment_no'=>$enrollment_no, 'reg_no'=>$reg_no, 'aadhar'=>$aadhar, 'pan_no'=>$pan, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_name[0], 'father_middle_name'=>$father_name[1], 'father_last_name'=>$father_name[2], 'mother_first_name'=>$mother_name[0], 'mother_middle_name'=>$mother_name[1], 'mother_last_name'=>$mother_name[2], 'course_session'=>$session, 'course'=>$course_id, 'course_fees'=>$course_fees, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'method'=>$method, 'second_method'=>$second_method, 'batch'=>$batch, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'seat_booking_date'=>$seatbooking_date, 'subject'=>$subject, 'hons_pass'=>$hons_pass, 'first_installment'=>$first_installment, 'second_installment'=>$second_installment, 'third_installment'=>$third_installment, 'fourth_installment'=>$fourth_installment, 'fifth_installment'=>$fifth_installment, 'sixth_installment'=>$sixth_installment, 'seventh_installment'=>$seventh_installment, 'eighth_installment'=>$eighth_installment, 'nineth_installment'=>$eighth_installment, 'tenth_installment'=>$tenth_installment, 'eleventh_installment'=>$eleventh_installment, 'twelfth_installment'=>$twelfth_installment, 'first_installment_date'=>$first_installment_due_date, 'second_installment_date'=>$second_installment_due_date, 'third_installment_date'=>$third_installment_due_date, 'fourth_installment_date'=>$fourth_installment_due_date, 'fifth_installment_date'=>$fifth_installment_due_date, 'sixth_installment_date'=>$sixth_installment_due_date, 'seventh_installment_date'=>$seventh_installment_due_date, 'eighth_installment_date'=>$eighth_installment_due_date, 'first_installment_payment_date'=>$first_installment_pay_date, 'second_installment_payment_date'=>$second_installment_pay_date, 'third_installment_payment_date'=>$third_installment_pay_date, 'fourth_installment_payment_date'=>$fourth_installment_pay_date, 'fifth_installment_payment_date'=>$fifth_installment_pay_date, 'sixth_installment_payment_date'=>$sixth_installment_pay_date, 'seventh_installment_payment_date'=>$seventh_installment_pay_date, 'eighth_installment_payment_date'=>$eighth_installment_pay_date, 'nineth_installment_payment_date'=>$nineth_installment_pay_date, 'tenth_installment_payment_date'=>$tenth_installment_pay_date, 'eleventh_installment_payment_date'=>$eleventh_installment_pay_date, 'twelfth_installment_payment_date'=>$twelfth_installment_pay_date, 'first_installment_paid'=>$first_installment_paid, 'second_installment_paid'=>$second_installment_paid, 'third_installment_paid'=>$third_installment_paid, 'fourth_installment_paid'=>$fourth_installment_paid, 'fifth_installment_paid'=>$fifth_installment_paid, 'sixth_installment_paid'=>$sixth_installment_paid, 'seventh_installment_paid'=>$seventh_installment_paid, 'eighth_installment_paid'=>$eighth_installment_paid, 'nineth_installment_paid'=>$nineth_installment_paid, 'tenth_installment_paid'=>$tenth_installment_paid, 'eleventh_installment_paid'=>$eleventh_installment_paid, 'twelfth_installment_paid'=>$twelfth_installment_paid, 'last_qualification'=>$qualification, 'year_of_passing'=>$yearofpass, 'obtained_marks'=>$marksobtained, 'total_marks'=>$total_marks, 'obtained_percentage'=>$percentage, 'cgpa'=>$percentage, 'university_board'=>$board, 'school_name'=>$school, 'school_yop'=>$school_yop, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'created_by'=>$this->data['userdata']->user_id ); $lastIndex = count($tempdata) - 1; // Get the index of the last inserted element // Merge the additional data for 'tenth_board', 'tenth_passing_year', etc. if (in_array($board, $tenth_boards)) { $tempdata[$lastIndex]['tenth_board'] = $board; $tempdata[$lastIndex]['tenth_passing_year'] = $yearofpass; $tempdata[$lastIndex]['tenth_total_marks'] = $total_marks; $tempdata[$lastIndex]['tenth_passing_marks'] = $marksobtained; $tempdata[$lastIndex]['tenth_percentage'] = $percentage; }else{ $tempdata[$lastIndex]['tenth_board'] = null; $tempdata[$lastIndex]['tenth_passing_year'] = null; $tempdata[$lastIndex]['tenth_total_marks'] = null; $tempdata[$lastIndex]['tenth_passing_marks'] = null; $tempdata[$lastIndex]['tenth_percentage'] = null; } } if(!empty($tempdata)){ $added=$this->um->store_excel_temp_students($tempdata,TRUE,$inst_code); if($added){ $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$status_added),FALSE,$inst_code); $this->data['session_id']=$session; //$this->data['course_id']=$course; //$this->data['subject_id']=$subject; $this->data['states']=$this->sm->_get_states(null,FALSE,$inst_code); $this->data['courses']=$this->sessm->get_session_courses(array('session_id'=>$session),FALSE,'session_inst_id','ASC',$inst_code); $this->data['castes']=$this->cst->get_caste_category(null,FALSE,$inst_code); $return['redirect']=$this->data['base_uel'].'/admission/tempdata/'.encode_data($status_added); $return['html']=$this->theme->view('_pages/admission/vw_admission_excel_temp_data',$this->data,true); //$return['success']='Excel data uploaded.You need to verify the data in next popup for final data import'; $return['success']='Excel data uploaded to the system stack successfully.System will now verify each data and update the system in the background.Please wait for the update to complete.Eventually uploaded data can be seen in the Admission List page on reloading the page.'; }else{ $return['error']='Error occurred.Try after some time.'; } }else{ $return['error']='No data found to import'; } }else{ $return['error']='Upload type not defined'; } }else{ $return['error']='Excel can not be uploadede now.Try after sometime.'; } }else{ $return['error']='Data can not be imported now.Try after sometime.'; } }else{ $return['error']=$validated['error']; } }else{ $return['error']='File upload error'; } }else{ $this->data['excel_temp_data']=$this->um->get_excel_temp_students(array('temp_status_id'=>$get_excel_tempstatus_students->excel_status_id),FALSE); $this->data['session_id']=$get_excel_tempstatus_students->session_id; //$this->data['course_id']=$get_excel_tempstatus_students->course_id; //$this->data['subject_id']=$get_excel_tempstatus_students->subject_id; $return['html']=$this->theme->view('_pages/admission/vw_admission_seatbook_excel_temp_data',$this->data,true); $return['error']='Excel file already uploaded with same file name.Please check again.'; } }else{ $return['error']='Excel file is missing'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onCheckUpdateImportAdmissionData_v1(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $data_is_importable='no'; $inst_id=$this->inst_id; $db_group=$this->inst_code; $excel_file_id=post_data('excel_file_id'); if(!empty($excel_file_id)){ $excel_file_id=decode_data($excel_file_id); $file_data=$this->um->get_excel_tempstatus_students(array('excel_status_id'=>$excel_file_id,'excel_upload_status'=>'uploaded_not_checked'),TRUE,$db_group); if(!empty($file_data)){ $excel_data=$this->input->post('excel_data'); if(!empty($excel_data)){ if ($this->inst_student_data_excel_format == 2) { $excel_type_col=12; }else{ $excel_type_col=8; } foreach($excel_data as $key=>$value){ $installment_data = []; // reset for each student $f_name=$value['first_name']; $l_name=$value['last_name']; $father_f_name=$value['father_first_name']; $father_m_name=$value['father_middle_name']; $father_l_name=$value['father_last_name']; $mother_f_name=$value['mother_first_name']; $mother_m_name=$value['mother_middle_name']; $mother_l_name=$value['mother_last_name']; $dob=$value['dob']; $gender=$value['gender']; $caste=$value['caste']; $blood_group=$value['blood_group']; $college_roll_no=$value['college_roll_no']; $enrollment_no=$value['enrollment_no']; $reg_no=$value['reg_no']; $aadhar=$value['aadhar']; $pan=$value['pan_no']; $phone_no=$value['phone_no']; $father_phone_no=$value['father_phone_no']; $whatsapp_no=$value['whatsapp_no']; $email=$value['email']; $address=$value['address']; $city=$value['city']; $district=$value['district']; $po_box=$value['po_box']; $police_station=$value['police_station']; $state=$value['state']; $pincode=$value['pincode']; $last_qualification=$value['last_qualification']; $year_of_passing=$value['year_of_passing']; $total_marks=$value['total_marks']; $obtained_marks=$value['obtained_marks']; $cgpa=$value['cgpa']; $subject=$value['subject']; $hons_pass=$value['hons_pass']; $university_board=$value['university_board']; $school_name=$value['school_name']; $school_yop=$value['school_yop']; $course_fees=$value['course_fees']; $seat_booking_date=$value['seat_booking_date']; $seat_booking_fee=$value['seat_booking_fee']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; $admission_date=$value['admission_date']; $admission_subject=$value['admission_subject']; $course=$value['course']; $session=$value['session']; $method=$value['method']; $second_method=$value['second_method']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; if(!empty($admission_date) || $admission_date!=='0000-00-00' || preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $admission_date)){ $data_is_importable='yes'; } if(!empty($dob) || $dob!=='0000-00-00' || preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $dob)){ $data_is_importable='yes'; } $session_data=$this->sessm->get_session(array('session_id'=>$session),TRUE,$db_group); if(!empty($session_data)){ $batch=$session_data->session_start_year.'-'.$session_data->session_end_year; $data_is_importable='yes'; }else{ $batch=null; } $caste_data=$this->cst->get_caste_category(array('caste_name'=>$caste),TRUE,$db_group); if(!empty($caste_data)){ $caste_id=$caste_data->caste_id; $data_is_importable='yes'; }else{ $caste_id=null; } $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$db_group); if(!empty($state_data)){ $state_id=$state_data->state_id; $data_is_importable='yes'; }else{ $state_id=null; } for ($i = 1; $i <= $excel_type_col; $i++) { $ordinal = numberToOrdinalText($i); // Call the function once ${$ordinal . '_installment'} = $value[$ordinal . '_installment'] ?? null; ${$ordinal . '_installment_date'} = $value[$ordinal . '_installment_date'] ?? null; ${$ordinal . '_installment_payment_date'} = $value[$ordinal . '_installment_payment_date'] ?? null; ${$ordinal . '_installment_paid'} = $value[$ordinal . '_installment_paid'] ?? null; $installment_value=${$ordinal . '_installment'}; $installment_due_date=${$ordinal . '_installment_date'}; $installment_payment_date=${$ordinal . '_installment_payment_date'}; $installment_paid=${$ordinal . '_installment_paid'}; $installment_data[$ordinal . '_installment']=(!empty($installment_value))?$installment_value:null; $installment_data[$ordinal . '_installment_date']=(!empty($installment_value))?$installment_due_date:null; $installment_data[$ordinal . '_installment_payment_date']=(!empty($installment_value))?$installment_payment_date:null; $installment_data[$ordinal . '_installment_paid']=(!empty($installment_value))?$installment_paid:null; if(!empty($installment_value)){ if(!empty($installment_due_date) && !empty($installment_payment_date) && !empty($installment_paid)){ $data_is_importable='yes'; }else{ $data_is_importable='no'; } }else{ if($i>1){ $data_is_importable='yes'; } } } $agent_fee=$value['agent_fee']; $agent_code=$value['agent_code']; $student_data=array( 'temp_id'=>$value['temp_data_id'], 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phno, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste, 'caste_id'=>$caste_id, 'blood_group'=>$blood_group, 'college_roll_no'=>$college_roll_no, 'enrollment_no'=>$enrollment_no, 'reg_no'=>$reg_no, 'aadhar'=>$aadhar, 'pan_no'=>$pan, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state, 'state_id'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_first_name, 'father_middle_name'=>$father_middle_name, 'father_last_name'=>$father_last_name, 'mother_first_name'=>$mother_first_name, 'mother_middle_name'=>$mother_middle_name, 'mother_last_name'=>$mother_last_name, 'course_session'=>$session, 'course'=>$course, 'course_fees'=>$course_fees, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'method'=>$method, 'second_method'=>$second_method, 'batch'=>$batch, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'seat_booking_date'=>$seatbooking_date, 'subject'=>$subject, 'hons_pass'=>$hons_pass, 'last_qualification'=>$qualification, 'year_of_passing'=>$yearofpass, 'obtained_marks'=>$marksobtained, 'total_marks'=>$total_marks, 'obtained_percentage'=>$percentage, 'cgpa'=>$percentage, 'university_board'=>$board, 'school_name'=>$school, 'school_yop'=>$school_yop, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'data_is_importable'=>$data_is_importable, 'created_by'=>$this->data['userdata']->user_id ); // Merge installment data with student data $tempdata[] = array_merge($student_data, $installment_data); } } if(!empty($tempdata)){ $updated=$this->um->update_excel_temp_students($tempdata,'temp_id',TRUE,$db_group); if($updated){ $this->um->update_excel_tempstatus_students(array('excel_upload_status'=>'uploaded_not_imported'),array('excel_status_id'=>$excel_file_id),FALSE,$db_group); $return['success']='Data updated'; }else{ $return['error']='Data not updated'; } }else{ $return['error']='No Data found'; } }else{ $return['error']='Excel data not found'; } }else{ $return['error']='Excel data not found'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onCheckUpdateImportAdmissionData_v2(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $data_is_importable='no'; $inst_id=$this->inst_id; $db_group=$this->inst_code; $excel_file_id=post_data('excel_file_id'); if(!empty($excel_file_id)){ $excel_file_id=decode_data($excel_file_id); $file_data=$this->um->get_excel_tempstatus_students(array('excel_status_id'=>$excel_file_id,'excel_upload_status'=>'uploaded_not_checked'),TRUE,$db_group); if(!empty($file_data)){ $excel_data=$this->input->post('excel_data'); if(!empty($excel_data)){ if ($this->inst_student_data_excel_format == 2) { $excel_type_col=12; }else{ $excel_type_col=8; } foreach($excel_data as $key=>$value){ $installment_data = []; // reset for each student $all_conditions_met = true; // Flag to track if all conditions are met // Extract all the data fields $f_name=$value['first_name']; $l_name=$value['last_name']; $father_f_name=$value['father_first_name']; $father_m_name=$value['father_middle_name']; $father_l_name=$value['father_last_name']; $mother_f_name=$value['mother_first_name']; $mother_m_name=$value['mother_middle_name']; $mother_l_name=$value['mother_last_name']; $dob=$value['dob']; $gender=$value['gender']; $caste=$value['caste']; $blood_group=$value['blood_group']; $college_roll_no=$value['college_roll_no']; $enrollment_no=$value['enrollment_no']; $reg_no=$value['reg_no']; $aadhar=$value['aadhar']; $pan=$value['pan_no']; $phone_no=$value['phone_no']; $father_phone_no=$value['father_phone_no']; $whatsapp_no=$value['whatsapp_no']; $email=$value['email']; $address=$value['address']; $city=$value['city']; $district=$value['district']; $po_box=$value['po_box']; $police_station=$value['police_station']; $state=$value['state']; $pincode=$value['pincode']; $last_qualification=$value['last_qualification']; $year_of_passing=$value['year_of_passing']; $total_marks=$value['total_marks']; $obtained_marks=$value['obtained_marks']; $cgpa=$value['cgpa']; $subject=$value['subject']; $hons_pass=$value['hons_pass']; $university_board=$value['university_board']; $school_name=$value['school_name']; $school_yop=$value['school_yop']; $course_fees=$value['course_fees']; $seat_booking_date=$value['seat_booking_date']; $seat_booking_fee=$value['seat_booking_fee']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; $admission_date=$value['admission_date']; $admission_subject=$value['admission_subject']; $course=$value['course']; $session=$value['session']; $method=$value['method']; $second_method=$value['second_method']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; // 1. Check if first name is empty if(empty($f_name)){ $all_conditions_met = false; //echo 'f_name error'; } // 2. Check if phone number is empty if(empty($phone_no)){ $all_conditions_met = false; //echo '<br>phone no error'; } // 3. Check if course fees is empty if(empty($course_fees)){ $all_conditions_met = false; //echo '<br>course fees error'; } // 4. Check if session is empty or is 0 if(empty($session) || $session === '0'){ $all_conditions_met = false; //echo '<br>session error'; } // 5. Check if course is empty or is 0 if(empty($course) || $course === '0'){ $all_conditions_met = false; //echo '<br>course error'; } // 6. Check if state is empty or is 0 if(empty($state) || $state === '0'){ $all_conditions_met = false; //echo '<br>state error'; } $session_data=$this->sessm->get_session(array('session_id'=>$session),TRUE,$db_group); if(!empty($session_data)){ $batch=$session_data->session_start_year.'-'.$session_data->session_end_year; }else{ $batch=null; $all_conditions_met = false; //echo '<br>session error'; } $caste_data=$this->cst->get_caste_category(array('caste_name'=>$caste),TRUE,$db_group); if(!empty($caste_data)){ $caste_id=$caste_data->caste_id; }else{ $caste_id=null; $all_conditions_met = false; //echo '<br>caste error'; } $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$db_group); if(!empty($state_data)){ $state_id=$state_data->state_id; }else{ $state_id=null; $all_conditions_met = false; //echo '<br>state error'; } // Check if at least one installment exists and is properly filled $has_valid_installment = false; // Process installment data for ($i = 1; $i <= $excel_type_col; $i++) { $ordinal = numberToOrdinalText($i); ${$ordinal . '_installment'} = $value[$ordinal . '_installment'] ?? null; ${$ordinal . '_installment_date'} = $value[$ordinal . '_installment_date'] ?? null; ${$ordinal . '_installment_payment_date'} = $value[$ordinal . '_installment_payment_date'] ?? null; ${$ordinal . '_installment_paid'} = $value[$ordinal . '_installment_paid'] ?? null; $installment_value = ${$ordinal . '_installment'}; $installment_due_date = ${$ordinal . '_installment_date'}; $installment_payment_date = ${$ordinal . '_installment_payment_date'}; $installment_paid = ${$ordinal . '_installment_paid'}; // Store the data in the array regardless of validation $installment_data[$ordinal . '_installment'] = (!empty($installment_value)) ? $installment_value : null; $installment_data[$ordinal . '_installment_date'] = (!empty($installment_due_date)) ? $installment_due_date : null; $installment_data[$ordinal . '_installment_payment_date'] = (!empty($installment_payment_date)) ? $installment_payment_date : null; $installment_data[$ordinal . '_installment_paid'] = (!empty($installment_paid)) ? $installment_paid : null; // 7. Validate installment data if provided if(!empty($installment_value) && $installment_value > 0) { $date_format_valid_due = !empty($installment_due_date) && preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $installment_due_date); $date_format_valid_payment = !empty($installment_payment_date) && preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $installment_payment_date); $paid_status_valid = !empty($installment_paid) && ($installment_paid == 'yes' || $installment_paid == 'no'); // If installment value is provided, all related fields must be valid if($date_format_valid_due && $date_format_valid_payment && $paid_status_valid) { $has_valid_installment = true; } } } // At least one valid installment must exist if(!$has_valid_installment) { $all_conditions_met = false; } $agent_fee=$value['agent_fee']; $agent_code=$value['agent_code']; // echo $all_conditions_met;die; // Set final importable status based on all conditions if($all_conditions_met) { $data_is_importable = 'yes'; } else { $data_is_importable = 'no'; } $student_data=array( 'temp_id'=>$value['temp_data_id'], 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phone_no, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste, 'caste_id'=>$caste_id, 'blood_group'=>$blood_group, 'college_roll_no'=>$college_roll_no, 'enrollment_no'=>$enrollment_no, 'reg_no'=>$reg_no, 'aadhar'=>$aadhar, 'pan_no'=>$pan, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state, 'state_id'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_first_name, 'father_middle_name'=>$father_middle_name, 'father_last_name'=>$father_last_name, 'mother_first_name'=>$mother_first_name, 'mother_middle_name'=>$mother_middle_name, 'mother_last_name'=>$mother_last_name, 'course_session'=>$session, 'course'=>$course, 'course_fees'=>$course_fees, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'method'=>$method, 'second_method'=>$second_method, 'batch'=>$batch, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'seat_booking_date'=>$seatbooking_date, 'subject'=>$subject, 'hons_pass'=>$hons_pass, 'last_qualification'=>$qualification, 'year_of_passing'=>$yearofpass, 'obtained_marks'=>$marksobtained, 'total_marks'=>$total_marks, 'obtained_percentage'=>$percentage, 'cgpa'=>$percentage, 'university_board'=>$board, 'school_name'=>$school, 'school_yop'=>$school_yop, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'data_is_importable'=>$data_is_importable, 'created_by'=>$this->data['userdata']->user_id ); // Merge installment data with student data $tempdata[] = array_merge($student_data, $installment_data); } } if(!empty($tempdata)){ $updated=$this->um->update_excel_temp_students($tempdata,'temp_id',TRUE,$db_group); if($updated){ if($data_is_importable=='yes'){ $this->um->update_excel_tempstatus_students(array('excel_upload_status'=>'uploaded_not_imported'),array('excel_status_id'=>$excel_file_id),FALSE,$db_group); } $return['success']='Data updated'; }else{ $return['error']='Data not updated'; } }else{ $return['error']='No Data found'; } }else{ $return['error']='Excel data not found'; } }else{ $return['error']='Excel data not found'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onCheckUpdateImportAdmissionData(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $data_is_importable='no'; $inst_id=$this->inst_id; $db_group=$this->inst_code; $excel_file_id=post_data('excel_file_id'); if(!empty($excel_file_id)){ $excel_file_id=decode_data($excel_file_id); $file_data=$this->um->get_excel_tempstatus_students(array('excel_status_id'=>$excel_file_id,'excel_upload_status'=>'uploaded_not_checked'),TRUE,$db_group); if(!empty($file_data)){ $excel_data=$this->input->post('excel_data'); if(!empty($excel_data)){ if ($this->inst_student_data_excel_format == 2) { $excel_type_col=12; }else{ $excel_type_col=8; } foreach($excel_data as $key=>$value){ $installment_data = []; // reset for each student $all_conditions_met = true; // Flag to track if all conditions are met // Extract all the data fields $f_name=$value['first_name']; $l_name=$value['last_name']; $father_f_name=$value['father_first_name']; $father_m_name=$value['father_middle_name']; $father_l_name=$value['father_last_name']; $mother_f_name=$value['mother_first_name']; $mother_m_name=$value['mother_middle_name']; $mother_l_name=$value['mother_last_name']; $dob=$value['dob']; $gender=$value['gender']; $caste=$value['caste']; $blood_group=$value['blood_group']; $college_roll_no=$value['college_roll_no']; $enrollment_no=$value['enrollment_no']; $reg_no=$value['reg_no']; $aadhar=$value['aadhar']; $pan=$value['pan_no']; $phone_no=$value['phone_no']; $father_phone_no=$value['father_phone_no']; $whatsapp_no=$value['whatsapp_no']; $email=$value['email']; $address=$value['address']; $city=$value['city']; $district=$value['district']; $po_box=$value['po_box']; $police_station=$value['police_station']; $state=$value['state']; $pincode=$value['pincode']; $last_qualification=$value['last_qualification']; $year_of_passing=$value['year_of_passing']; $total_marks=$value['total_marks']; $obtained_marks=$value['obtained_marks']; $cgpa=$value['cgpa']; $subject=$value['subject']; $hons_pass=$value['hons_pass']; $university_board=$value['university_board']; $school_name=$value['school_name']; $school_yop=$value['school_yop']; $course_fees=$value['course_fees']; $seat_booking_date=$value['seat_booking_date']; $seat_booking_fee=$value['seat_booking_fee']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; $admission_date=$value['admission_date']; $admission_subject=$value['admission_subject']; $course=$value['course']; $session=$value['session']; $method=$value['method']; $second_method=$value['second_method']; $admission_fee=$value['admission_fee']; $discount=$value['discount']; // 1. Check if first name is empty if(empty($f_name)){ $all_conditions_met = false; } // 2. Check if phone number is empty if(empty($phone_no)){ $all_conditions_met = false; } // 3. Check if course fees is empty if(empty($course_fees)){ $all_conditions_met = false; } // 4. Check if session is empty or is 0 if(empty($session) || $session === '0'){ $all_conditions_met = false; } // 5. Check if course is empty or is 0 if(empty($course) || $course === '0'){ $all_conditions_met = false; } // 6. Check if state is empty or is 0 if(empty($state) || $state === '0'){ $all_conditions_met = false; } $session_data=$this->sessm->get_session(array('session_id'=>$session),TRUE,$db_group); if(!empty($session_data)){ $batch=$session_data->session_start_year.'-'.$session_data->session_end_year; }else{ $batch=null; $all_conditions_met = false; } $caste_data=$this->cst->get_caste_category(array('caste_name'=>$caste),TRUE,$db_group); if(!empty($caste_data)){ $caste_id=$caste_data->caste_id; }else{ $caste_id=null; $all_conditions_met = false; } $state_data=$this->sm->_get_states(array('state_name'=>$state),TRUE,$db_group); if(!empty($state_data)){ $state_id=$state_data->state_id; }else{ $state_id=null; $all_conditions_met = false; } // Check if at least one installment exists and is properly filled $has_valid_installment = false; $total_installments = 0; // Track sum of all installments // Process installment data for ($i = 1; $i <= $excel_type_col; $i++) { $ordinal = numberToOrdinalText($i); ${$ordinal . '_installment'} = $value[$ordinal . '_installment'] ?? null; ${$ordinal . '_installment_date'} = $value[$ordinal . '_installment_date'] ?? null; ${$ordinal . '_installment_payment_date'} = $value[$ordinal . '_installment_payment_date'] ?? null; ${$ordinal . '_installment_paid'} = $value[$ordinal . '_installment_paid'] ?? null; $installment_value = ${$ordinal . '_installment'}; $installment_due_date = ${$ordinal . '_installment_date'}; $installment_payment_date = ${$ordinal . '_installment_payment_date'}; $installment_paid = ${$ordinal . '_installment_paid'}; // Store the data in the array regardless of validation $installment_data[$ordinal . '_installment'] = (!empty($installment_value)) ? $installment_value : null; $installment_data[$ordinal . '_installment_date'] = (!empty($installment_due_date)) ? $installment_due_date : null; $installment_data[$ordinal . '_installment_payment_date'] = (!empty($installment_payment_date)) ? $installment_payment_date : null; $installment_data[$ordinal . '_installment_paid'] = (!empty($installment_paid)) ? $installment_paid : null; // 7. Validate installment data if provided if(!empty($installment_value) && $installment_value > 0) { $date_format_valid_due = !empty($installment_due_date) && preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $installment_due_date); $date_format_valid_payment = !empty($installment_payment_date) && preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $installment_payment_date); $paid_status_valid = !empty($installment_paid) && ($installment_paid == 'yes' || $installment_paid == 'no'); // If installment value is provided, all related fields must be valid if($date_format_valid_due && $date_format_valid_payment && $paid_status_valid) { $has_valid_installment = true; } // Add this installment amount to total $total_installments += floatval($installment_value); } } // At least one valid installment must exist if(!$has_valid_installment) { $all_conditions_met = false; } // New logic to validate course fees according to conditions provided // Convert all fee values to float for proper comparison $course_fees_val = !empty($course_fees) ? floatval($course_fees) : 0; $discount_val = !empty($discount) ? floatval($discount) : 0; $admission_fee_val = !empty($admission_fee) ? floatval($admission_fee) : 0; // Check if course fees match one of the required fee structures $fees_match = false; // 1. With discount and admission fee: installments + admission = (course - discount) if (!empty($discount) && $discount_val > 0 && !empty($admission_fee) && $admission_fee_val > 0) { $expected_total = $course_fees_val - $discount_val; $actual_total = $total_installments + $admission_fee_val; $fees_match = (abs($expected_total - $actual_total) < 0.01); // Using small epsilon for float comparison } // 2. With admission fee but no discount: installments + admission = course else if ((empty($discount) || $discount_val == 0) && !empty($admission_fee) && $admission_fee_val > 0) { $expected_total = $course_fees_val; $actual_total = $total_installments + $admission_fee_val; $fees_match = (abs($expected_total - $actual_total) < 0.01); } // 3. With discount but no admission fee: installments = course - discount else if (!empty($discount) && $discount_val > 0 && (empty($admission_fee) || $admission_fee_val == 0)) { $expected_total = $course_fees_val - $discount_val; $actual_total = $total_installments; $fees_match = (abs($expected_total - $actual_total) < 0.01); } // Default case: installments = course else { $fees_match = (abs($course_fees_val - $total_installments) < 0.01); } // Update all_conditions_met based on fee structure validation if (!$fees_match) { $all_conditions_met = false; } $agent_fee=$value['agent_fee']; $agent_code=$value['agent_code']; // Set final importable status based on all conditions if($all_conditions_met) { $data_is_importable = 'yes'; } else { $data_is_importable = 'no'; } $student_data=array( 'temp_id'=>$value['temp_data_id'], 'first_name'=>$f_name, 'middle_name'=>$m_name, 'last_name'=>$l_name, 'email'=>$email, 'phone_no'=>$phno, 'whatsapp_no'=>$whatsapp_no, 'dob'=>$dob, 'caste'=>$caste, 'caste_id'=>$caste_id, 'blood_group'=>$blood_group, 'college_roll_no'=>$college_roll_no, 'enrollment_no'=>$enrollment_no, 'reg_no'=>$reg_no, 'aadhar'=>$aadhar, 'pan_no'=>$pan, 'gender'=>$gender, 'address'=>$address, 'city'=>$city, 'state'=>$state, 'state_id'=>$state_id, 'district'=>$district, 'po_box'=>$po, 'police_station'=>$ps, 'pincode'=>$pincode, 'password'=>$password, 'father_first_name'=>$father_first_name, 'father_middle_name'=>$father_middle_name, 'father_last_name'=>$father_last_name, 'mother_first_name'=>$mother_first_name, 'mother_middle_name'=>$mother_middle_name, 'mother_last_name'=>$mother_last_name, 'course_session'=>$session, 'course'=>$course, 'course_fees'=>$course_fees, 'course_is_lateral'=>$is_lateral, 'fee'=>$fees, 'method'=>$method, 'second_method'=>$second_method, 'batch'=>$batch, 'admission_fee'=>$admission_fee, 'discount'=>$discount, 'seat_booking_fee'=>$seat_book_fee, 'seat_booking_date'=>$seatbooking_date, 'subject'=>$subject, 'hons_pass'=>$hons_pass, 'last_qualification'=>$qualification, 'year_of_passing'=>$yearofpass, 'obtained_marks'=>$marksobtained, 'total_marks'=>$total_marks, 'obtained_percentage'=>$percentage, 'cgpa'=>$percentage, 'university_board'=>$board, 'school_name'=>$school, 'school_yop'=>$school_yop, 'agent_fee'=>$agent_fee, 'agent_code'=>$agent_code, 'admission_date'=>$admission_date, 'data_imported'=>'no', 'data_is_importable'=>$data_is_importable, 'created_by'=>$this->data['userdata']->user_id ); // Merge installment data with student data $tempdata[] = array_merge($student_data, $installment_data); } } if(!empty($tempdata)){ $updated=$this->um->update_excel_temp_students($tempdata,'temp_id',TRUE,$db_group); if($updated){ if($data_is_importable=='yes'){ $this->um->update_excel_tempstatus_students(array('excel_upload_status'=>'uploaded_not_imported'),array('excel_status_id'=>$excel_file_id),FALSE,$db_group); } $return['success']='Data updated'; }else{ $return['error']='Data not updated'; } }else{ $return['error']='No Data found'; } }else{ $return['error']='Excel data not found'; } }else{ $return['error']='Excel data not found'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } // now add more logic for $all_conditions_met according to following: // 1.if $course_fees is not matched as following then $all_conditions_met=false // 1.sum of all installments+admission_fees=(course_fees-discount) where discount is not empty or zero and admission_fees is not empty or zero // 2.sum of all installments+admission_fees=course_fees where discount is empty or zero and admission_fees is not empty or zero // 3.sum of all installments=course_fees where discount is not empty or zero and admission_fees is empty or zero // modify the code to do the following: // 1.if $f_name is empty, then check if $data_is_importable='no' // 2.if $phone_no is empty, then check if $data_is_importable='no' // 3.if $course_fees is empty, then check if $data_is_importable='no' // 4.if $session is empty or is 0, then check if $data_is_importable='no' // 5.if $course is empty or is 0, then check if $data_is_importable='no' // 6.if $state is empty or is 0, then check if $data_is_importable='no' // 7.also if $installment_value is not empty or greater than 0 and $installment_due_date is not empty or is valid dateformat 'dd/mm/yyyy' and $installment_payment_date is not empty or is valid dateformat 'dd/mm/yyyy' and $installment_paid is not empty or is 'yes' or 'no', then$data_is_importable='yes' otherwise $data_is_importable='no' // now all of the above case needs to be statisfied otherwise $data_is_importable='no' public function onImportAdmissionData(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=decode_data(session_userdata('admin_id')); $data_imported=FALSE; $institute_data=check_institute($this->data['userdata']); $temp_status_id=post_data('temp_status_id'); // print_obj($this->input->post('excel_data'));die; $inst_id=$intitute_data['institute_id']; $inst_type=$institute_data['inst_type']; $inst_code=$this->inst_code; $student_code_settings=$this->data['student_code_settings']; $user_code=$this->data['user_code']; $file_data=$this->um->get_excel_tempstatus_students(array('excel_status_id'=>$temp_status_id,'excel_upload_status'=>'uploaded_not_imported'),TRUE,$inst_code); if(!empty($file_data)){ foreach ($file_data as $key => $v) { $temp_id=$value->temp_id; $course=$v->course_id; $session_id=$v->course_session; $course_data=$this->cm->get_course(array('course_id' => $course),TRUE,$inst_code); $session_data=$this->sessm->get_session(array('session_id' => $session_id),TRUE,$inst_code); $state_data=$this->sm->_get_states(array('state_id'=>$state_id),TRUE,$inst_code); if(!empty($course_data) && !empty($session_data) && !empty($state_data)){ $dob=clean_data($v->dob); if(!isValidDate($dob)){ $dob=null; } } } $return['success']='Excel data has been uploaded successfully'; $return['redirect']=$this->data['base_url'].'/students'; }else{ $return['error']='Excel data is missing'; } header('Content-Type: application/json'); echo json_encode($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } //Payments function indexAdmissionPayments(){ if(session_userdata('isAdminLoggedin')){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $this->data['page_title']='Admission Payments'; $check_institute=check_institute($this->data['userdata']); $college_id=$check_institute['institute_id']; $admission_id=$this->uri->segment(3,0); //$txn_id=$this->uri->segment(5,0); $txn_id=$this->input->get('p'); $admission_id=decode_data($admission_id); $total=0; $pay_data=array(); $admission_data=array(); $_fees_value=array(); $hostel_fees=array(); $session_fees_types=array(); $session_fees_data=array(); $_txn_data=array(); $college_fees_data=array(); $seatbook_amount=''; $paid_amount=0; $seatbook_amount_exists='no'; $session_years=array(); $banks=$this->sm->get_banks(array('bank_inst_id'=>$college_id),FALSE); $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if(!empty($adm_data)){ $session_id=$adm_data->admission_sess_id; $course_id=$adm_data->admission_course_id; $inst_id=$adm_data->admission_inst_id; $session_course_data=$this->sessm->get_session_course(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id)); $session_course_student_data=$this->sessm->get_session_course_student_wise(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id,'session_stu_id'=>$adm_data->admission_stu_id)); $_get_payments_details_total=$this->fm->_get_payments_details_total(array('details_stu_id'=>$adm_data->admission_stu_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id,'details_inst_id'=>$inst_id,'details_type!='=>'agent_payment'),$db_group); //print_obj($_get_payments_details_total);die; if(!empty($_get_payments_details_total) && !empty($_get_payments_details_total[0]->total)){ $paid_amount=$_get_payments_details_total[0]->total; } if(!empty($session_course_student_data) && $session_course_student_data->session_course_fees>0){ $course_fees=$session_course_student_data->session_course_fees; }else{ if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } } $this->data['college_fees_data']=$this->fm->get_fees_type_data(array('fees_inst_id'=>$adm_data->admission_inst_id)); if($txn_id!='0'){ $_txn_data=$this->fm->get_payment_details(array('details_order_id'=>$txn_id,'details_inst_id'=>$adm_data->admission_inst_id)); $this->fm->update_payment_details(array('details_seen_once'=>'yes'),array('details_order_id'=>$txn_id,'details_inst_id'=>$adm_data->admission_inst_id)); } //print_obj($_txn_data);die; $admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$adm_data->admission_id,'payment_course_id'=>$course_id)); $admission_fees_data=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_payment_type'=>'admission_fees','details_stu_id'=>$adm_data->admission_stu_id,'details_inst_id'=>$adm_data->admission_inst_id,'details_course_id'=>$adm_data->admission_course_id,'details_sess_id'=>$adm_data->admission_sess_id)); if(!empty($admission_fees_data)){ $admission_fees=$admission_fees_data->details_amount; }else{ $admission_fees=0; } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$adm_data->admission_seat_booking_id,'booking_inst_id'=>$adm_data->admission_inst_id)); $late_fees_total=$this->fm->get_late_fees_total(array('late_fee_inst_id'=>$adm_data->admission_inst_id,'late_fee_stu_id'=>$adm_data->admission_stu_id,'late_fee_admission_id'=>$adm_data->admission_id,'late_fee_session_id'=>$adm_data->admission_sess_id,'late_fee_course_id'=>$adm_data->admission_course_id),$db_group); $discount_fees_total=$this->fm->get_discount_fees_total(array('discount_fee_inst_id'=>$adm_data->admission_inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_admission_id'=>$adm_data->admission_id,'discount_fee_session_id'=>$adm_data->admission_sess_id,'discount_fee_course_id'=>$adm_data->admission_course_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } // $remaining_amount=($course_fees-$discount_fees_total)-($paid_amount-$late_fees_total); // $remaining_amount=$remaining_amount-$admission_fees; //$remaining_amount=($course_fees-$discount_fees_total)-($paid_amount-$late_fees_total); //$course_fees=$course_fees-$discount_fees_total; $remaining_amount=(($remaining_amount+$late_fees_total)-$discount_fees_total)-$paid_amount; if($adm_data->stu_mid_name!=''){ $student_name=$adm_data->stu_first_name.' '.$adm_data->stu_mid_name.' '.$adm_data->stu_last_name; }else{ $student_name=$adm_data->stu_first_name.' '.$adm_data->stu_last_name; } $profile_photo=$this->sm->get_file(array('storage_type'=>'student_profile_photo','storage_type_id'=>$adm_data->stu_user_id,'storage_parent_id'=>$adm_data->stu_inst_id)); if(!empty($profile_photo) && !empty($profile_photo->media_disk_path)){ if(file_exists_any_separator(FCPATH.$profile_photo->media_disk_path)){ $profile_img=base_url($profile_photo->media_disk_path_relative); }else{ $profile_img=$this->data['no_image']; } }else{ $profile_img=$this->data['no_image']; } $session_data=$this->sessm->get_session(array('session_id'=>$adm_data->admission_sess_id)); if($session_data->session_duration_type=='yearwise'){ $session_years=$this->sessm->get_session_year(array('year_session_id'=>$adm_data->admission_sess_id),FALSE); } $admission_data=array( 'admission_stu_id'=>$adm_data->admission_stu_id, 'admission_inst_id'=>$adm_data->admission_inst_id, 'admission_sess_id'=>$adm_data->admission_sess_id, 'admission_course_id'=>$adm_data->admission_course_id, 'admission_course'=>$adm_data->course_name, 'admission_fees'=>(!empty($admission_fees_data))?number_format($admission_fees_data->details_amount,2):'0', 'admission_id'=>$adm_data->admission_id, 'admission_code'=>$adm_data->admission_code, 'admission_date'=>date('d-m-Y',strtotime($adm_data->admission_date)), 'admission_session_years'=>$session_years, 'student_name'=>$student_name, 'student_code'=>$adm_data->stu_user_code, 'student_email'=>$adm_data->stu_email, 'student_phone'=>$adm_data->stu_ph_no, 'student_whatsapp_no'=>!empty($adm_data->stu_whatsapp_no)?$adm_data->stu_whatsapp_no:'', 'student_aadhar'=>$adm_data->stu_aadhar, 'student_photo'=>$profile_img, 'course_name'=>$adm_data->course_name, 'session_year'=>$adm_data->session_start_year.'-'.$adm_data->session_end_year, 'course_fees'=>$course_fees, 'course_fees_discount'=>$discount_fees_total, 'course_remaining_amount'=>$remaining_amount, 'course_late_fees'=>$late_fees_total, 'admissionfees_data'=>$admissionfees_data ); } $this->data['banks']=$banks; $this->data['college_fees_data']=$college_fees_data; $this->data['txn_data']=$_txn_data; $this->data['seatbook_amount']=$seatbook_amount; $this->data['seatbook_amount_exists']=$seatbook_amount_exists; $this->data['admission_total_payment']=(!empty($_get_payments_details_total))?$_get_payments_details_total[0]->total:'0'; $this->data['admission_data']=$admission_data; $this->data['inst_in_bill_print']=$this->inst_in_bill_print; //print_obj($this->data['admission_data']); $this->theme->title($this->data['page_title'])->add_partial('partial_admission_fee_payment_inst_mode_modal')->load('admission/vw_admission_payments', $this->data); }else{ redirect($this->data['base_url']); } } function indexAdmissionPayments_backup(){ if(session_userdata('isAdminLoggedin')){ $this->data['page_title']='Admission Payments'; $admission_id=$this->uri->segment(4,0); //$txn_id=$this->uri->segment(5,0); $txn_id=$this->input->get('p'); //echo $txn_id;die; //echo $admission_id;die; $admission_id=decode_data($admission_id); $total=0; $pay_data=array(); $admission_data=array(); $_fees_value=array(); $session_fees_types=array(); $session_fees_data=array(); $_txn_data=array(); $this->data['banks']=$this->sm->get_banks(array('bank_inst_id'=>$this->data['userdata']->user_id),FALSE); $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); //print_obj($adm_data);die; if(!empty($adm_data)){ $session_id=$adm_data->admission_sess_id; $course_id=$adm_data->admission_course_id; $inst_id=$adm_data->admission_inst_id; $session_course_data=$this->sessm->get_session_course(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id)); //print_obj($session_course_data);die; if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } //Admission Txn Data $this->data['college_fees_data']=$this->fm->get_fees_type_data(array('fees_inst_id'=>$adm_data->admission_inst_id)); //print_obj($this->data['college_fees_data']);die; if($txn_id!='0'){ $_txn_data=$this->fm->get_payment_details(array('details_order_id'=>$txn_id,'details_inst_id'=>$this->data['userdata']->user_id)); } $this->data['txn_data']=$_txn_data; //print_obj($this->data['txn_data']);die; if(!empty($_txn_data)){ //$this->fm->update_payment_details(array('details_seen_once'=>'yes'),array('details_order_id'=>$txn_id,'details_inst_id'=>$this->data['userdata']->user_id)); } //print_obj($_txn_data);die; $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$adm_data->admission_seat_booking_id,'booking_inst_id'=>$adm_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } $this->data['seatbook_amount']=$seatbook_amount; $this->data['seatbook_amount_exists']=$seatbook_amount_exists; if($adm_data->stu_mid_name!=''){ $student_name=$adm_data->stu_first_name.' '.$adm_data->stu_mid_name.' '.$adm_data->stu_last_name; }else{ $student_name=$adm_data->stu_first_name.' '.$adm_data->stu_last_name; } $profile_photo=$this->sm->get_file(array('storage_type'=>'profile_photo','storage_type_id'=>$adm_data->stu_user_id,'storage_parent_id'=>$adm_data->stu_inst_id)); //print_obj($profile_photo);die; if(!empty($profile_data) && !empty($profile_photo->media_disk_path)){ if(is_file(FCPATH.$profile_photo->media_disk_path)){ $profile_img=base_url($profile_photo->media_disk_path_relative); }else{ $profile_img=$this->data['no_image']; } }else{ $profile_img=$this->data['no_image']; } $admission_data=array( 'admission_stu_id'=>$adm_data->admission_stu_id, 'admission_inst_id'=>$adm_data->admission_inst_id, 'admission_sess_id'=>$adm_data->admission_sess_id, 'admission_course_id'=>$adm_data->admission_course_id, 'admission_course'=>$adm_data->course_name, 'admission_id'=>$adm_data->admission_id, 'admission_code'=>$adm_data->admission_code, 'admission_date'=>date('d-m-Y',strtotime($adm_data->admission_date)), 'student_name'=>$student_name, 'student_code'=>$adm_data->stu_user_code, 'student_email'=>$adm_data->stu_email, 'student_phone'=>$adm_data->stu_ph_no, 'student_whatsapp_no'=>$adm_data->stu_whatsapp_no, 'student_aadhar'=>$adm_data->stu_aadhar, 'student_photo'=>$profile_img, 'course_name'=>$adm_data->course_name, 'session_year'=>$adm_data->session_start_year.'-'.$adm_data->session_end_year, 'course_fees'=>$course_fees, 'course_remaining_amount'=>$remaining_amount ); } $this->data['admission_data']=$admission_data; // $fees_types=$this->fm->__get_fees_type(array('fees_type_inst_id'=>$adm_data->stu_inst_id,'fees_type_group'=>'Admission'),FALSE); // if(!empty($fees_types)){ // foreach ($fees_types as $key => $value) { // $session_fees_types[]=array( // 'fees_type_id'=>$value->fees_type_id, // 'fees_type'=>$value->fees_type, // 'fees_value'=>$value->fees_value // ); // } // } if(!empty($adm_data)){ $session_data=$this->sessm->get_session(array('session_id'=>$adm_data->admission_sess_id)); if($session_data->session_duration_type=='yearwise'){ $session_years=$this->sessm->get_session_year(array('year_session_id'=>$adm_data->admission_sess_id),FALSE); //echo $adm_data->stu_inst_id; //print_obj($session_years);die; $hostel_fees=array(); if(!empty($session_data)){ foreach ($session_years as $k => $v) { $fees_data=$this->fm->get_fees_type_data(array('fees_inst_id'=>$v->year_session_inst_id,'fees_session_id'=>$v->year_session_id,'fees_year_id'=>$v->year_id)); if(!empty($fees_data)){ //Hostel Data if($adm_data->admission_avail_hostel=='yes'){ $hostel_fees_data=$this->hm->get_hostel_fees(array('fees_hostel_id'=>$adm_data->admission_hostel_id,'fees_inst_id'=>$adm_data->admission_inst_id,'fees_session_id'=>$adm_data->admission_sess_id,'fees_course_id'=>$adm_data->admission_course_id,'fees_session_year_id'=>$v->year_id),TRUE,FALSE); $hostel_fees=(!empty($hostel_fees_data))?$hostel_fees_data->fees_value:'0'; } $fees_types=$this->fm->__get_fees_type_data(array('fees_type_inst_id'=>$adm_data->stu_inst_id,'fees_year_id'=>$v->year_id,'fees_session_id'=>$v->year_session_id,'fees_course_id'=>$adm_data->admission_course_id,'fees_type_group'=>'Admission'),FALSE,FALSE); //print_obj($fees_types);die; if(!empty($fees_types)){ foreach ($fees_types as $key => $value) { $session_fees_types[$v->year_id][]=array( 'fees_type_id'=>$value->fees_type_id, 'fees_type'=>$value->fees_type, 'fees_value'=>$value->fees_value ); } } $installments=$this->fm->get_installments(array('installment_stu_id'=>$adm_data->stu_user_id, 'installment_inst_id'=>$adm_data->admission_inst_id, 'installment_admission_id'=>$adm_data->admission_id, 'installment_sess_id'=>$adm_data->admission_sess_id, 'installment_course_id'=>$adm_data->admission_course_id,'installment_sess_year'=>$v->year_value),FALSE); //print_obj($installments);die; if(!empty($session_fees_types[$v->year_id])){ foreach ($session_fees_types[$v->year_id] as $_k => $_v) { $fess_value=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$adm_data->admission_inst_id,'payment_admission_id'=>$adm_data->admission_id,'payment_sess_id'=>$adm_data->admission_sess_id,'payment_course_id'=>$adm_data->admission_course_id,'payment_fees_type_id'=>$_v['fees_type_id'],'payment_sess_year'=>$v->year_value)); $_fees_value[$_v['fees_type_id']]=array( 'fees_type_id'=>$_v['fees_type_id'], 'fees_type'=>$_v['fees_type'], 'fees_value'=>(!empty($fess_value))?$fess_value->payment_fees_value:$_v['fees_value'] ); } } if(empty($_fees_value)){ if(!empty($session_fees_types)){ $ses_fee_type=$session_fees_types[$v->year_id]; }else{ $ses_fee_type=$session_fees_types; } }else{ $ses_fee_type=$_fees_value; } if(!empty($installments)){ foreach ($installments as $key => $value) { $full_paid_val[$v->year_value][]=$value->installment_paid_full; $_payment_data[$v->year_value][]=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_payment_type'=>'installment_fees','details_stu_id'=>$value->installment_stu_id,'details_inst_id'=>$value->installment_inst_id,'details_sess_id'=>$value->installment_sess_id,'details_sess_year'=>$value->installment_sess_year,'details_course_id'=>$value->installment_course_id,'details_installment_id'=>$value->installment_id)); } //print_obj($full_paid_val[$v->year_value]); if(!empty($full_paid_val[$v->year_value])){ if (in_array('no', $full_paid_val[$v->year_value], true)) { $full_paid='no'; }else{ $full_paid='yes'; } }else{ $full_paid='no'; } }else{ $full_paid='no'; } $session_fees_data[]=array( 'session_year_id'=>$v->year_id, 'session_year'=>$v->year_value, 'session_fees_types'=>$ses_fee_type, 'session_avail_hostel'=>$adm_data->admission_avail_hostel, 'session_hostel_fees'=>$hostel_fees, 'session_installments'=>$installments, 'session_installment_bill'=>(isset($_payment_data))?$_payment_data:'', 'session_paid'=>$full_paid ); } } } } }else{ $session_fees_data=array(); } //die; //print_obj($session_fees_data);die; $this->data['session_fees_data']=$session_fees_data; $payment_data=$this->adm->get_payments_admission_fees_data(array('payment_admission_id'=>$admission_id)); if(!empty($payment_data)){ foreach ($payment_data as $key => $value) { $fees_value[]=$value->payment_fees_value; $pay_data[]=array( 'fees_type'=>$value->fees_type, 'fees_value'=>$value->payment_fees_value ); } $total=array_sum($fees_value); } $this->data['payment_data']=array( 'payment_total'=>$total, 'payment_details'=>$pay_data ); //print_obj($this->data['payment_data']);die; $this->theme->title($this->data['page_title'])->add_partial('partial_admission_fee_payment_inst_mode_modal')->load('admission/vw_admission_payments', $this->data); }else{ redirect($this->data['base_url']); } } public function onGetSessionFeesData(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $session_year_id='0'; $session_id=post_data('session_id'); $course_id=post_data('course_id'); $admission_id=post_data('admission_id'); $inst_id=post_data('inst_id'); $fees_value_sum=0; $session_fees_types=array(); $installments=array(); $installment_nos=[]; if(!empty($inst_id)){ $inst_id=decode_data($inst_id); $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); //print_obj($adm_data);die; $session_student_course_data=$this->sessm->get_session_course_student_wise(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id,'session_stu_id'=>$adm_data->admission_stu_id)); //print_obj($session_student_course_data);die; $session_course_data=$this->sessm->get_session_course(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id)); //print_obj($session_course_data);die; if(!empty($session_student_course_data) && $session_student_course_data->session_course_fees>0){ $course_fees=$session_student_course_data->session_course_fees; }else{ if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$adm_data->admission_seat_booking_id,'booking_inst_id'=>$adm_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } $fees_types=$this->fm->__get_fees_type_data(array('fees_type_inst_id'=>$inst_id,'fees_session_id'=>$session_id,'fees_course_id'=>$course_id,'fees_type_group'=>'Admission'),FALSE,FALSE); //print_obj($fees_types);die; if(!empty($fees_types)){ foreach ($fees_types as $key => $value) { $fees_value_sum+=$value->fees_value; $session_fees_types[]=array( 'fees_type_id'=>$value->fees_type_id, 'fees_type'=>$value->fees_type, 'fees_value'=>$value->fees_value ); } }else{ $fees_value_sum=$remaining_amount; } $grand_total=$fees_value_sum; $session_year_data=$this->sessm->get_session_year(array('year_id'=>$session_year_id)); $installments_data=$this->fm->get_installments(array('installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id),FALSE); if(!empty($installments_data)){ foreach ($installments_data as $key => $value) { $get_installment_payment_details=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_payment_type'=>'installment_fees','details_type_id'=>$admission_id,'details_inst_id'=>$inst_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id,'details_installment_id'=>$value->installment_id)); $get_fees_details=$this->fm->get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$adm_data->admission_inst_id,'payment_session_id'=>$adm_data->admission_sess_id,'payment_course_id'=>$adm_data->admission_course_id,'payment_admission_id'=>$adm_data->admission_id,'payment_installment_id'=>$value->installment_id)); $installment_nos[]=$value->installment_no; $installments[]=array( 'installment_id'=>$value->installment_id, 'installment_amount'=>$value->installment_value, 'installment_penalty'=>$value->installment_value_penalty, 'installment_value_penalty_applicable'=>$value->installment_value_penalty_applicable, 'installment_date'=>date('d-m-Y',strtotime($value->installment_date)), 'installment_can_add'=>(!empty($get_installment_payment_details))?'no':'yes', 'installment_get_fees_details'=>$get_fees_details ); } $installment_full_paid=$this->fm->_get_installments_total(array('installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id,'installment_paid_full'=>'no')); if($installment_full_paid[0]->installment_total>0){ $installment_fully_paid='no'; }else{ $installment_fully_paid='yes'; } }else{ $installment_fully_paid='no'; } $installment_payments=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_inst_id'=>$inst_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id,'details_stu_id'=>$adm_data->admission_stu_id,'details_type_id'=>$adm_data->admission_id)); if(!empty($installment_payments)){ $installment_payments_exists='yes'; }else{ $installment_payments_exists='no'; } $fees_details=array(); $_get_fees_details=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$adm_data->admission_id,'payment_course_id'=>$adm_data->admission_course_id),FALSE); if(!empty($_get_fees_details)){ foreach ($_get_fees_details as $key => $value) { $fees_type_data=$this->adm->get_institute_fees_types(array('fees_type_inst_id'=>$inst_id,'fees_type_id'=>$value->payment_fees_type_id)); $fees_details[]=array( 'fees_type'=>(!empty($fees_type_data))?$fees_type_data->fees_type:null, 'fees_type_id'=>$value->payment_fees_type_id, 'fees_value'=>$value->payment_fees_value ); } }else{ $fees_details=$fees_value_sum; } $scholarship_discount_data=$this->fm->get_discount_fees(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id,'discount_fee_type'=>'scholarship_discount')); $special_discount_data=$this->fm->get_discount_fees(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id,'discount_fee_type'=>'special_discount')); $total_discount=$this->fm->get_discount_fees_total(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id)); $grand_total=$grand_total-$total_discount; $missingNumbers = []; $max = max($installment_nos); // Loop through numbers from 1 to the maximum value in the array // Generate the full range of numbers from 1 to the maximum value $allNumbers = range(1, $max); // Remove the numbers in $arr from the full range $missingNumbers = array_diff($allNumbers, $installment_nos); //$admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$adm_data->admission_id,'payment_course_id'=>$adm_data->admission_course_id)); if($adm_data->admission_seat_booking_converted=='yes'){ $seat_booking_data=$this->adm->get_seat_bookings_data(array('booking_id'=>$adm_data->admission_seat_booking_id),TRUE,$db_group); $admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$seat_booking_data->booking_stu_id,'payment_inst_id'=>$seat_booking_data->booking_inst_id,'payment_sess_id'=>$seat_booking_data->booking_sess_id,'payment_through_id'=>$seat_booking_data->booking_id,'payment_course_id'=>$seat_booking_data->booking_course_id,'payment_through'=>'seatbooking')); }else{ $admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$adm_data->admission_id,'payment_course_id'=>$adm_data->admission_course_id,'payment_through'=>'admission')); } $this->data['admissionfees_data']=$admissionfees_data; $this->data['session_missing_installments']=$missingNumbers; $this->data['grand_total']=(!empty($admissionfees_data))?($grand_total-$admissionfees_data->payment_admission_fees_value):$grand_total; $this->data['course_fees']=$course_fees; $this->data['course_remaining_fees']=$remaining_amount; $this->data['seat_book_data']=$seat_book_data; $this->data['session_fees_types']=$session_fees_types; $this->data['installments']=$installments; $this->data['installment_payments_exists']=$installment_payments_exists; $this->data['fees_details']=$fees_details; $this->data['admission_data']=$adm_data; $this->data['inst_in_bill_print']=$this->inst_in_bill_print; $this->data['installment_fully_paid']=$installment_fully_paid; $this->data['installment_full_paid']=$installment_full_paid; $this->data['scholarship_discount_data']=(!empty($scholarship_discount_data))?$scholarship_discount_data->discount_fee:0; $this->data['special_discount_data']=(!empty($special_discount_data))?$special_discount_data->discount_fee:0; $this->data['scholarship_discount_reason']=(!empty($scholarship_discount_data))?$scholarship_discount_data->discount_fee_type_value:''; $this->data['special_discount_reason']=(!empty($special_discount_data))?$special_discount_data->discount_fee_type_value:''; $return['html']=$this->theme->view('_pages/admission/vw_admission_fees_installment_add',$this->data,true); }else{ $return['error']='data manipulation is not allowed.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUpdateSessionCourseFees(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $course_id=post_data('course_id'); $session_id=post_data('session_id'); $inst_id=post_data('inst_id'); $stu_id=post_data('stu_id'); $admission_id=post_data('admission_id'); $course_fees=post_data('course_fees'); //Check for seatbooking payments already done or not $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$adm_data->admission_seat_booking_id,'booking_inst_id'=>$adm_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $course_fees_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?$course_fees:'0'; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $remaining_amount=$course_fees; $course_fees_amount=$course_fees; } $session_student_course_data=$this->sessm->get_session_course_student_wise(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id,'session_stu_id'=>$stu_id)); $data_to_add=array( 'session_id'=>$session_id, 'session_inst_id'=>$inst_id, 'session_course_id'=>$course_id, 'session_stu_id'=>$stu_id, 'session_course_fees'=>$course_fees_amount ); if(!empty($session_student_course_data)){ $updated=$this->sessm->update_session_course_student_wise($data_to_add,array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id,'session_stu_id'=>$stu_id)); }else{ $updated=$this->sessm->store_session_course_student_wise($data_to_add); } if($updated){ $return['success']='Course fees updated'; }else{ $return['error']='Course fees not updated'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onGetSessionFeesData_old(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $session_year_id=post_data('session_year_id'); $session_id=post_data('session_id'); $course_id=post_data('course_id'); $admission_id=post_data('admission_id'); $inst_id=post_data('inst_id'); $fees_value_sum=0; $session_fees_types=array(); $installments=array(); if(!empty($inst_id)){ $inst_id=decode_data($inst_id); $adm_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); $session_course_data=$this->sessm->get_session_course(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id)); //print_obj($session_course_data);die; if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$adm_data->admission_seat_booking_id,'booking_inst_id'=>$adm_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } $fees_types=$this->fm->__get_fees_type_data(array('fees_type_inst_id'=>$inst_id,'fees_year_id'=>$session_year_id,'fees_session_id'=>$session_id,'fees_course_id'=>$course_id,'fees_type_group'=>'Admission'),FALSE,FALSE); //print_obj($fees_types);die; if(!empty($fees_types)){ foreach ($fees_types as $key => $value) { $fees_value_sum+=$value->fees_value; $session_fees_types[]=array( 'fees_type_id'=>$value->fees_type_id, 'fees_type'=>$value->fees_type, 'fees_value'=>$value->fees_value ); } }else{ } $grand_total=$fees_value_sum; $session_year_data=$this->sessm->get_session_year(array('year_id'=>$session_year_id)); $installments_data=$this->fm->get_installments(array('installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year_data->year_value),FALSE); //print_obj($installments_data);die; if(!empty($installments_data)){ foreach ($installments_data as $key => $value) { $get_installment_payment_details=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_payment_type'=>'installment_fees','details_type_id'=>$admission_id,'details_inst_id'=>$inst_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id,'details_installment_id'=>$value->installment_id)); $get_fees_details=$this->fm->get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$adm_data->admission_inst_id,'payment_session_id'=>$adm_data->admission_sess_id,'payment_course_id'=>$adm_data->admission_course_id,'payment_admission_id'=>$adm_data->admission_id,'payment_installment_id'=>$value->installment_id)); $installments[]=array( 'installment_id'=>$value->installment_id, 'installment_amount'=>$value->installment_value, 'installment_penalty'=>$value->installment_value_penalty, 'installment_date'=>date('d-m-Y',strtotime($value->installment_date)), 'installment_can_add'=>(!empty($get_installment_payment_details))?'no':'yes', 'installment_get_fees_details'=>$get_fees_details ); } } $installment_payments=$this->fm->get_payment_details(array('details_type'=>'new_admission','details_inst_id'=>$inst_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id,'details_stu_id'=>$adm_data->admission_stu_id,'details_type_id'=>$adm_data->admission_id,'details_sess_year'=>$session_year_id)); //print_obj($installment_payments);die; if(!empty($installment_payments)){ $installment_payments_exists='yes'; }else{ $installment_payments_exists='no'; } $fees_details=array(); $_get_fees_details=$this->fm->_get_fees_details(array('payment_stu_id'=>$adm_data->admission_stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$adm_data->admission_id,'payment_course_id'=>$adm_data->admission_course_id,'payment_sess_year'=>$session_year_data->year_value),FALSE); if(!empty($_get_fees_details)){ foreach ($_get_fees_details as $key => $value) { $fees_type_data=$this->adm->get_institute_fees_types(array('fees_type_inst_id'=>$inst_id,'fees_type_id'=>$value->payment_fees_type_id)); $fees_details[]=array( 'fees_type'=>(!empty($fees_type_data))?$fees_type_data->fees_type:null, 'fees_type_id'=>$value->payment_fees_type_id, 'fees_value'=>$value->payment_fees_value ); } } $scholarship_discount_data=$this->fm->get_discount_fees(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id,'discount_fee_type'=>'scholarship_discount')); $special_discount_data=$this->fm->get_discount_fees(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id,'discount_fee_type'=>'special_discount')); $total_discount=$this->fm->get_discount_fees_total(array('discount_fee_inst_id'=>$inst_id,'discount_fee_stu_id'=>$adm_data->admission_stu_id,'discount_fee_course_id'=>$adm_data->admission_course_id,'discount_fee_session_id'=>$session_id,'discount_fee_admission_id'=>$adm_data->admission_id)); $grand_total=$grand_total-$total_discount; $this->data['grand_total']=$grand_total; $this->data['course_fees']=$course_fees; $this->data['course_remaining_fees']=$remaining_amount; $this->data['seat_book_data']=$seat_book_data; $this->data['session_fees_types']=$session_fees_types; $this->data['installments']=$installments; $this->data['installment_payments_exists']=$installment_payments_exists; $this->data['fees_details']=$fees_details; $this->data['scholarship_discount_data']=(!empty($scholarship_discount_data))?$scholarship_discount_data->discount_fee:0; $this->data['special_discount_data']=(!empty($special_discount_data))?$special_discount_data->discount_fee:0; $this->data['scholarship_discount_reason']=(!empty($scholarship_discount_data))?$scholarship_discount_data->discount_fee_type_value:''; $this->data['special_discount_reason']=(!empty($special_discount_data))?$special_discount_data->discount_fee_type_value:''; $return['html']=$this->theme->view('_pages/admission/vw_admission_fees_installment_add',$this->data,true); }else{ $return['error']='data manipulation is not allowed.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onCreateInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=$this->data['userdata']->user_id; $admission_payment=$this->input->post('admission_payment'); $admission_fees_found=array(); $session_fees_types=array(); $installments=array(); $total_discount=0; $grand_total=0; $total_fees=0; $installment_amount_sum=0; $scholarship_discount_reason_required=false; $special_discount_reason_required=false; if(!empty($admission_payment)){ $stu_id=post_data('stu_id'); $inst_id=post_data('inst_id'); $admission_id=post_data('admission_id'); $session_id=post_data('session_id'); $course_id=post_data('course_id'); $admission_fees=post_data('admission_fees'); $installment_scholarship_discount=post_data('admission_payment_scholarships_fees'); $installment_special_discount=post_data('admission_payment_special_fees'); $installment_scholarship_discount_reason=post_data('admission_payment_scholarships_fees_reason'); $installment_special_discount_reason=post_data('admission_payment_special_fees_reason'); //$installment_year=post_data('installment_year'); //if($installment_year>0){ $student_data=$this->um->get_user(array('user_id'=>$stu_id),'student'); $course_data=$this->cm->get_course(array('course_id'=>$course_id,'course_inst_id'=>$inst_id)); $session_data=$this->sessm->get_session(array('session_id'=>$session_id,'session_inst_id'=>$inst_id)); $subject_data='';//$this->cm->get_subject(array('subject_inst_id'=>$inst_id,'subject_course_id'=>$booking_subject),TRUE); $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_inst_id'=>$inst_id,'booking_stu_id'=>$stu_id,'booking_course_id'=>$course_id)); if(!empty($seat_book_data)){ $seat_book_amount=$seat_book_data->booking_payment; }else{ $seat_book_amount=0; } $session_course_data=$this->sessm->get_session_course(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id)); $stu_course_custom_cost=$this->sessm->get_session_course_student_wise(array('session_id'=>$session_id,'session_inst_id'=>$inst_id,'session_course_id'=>$course_id,'session_stu_id'=>$stu_id)); //print_obj($stu_course_custom_cost);die; if(!empty($stu_course_custom_cost)){ $course_fees=$stu_course_custom_cost->session_course_fees; }else{ if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$admission_data->admission_seat_booking_id,'booking_inst_id'=>$admission_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; // $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } //echo $remaining_amount;die; if($installment_scholarship_discount>0 && $installment_special_discount>0){ $total_discount=$installment_scholarship_discount+$installment_special_discount; $scholarship_discount_reason_required=true; $special_discount_reason_required=true; }else if($installment_scholarship_discount>0 && $installment_special_discount==0){ $total_discount=$installment_scholarship_discount; $scholarship_discount_reason_required=true; }else if($installment_scholarship_discount==0 && $installment_special_discount>0){ $total_discount=$installment_special_discount; $special_discount_reason_required=true; } if($scholarship_discount_reason_required==true && $special_discount_reason_required==true){ if(!empty($installment_scholarship_discount_reason) && empty($installment_special_discount_reason)){ $error='Special discount reason required'; }else if(empty($installment_scholarship_discount_reason) && !empty($installment_special_discount_reason)){ $error='Scholarship discount reason required'; }else if(empty($installment_scholarship_discount_reason) && empty($installment_special_discount_reason)){ $error='Scholarship discount & Special discount reason required'; }else{ $error=''; } }else if($scholarship_discount_reason_required==true && $special_discount_reason_required==false){ if(!empty($installment_scholarship_discount_reason)){ $error=''; }else if(empty($installment_scholarship_discount_reason)){ $error='Scholarship discount reason required'; } }else if($scholarship_discount_reason_required==false && $special_discount_reason_required==true){ if(!empty($installment_special_discount_reason)){ $error=''; }else if(empty($installment_special_discount_reason)){ $error='Special discount reason required'; } } if(empty($error)){ $installmets_total=$this->fm->_get_installments_total(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id)); if(!empty($admission_payment[0]['installments'])){ foreach ($admission_payment[0]['installments'] as $key => $value) { $total_fees=$total_fees+clean_data($value['amount']); } } if(!empty($installmets_total[0]->installment_total)){ $installmets_total_amount=$installmets_total[0]->installment_total; }else{ $installmets_total_amount=$total_fees; } $grand_total=$total_fees; $check_param['session_id']=$session_id; $check_param['course_id']=$course_id; $check_param['inst_id']=$inst_id; $check_param['admission_id']=$admission_id; $check_param['stu_id']=$stu_id; $check_param['installment_amount']=$total_fees; $check_param['total_discount']=$total_discount; $check_installments=$this->check_installments($check_param); $installmets_total=$this->fm->_get_installments_total(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id)); if($check_installments=='ok'){ //echo $remaining_amount;die; //if($remaining_amount>$installmets_total_amount){ //print_obj($admission_payment); $session_year_id=post_data('installment_year'); $session_year_data=$this->sessm->get_session_year(array('year_id'=>$session_year_id)); $session_year=$session_year_data->year_value; foreach ($admission_payment as $key => $value) { //print_obj($value); $fees=$value['fees']; // $total_fees=clean_data($value['total_fees']); $installments[]=$value['installments']; //print_obj($installments); if(!empty($fees)){ //print_obj($fees);die; foreach ($fees as $_k => $_v) { //echo $_v; $admission_fee[]=array( 'payment_through'=>'admission', 'payment_stu_id'=>$stu_id, 'payment_inst_id'=>$inst_id, 'payment_sess_id'=>$session_id, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id, 'payment_fees_type_id'=>$_k, 'payment_fees_value'=>clean_data($_v), 'payment_admission_fees_value'=>$admission_fees, 'payment_sess_year'=>$session_year, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); } } } //print_obj($admission_fee);die; if(!empty($installments[0])){ if($stu_course_custom_cost->is_lateral=='yes'){ $i=$this->inst_lateral_sem_start; }else{ $i=0; } $installment_value=($grand_total/count($installments[0])); foreach ($installments[0] as $k => $v) { $dates=date('Y-m-d',strtotime($v['dates'])); $amount=clean_data($v['amount']); $amount_fine=clean_data($v['amount_fine']); $amount_fine_applicable=clean_data($v['amount_fine_applicable']); $installment_amount_sum+=$amount; $installment_data[]=array( 'installment_no'=>($i+1), 'installment_unique_code'=>generate_string(4), 'installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_sess_year'=>$session_year, 'installment_course_id'=>$course_id, 'installment_value'=>$amount, 'installment_value_penalty'=>$amount_fine, 'installment_value_penalty_applicable'=>$amount_fine_applicable, 'installment_scholarship_discount'=>($i==0)?$installment_scholarship_discount:'0.00', 'installment_special_discount'=>($i==0)?$installment_special_discount:'0.00', 'installment_scholarship_discount_reason'=>($i==0)?$installment_scholarship_discount_reason:null, 'installment_special_discount_reason'=>($i==0)?$installment_special_discount_reason:null, 'installment_date'=>$dates, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); $i++; } //echo 'Installment Amount Total:'.$installment_amount_sum.' Grand Total:'.$grand_total.'<br>Remaining Amount:'.$remaining_amount.'<br>Total Discount:'.$total_discount;die; if(!empty($installment_data)){ if($remaining_amount>0){ $remaining_amount=$remaining_amount-$total_discount; } if(!empty($installmets_total[0]->installment_total)){ if($grand_total==$remaining_amount){ $installment_can_be_setup='yes'; }else{ $installment_can_be_setup='no'; } }else{ $installment_can_be_setup='yes'; } if($installment_can_be_setup=='yes'){ if($grand_total==$installment_amount_sum){ if(!empty($admission_fee)){ $admission_fees_found=$this->fm->_get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_sess_year'=>$session_year)); if(empty($admission_fees_found)){ $fees_data_added=$this->fm->_store_fees_details($admission_fee,TRUE); } } if(isset($fees_data_added) && $fees_data_added){ $installments_found=$this->fm->get_installments(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year)); if(!empty($installments_found)){ $this->fm->delete_installments(array('installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year)); } $installment_id=$this->fm->store_installments($installment_data,TRUE); if($installment_id){ if($scholarship_discount_reason_required==true){ $scholarship_discount_data=array( 'discount_fee_inst_id'=>$inst_id, 'discount_fee_inst_parent_id'=>$this->inst_parent_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id, 'discount_fee_installment_id'=>'0', 'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'scholarship_discount', 'discount_fee_type_value'=>$installment_scholarship_discount_reason, 'discount_fee'=>$installment_scholarship_discount, 'created_at'=>date('Y-m-d H:i:s') ); $this->fm->store_discount_fees($scholarship_discount_data); } if($special_discount_reason_required==true){ $special_discount_data=array( 'discount_fee_inst_id'=>$inst_id, 'discount_fee_inst_parent_id'=>$this->inst_parent_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id, 'discount_fee_installment_id'=>'0', 'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'special_discount', 'discount_fee_type_value'=>$installment_special_discount_reason, 'discount_fee'=>$installment_special_discount, 'created_at'=>date('Y-m-d H:i:s') ); $this->fm->store_discount_fees($special_discount_data); } $return['success']='Installment has been set successfully.'; }else{ $return['error']='Installment not set.'; } }else{ $return['error']='No further installments can be set now for this session year '.$session_year.'.To setup again first delete the previous installments setup.'; } }else{ $return['error']='Installment amount can not be greater or less than of grand total amount of ₹'.number_format($installment_amount_sum,2); } }else{ $return['error']='Total amount needs to be ₹'.number_format($remaining_amount,2); } }else{ $return['error']='Installment data not found'; } }else{ $return['error']='Installments data not found to create.'; } // }else{ // $return['error']='No further installments can not be set now.Total course fees ₹'.number_format($remaining_amount).' has been covered.'; // } }else{ $return['error']=$check_installments; } }else{ $return['error']=$error; } // }else{ // $return['error']='Session Year not selected'; // } }else{ $return['error']='Error occurred.No data found to update.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUpdateInstallment(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $installment_id=post_data('installment_id'); $installment_data=$this->fm->get_installments(array('installment_id'=>$installment_id),TRUE,'installment_sess_year','ASC',$db_group); if(!empty($installment_data)){ $admission_payment_date=$this->input->post('admission_payment_date'); $admission_payment_amount=$this->input->post('admission_payment_amount'); $admission_payment_amount_fine=$this->input->post('admission_payment_amount_fine'); $admission_value_penalty_applicable=$this->input->post('admission_payment_amount_fine_applicable'); $admission_data=$this->adm->_get_admission_data(array('admission_id'=>$installment_data->installment_admission_id),TRUE,$db_group); $session_course_student_data=$this->sessm->get_session_course_student_wise(array('session_id'=>$installment_data->installment_sess_id,'session_inst_id'=>$installment_data->installment_inst_id,'session_course_id'=>$installment_data->installment_course_id,'session_stu_id'=>$installment_data->installment_stu_id),TRUE,$db_group); if(!empty($session_course_student_data)){ $course_fees=$session_course_student_data->session_course_fees; }else{ $course_fees=0; } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$admission_data->admission_seat_booking_id,'booking_inst_id'=>$admission_data->admission_inst_id),TRUE,$db_group); // print_obj($seat_book_data); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $remaining_amount=$course_fees; } $_get_payments_details_total=$this->fm->_get_payments_details_total(array('details_stu_id'=>$installment_data->installment_stu_id,'details_sess_id'=>$installment_data->installment_sess_id,'details_course_id'=>$installment_data->installment_course_id,'details_inst_id'=>$installment_data->installment_inst_id,'details_type!='=>'agent_payment'),$db_group); if(!empty($_get_payments_details_total) && !empty($_get_payments_details_total[0]->total)){ $paid_amount=$_get_payments_details_total[0]->total; }else{ $paid_amount=0; } //echo $paid_amount;die; $remaining_amount=$remaining_amount-$paid_amount; if(!empty($admission_payment_amount)){ $installments_total=$this->fm->_get_installments_total(array('installment_id!='=>$installment_id,'installment_stu_id'=>$admission_data->admission_stu_id),$db_group); if(!empty($installments_total) && !empty($installments_total[0]->installment_total)){ $installments_total=$installments_total[0]->installment_total; }else{ $installments_total=0; } $total_value=$admission_payment_amount+$installments_total; if($remaining_amount<=$total_value){ if($admission_payment_amount_fine<=$admission_payment_amount){ $data_toupdate=array( 'installment_value'=>$admission_payment_amount, 'installment_value_penalty'=>$admission_payment_amount_fine, 'installment_value_penalty_applicable'=>$admission_value_penalty_applicable, 'installment_date'=>date('Y-m-d',strtotime($admission_payment_date)), 'updated_by'=>$this->data['userdata']->user_id, 'updated_at'=>date('Y-m-d H:i:s') ); $updated=$this->fm->update_installments($data_toupdate,array('installment_id'=>$installment_id),FALSE,$db_group); if($updated){ $return['success']='Data updated.'; }else{ $return['error']='Data can not be updated'; } }else{ $return['error']='Late fee can not be greater than the actual amount.'; } }else{ $return['error']=ucwords($this->inst_in_bill_print).' amount can not be greater or less than the remaining amount.'; } }else{ $return['error']='Data can not be updated.'; } }else{ $return['error']=ucwords($this->inst_in_bill_print).' not found in the system.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function check_installments($param){ // $session_id=post_data('session_id'); // $course_id=post_data('course_id'); // $inst_id=post_data('inst_id'); // $stu_id=post_data('stu_id'); // $admission_id=poast_data('admission_id'); $installment_amount= $param['installment_amount']; //post_data('installment_amount'); $remaining_installment_amount=0; $admission_data=$this->adm->get_admission_data(array('admission_id'=>$param['admission_id'])); $installmets_total=$this->fm->_get_installments_total(array('installment_stu_id'=>$param['stu_id'],'installment_inst_id'=>$param['inst_id'],'installment_admission_id'=>$param['admission_id'],'installment_sess_id'=>$param['session_id'],'installment_course_id'=>$param['course_id'])); $session_course_data=$this->sessm->get_session_course(array('session_id'=>$param['session_id'],'session_inst_id'=>$param['inst_id'],'session_course_id'=>$param['course_id'])); $session_course_student_data=$this->sessm->get_session_course_student_wise(array('session_id'=>$param['session_id'],'session_inst_id'=>$param['inst_id'],'session_course_id'=>$param['course_id'],'session_stu_id'=>$param['stu_id'])); if(!empty($session_course_student_data) && $session_course_student_data->session_course_fees>0){ $course_fees=$session_course_student_data->session_course_fees; }else{ if(!empty($session_course_data)){ $course_fees=$session_course_data->session_course_fees; }else{ $course_fees=0; } } $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_pk_id'=>$admission_data->admission_seat_booking_id,'booking_inst_id'=>$admission_data->admission_inst_id)); if(!empty($seat_book_data) && $seat_book_data->booking_payment_paid=='yes'){ $seatbook_amount_exists='yes'; $seatbook_amount=$seat_book_data->booking_payment; $remaining_amount=($course_fees>0 && $course_fees>=$seatbook_amount)?($course_fees-$seatbook_amount):'0'; }else{ $seatbook_amount='0'; $seatbook_amount_exists='no'; $remaining_amount=$course_fees; } if(!empty($installmets_total[0]->installment_total)){ $installmets_total_amount=$installmets_total[0]->installment_total; }else{ $installmets_total_amount=0; } //echo $installment_amount.'<br>'; $installment_amount=(double)$installment_amount; if($remaining_amount>$installmets_total_amount){ $remaining_installment_amount=$remaining_amount-$installmets_total_amount; // echo $remaining_installment_amount; // var_dump($installment_amount); // var_dump($remaining_installment_amount); // var_dump($installment_amount <= $remaining_installment_amount); if($installment_amount<=$remaining_installment_amount){ // $return['success']='ok'; return 'ok'; }else{ //$return['error']='Intstallment can not be added.'; return 'Intstallment can not be added.'; } }else if($remaining_amount==$installmets_total_amount){ //$return['error']='Further installments can not be added.'; return 'Further installments can not be added.'; } } public function onDeleteInstallmentsWithCarryForward(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $session_id=post_data('session_id'); $course_id=post_data('course_id'); $inst_id=post_data(''); $installment_id=post_data('installment_id'); $delete_method=post_data('delete_method'); $installments_data=$this->fm->get_installments(array('installment_id'=>$installment_id)); if(!empty($installment_data)){ $installment_payments=$this->fm->get_payment_details(array('details_payment_type'=>'installment_fees','details_type'=>'new_admission','details_inst_id'=>$inst_id,'details_sess_id'=>$session_id,'details_course_id'=>$course_id)); if(empty($installment_payments)){ if($delete_method=='delete_permanently'){ $deleted=$this->fm->delete_installments(array('installment_id'=>$installment_id)); if($deleted){ $return['success']='Installment deleted successfully.'; }else{ $return['error']='Installment not deleted.Try after sometime.'; } }else if($delete_method=='carry_forward'){ $deleted=$this->fm->update_installments(array('installment_carry_forwarded'=>'yes','installment_carry_forwared_value'=>$installments_data->installment_value),array('installment_id'=>$installments_data->installment_id)); //Here needs to check if next installment already exists or not if($deleted){ $return['success']='Installment carry forward to next installments successfully.'; }else{ $return['error']='Installment not carry forward to next installments successfully.Try after sometime.'; } } }else{ $return['error']='Installment can not be deleted now as payment already active.'; } }else{ $return['error']='No installments found in the system.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onDeleteInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $installment_id=post_data('installment_id'); $get_installment=$this->fm->get_installments(array('installment_id'=>$installment_id)); if(!empty($get_installment)){ $session_id=$get_installment->installment_sess_id; $course_id=$get_installment->installment_course_id; $student_id=$get_installment->installment_stu_id; $inst_id=$get_installment->installment_inst_id; $session_year=$get_installment->installment_sess_year; $admission_id=$get_installment->installment_admission_id; $get_payment_data=$this->fm->get_payment_details(array('details_sess_year'=>$session_year,'details_course_id'=>$course_id,'details_inst_id'=>$inst_id,'details_stu_id'=>$student_id,'details_type_id'=>$admission_id)); if(empty($get_payment_data)){ $deleted=$this->fm->delete_installments(array('installment_sess_id'=>$session_id,'installment_course_id'=>$course_id,'installment_stu_id'=>$student_id,'installment_inst_id'=>$inst_id,'installment_sess_year'=>$session_year)); if($deleted){ $this->fm->_delete_fees_details(array('payment_inst_id'=>$inst_id,'payment_admission_id'=>$admission_id,'payment_sess_id'=>$session_id,'payment_course_id'=>$course_id,'payment_sess_year'=>$session_year)); $return['success']='Installment deleted successfully.'; }else{ $return['error']='Installment can not be deleted now.'; } }else{ $return['info']='Installment can not be deleted.'; } }else{ $return['error']='Installment data not found in the system.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onCreateinstallments_backup(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=$this->data['userdata']->user_id; $admission_payment=$this->input->post('admission_payment'); $admission_fees_found=array(); $session_fees_types=array(); if(!empty($admission_payment)){ $stu_id=post_data('stu_id'); $inst_id=post_data('inst_id'); $admission_id=post_data('admission_id'); $session_id=post_data('session_id'); $course_id=post_data('course_id'); $student_data=$this->um->get_user(array('user_id'=>$stu_id),'student'); $course_data=$this->cm->get_course(array('course_id'=>$course_id,'course_inst_id'=>$inst_id)); $session_data=$this->sessm->get_session(array('session_id'=>$session_id,'session_inst_id'=>$inst_id)); $subject_data='';//$this->cm->get_subject(array('subject_inst_id'=>$inst_id,'subject_course_id'=>$booking_subject),TRUE); $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); $seat_book_data=$this->adm->get_seat_booking_payment_data(array('booking_inst_id'=>$inst_id,'booking_stu_id'=>$stu_id,'booking_course_id'=>$course_id)); if(!empty($seat_book_data)){ $seat_book_amount=$seat_book_data->booking_payment; }else{ $seat_book_amount=0; } //print_obj($seat_book_amount);die; $session_course_data=$this->sessm->get_session_courses(array('session_course_id'=>$course_id,'session_inst_id'=>$inst_id,'session_id'=>$session_id)); $course_amount=$session_course_data->session_course_fees; $adjusted_amount=($course_amount>$seat_book_amount)?($course_amount-$seat_book_amount):$course_amount; //print_obj($adjusted_amount);die; $installmets_total=$this->fm->_get_installments_total(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id)); //print_obj($installmets_total[0]->installment_total);die; if(!empty($installmets_total[0]->installment_total)){ $installmets_total_amount=$installmets_total[0]->installment_total; }else{ $installmets_total_amount=0; } //print_obj($installmets_total_amount);die; if($adjusted_amount>$installmets_total_amount){ foreach ($admission_payment as $key => $value) { $session_year=$key; $fees=$value['fees']; $total_fees=clean_data($value['total_fees']); $installments=$value['installments']; if(!empty($fees)){ foreach ($fees as $_k => $_v) { $admission_fees[]=array( 'payment_stu_id'=>$stu_id, 'payment_inst_id'=>$inst_id, 'payment_sess_id'=>$session_id, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id, 'payment_fees_type_id'=>$_k, 'payment_fees_value'=>clean_data($_v), 'payment_sess_year'=>$session_year, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); } if(!empty($admission_fees)){ $admission_fees_found=$this->fm->_get_fees_details(array('payment_stu_id'=>$stu_id, 'payment_inst_id'=>$inst_id, 'payment_sess_id'=>$session_id, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id,'payment_sess_year'=>$session_year)); if(empty($admission_fees_found)){ $fees_data_added=$this->fm->_store_fees_details($admission_fees,TRUE); } } if(!empty($installments)){ $i=0; foreach ($installments as $k => $v) { $dates=date('Y-m-d',strtotime($v['dates'])); $amount=clean_data($v['amount']); $amount_fine=clean_data($v['amount_fine']); $installment_scholarship_discount=post_data('admission_payment_scholarships_fees'); $installment_special_discount=post_data('admission_payment_special_fees'); $installment_scholarship_discount_reason=post_data('admission_payment_scholarships_fees_reason'); $installment_special_discount_reason=post_data('admission_payment_special_fees_reason'); $installment_data[]=array( 'installment_no'=>($i+1), 'installment_unique_code'=>generate_string(4), 'installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_sess_year'=>$session_year, 'installment_course_id'=>$course_id, 'installment_value'=>$amount, 'installment_value_penalty'=>$amount_fine, 'installment_scholarship_discount'=>($i==0)?$installment_scholarship_discount:'0.00', 'installment_special_discount'=>($i==0)?$installment_special_discount:'0.00', 'installment_scholarship_discount_reason'=>($i==0)?$installment_scholarship_discount_reason:null, 'installment_special_discount_reason'=>($i==0)?$installment_special_discount_reason:null, 'installment_date'=>$dates, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); $i++; } if(!empty($installment_data)){ $installments_found=$this->fm->get_installments(array('installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year)); if(!empty($installments_found)){ $this->fm->delete_installments(array('installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year)); } $installment_id=$this->fm->store_installments($installment_data,TRUE); } } } } if(isset($fees_data_added) && $fees_data_added){ if(!empty($student_data->stu_mid_name)){ $student_name=$student_data->stu_first_name.' '.$student_data->stu_mid_name.' '.$student_data->stu_last_name; }else{ $student_name=$student_data->stu_first_name.' '.$student_data->stu_last_name; } $installment_data=$this->fm->__get_installments(array('installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_course_id'=>$course_id,'installment_sess_year'=>$session_year),FALSE); //print_obj($installment_data);die; if(!empty($installment_data)){ foreach ($installment_data as $k => $v) { //$fees_type=$this->fm->_get_fees_details(array('fees_type_id'=>$v->)); $_installment_data[]=array( ); } } $session_year_data=$this->sessm->get_session_year(array('year_session_id'=>$session_data->session_id,'year_value'=>$session_year)); //Hostel Data if($admission_data->admission_avail_hostel=='yes'){ $hostel_fees_data=$this->hm->get_hostel_fees(array('fees_hostel_id'=>$admission_data->admission_hostel_id,'fees_inst_id'=>$inst_id,'fees_session_id'=>$session_id,'fees_course_id'=>$course_id,'fees_session_year_id'=>$session_year_data->year_id),TRUE,FALSE); $hostel_fees=(!empty($hostel_fees_data))?$hostel_fees_data->fees_value:'0'; }else{ $hostel_fees=''; } $fees_types=$this->fm->__get_fees_type_data(array('fees_type_inst_id'=>$admission_data->stu_inst_id,'fees_year_id'=>$session_year_data->year_id,'fees_session_id'=>$session_year_data->year_session_id,'fees_course_id'=>$admission_data->admission_course_id,'fees_type_group'=>'Admission'),FALSE,FALSE); //print_obj($fees_types);die; if(!empty($fees_types)){ foreach ($fees_types as $key => $value) { $session_fees_types[$session_year_data->year_id][]=array( 'fees_type_id'=>$value->fees_type_id, 'fees_type'=>$value->fees_type, 'fees_value'=>$value->fees_value ); } } $installments=$this->fm->get_installments(array('installment_stu_id'=>$admission_data->stu_user_id, 'installment_inst_id'=>$admission_data->admission_inst_id, 'installment_admission_id'=>$admission_data->admission_id, 'installment_sess_id'=>$admission_data->admission_sess_id, 'installment_course_id'=>$admission_data->admission_course_id,'installment_sess_year'=>$session_year_data->year_value),FALSE); if(!empty($session_fees_types[$session_year_data->year_id])){ foreach ($session_fees_types[$session_year_data->year_id] as $_k => $_v) { $fess_value=$this->fm->_get_fees_details(array('payment_stu_id'=>$admission_data->admission_stu_id,'payment_inst_id'=>$admission_data->admission_inst_id,'payment_admission_id'=>$admission_data->admission_id,'payment_sess_id'=>$admission_data->admission_sess_id,'payment_course_id'=>$admission_data->admission_course_id,'payment_fees_type_id'=>$_v['fees_type_id'],'payment_sess_year'=>$session_year_data->year_value)); $_fees_value[$_v['fees_type_id']]=array( 'fees_type_id'=>$_v['fees_type_id'], 'fees_type'=>$_v['fees_type'], 'fees_value'=>(!empty($fess_value))?$fess_value->payment_fees_value:$_v['fees_value'] ); } } if(empty($_fees_value)){ if(!empty($session_fees_types)){ $ses_fee_type=$session_fees_types[$session_year_data->year_id]; }else{ $ses_fee_type=$session_fees_types; } }else{ $ses_fee_type=$_fees_value; } if(!empty($installments)){ foreach ($installments as $key => $value) { $full_paid_val[$session_year_data->year_value][]=$value->installment_paid_full; } //print_obj($full_paid_val[$v->year_value]); if(!empty($full_paid_val[$session_year_data->year_value])){ if (in_array('no', $full_paid_val[$session_year_data->year_value], true)) { $full_paid='no'; }else{ $full_paid='yes'; } }else{ $full_paid='no'; } }else{ $full_paid='no'; } $session_fees_data[]=array( 'session_year_id'=>$session_year_data->year_id, 'session_year'=>$session_year_data->year_value, 'session_fees_types'=>$ses_fee_type, 'session_avail_hostel'=>$admission_data->admission_avail_hostel, 'session_hostel_fees'=>$hostel_fees, 'session_installments'=>$installments, 'session_paid'=>$full_paid ); $mail_data['inst_id']=$user_id; $mail_data['mail_from']='webmaster'; $mail_data['to_email']=$student_data->stu_email; $mail_data['mail_from_name']=$this->data['profile_name']; $mail_data['mail_subject']=ucwords($this->data['profile_name']).' Admission Details'; $mail_data['mail_type']='html'; $mail_data['mail_custom_type']='html'; $mail_data['mail_data']=array( 'stu_name'=>ucwords($student_name), 'stu_email'=>$student_data->stu_email, 'stu_ph'=>$student_data->stu_ph_no, 'booking_code'=>$admission_data->admission_code, 'booking_session'=>$session_data->session_start_year.'-'.$session_data->session_end_year, 'booking_course'=>$course_data->course_name, 'booking_subject'=>(!empty($subject_data))?$subject_data->subject_name:'N/A', 'booking_amount'=>'0', 'installment_data'=>$session_fees_data, 'portal_url'=>$this->data['base_url'], 'portal_logo'=>$this->data['link_logo'], 'portal_inst_name'=>$this->data['profile_name'], 'college_email'=>$this->data['userdata']->user_email, 'college_phone'=>$this->data['userdata']->user_contact_no, 'default_logo_small'=>$this->data['default_logo_small'], 'created_at'=>date('d-m-Y') ); $mail_data['mail_view']='_pages/mails/vw_admission_installments_mail'; $this->onSendMail($mail_data); $mail_data_2=$mail_data; $mail_data_2['to_email']=$this->data['userdata']->user_email; $mail_data_2['mail_subject']='Admission (Code:'.$admission_data->admission_code.') Details [Copy mail]'; $this->onSendMail($mail_data_2); $return['success']='Data has been updated successfully'; }else{ $return['error']='Error occurred'; } }else{ $return['error']='No further installments can be set now.Total course fees ₹'.number_format($course_amount).' has been covered.'; } }else{ $return['error']='Error occurred.No data found to update.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onGetInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $db_group=$userdata->user_code; $stu_id=post_data('stu_id'); $admission_id=post_data('admission_id'); $inst_id=post_data('inst_id'); $course_id=post_data('course_id'); $session_id=post_data('session_id'); $installment_nos=[]; $seat_booking_data=[]; //echo $stu_id;die; $sessions=array(); $installment_data=array(); $bank_accounts=array(); $admission_payment_data=array(); $this->data['bank_accounts'] = array(); $this->data['cash_balance']=array(); $this->data['user_has_online_pay_mode']=$this->user_has_online_pay_mode; $this->data['user_has_split_pay_mode']=$this->user_has_split_pay_mode; $this->data['inst_sem_payment_restriction']=$this->inst_sem_payment_restriction; $current_date=date('Y-m-d'); $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if($admission_data->admission_seat_booking_converted=='yes'){ $seat_booking_data=$this->adm->get_seat_bookings_data(array('booking_id'=>$admission_data->admission_seat_booking_id),TRUE,$db_group); $admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$seat_booking_data->booking_stu_id,'payment_inst_id'=>$seat_booking_data->booking_inst_id,'payment_sess_id'=>$seat_booking_data->booking_sess_id,'payment_through_id'=>$seat_booking_data->booking_id,'payment_course_id'=>$seat_booking_data->booking_course_id,'payment_through'=>'seatbooking')); }else{ $admissionfees_data=$this->fm->_get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_sess_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_through'=>'admission')); } if(!empty($admissionfees_data)){ $admission_payment_data=$this->fm->get_payment_details(array('details_type'=>'new_admission', 'details_payment_type'=>'admission_fees','details_stu_id'=>$admissionfees_data->payment_stu_id, 'details_type_id'=>$admissionfees_data->payment_admission_id)); } //print_obj($admission_payment_data);die; //Admission Fees balance Data $admissionfees_balance_data=$this->fm->get_installments_balance(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_balance_type'=>'_admission_fees_balance'),FALSE); if(!empty($admissionfees_balance_data)){ foreach($admissionfees_balance_data as $afsbd){ //array('details_type'=>'new_admission','details_payment_type'=>'admission_fees','details_stu_id'=>$afsbd->inst_stu_id,'details_sess_id'=>$afsbd->inst_stu_id,'details_course_id'=>$afsbd->inst_course_id,'details_id'=>$afsbd->inst_payment_id) $balance_payment_data=$this->fm->get_payment_details(array('details_id'=>$afsbd->inst_payment_id),$db_group); $afsbd_data[]=array( 'total_payable'=>number_format($admissionfees_data->payment_admission_fees_value,2), 'paid_amount'=>number_format($afsbd->inst_payment_total,2), 'balance_amount'=>number_format($afsbd->inst_payment_balance,2), 'payment_date'=>date('d-m-Y',strtotime($afsbd->created_at)), 'payment_note'=>$balance_payment_data->details_payment_note ); } }else{ $afsbd_data=[]; } $admissionfees_last_balance_data=$this->fm->_get_installments_balance_last(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_balance_type'=>'_admission_fees_balance'),$db_group); //Admission Fees Split Balance Data $admission_fees_split_balance_data=$this->fm->get_installments_balance(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_installment_id'=>$admission_id,'inst_balance_type'=>'admission_fees_split_balance'),FALSE); $admission_fees_split_last_balance_data=$this->fm->_get_installments_balance_last(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_installment_id'=>$admission_id,'inst_balance_type'=>'admission_fees_split_balance'),$db_group); $session_years=[];//$this->sessm->get_session_year(array('year_session_inst_id'=>$inst_id,'year_session_id'=>$session_id),FALSE); //print_obj($session_years);die; //print_obj($admission_data);die; $session_data=$this->sessm->get_session(array('session_id'=>$session_id)); if(!empty($session_data)){ $year_value=date('Y',strtotime($admission_data->created_at)); $fees_data=$this->fm->get_fees_type_data(array('fees_inst_id'=>$inst_id,'fees_session_id'=>$session_id)); //print_obj($fees_data);die; //if(!empty($fees_data)){ $installments=$this->fm->get_installments(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id),FALSE,'installment_no','ASC',NULL,FALSE); if(!empty($installments)){ foreach ($installments as $k => $v) { $fees_details_found=$this->fm->get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_session_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_installment_id'=>$v->installment_id)); $installment_date=($v->installment_date!='0000-00-00')?date('Y-m-d',strtotime($v->installment_date)):''; if ($installment_date!='' && $current_date > $installment_date) { $installment_value = $v->installment_value; $penalty_value = $v->installment_value_penalty; // Calculate the difference in days and months $date_diff = date_diff(date_create($installment_date), date_create($current_date)); $days_late = $date_diff->days; // Total days late $months_late = $date_diff->m + ($date_diff->y * 12); // Total months late if ($v->installment_value_penalty_applicable == 'one_time') { // One-time penalty $total_payable_amount = $installment_value + $penalty_value; $late_fee_time=''; } else if ($v->installment_value_penalty_applicable == 'per_day') { // Per-day penalty $total_payable_amount = $installment_value + ($penalty_value * $days_late); $late_fee_time=' for '.$days_late.' days'; } else if ($v->installment_value_penalty_applicable == 'per_month') { // Per-month penalty $total_payable_amount = $installment_value + ($penalty_value * $months_late); $late_fee_time=' for '.$months_late.' days'; } $late_fee_applied = TRUE; // Flag for late fee applied } else { $total_payable_amount = $v->installment_value; // No late fee if current_date <= installment_date $late_fee_applied = FALSE; $late_fee_time=''; } //print_obj($fees_details_found);die; $_balance_data=array(); if(empty($fees_details_found)){ $payment_recieved='no'; $payment_balance='no'; }else if(!empty($fees_details_found)){ //print_obj($fees_details_found);die; if($fees_details_found->payment_fees_balance_amount>0){ $payment_recieved='no'; $payment_balance='yes'; $balance_data=$this->fm->get_installments_balance(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_installment_id'=>$v->installment_id,'balance_split_id'=>null),FALSE); //print_obj($balance_data); if(!empty($balance_data)){ foreach ($balance_data as $bkey => $bv) { $split_balance_data=$this->fm->get_installments_balance(array('balance_split_id'=>$bv->balance_id),FALSE); $paymentdetails=$this->fm->get_payment_details(array('details_payment_id'=>$bv->inst_payment_id,'details_stu_id'=>$stu_id,'details_inst_id'=>$inst_id,'details_type'=>'new_admission')); $split_balance_data_count=$this->fm->get_installments_balance_count(array('balance_split_id'=>$bv->balance_id,'inst_balance_paid'=>'no')); $_balance_data[]=array( 'balance_id'=>$bv->balance_id, 'inst_payment_total'=>$bv->inst_payment_total, 'inst_payment_total_formatted'=>number_format($bv->inst_payment_total,2), 'inst_payment_balance'=>$bv->inst_payment_balance, 'inst_payment_balance_formatted'=>number_format($bv->inst_payment_balance,2), 'created_at'=>date('d-m-Y',strtotime($bv->created_at)), 'inst_balance_paid'=>$bv->inst_balance_paid, 'inst_balance_partially_paid'=>$bv->inst_balance_partialy_paid, 'payment_details_id'=>(!empty($paymentdetails))?encode_data($paymentdetails->details_id):'', 'payment_note'=>(!empty($paymentdetails))?$paymentdetails->details_payment_note:'', 'payment_details_payment_type'=>(!empty($paymentdetails))?$paymentdetails->details_payment_type:'', 'split_balance_data'=>$split_balance_data, 'split_balance_data_count'=>$split_balance_data_count ); } } }else{ $payment_recieved='no'; $payment_balance='no'; } } if(isset($balance_data) && !empty($balance_data[0]->inst_payment_balance) && $balance_data[0]->inst_payment_balance>0){ $order_id=$admission_data->admission_code.'_'.$year_value.'_'.$v->installment_no.'_'.generate_string(4).'_'.$v->installment_unique_code.'_stuinst_bal'; }else{ $order_id=$admission_data->admission_code.'_'.$year_value.'_'.$v->installment_no.'_'.generate_string(4).'_'.$v->installment_unique_code.'_stuinst'; } $_payment_data=$this->fm->_get_payment_details(array('details_type'=>'new_admission','details_installment_id'=>$v->installment_id),FALSE); $installment_paid_full_of_year[]=$v->installment_paid_full; if($v->installment_date!='0000-00-00'){ $due_date=date('d-m-Y',strtotime($v->installment_date)); }else{ $due_date=''; } $installment_nos[]=$v->installment_no; $session_year_no=$year_value.'_'.$v->installment_no; $installment_data[$year_value][]=array( 'installment_id'=>$v->installment_id, 'installment_no'=>$v->installment_no, 'installment_session_year_no'=>$session_year_no, 'installment_paid_full'=>$v->installment_paid_full, 'order_id'=>$order_id, 'amount_formated'=>number_format($total_payable_amount,2), 'amount'=>$total_payable_amount, 'late_fee_applied'=>$late_fee_applied, 'late_fee_time'=>$late_fee_time, 'scholarship_discount_amount'=>$v->installment_scholarship_discount, 'special_discount_amount'=>$v->installment_special_discount, 'scholarship_discount_reason'=>$v->installment_scholarship_discount_reason, 'special_discount_reason'=>$v->installment_special_discount_reason, 'date'=>$due_date, 'payment_recieved'=>$payment_recieved, 'payment_balance'=>$payment_balance, 'payment_balance_data'=>$_balance_data, 'payment_data'=>$_payment_data ); $session_years[]=$session_year_no; } } //print_obj($installment_data);die; if(!empty($installment_paid_full_of_year) && !in_array('no', $installment_paid_full_of_year)){ $session_fully_paid='yes'; }else{ $session_fully_paid='no'; } $max = max($installment_nos); // Find the maximum value in the array //print_obj($installment_data[$year_value]);die; $sessions[]=array( 'session_year'=>'',//$year_value, 'session_fully_paid'=>$session_fully_paid, 'session_installments'=>(isset($installment_data[$year_value]))?$installment_data[$year_value]:null, ); // } } $missingNumbers = []; // Loop through numbers from 1 to the maximum value in the array // Generate the full range of numbers from 1 to the maximum value $allNumbers = range(1, $max); // Remove the numbers in $arr from the full range $missingNumbers = array_diff($allNumbers, $installment_nos); $this->data['session_missing_installments']=$missingNumbers; //die; //print_obj($sessions);die; $this->data['installments']=$sessions; $this->data['admissionfees_data']=$admissionfees_data; $this->data['admissionfees_balance_data']=$afsbd_data; $this->data['admissionfees_last_balance_data']=$admissionfees_last_balance_data; $this->data['seat_booking_data']=$seat_booking_data; $this->data['session_data']=$session_data; $this->data['docs_verified']=$admission_data->admission_docs_completed; $this->data['session_years']=$session_years; $cash_balance=$this->sm->get_cash_balance(array('balance_status'=>'active')); if($this->ams_access=='yes'){ $_bank_accounts = $this->sm->get_banks(array('bank_status' => 'active'),FALSE); if(!empty($_bank_accounts)){ foreach ($_bank_accounts as $key => $value) { $bank_accounts[]=array( 'bank_id'=>$value->bank_id, 'bank_name'=>$value->bank_name, 'bank_account_no'=>$value->bank_account_no ); } } } $this->data['bank_accounts'] = $bank_accounts; $this->data['cash_balance']=$cash_balance; $this->data['inst_in_bill_print']=$this->inst_in_bill_print; $this->data['admission_payment_data']=$admission_payment_data; $this->data['admission_fees_split_balance_data']=$admission_fees_split_balance_data; $this->data['admission_fees_split_last_balance_data']=$admission_fees_split_last_balance_data; // print_obj($admission_fees_split_last_balance_data); if($admission_data->admission_docs_completed=='no'){ $this->data['docs_verification_msg']='After checking all required details for the admission process has been submitted by the student payment can be scheduled'; $student_profile_data=$this->um->get_user(array('stu_user_id'=>$admission_data->admission_stu_id),'student'); $this->data['verfification_link']=$this->data['base_url'].'/students/register/'.encode_data($student_profile_data->stu_id); } $this->data['inst_lateral_sem_start']=($this->inst_lateral_course_applicable=='yes')?($this->inst_lateral_sem_start+1):1; $return['installment_form']=$this->theme->view('_pages/admission/vw_admission_installment_form',$this->data,true); json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onGetInstallments_old(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $stu_id=post_data('stu_id'); $admission_id=post_data('admission_id'); $inst_id=post_data('inst_id'); $course_id=post_data('course_id'); $session_id=post_data('session_id'); //echo $stu_id;die; $sessions=array(); $installment_data=array(); $current_date=date('Y-m-d'); $this->data['banks']=$this->sm->get_banks(array('bank_inst_id'=>$inst_id),FALSE); $session_years=$this->sessm->get_session_year(array('year_session_inst_id'=>$inst_id,'year_session_id'=>$session_id),FALSE); //print_obj($session_years);die; $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if(!empty($session_years)){ foreach ($session_years as $key => $value) { $fees_data=$this->fm->get_fees_type_data(array('fees_inst_id'=>$value->year_session_inst_id,'fees_session_id'=>$value->year_session_id,'fees_year_id'=>$value->year_id)); if(!empty($fees_data)){ $installments[$value->year_value]=$this->fm->get_installments(array('installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id,'installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_course_id'=>$course_id,'installment_sess_year'=>$value->year_value),FALSE,'installment_sess_year','ASC',FALSE); //print_obj($installments[$value->year_value]); if(!empty($installments[$value->year_value])){ foreach ($installments[$value->year_value] as $k => $v) { $fees_details_found=$this->fm->get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_session_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_installment_id'=>$v->installment_id)); $institute_payments_details=$this->fm->get_payment_details(array('')); $installment_date=date('Y-m-d',strtotime($v->installment_date)); if($current_date>$installment_date){ $total_payable_amount=$v->installment_value+$v->installment_value_penalty; $late_fee_applied=TRUE; }else{ $total_payable_amount=$v->installment_value; $late_fee_applied=FALSE; } //print_obj($fees_details_found);die; $_balance_data=array(); if(empty($fees_details_found)){ $payment_recieved='no'; $payment_balance='no'; }else if(!empty($fees_details_found)){ if($fees_details_found->payment_fees_balance_amount>0){ $payment_recieved='no'; $payment_balance='yes'; $balance_data=$this->fm->get_installments_balance(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_year'=>$value->year_value,'inst_installment_id'=>$v->installment_id),FALSE); //print_obj($balance_data);die; if(!empty($balance_data)){ foreach ($balance_data as $bkey => $bv) { $paymentdetails=$this->fm->get_payment_details(array('details_payment_id'=>$bv->inst_payment_id,'details_stu_id'=>$stu_id,'details_inst_id'=>$inst_id,'details_type'=>'new_admission')); $_balance_data[]=array( 'inst_payment_total'=>$bv->inst_payment_total, 'inst_payment_total_formatted'=>number_format($bv->inst_payment_total,2), 'inst_payment_balance'=>$bv->inst_payment_balance, 'inst_payment_balance_formatted'=>number_format($bv->inst_payment_balance,2), 'created_at'=>date('d-m-Y',strtotime($bv->created_at)), 'inst_balance_paid'=>$bv->inst_balance_paid, 'payment_details_id'=>(!empty($paymentdetails))?encode_data($paymentdetails->details_id):'', 'payment_details_payment_type'=>(!empty($paymentdetails))?$paymentdetails->details_payment_type:'' ); } } }else{ $payment_recieved='yes'; $payment_balance='no'; } }else{ } if(isset($balance_data) && ($balance_data[0]->inst_year==$value->year_value) && !empty($balance_data[0]->inst_payment_balance) && $balance_data[0]->inst_payment_balance>0){ $order_id=$admission_data->admission_code.'_'.$value->year_value.'_'.$v->installment_no.'_'.generate_string(4).'_'.$v->installment_unique_code.'_stuinst_bal'; }else{ $order_id=$admission_data->admission_code.'_'.$value->year_value.'_'.$v->installment_no.'_'.generate_string(4).'_'.$v->installment_unique_code.'_stuinst'; } $_payment_data=$this->fm->_get_payment_details(array('details_type'=>'new_admission','details_installment_id'=>$v->installment_id),FALSE); $installment_paid_full_of_year[]=$v->installment_paid_full; $installment_data[$value->year_value][]=array( 'installment_id'=>$v->installment_id, 'installment_paid_full'=>$v->installment_paid_full, 'order_id'=>$order_id, 'amount_formated'=>number_format($total_payable_amount,2), 'amount'=>$total_payable_amount, 'late_fee_applied'=>$late_fee_applied, 'scholarship_discount_amount'=>$v->installment_scholarship_discount, 'special_discount_amount'=>$v->installment_special_discount, 'scholarship_discount_reason'=>$v->installment_scholarship_discount_reason, 'special_discount_reason'=>$v->installment_special_discount_reason, 'date'=>date('d-m-Y',strtotime($v->installment_date)), 'payment_recieved'=>$payment_recieved, 'payment_balance'=>$payment_balance, 'payment_balance_data'=>$_balance_data, 'payment_data'=>$_payment_data ); } } if(!empty($installment_paid_full_of_year) && !in_array('no', $installment_paid_full_of_year)){ $session_fully_paid='yes'; }else{ $session_fully_paid='no'; } $sessions[]=array( 'session_year'=>$value->year_value, 'session_fully_paid'=>$session_fully_paid, 'session_installments'=>(isset($installment_data[$value->year_value]))?$installment_data[$value->year_value]:null, ); } } } //die; //print_obj($sessions);die; $this->data['installments']=$sessions; $this->data['docs_verified']=$admission_data->admission_docs_completed; if($admission_data->admission_docs_completed=='no'){ $this->data['docs_verification_msg']='After checking all required details for the admission process has been submitted by the student payment can be scheduled'; $student_profile_data=$this->um->get_user(array('stu_user_id'=>$admission_data->admission_stu_id),'student'); $this->data['verfification_link']=$this->data['base_url'].'/students/register/'.encode_data($student_profile_data->stu_id); } $return['installment_form']=$this->theme->view('_pages/admission/vw_admission_installment_form',$this->data,true); json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onGetInstallment(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $install_ment_id=post_data('installment_id'); $installment_id=decode_data($install_ment_id); $installment_data=$this->fm->get_installment(array('installment_id'=>$installment_id)); $_installment_data=array(); //print_obj($installment_data);die; if(!empty($installment_data)){ $_get_fees_details_last=$this->fm->_get_fees_details_last(array('payment_stu_id'=>$this->data['userdata']->user_id,'payment_inst_id'=>$this->data['userdata']->stu_inst_id,'payment_installment_id'=>$installment_id)); if(!empty($_get_fees_details_last)){ $balance=$this->fm->get_installments_balance_last(array('inst_installment_id'=>$installment_data->installment_id,'inst_stu_id'=>$installment_data->installment_stu_id,'inst_session_id'=>$installment_data->installment_sess_id,'inst_payment_id'=>$_get_fees_details_last->payment_fees_details_id)); }else{ $balance=$this->fm->get_installments_balance_last(array('inst_installment_id'=>$installment_data->installment_id,'inst_stu_id'=>$installment_data->installment_stu_id,'inst_session_id'=>$installment_data->installment_sess_id)); } //print_obj($balance);die; $date_now = date('Y-m-d');//new DateTime(); $installment_date = date('Y-m-d',strtotime($installment_data->installment_date));//new DateTime($installment_data->installment_date); // print_obj($date_now); //print_obj($installment_date); if(!empty($balance->last_balance) && $balance->last_balance>0){ if($date_now>$installment_date){ $penalty_applied='TRUE'; $last_paid_amount=($installment_data->installment_value+$installment_data->installment_value_penalty)-$balance->last_balance; $total_due=($installment_data->installment_value+$installment_data->installment_value_penalty)-$last_paid_amount; }else{ $penalty_applied='FALSE'; $last_paid_amount=$installment_data->installment_value-$balance->last_balance; // if($last_paid_amount>$balance->last_balance){ // $total_due=$last_paid_amount-$balance->last_balance; // }else{ // $total_due=$balance->last_balance-$last_paid_amount; // } $total_due=$balance->last_balance; } }else{ if($date_now>$installment_date){ $penalty_applied='TRUE'; $total_due=$installment_data->installment_value+$installment_data->installment_value_penalty; $last_paid_amount='0'; }else if($date_now==$installment_date){ $penalty_applied='FALSE'; $total_due=$installment_data->installment_value; $last_paid_amount='0'; }else{ $penalty_applied='FALSE'; $total_due=$installment_data->installment_value; $last_paid_amount='0'; } } $_installment_data=array( 'installment_session'=>$installment_data->session_start_year.'-'.$installment_data->session_end_year, 'installment_course'=>$installment_data->course_name, 'installment_subject'=>(!empty($installment_data->subject_name))?$installment_data->subject_name:'N/A', 'installment_amount'=>$installment_data->installment_value, 'installment_last_paid_amount'=>$last_paid_amount, 'installment_total_amount'=>$total_due, 'installment_penalty'=>$installment_data->installment_value_penalty, 'installment_date'=>date('d-m-Y',strtotime($installment_data->installment_date)), 'installment_scholarship_discount'=>$installment_data->installment_scholarship_discount, 'installment_special_discount'=>$installment_data->installment_special_discount, 'installment_penalty_applied'=>$penalty_applied ); //print_obj($_installment_data);die; } return json_headers($_installment_data); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onSearchInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onPayInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $user_id=$userdata->user_id; if($userdata->user_type=='institute_branch'){ $branch_data=$this->um->get_user(array('user_id'=>$user_id),'institute_branch'); $parent_inst_id=$branch_data->user_id; }else{ $parent_inst_id=$user_id; } $stu_id=post_data('stu_id'); $inst_id=post_data('inst_id'); $admission_id=post_data('admission_id'); $course_id=post_data('course_id'); $session_id=post_data('session_id'); $installment_id=post_data('installment_id'); $session_year=post_data('pay_session_year'); $total_amount=post_data('pay_amount'); $paid_amount=post_data('pay_amount_paid'); $scholarship_amount=post_data('pay_scholarship_amount'); $special_amount=post_data('pay_special_amount'); $balance=post_data('pay_balance_amount'); $final_amount=post_data('pay_final_amount'); $pay_special_remarks=post_data('pay_special_remarks'); $pay_special_amount_reason=post_data('pay_special_amount_reason'); $pay_mode=post_data('pay_mode'); $bank_name=post_data('pay_bank_name'); $cheque_no=post_data('pay_bank_cheque_no'); $deposite_bank=post_data('pay_deposite_bank'); $pay_phonepe_utr=post_data('pay_phonepe_utr'); $pay_phonepe_utr_txn=post_data('pay_phonepe_utr_txn'); $order_id=post_data('payment_order_id'); $pay_note=post_data('pay_note'); $pay_auto_credit_account=post_data('pay_auto_credit_account'); $pay_date=post_data('pay_date'); $current_date=date('Y-m-d'); if(!empty($order_id) && !empty($stu_id)){ $_order_id=explode('_', $order_id); $admission_code=$_order_id[0]; $installemnt_unique_code=$_order_id[4]; $utype=(isset($_order_id[5]))?$_order_id[5]:''; $payment_type=(isset($_order_id[6]))?$_order_id[6]:'normal_installment'; $admission_data=$this->adm->get_admission_data(array('admission_code'=>$admission_code)); //print_obj($admission_data);die; if(!empty($admission_data)){ $installment_data=$this->fm->get_installment(array('installment_id'=>$installment_id,'installment_admission_id'=>$admission_id,'installment_stu_id'=>$stu_id,'installment_inst_id'=>$inst_id)); //print_obj($installment_data);die; if($installment_data){ $installment_value=$installment_data->installment_value; $installment_value_penalty=$installment_data->installment_value_penalty; $installment_value_penalty_applicable=$installment_data->installment_value_penalty_applicable; $installment_unique_code=$installment_data->installment_unique_code; $due_date=$installment_data->installment_date; if($payment_type==='normal_installment'){ if(!empty($scholarship_amount) && !empty($special_amount) && (is_double($special_amount) || is_numeric($special_amount)) && (is_double($scholarship_amount) || is_numeric($scholarship_amount))){ $discount_amount=$scholarship_amount+$special_amount; }else{ $discount_amount='0'; } }else if($payment_type==='bal'){ $discount_amount='0'; } //echo $discount_amount;die; $penalty_value=0; $penalty_value_type=0; if ($current_date > $due_date) { if(!empty($installment_value) && !empty($installment_value_penalty) && ($installment_value>0 && $installment_value_penalty>0)){ //echo 'hi';die; // Calculate the difference in days and months $date_diff = date_diff(date_create($due_date), date_create($current_date)); $days_late = $date_diff->days; // Total days late $months_late = $date_diff->m + ($date_diff->y * 12); // Total months late if ($installment_value_penalty_applicable == 'one_time') { // One-time penalty $amount_payable = $installment_value + $installment_value_penalty; $penalty_value=$installment_value_penalty; $penalty_value_type=0; } else if ($installment_value_penalty_applicable == 'per_day') { // Per-day penalty $amount_payable = $installment_value + ($installment_value_penalty * $days_late); $penalty_value=$installment_value_penalty * $days_late; $penalty_value_type=$days_late; } else if ($installment_value_penalty_applicable == 'per_month') { // Per-month penalty $amount_payable = $installment_value + ($installment_value_penalty * $months_late); $penalty_value=$installment_value_penalty * $months_late; $penalty_value_type=$months_late; } $penalty_applied='yes'; // Flag for late fee applied }else{ //echo 'hi2';die; $amount_payable = $installment_value; // No late fee if current_date <= installment_date $penalty_applied='no'; } } else { //echo 'hi3';die; $amount_payable = $installment_value; // No late fee if current_date <= installment_date $penalty_applied='no'; } //echo $amount_payable;die; if($discount_amount<=$amount_payable){ $total_amount_pyable=$amount_payable-$discount_amount; if($total_amount_pyable>0 && ($paid_amount<=$total_amount_pyable && $paid_amount>0)){ //Check any balance available for current installment $any_balance=$this->fm->_get_installments_balance_last(array('inst_id'=>$inst_id,'inst_stu_id'=>$stu_id,'inst_course_id'=>$course_id,'inst_session_id'=>$session_id,'inst_installment_id'=>$installment_id,'balance_split_id'=>NULL,'inst_balance_paid'=>'no')); //print_obj($any_balance); if(!empty($any_balance)){ $balance_amount=$any_balance->inst_payment_balance-$paid_amount; }else{ $balance_amount=$total_amount_pyable-$paid_amount; } if($payment_type==='normal_installment'){ if($scholarship_amount>0 && $special_amount>0){ if($pay_special_remarks!='' && $pay_special_amount_reason!=''){ $remarks_added='yes'; $remarks_special_added='yes'; }else{ $remarks_added='no'; $remarks_special_added='no'; } }else if($scholarship_amount>0 && $special_amount==0){ if($pay_special_remarks!='' && $pay_special_amount_reason==''){ $remarks_added='yes'; $remarks_special_added='yes'; }else{ $remarks_added='no'; $remarks_special_added='no'; } }else if($scholarship_amount==0 && $special_amount>0){ if($pay_special_remarks=='' && $pay_special_amount_reason!=''){ $remarks_added='yes'; $remarks_special_added='yes'; }else{ $remarks_added='no'; $remarks_special_added='no'; } }else if($scholarship_amount==0 && $special_amount==0){ $remarks_added='yes'; $remarks_special_added='yes'; } }else if($payment_type==='bal'){ $remarks_added='yes'; $remarks_special_added='yes'; } if($balance_amount!=$paid_amount){ $inst_balance_partialy_paid='yes'; } $payment_data_param=array( 'installment_unique_code'=>$installment_unique_code, 'installment_order_id'=>$order_id, 'installment_data'=>$installment_data, 'scholarship_amount'=>$scholarship_amount, 'special_amount'=>$special_amount, 'penalty_applied'=>$penalty_applied, 'total_payable_amount'=>$total_amount_pyable, 'paid_amount'=>$paid_amount, 'balance_amount'=>$balance_amount, 'phonepe_utr_no'=>$pay_phonepe_utr, 'phonepeutr_txn'=>$pay_phonepe_utr_txn, 'payment_mode'=>$pay_mode, 'payment_platform'=>'', 'pay_date'=>$pay_date, 'payment_note'=>$pay_note, 'pay_auto_credit_account'=>$pay_auto_credit_account, 'msg'=>'success', 'scholarship_reason'=>$pay_special_remarks, 'special_discount_reason'=>$pay_special_amount_reason ); if($penalty_applied=='yes'){ $penalty_data_found=$this->fm->get_late_fees(array('late_fee_inst_id'=>$this->inst_id,'late_fee_stu_id'=>$stu_id,'late_fee_course_id'=>$course_id,'late_fee_session_id'=>$session_id,'late_fee_admission_id'=>$admission_id,'late_fee_installment_id'=>$installment_id)); if(empty($penalty_data_found)){ $penalty_data=array( 'late_fee_inst_id'=>$this->inst_id, 'late_fee_inst_parent_id'=>$this->inst_parent_id, 'late_fee_stu_id'=>$stu_id, 'late_fee_course_id'=>$course_id, 'late_fee_session_id'=>$session_id, 'late_fee_admission_id'=>$admission_id, 'late_fee_installment_id'=>$installment_id, 'late_fee_type_main'=>'admission_late_fee', 'late_fee_type'=>$installment_value_penalty_applicable, 'late_fee_type_value'=>$penalty_value_type, 'late_fee'=>$penalty_value, 'created_at'=>date('Y-m-d H:i:s') ); $this->fm->store_late_fees($penalty_data); } } //print_obj($payment_data_param);die; if($remarks_added=='yes' && $remarks_special_added=='yes'){ if($pay_mode==='cash'){ $response=$this->get_payment($payment_data_param); //print_obj($response);die; if($response=='error'){ $return['error']='There was an internal error occurre.Try after some time.'; }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } }else if($pay_mode==='online_before_software'){ $response=$this->get_payment($payment_data_param); if($response=='error'){ $return['error']='There was an internal error occurr.Try after some time.'; }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } } else if($pay_mode==='cheque'){ if($bank_name!='' && $cheque_no!='' && ($deposite_bank!='' && $deposite_bank>0)){ if($userdata->user_type=='institute'){ $parent_inst_id=$this->data['userdata']->user_id; $storage_dir='institutes/'.$userdata->user_code.'/payments/'.date('Y'); }else if($userdata->user_type=='institute_branch'){ $parent_inst_id=$this->data['userdata']->branch_parent_inst_id; $inst_data=$this->um->get_institute(array('user_pk_id'=>$parent_inst_id)); $storage_dir='institutes/'.$inst_data->user_code.'/payments/'.date('Y'); } //echo 'cheque_scan_frontcopy_file:'.$_FILES['cheque_scan_frontcopy_file']['name'].'<br>'; //echo 'cheque_scan_backcopy_file:'.$_FILES['cheque_scans_backcopy_file']['name'];die; //if((isset($_FILES['cheque_scan_frontcopy_file']) && $_FILES['cheque_scan_frontcopy_file']['name']!=='') && (isset($_FILES['cheque_scans_backcopy_file']) && $_FILES['cheque_scans_backcopy_file']['name']!='')){ if(isset($_FILES['cheque_scan_frontcopy_file']) && $_FILES['cheque_scan_frontcopy_file']['name']!==''){ $cheque_scan_frontcopy_file=array( 'file_size'=>'5', 'file_name'=>'cheque_scan_frontcopy_file', 'file_types'=>'png,jpg,jpeg', 'file_storage_type'=>'cheque_scan_frontcopy_file', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$stu_id, 'file_parent_id'=>$inst_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$userdata->user_id ); $cheque_scan_frontcopy_file_id=$this->onUploadFiles($cheque_scan_frontcopy_file); } if(isset($_FILES['cheque_scans_backcopy_file']) && $_FILES['cheque_scans_backcopy_file']['name']!=''){ $cheque_scan_backcopy_file=array( 'file_size'=>'5', 'file_name'=>'cheque_scans_backcopy_file', 'file_types'=>'png,jpg,jpeg', 'file_storage_type'=>'cheque_scan_backcopy_file', 'file_storage_dir'=>$storage_dir, 'file_storage_type_id'=>$stu_id, 'file_parent_id'=>$inst_id, 'file_compress'=>false, 'file_operation_type'=>'new', 'file_uploaded_by'=>$userdata->user_id ); $cheque_scan_backcopy_file_id=$this->onUploadFiles($cheque_scan_backcopy_file); } if(isset($cheque_scan_frontcopy_file_id) && isset($cheque_scan_backcopy_file_id)){ if(is_numeric($cheque_scan_frontcopy_file_id) && is_numeric($cheque_scan_backcopy_file_id)){ $booking_payment_checq_files_ids=$cheque_scan_frontcopy_file_id.','.$cheque_scan_backcopy_file_id; }else{ $booking_payment_checq_files_ids=''; } }else{ $booking_payment_checq_files_ids=''; } $data_param=array_merge($payment_data_param,array('cheque_no'=>$cheque_no,'chque_bank_name'=>$bank_name,'cheque_deposite_bank'=>$deposite_bank,'booking_payment_checq_files_ids'=>$booking_payment_checq_files_ids)); $response=$this->get_payment($data_param); if($response=='error'){ $return['error']='There was an internal error occurre.Try after some time.'; }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } // }else{ // $return['error']='Cheque related details needs to be given.'; // } }else{ $return['error']='Cheque related details needs to be given.'; } }else if($pay_mode==='phonepeutr'){ $response=$this->get_payment($payment_data_param); if($this->inst_phonepay_txn_required=='yes'){ if(!empty($pay_phonepe_utr) && !empty($pay_phonepe_utr_txn)){ if($response=='error'){ $return['error']='There was an internal error occurre.Try after some time.'; }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } }else{ $return['error']='PhonePe UTR & TXN no required'; } }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } }else if($pay_mode=='online'){ $payment_gateway=post_data('payment_gateway'); $payment_session_data=array('payment_gateway'=>$payment_gateway); session_set_userdata($payment_session_data); } }else if($remarks_added=='no' && $remarks_special_added=='no'){ $return['error']='Scolarship remarks and Special discount remarks are required.'; }else if($remarks_added=='no' && $remarks_special_added=='yes'){ $return['error']='Scolarship remarks is required.'; }else if($remarks_added=='yes' && $remarks_special_added=='no'){ $return['error']='Special discount remarks is required.'; } }else{ $return['error']='Payment can not be proceessed.Check amounts 1.'; } }else{ $return['error']='Payment can not be proceessed.Check amounts 2.'; } }else{ $return['error']=ucwords($this->inst_in_bill_print).' data not found.Payment can not be proceessed now.'; } }else if(empty($admission_data)){ $return['error']='No data found.Payment can not be proceessed now.'; } }else{ $return['error']='Data manipulation not permitted.'; } //print_obj($installment_data);die; json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function get_payment($param){ //print_obj($param);die; $userdata = $this->data['userdata']; $accounting_type='income'; if($userdata->user_type=='institute'){ $parent_inst_id=$userdata->user_id; }else if($userdata->user_type=='institute_branch'){ $parent_inst_id=$userdata->branch_parent_inst_id; } $booking_data=$param['installment_data']; $booking_type='new_admission'; $user_id=$booking_data->installment_inst_id; $stu_id=$booking_data->installment_stu_id; $emp_id=decode_data(session_userdata('admin_id')); //echo $param['payment_method'];die; if($userdata->user_type=='institute'){ $inst_id=$this->inst_id; $inst_type=$this->inst_type; $student_data=$this->um->get_user(array('user_id'=>$stu_id),'student'); $institute_data=$this->um->get_user(array('user_id'=>$inst_id),'institute'); $institute_profile_name=$institute_data->user_profile_name; $institute_email=$institute_data->user_email; $institute_phone_no=$institute_data->user_contact_no; }else if($userdata->user_type=='institute_branch'){ $inst_id=$this->inst_id; $inst_type=$this->inst_type; $student_data=$this->um->get_user(array('user_id'=>$stu_id),'student'); $institute_data=$this->um->get_user(array('user_id'=>$inst_id),'institute_branch'); $institute_profile_name=$institute_data->branch_name; $institute_email=$institute_data->branch_email; $institute_phone_no=$institute_data->branch_contact_no; } $admission_id=$booking_data->installment_admission_id; $session_id=$booking_data->installment_sess_id; $course_id=$booking_data->installment_course_id; $subject_id='0'; $session_year=$booking_data->installment_sess_year; $booking_id=$booking_data->installment_admission_id; $booking_inst_id=$booking_data->installment_inst_id; $booking_inst_parent_id=$parent_inst_id; $admission_data=$this->adm->get_admission_data(array('admission_id'=>$booking_data->installment_admission_id)); //print_obj($admission_data);die; $installment_id=$booking_data->installment_id; $installment_order_id=$param['installment_order_id']; $installment_no=$booking_data->installment_no; $installment_value=$booking_data->installment_value; $installment_value_penalty=$booking_data->installment_value_penalty; $installment_unique_code=$booking_data->installment_unique_code; $due_date=$booking_data->installment_date; $paid_amount=$param['paid_amount']; $total_payable_amount=$param['total_payable_amount']; $split_balance_last_data=$this->fm->_get_installments_balance_last(array('inst_installment_id'=>$installment_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_id'=>$inst_id,'inst_balance_type'=>'admission_split_balance')); //print_obj($split_balance_last_data);die; //echo $param['balance_amount'];die; if($total_payable_amount>0 && $total_payable_amount>$paid_amount){ if(isset($param['balance_amount'])){ $balance=$param['balance_amount']; }else{ $balance=($total_payable_amount-$paid_amount); } }else{ $balance='0';//$param['balance_amount']; } //echo $param['paid_split_amount'];die; //echo $param['paid_split_amount'];die; if(isset($param['paid_split_amount'])){ $paid_split_amount=$param['paid_split_amount']; //echo $paid_split_amount; if(!empty($split_balance_last_data) && $split_balance_last_data->inst_payment_balance>0){ $split_balance=($split_balance_last_data->inst_payment_balance-$paid_split_amount); }else{ if($paid_amount>0 && $paid_amount>$paid_split_amount){ $split_balance=($paid_amount-$paid_split_amount); }else{ $split_balance='0'; } } }else{ $paid_split_amount=0; $split_balance=0; } //echo $split_balance;die; $penalty_applied=$param['penalty_applied']; $payment_mode=$param['payment_mode']; $payment_platform=$param['payment_platform']; $pay_date=$param['pay_date']; $txn_amount=$paid_amount; $txn_split_amount=$paid_split_amount; //echo $payment_mode;die; //echo $pay_date;die; //ADM2022072825_2022_1_K2QD_C17U_stuinst //echo $installment_order_id; $_order_id=explode('_', $installment_order_id); //print_obj($_order_id);die; $_fisrt_sec_order_id=$_order_id[0]; $installemnt_unique_code=$_order_id[4]; $utype=(isset($_order_id[5]))?$_order_id[5]:''; $paytype=(isset($_order_id[6]))?$_order_id[6]:'normal_installment'; if(isset($param['split_no'])){ $paytype='split'; } //echo $paytype;die; if($paytype==='normal_installment'){ //$details_type_text='Admission ['.$admission_data->admission_code.'] Payment Details'; $details_type_text='Admission Payment Details'; }else if($paytype==='bal'){ //$details_type_text='Admission ['.$admission_data->admission_code.'] Balance Payment Details'; $details_type_text='Admission Balance Payment Details'; }else if($paytype==='split'){ // $details_type_text='Admission ['.$admission_data->admission_code.'] Split Payment Details'; $details_type_text='Admission Split Payment Details'; } if($paytype==='normal_installment'){ if(!empty($param['scholarship_amount']) && !empty($param['special_amount']) && (is_numeric($param['scholarship_amount']) || is_double($param['scholarship_amount'])) && (is_numeric($param['special_amount']) || is_double($param['special_amount']))){ $discount_amount=$param['scholarship_amount']+$param['special_amount']; }else{ $discount_amount=0; } }else if($paytype==='bal'){ $discount_amount=0; }else if($paytype==='split'){ $discount_amount=$param['scholarship_amount']+$param['special_amount']; } else { $discount_amount=0; } //print_obj($booking_data);die; $course_data=$this->cm->get_course(array('course_id'=>$course_id)); $session_data=$this->sessm->get_session(array('session_id'=>$session_id)); //print_obj($institute_data);die; if($payment_mode==='cash'){ $txn_id=ge_rand_code_v1('TXN'.$inst_id.$user_id.$booking_id.$admission_id.$installment_no);//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $payment_platform='cash'; $details_status='success'; $details_msg='Cash Recieved'; }else if($payment_mode==='online_before_software'){ $txn_id=ge_rand_code_v1('TXN'.$inst_id.$user_id.$booking_id.$admission_id.$installment_no);//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $payment_platform='online_before_software'; $details_status='success'; $details_msg='Online Payment was Recieved before the software installation'; }else if($payment_mode==='cheque'){ $txn_id=ge_rand_code_v1('TXN'.$inst_id.$user_id.$booking_id.$admission_id.$installment_no);//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $payment_platform='cheque'; $cheque_no=$param['cheque_no']; $cheque_bank_name=$param['chque_bank_name']; $cheque_deposite_bank=$param['cheque_deposite_bank']; $details_status='waiting'; $details_msg='Cheque Recieved'; }else if($payment_mode==='phonepeutr'){ $utrexists=TRUE; $payment_platform='phonepeutr'; $txn_id=$param['phonepeutr_txn'];//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $pay_phonepe_utr=$param['phonepe_utr_no']; $details_status='waiting'; $details_msg='Phonepe Recieved'; }else if($payment_mode==='online'){ if($payment_platform==='razorpay'){ $txn_id='T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $payment_platform='razorpay'; }else if($payment_platform==='paytm'){ $txn_id=$param['txn_id']; $payment_platform='paytm'; // $temp_payment_data=$this->fm->get_temp_payment(array('temp_checksum'=>$param['order_id'])); } }else if($payment_mode==='cash_split'){ $txn_id=ge_rand_code_v1('TXN'.$inst_id.$user_id.$booking_id.$admission_id.$installment_no.$param['split_no']);//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no.$param['split_no']; $payment_platform='cash'; $details_status='success'; $details_msg=$param['split_no'].' Recieved'; }else if($payment_mode==='online_before_software_split'){ $txn_id=ge_rand_code_v1('TXN'.$inst_id.$user_id.$booking_id.$admission_id.$installment_no.$param['split_no']);//'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no.$param['split_no']; $payment_platform=$param['payment_platform']; $details_status='success'; $details_msg=$param['split_no'].' Recieved'; }else if($payment_mode==='phonepeutr_split'){ $utrexists=TRUE; $payment_platform='phonepeutr'; $txn_id=(!empty($param['phonepeutr_txn']))?$param['phonepeutr_txn']:'T'.date('YmdHis').$inst_id.$user_id.$booking_id.$admission_id.$installment_no; $pay_phonepe_utr=(!empty($param['phonepe_utr_no']))?$param['phonepe_utr_no']:''; $details_status='success'; $details_msg='Phonepe Recieved'; } if(in_array($payment_mode,array('cash','online_before_software','cheque','phonepeutr','online'))){ if(isset($_order_id[6]) && $_order_id[6]=='bal'){ $details_payment_type='installment_balance_fees'; }else{ $details_payment_type='installment_fees'; } }else{ $details_payment_type='installment_split_fees'; if(isset($_order_id[6]) && $_order_id[6]=='bal'){ $details_payment_type='installment_split_balance_fees'; }else{ $details_payment_type='installment_split_fees'; } } //echo $details_payment_type;die; //$redirect_url=$this->data['base_url'].'/admission/payments/'.encode_data($booking_id).'#'.$txn_id; if($utype=='stu'){ $redirect_url=$this->data['base_url'].'/account/installments'; }else if($utype=='stuinst'){ $redirect_url=$this->data['base_url'].'/admission/payments/'.encode_data($booking_id).'?p='.$installment_order_id; } //echo $redirect_url;die; $updated=$this->adm->update_admission_data(array('updated_at'=>date('Y-m-d'),'updated_by'=>$user_id),array('admission_id'=>$booking_id)); //$updated=1; if($updated){ //Normal balance data $_get_fees_details_last=$this->fm->_get_fees_details_last(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_installment_id'=>$installment_id,'payment_admission_id'=>$admission_id,'payment_session_id'=>$session_id,'payment_course_id'=>$course_id)); if(!empty($_get_fees_details_last)){ $balance_last_data=$this->fm->_get_installments_balance_last(array('inst_installment_id'=>$installment_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_id'=>$inst_id,'inst_payment_id'=>$_get_fees_details_last->payment_fees_details_id)); }else{ $balance_last_data=$this->fm->_get_installments_balance_last(array('inst_installment_id'=>$installment_id,'inst_stu_id'=>$stu_id,'inst_session_id'=>$session_id,'inst_course_id'=>$course_id,'inst_id'=>$inst_id)); } if(!empty($balance_last_data)){ $prev_balance=$balance_last_data->inst_payment_balance; $prev_payment=$balance_last_data->inst_payment_total; }else{ $prev_balance=0; $prev_payment=0; } if($prev_balance>0){ $total_payable_amount=$prev_balance; $balance=$prev_balance-$txn_amount; } if($split_balance>0){ if(!empty($split_balance_last_data)){ $prev_split_balance=$split_balance_last_data->inst_payment_balance; $prev_split_payment=$split_balance_last_data->inst_payment_total; }else{ $prev_split_balance=0; $prev_split_payment=0; } if($prev_split_balance>0){ $total_split_payable_amount=$prev_split_balance; //$split_balance=$prev_balance-$txn_amount; } }else{ $prev_split_balance=0; $prev_split_payment=0; } // echo $prev_split_balance;die; //Table:nt_institute_payments_admission_fees_details $pay_data_to_add=array( 'payment_stu_id'=>$stu_id, 'payment_inst_id'=>$booking_inst_id, 'payment_session_id'=>$session_id, 'payment_session_year'=>$session_year, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id, 'payment_installment_id'=>$installment_id, 'payment_fees_total'=>$installment_value, 'payment_fees_scholarship_discount'=>$param['scholarship_amount'], 'payment_fees_scholarship_discount_reason'=>$param['scholarship_reason'], 'payment_fees_special_discount'=>$param['special_amount'], 'payment_fees_special_discount_reason'=>$param['special_discount_reason'], 'payment_fees_total_discount'=>$discount_amount, 'payment_fees_grand_total'=>$total_payable_amount, 'payment_fees_admission_amount'=>$txn_amount, 'payment_fees_balance_amount'=>$balance, 'payment_late_fee_applied'=>$penalty_applied, 'payment_late_fee'=>$installment_value_penalty, 'payment_fees_prev_balance_amount'=>$prev_balance, 'pay_mode'=>$payment_mode, 'pay_bank_cheque_no'=>(!empty($cheque_no))?$cheque_no:null, 'pay_checq_files_ids'=>(isset($param['booking_payment_checq_files_ids']))?$param['booking_payment_checq_files_ids']:null, 'pay_utr_no'=>(isset($utrexists) && $utrexists==TRUE)?$pay_phonepe_utr:null, 'pay_bank_name'=>(isset($cheque_bank_name))?$cheque_bank_name:null, 'pay_deposit_bank'=>(isset($cheque_deposite_bank) && $cheque_deposite_bank>0)?$cheque_deposite_bank:null, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); //print_obj($pay_data_to_add);die; $payment_id=$this->fm->store_fees_details($pay_data_to_add); //$payment_id=1; //echo $balance;die; if($payment_id){ //Discounts update if(!empty($param['special_amount']) && $param['special_amount']>0){ $special_discount_data=array( 'discount_fee_inst_id'=>$booking_inst_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id, 'discount_fee_installment_id'=>$installment_id, 'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'special_discount', 'discount_fee_type_value'=>$param['special_discount_reason'], 'discount_fee'=>$param['special_amount'], 'created_at'=>date('Y-m-d H:i:s') ); $deleted=$this->fm->delete_discount_fees(array('discount_fee_inst_id'=>$booking_inst_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id,'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'special_discount')); if($deleted){ $this->fm->store_discount_fees($special_discount_data); } } if(!empty($param['scholarship_amount']) && $param['scholarship_amount']>0){ $scholarship_discount_data=array( 'discount_fee_inst_id'=>$booking_inst_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id, 'discount_fee_installment_id'=>$installment_id, 'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'scholarship_discount', 'discount_fee_type_value'=>$param['special_discount_reason'], 'discount_fee'=>$param['scholarship_amount'], 'created_at'=>date('Y-m-d H:i:s') ); $_deleted=$this->fm->delete_discount_fees(array('discount_fee_inst_id'=>$booking_inst_id, 'discount_fee_stu_id'=>$stu_id, 'discount_fee_course_id'=>$course_id, 'discount_fee_session_id'=>$session_id, 'discount_fee_admission_id'=>$admission_id,'discount_fee_type_main'=>'admission_discount_fee', 'discount_fee_type'=>'scholarship_discount')); if($_deleted){ $this->fm->store_discount_fees($scholarship_discount_data); } } //Check Split balance exists if(!empty($split_balance_last_data) && $split_balance_last_data->inst_balance_paid=='no'){ $balance_id=$split_balance_last_data->balance_split_id; }else{ if($balance>0){ //echo 'hi';die; $balance_data=array( 'inst_id'=>$booking_inst_id, 'inst_parent_id'=>$booking_inst_parent_id, 'inst_stu_id'=>$stu_id, 'inst_session_id'=>$session_id, 'inst_course_id'=>$course_id, 'inst_subject_id'=>$subject_id, 'inst_year'=>$session_year, 'inst_installment_id'=>$installment_id, 'inst_payment_id'=>$payment_id, 'inst_payment_total'=>$txn_amount, 'inst_payment_balance'=>$balance, 'inst_balance_partialy_paid'=>'yes', 'created_at'=>date('Y-m-d'), 'created_by'=>$user_id, 'created_by_type'=>$userdata->user_type ); $balance_id=$this->fm->store_installments_balance($balance_data); if($balance_id){ $this->fm->update_installments_balance(array('inst_balance_partialy_paid'=>'yes'),array('inst_id'=>$booking_inst_id, 'inst_parent_id'=>$booking_inst_parent_id, 'inst_stu_id'=>$stu_id, 'inst_session_id'=>$session_id, 'inst_course_id'=>$course_id, 'inst_installment_id'=>$installment_id, 'inst_balance_type'=>'admission_balance')); $this->fm->update_installments_balance(array('inst_balance_partialy_paid'=>'no'),array('balance_id'=>$balance_id)); // echo $balance_id;die; } }else if($balance==0){ //echo 'hi2';die; if(!empty($balance_last_data)){ $balance_data=array( 'inst_id'=>$booking_inst_id, 'inst_parent_id'=>$booking_inst_parent_id, 'inst_stu_id'=>$stu_id, 'inst_session_id'=>$session_id, 'inst_course_id'=>$course_id, 'inst_subject_id'=>$subject_id, 'inst_year'=>$session_year, 'inst_installment_id'=>$installment_id, 'inst_payment_id'=>$payment_id, 'inst_payment_total'=>$txn_amount, 'inst_payment_balance'=>$balance, 'inst_balance_paid'=>'yes', 'inst_balance_partialy_paid'=>'yes', 'created_at'=>date('Y-m-d'), 'created_by'=>$user_id, 'created_by_type'=>$userdata->user_type ); $balance_id=$this->fm->store_installments_balance($balance_data); //'inst_id'=>$booking_inst_id, // 'inst_parent_id'=>$booking_inst_parent_id, // 'inst_stu_id'=>$stu_id, // 'inst_session_id'=>$session_id, // 'inst_course_id'=>$course_id, $this->fm->update_installments_balance(array('inst_balance_paid'=>'yes'),array( 'inst_installment_id'=>$installment_id, 'inst_balance_type'=>'admission_balance')); } $this->fm->update_installments(array('installment_paid_full'=>'yes'),array('installment_id'=>$installment_id)); } } //echo 'split_balance:'.$split_balance;die; //Split Balance if($split_balance>0){ $split_balance_data=array( 'balance_split_id'=>$balance_id, 'inst_id'=>$booking_inst_id, 'inst_parent_id'=>$booking_inst_parent_id, 'inst_stu_id'=>$stu_id, 'inst_session_id'=>$session_id, 'inst_course_id'=>$course_id, 'inst_subject_id'=>$subject_id, 'inst_year'=>$session_year, 'inst_installment_id'=>$installment_id, 'inst_payment_id'=>$payment_id, 'inst_payment_total'=>(isset($param['paid_split_amount']))?$txn_split_amount:$txn_amount, 'inst_payment_balance'=>$split_balance, 'inst_balance_partialy_paid'=>'yes', 'inst_balance_type'=>'admission_split_balance', 'created_at'=>date('Y-m-d'), 'created_by'=>$user_id, 'created_by_type'=>$userdata->user_type ); //print_obj($split_balance_data);die; $split_balance_id=$this->fm->store_installments_balance($split_balance_data); }else if($split_balance==0){ if(!in_array($payment_mode,array('cash','online_before_software','cheque','phonepeutr','online'))){ $balance_data=array( 'balance_split_id'=>$balance_id, 'inst_id'=>$booking_inst_id, 'inst_parent_id'=>$booking_inst_parent_id, 'inst_stu_id'=>$stu_id, 'inst_session_id'=>$session_id, 'inst_course_id'=>$course_id, 'inst_subject_id'=>$subject_id, 'inst_year'=>$session_year, 'inst_installment_id'=>$installment_id, 'inst_payment_id'=>$payment_id, 'inst_payment_total'=>(isset($param['paid_split_amount']))?$txn_split_amount:$txn_amount, 'inst_payment_balance'=>$split_balance, 'inst_balance_paid'=>'yes', 'inst_balance_partialy_paid'=>'yes', 'inst_balance_type'=>'admission_split_balance', 'created_at'=>date('Y-m-d'), 'created_by'=>$user_id, 'created_by_type'=>$userdata->user_type ); $split_balance_id=$this->fm->store_installments_balance($balance_data); $this->fm->update_installments_balance(array('inst_balance_paid'=>'yes'),array('inst_balance_type'=>'admission_split_balance', 'balance_split_id'=>$balance_id)); $this->fm->update_installments_balance(array('inst_balance_partialy_paid'=>'no'),array('inst_balance_type'=>'admission_balance', 'balance_id'=>$balance_id)); } } $payment_details=array( 'details_type_text'=>$details_type_text, 'details_order_code'=>$_fisrt_sec_order_id.$installemnt_unique_code, 'details_payment_platform'=>$payment_platform, 'details_type'=>$booking_type, 'details_payment_type'=>$details_payment_type, 'details_type_id'=>$booking_id, 'details_payment_id'=>$payment_id, 'details_inst_id'=>$booking_inst_id, 'details_parent_inst_id'=>$booking_inst_parent_id, 'details_emp_id'=>decode_data(session_userdata('admin_id')), 'details_stu_id'=>$student_data->stu_user_id, 'details_sess_id'=>$session_id, 'details_course_id'=>$course_id, 'details_sess_year'=>$session_year, 'details_installment_id'=>$installment_id, 'details_txn_id'=>$txn_id, 'details_order_id'=>$param['installment_order_id'], 'details_utr_id'=>(isset($param['phonepe_utr_no']))?$param['phonepe_utr_no']:null, 'details_pay_id'=>(isset($param['pay_id']))?$param['pay_id']:null, 'details_pay_checq_files_ids'=>(isset($param['booking_payment_checq_files_ids']))?$param['booking_payment_checq_files_ids']:null, 'details_amount'=>(isset($param['paid_split_amount']))?$txn_split_amount:$txn_amount, 'details_discount_amount'=>$discount_amount, 'details_prev_total_amount'=>(isset($param['paid_split_amount']))?$prev_split_payment:$prev_payment, 'details_accounting_type'=>$accounting_type, 'details_accounting_type_id'=>'1', 'details_payment_note'=>(!empty($param['payment_note']))?$param['payment_note']:null, 'details_status'=>$details_status, 'details_msg'=>$details_msg, 'details_created_by_type'=>$userdata->user_type, 'details_created_by'=>$user_id, 'details_created_at'=>date('Y-m-d',strtotime($pay_date)), 'details_created_at_actual'=>date('Y-m-d') ); //print_obj($payment_details);die; //echo $paytype;die; $payment_details_id=$this->fm->store_payment_details($payment_details); if($payment_details_id){ $amount_paid=(isset($param['paid_split_amount']))?$txn_split_amount:$txn_amount; if($paytype==='bal'){ if($balance>0){ $inst_balance_paid='no'; }else{ $inst_balance_paid='yes'; } $this->fm->update_installments_balance(array('inst_balance_paid'=>$inst_balance_paid,'updated_at'=>date('Y-m-d'),'updated_by'=>$userdata->user_id,'updated_by_type'=>$userdata->user_type),array('inst_id'=>$booking_inst_id,'inst_stu_id'=>$student_data->stu_user_id,'inst_session_id'=>$session_id,'inst_installment_id'=>$installment_id,'inst_balance_type'=>'admission_balance')); } //Auto credit to Cash or Bank Accounts if($param['pay_auto_credit_account']!='0' && $param['pay_auto_credit_account']!='cash'){ //Bank Balance update $balance_opening_amount=0; $get_balance_data=$this->sm->get_bank_balance(array('balance_inst_id'=>$inst_id,'balance_bank_id'=>$param['pay_auto_credit_account'],'balance_inst_type'=>$inst_type,'balance_status'=>'active')); if(!empty($get_balance_data)){ $last_balance=$get_balance_data->balance_opening_amount; $balance_opening_amount=$get_balance_data->balance_opening_amount; } $balance_amount=$last_balance+$amount_paid; $bank_balance=array( 'balance_inst_id'=>$inst_id, 'balance_bank_id'=>$param['pay_auto_credit_account'], 'balance_opening_amount'=>$balance_amount, 'balance_adjusted_amount'=>$amount_paid, 'balance_status'=>'active', 'balance_created_by'=>$emp_id ); $balance_id=$this->sm->store_bank_balance_data($bank_balance); if($balance_id){ $this->fm->update_payment_details(array('details_accounting_account'=>'bank_account','details_accounting_account_id'=>$param['pay_auto_credit_account']),array('details_id'=>$payment_details_id)); if(!empty($get_balance_data)){ $this->sm->update_bank_balance_data(array('balance_status'=>'inactive','balance_updated_by'=>$data['emp_id']),array('balance_id'=>$get_balance_data->balance_id)); } } }else if($param['pay_auto_credit_account']=='cash'){ //Cash balance update $balance_opening_amount=0; $get_balance_data=$this->sm->get_cash_balance(array('balance_inst_id'=>$inst_id,'balance_status'=>'active')); if(!empty($get_balance_data)){ $last_balance=$get_balance_data->balance_opening_amount; $balance_opening_amount=$get_balance_data->balance_opening_amount; } $balance_amount=$last_balance+$amount_paid; $cash_balance=array( 'balance_inst_id'=>$inst_id, 'balance_opening_amount'=>$balance_amount, 'balance_adjusted_amount'=>$amount_paid, 'balance_status'=>'active', 'balance_created_by'=>$emp_id ); $balance_id=$this->sm->store_cash_balance_data($cash_balance); if($balance_id){ $this->fm->update_payment_details(array('details_accounting_account'=>'cash_account'),array('details_id'=>$payment_details_id)); if(!empty($get_balance_data)){ $this->sm->update_cash_balance_data(array('balance_status'=>'inactive','balance_updated_by'=>$emp_id),array('balance_id'=>$get_balance_data->balance_id)); } } } } // print_obj($payment_details);die; return $redirect_url; }else{ return 'error'; } }else{ return 'error'; } } /**Split INstallmentas**/ public function onPaySplitPayments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=$this->user_id; if($this->inst_type=='institute_branch'){ $parent_inst_id=$this->branch_parent_inst_id; }else{ $parent_inst_id=$this->inst_parent_id; } $paid_amount=post_data('total_amount'); $paid_split_amount=post_data('pay_amount'); $pay_mode=post_data('pay_mode'); $order_id=post_data('pay_order_id'); $installment_id=post_data('pay_installment_id'); $pay_note=post_data('pay_note'); $payment_discount=post_data('pay_discount'); $pay_discount_other=post_data('pay_discount_other'); $pay_date=post_data('pay_date'); $pay_auto_credit_account=post_data('pay_auto_credit_account'); $current_date=date('Y-m-d'); $discount=0; if($order_id && $installment_id){ $installment_id=decode_data($installment_id); //echo $installment_id; if(is_numeric($installment_id)){ $_order_id=explode('_', $order_id); if(!empty($_order_id)){ $admission_code=$_order_id[0]; $installment_data=$this->fm->get_installments(array('installment_id'=>$installment_id)); $admission_data=$this->adm->get_admission_data(array('admission_code'=>$admission_code)); //print_obj($installment_data);die; $txn=''; $scholarship_amount=0; $special_amount=0; $penalty_applied='no'; $total_amount_pyable=''; $balance_amount=0; $pay_phonepe_utr=null; $pay_phonepe_utr_txn=null; $payment_platform=$pay_mode; $pay_special_remarks=''; $pay_special_amount_reason=''; $pay_date=date('Y-m-d',strtotime($pay_date)); $total_payable_amount=$installment_data->installment_value; //Check for any prev balance $last_balance=$this->fm->_get_installments_balance_last(array('balance_split_id'=>null,'inst_installment_id'=>$installment_id)); //print_obj($last_balance); if(!empty($last_balance)){ $total_payable_amount=$last_balance->inst_payment_balance; }else{ $total_payable_amount=$total_payable_amount; } $balance_amount=($total_payable_amount-($payment_discount+$pay_discount_other))-$paid_amount; //print_obj($balance_amount);die; if(!empty($admission_data) && !empty($installment_data)){ $stu_id=$stu_id=$admission_data->admission_stu_id; $details_order_code=$admission_data->admission_code.$installment_data->installment_unique_code; $payment_data_param=array( 'installment_unique_code'=>$installment_data->installment_unique_code, 'installment_order_id'=>$order_id, 'installment_data'=>$installment_data, 'scholarship_amount'=>$scholarship_amount, 'special_amount'=>$special_amount, 'penalty_applied'=>$penalty_applied, 'total_payable_amount'=>$total_payable_amount, 'paid_amount'=>$paid_amount, 'paid_split_amount'=>$paid_split_amount, 'pay_auto_credit_account'=>$pay_auto_credit_account, 'balance_amount'=>$balance_amount, 'phonepe_utr_no'=>$pay_phonepe_utr, 'phonepeutr_txn'=>$pay_phonepe_utr_txn, 'payment_mode'=>$pay_mode, 'payment_platform'=>$payment_platform, 'pay_date'=>$pay_date, 'payment_note'=>$pay_note, 'msg'=>'success', 'scholarship_amount'=>$payment_discount, 'special_amount'=>$pay_discount_other, 'scholarship_reason'=>$pay_special_remarks, 'special_discount_reason'=>$pay_special_amount_reason, 'split_no'=>'1' ); //print_obj($payment_data_param);die; $response=$this->get_payment($payment_data_param); if($response=='error'){ $return['error']='There was an internal error occurre.Try after some time.'; }else{ $return['success']='Payment has been recieved.'; $return['redirect']=$response; } }else{ $return['error']='No data found'; } }else{ $return['error']='Data manipulation not allowed'; } }else{ $return['error']='Data manipulation not allowed'; } //print_obj($_order_id); }else{ $return['error']='Data manipulation not permitted.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onPayInstallments_old(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $userdata=$this->data['userdata']; $user_id=$this->data['userdata']->user_id; if($this->data['userdata']->user_type=='institute_branch'){ $branch_data=$this->get_user(array('user_id'=>$user_id),'institute_branch'); $parent_inst_id=$barnch_data->user_id; }else{ $parent_inst_id=$user_id; } $stu_id=post_data('stu_id'); $inst_id=post_data('inst_id'); $admission_id=post_data('admission_id'); $course_id=post_data('course_id'); $session_id=post_data('session_id'); $installment_id=post_data('installment_id'); $session_year=post_data('pay_session_year'); $total_amount=post_data('pay_amount'); $scholarship_amount=post_data('pay_scholarship_amount'); $special_amount=post_data('pay_special_amount'); $paid_amount=post_data('pay_amount_paid'); $balance=post_data('pay_balance_amount'); $final_amount=post_data('pay_final_amount'); $pay_special_remarks=post_data('pay_special_remarks'); $pay_special_amount_reason=post_data('pay_special_amount_reason'); $pay_mode=post_data('pay_mode'); $bank_name=post_data('pay_bank_name'); $cheque_no=post_data('pay_bank_cheque_no'); $deposite_bank=post_data('pay_deposite_bank'); $pay_phonepe_utr=post_data('pay_phonepe_utr'); $pay_phonepe_utr_txn=post_data('pay_phonepe_utr_txn'); //print_obj($this->input->post());die; $current_date=date('Y-m-d'); if($paid_amount<=$final_amount){ $fees_details_found=$this->fm->get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_session_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_installment_id'=>$installment_id)); $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); $institute_data=$this->um->get_user(array('user_id'),'institute'); $installment_data=$this->fm->get_installment(array('installment_id'=>$installment_id)); $installment_date=date('Y-m-d',strtotime($installment_data->installment_date)); //print_obj($institute_data);die; //echo 'installment value:'.$installment_data->installment_value.'<br>'; //echo $scholarship_amount;die; if(!empty($scholarship_amount)){ $samount=$scholarship_amount; }else{ $samount=0; } if(!empty($special_amount)){ $ssamount=$special_amount; }else{ $ssamount=0; } if($current_date>$installment_date){ $total_payable_amount=($installment_data->installment_value+$installment_data->installment_value_penalty)-($samount+$ssamount); $late_fee_applied='yes'; }else{ $total_payable_amount=$installment_data->installment_value-($samount+$ssamount); $late_fee_applied='no'; } // echo 'total_payable_amount:'.$total_payable_amount.'<br>'; //echo 'paid_amount:'.$paid_amount.'<br>'; //$total_payable_amount=$total_payable_amount-($scholarship_amount+$special_amount); $balance_amount=$total_payable_amount-$paid_amount; //echo 'balance_amount:'.$balance_amount;die; if(empty($fees_details_found)){ if($pay_mode=='cheque'){ if(!empty($bank_name) && !empty($cheque_no)){ if($deposite_bank!='0'){ $bankexists=TRUE; }else if($deposite_bank=='0'){ $bankexists=FALSE; } }else{ $bankexists=FALSE; } $utrexists=FALSE; }else if($pay_mode=='cash'){ $bankexists=TRUE; $utrexists=FALSE; }else if($pay_mode=='online'){ $utrexists=FALSE; $bankexists=TRUE; }else if($pay_mode=='phonepeutr'){ $utrexists=TRUE; $bankexists=TRUE; } if($bankexists==TRUE){ if($utrexists==TRUE){ if(!empty($pay_phonepe_utr) && !empty($pay_phonepe_utr_txn)){ $utrrequired=FALSE; }else{ $utrrequired=TRUE; } }else{ $utrrequired=FALSE; } if($utrrequired==FALSE){ $scholarship_amount=(!empty($scholarship_amount))?$scholarship_amount:'0'; $special_amount=(!empty($special_amount))?$special_amount:'0'; $payment_fees_total_discount=$scholarship_amount+$special_amount; $payment_fees_grand_total=($total_amount-$payment_fees_total_discount); // $balance_amount=$total_payable_amount-$paid_amount; //$payment_fees_grand_total-$paid_amount; if($scholarship_amount>0 && $special_amount>0){ if(!empty($pay_special_remarks) && !empty($pay_special_amount_reason)){ $remarks_added='yes'; $special_remarks_added='yes'; $payment_fees_scholarship_discount_reason=$pay_special_remarks; $payment_fees_special_discount_reason=$pay_special_amount_reason; //echo '1'; }else{ $remarks_added='no'; $special_remarks_added='no'; $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=null; // echo '2'; } }else if($scholarship_amount>0 && $special_amount==0){ if(!empty($pay_special_remarks)){ $remarks_added='yes'; $special_remarks_added='yes'; // echo '3'; }else{ $remarks_added='no'; $special_remarks_added='yes'; //echo '4'; } $payment_fees_scholarship_discount_reason=$pay_special_remarks; $payment_fees_special_discount_reason=null; }else if($scholarship_amount==0 && $special_amount>0){ if(!empty($pay_special_amount_reason)){ $remarks_added='yes'; $special_remarks_added='yes'; //echo '5'; }else{ $remarks_added='yes'; $special_remarks_added='no'; // echo '6'; } $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=$pay_special_amount_reason; }else{ $remarks_added='yes'; $special_remarks_added='yes'; $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=null; //echo '7'; } //echo $special_remarks_added;die; // echo $balance_amount;die; //echo $installment_id;die; if($remarks_added=='yes' && $special_remarks_added=='yes'){ $data_to_add=array( 'payment_stu_id'=>$stu_id, 'payment_inst_id'=>$inst_id, 'payment_session_id'=>$session_id, 'payment_session_year'=>$session_year, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id, 'payment_installment_id'=>$installment_id, 'payment_late_fee_applied'=>$late_fee_applied, 'payment_late_fee'=>($late_fee_applied=='yes')?$installment_data->installment_value_penalty:0, 'payment_fees_total'=>$total_payable_amount, 'payment_fees_scholarship_discount'=>$scholarship_amount, 'payment_fees_scholarship_discount_reason'=>$payment_fees_scholarship_discount_reason, 'payment_fees_special_discount'=>$special_amount, 'payment_fees_special_discount_reason'=>$payment_fees_special_discount_reason, 'payment_fees_total_discount'=>$payment_fees_total_discount, 'payment_fees_grand_total'=>$payment_fees_grand_total, 'payment_fees_admission_amount'=>$paid_amount, 'payment_fees_balance_amount'=>$balance_amount, 'pay_mode'=>$pay_mode, 'pay_bank_cheque_no'=>(!empty($cheque_no))?$cheque_no:null, 'pay_utr_no'=>($utrexists==TRUE)?$pay_phonepe_utr:null, 'pay_bank_name'=>(!empty($bank_name))?$bank_name:null, 'pay_deposit_bank'=>($deposite_bank>0)?$deposite_bank:null, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); $payment_id=$this->fm->store_fees_details($data_to_add); if($payment_id){ if($balance_amount<=0){ $this->fm->update_installments(array('installment_paid_full'=>'yes'),array('installment_id'=>$installment_id)); } $txn_code=generate_string(4); if(!empty($pay_phonepe_utr)){ $txn_id=$pay_phonepe_utr_txn; }else{ $txn_id='T'.date('Ymd').$installment_id.$payment_id.$stu_id; } $order_id=$admission_data->admission_code.$txn_code; $payment_details=array( 'details_order_code'=>$txn_code, 'details_payment_platform'=>$pay_mode, 'details_type'=>'new_admission', 'details_payment_type'=>'installment_fees', 'details_type_id'=>$admission_id, 'details_payment_id'=>$payment_id, 'details_inst_id'=>$inst_id, 'details_parent_inst_id'=>$parent_inst_id, 'details_stu_id'=>$stu_id, 'details_sess_id'=>$session_id, 'details_course_id'=>$course_id, 'details_sess_year'=>$session_year, 'details_installment_id'=>$installment_id, 'details_txn_id'=>$txn_id, 'details_utr_id'=>($utrexists==TRUE)?$pay_phonepe_utr:null, 'details_order_id'=>$order_id, 'details_amount'=>$paid_amount, 'details_discount_amount'=>$payment_fees_total_discount, 'details_prev_total_amount'=>0, 'details_accounting_type'=>'income', 'details_created_by_type'=>$this->data['userdata']->user_type, 'details_created_by'=>$this->data['userdata']->user_id, 'details_pay_currency'=>'INR', 'details_status'=>'success', 'details_msg'=>'TXN Success', 'details_created_at'=>date('Y-m-d') ); $payment_details_id=$this->fm->store_payment_details($payment_details); //print_obj($installment_data);die; $mail_data['inst_id']=$inst_id; $mail_data['mail_from']='webmaster'; if(isset($installment_data) && !empty($installment_data)){ if(!empty($installment_data->stu_mid_name)){ $student_name=ucwords(strtolower($installment_data->stu_first_name)).' '.ucwords(strtolower($installment_data->stu_mid_name)).' '.ucwords(strtolower($installment_data->stu_last_name)); }else{ $student_name=ucwords(strtolower($installment_data->stu_first_name)).' '.ucwords(strtolower($installment_data->stu_last_name)); } $mail_data['to_email']=$installment_data->stu_email; } if($userdata->user_type=='student'){ $mail_data['mail_from_name']=$institute_data->user_profile_name; // if($payment_details->details_payment_type=='installment_balance_fees'){ // $mail_data['mail_subject']='Admission ['.$booking_data->admission_code.'] Balance Payment Details'; // }else{ $mail_data['mail_subject']='Admission ['.$admission_data->admission_code.'] Payment Details'; //} $profile_name=$institute_data->user_profile_name; $college_email=$institute_data->user_email; $college_phone=$institute_data->user_contact_no; $link_logo=$this->data['link_logo']; }else{ $mail_data['mail_from_name']=ucwords($institute_data->user_profile_name); $mail_data['mail_subject']=ucwords($institute_data->user_profile_name).' Admission ['.$admission_data->admission_code.'] Details'; $profile_name=$institute_data->user_profile_name; $college_email=$institute_data->user_email; $college_phone=$institute_data->user_contact_no; $link_logo=$this->data['link_logo']; } $college_email=$institute_data->user_email; $college_phone=$institute_data->user_contact_no; $profile_name=$institute_data->user_profile_name; $link_logo=$this->data['link_logo']; $payment_data=$this->fm->get_fees_details(array('payment_fees_details_id'=>$payment_id)); $payment_details=$this->fm->get_payment_details(array('details_id'=>$payment_details_id)); $mail_data['mail_type']='html'; $mail_data['mail_custom_type']='html'; $mail_data['mail_data']=array( 'stu_name'=>ucwords($student_name), 'stu_email'=>$installment_data->stu_email, 'stu_ph'=>$installment_data->stu_ph_no, 'booking_code'=>$admission_data->admission_code, 'booking_session'=>$installment_data->session_start_year.'-'.$installment_data->session_end_year, 'booking_course'=>$installment_data->course_name, 'booking_subject'=>(!empty($installment_data->subject_name))?$installment_data->subject_name:'N/A', 'booking_amount'=>'0', 'installment_data'=>$installment_data, 'payment_data'=>$payment_data, 'payment_details'=>$payment_details, 'portal_url'=>$this->data['base_url'], 'portal_logo'=>$link_logo, 'portal_inst_name'=>$profile_name, 'college_email'=>$college_email, 'college_phone'=>$college_phone, 'default_logo_small'=>$this->data['default_logo_small'], 'created_at'=>date('d-m-Y') ); //print_obj($mail_data);die; $mail_data['mail_view']='_pages/mails/vw_admission_installments_payment_mail'; $this->onSendMail($mail_data); $mail_data_2=$mail_data; $mail_data_2['to_email']=$institute_data->user_email; // if($payment_details->details_payment_type=='installment_balance_fees'){ // $mail_data_2['mail_subject']='Admission ['.$booking_data->admission_code.'] Balance Payment Details [Copy mail]'; // }else{ $mail_data_2['mail_subject']='Admission ['.$admission_data->admission_code.'] Payment Details [Copy mail]'; //} $this->onSendMail($mail_data_2); $return['success']='Payment recieved'; }else{ $return['error']='Payment not recieved.'; } }else if($remarks_added=='no' && $special_remarks_added=='no'){ $return['error']='Scolarship remarks and Special discount remarks are required.'; }else if($remarks_added=='no' && $special_remarks_added=='yes'){ $return['error']='Scolarship remarks is required.'; }else if($remarks_added=='yes' && $special_remarks_added=='no'){ $return['error']='Special discount remarks is required.'; } }else if($utrrequired==TRUE){ $return['error']='UTR and TXN number is required'; } }else{ $return['error']='Bank Name,Cheque No,Deposit bank are required'; } }else{ } }else{ $return['error']='Pay amount can not be less than zero value.'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onPayFullInstallments(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $user_id=$this->data['userdata']->user_id; if($this->data['userdata']->user_type=='institute'){ $parent_inst_id=$this->data['userdata']->user_id; }else if($this->data['userdata']->user_type=='institute_branch'){ $parent_inst_id=$this->data['userdata']->branch_parent_inst_id; } $stu_id=post_data('stu_id'); $inst_id=post_data('inst_id'); $admission_id=post_data('admission_id'); $course_id=post_data('course_id'); $session_id=post_data('session_id'); $session_year=post_data('_session_year'); $pay_amount=post_data('full_pay_amount'); $paid_amount=post_data('full_pay_amount_paid'); $scholarship_amount=post_data('full_pay_scholarship_amount'); $special_amount=post_data('full_pay_special_amount'); $scholarship_remarks=post_data('full_pay_scholarship_remarks'); $special_amount_remarks=post_data('full_pay_special_amount_reason'); $pay_mode=post_data('full_pay_mode'); $bank_name=post_data('full_pay_bank_name'); $cheque_no=post_data('full_pay_bank_cheque_no'); $utr_no=post_data('full_pay_phonepe_utr'); $txn_no=post_data('full_pay_phonepe_utr_txn'); $deposite_bank=post_data('full_pay_deposite_bank'); $payment_fees_total_discount=($scholarship_amount+$special_amount); $total_amount=$pay_amount-$payment_fees_total_discount; if($total_amount>=0){ $fees_details_found=$this->fm->get_fees_details(array('payment_stu_id'=>$stu_id,'payment_inst_id'=>$inst_id,'payment_session_id'=>$session_id,'payment_admission_id'=>$admission_id,'payment_course_id'=>$course_id,'payment_session_year'=>$session_year)); //print_obj($fees_details_found);die; if(empty($fees_details_found)){ if($pay_mode=='cheque'){ if(!empty($bank_name) && !empty($cheque_no)){ if($deposite_bank!='0'){ $bankexists=TRUE; }else if($deposite_bank=='0'){ $bankexists=FALSE; } }else{ $bankexists=FALSE; } $utrexists=FALSE; }else if($pay_mode=='cash'){ $bankexists=TRUE; $utrexists=FALSE; }else if($pay_mode=='phonepeutr'){ $bankexists=TRUE; if($txn_no!='' && $utr_no!=''){ $utrexists=FALSE; }else{ $utrexists=TRUE; } } if($bankexists==TRUE){ if($scholarship_amount>0 && $special_amount>0){ if(!empty($scholarship_remarks) && !empty($special_amount_remarks)){ $remarks_added='yes'; $special_remarks_added='yes'; $payment_fees_scholarship_discount_reason=$scholarship_remarks; $payment_fees_special_discount_reason=$special_amount_remarks; //echo '1'; }else{ $remarks_added='no'; $special_remarks_added='no'; $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=null; // echo '2'; } }else if($scholarship_amount>0 && $special_amount==0){ if(!empty($scholarship_remarks)){ $remarks_added='yes'; $special_remarks_added='yes'; // echo '3'; }else{ $remarks_added='no'; $special_remarks_added='yes'; //echo '4'; } $payment_fees_scholarship_discount_reason=$scholarship_remarks; $payment_fees_special_discount_reason=null; }else if($scholarship_amount==0 && $special_amount>0){ if(!empty($special_amount_remarks)){ $remarks_added='yes'; $special_remarks_added='yes'; //echo '5'; }else{ $remarks_added='yes'; $special_remarks_added='no'; // echo '6'; } $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=$special_amount_remarks; }else{ $remarks_added='yes'; $special_remarks_added='yes'; $payment_fees_scholarship_discount_reason=null; $payment_fees_special_discount_reason=null; //echo '7'; } //echo $remarks_added;die; if($remarks_added=='yes' && $special_remarks_added=='yes'){ if($utrexists==FALSE){ $installment_data_to_add=array( 'installment_stu_id'=>$stu_id, 'installment_inst_id'=>$inst_id, 'installment_admission_id'=>$admission_id, 'installment_sess_id'=>$session_id, 'installment_sess_year'=>$session_year, 'installment_course_id'=>$course_id, 'installment_value'=>$total_amount, 'installment_date'=>date('Y-m-d'), 'created_by'=>$this->data['userdata']->user_id, 'created_at'=>date('Y-m-d') ); $installment_id=$this->fm->store_installments($installment_data_to_add); if($installment_id){ $pay_data_to_add=array( 'payment_stu_id'=>$stu_id, 'payment_inst_id'=>$inst_id, 'payment_session_id'=>$session_id, 'payment_session_year'=>$session_year, 'payment_admission_id'=>$admission_id, 'payment_course_id'=>$course_id, 'payment_installment_id'=>$installment_id, 'payment_fees_total'=>$pay_amount, 'payment_fees_scholarship_discount'=>$scholarship_amount, 'payment_fees_scholarship_discount_reason'=>$payment_fees_scholarship_discount_reason, 'payment_fees_special_discount'=>$special_amount, 'payment_fees_special_discount_reason'=>$payment_fees_special_discount_reason, 'payment_fees_total_discount'=>$payment_fees_total_discount, 'payment_fees_grand_total'=>$total_amount, 'payment_fees_admission_amount'=>$paid_amount, 'payment_fees_balance_amount'=>'0', 'pay_mode'=>$pay_mode, 'pay_utr_no'=>(!empty($utr_no))?$utr_no:null, 'pay_bank_cheque_no'=>(!empty($cheque_no))?$cheque_no:null, 'pay_bank_name'=>(!empty($bank_name))?$bank_name:null, 'pay_deposit_bank'=>($deposite_bank>0)?$deposite_bank:null, 'created_by'=>$user_id, 'created_at'=>date('Y-m-d') ); $payment_id=$this->fm->store_fees_details($pay_data_to_add); if($payment_id){ // $this->fm->update_installments(array('installment_paid_full'=>'yes'),array('installment_id'=>$installment_id)); $hf=$this->fm->update_installments(array('installment_paid_full'=>'yes'),array('installment_admission_id'=>$admission_id,'installment_sess_id'=>$session_id,'installment_sess_year'=>$session_year)); //echo $hf;die; $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if($pay_mode=='phonepeutr'){ $txn_id=$txn_no; }else{ $txn_id='T'.date('Ymd').$installment_id.$payment_id.$stu_id; } $order_code=generate_string(4); $order_id=$admission_data->admission_code.$order_code; $payment_details=array( 'details_type'=>'new_admission', 'details_payment_type'=>'installment_fees', 'details_payment_id'=>$payment_id, 'details_type_id'=>$admission_id, 'details_inst_id'=>$inst_id, 'details_stu_id'=>$stu_id, 'details_parent_inst_id'=>$parent_inst_id, 'details_sess_id'=>$session_id, 'details_sess_year'=>$session_year, 'details_course_id'=>$course_id, 'details_installment_id'=>$installment_id, 'details_payment_platform'=>$pay_mode, 'details_txn_id'=>$txn_id, 'details_utr_id'=>(!empty($utr_no))?$utr_no:null, 'details_order_id'=>$order_id, 'details_order_code'=>$order_code, 'details_amount'=>$paid_amount, 'details_discount_amount'=>$payment_fees_total_discount, 'details_accounting_type'=>'income', 'details_status'=>'success', 'details_msg'=>'TXN Success', 'details_created_by_type'=>'institute', 'details_created_by'=>$user_id, 'details_created_at'=>date('Y-m-d') ); $this->fm->store_payment_details($payment_details); $return['success']='Payment recieved'; }else{ $return['error']='Payment not recieved.'; } }else{ $return['error']='There was an ocurred'; } }else if($utrexists==TRUE){ $return['error']='UTR no and TXN no is required'; } }else if($remarks_added=='no' && $special_remarks_added=='no'){ $return['error']='Scolarship remarks and Special discount remarks are required.'; }else if($remarks_added=='no' && $special_remarks_added=='yes'){ $return['error']='Scolarship remarks is required.'; }else if($remarks_added=='yes' && $special_remarks_added=='no'){ $return['error']='Special discount remarks is required.'; } }else{ $return['error']='Bank Name,Cheque No,Deposit bank are required'; } }else{ $return['error']='Data already found'; } }else{ $return['error']='Payable amount can not be less than zero'; } //data manipulation neede json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } //Agent Payment public function onPayToAgents(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $agent_id=post_data('agent_id'); $inst_id=post_data('inst_id'); $booking_id=post_data('booking_id'); $payment_id=post_data('payment_id'); $payment_mode=post_data('full_pay_mode'); $full_pay_date=post_data('full_pay_date'); $full_pay_note=post_data('full_pay_note'); $full_pay_amount=post_data('full_pay_amount'); $paymet_balance=0; //echo decode_data($agent_id); if(!empty($payment_id)){ $agent_id=decode_data($agent_id); $payment_id=decode_data($payment_id); $booking_id=decode_data($booking_id); $inst_id=decode_data($inst_id); $check_institute=check_institute($this->data['userdata']); $parent_inst_id=$check_institute['inst_parent_id']; $inst_type=$check_institute['inst_type']; //$payment_date=date('Y-m-d H:i:s',strtotime($full_pay_date)); //$datetime = DateTime::createFromFormat('d/m/Y', $full_pay_date); $payment_date = date('Y-m-d H:i:s',strtotime($full_pay_date)); //echo $payment_date;die; if($this->data['userdata']->user_type=='institute'){ $parent_inst_id=$this->data['userdata']->user_id; }else if($this->data['userdata']->user_type=='institute_branch'){ $parent_inst_id=$this->data['userdata']->branch_parent_inst_id; } $payment_data=$this->fm->_get_agent_payment(array('payment_id'=>$payment_id,'institute_payments_agents.agent_id'=>$agent_id,'booking_id'=>$booking_id)); //print_obj($payment_data);die; if(!empty($payment_data)){ $amount_value=$payment_data->amount_value; $booking_session_id=$payment_data->session_id; $booking_course_id=$payment_data->course_id; $booking_code=$payment_data->booking_code; $student_id=$payment_data->stu_id; $booking_type=($payment_data->booking_type=='seat_booking')?'seatbooking_agent_fees':'admission_agent_fees'; $total_balance_payment=$this->fm->get_installments_paid_total(array('inst_agent_id'=>$agent_id,'inst_payment_id'=>$payment_id)); //print_obj($total_balance_payment);die; if($full_pay_amount<=$amount_value){ $paymet_balance=$amount_value-$full_pay_amount; $agent_amount=$full_pay_amount; if(isset($total_balance_payment[0]->total)){ $total_payment_balance=$amount_value-($agent_amount+$total_balance_payment[0]->total); }else{ $total_payment_balance=$paymet_balance; } //echo $total_payment_balance;die; if($payment_mode=='online'){ $this->fm->update_agent_payment(array('booking_code'=>$booking_code,'booking_pay_mode'=>'online',),array('payment_id'=>$payment_id,'agent_id'=>$agent_id,'booking_id'=>$booking_id)); $return['success']='Ready for online payment.'; $return['booking_value']=$agent_amount; $return['booking_code']=$payment_order_id; }else{ $agent_pay_data=array( 'booking_code'=>$booking_code, 'booking_pay_mode'=>$payment_mode, 'amount_paid'=>($total_payment_balance>0)?'no':'yes', 'amount_paid_by'=>$this->user_id, 'amount_paid_at'=>$payment_date ); $updated=$this->fm->update_agent_payment($agent_pay_data,array('payment_id'=>$payment_id,'agent_id'=>$agent_id,'booking_id'=>$booking_id)); if($updated){ //echo $booking_code;die; $payment_details=array( 'details_type'=>'agent_payment', 'details_payment_type'=>$booking_type, 'details_type_text'=>($paymet_balance>0)?"Agent Commission [{$booking_code}] Balance Payment":"Agent Commission [{$booking_code}] Payment", 'details_payment_type'=>$booking_type, 'details_payment_id'=>$payment_data->payment_id, 'details_type_id'=>$booking_id, 'details_emp_id'=>$this->user_id, 'details_inst_id'=>$inst_id, 'details_stu_id'=>$student_id, 'details_parent_inst_id'=>$parent_inst_id, 'details_agent_id'=>$agent_id, 'details_sess_id'=>$booking_session_id, 'details_course_id'=>$booking_course_id, 'details_subject_id'=>$booking_subject_id, 'details_amount'=>$agent_amount, 'details_discount_amount'=>'0', 'details_payment_platform'=>'cash', 'details_txn_id'=>ge_rand_code('TXN'.$inst_id.$booking_id,3,TRUE), 'details_order_id'=>($paymet_balance>0)?$booking_code.'_agent_bal':$booking_code.'_agent', 'details_order_code'=>$booking_code, 'details_accounting_type'=>'expenditure', 'details_status'=>'success', 'details_msg'=>'Cash Payment', 'details_created_by_type'=>$inst_type, 'details_created_by'=>$this->user_id, 'details_payment_note'=>(!empty($full_pay_note))?$full_pay_note:null, 'details_created_at'=>$payment_date, 'details_created_at_actual'=>date('Y-m-d') ); // print_obj($payment_details);die; $this->fm->store_payment_details($payment_details); if($paymet_balance>0){ $balance_detaila=array( 'inst_id'=>$inst_id, 'inst_parent_id'=>$parent_inst_id, 'inst_stu_id'=>$payment_data->stu_id, 'inst_session_id'=>$booking_session_id, 'inst_course_id'=>$booking_course_id, 'inst_agent_id'=>$agent_id, 'inst_payment_id'=>$payment_id, 'inst_payment_total'=>$agent_amount, 'inst_payment_balance'=>$total_payment_balance, 'inst_balance_paid'=>'no', 'inst_balance_type'=>'agent_balance', 'created_at'=>date('Y-m-d'), 'created_by'=>$this->user_id, 'created_by_type'=>$this->user_type ); $this->fm->store_installments_balance($balance_detaila); } $total_payments=$this->fm->_get_payments_total(array('details_agent_id'=>$agent_id,'details_type'=>'agent_payment','details_inst_id'=>$inst_id)); $total_payments_due=$this->fm->_get_agent_payments_total(array('agent_id'=>$agent_id,'amount_paid'=>'no','inst_id'=>$inst_id)); //print_obj($total_payments);die; $return['total_payments']=(!empty($total_payments[0]) && !empty($total_payments[0]->total))?number_format($total_payments[0]->total,2):'0.00'; $return['total_payments_due']=(!empty($total_payments_due[0]) && !empty($total_payments_due[0]->total))?number_format($total_payments_due[0]->total,2):'0.00'; $return['success']='Payment done.'; }else{ $return['error']='Payment can not be proceessed at this time.try again later.'; } } }else if($full_pay_amount>$amount_value){ $return['error']='Please check the amount.'; } // if($payment_data->booking_type=='seat_booking'){ // $booking_data=$this->adm->get_seat_booking_data(array('booking_id'=>$booking_id)); // $student_data=$this->um->get_students(array('stu_id'=>$booking_data->booking_stu_profile_id)); // $booking_id=$booking_id; // $booking_code=$booking_data->booking_code; // $booking_course_id=$booking_data->booking_course_id; // $booking_session_id=$booking_data->booking_sess_id; // $booking_subject_id=$booking_data->booking_subject_id; // $student_id=$student_data->stu_user_id; // $payment_order_id=$booking_code.'_agt_'.date('Ymd'); // $details_payment_type='seatbooking_fees'; // }else if($payment_data->booking_type=='admission'){ // $booking_id=$booking_id; // $booking_code=$payment_data->booking_code; // $booking_course_id=$payment_data->course_id; // $booking_session_id=$payment_data->session_id; // $booking_subject_id=$payment_data->subject_id; // $student_id=$payment_data->stu_id; // $payment_order_id=$booking_code; // $details_payment_type='admission_agent_fees'; // } // else{ // $booking_data=array(); // $booking_code=null; // $booking_course_id=''; // $booking_session_id=''; // $booking_subject_id=''; // $student_id=''; // $details_payment_type=''; // } }else{ $return['error']='Payment data not found'; } }else{ $return['error']='Data manipulation not permitted'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onAddAgentpayment(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $admission_id=post_data('admission_id'); $agent_id=post_data('agent_id'); $agent_commission=post_data('agent_commission'); if(!empty($admission_id) && !empty($agent_id)){ $agent_id=decode_data($agent_id); $admission_id=decode_data($admission_id); if(is_numeric($admission_id) && is_numeric($agent_id)){ $admission_data=$this->adm->get_admission_data(array('admission_id'=>$admission_id)); if(!empty($admission_data)){ if(!empty($agent_id)){ if(!empty($agent_commission) && (is_double($agent_commission) || is_numeric($agent_commission))){ $agent_data=$this->um->get_user(array('agent_id'=>$agent_id),'agent'); $agent_commision_preset=$this->sm->get_agent_commission_settings(array('com_inst_id'=>$admission_data->admission_inst_id,'com_session_id'=>$admission_data->admission_sess_id,'com_course_id'=>$admission_data->admission_course_id)); if(!empty($agent_commision_preset)){ if($agent_commission<=$agent_commision_preset->com_max_value){ $agent_commision_error=''; }else{ $agent_commision_error='Agent commission can not exceeds of max commission ₹ '.number_format($agent_commision_preset->com_max_value,2).'.'; } }else{ $agent_commision_error='Agent commission presets not found for this session and course but '; } if(empty($agent_commision_error)){ $payment_booking_data=$this->fm->get_agent_payment(array('agent_id'=>$agent_id,'booking_id'=>$admission_data->admission_id,'booking_type'=>'admission')); if(empty($payment_booking_data)){ $details_to_store=array( 'agent_id'=>$agent_data->agent_user_id, 'booking_id'=>$admission_data->admission_id, 'booking_type'=>'admission', 'stu_id'=>$admission_data->admission_stu_id, 'booking_code'=>$admission_data->admission_code.'_agt_'.date('Ymd'), 'session_id'=>$admission_data->admission_sess_id, 'course_id'=>$admission_data->admission_course_id, 'subject_id'=>$admission_data->admission_subject_id, 'inst_id'=>$admission_data->admission_inst_id, 'inst_parent_id'=>$admission_data->admission_inst_parent_id, 'amount_value'=>$agent_commission, 'amount_paid'=>'no', 'amount_created_at'=>date('Y-m-d H:i:s') ); $inserted=$this->fm->store_agent_payment($details_to_store); if($inserted){ $return['success']='Agent commission has been set'; }else{ $return['error']='Agent commission has not been set'; } }else{ $return['error']='Agent payment already set for this admission'; } }else{ $return['error']=$agent_commision_error; } }else{ $return['error']='Enter proper value for the amount.'; } }else{ $return['error']='Agent data not foud in the system.'; } }else{ $return['error']='Admission data not found in the system'; } }else{ $return['error']='Data manipulation not allowed 1'; } }else{ $return['error']='Data manipulation not allowed 2'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onBuildAdmissionPaymentForm(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $session_id=post_data('_session'); $inst_id=$this->data['userdata']->user_id; $session_fees_data=array(); $session_fees_types=array(); $session_data=$this->sessm->get_session(array('session_id'=>$session_id)); if(!empty($session_data)){ $fees_types=$this->fm->__get_fees_type(array('fees_type_inst_id'=>$inst_id,'fees_type_group'=>'Admission'),FALSE); if(!empty($fees_types)){ foreach ($fees_types as $key => $value) { $session_fees_types[]=array( 'fees_type_id'=>$value->fees_type_id, 'fees_type'=>$value->fees_type, 'fees_value'=>$value->fees_value ); } } //print_obj($session_fees_types);die; if($session_data->session_duration_type=='yearwise'){ $session_years=$this->sessm->get_session_year(array('year_session_id'=>$session_id),FALSE); //print_obj($session_years);die; if(!empty($session_data)){ foreach ($session_years as $k => $v) { $session_fees_data[]=array( 'session_year'=>$v->year_value, 'session_fees_types'=>$session_fees_types ); } } } $this->data['session_fees_data']=$session_fees_data; //print_obj($this->data['session_fees_data']);die; $return['payment_form']=$this->theme->view('_pages/admission/vw_admission_payment_form',$this->data,true); json_headers($return); }else{ $return['']; } }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } public function onUpdateAdmissionData(){ if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){ if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){ $admission_id=post_data('admission_id'); $student_id=post_data('student_id'); $admission_date=post_data('admission_date'); $admission_subject=post_data('admission_subject'); if(!empty($student_id) && !empty($admission_id)){ $student_id=decode_data($student_id); $admission_id=decode_data($admission_id); $admission_data=$this->adm->_get_admission_data(array('admission_id'=>$admission_id)); if(!empty($admission_data)){ if(!empty($admission_date)){ $data_to_update['admission_date']=date('Y-m-d',strtotime($admission_date)); } if(!empty($admission_subject) && $admission_subject>0){ $data_to_update['admission_subject_id']=$admission_subject; } $data_to_update['updated_at']=date('Y-m-d'); $data_to_update['updated_by']=decode_data(session_userdata('admin_id')); $updated=$this->adm->update_admission_data($data_to_update,array('admission_id'=>$admission_data->admission_id)); if($updated){ $return['success']='Admission data updated successfully'; }else{ $return['error']='Admission data not updated.'; } }else{ $return['error']='Admission data not found.'; } }else{ $return['error']='Error occurred'; } json_headers($return); }else{ redirect($this->data['base_url']); } }else{ redirect($this->data['base_url']); } } }