diff --git a/app/Http/Controllers/HierarchyController.php b/app/Http/Controllers/HierarchyController.php index ae2054d7..ea669a1e 100644 --- a/app/Http/Controllers/HierarchyController.php +++ b/app/Http/Controllers/HierarchyController.php @@ -4,6 +4,9 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests\LambdaRequest; use DB; +use Maatwebsite\Excel\Facades\Excel; +use App\Exports\InvoicesExport; +use Auth; class HierarchyController extends Controller { @@ -128,4 +131,90 @@ class HierarchyController extends Controller return \Redirect::back()->withMessage('Some Error occured!'); } } + + public function delete($id) { + $response = LambdaRequest::signedrequest('post', $this->_service, $this->_module.'/update', ['id' => $id, 'parent_id' => 'vacant', 'parents' => 'vacent' ]); + //echo '
'; print_r($response); exit;
+        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);
+        }
+    }
+
+    public function export(Request $request) {
+        $response = LambdaRequest::signedrequest('get', $this->_service, $this->_module.'/get_all', ['positions' => true, 'export' => true]);
+        //$users = LambdaRequest::signedrequest('get', $this->_service, 'users/get_all', ['raw' => true]);
+
+        //echo '
'; print_r($response->data->hierarchys); exit;
+
+        $headers = ['Sub Department Name', 'Employee Code', 'Business Email', 'Display Name', 'Mobile 1 Phone', 'Position Code', 'Position Title', 'Designation', 'Zone', 'Region', 'Area', 'Territory', 'Manager 1 Employee Code', 'Manager 1 Name', 'Manager\'s 1 Email', 'Manager 2 Employee Code', 'Manager 2 Name', 'Manager\'s 2 Email'];
+        // foreach($response->data->graph->values->metrics as $metric) {
+        //     $headers[] = $metric->metric;
+        // }
+        $exceldata[] = $headers;
+        foreach($response->data->hierarchys as $user) {
+            $row = [];
+            //echo '
'; print_r($user); exit;
+            if(isset($user->owner_info) && isset($user->owner_info->employee_code)){
+                $row[] = $user->owner_info->domain;
+                $row[] = $user->owner_info->employee_code;
+                $row[] = $user->owner_info->email;
+                $row[] = $user->owner_info->firstname . ' ' . $user->owner_info->lastname;
+                $row[] = isset($user->owner_info->phone) ? $user->owner_info->phone : '-';
+            } else {
+                $row[] = '';
+                $row[] = '';
+                $row[] = '';
+                $row[] = '';
+                $row[] = '';
+            }
+            
+            $row[] = isset($user->code) ? $user->code : '-';
+            $row[] = isset($user->name) ? $user->name : '-';
+            $row[] = isset($user->designation) ? $user->designation : '-';
+            $row[] = isset($user->positions->Zone) ? $user->positions->Zone : '-';
+            $row[] = isset($user->positions->Region) ? $user->positions->Region : '-';
+            $row[] = isset($user->positions->Area) ? $user->positions->Area : '-';
+            $row[] = isset($user->positions->Territory) ? $user->positions->Territory : '-';
+
+            if(isset($user->manager_level1) && isset($user->manager_level1->owner_info) && isset($user->manager_level1->owner_info->employee_code)){
+                $row[] = $user->manager_level1->owner_info->employee_code;
+                $row[] = $user->manager_level1->owner_info->firstname . ' ' . $user->manager_level1->owner_info->lastname;
+                $row[] = $user->manager_level1->owner_info->email;
+            } else {
+                $row[] = '';
+                $row[] = '';
+                $row[] = '';
+            }
+             
+            if(isset($user->manager_level2) && isset($user->manager_level2->owner_info) && isset($user->manager_level2->owner_info->employee_code)){
+                $row[] = $user->manager_level2->owner_info->employee_code;
+                $row[] = $user->manager_level2->owner_info->firstname . ' ' . $user->manager_level2->owner_info->lastname;
+                $row[] = $user->manager_level2->owner_info->email;
+            } else {
+                $row[] = '';
+                $row[] = '';
+                $row[] = '';
+            }
+            
+            // foreach($response->data->graph->values->metrics as $metric) {
+            //     $row[] = isset($metric->stats->{$user->id}) ? $metric->stats->{$user->id} : '-';
+            // }
+            $exceldata[] = $row;
+        }
+
+        //exit;
+        return Excel::download(new InvoicesExport($exceldata), 'result.xlsx');
+    }
+
+    public function populatetypedata(Request $request) {
+        $response = LambdaRequest::signedrequest('post', $this->_service, $this->_module.'/populatetypedata', ['partition' => 'rapport-'.Auth::user()->domain ]);
+        //echo '
'; print_r($response); exit;
+        if($response->statusCode == 200 && $response->status == "success") {
+            return redirect($this->_base_url.'s')->withMessage('Successfully Populated !!!');
+        } else {
+            return redirect($this->_base_url.'s')->withError('Some Error occured! '. $response->body->message);
+        }
+    }
 }
diff --git a/app/Http/Requests/LambdaRequest.php b/app/Http/Requests/LambdaRequest.php
index ec820f3d..6d07f65b 100644
--- a/app/Http/Requests/LambdaRequest.php
+++ b/app/Http/Requests/LambdaRequest.php
@@ -7,7 +7,7 @@ use Log;
 
 class LambdaRequest
 {
-	protected const REMOTE_ENV = 'production';
+	protected const REMOTE_ENV = 'local';
 	protected const LOCAL_URLS = [
 		'ums' => 'http://localhost:3010/dev/',
 		'mag' => 'http://localhost:3012/dev/',
diff --git a/resources/views/hierarchy/list.blade.php b/resources/views/hierarchy/list.blade.php
index e1272844..9a015457 100644
--- a/resources/views/hierarchy/list.blade.php
+++ b/resources/views/hierarchy/list.blade.php
@@ -17,6 +17,8 @@