From 4e0544374769e7b4431a0e49b6d5926933c05f37 Mon Sep 17 00:00:00 2001 From: Velz2020 Date: Tue, 19 Nov 2019 19:18:30 +0530 Subject: [PATCH] KT CONTRIBUTE API`S --- api/application/config/constants.php | 3 + api/application/config/routes.php | 2 + .../controllers/School_requirement.php | 135 ++++++++++++++++++ .../controllers/User_management.php | 2 + .../models/School_requirement_model.php | 5 + .../models/User_management_model.php | 5 + 6 files changed, 152 insertions(+) diff --git a/api/application/config/constants.php b/api/application/config/constants.php index 3cba046..ebd0e6f 100644 --- a/api/application/config/constants.php +++ b/api/application/config/constants.php @@ -134,6 +134,9 @@ defined('CSR_TXN_DETAILS') OR define('CSR_TXN_DETAILS','csr_txn_details'); defined('SCHOOLNEW_INFRA_DETAIL') OR define('SCHOOLNEW_INFRA_DETAIL','schoolnew_infra_detail'); defined('CSR_MAIL_CONTENTS') OR define('CSR_MAIL_CONTENTS','csr_mail_contents'); defined('SCHOOLNEW_BASICINFO') OR define('SCHOOLNEW_BASICINFO','schoolnew_basicinfo'); +defined('CSR_SCHOOL_REQ_UPDATES') OR define('CSR_SCHOOL_REQ_UPDATES','csr_school_req_updates'); +defined('CSR_KT_CONTRIBUTIONS') OR define('CSR_KT_CONTRIBUTIONS','csr_kt_contributions'); +defined('CSR_VOLUNTEER_INFO') OR define('CSR_VOLUNTEER_INFO','csr_volunteer_info'); // APP SPECIFIC CONSTANTS diff --git a/api/application/config/routes.php b/api/application/config/routes.php index de7a20a..bc42a75 100644 --- a/api/application/config/routes.php +++ b/api/application/config/routes.php @@ -61,6 +61,7 @@ $route['forgetPwd'] = 'user_management/forgetPwd'; $route['checkExistCredentials'] = 'user_management/checkExistCredentials'; $route['csrUserLogin'] = 'user_management/csrUserLogin'; $route['csrContribute'] = 'school_requirement/csrContribute'; +$route['csrKTContribute'] = 'school_requirement/csrKTContribute'; $route['generateIOBPayToken'] = 'iobpay/generateIOBPayToken'; $route['receiveIOBPAYResponse'] = 'iobpay/receiveIOBPAYResponse'; $route['testRedirect'] = 'iobpay/testRedirect'; @@ -68,6 +69,7 @@ $route['checkTxnStatus'] = 'iobpay/checkTxnStatus'; $route['getFilterDistricts'] = 'school_requirement/getFilterDistricts'; $route['(getFilterSchools/:any)'] = 'school_requirement/getFilterSchools'; +$route['(getStatusUpdates/:any)'] = 'school_requirement/getStatusUpdates'; $route['getFilterMaterials'] = 'school_requirement/getFilterMaterials'; $route['csrDashboardContent'] = 'school_requirement/csrDashboardContent'; diff --git a/api/application/controllers/School_requirement.php b/api/application/controllers/School_requirement.php index b375f17..1dc51d6 100644 --- a/api/application/controllers/School_requirement.php +++ b/api/application/controllers/School_requirement.php @@ -290,6 +290,141 @@ class school_requirement extends REST_Controller $this->response($data,REST_Controller::HTTP_OK); } + public function getStatusUpdates_get() + { + $req_id = $this->uri->segment(2); + $res_data = $this->school_requirement_model->getStatusUpdates($req_id); + + $data['dataStatus'] = true; + $data['status'] = REST_Controller::HTTP_OK; + $data['records'] = $res_data; + $this->response($data,REST_Controller::HTTP_OK); + } + + public function csrKTContribute_post() + { + // echo $this->getRandomPwd();die(); + $records = $this->post('records'); + //print_r($records); + $volunteer_info = isset($records['volunteer_info']) ? $records['volunteer_info'] : null; + unset($records['volunteer_info']); + $kt_id = null; + if(!$records['fk_user_id']) + { + //create new user + $pwd = $this->getRandomPwd(); + $user_data = array('name' => $records['name'],'email' => $records['email'],'mobile' => $records['mobile'],'password' => md5($pwd)); + $user_id = $this->school_requirement_model->saveRecords($user_data,CSR_USER); + if($user_id) + { + + $records['fk_user_id'] = $user_id; + + //send mail + $mail_configs = $this->school_requirement_model->selectCustomRecords(array('*'),array('mail_code' => 'REG2'),CSR_MAIL_CONTENTS); + if(count($mail_configs)) + { + $fromMail = $mail_configs[0]['from_mail']; + $display_name = $mail_configs[0]['display_name']; + $subject = $mail_configs[0]['subject']; + $tomail = $records['email']; + $content = $mail_configs[0]['content']; + $content = str_replace('{{user}}',$records['name'],$content); + $content = str_replace('{{pwd}}',$pwd,$content); + $this->load->helper('mymail'); + MYMAIL::sendmyMail($fromMail,$display_name, $tomail,$subject,$content); + } + + } + else + { + $data['dataStatus'] = false; + $data['status'] = REST_Controller::HTTP_NOT_FOUND; + $data['msg'] = 'Something went wrong! Try later'; + $this->response($data,REST_Controller::HTTP_OK); + } + } + //unset all params other than table fields + unset($records['name']); unset($records['email']); unset($records['mobile']); + + //make KT contrubute + if($records['kt_id']) + { + $kt_id = $this->school_requirement_model->updateRecords($records,CSR_KT_CONTRIBUTIONS,array('kt_id' => $records['kt_id'])); + if($kt_id) + { + if($records['con_type'] == 3 && $volunteer_info && count($volunteer_info)) + { + foreach ($volunteer_info as $key => $value) + { + + if($value['volunteer_info_id']) + { + $info_id = $this->school_requirement_model->updateRecords($value,CSR_VOLUNTEER_INFO,array('fk_kt_id' => $value['fk_kt_id'])); + } + else + { + $value['fk_kt_id'] = $kt_id; + $info_id = $this->school_requirement_model->saveRecords($value,CSR_VOLUNTEER_INFO); + } + } + } + } + } + else + { + $kt_id = $this->school_requirement_model->saveRecords($records,CSR_KT_CONTRIBUTIONS); + if($kt_id) + { + if($records['con_type'] == 3 && $volunteer_info && count($volunteer_info)) + { + + foreach ($volunteer_info as $key => $value) + { + + + if($value['volunteer_info_id']) + { + $info_id = $this->school_requirement_model->updateRecords($value,CSR_VOLUNTEER_INFO,array('fk_kt_id' => $value['fk_kt_id'])); + } + else + { + $value['fk_kt_id'] = $kt_id; + $info_id = $this->school_requirement_model->saveRecords($value,CSR_VOLUNTEER_INFO); + } + } + } + } + } + + + if($kt_id) + { + $data['dataStatus'] = true; + $data['status'] = REST_Controller::HTTP_OK; + $data['records'] = $kt_id; + $this->response($data,REST_Controller::HTTP_OK); + } + else + { + $data['dataStatus'] = false; + $data['status'] = REST_Controller::HTTP_NOT_FOUND; + $data['msg'] = 'Something went wrong! Try later'; + $this->response($data,REST_Controller::HTTP_OK); + } + } + + public function getRandomPwd() + { + $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $charactersLength = strlen($characters); + $randomString = ''; + for ($i = 0; $i < 8; $i++) { + $randomString .= $characters[rand(0, $charactersLength - 1)]; + } + return $randomString; + } + diff --git a/api/application/controllers/User_management.php b/api/application/controllers/User_management.php index 2adc1e6..ff12982 100644 --- a/api/application/controllers/User_management.php +++ b/api/application/controllers/User_management.php @@ -156,6 +156,8 @@ class user_management extends REST_Controller $contribution_data = $this->user_management_model->getContributionData($userid); + $kt_contribution_data = $this->user_management_model->getKTContributionData($userid); + if($user_data) { $data['dataStatus'] = true; diff --git a/api/application/models/School_requirement_model.php b/api/application/models/School_requirement_model.php index 849d77a..911c118 100644 --- a/api/application/models/School_requirement_model.php +++ b/api/application/models/School_requirement_model.php @@ -173,5 +173,10 @@ class school_requirement_model extends Custom_Model { } + function getStatusUpdates($req_id) + { + return $updates = $this->selectCustomRecords(array('*'),array('fk_req_id' => $req_id,'isactive' => 1),CSR_SCHOOL_REQ_UPDATES); + } + } \ No newline at end of file diff --git a/api/application/models/User_management_model.php b/api/application/models/User_management_model.php index 9a64f6e..5b530e5 100644 --- a/api/application/models/User_management_model.php +++ b/api/application/models/User_management_model.php @@ -65,5 +65,10 @@ class user_management_model extends Custom_Model { return $this->db->GET()->result_array(); } + function getKTContributionData($userid) + { + + } + } \ No newline at end of file