|
|
<?php
|
|
|
|
|
|
namespace App\Http\Controllers\API\H5;
|
|
|
|
|
|
use Illuminate\Http\Request;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
use Illuminate\Support\Facades\Hash;
|
|
|
use Illuminate\Support\Facades\Validator;
|
|
|
|
|
|
class MemberController
|
|
|
{
|
|
|
public function Register()
|
|
|
{
|
|
|
$systemStatus = \Yz::systemStatusCheck();
|
|
|
if(!$systemStatus['status']){
|
|
|
return \Yz::echoError1($systemStatus['msg']);
|
|
|
}
|
|
|
$info = request('info');
|
|
|
$validator = Validator::make($info, [
|
|
|
'tel' => 'required|string|max:20|unique:members,tel',
|
|
|
'password' => 'required|string|min:6',
|
|
|
'confirmPassword' => 'required|string|same:password',
|
|
|
'name' => 'required|string|max:100',
|
|
|
'sfz' => 'required|string|max:18|unique:members,sfz', // 测试阶段放宽限制
|
|
|
'card_number' => 'required|string',
|
|
|
'bank_name' => 'required|string',
|
|
|
'verifyCode' => 'required|string',
|
|
|
], [
|
|
|
'password.min' => '密码最少6位',
|
|
|
'confirmPassword.same' => '两次输入的密码不一致。',
|
|
|
'tel.unique' => '该手机号已注册。',
|
|
|
'sfz.unique' => '该身份证号已被使用。',
|
|
|
]);
|
|
|
|
|
|
if ($validator->fails()) {
|
|
|
return \Yz::echoError1('参数验证失败!' . json_encode($validator->errors()->all(), JSON_UNESCAPED_UNICODE));
|
|
|
}
|
|
|
|
|
|
// 验证通过,处理业务逻辑
|
|
|
// 例如:创建用户、保存银行卡信息等
|
|
|
$insertData = [
|
|
|
'tel' => $info['tel'],
|
|
|
'password' => Hash::make($info['password']), // 加密密码
|
|
|
'name' => $info['name'],
|
|
|
'sfz' => $info['sfz'],
|
|
|
'card_number' => $info['card_number'],
|
|
|
'balance' => 0,
|
|
|
'interest_balance' => 0,
|
|
|
'total_interest' => 0,
|
|
|
'bank_name' => $info['bank_name'],
|
|
|
'res_bank_img' => $info['res_bank_img'],
|
|
|
];
|
|
|
|
|
|
$id = DB::table('members')->insertGetId($insertData);
|
|
|
if (!!$id) {
|
|
|
return \Yz::Return(true, '注册成功!', ['user_id' => $id]);
|
|
|
} else {
|
|
|
return \Yz::echoError1('注册失败!');
|
|
|
}
|
|
|
|
|
|
}
|
|
|
public function GetInfo(Request $request)
|
|
|
{
|
|
|
$systemStatus = \Yz::systemStatusCheck();
|
|
|
if(!$systemStatus['status']){
|
|
|
return \Yz::echoError1($systemStatus['msg']);
|
|
|
}
|
|
|
$userid = $request->get('userid');//中间件产生的参数
|
|
|
$memberInfo = DB::table('members')
|
|
|
->select('id','name','tel','balance','total_interest')
|
|
|
->where(['id'=>$userid,'status'=>1,'is_del'=>0])->first();
|
|
|
if(!!$memberInfo){
|
|
|
// 对电话号码脱敏:保留前3位和后4位,中间用 **** 代替
|
|
|
if (!empty($memberInfo->tel)) {
|
|
|
$tel = $memberInfo->tel;
|
|
|
if (strlen($tel) >= 7) {
|
|
|
$memberInfo->tel = substr($tel, 0, 3) . '****' . substr($tel, -4);
|
|
|
}
|
|
|
}
|
|
|
$memberInfo->first_name_char = !empty($memberInfo->name) ? mb_substr($memberInfo->name, 0, 1, 'UTF-8') : '';
|
|
|
$configs=DB::table('configs')->whereIn('label',['存款利率','借款利率'])->get();
|
|
|
foreach ($configs as $config) {
|
|
|
$memberInfo->{$config->label}=$config->value;
|
|
|
}
|
|
|
// $memberInfo->interest_rate=$config->value;
|
|
|
return \Yz::Return(true, '用户信息获取成功!', ['info'=>$memberInfo]);
|
|
|
}else{
|
|
|
return \Yz::echoError1('用户不存在');
|
|
|
}
|
|
|
}
|
|
|
}
|