浏览代码

加强优化师列表

liuzejian 2 年之前
父节点
当前提交
2224936867

+ 8 - 2
modules/Channel/Http/Controllers/AdvertiserController.php

@@ -8,11 +8,13 @@ use Illuminate\Http\Request;
 use Illuminate\Support\Facades\DB;
 use Modules\Channel\Exceptions\ChannelBusinessException;
 use Modules\Common\Errors\Errors;
+use Modules\User\Http\Controllers\UserTrait;
 use Modules\User\Models\User;
 
 class AdvertiserController extends CatchController
 {
     use ValidatesRequests;
+    use UserTrait;
     public function __construct(
         protected readonly User $user
     ) {
@@ -70,13 +72,17 @@ class AdvertiserController extends CatchController
         $miniProgramId = $request->input('miniProgramId');
         $email = $request->input('email');
         $username = $request->input('username');
+        $userContext = $this->getUserContext(null);
         $res =   DB::table('users')
             ->join('user_has_miniprograms', 'users.id', 'user_has_miniprograms.uid')
             ->where([
                 'user_has_miniprograms.is_enabled' => 1,
                 'users.deleted_at' => 0,
-                'users.pid' => $this->getLoginUserId()
-            ])->when($email, function ($query, $email) {
+            ])->when($userContext['loginUserRoles']->contains('company'), function ($query) use($userContext){
+                return $query->where('users.pid' , $userContext['loginUser']->id);
+            })->when($userContext['loginUserRoles']->contains('optimizer'), function ($query) use ($userContext){
+                return $query->where('users.id', $userContext['loginUser']->id);
+            })->when($email, function ($query, $email) {
                 return $query->where('users.email', $email);
             })->when($miniProgramId, function ($query, $miniProgramId){
                 return $query->where('user_has_miniprograms.miniprogram_id', $miniProgramId);

+ 0 - 56
modules/Channel/Http/Controllers/UserTrait.php

@@ -1,56 +0,0 @@
-<?php
-
-namespace Modules\ContentManage\Http\Controllers;
-
-use Catch\Base\CatchController;
-use Illuminate\Support\Collection;
-use Illuminate\Support\Facades\DB;
-use Modules\User\Models\User;
-
-trait UserTrait
-{
-    // 当前登录用户
-    protected $currentUser;
-
-    /**
-     * 获取当前登录用户
-     * @return User
-     */
-    protected function getCurrentUser(): User {
-        if(!$this->currentUser) {
-            $this->currentUser = $this->getLoginUser();
-        }
-        return $this->currentUser;
-    }
-    /**
-     * 当前用户的所有的角色标识的结合
-     * @return Collection
-     */
-    protected function listUserRoles():Collection {
-        return $this->getCurrentUser()->roles->pluck('identify');
-    }
-
-    /**
-     * 当前用户是否是cp角色
-     * @return bool
-     */
-    public function userIsCp():bool {
-        return $this->listUserRoles()->contains('cp');
-    }
-
-    /**
-     * 如果当前用户是cp角色,返回cp_name,否则返回null
-     * @return string
-     */
-    public function getUserCpName():string|null {
-        if($this->userIsCp()) {
-            return DB::table('user_belong_to_cp')
-                ->where([
-                    'is_enabled' => 1,
-                    'user_id' => $this->getCurrentUser()->id,
-                ])->value('cp_name');
-        } else {
-            return null;
-        }
-    }
-}

+ 2 - 1
modules/ContentManage/Http/Controllers/CpSubscribeStatisticDataController.php

@@ -10,7 +10,8 @@ use Illuminate\Support\Facades\DB;
 
 class CpSubscribeStatisticDataController extends CatchController
 {
-    use ValidatesRequests, UserTrait;
+    use ValidatesRequests;
+    use \Modules\User\Http\Controllers\UserTrait;
 
 
     /**

+ 0 - 56
modules/ContentManage/Http/Controllers/UserTrait.php

@@ -1,56 +0,0 @@
-<?php
-
-namespace Modules\ContentManage\Http\Controllers;
-
-use Catch\Base\CatchController;
-use Illuminate\Support\Collection;
-use Illuminate\Support\Facades\DB;
-use Modules\User\Models\User;
-
-trait UserTrait
-{
-    // 当前登录用户
-    protected $currentUser;
-
-    /**
-     * 获取当前登录用户
-     * @return User
-     */
-    protected function getCurrentUser(): User {
-        if(!$this->currentUser) {
-            $this->currentUser = $this->getLoginUser();
-        }
-        return $this->currentUser;
-    }
-    /**
-     * 当前用户的所有的角色标识的结合
-     * @return Collection
-     */
-    protected function listUserRoles():Collection {
-        return $this->getCurrentUser()->roles->pluck('identify');
-    }
-
-    /**
-     * 当前用户是否是cp角色
-     * @return bool
-     */
-    public function userIsCp():bool {
-        return $this->listUserRoles()->contains('cp');
-    }
-
-    /**
-     * 如果当前用户是cp角色,返回cp_name,否则返回null
-     * @return string
-     */
-    public function getUserCpName():string|null {
-        if($this->userIsCp()) {
-            return DB::table('user_belong_to_cp')
-                ->where([
-                    'is_enabled' => 1,
-                    'user_id' => $this->getCurrentUser()->id,
-                ])->value('cp_name');
-        } else {
-            return null;
-        }
-    }
-}

+ 0 - 56
modules/System/Http/Controllers/UserTrait.php

@@ -1,56 +0,0 @@
-<?php
-
-namespace Modules\ContentManage\Http\Controllers;
-
-use Catch\Base\CatchController;
-use Illuminate\Support\Collection;
-use Illuminate\Support\Facades\DB;
-use Modules\User\Models\User;
-
-trait UserTrait
-{
-    // 当前登录用户
-    protected $currentUser;
-
-    /**
-     * 获取当前登录用户
-     * @return User
-     */
-    protected function getCurrentUser(): User {
-        if(!$this->currentUser) {
-            $this->currentUser = $this->getLoginUser();
-        }
-        return $this->currentUser;
-    }
-    /**
-     * 当前用户的所有的角色标识的结合
-     * @return Collection
-     */
-    protected function listUserRoles():Collection {
-        return $this->getCurrentUser()->roles->pluck('identify');
-    }
-
-    /**
-     * 当前用户是否是cp角色
-     * @return bool
-     */
-    public function userIsCp():bool {
-        return $this->listUserRoles()->contains('cp');
-    }
-
-    /**
-     * 如果当前用户是cp角色,返回cp_name,否则返回null
-     * @return string
-     */
-    public function getUserCpName():string|null {
-        if($this->userIsCp()) {
-            return DB::table('user_belong_to_cp')
-                ->where([
-                    'is_enabled' => 1,
-                    'user_id' => $this->getCurrentUser()->id,
-                ])->value('cp_name');
-        } else {
-            return null;
-        }
-    }
-}

+ 1 - 1
modules/Video/Http/Controllers/UserTrait.php

@@ -1,6 +1,6 @@
 <?php
 
-namespace Modules\Video\Http\Controllers;
+namespace Modules\User\Http\Controllers;
 
 use Catch\Base\CatchController;
 use Illuminate\Http\Request;

+ 1 - 0
modules/Video/Http/Controllers/EpisodeController.php

@@ -8,6 +8,7 @@ use Illuminate\Http\Request;
 use Illuminate\Support\Facades\DB;
 use Modules\Common\Errors\Errors;
 use Modules\Common\Exceptions\CommonBusinessException;
+use Modules\User\Http\Controllers\UserTrait;
 use Modules\User\Models\User;
 use Modules\Video\Services\VideoService;
 

+ 1 - 0
modules/Video/Http/Controllers/VideoController.php

@@ -8,6 +8,7 @@ use Illuminate\Http\Request;
 use Illuminate\Support\Facades\DB;
 use Modules\Common\Errors\Errors;
 use Modules\Common\Exceptions\CommonBusinessException;
+use Modules\User\Http\Controllers\UserTrait;
 use Modules\User\Models\User;
 use Modules\Video\Services\VideoService;