public function testSort()
 {
     $idPart = Part::select('parts.id')->join('types', 'types.id', '=', 'parts.part_type_id')->where('types.entity_key', 'part')->where('types.name', 'sensor')->first()['id'];
     factory(\App\Entities\TireSensor::class)->create(['part_id' => $idPart]);
     $url = '/part/' . $idPart . '/edit?id=&temperature=&pressure=&battery=&latitude=&longitude=&number=';
     $this->visit($url . '&sort=temperature-asc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=id-asc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=vehicle-desc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=vehicle-asc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=part-type-desc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=part-type-asc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=cost-desc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
     $this->visit($url . '&sort=cost-asc')->see('mdl-cell--1-col mdl-data-table__cell--non-numeric">');
 }
 private function getFleetTireAndSensorParts(&$partsData, $vehicleId = null, $partsIds = null)
 {
     $partsQuery = Part::select('parts.id', 'parts.position', 'parts.vehicle_id')->join('types', 'parts.part_type_id', '=', 'types.id')->whereNotNull('parts.vehicle_id')->where('parts.company_id', Auth::user()['company_id'])->where('types.name', 'sensor');
     if (!empty($vehicleId)) {
         $partsQuery = $partsQuery->where('parts.vehicle_id', $vehicleId);
     }
     if (!empty($partsIds)) {
         $partsQuery = $partsQuery->whereIn('parts.id', $partsIds);
     }
     $partsResult = $partsQuery->get();
     $parts = [];
     $partsData = [];
     if (count($partsResult) > 0) {
         foreach ($partsResult as $part) {
             $parts[] = $part->id;
             $partsData[$part->id]['position'] = $part->position;
             $partsData[$part->id]['vehicle_id'] = $part->vehicle_id;
         }
     }
     return $parts;
 }
 public function getTiresTypeId()
 {
     $result = Part::select('types.id')->join('models', 'parts.part_model_id', '=', 'models.id')->join('types', 'parts.part_type_id', '=', 'types.id')->where('parts.company_id', Auth::user()['company_id'])->where('types.name', 'tire')->first();
     if (!empty($result->id)) {
         return $result->id;
     } else {
         return null;
     }
 }