添加 年龄限制
This commit is contained in:
parent
c692475809
commit
96320162fc
@ -5,6 +5,7 @@
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Support\RealNameSupport;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Carbon;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
|
||||
class RealNameController extends Controller
|
||||
@ -16,6 +17,18 @@ public function store(Request $request)
|
||||
'id_card' => 'required|string|size:18|unique:users,id_card',
|
||||
]);
|
||||
|
||||
$realNameSupport = new RealNameSupport();
|
||||
|
||||
|
||||
$birthday = $realNameSupport->getBirthday($request->input('id_card'));
|
||||
// 检查年龄是否在区间内 settings.supports.real_name.min_age ~ settings.supports.real_name.max_age
|
||||
if (Carbon::now()->diffInYears($birthday) < config('settings.supports.real_name.min_age') || Carbon::now()->diffInYears($birthday) > config('settings.supports.real_name.max_age')) {
|
||||
$message = '至少需要 ' . config('settings.supports.real_name.min_age') . ' 岁,最大 ' . config('settings.supports.real_name.max_age') . ' 岁。';
|
||||
|
||||
return back()->with('error', $message);
|
||||
}
|
||||
|
||||
|
||||
$user = $request->user();
|
||||
|
||||
if ($user->real_name_verified_at !== null) {
|
||||
@ -26,7 +39,6 @@ public function store(Request $request)
|
||||
return back()->with('error', '您的余额不足。请保证余额大于 1 元。');
|
||||
}
|
||||
|
||||
$realNameSupport = new RealNameSupport();
|
||||
$output = $realNameSupport->create($user->id, $request->input('real_name'), $request->input('id_card'));
|
||||
|
||||
// 标记用户正在实名,缓存 600s
|
||||
|
@ -91,8 +91,6 @@ protected static function boot()
|
||||
$user->birthday_at = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
@ -3,6 +3,7 @@
|
||||
namespace App\Support;
|
||||
|
||||
use Illuminate\Http\Client\PendingRequest;
|
||||
use Illuminate\Support\Carbon;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use Illuminate\Support\Str;
|
||||
@ -139,4 +140,13 @@ private function verifyIfSuccess(string $request, string $sign): bool
|
||||
return $flag === 1;
|
||||
}
|
||||
|
||||
public function getBirthday(string $id_card): string
|
||||
{
|
||||
$year = substr($id_card, 6, 4);
|
||||
$month = substr($id_card, 10, 2);
|
||||
$day = substr($id_card, 12, 2);
|
||||
|
||||
return $year . '-' . $month . '-' . $day;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -25,7 +25,9 @@
|
||||
],
|
||||
'supports' => [
|
||||
'real_name' => [
|
||||
'code' => env('SUPPORT_REAL_NAME_APP_CODE')
|
||||
'code' => env('SUPPORT_REAL_NAME_APP_CODE'),
|
||||
'min_age' => env('SUPPORT_REAL_NAME_MIN_AGE', 13),
|
||||
'max_age' => env('SUPPORT_REAL_NAME_MAX_AGE', 60),
|
||||
]
|
||||
],
|
||||
'forum' => [
|
||||
|
Loading…
Reference in New Issue
Block a user