作者 刘锟

合并分支 'akun' 到 'master'

Akun



查看合并请求 !576
@@ -3,7 +3,9 @@ @@ -3,7 +3,9 @@
3 namespace App\Http\Controllers\Api; 3 namespace App\Http\Controllers\Api;
4 4
5 use App\Exceptions\InquiryFilterException; 5 use App\Exceptions\InquiryFilterException;
  6 +use App\Models\Mail\Mail;
6 use App\Models\Project\Project; 7 use App\Models\Project\Project;
  8 +use App\Models\User\User;
7 use App\Models\Visit\SyncSubmitTask; 9 use App\Models\Visit\SyncSubmitTask;
8 use App\Services\CosService; 10 use App\Services\CosService;
9 use Illuminate\Http\Request; 11 use Illuminate\Http\Request;
@@ -11,7 +13,7 @@ use Illuminate\Http\Request; @@ -11,7 +13,7 @@ use Illuminate\Http\Request;
11 class SelfSiteController extends BaseController 13 class SelfSiteController extends BaseController
12 { 14 {
13 /** 15 /**
14 - * 自建站接口埋点 16 + * 自建站访问接口
15 * @param Request $request 17 * @param Request $request
16 * @return false|string 18 * @return false|string
17 * @author Akun 19 * @author Akun
@@ -79,4 +81,43 @@ class SelfSiteController extends BaseController @@ -79,4 +81,43 @@ class SelfSiteController extends BaseController
79 SyncSubmitTask::createTask($array, $type, $traffic); 81 SyncSubmitTask::createTask($array, $type, $traffic);
80 return $this->success([]); 82 return $this->success([]);
81 } 83 }
  84 +
  85 + /**
  86 + * 自建站页面更新通知接口
  87 + * @param Request $request
  88 + * @return false|string
  89 + * @author Akun
  90 + * @date 2024/05/22 15:24
  91 + */
  92 + public function selfSiteNotify(Request $request)
  93 + {
  94 + $token = $request->header('token');//token
  95 + $pid = $request->header('pid');//项目id
  96 + $domain = $request->input('domain');//域名
  97 +
  98 + if (empty($token) || empty($pid)) {
  99 + return $this->error('token无效', 401);
  100 + }
  101 +
  102 + //判断token是否有效
  103 + $project_model = new Project();
  104 + $project_info = $project_model->read(['id' => $pid, 'site_token' => $token]);
  105 + if (!$project_info) {
  106 + return $this->error('token无效', 401);
  107 + }
  108 +
  109 + $user = new User();
  110 + $userInfo = $user->read(['project_id' => $pid], ['id']);
  111 + $user_list = '';
  112 + if ($userInfo) {
  113 + $user_list = implode(',', array_column($userInfo, 'id'));
  114 + }
  115 + $mail = new Mail();
  116 + $data["title"] = "页面更新通知";
  117 + $data["user_list"] = $mail->setUserList($user_list);
  118 + $data["content"] = "该项目于 " . date('Y-m-d H:i:s') . " 执行页面更新完成,更新站点域名:" . $domain;
  119 + $mail->add($data);
  120 +
  121 + return $this->success([]);
  122 + }
82 } 123 }
@@ -37,5 +37,6 @@ Route::any('getAutoToken', [\App\Http\Controllers\Api\PrivateController::class, @@ -37,5 +37,6 @@ Route::any('getAutoToken', [\App\Http\Controllers\Api\PrivateController::class,
37 37
38 //自建站接口转接 38 //自建站接口转接
39 Route::post('selfSiteApi', [\App\Http\Controllers\Api\SelfSiteController::class, 'selfSiteApi']); 39 Route::post('selfSiteApi', [\App\Http\Controllers\Api\SelfSiteController::class, 'selfSiteApi']);
  40 +Route::post('selfSiteNotify', [\App\Http\Controllers\Api\SelfSiteController::class, 'selfSiteNotify']);
40 41
41 42