|
@@ -135,6 +135,27 @@ class ApiController extends Controller
|
|
return response()->json(['status' => 'success', 'info' => '操作成功', 'data' => $data]);
|
|
return response()->json(['status' => 'success', 'info' => '操作成功', 'data' => $data]);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function getPhone(Request $request)
|
|
|
|
+ {
|
|
|
|
+ if(empty($request->input('id')) || empty($we_chat_user = WeChatUser::find($request->input('id')))) {
|
|
|
|
+ return response()->json(['status' => 'fail', 'info' => '找不到用户']);
|
|
|
|
+ }
|
|
|
|
+ if(empty($request->input('iv')) || empty($request->input('encryptedData'))) {
|
|
|
|
+ return response()->json(['status' => 'error', 'info' => '参数错误']);
|
|
|
|
+ }
|
|
|
|
+ $iv = $request->input('iv');
|
|
|
|
+ $encryptedData = $request->input('encryptedData');
|
|
|
|
+ $session_key = $we_chat_user->session_key;
|
|
|
|
+ $app = app('wechat.mini_program');
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ $info = $app->encryptor->decryptData($session_key, $iv, $encryptedData);
|
|
|
|
+ if(isset($info['purePhoneNumber'])) {
|
|
|
|
+ return response()->json(['status' => 'success', 'info' => '操作成功', 'phone' => $info['purePhoneNumber']]);
|
|
|
|
+ }
|
|
|
|
+ return response()->json(['status' => 'fail', 'info' => '没有绑定手机']);
|
|
|
|
+ }
|
|
|
|
+
|
|
public function bindPhone(Request $request)
|
|
public function bindPhone(Request $request)
|
|
{
|
|
{
|
|
if(empty($request->input('id')) || empty($we_chat_user = WeChatUser::find($request->input('id')))) {
|
|
if(empty($request->input('id')) || empty($we_chat_user = WeChatUser::find($request->input('id')))) {
|
|
@@ -150,7 +171,27 @@ class ApiController extends Controller
|
|
|
|
|
|
|
|
|
|
$info = $app->encryptor->decryptData($session_key, $iv, $encryptedData);
|
|
$info = $app->encryptor->decryptData($session_key, $iv, $encryptedData);
|
|
- Log::info($info);
|
|
|
|
|
|
+ if(isset($info['purePhoneNumber'])) {
|
|
|
|
+ $student = Student::where('phone', $info['purePhoneNumber'])->first();
|
|
|
|
+ if(empty($student)) {
|
|
|
|
+ return response()->json(['status' => 'fail', 'info' => '找不到学员']);
|
|
|
|
+ }
|
|
|
|
+ $res = $student->update([
|
|
|
|
+ 'open_id' => $we_chat_user->open_id,
|
|
|
|
+ 'nickname' => $we_chat_user->nickname,
|
|
|
|
+ 'gender' => $we_chat_user->gender,
|
|
|
|
+ 'city' => $we_chat_user->city,
|
|
|
|
+ 'province' => $we_chat_user->province,
|
|
|
|
+ 'country' => $we_chat_user->country,
|
|
|
|
+ 'avatar_url' => $we_chat_user->avatar_url
|
|
|
|
+ ]);
|
|
|
|
+ if(empty($res)) {
|
|
|
|
+ return response()->json(['status' => 'fail', 'info' => '数据更新失败']);
|
|
|
|
+ }
|
|
|
|
+ $data = ['id' => $student->id, 'nickname' => $student->nickname, 'avatar_url' => $student->avatar_url];
|
|
|
|
+ return response()->json(['status' => 'success', 'info' => '操作成功', 'data' => $data]);
|
|
|
|
+ }
|
|
|
|
+ return response()->json(['status' => 'fail', 'info' => '没有绑定手机']);
|
|
}
|
|
}
|
|
|
|
|
|
public function checkPosition(Request $request)
|
|
public function checkPosition(Request $request)
|