feat(asset-management): complete module with standardized UI + demo data seeder
- Fix Vendor column bug (name → company_name) across all controllers - Create 6 missing pages (Assets/Edit, Categories/Create+Edit, Maintenance/Show+Edit, Disposal/Show) - Standardize all 7 Index pages with DataTable, SearchInput, PerPageSelector, Pagination - Add AssetManagementDemoSeeder with 5 categories, 22 assets, 8 maintenance, 4 assignments, 3 transfers, 2 disposals - All 19 controller-referenced pages now have matching .tsx files
This commit is contained in:
35
app/Http/Controllers/DemoRequestController.php
Normal file
35
app/Http/Controllers/DemoRequestController.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\DemoRequestMail;
|
||||
|
||||
class DemoRequestController extends Controller
|
||||
{
|
||||
public function store(Request $request)
|
||||
{
|
||||
$validated = $request->validate([
|
||||
'name' => 'required|string|max:255',
|
||||
'email' => 'required|email|max:255',
|
||||
'country' => 'required|string|max:255',
|
||||
'website' => 'nullable|string|max:500',
|
||||
'inquiry_type' => 'required|in:product,service',
|
||||
'project_type' => 'required|in:new,running',
|
||||
'message' => 'nullable|string|max:2000',
|
||||
'phone' => 'required|string|max:30',
|
||||
'preferred_date' => 'required|date',
|
||||
'preferred_time' => 'required|string',
|
||||
]);
|
||||
|
||||
Mail::to('charles@devappsolutions.ph')
|
||||
->cc('charles@devappsolutions.ph')
|
||||
->send(new DemoRequestMail($validated));
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'message' => 'Demo request submitted successfully! We will get back to you shortly.',
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user