public function edit($idEntry)
 {
     $entry = $this->entryRepo->find($idEntry);
     $entry = $this->entryRepo->getInputs($entry);
     $this->helper->validateRecord($entry);
     $company_id = CompanyRepositoryEloquent::getCompanies();
     $entry_type_id = TypeRepositoryEloquent::getTypes('entry');
     $vendor_id = ContactRepositoryEloquent::getContacts('vendor', true);
     $vehicle_id = VehicleRepositoryEloquent::getVehicles();
     $parts = PartRepositoryEloquent::getPartsByVehicle($entry->vehicle_id);
     $entry_parts = [];
     $typedialog = TypeRepositoryEloquent::getDialogStoreOptions('entry');
     foreach ($entry->partsEntries->toArray() as $entryPart) {
         $entry_parts[] = $entryPart['part_id'];
     }
     $attributes = [];
     if (config('app.attributes_api_url') != null) {
         $attributes = AttributeRepositoryEloquent::getAttributesWithValues('entry.' . $entry->type->name, $idEntry);
     }
     return view("entry.edit", compact('entry', 'entry_type_id', 'company_id', 'vehicle_id', 'vendor_id', 'parts', 'entry_parts', 'attributes', 'typedialog'));
 }
 public function getFleetData($vehicle_id = null)
 {
     $vehicles = Vehicle::where('company_id', Auth::user()['company_id']);
     if (!empty($vehicle_id)) {
         $vehicles = $vehicles->where('id', $vehicle_id);
     }
     $vehicles = $vehicles->get();
     $tireData = [];
     $modelMaps = [];
     $gpsData = [];
     if (!empty($vehicles)) {
         $tires = PartRepositoryEloquent::getTiresVehicle();
         $fleetGpsData = $this->getFleetGpsData();
         $tireAndSensorData = $this->getFleetTireAndSensorData();
         foreach ($vehicles as $vehicle) {
             $modelMaps[$vehicle->model_vehicle_id] = $vehicle->model->map;
             $tireData[$vehicle->id] = [];
             $tiresPositions = PartRepositoryEloquent::getTiresPositions($tires, $vehicle->id);
             if (!empty($tiresPositions)) {
                 foreach ($tiresPositions as $position => $filled) {
                     if ($filled) {
                         if (!empty($tireAndSensorData[$vehicle->id][$position])) {
                             $tireData[$vehicle->id][$position] = $tireAndSensorData[$vehicle->id][$position];
                         } else {
                             $tireData[$vehicle->id][$position] = $tireAndSensorData[0];
                         }
                     }
                 }
             }
             $gpsData[$vehicle->id] = [];
             if (!empty($fleetGpsData[$vehicle->id])) {
                 $gpsData[$vehicle->id] = $fleetGpsData[$vehicle->id];
             }
         }
     }
     return ['vehicles' => $vehicles, 'tireData' => $tireData, 'gpsData' => $gpsData, 'modelMaps' => $modelMaps];
 }
 public function getPartsByVehicle($idVehicle)
 {
     return PartRepositoryEloquent::getPartsByVehicle($idVehicle);
 }