63 lines
2.1 KiB
PHP
63 lines
2.1 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers\Server\Admin;
|
||
|
|
|
||
|
|
use App\Http\Requests\StoreMerchantBlacklist;
|
||
|
|
use App\Http\Response\ResponseJson;
|
||
|
|
use App\Models\Server\MerchantAccount;
|
||
|
|
use App\Models\Server\MerchantBlacklist;
|
||
|
|
use App\Models\Server\MerchantUser;
|
||
|
|
use Illuminate\Http\Request;
|
||
|
|
use App\Http\Controllers\Controller;
|
||
|
|
|
||
|
|
class BlacklistController extends Controller
|
||
|
|
{
|
||
|
|
use ResponseJson;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 黑名单列表
|
||
|
|
* @param Request $request
|
||
|
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\Http\JsonResponse|\Illuminate\View\View
|
||
|
|
*/
|
||
|
|
public function blacklists(Request $request)
|
||
|
|
{
|
||
|
|
$m_id = $request->account_id;
|
||
|
|
$list = MerchantBlacklist::with('user:id,nickname,pic')
|
||
|
|
->where('m_id', $m_id)
|
||
|
|
->type();
|
||
|
|
$list = $list->orderByDesc('id')->paginate();
|
||
|
|
return $this->success('ok', $list);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 添加黑名单
|
||
|
|
* @param StoreMerchantBlacklist $request
|
||
|
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\Http\JsonResponse|\Illuminate\View\View
|
||
|
|
*/
|
||
|
|
public function addBlacklist(StoreMerchantBlacklist $request)
|
||
|
|
{
|
||
|
|
$m_id = request()->account_id;
|
||
|
|
$merchant = MerchantAccount::find($m_id);
|
||
|
|
$data = $request->validated();
|
||
|
|
$reason = $data['reason'];
|
||
|
|
unset($data['reason']);
|
||
|
|
$list = $merchant->blacklist()->updateOrCreate($data, ['reason'=>$reason]);
|
||
|
|
return $this->success('ok', $list);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 删除黑名单
|
||
|
|
* @param Request $request
|
||
|
|
* @param MerchantUser $user
|
||
|
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\Http\JsonResponse|\Illuminate\View\View
|
||
|
|
* @throws \Exception
|
||
|
|
*/
|
||
|
|
public function deleteBlacklist(Request $request, MerchantUser $user)
|
||
|
|
{
|
||
|
|
$m_id = $request->account_id;
|
||
|
|
$type = $request->input('type');
|
||
|
|
MerchantBlacklist::where(['m_id'=>$m_id, 'user_id'=>$user->id,'type'=>$type])->delete();
|
||
|
|
return $this->success('ok');
|
||
|
|
}
|
||
|
|
}
|