添加 年龄限制
This commit is contained in:
parent
c692475809
commit
96320162fc
@ -5,6 +5,7 @@
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Support\RealNameSupport;
|
use App\Support\RealNameSupport;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Support\Carbon;
|
||||||
use Illuminate\Support\Facades\Cache;
|
use Illuminate\Support\Facades\Cache;
|
||||||
|
|
||||||
class RealNameController extends Controller
|
class RealNameController extends Controller
|
||||||
@ -16,6 +17,18 @@ public function store(Request $request)
|
|||||||
'id_card' => 'required|string|size:18|unique:users,id_card',
|
'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();
|
$user = $request->user();
|
||||||
|
|
||||||
if ($user->real_name_verified_at !== null) {
|
if ($user->real_name_verified_at !== null) {
|
||||||
@ -26,7 +39,6 @@ public function store(Request $request)
|
|||||||
return back()->with('error', '您的余额不足。请保证余额大于 1 元。');
|
return back()->with('error', '您的余额不足。请保证余额大于 1 元。');
|
||||||
}
|
}
|
||||||
|
|
||||||
$realNameSupport = new RealNameSupport();
|
|
||||||
$output = $realNameSupport->create($user->id, $request->input('real_name'), $request->input('id_card'));
|
$output = $realNameSupport->create($user->id, $request->input('real_name'), $request->input('id_card'));
|
||||||
|
|
||||||
// 标记用户正在实名,缓存 600s
|
// 标记用户正在实名,缓存 600s
|
||||||
|
@ -91,8 +91,6 @@ protected static function boot()
|
|||||||
$user->birthday_at = null;
|
$user->birthday_at = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
namespace App\Support;
|
namespace App\Support;
|
||||||
|
|
||||||
use Illuminate\Http\Client\PendingRequest;
|
use Illuminate\Http\Client\PendingRequest;
|
||||||
|
use Illuminate\Support\Carbon;
|
||||||
use Illuminate\Support\Facades\Cache;
|
use Illuminate\Support\Facades\Cache;
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
@ -139,4 +140,13 @@ private function verifyIfSuccess(string $request, string $sign): bool
|
|||||||
return $flag === 1;
|
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' => [
|
'supports' => [
|
||||||
'real_name' => [
|
'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' => [
|
'forum' => [
|
||||||
|
Loading…
Reference in New Issue
Block a user