diff --git a/app/Http/Controllers/DoctorController.php b/app/Http/Controllers/DoctorController.php index 84477fe2..87164e92 100644 --- a/app/Http/Controllers/DoctorController.php +++ b/app/Http/Controllers/DoctorController.php @@ -11,7 +11,6 @@ class DoctorController extends Controller { public function __construct() { - $this->middleware('auth'); $this->_service = 'ums'; $this->_module = 'contact'; $this->_viewname = 'doctor'; @@ -21,7 +20,15 @@ class DoctorController extends Controller public function list(Request $request) { - $response = LambdaRequest::signedrequest('get', $this->_service, $this->_module . '/get_my_contacts'); + $post = $request->input(); + $token = $request->header('Authorization'); + $token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZWEyOGRhNjktNTM3Mi00OTNkLThjYzYtNmQ0Y2NlZDk1ZDMwIiwibmFtZSI6IlJhdmkgR3VsaGFuZSIsImZpcnN0bmFtZSI6IlJhdmkiLCJsYXN0bmFtZSI6Ikd1bGhhbmUiLCJlbWFpbCI6InJhdmlndWxoYW5lMTk4M0BnbWFpbC5jb20iLCJwaG9uZSI6Ijk4MjM0ODgxMzgiLCJkZXNpZ25hdGlvbiI6Ik5TTSIsImhpZXJhcmNoeSI6ImQzNzliOGI1LTQ4YzMtNDY0ZS1hMThlLWQyYjdkOTk1MWY1YiIsImF2YXRhciI6Imh0dHBzOi8vdWktYXZhdGFycy5jb20vYXBpLz9iYWNrZ3JvdW5kPXJhbmRvbSZuYW1lPVJhdmkgR3VsaGFuZSIsInBhcnRpdGlvbiI6InJhcHBvcnQtcmFwcG9ydCIsImRvbWFpbiI6InJhcHBvcnQiLCJhcHBsaWNhdGlvbiI6InJhcHBvcnQiLCJyb2xlcyI6WyIyYzJkMTg4YS03OWFiLTQ4NmQtOWYwOS0zYWYxNmRlMWI0YTIiXSwiZ3JvdXBzIjpbXSwidGVhbXMiOlsiMTY1MDM0NTI3My0wZjk3NWIxMi1hMDVhLTQwNzctYWY1Yy1lNGIxZDBlNTk0YWQiXSwiYWxsX2RhdGFfYWNjZXNzIjp0cnVlfSwicGVybWlzc2lvbnMiOlsicm9sZXNfY3JlYXRlIiwidXNlcnNfY3JlYXRlIiwidXNlcnNfdXBkYXRlIiwidXNlcnNfZ2V0X2FsbCIsInVzZXJzX2dldF9vbmUiLCJ1c2Vyc19kZWxldGUiLCJ1c2Vyc19kcm9wZG93biIsInVzZXJzX3Byb2ZpbGUiLCJ1c2Vyc19zYXZlcHJvZmlsZSIsInJvbGVzX3VwZGF0ZSIsInJvbGVzX2dldF9hbGwiLCJyb2xlc19nZXRfb25lIiwicm9sZXNfZGVsZXRlIiwicm9sZXNfZHJvcGRvd24iLCJncm91cF9jcmVhdGUiLCJncm91cF91cGRhdGUiLCJncm91cF9nZXRfYWxsIiwiZ3JvdXBfZ2V0X29uZSIsImdyb3VwX2RlbGV0ZSIsImdyb3VwX2Ryb3Bkb3duIiwidGVhbV9jcmVhdGUiLCJ0ZWFtX3VwZGF0ZSIsInRlYW1fZ2V0X2FsbCIsInRlYW1fZ2V0X29uZSIsInRlYW1fZGVsZXRlIiwidGVhbV9kcm9wZG93biIsInRlYW1fcGxheWVyX2NyZWF0ZSIsInRlYW1fcGxheWVyX3VwZGF0ZSIsInRlYW1fcGxheWVyX2RlbGV0ZSIsImNoYW5uZWxfY3JlYXRlIiwiY2hhbm5lbF91cGRhdGUiLCJjaGFubmVsX2dldF9hbGwiLCJjaGFubmVsX2dldF9vbmUiLCJjaGFubmVsX2RlbGV0ZSIsImNoYW5uZWxfZHJvcGRvd24iLCJkb21haW5fY3JlYXRlIiwiZG9tYWluX3VwZGF0ZSIsImRvbWFpbl9nZXRfb25lIiwiaGllcmFyY2h5X2NyZWF0ZSIsImhpZXJhcmNoeV91cGRhdGUiLCJoaWVyYXJjaHlfZ2V0X2FsbCIsImhpZXJhcmNoeV9nZXRfb25lIiwiaGllcmFyY2h5X2RlbGV0ZSIsIm1hZ2F6aW5lX2NyZWF0ZSIsIm1hZ2F6aW5lX3VwZGF0ZSIsIm1hZ2F6aW5lX2dldF9hbGwiLCJtYWdhemluZV9nZXRfb25lIiwibWFnYXppbmVfZGVsZXRlIiwibWFnYXppbmVfZHJvcGRvd24iLCJtYWdhemluZV9kYXNoYm9hcmQiLCJtYWdfbWVkaWFfY3JlYXRlIiwibWFnX21lZGlhX3VwZGF0ZSIsIm1hZ19tZWRpYV9nZXRfYWxsIiwibWFnX21lZGlhX2dldF9vbmUiLCJtYWdfbWVkaWFfZGVsZXRlIiwibWFnX21lZGlhX3ZpZXdzX2NyZWF0ZSIsIm1hZ19tZWRpYV92aWV3c191cGRhdGUiLCJtYWdfbWVkaWFfdmlld3NfZ2V0X2FsbCIsIm1hZ19tZWRpYV92aWV3c19nZXRfb25lIiwibWFnX21lZGlhX3ZpZXdzX2RlbGV0ZSIsIm1hZ19tZWRpYV9saWtlIiwibWFnX21lZGlhX2xpa2VzIiwibWFnX21lZGlhX2NvbW1lbnQiLCJtYWdfbWVkaWFfY29tbWVudHMiLCJ3YWxsbWVzc2FnZV9jcmVhdGUiLCJ3YWxsbWVzc2FnZV91cGRhdGUiLCJ3YWxsbWVzc2FnZV9nZXRfYWxsIiwid2FsbG1lc3NhZ2VfZ2V0X29uZSIsIndhbGxtZXNzYWdlX2RlbGV0ZSIsIndhbGxtZXNzYWdlX2xpa2UiLCJ3YWxsbWVzc2FnZV9saWtlcyIsIndhbGxtZXNzYWdlX2NvbW1lbnQiLCJ3YWxsbWVzc2FnZV9jb21tZW50cyIsIndhbGxiYW5uZXJfY3JlYXRlIiwid2FsbGJhbm5lcl91cGRhdGUiLCJ3YWxsYmFubmVyX2dldF9hbGwiLCJ3YWxsYmFubmVyX2dldF9vbmUiLCJ3YWxsYmFubmVyX2RlbGV0ZSIsIndhbGxiYW5uZXJfZGFzaGJvYXJkIiwibWV0cmljX2NyZWF0ZSIsIm1ldHJpY191cGRhdGUiLCJtZXRyaWNfZ2V0X2FsbCIsIm1ldHJpY19nZXRfb25lIiwibWV0cmljX2RlbGV0ZSIsImluamVzdGlvbl9tYXBwaW5nX2NyZWF0ZSIsImluamVzdGlvbl9tYXBwaW5nX3VwZGF0ZSIsImluamVzdGlvbl9tYXBwaW5nX2dldF9hbGwiLCJpbmplc3Rpb25fbWFwcGluZ19nZXRfb25lIiwiaW5qZXN0aW9uX21hcHBpbmdfZGVsZXRlIiwibWV0cmljX2luamVzdCIsIm1ldHJpY192aWV3X2NyZWF0ZSIsIm1ldHJpY192aWV3X3VwZGF0ZSIsIm1ldHJpY192aWV3X2dldF9hbGwiLCJtZXRyaWNfdmlld19nZXRfb25lIiwibWV0cmljX3ZpZXdfZGVsZXRlIiwibWFnYXppbmVfbGlzdCIsIm1hZ2F6aW5lX2RldGFpbHMiLCJtYWdfbWVkaWFfZGV0YWlscyIsIndhbGxtZXNzYWdlX2xpc3QiLCJ3YWxsbWVzc2FnZV9kZXRhaWxzIiwibWV0cmljX3JlcG9ydF9saXN0IiwibWV0cmljX3JlcG9ydF92aWV3IiwiYXBwcmVjaWF0aW9uX2NhdGVnb3J5X2NyZWF0ZSIsImFwcHJlY2lhdGlvbl9jYXRlZ29yeV91cGRhdGUiLCJhcHByZWNpYXRpb25fY2F0ZWdvcnlfZ2V0X2FsbCIsImFwcHJlY2lhdGlvbl9jYXRlZ29yeV9nZXRfb25lIiwiYXBwcmVjaWF0aW9uX2NhdGVnb3J5X2RlbGV0ZSIsImFwcHJlY2lhdGlvbl9pbWFnZV9jcmVhdGUiLCJhcHByZWNpYXRpb25faW1hZ2VfdXBkYXRlIiwiYXBwcmVjaWF0aW9uX2ltYWdlX2dldF9hbGwiLCJhcHByZWNpYXRpb25faW1hZ2VfZ2V0X29uZSIsImFwcHJlY2lhdGlvbl9pbWFnZV9kZWxldGUiLCJiYWRnZV9saXN0X2NyZWF0ZSIsImJhZGdlX2xpc3RfdXBkYXRlIiwiYmFkZ2VfbGlzdF9nZXRfYWxsIiwiYmFkZ2VfbGlzdF9nZXRfb25lIiwiYmFkZ2VfbGlzdF9kZWxldGUiLCJyZXdhcmRfY3JlYXRlIiwicmV3YXJkX3VwZGF0ZSIsInJld2FyZF9nZXRfYWxsIiwicmV3YXJkX2dldF9vbmUiLCJyZXdhcmRfZGVsZXRlIiwicmV3YXJkX2NhdGVnb3J5X2NyZWF0ZSIsInJld2FyZF9jYXRlZ29yeV91cGRhdGUiLCJyZXdhcmRfY2F0ZWdvcnlfZ2V0X2FsbCIsInJld2FyZF9jYXRlZ29yeV9nZXRfb25lIiwicmV3YXJkX2NhdGVnb3J5X2RlbGV0ZSIsInJld2FyZF9vcmRlcl9jcmVhdGUiLCJyZXdhcmRfb3JkZXJfdXBkYXRlIiwicmV3YXJkX29yZGVyX2dldF9hbGwiLCJyZXdhcmRfb3JkZXJfZ2V0X29uZSIsInJld2FyZF9vcmRlcl9kZWxldGUiLCJmb3JtZW50aXR5X2NyZWF0ZSIsImZvcm1lbnRpdHlfdXBkYXRlIiwiZm9ybWVudGl0eV9nZXRfYWxsIiwiZm9ybWVudGl0eV9nZXRfb25lIiwiZm9ybWVudGl0eV9kZWxldGUiLCJmb3JtcXVlc3Rpb25fY3JlYXRlIiwiZm9ybXF1ZXN0aW9uX3VwZGF0ZSIsImZvcm1xdWVzdGlvbl9nZXRfYWxsIiwiZm9ybXF1ZXN0aW9uX2dldF9vbmUiLCJmb3JtcXVlc3Rpb25fZGVsZXRlIiwiZm9ybWFjdGlvbl9jcmVhdGUiLCJmb3JtYWN0aW9uX3VwZGF0ZSIsImZvcm1hY3Rpb25fZ2V0X2FsbCIsImZvcm1hY3Rpb25fZ2V0X29uZSIsImZvcm1hY3Rpb25fZGVsZXRlIiwiZm9ybWFjdGlvbl9saXN0IiwiZm9ybWVudGl0eV9hcHByb3ZhbCIsImZvcm1lbnRpdHlfYXBwcm92ZXJlamVjdCIsImNvbnRhY3RfY3JlYXRlIiwiY29udGFjdF91cGRhdGUiLCJjb250YWN0X2dldF9hbGwiLCJjb250YWN0X2dldF9vbmUiLCJjb250YWN0X2RlbGV0ZSIsImNvbnRhY3RhdHRyaWJ1dGVfY3JlYXRlIiwiY29udGFjdGF0dHJpYnV0ZV91cGRhdGUiLCJjb250YWN0YXR0cmlidXRlX2dldF9hbGwiLCJjb250YWN0YXR0cmlidXRlX2dldF9vbmUiLCJjb250YWN0YXR0cmlidXRlX2RlbGV0ZSIsImZvcm1wcm9kdWN0X2NyZWF0ZSIsImZvcm1wcm9kdWN0X3VwZGF0ZSIsImZvcm1wcm9kdWN0X2dldF9hbGwiLCJmb3JtcHJvZHVjdF9nZXRfb25lIiwiZm9ybXByb2R1Y3RfZGVsZXRlIiwibm90aWZpY2F0aW9uX2xpc3QiLCJyZW1pbmRlcl9jcmVhdGUiLCJyZW1pbmRlcl91cGRhdGUiLCJyZW1pbmRlcl9nZXRfYWxsIiwicmVtaW5kZXJfZ2V0X29uZSIsInJlbWluZGVyX2RlbGV0ZSIsIndpZGdldHNfY3JlYXRlIiwid2lkZ2V0c191cGRhdGUiLCJ3aWRnZXRzX2dldF9hbGwiLCJ3aWRnZXRzX2dldF9vbmUiLCJ3aWRnZXRzX2RlbGV0ZSIsImFsbF9kYXRhX2FjY2VzcyIsImZvcm1leHBvcnRzX2NyZWF0ZSIsImZvcm1leHBvcnRzX3VwZGF0ZSIsImZvcm1leHBvcnRzX2dldF9hbGwiLCJmb3JtZXhwb3J0c19nZXRfb25lIiwiZm9ybWV4cG9ydHNfZGVsZXRlIiwiY29udGVzdF9jcmVhdGUiLCJjb250ZXN0X3VwZGF0ZSIsImNvbnRlc3RfZ2V0X2FsbCIsImNvbnRlc3RfZ2V0X29uZSIsImNvbnRlc3RfZGVsZXRlIiwiY29udGVzdF9kYXNoYm9hcmQiLCJjb250ZXN0X2xpc3QiLCJjb250ZXN0X2RldGFpbHMiLCJjb250ZXN0X3Jlc3BvbnNlX3JlY29yZCIsInBhcmFtZXRlcl9jcmVhdGUiLCJwYXJhbWV0ZXJfdXBkYXRlIiwicGFyYW1ldGVyX2dldF9hbGwiLCJwYXJhbWV0ZXJfZ2V0X29uZSIsInBhcmFtZXRlcl9kZWxldGUiLCJjb250ZXN0X3Jlc3BvbnNlX2NyZWF0ZSIsImNvbnRlc3RfcmVzcG9uc2VfdXBkYXRlIiwiY29udGVzdF9yZXNwb25zZV9nZXRfYWxsIiwiY29udGVzdF9yZXNwb25zZV9nZXRfb25lIiwiY29udGVzdF9yZXNwb25zZV9kZWxldGUiLCJwZXJzb25hbGl6YXRpb25fY3JlYXRlIiwicGVyc29uYWxpemF0aW9uX3VwZGF0ZSIsInBlcnNvbmFsaXphdGlvbl9nZXRfYWxsIiwicGVyc29uYWxpemF0aW9uX2dldF9vbmUiLCJwZXJzb25hbGl6YXRpb25fZGVsZXRlIiwic3VydmV5X2NyZWF0ZSIsInN1cnZleV91cGRhdGUiLCJzdXJ2ZXlfZ2V0X2FsbCIsInN1cnZleV9nZXRfb25lIiwic3VydmV5X2RlbGV0ZSIsInN1cnZleXF1ZXN0aW9uX2NyZWF0ZSIsInN1cnZleXF1ZXN0aW9uX3VwZGF0ZSIsInN1cnZleXF1ZXN0aW9uX2dldF9hbGwiLCJzdXJ2ZXlxdWVzdGlvbl9nZXRfb25lIiwic3VydmV5cXVlc3Rpb25fZGVsZXRlIiwiY2FtcGFpZ25fY3JlYXRlIiwiY2FtcGFpZ25fdXBkYXRlIiwiY2FtcGFpZ25fZ2V0X2FsbCIsImNhbXBhaWduX2dldF9vbmUiLCJjYW1wYWlnbl9kZWxldGUiLCJjYW1wYWlnbnJ1bGVfY3JlYXRlIiwiY2FtcGFpZ25ydWxlX3VwZGF0ZSIsImNhbXBhaWducnVsZV9nZXRfYWxsIiwiY2FtcGFpZ25ydWxlX2dldF9vbmUiLCJjYW1wYWlnbnJ1bGVfZGVsZXRlIl0sInJvbGVzIjpbIjJjMmQxODhhLTc5YWItNDg2ZC05ZjA5LTNhZjE2ZGUxYjRhMiJdLCJpYXQiOjE2NzUzMjA1NTIsImV4cCI6MTY3NTkyNTM1Mn0.0jvJbbgyAN8pdWR19KoMj0oyU91ZubSszLAXiZjVkbI'; + if ($token != '') { + $request->session()->put('metric_access_key', $token); + } else { + $token = $request->session()->get('metric_access_key'); + } + $response = LambdaRequest::getrequest($this->_service, $this->_module . '/get_my_contacts', [], $token); $fields = $this->get_list_fields(); return $this->view('list')->with([ 'title' => $this->_title, @@ -32,6 +39,42 @@ class DoctorController extends Controller ]); } + public function form($type, $id = null) + { + $token = $this->_request->session()->get('metric_access_key'); + $values = []; + if ($type == 'edit') { + $response = LambdaRequest::getrequest($this->_service, $this->_module . '/get_one', ['id' => $id], $token); + $values = $response->data->item; + } + $data = $this->_beforeform($type, $values); + $fields = $this->get_form_fields($type, $values, $token); + return $this->view('form')->with([ + 'title' => $this->_title, + 'mode' => $type, + 'fields' => $fields, + 'base_url' => $this->_base_url, + 'item' => $values, + ]); + } + + public function save($type, $request) + { + $token = $request->session()->get('metric_access_key'); + if ($type == 'edit') { + $url = '/update'; + } else { + $url = '/create'; + } + $data = $this->_beforesave($type, $request); + $response = LambdaRequest::postrequest($this->_service, $this->_module . $url, $data, $token); + if ($response->statusCode == 200 && $response->status == "success") { + return redirect($this->_base_url . 's')->withMessage('Successfully Saved !!!'); + } else { + return redirect($this->_base_url . 's')->withError('Some Error occured! ' . $response->body->message); + } + } + public function createdoctor(Request $request) { return Doctor::create($request->only(['msl_code', 'email', 'contact_id', 'name', 'phone']))->id; @@ -46,17 +89,33 @@ class DoctorController extends Controller ]; } - protected function get_form_fields($type, $values) + public function action($action, Request $request) { - $response = LambdaRequest::signedrequest('get', 'ums', 'contactattribute/get_all'); - // echo '
'; print_r($response); exit;
-
+ $this->_request = $request;
+ switch ($action) {
+ case 'edit':
+ return $this->form('edit', $request->input('id'));
+ break;
+ case 'addnew':
+ return $this->form('new');
+ break;
+ case 'delete':
+ return $this->delete($request->input('id'));
+ break;
+ default:
+ return $this->{$action}($request);
+ break;
+ }
+ }
+ protected function get_form_fields($type, $values, $token)
+ {
+ $response = LambdaRequest::getrequest('ums', 'contactattribute/get_all', [], $token);
$fields = [
'name' => ['title' => 'Name', 'type' => 'text', 'required' => true],
'email' => ['title' => 'Email', 'type' => 'email', 'required' => true],
'phone' => ['title' => 'Phone', 'type' => 'text', 'required' => true],
'msl_code' => ['title' => 'MSL Code', 'type' => 'text'],
- 'status' => ['title' => 'Status', 'type' => 'select', 'required' => true, 'values' => ['active' => 'Active', 'disabled' => 'Disabled']],
+ 'status' => ['title' => 'Status', 'type' => 'select', 'required' => true, 'values' => ['active' => 'Active', 'disabled' => 'Disabled']],
];
foreach ($response->data->items as $item) {
@@ -71,4 +130,15 @@ class DoctorController extends Controller
return $fields;
}
-}
+ public function delete($id)
+ {
+ $token = $this->_request->session()->get('metric_access_key');
+
+ $response = LambdaRequest::getrequest($this->_service, $this->_module . '/delete', ['id' => $id], $token);
+ if ($response->statusCode == 200 && $response->status == "success") {
+ return redirect($this->_base_url . 's')->withMessage('Successfully Marked Deleted !!!');
+ } else {
+ return redirect($this->_base_url . 's')->withError('Some Error occured! ' . $response->body->message);
+ }
+ }
+}
\ No newline at end of file
diff --git a/routes/web.php b/routes/web.php
index 80d018fe..dcae85b6 100755
--- a/routes/web.php
+++ b/routes/web.php
@@ -11,6 +11,7 @@ use App\Http\Controllers\RolesController;
use App\Http\Controllers\MagazineController;
use App\Http\Controllers\HierarchyController;
use App\Http\Controllers\DomainController;
+use App\Http\Controllers\DoctorController;
use App\Http\Controllers\TeamController;
use App\Http\Controllers\MetricController;
use App\Http\Controllers\WallController;
@@ -86,6 +87,7 @@ $modules = ['user' => UserController::class,
'magazine' => MagazineController::class,
'hierarchy' => HierarchyController::class,
'domain' => DomainController::class,
+ 'doctor' => DoctorController::class,
'team' => TeamController::class,
'metric' => MetricController::class,
'metricmapping' => MetricmappingController::class,
@@ -155,7 +157,9 @@ Route::get('/form/{finfo}', [FormController::class, 'handle']);
Route::get('/srvey/{finfo}', [FormController::class, 'surveyhandle']);
Route::post('/srvey/ajaxsubmit', [FormController::class, 'ajaxsurveysubmit']);
-Route::post('/srvey/ciplatodoctor', [SurveyController::class, 'ajaxgnpsubmit']);
+Route::get('/srvey/ciplatodoctor', [SurveyController::class, 'ajaxgnpsubmit']);
+
+Route::post('doctor/submitnew', [DoctorController::class, 'createdoctor']);
Route::get('/', [RoutingController::class, 'index'])->name('root');
Route::get('{any}', [RoutingController::class, 'root'])->name('any');