Browse Source

feat: 添加询盘发送邮件

igb 4 months ago
parent
commit
c9d5483ca3

+ 7 - 0
.env.dev

@@ -63,3 +63,10 @@ OSS_ACCESS_KEY_SECRET=q0pp2qlDXdxi490qMDbDuWBd7SPMNn
 OSS_BUCKET=mietubl-dev
 OSS_ENDPOINT=oss-cn-hongkong.aliyuncs.com
 
+
+MAIL_TO_NAME=""
+MAIL_TO_ADDRESS=""
+
+MAIL_CC_NAME=""
+MAIL_CC_ADDRESS=""
+

+ 41 - 0
app/Http/Controllers/ContactController.php

@@ -5,6 +5,8 @@ namespace App\Http\Controllers;
 use Illuminate\Http\Request;
 use App\Services\LiquidRenderer;
 use App\Models\DistInquiry;
+use App\Mail\InquiryMail;
+use Illuminate\Support\Facades\Mail;
 
 class ContactController extends Controller
 {
@@ -70,6 +72,45 @@ class ContactController extends Controller
                 throw new \Exception('submit failed, please try again later. ');
             }
 
+            // 询盘数据
+// 询盘数据
+            $inquiryData = [
+                'order_number' => $distInquiry->order_number,
+                'customer_name' => $distInquiry->customer_name,
+                'email' => $distInquiry->email,
+                'consulting_products' => $distInquiry->consulting_products,
+                'freight_forwarder' => $distInquiry->freight_forwarder,
+                'business_model' => $distInquiry->business_model,
+                'content' => $distInquiry->content,
+                'referer_url' => $distInquiry->referer_url,
+            ];
+
+            // 获取配置中的收件人和抄送地址
+            $toAddress = config('mail_recipients.to.address');
+            $ccAddress = config('mail_recipients.cc.address');
+
+            // 判断收件人地址是否存在
+            if (!empty($toAddress)) {
+                $mail = Mail::to($toAddress);
+
+                // 如果有 CC 地址,添加 CC
+                if (!empty($ccAddress)) {
+                    $mail->cc($ccAddress);
+                }
+
+                // 发送邮件
+                $mail->send(new InquiryMail($inquiryData));
+
+//                // 返回响应
+//                return back()->with('success', '您的询盘已提交,我们将尽快回复您。');
+            } else {
+//                // 没有收件人地址时记录日志或返回错误信息
+//                logger()->warning('邮件未发送:缺少收件人地址');
+//                return back()->with('error', '邮件发送失败,缺少收件人地址。');
+            }
+
+
+
             // 成功时的响应
             $response = [
                 'status' => 'success'

+ 11 - 0
config/mail_recipients.php

@@ -0,0 +1,11 @@
+<?php
+return [
+    'to' => [
+        'name' => env('MAIL_TO_NAME', ''),
+        'address' => env('MAIL_TO_ADDRESS', ''),
+    ],
+    'cc' => [
+        'name' => env('MAIL_CC_NAME', ''),
+        'address' => env('MAIL_CC_ADDRESS', ''),
+    ],
+];

+ 19 - 0
resources/views/emails/inquiry.blade.php

@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html lang="zh">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>新的询盘邮件</title>
+</head>
+<body>
+<h1>新的询盘邮件</h1>
+<p><strong>订单号:</strong>{{ $order_number }}</p>
+<p><strong>客户名称:</strong>{{ $customer_name }}</p>
+<p><strong>邮箱:</strong>{{ $email }}</p>
+<p><strong>咨询产品:</strong>{{ $consulting_products }}</p>
+<p><strong>是否有货代:</strong>{{ $freight_forwarder }}</p>
+<p><strong>业务模式:</strong>{{ $business_model }}</p>
+<p><strong>内容:</strong>{{ $content }}</p>
+<p><strong>来源链接:</strong>{{ $referer_url }}</p>
+</body>
+</html>