Files
digifi-mware/app/Controllers/Employers.php
T
CHIEFSOFT\ameye c948a6ae1f signatory uid
2024-06-16 18:11:12 -04:00

119 lines
4.8 KiB
PHP

<?php
namespace App\Controllers;
use CodeIgniter\HTTP\ResponseInterface;
class Employers extends BaseController
{
public function approvedEmployersList() :ResponseInterface {
$query = $this->db->query("SELECT uid,name FROM employer_sector");
$employer_sector = $query->getResult('array');
$query = $this->db->query("SELECT uid,name FROM salary_sources");
$salary_sources = $query->getResult('array');
$query = $this->db->query("SELECT * FROM employers WHERE signatory_count > 0 ORDER BY name ASC");
$row = $query->getResult('array');
$data = [
'call_return' => '100',
'salary_sources' => $salary_sources,
'employer_sector' => $employer_sector,
'records' => $row
];
return $this->respond($data, 200);
}
private function pickSignatory($employer_uid):array{
/*
digifi_db=# SELECT s.* FROM employers_signatory s LEFT JOIN employers e ON e.id =s.employer_id AND e.uid ='3a9ec95a-090c-4c98-bc01-e96d76b93952' ORDER BY s.id ASC LIMIT 1;
id | uid | employer_id | name | title | phone | email | added | updated
----+--------------------------------------+-------------+---------------+-------+------------+---------------------+----------------------------+----------------------------
2 | 6f2e4489-fce3-4c72-9077-fbc9f2a07f68 | 2 | OluSign ASign | Mr. | 6784574356 | ameye@chiefsoft.com | 2024-06-06 14:32:11.589329 | 2024-06-06 14:32:11.589329
(1 row)
*/
$signatoryQRy = "SELECT s.* FROM employers_signatory s LEFT JOIN employers e ON e.id =s.employer_id AND e.uid ='$employer_uid' ORDER BY s.id ASC LIMIT 1";
$query = $this->db->query($signatoryQRy);
$row = $query->getResult('array');
return $row[0];
}
public function verifyEmployer()
{
$data = $this->request->getPost();
if ($data['application_uid'] != '') {
$findEmp ="SELECT c.firstname,c.lastname,a.uid AS application_uid, a.* from applications a LEFT JOIN customers c ON c.uid =a.customer_uid WHERE a.status =2 AND a.uid = '".trim($data['application_uid'])."'";
log_message('error', "findEmp---=>" . $findEmp);
$query = $this->db->query($findEmp);
$row = $query->getResult('array');
$employer_uid = $row[0]['employer_uid'];
$application_uid = $row[0]['application_uid'];
$sigNatory = $this->pickSignatory($employer_uid);
if ($row[0]['uid']!='' && $application_uid !='' ){
log_message('error', "Call API---=>");
$api_data = $row[0];
$api_data["signatory_password"] = $this->randomPassword(); // "1000011";
$api_data["signatory_email"] = $sigNatory['email']; //"ameye+signatory@chiefsoft.com";
$api_data["signatory_name"] = $sigNatory['name']; //"Signatory Name";
$api_data["signatory_uid"] = $sigNatory['uid']; //"Signatory Name";
$api_data["processing_bank_name"] = "Processing Bank";
$api_data["processing_bank_email"] = "processingbank@email.com";
$udata = [
'employer_uid' => $employer_uid,
'password' => md5($api_data["signatory_password"]),
'username' => $api_data["signatory_email"],
'signatory_uid'=> $api_data["signatory_uid"]
];
$addedData = $this->insert_db('employer_checks',$udata);
$checkData = $this->APIcall("POST", "http://10.10.10.48:6332/api/verify/employer", json_encode($api_data));
}else{
log_message('error', "Not found API---=>");
}
//$addedData =[];
if( $addedData["uid"] ==''){
$response = [
'message' => 'Failure',
'call_return' => '100',
'token' => '',
'verify_data' => $checkData
];
return $this->fail($response, 500);
}
$response = [
'message' => 'Verification text sent to employer',
'call_return' => '100',
'verification_id' => $addedData["uid"],
'verify_data' => $checkData["res"]["data"]
];
// 'status' => $checkData["res"]["status"],
return $this->respond($response, 200);
} else {
$response = [
'message' => 'Failure',
'call_return' => '100',
'token' => ''
];
return $this->fail($response, 409);
}
//return json_encode( $response );
}
}