create show api

This commit is contained in:
2025-08-10 08:51:46 +03:30
parent 16a28d38a9
commit 2fe705e528
6 changed files with 34 additions and 14 deletions

View File

@@ -37,9 +37,11 @@ class ProfileController extends Controller
public function changeAvatar(ChangeAvatarRequest $request): JsonResponse public function changeAvatar(ChangeAvatarRequest $request): JsonResponse
{ {
$user = auth()->user(); $user = auth()->user();
if ($user->avatar){ if ($user->avatar){
FileFacade::delete($user->avatar, true); FileFacade::delete($user->avatar, true);
} }
$user->update([ $user->update([
'avatar' => FileFacade::save($request->file('avatar'), 'users/avatars/' . $request->username) 'avatar' => FileFacade::save($request->file('avatar'), 'users/avatars/' . $request->username)
]); ]);
@@ -49,16 +51,19 @@ class ProfileController extends Controller
public function online(Request $request): JsonResponse public function online(Request $request): JsonResponse
{ {
User::query()->where('telephone_id', '=', $request->telephone_id)->update([ User::query()
'is_online' => true, ->firstWhere('telephone_id', '=', $request->telephone_id)
]); ->update(['is_online' => true,]);
return $this->successResponse(); return $this->successResponse();
} }
public function offline(Request $request): JsonResponse public function offline(Request $request): JsonResponse
{ {
$user= User::query()->where('telephone_id', '=', $request->telephone_id)->first(); User::query()
$user->update(['is_online' => false]); ->firstWhere('telephone_id', '=', $request->telephone_id)
->update(['is_online' => false]);
return $this->successResponse(); return $this->successResponse();
} }

View File

@@ -3,12 +3,15 @@
namespace App\Http\Controllers\ProvinceDashboard\OperatorDialogues; namespace App\Http\Controllers\ProvinceDashboard\OperatorDialogues;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use app\Http\Traits\ApiResponse;
use App\Models\OperatorDialogue;
use App\Services\Dashboard\Province\OperatorDialogues\DataTableService; use App\Services\Dashboard\Province\OperatorDialogues\DataTableService;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
class OperatorController extends Controller class OperatorController extends Controller
{ {
use ApiResponse;
/** /**
* Display a listing of the resource. * Display a listing of the resource.
*/ */
@@ -20,9 +23,9 @@ class OperatorController extends Controller
/** /**
* Display the specified resource. * Display the specified resource.
*/ */
public function show(string $id) public function show(OperatorDialogue $operatorDialogue): JsonResponse
{ {
// return $this->successResponse($operatorDialogue);
} }
/** /**

View File

@@ -39,5 +39,4 @@ class SupervisorController extends Controller
{ {
// //
} }
} }

View File

@@ -3,12 +3,16 @@
namespace App\Http\Controllers\ProvinceDashboard\PeopleMessages; namespace App\Http\Controllers\ProvinceDashboard\PeopleMessages;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use app\Http\Traits\ApiResponse;
use App\Models\PeopleMessage;
use App\Services\Dashboard\Province\PeopleMessages\DataTableService; use App\Services\Dashboard\Province\PeopleMessages\DataTableService;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
class SupervisorController extends Controller class SupervisorController extends Controller
{ {
use ApiResponse;
/** /**
* Display a listing of the resource. * Display a listing of the resource.
*/ */
@@ -25,8 +29,8 @@ class SupervisorController extends Controller
/** /**
* Display the specified resource. * Display the specified resource.
*/ */
public function show(string $id) public function show(PeopleMessage $peopleMessage)
{ {
// return $this->successResponse($peopleMessage);
} }
} }

View File

@@ -2,13 +2,23 @@
namespace App\Models; namespace App\Models;
use Database\Factories\SystemMessageFactory;
use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Storage;
class SystemMessage extends Model class SystemMessage extends Model
{ {
/** @use HasFactory<\Database\Factories\SystemMessageFactory> */ /** @use HasFactory<SystemMessageFactory> */
use HasFactory; use HasFactory;
protected $guarded = []; protected $guarded = [];
protected function voice(): Attribute
{
return Attribute::make(
get: fn($value) => $value == null ? null : Storage::disk('public')->url($value)
);
}
} }

View File

@@ -12,12 +12,11 @@ class DataTableService
public function index(Request $request) public function index(Request $request)
{ {
$query = DB::table('asteriskcdrdb.cdr') $query = DB::table('asteriskcdrdb.cdr')
->leftJoin('crm_db.voice_experts', 'asteriskcdrdb.cdr.uniqueid', '=', 'crm_db.operator_dialogues.cdr_unique_id') ->leftJoin('crm_db.operator_dialogues', 'asteriskcdrdb.cdr.uniqueid', '=', 'crm_db.operator_dialogues.cdr_unique_id')
->where('dst', '<>', '') ->where('dst', '<>', '')
->where('lastapp', '=', 'Dial') ->where('lastapp', '=', 'Dial')
->where('duration', '>', 0) ->where('duration', '>', 0)
->where('recordingfile', '<>', '') ->where('recordingfile', '<>', '');
->select('*');
return DataTableFacade::run( return DataTableFacade::run(
$query, $query,