| Server IP : 13.235.167.51 / Your IP : 216.73.217.116 Web Server : Apache System : Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64 User : root ( 0) PHP Version : 8.2.29 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/app.machinox.in/app/Http/Controllers/Admin/ |
Upload File : |
<?php
namespace App\Http\Controllers\Admin;
use App\Actions\Admin\MachineTypeAction;
use App\Http\Controllers\Controller;
use App\Http\Requests\Admin\MachineTypeRequest;
use App\Http\Requests\Admin\MachineTypeImageRequest;
use Exception;
use Illuminate\Http\Request;
use App\Models\MachineType;
use App\Services\RedisService;
use Illuminate\Support\Facades\Redis;
class MachineTypeController extends Controller
{
public function SetInfo(MachineTypeRequest $request, MachineTypeAction $action, $typeId = null)
{
try {
$request->validated();
$response = $action->execute($request, $typeId);
$redis = new RedisService();
if ($redis->isEnabled()) {
// Delete the main cached list
Redis::del('machine_types:list');
$cursor = 0;
do {
[$cursor, $keys] = Redis::scan($cursor, ['match' => 'machine_type:*:models', 'count' => 100]);
if (!empty($keys)) {
Redis::del(...$keys);
}
} while ($cursor != 0);
}
return $this->sendSuccess($response->message, ['id' => $response->id]);
} catch (Exception $e) {
return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
}
}
public function GetList(Request $request)
{
try {
$list = MachineType::GetMachineTypes($request);
return $this->sendSuccess(trans('messages.OK'), $list);
} catch (Exception $th) {
return $this->sendError($th->getMessage());
}
}
public function GetInfo($id)
{
try {
$info = MachineType::findOrFail($id);
return $this->sendSuccess(trans('messages.OK'), $info);
} catch (Exception $th) {
return $this->sendError($th->getMessage());
}
}
public function Destroy($typeId, MachineTypeAction $action)
{
try {
$response = $action->destroy($typeId);
$redis = new RedisService();
if ($redis->isEnabled()) {
$redis->delete('machine_types:list');
$pattern = "machine_type:{$typeId}:models";
$redis->delete($pattern);
$cursor = 0;
do {
[$cursor, $keys] = Redis::scan($cursor, [
'match' => 'machine_type:*:models',
'count' => 100,
]);
if (!empty($keys)) {
Redis::del(...$keys);
}
} while ($cursor != 0);
}
return $this->sendSuccess($response);
} catch (Exception $e) {
return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
}
}
public function SetMachineTypeImage(MachineTypeImageRequest $request, MachineTypeAction $action, $modelId)
{
$response = $action->upload($request, $modelId);
return $this->sendSuccess($response->message, ['path' => $response->Path],);
}
}