/** * 绑定设备,用户尚未绑定用户 * @return \Illuminate\Http\JsonResponse */ public function bind() { $token = Input::get('token'); $data = Input::all(); /** * @var Token $token */ $token = Token::whereValue($token)->valid()->first(); if (!$token) { return Response::error(Lang::get("errors.expired_token"), 403); } $device = Device::whereUniqueId(Input::get('unique_id'))->with('user')->whereUserId($token->owner)->first(); if ($device) { $device->fill($data); } else { $validator = Validator::make($data, Device::create_rules($token->owner), Device::messages()); if ($validator->fails()) { return Response::errors($validator->errors(), 400); } $device = new Device($data); $device->token = Token::generateValue(); $device->user_id = $token->owner; } $device->save(); return Response::json(['device' => $device, 'user' => $device->user, 'token' => $device->token]); }
/** * 设备信息更新 * Update the specified resource in storage. * * @param Request $request * @param int $id * @return Response */ public function update(Request $request, $id) { $device = Device::current(); if ($device->id != $id) { App::abort(403); } $data = $request::only(['alias', 'network_type']); $data = array_filter($data, 'strlen'); $validator = Validator::make($data, Device::update_rules($device->user_id), Device::messages()); if ($validator->fails()) { return Response::errors($validator->errors(), 400); } $device->fill($data); $device->save(); return Response::json($device); }