public function apiRegister(Request $request) { $model = $request->Input('model'); $manufacturer = $request->Input('manufacturer'); $product = $request->Input('product'); $sdk_version = $request->Input('sdk_version'); $serial_number = $request->Input('serial_number'); $latitude = $request->Input('latitude'); $longitude = $request->input('longitude'); // Check if serial number exists in database $newDevice = Device::where('serial_number', '=', $serial_number)->first(); if (null == $newDevice) { $newDevice = new Device(); $newDevice->model = $model; $newDevice->manufacturer = $manufacturer; $newDevice->product = $product; $newDevice->sdk_version = $sdk_version; $newDevice->serial_number = $serial_number; $newDevice->latitude = $latitude; $newDevice->longitude = $longitude; $newDevice->save(); } return $newDevice->jsonSerializable(); }
public function store(Request $request) { $path = config('path'); $device = $request->input('device'); $location = $request->input('location'); $interval = $request->input('interval'); $types = $request->input('types'); $valid = Validator::make($request->all(), ['device' => 'required', 'location' => 'required', 'interval' => 'required|integer']); if ($valid->fails()) { $error = $valid->errors()->all(); return "false"; } $check = $this->check_type($types); if (!$check) { return "false"; } $new_device = new Device(); $new_device->name = $device; $new_device->location = $location; $new_device->interval = $interval; $new_device->save(); $result = shell_exec('python ' . $path . 'publish.py /regis/device/' . config('local') . ' ' . escapeshellarg(json_encode($new_device))); for ($i = 0; $i < count($types); $i++) { $mapping = new Mapping(); $mapping->device_id = $new_device->id; $mapping->type_id = $types[$i]['type_id']; $mapping->unit_id = $types[$i]['unit_id']; $mapping->min_threshold = $types[$i]['min_threshold']; $mapping->max_threshold = $types[$i]['max_threshold']; $mapping->formula = $types[$i]['formula']; $mapping->save(); $result = shell_exec('python ' . $path . 'publish.py /regis/mapping/' . config('local') . ' ' . escapeshellarg(json_encode($mapping))); } return "true"; }
/** * 绑定设备,用户尚未绑定用户 * @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]); }
/** * Store newly a device * * @param AddDeviceRequest $request * @return Response */ public function store(AddDeviceRequest $request) { $vld = Device::validate($request->all()); $vld = Device::validate($request->all()); if (!$vld->passes()) { return redirect()->route('devices.create')->with('messageNo', $vld->messages()); } $device = new Device($request->all()); $device->save(); return redirect()->route('devices.index')->with('messageOk', 'Add device successfully!'); }
public function testDeviceDelete() { $admin = User::find(1); $device = new Device(); $device->model = "Nexus 6P"; $device->manufacturer = "LGE"; $device->product = "bullhead"; $device->sdk_version = "23"; $device->serial_number = "009f582e7941a8e7"; $device->latitude = "51.5034070"; $device->longitude = "-0.1275920"; $device->save(); $savedDevice = Device::where('serial_number', '=', '009f582e7941a8e7')->first(); $this->actingAs($admin)->withSession(['foo' => 'bar'])->visit($this->modelUrl . (string) $savedDevice->id)->press('Delete')->seePageIs($this->modelUrl); }
public function storeData(Request $request) { $parameter = $request->input('parameter'); $local = $request->input('local'); $data = json_decode($request->input('data')); $local = Local::where('name', '=', $local)->get(); switch ($parameter) { case 'device': $device = new Device(); $device->id = (int) $data->id + (int) $local[0]->constant; $device->name = $data->name; $device->location = $data->location; $device->interval = $data->interval; $device->local_id = $local[0]->id; $device->save(); break; case 'mapping': $mapping = new Mapping(); $mapping->id = (int) $data->id + (int) $local[0]->constant; $mapping->device_id = (int) $data->device_id + (int) $local[0]->constant; $mapping->type_id = $data->type_id; $mapping->unit_id = $data->unit_id; $mapping->min_threshold = $data->min_threshold; $mapping->max_threshold = $data->max_threshold; $mapping->save(); break; case 'data': $mapping_id = (int) $data->mapping_id + (int) $local[0]->constant; $mapping = Mapping::where('id', '=', $mapping_id)->get(); $device_id = $mapping[0]->device_id; $type_id = $mapping[0]->type_id; $unit = Unit::find($mapping[0]->unit_id)->unit; $convert = new Convert(); $convert->device_id = $device_id; $convert->type_id = $type_id; $convert->value = $this->convert($data->value, $type_id, $unit); $convert->timestamp = $data->timestamp; $convert->save(); break; default: break; } return 'true'; }
public static function importDevice($request) { $new_device = new Device(); $new_device->id = $request->get('id'); $new_device->name = $request->get("name"); $new_device->category_id = $request->get('category_id'); $new_device->owner_id = $request->get('owner_id'); $new_device->status_id = $request->get('status_id'); $new_device->comment = $request->get('comment'); $new_device->availability = $request->get('availability'); $new_device->save(); }
| and give it the controller to call when that URI is requested. | */ use App\Device; use Illuminate\Http\Request; /** * Show Device Dashboard */ Route::get('/', function () { return view('devices', ['devices' => Device::orderBy('created_at', 'asc')->get()]); }); /** * Add New Device */ Route::post('/device', function (Request $request) { $validator = Validator::make($request->all(), ['name' => 'required|max:255']); if ($validator->fails()) { return redirect('/')->withInput()->withErrors($validator); } $device = new Device(); $device->name = $request->name; $device->save(); return redirect('/'); }); /** * Delete Device */ Route::delete('/device/{id}', function ($id) { Device::findOrFail($id)->delete(); return redirect('/'); });