47 lines
1.4 KiB
PHP
47 lines
1.4 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers\Admin;
|
||
|
|
|
||
|
|
use App\Http\Controllers\Controller;
|
||
|
|
use Illuminate\Http\Request;
|
||
|
|
use App\Models\User;
|
||
|
|
use App\Models\UserDetail;
|
||
|
|
use Maatwebsite\Excel\Facades\Excel;
|
||
|
|
use App\Imports\UserImport;
|
||
|
|
use Hash;
|
||
|
|
|
||
|
|
class DirectUserController extends Controller
|
||
|
|
{
|
||
|
|
public function users(){
|
||
|
|
$data = User::with('user_detail')->get()->toArray();
|
||
|
|
|
||
|
|
// dd($data);
|
||
|
|
return view('Admin.Pages.direct_users.direct_user')->with(['user_data'=> $data]);
|
||
|
|
}
|
||
|
|
|
||
|
|
public function import(Request $request)
|
||
|
|
{
|
||
|
|
try {
|
||
|
|
$validation = $request->validate([
|
||
|
|
'csv_file' => 'required|mimes:csv,txt,xlsx',
|
||
|
|
]);
|
||
|
|
// dd($request->all());
|
||
|
|
// Use try-catch to handle exceptions thrown by Excel::import
|
||
|
|
// try {
|
||
|
|
Excel::import(new UserImport, $request->file('csv_file'));
|
||
|
|
return response()->json(['success' => true, 'status' => 200]);
|
||
|
|
// } catch (ValidationException $e) {
|
||
|
|
// // Catch the validation exception and extract errors
|
||
|
|
// $errors = $e->validator->errors()->toArray();
|
||
|
|
|
||
|
|
// return response()->json(['errors' => $errors], 422); // 422 Unprocessable Entity
|
||
|
|
// }
|
||
|
|
|
||
|
|
|
||
|
|
} catch (\Exception $e) {
|
||
|
|
return response()->json(['error' => 'Error importing data: ' . $e->getMessage()], 500);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|