add change avatar

This commit is contained in:
2025-07-13 09:44:22 +03:30
parent 87487dd5f9
commit 9ab439c5d0
9 changed files with 72 additions and 62 deletions

View File

@@ -21,18 +21,12 @@ class RoleManagementController extends Controller
*/
public function index(Request $request): JsonResponse
{
$columns = array('id', 'name', 'name_fa');
$allowedFilters = $columns;
$allowedSortings = $columns;
$allowedRelations = array('permissions:id,name_fa');
$data = DataTableFacade::run(
Role::query(),
$request,
allowedFilters: $allowedFilters,
allowedSortings: $allowedSortings,
allowedRelations: $allowedRelations
allowedFilters: array('id', 'name', 'name_fa'),
allowedSortings: array('id', 'name', 'name_fa'),
allowedRelations: array('permissions:id,name_fa')
);
return response()->json($data);

View File

@@ -23,22 +23,15 @@ class UserManagementController extends Controller
public function index(Request $request): JsonResponse
{
$columns = array('id', 'full_name', 'username', 'province_id', 'phone_number', 'national_id', 'telephone_id');
$allowedFilters = $columns;
$allowedSortings = $columns;
$allowedRelations = array('roles:id,name_fa');
$query = User::query()->where('username', "<>", "witel");
$data = DataTableFacade::run(
$query,
$request,
allowedFilters: $allowedFilters,
allowedSortings: $allowedSortings,
allowedRelations: $allowedRelations);
allowedFilters: array('id', 'full_name', 'username', 'province_id', 'phone_number', 'national_id', 'telephone_id'),
allowedSortings: array('id', 'full_name', 'username', 'province_id', 'phone_number', 'national_id', 'telephone_id'),
allowedRelations: array('roles:id,name_fa')
);
return response()->json($data);
}
@@ -83,10 +76,6 @@ class UserManagementController extends Controller
DB::transaction(function () use ($request, $user) {
$province = Province::query()->find($request->province_id);
$avatar = $request->avatar ?
$user->storeFile($request->file('avatar'), $request->username)
: null;
$user->update([
'full_name' => $request->full_name,
'username' => $request->username,
@@ -96,7 +85,6 @@ class UserManagementController extends Controller
'phone_number' => $request->phone_number,
'province_id' => $province->id,
'province_fa' => $province->name,
'avatar' => $avatar,
'email' => $request->email,
]);

View File

@@ -36,7 +36,7 @@ class CallController extends Controller
{
$call = DB::transaction(function () use ($request)
{
$operator = User::query()->where('telephone_id', $request->extension)->first();
$operator = User::query()->where('telephone_id', '=', $request->extension)->first();
$call = Call::query()->create([
'telephone_id' => $request->extension,
@@ -46,7 +46,7 @@ class CallController extends Controller
'operator_full_name' => $operator->full_name
]);
CallHistory::recordHistory($call, CallEvents::CALL_CREATED);
CallHistory::recordHistory($call, CallEvents::CALL_CREATED->value);
return $call;
});
@@ -63,17 +63,17 @@ class CallController extends Controller
}
catch (NotificationServerNotRespondingException $exception)
{
CallHistory::recordHistory($call, CallEvents::NOTIFICATION_SERVER_NOT_RESPONDING);
CallHistory::recordHistory($call, CallEvents::NOTIFICATION_SERVER_NOT_RESPONDING->value);
throw $exception;
}
catch (OperatorOfflineException $exception)
{
CallHistory::recordHistory($call, CallEvents::OPERATOR_IS_OFFLINE);
CallHistory::recordHistory($call, CallEvents::OPERATOR_IS_OFFLINE->value);
throw $exception;
}
catch (OperatorNotConnectedException $exception)
{
CallHistory::recordHistory($call, CallEvents::OPERATOR_COULD_NOT_CONNECT);
CallHistory::recordHistory($call, CallEvents::OPERATOR_COULD_NOT_CONNECT->value);
throw $exception;
}
}
@@ -81,11 +81,11 @@ class CallController extends Controller
public function update(UpdateRequest $request, Call $call): JsonResponse
{
DB::transaction(function () use ($request, $call) {
$operator = User::query()->where('telephone_id', $call->telephone_id)->first();
$operator = User::query()->where('telephone_id', '=', $call->telephone_id)->first();
$category = Category::query()->where([
['category_id', $request->category_id],
['subcategory_id', $request->subcategory_id]
['category_id', '=', $request->category_id],
['subcategory_id', '=', $request->subcategory_id]
])->first();
$call->update([
@@ -101,7 +101,7 @@ class CallController extends Controller
'description' => $request->description,
]);
$event_id = CallEvents::OPERATOR_STORED_CALL_DATA;
$event_id = CallEvents::OPERATOR_STORED_CALL_DATA->value;
$event_name = Event::query()->find($event_id)->first()->name;
@@ -123,9 +123,8 @@ class CallController extends Controller
$size = $request->size ?? config('global_variables.MAX_RECORDS_COUNT');
$calls_data = Call::query()
->when($phone_number, function ($query) use ($phone_number) {
return $query->where('caller_phone_number', $phone_number);
})->orderBy('created_at', 'DESC')
->when($phone_number, fn($query, $phone_number) => $query->where('phone_number', '=', $phone_number))
->orderBy('created_at', 'DESC')
->limit($size)
->get();

View File

@@ -2,7 +2,9 @@
namespace App\Http\Controllers;
use App\Http\Requests\ChangePasswordRequest;
use App\Facades\File\FileFacade;
use App\Http\Requests\Profile\ChangeAvatarRequest;
use App\Http\Requests\Profile\ChangePasswordRequest;
use App\Http\Resources\Admin\UserResource;
use App\Http\Traits\ApiResponse;
use App\Models\User;
@@ -31,6 +33,19 @@ class ProfileController extends Controller
return $this->successResponse();
}
public function changeAvatar(ChangeAvatarRequest $request): JsonResponse
{
$user = auth()->user();
if ($user->avatar){
FileFacade::delete($user->avatar, true);
}
$user->update([
'avatar' => FileFacade::save($request->file('avatar'), 'users/avatars/' . $request->username)
]);
return $this->successResponse();
}
public function online(Request $request): JsonResponse
{
User::query()->where('telephone_id', '=', $request->telephone_id)->update([