730 lines
26 KiB
PHP
730 lines
26 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Models\ApproveHistory;
|
|
use App\Models\PlatformBehavior;
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\Paas;
|
|
use App\Models\Platform;
|
|
use App\Models\PaasWorker;
|
|
use App\Models\Wechat;
|
|
use App\Models\PlatformUser;
|
|
use App\Models\User;
|
|
use App\Contracts\PaasContract;
|
|
use App\Contracts\UserContract;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class PaasController extends Controller
|
|
{
|
|
protected $paasCon;
|
|
protected $userCon;
|
|
public function __construct(PaasContract $paasCon, UserContract $userCon)
|
|
{
|
|
$this->paasCon = $paasCon;
|
|
$this->userCon = $userCon;
|
|
}
|
|
/**
|
|
* 平台列表
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasList(Request $request)
|
|
{
|
|
$paas_list = $this->paasCon->paasList($request);
|
|
return $this->success('ok', $paas_list);
|
|
}
|
|
|
|
/**
|
|
* 平台详情
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paas(Request $request, $paas_id)
|
|
{
|
|
//平台
|
|
$paas = $this->paasCon->paas($paas_id);
|
|
|
|
return $this->success('ok', $paas);
|
|
}
|
|
|
|
/**
|
|
* 修改平台信息
|
|
* @param Request $request [description]
|
|
* @param [type] $paas_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function updatePaas(Request $request, $paas_id)
|
|
{
|
|
$array = [];
|
|
$paas = Paas::find($paas_id);
|
|
if ($request->has('title') && $request->title != $paas->title) {
|
|
$array['title'] = $request->title;
|
|
}
|
|
if ($request->has('logo') && $request->logo != $paas->logo) {
|
|
$array['logo'] = $request->logo;
|
|
}
|
|
if ($request->has('intro') && $request->intro != $paas->intro) {
|
|
$array['intro'] = $request->intro;
|
|
}
|
|
if ($request->has('name') && $request->name != $paas->name) {
|
|
$array['name'] = $request->name;
|
|
}
|
|
if ($request->has('status') && $request->status != $paas->status) {
|
|
$array['status'] = $request->status;
|
|
}
|
|
$this->paasCon->updatePaas($array, $paas_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 添加平台
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function createPaas(Request $request)
|
|
{
|
|
$type = $request->input('type', 0);
|
|
$logo = $request->input('logo');
|
|
$name = $request->input('name');
|
|
if (empty($name)) {
|
|
return $this->failure('请输入平台唯一标识,英文大写字母表示');
|
|
}else{
|
|
$name = strtoupper($name);
|
|
$result = Paas::where('name', $name)->exists();
|
|
if ($result) {
|
|
return $this->failure('该标识已存在');
|
|
}
|
|
}
|
|
$title = $request->input('title');
|
|
if (empty($title)) {
|
|
return $this->failure('请输入平台名称');
|
|
}
|
|
$intro = $request->input('intro');
|
|
$array = [
|
|
'type'=>$type,
|
|
'logo'=>$logo,
|
|
'name'=>$name,
|
|
'title'=>$title,
|
|
'intro'=>$intro,
|
|
];
|
|
$paas = $this->paasCon->createPaas($array);
|
|
return $this->success('ok', $paas);
|
|
}
|
|
|
|
/**
|
|
* 删除平台
|
|
* @param Request $request [description]
|
|
* @param [type] $paas_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function deletePaas(Request $request, $paas_id)
|
|
{
|
|
$this->paasCon->deletePaas($paas_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 平台渠道列表
|
|
* @param Request $request [description]
|
|
* @param [type] $paas_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasPlatforms(Request $request, $paas_id)
|
|
{
|
|
//渠道
|
|
$platforms = $this->paasCon->paasPlatforms($paas_id, 1);
|
|
return $this->success('ok', $platforms);
|
|
}
|
|
|
|
/**
|
|
* 平台渠道(平台管理员)
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasAdminPlatforms(Request $request)
|
|
{
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
$platforms = $this->paasCon->paasPlatforms($paas_obj->id, 1);
|
|
return $this->success('ok', $platforms);
|
|
}else{
|
|
return $this->failure('你不是平台管理员!');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 添加渠道
|
|
* @param Request $request [description]
|
|
*/
|
|
public function createPlatform(Request $request)
|
|
{
|
|
try {
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
$paas_id = $paas_obj->id;
|
|
}else{
|
|
$paas_id = $request->input('paas_id');
|
|
if (empty($paas_id)) {
|
|
return $this->failure('请选择平台');
|
|
}
|
|
}
|
|
|
|
$app_id = $request->input('app_id');
|
|
if (empty($app_id)) {
|
|
return $this->failure('请输入唯一标识');
|
|
}else{
|
|
$result = Platform::where('app_id', $app_id)->exists();
|
|
if ($result) {
|
|
return $this->failure('该标识已存在');
|
|
}
|
|
}
|
|
$name = $request->input('name');
|
|
if (empty($name)) {
|
|
return $this->failure('请输入名称');
|
|
}
|
|
// $logo = $request->input('logo');
|
|
switch ($request->type){
|
|
case "mini":
|
|
//logo显示小程序码
|
|
// $path = 'pages/tabBar/welcome?from_platform='.$app_id;
|
|
// $logo = $this->getQrcode($path, 512);
|
|
$path = 'pages/tabBar/welcome';
|
|
$param = "from_platform={$app_id}";
|
|
$logo = $this->getWechatMiniQrcode($path, $param);
|
|
break;
|
|
case 'app':
|
|
if($request->paas_id == 44){
|
|
$url = env('APP_URL').'/h5/#/realCertificationApp?app_url=certification&from_platform='.$request->app_id;
|
|
}else {
|
|
$url = env('APP_URL').'/h5/#/downloadApp?APP_ID=' . $request->app_id;
|
|
}
|
|
$logo = $this->getUrlqrcode($url);
|
|
break;
|
|
default:
|
|
// $path = 'pages/tabBar/welcome?from_platform='.$app_id;
|
|
// $logo = $this->getQrcode($path, 512);
|
|
$path = 'pages/tabBar/welcome';
|
|
$param = "from_platform={$app_id}";
|
|
$logo = $this->getWechatMiniQrcode($path, $param);
|
|
break;
|
|
}
|
|
$array = [
|
|
'paas_id'=>$paas_id,
|
|
'app_id'=>$app_id,
|
|
'name'=>$name,
|
|
'logo'=>$logo,
|
|
];
|
|
$platform = $this->paasCon->createPlatform($array);
|
|
return $this->success('ok', $platform);
|
|
}catch (\Exception $e){
|
|
return $this->failure($e->getMessage());
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 渠道详情
|
|
* @param Request $request [description]
|
|
* @param [type] $platform_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function platform(Request $request, $platform_id)
|
|
{
|
|
$platform = $this->paasCon->platform($platform_id);
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
if ($platform->paas_id != $paas_obj->id) {
|
|
return $this->failure('暂时访问不了该渠道!');
|
|
}
|
|
}
|
|
return $this->success('ok', $platform);
|
|
}
|
|
|
|
/**
|
|
* 修改渠道
|
|
* @param Request $request [description]
|
|
* @param [type] $platform_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function updatePlatform(Request $request, $platform_id)
|
|
{
|
|
$platform = Platform::find($platform_id);
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
if ($platform->paas_id != $paas_obj->id) {
|
|
return $this->failure('暂时修改不了该渠道!');
|
|
}
|
|
}
|
|
$array = [];
|
|
if ($request->has('name') && $request->name != $platform->name) {
|
|
$array['name'] = $request->name;
|
|
}
|
|
if ($request->has('logo') && $request->logo != $platform->logo) {
|
|
$array['logo'] = $request->logo;
|
|
}
|
|
|
|
$this->paasCon->updatePlatform($array, $platform_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 删除渠道
|
|
* @param Request $request [description]
|
|
* @param [type] $platform_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function deletePlatform(Request $request, $platform_id)
|
|
{
|
|
$platform = Platform::find($platform_id);
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
if ($platform->paas_id != $paas_obj->id) {
|
|
return $this->failure('暂时修改不了该渠道!');
|
|
}
|
|
}
|
|
$this->paasCon->deletePlatform($platform_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 同工列表
|
|
* @param Request $request [description]
|
|
* @param [type] $paas_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasWorkers(Request $request, $paas_id)
|
|
{
|
|
// 同工
|
|
$workers = $this->paasCon->paasWorkers($request, $paas_id, 1);
|
|
return $this->success('ok', $workers);
|
|
}
|
|
|
|
/**
|
|
* 添加同工
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function createPaasWorker(Request $request)
|
|
{
|
|
$paas_id = $request->input('paas_id');
|
|
if (empty($paas_id)) {
|
|
return $this->failure('请选择平台');
|
|
}
|
|
$user_id = $request->input('user_id');
|
|
if (empty($user_id)) {
|
|
return $this->failure('请选择用户');
|
|
}
|
|
$result = PaasWorker::where(['user_id'=>$user_id])->exists();
|
|
if ($result) {
|
|
return $this->failure('添加失败,该用户已成为同工');
|
|
}
|
|
$array = ['paas_id'=>$paas_id, 'user_id'=>$user_id];
|
|
$worker = $this->paasCon->createPaasWorker($array);
|
|
return $this->success('ok', $worker);
|
|
}
|
|
|
|
/**
|
|
* 同工详情
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasWorker(Request $request, $worker_id)
|
|
{
|
|
$user = $this->paasCon->paasWorker($worker_id);
|
|
return $this->success('ok', $user);
|
|
}
|
|
|
|
/**
|
|
* 删除同工
|
|
* @param [type] $worker_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function deletePaasWorker($worker_id)
|
|
{
|
|
$this->paasCon->deletePaasWorker($worker_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 我的同工列表
|
|
* @param Request $request [description]
|
|
* @param [type] $paas_id [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function workers(Request $request)
|
|
{
|
|
$admin_type = $request->session()->get('admin_type');
|
|
$workers = null;
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
$paas_id = $paas_obj->id;
|
|
$workers = $this->paasCon->paasWorkers($request, $paas_id, $request->input('nopage', 0));
|
|
foreach ($workers as $worker) {
|
|
$invite_users = $this->userCon->inviteUsers($worker->user_id, 1);
|
|
$worker->invite_user_num = count($invite_users);
|
|
}
|
|
}
|
|
|
|
return $this->success('ok', $workers);
|
|
}
|
|
|
|
/**
|
|
* 平台客户
|
|
* 同工邀请的人+渠道邀请的人
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasClients(Request $request)
|
|
{
|
|
$admin_type = $request->session()->get('admin_type');
|
|
$workers = null;
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
$users = $this->paasCon->paasClients($request, $paas_obj->id);
|
|
}
|
|
return $this->success('ok', $users);
|
|
}
|
|
|
|
/**
|
|
* 用户绑定提现账号
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasBindAccount(Request $request, $user_id)
|
|
{
|
|
$openid = Wechat::where('user_id', $user_id)->value('openid');
|
|
if (empty($openid)) {
|
|
return $this->failure('该用户没有微信信息');
|
|
}
|
|
$this->paasCon->paasBindAccount($request, $user_id);
|
|
return $this->success('ok');
|
|
}
|
|
|
|
/**
|
|
* 平台账号
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasAccount(Request $request)
|
|
{
|
|
$account = $this->paasCon->paasAccount($request);
|
|
return $this->success('ok', $account);
|
|
}
|
|
|
|
/**
|
|
* 提现记录
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasWithdraws(Request $request)
|
|
{
|
|
$withdraws = $this->paasCon->paasWithdraws($request);
|
|
return $this->success('ok', $withdraws);
|
|
}
|
|
|
|
/**
|
|
* 提现
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function withdraw(Request $request)
|
|
{
|
|
$account = $this->paasCon->paasAccount($request);
|
|
if (empty($account->user_id)) {
|
|
return $this->failure('该提现账号没有绑定提现人');
|
|
}
|
|
$openid = Wechat::where('user_id', $account->user_id)->value('openid');
|
|
if (empty($openid)) {
|
|
return $this->failure('提现账号绑定人没有微信信息');
|
|
}
|
|
$type = $request->input("type");
|
|
if (empty($type)) {
|
|
return $this->failure('请选择提现类型');
|
|
}
|
|
if ($type == 'ACTIVITY') {
|
|
if ($account->activity_balance <= 2) {
|
|
return $this->failure('余额不足');
|
|
}
|
|
}elseif ($type = "RANK") {
|
|
if ($account->vip_balance <= 2) {
|
|
return $this->failure('余额不足');
|
|
}
|
|
}
|
|
$result = $this->paasCon->withdraw($request, $openid);
|
|
if (!$result) {
|
|
return $this->failure('提现失败');
|
|
}
|
|
return $this->success('提现成功');
|
|
}
|
|
|
|
/**
|
|
* 平台管理员列表
|
|
* @param Request $request [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasAdmins(Request $request)
|
|
{
|
|
$admins = $this->paasCon->paasAdmins($request);
|
|
return $this->success('ok', $admins);
|
|
}
|
|
|
|
/**
|
|
* 渠道推广员
|
|
* @param Request $request [description]
|
|
* @param Platform $platform [description]
|
|
* @param PlatformUser $Platform_user [description]
|
|
*/
|
|
public function platformUsers(Request $request, Platform $platform, PlatformUser $platform_user)
|
|
{
|
|
//平台管理员 检查是否是他的渠道
|
|
$admin_type = $request->session()->get('admin_type');
|
|
if ($admin_type == 'paas_admin') {
|
|
$paas_obj = $request->session()->get('paas_obj');
|
|
if ($platform->paas_id != $paas_obj->id) {
|
|
return $this->failure('暂无访问权限');
|
|
}
|
|
}
|
|
$users = $platform_user->where('platform_id', $platform->id)->with('user.wechat');
|
|
$keyword = $request->input('keyword');
|
|
if ($keyword) {
|
|
$keyword = trim($keyword);
|
|
$users = $users->whereHas('user',function($sql) use($keyword){
|
|
$sql->where('name', 'like', '%'.$keyword.'%')
|
|
->orWhere('mobile', 'like', '%'.$keyword.'%');
|
|
});
|
|
}
|
|
$users = $users->orderBy('invite_num', 'desc')->orderBy('id', 'desc')->paginate();
|
|
$paas_id = $platform->paas_id;
|
|
$start_time = $request->input('start_time');
|
|
$end_time = $request->input('end_time');
|
|
if ($start_time && $end_time) {
|
|
foreach ($users as $user) {
|
|
$user_id = $user->user_id;
|
|
$openid = $user->user->wechat->openid;
|
|
$num = User::where(function($sql) use($user_id, $openid){
|
|
$sql->where('from_user_id', $user_id);
|
|
})->where('created_at', '>=', $start_time)->where('created_at', '<', $end_time)->count()?:0;
|
|
$user->invite_num = $num;
|
|
}
|
|
}
|
|
$pass_users = User::with('wechat')->where('from_platform', $platform->app_id)->orderBy('created_at', 'desc')->paginate();
|
|
foreach ($pass_users as $pass_user){
|
|
$pass_user->from_user = $pass_user->FromUsername();
|
|
}
|
|
return $this->success('ok', compact('users', 'paas_id', 'pass_users'));
|
|
}
|
|
|
|
/**
|
|
* 添加渠道推广员
|
|
* @param Request $request [description]
|
|
* @param Platform $platform [description]
|
|
* @param PlatformUser $Platform_user [description]
|
|
*/
|
|
public function addPlatformUser(Request $request, Platform $platform, User $user, PlatformUser $platform_user)
|
|
{
|
|
$platform_user_obj = $platform_user->where('user_id', $user->id)->first();
|
|
if ($platform_user_obj) {
|
|
return $this->failure('添加失败,该用户已是推广员!');
|
|
}
|
|
$openid = $user->wechat->openid;
|
|
$paas_id = $platform->paas_id;
|
|
$app_id = $platform->app_id;
|
|
$paas_name = Paas::where('id', $paas_id)->value('name');
|
|
//生成二维码
|
|
$path = 'pages/tabBar/welcome?from_platform='.$app_id.'&paas='.$paas_name.'&from_openid='.$openid.'&from_user_id='.$user->id;
|
|
// dd($path);
|
|
$qrcode = $this->getQrcode($path, 512);
|
|
$platform_user_obj = $platform_user->create([
|
|
'user_id'=>$user->id,
|
|
'platform_id'=>$platform->id,
|
|
'qrcode'=>$qrcode,
|
|
]);
|
|
$platform_user_obj->user;
|
|
return $this->success('ok', $platform_user_obj);
|
|
}
|
|
|
|
|
|
/**
|
|
* 开启、禁止推广员
|
|
* @param Request $request [description]
|
|
* @param PlatformUser $platform_user [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function disablePlatformUser(Request $request, PlatformUser $platformUser)
|
|
{
|
|
$platformUser->disable = $platformUser->disable?0:1;
|
|
$platformUser->save();
|
|
return $this->success('ok', $platformUser);
|
|
}
|
|
|
|
/**
|
|
* 平台用户
|
|
*/
|
|
public function paasUsers(Request $request, Paas $paas, User $user)
|
|
{
|
|
// $paas_user_ids = $this->userCon->paasUserIds($paas->name, 'MAIN');
|
|
$users = $user->where('is_approved', 1);
|
|
$keyword = $request->input('keyword');
|
|
if (!empty($keyword)) {
|
|
$keyword = trim($keyword);
|
|
$users = $users->where(function($sql) use($keyword){
|
|
$sql->where('name', 'like', '%'.$keyword.'%')
|
|
->orWhere('mobile', 'like', '%'.$keyword.'%');
|
|
});
|
|
}
|
|
$nopage = $request->input('nopage');
|
|
if ($nopage) {
|
|
$users = $users->get();
|
|
}else{
|
|
$users = $users->paginate();
|
|
}
|
|
return $this->success('ok', $users);
|
|
}
|
|
|
|
/**
|
|
* 开启、禁止渠道
|
|
* @param Request $request [description]
|
|
* @param Platform $platform [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function disablePlatform(Request $request, Platform $platform)
|
|
{
|
|
$platform->disable = $platform->disable?0:1;
|
|
$platform->save();
|
|
return $this->success('ok', $platform);
|
|
}
|
|
|
|
/**
|
|
* 平台邀请人数
|
|
* @param Request $request [description]
|
|
* @param Paas $paas [description]
|
|
* @return [type] [description]
|
|
*/
|
|
public function paasInviteNum(Request $request, Paas $paas)
|
|
{
|
|
$start_time = $request->input('start_time');
|
|
$end_time = $request->input('end_time');
|
|
$paases = $paas->orderBy('id', 'desc');
|
|
$keyword = $request->input('keyword');
|
|
if ($keyword) {
|
|
$keyword = trim($keyword);
|
|
$paases = $paases->where('title', 'like', '%'.$keyword.'%');
|
|
}
|
|
$paases = $paases->with('platform.inviteUsers')->paginate();
|
|
foreach ($paases as $pa) {
|
|
$platforms = $pa->platform()->paginate();
|
|
$result_num = 0;
|
|
foreach ($platforms as $platform) {
|
|
if ($start_time && $end_time) {
|
|
$num = $platform->inviteUsers->where('created_at', '>=', $start_time)->where('created_at', '<', $end_time)->count();
|
|
}else{
|
|
$num = $platform->inviteUsers->count();
|
|
}
|
|
$result_num = $result_num + $num;
|
|
}
|
|
$pa->invite_num = $result_num;
|
|
|
|
}
|
|
return $this->success('ok', $paases);
|
|
}
|
|
|
|
//通过该渠道进来的用户
|
|
public function userFromPlat(Request $request, $platform_id){
|
|
$platform = Platform::find($platform_id);
|
|
$type = Paas::where('id', $platform->paas_id)->value('type'); //type 0:小程序 1:H5 2:APP
|
|
$app_id = $platform->app_id;
|
|
//是否是APP渠道
|
|
if($platform->paas_id == 44) {
|
|
$users = ApproveHistory::with('user:id,name,nickname,app_avatar,circle_avatar,photo,mobile,sex,rank_id,is_approved,type')->whereHas('user')->where('status', 1)->where('type', 'body')->where('from_platform', $platform->app_id)->paginate();
|
|
foreach ($users as $user) {
|
|
$user->name = $user->user->name;
|
|
$user->nickname = $user->user->nickname;
|
|
$user->app_avatar = $user->user->app_avatar;
|
|
$user->circle_avatar = $user->user->circle_avatar;
|
|
$user->photo = $user->user->photo;
|
|
$user->mobile = $user->user->mobile;
|
|
$user->sex = $user->user->sex;
|
|
$user->rank_id = $user->user->rank_id;
|
|
$user->is_approved = $user->user->is_approved;
|
|
$user->type = $user->user->type;
|
|
$user->avatar = $user->user->avatar;
|
|
$user->is_real_approved = $user->user->is_real_approved;
|
|
$user->created_at = $user->user->created_at;
|
|
unset($user->user);
|
|
}
|
|
}else {
|
|
if ($type == 2) {
|
|
$user_ids = Db::table('user_register_channels')->where('channel', $app_id)->pluck('user_id')->toArray();
|
|
$users = User::whereIn('id', $user_ids);
|
|
} else {
|
|
$users = User::where('from_platform', $app_id);
|
|
}
|
|
|
|
$keyword = $request->input('keyword');
|
|
if (!empty($keyword)) {
|
|
$keyword = trim($keyword);
|
|
$users = $users->where(function ($sql) use ($keyword) {
|
|
$sql->where('name', 'like', '%' . $keyword . '%')
|
|
->orWhere('mobile', 'like', '%' . $keyword . '%')
|
|
->orWhere('id', $keyword);
|
|
});
|
|
}
|
|
$users = $users->orderBy('id', 'desc')->paginate();
|
|
}
|
|
return $this->success('ok', $users);
|
|
}
|
|
|
|
//通过渠道完成实名认证的用户
|
|
public function approveFromPlat(Request $request, $platform_id){
|
|
$platfrom = Platform::find($platform_id);
|
|
if(empty($platfrom)){
|
|
return $this->failure('渠道不存在');
|
|
}
|
|
$user_id = PlatformBehavior::where('platform_id', $platform_id)->where('model', 'APPROVE')->pluck('user_id');
|
|
$users = User::whereIn('id', $user_id);
|
|
if($request->type == 'new'){
|
|
$users= $users->where('from_platform', $platfrom->app_id);
|
|
}elseif ($request->type == 'old'){
|
|
$users= $users->where('from_platform', '!=', $platfrom->app_id);
|
|
}
|
|
$users = $users->paginate();
|
|
return $this->success('ok', $users);
|
|
}
|
|
|
|
//通过该渠道进来的认证用户列表
|
|
public function approveUserFromPlat(Request $request,$platform_id){
|
|
$platfrom = Platform::find($platform_id);
|
|
if(empty($platfrom)){
|
|
return $this->failure('渠道不存在');
|
|
}
|
|
$user_ids = ApproveHistory::where('type','body')->where('status','1')->where('from_platform',$platfrom->app_id)->pluck('user_id');
|
|
$users = User::whereIn('id',$user_ids);
|
|
|
|
$is_new = $request->is_new;
|
|
if ($is_new == 1) {
|
|
$users = $users->where('is_new',0);
|
|
}
|
|
if ($is_new == 2) {
|
|
$users = $users->where('is_new',1);
|
|
}
|
|
|
|
$keyword = $request->input('keyword');
|
|
if ($keyword) {
|
|
$keyword = trim($keyword);
|
|
$users = $users->where(function ($sql) use ($keyword) {
|
|
$sql->where('name', 'like', '%' . $keyword . '%')
|
|
->orWhere('mobile', 'like', '%' . $keyword . '%')
|
|
->orWhere('id', $keyword);
|
|
});
|
|
}
|
|
$users = $users->paginate();
|
|
return $this->success('ok', $users);
|
|
}
|
|
}
|