feat(mail-test): implement email testing functionality

- Created MailTestController to handle email sending requests.
- Added SendTestMailRequest for validating email input.
- Developed MailTestService to manage email sending logic.
- Introduced TestMail Mailable for formatting test emails.
- Defined API route for sending test emails.
- Created EmailIntegrationSeeder to seed email integration settings.
- Updated DatabaseSeeder to include EmailIntegrationSeeder.
- Added MailTestControllerTest to ensure email sending functionality works as expected.
This commit is contained in:
2026-07-21 16:01:18 -03:00
parent e1a67fd9f3
commit 1a05c380a0
11 changed files with 534 additions and 991 deletions

View File

@@ -30,6 +30,7 @@ class DatabaseSeeder extends Seeder
ProductCatalogFromImagesSeeder::class,
FiestaFutbolInfantilProductSeeder::class,
TelepagosIntegrationSeeder::class,
EmailIntegrationSeeder::class,
MenuSeeder::class,
]);
}

View File

@@ -0,0 +1,32 @@
<?php
namespace Database\Seeders;
use App\Domains\Integration\Models\Integration;
use Illuminate\Database\Seeder;
class EmailIntegrationSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
Integration::updateOrCreate(
['integration_code' => 'email'],
[
'name' => 'Email',
'url' => null,
'integration_data_schema' => [
'MAIL_MAILER' => 'required|string|in:smtp',
'MAIL_SCHEME' => 'required|string|in:smtp',
'MAIL_HOST' => 'required|string|in:smtp.gmail.com',
'MAIL_PORT' => 'required|integer|in:587',
'MAIL_USERNAME' => 'required|email',
'MAIL_PASSWORD' => 'required|string',
'MAIL_FROM_ADDRESS' => 'required|email',
],
]
);
}
}