This commit is contained in:
baodev0
2026-08-06 11:18:39 +07:00
6 changed files with 228 additions and 0 deletions
@@ -3,15 +3,27 @@
namespace App\Http\Controllers\Api\Admin\IpPool;
use App\Http\Controllers\Controller;
use App\Imports\IpPoolImport;
use App\Models\IpPool;
use App\Models\ModuleIpAddress;
use App\Models\ModuleNetwork;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Maatwebsite\Excel\Facades\Excel;
use Maatwebsite\Excel\Validators\ValidationException;
class IpPoolController extends Controller
{
private const EDITABLE_FIELDS = [
'gateway', 'netmask', 'service_id', 'status',
'owner_type', 'ip_role', 'parent_ip', 'customer_name', 'service_name',
'allocated_at', 'revoked_at', 'allocation_status',
'contact_email', 'contact_cc', 'contact_phone',
'monthly_cost', 'selling_price', 'additional_info',
'last_email_type', 'last_email_at', 'updated_by', 'note',
];
public function index(Request $request): JsonResponse
{
$perPage = min((int) $request->get('per_page', 15), 500);