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