feat: Implement DNS management with dedicated models, repositories, requests, controllers, and services, while refactoring authentication by removing Passport and Sanctum.

This commit is contained in:
pbao9
2026-03-09 16:43:06 +07:00
parent 80a5e0ca3d
commit 4e4807dbea
47 changed files with 1905 additions and 1243 deletions
+1 -9
View File
@@ -3,8 +3,6 @@
namespace App\Providers;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
use Laravel\Passport\Passport;
class AuthServiceProvider extends ServiceProvider
{
@@ -13,9 +11,7 @@ class AuthServiceProvider extends ServiceProvider
*
* @var array<class-string, class-string>
*/
protected $policies = [
// 'App\Models\Customer' => 'App\Policies\ModelPolicy',
];
protected $policies = [];
/**
* Register any authentication / authorization services.
@@ -25,9 +21,5 @@ class AuthServiceProvider extends ServiceProvider
public function boot()
{
$this->registerPolicies();
Passport::tokensExpireIn(now()->addDays(15));
Passport::refreshTokensExpireIn(now()->addDays(30));
Passport::personalAccessTokensExpireIn(now()->addDays(30));
}
}
+11
View File
@@ -98,6 +98,12 @@ use App\Repositories\VPS\VPSCachedRepository;
use App\Repositories\VPS\VPSRepositoryInterface;
use App\Repositories\Module\VirtualMachine\VirtualMachineRepository;
use App\Repositories\Module\VirtualMachine\VirtualMachineRepositoryInterface;
use App\Repositories\DnsManager\Domain\DnsDomainRepository;
use App\Repositories\DnsManager\Domain\DnsDomainRepositoryInterface;
use App\Repositories\DnsManager\Server\DnsServerRepository as DnsManagerServerRepository;
use App\Repositories\DnsManager\Server\DnsServerRepositoryInterface as DnsManagerServerRepositoryInterface;
use App\Repositories\DnsManager\Record\DnsRecordRepository;
use App\Repositories\DnsManager\Record\DnsRecordRepositoryInterface;
class RepositoryProvider extends ServiceProvider
{
@@ -364,6 +370,11 @@ class RepositoryProvider extends ServiceProvider
\App\Repositories\Api\Service\ServiceRepositoryInterface::class,
\App\Repositories\Api\Service\ServiceRepository::class
);
// DNS Manager
$this->app->bind(DnsManagerServerRepositoryInterface::class, DnsManagerServerRepository::class);
$this->app->bind(DnsDomainRepositoryInterface::class, DnsDomainRepository::class);
$this->app->bind(DnsRecordRepositoryInterface::class, DnsRecordRepository::class);
}
/**
+6 -1
View File
@@ -50,7 +50,12 @@ class RouteServiceProvider extends ServiceProvider
->namespace($this->namespace)
->group(base_path('routes/api.php'));
// 3. Web & Admin routes
// 3. Admin Backend routes (DNS Manager)
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/admin.php'));
// 4. Web routes
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));