Files
boursecu_server/app/Http/Controllers/Admin/UserController.php
T
2026-07-04 11:55:10 +03:30

57 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Http\Controllers\SuperController;
use App\Models\Permission;
use App\Models\User;
use Illuminate\Http\Request;
use App\Models\Setting;
use App\Services\SmsBilling\SmsWalletService;
class UserController extends SuperController
{
public function __construct(Request $request)
{
$model = User::class;
// $with=['avatar','user_type_record'];
$with=[];
$select = ['*'];
$name_model = 'user';
$search=['name','mobile'];
$request->request->add(['active'=>1]);
parent::__construct($model, $with, $select, $name_model,null,$search);
}
public function me(){
$user = User::with($this->with)
->select($this->select)
->findOrFail(auth()->id());
// $permission = Permission::where('user_type',$user->user_type)->select('rid')->distinct('rid')->get()->pluck('rid')->toArray();
// $user['permission'] = $permission;
$query = Setting::query();
$settings = $query->get();
$user->settings= $settings;
$user->setAttribute('sms_billing_enabled', SmsWalletService::isBillingEnabled());
$user->setAttribute(
'sms_panel_access',
SmsWalletService::isBillingEnabled() && SmsWalletService::isSmsPanelSuperAdmin($user)
);
return response()->json($user);
}
public function updateMe(Request $request){
return parent::update($request,auth()->id());
}
public function getByUserType($user_type){
$user = User::where('user_type',$user_type)->select('id','name','mobile')->get();
return response()->json($user);
}
public function listUser(){
$user = User::select('id','name','mobile','user_type')->get();
return response()->json($user);
}
}