Procházet zdrojové kódy

Fix 保存证书转跳至错误网页 & 获取用户分组错误

兔姬桑 před 4 roky
rodič
revize
4e695152e6

+ 1 - 1
app/Console/Commands/AutoClearLog.php

@@ -72,7 +72,7 @@ class AutoClearLog extends Command
             UserBanedLog::where('created_at', '<=', date('Y-m-d H:i:s', strtotime('-3 month')))->delete();
 
             // 清除用户各节点 / 节点总计的每天流量数据日志
-            UserDailyDataFlow::where('node_id', '<>', null)
+            UserDailyDataFlow::where('node_id', '<>')
                 ->where('created_at', '<=', date('Y-m-d H:i:s', strtotime('-1 month')))
                 ->orWhere('created_at', '<=', date('Y-m-d H:i:s', strtotime('-3 month')))
                 ->delete();

+ 1 - 1
app/Http/Controllers/Admin/CertController.php

@@ -37,7 +37,7 @@ class CertController extends Controller
     public function store(CertRequest $request)
     {
         if ($cert = NodeCertificate::create($request->validated())) {
-            return redirect(route('admin.node.cert.update', $cert))->with('successMsg', '生成成功');
+            return redirect(route('admin.node.cert.edit', $cert))->with('successMsg', '生成成功');
         }
 
         return redirect()->back()->withInput()->withErrors('生成失败');

+ 6 - 1
app/Http/Requests/Admin/CertRequest.php

@@ -8,8 +8,13 @@ class CertRequest extends FormRequest
 {
     public function rules()
     {
+        $unq_domain = '';
+        if ($this->method() === 'PUT' || $this->method() === 'PATCH') {
+            $unq_domain = ','.$this->cert->id;
+        }
+
         return [
-            'domain' => 'required|string',
+            'domain' => 'required|string|unique:node_certificate,domain'.$unq_domain,
             'key' => 'string|nullable',
             'pem' => 'string|nullable',
         ];

+ 3 - 3
app/Models/User.php

@@ -53,7 +53,7 @@ class User extends Authenticatable implements JWTSubject
             'expired_at' => $this->expired_at,
             'ban_time' => $this->ban_time,
             'level' => $this->level_name,
-            'group' => $this->group->name ?? null,
+            'group' => $this->userGroup->name ?? null,
             'last_login' => $this->last_login,
             'reset_time' => $this->reset_time,
             'invite_num' => $this->invite_num,
@@ -219,7 +219,7 @@ class User extends Authenticatable implements JWTSubject
     public function nodes()
     {
         if ($this->attributes['user_group_id']) {
-            $query = $this->group->nodes();
+            $query = $this->userGroup->nodes();
         } else {
             $query = Node::query();
         }
@@ -227,7 +227,7 @@ class User extends Authenticatable implements JWTSubject
         return $query->whereStatus(1)->where('level', '<=', $this->attributes['level'] ?? 0);
     }
 
-    public function group(): BelongsTo
+    public function userGroup(): BelongsTo
     {
         return $this->belongsTo(UserGroup::class);
     }

+ 3 - 0
resources/views/admin/node/cert/info.blade.php

@@ -7,6 +7,9 @@
         <div class="panel">
             <div class="panel-heading">
                 <h2 class="panel-title">@isset($cert) 编辑 @else 添加 @endisset域名证书</h2>
+                <div class="panel-actions">
+                    <a href="{{route('admin.node.cert.index')}}" class="btn btn-danger">返 回</a>
+                </div>
             </div>
             @if (Session::has('successMsg'))
                 <x-alert type="success" :message="Session::get('successMsg')"/>