60 lines
1.7 KiB
PHP
60 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\Audit;
|
|
use App\Services\AuditService;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class AuditController extends Controller
|
|
{
|
|
/**
|
|
* 审核列表
|
|
* @param Request $request
|
|
* @return \Illuminate\Http\JsonResponse|string
|
|
*/
|
|
public function list(Request $request)
|
|
{
|
|
try {
|
|
$keyword = $request->input('keyword');
|
|
$type = $request->input('type');
|
|
$status = $request->input('status', 0);
|
|
$data = Audit::with('user','operator')
|
|
->whereHas('user', function ($query) use ($keyword) {
|
|
if ($keyword) {
|
|
$query->where(DB::raw('concat(id,nickname,mobile)'), 'like', "%{$keyword}%");
|
|
}
|
|
})
|
|
->where(compact('type', 'status'))
|
|
->orderBy('id', 'desc')
|
|
->paginate();
|
|
return $this->success('ok', $data);
|
|
} catch (\Exception $e) {
|
|
return $this->failure($e->getMessage());
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 审核操作
|
|
* @param Request $request
|
|
* @param AuditService $s
|
|
* @return \Illuminate\Http\JsonResponse|string
|
|
*/
|
|
public function operate(Request $request,AuditService $s)
|
|
{
|
|
try {
|
|
$s->id = $request->input('id');
|
|
$s->status = $request->input('status');
|
|
DB::beginTransaction();
|
|
$s->handle();
|
|
DB::commit();
|
|
return $this->success('ok');
|
|
} catch (\Exception $e) {
|
|
DB::rollback();
|
|
return $this->failure($e->getMessage());
|
|
}
|
|
}
|
|
|
|
} |