diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 61575bd..6c196dc 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -25,6 +25,7 @@ $routes->get('/digibko/v1/employers', 'BkoReports::employersList'); $routes->get('/digibko/v1/employers/signatory', 'BkoReports::signatoryList'); $routes->post('/digibko/v1/employers/signatory', 'BkoReports::signatoryAdd'); +$routes->patch('/digibko/v1/employers/signatory', 'BkoReports::signatoryUpdate'); $routes->post('/digibko/v1/employers/verify', 'Employers::verifyEmployer'); diff --git a/app/Controllers/BaseController.php b/app/Controllers/BaseController.php index 94aacfc..d011c6b 100644 --- a/app/Controllers/BaseController.php +++ b/app/Controllers/BaseController.php @@ -78,11 +78,9 @@ abstract class BaseController extends Controller protected function update_db($table_name, $update_data, $where_data) : array{ $row = []; - $this->db->table($table_name)->insert($insert_data); - + // bad $this->db->table($table_name)->where('id', '=', $where_data)->update($update_data); $query = $this->db->query("SELECT * FROM $table_name ORDER BY id DESC LIMIT 1"); $row = $query->getRowArray(); - // echo $row->name; return $row; } diff --git a/app/Controllers/BkoReports.php b/app/Controllers/BkoReports.php index 5bfbff8..e5ac35d 100644 --- a/app/Controllers/BkoReports.php +++ b/app/Controllers/BkoReports.php @@ -176,7 +176,62 @@ public function employersList() :ResponseInterface { return $this->respond($data, 200); } +public function signatoryUpdate():ResponseInterface{ + $data = $this->request->getRawInputVar(); + $loc = 100; + $signatory_uid = $data["signatory_uid"]; + $employer_id = $data["employer_id"]; + $result=[]; +/* + * { + "employer_id": "2", + "signatory_uid": "6f2e4489-fce3-4c72-9077-fbc9f2a07f68", + "name": "Olu Aupdate", + "email": "ameye+update@chiefsoft.com", + "title": "Director", + "phone": "016784574356" + }, + */ + if ( $signatory_uid !='') { + $selSigQr = "SELECT id FROM employers_signatory WHERE uid = '" . $signatory_uid . "' AND employer_id = ".$employer_id; + + $query = $this->db->query($selSigQr); + $row = $query->getResult('array'); + if ($row && $row[0]['id'] > 0) { + $signatory_id = $row[0]['id']; + $loc = 300; + $update_data['name'] = $data['name']; + $update_data['email'] = $data['email']; + $update_data['title'] = $data['title']; + $update_data['phone'] = $data['phone']; + + $sqlUpdtQr = "UPDATE employers_signatory + SET name='".$update_data['name']."', + email='".$update_data['email']."', + title='".$update_data['title']."', + phone='".$update_data['phone']."' + WHERE uid='$signatory_uid' AND id=".$signatory_id; + $this->db->query($sqlUpdtQr); + //$this->db->where('id', $signatory_id); + // $this->update_db('employers_signatory', $update_data, $signatory_id); + // $this->db->update('employers_signatory', $update_data, array('id' => $signatory_id)); + + } else { + $result = ['fail' => 'Not Updated.']; + } + } + + $result_data = [ + 'call_return' => '100', + 'loc' => $loc, + 'action' => 'patch', + 'data' => $data, + 'hh'=> $selSigQr, + 'result' =>$result + ]; + return $this->respond($result_data, 200); +} public function signatoryAdd():ResponseInterface{ /* $insert_data['employer_uid'] = $data['employer_uid'];