public function postupdateig(Request $request) { if ($request->hasFile('file')) { $file_path = $request->file('file')->move(storage_path() . '/uploads/temp/', $request->file('file')->getClientOriginalName()); \DB::beginTransaction(); try { set_time_limit(0); $reader = ReaderFactory::create(Type::XLSX); // for XLSX files $reader->open($file_path); foreach ($reader->getSheetIterator() as $sheet) { if ($sheet->getName() == 'Sheet1') { $cnt = 0; foreach ($sheet->getRowIterator() as $row) { if ($cnt > 0) { if (!empty($row[5])) { // dd($row); $updated_ig = UpdatedIg::where('store_code', $row[8])->where('sku_code', $row[13])->first(); if (!empty($updated_ig)) { $updated_ig->ig = $row[23]; $updated_ig->update(); } else { // dd($row); UpdatedIg::firstOrCreate(['area' => $row[0], 'region_code' => $row[1], 'region' => $row[2], 'distributor_code' => $row[3], 'distributor' => $row[4], 'agency_code' => $row[5], 'agency' => $row[6], 'storeid' => $row[7], 'store_code' => $row[8], 'store_name' => $row[9], 'channel_code' => $row[10], 'channel' => $row[11], 'other_code' => $row[12], 'sku_code' => $row[13], 'description' => $row[14], 'division' => $row[15], 'category' => $row[16], 'sub_category' => $row[17], 'brand' => $row[18], 'conversion' => $row[19], 'min_stock' => $row[20], 'fso_multiplier' => $row[21], 'lpbt' => $row[22], 'ig' => $row[23]]); } $store = Store::where('store_code', $row[8])->first(); if (!empty($store)) { $item = Item::where('sku_code', $row[13])->first(); if (!empty($item)) { StoreItem::where('store_id', $store->id)->where('item_id', $item->id)->update(['ig' => $row[23]]); } } } } $cnt++; } } } $hash = UpdateHash::find(1); if (empty($hash)) { UpdateHash::create(['hash' => \Hash::make(date('Y-m-d H:i:s'))]); } else { $hash->hash = md5(date('Y-m-d H:i:s')); $hash->update(); } \DB::commit(); $reader->close(); } catch (\Exception $e) { \DB::rollback(); dd($e); } if (\File::exists($file_path)) { \File::delete($file_path); } Session::flash('flash_message', 'Updated IG successfully updated.'); Session::flash('flash_class', 'alert-success'); } else { Session::flash('flash_message', 'Error updating item IG.'); Session::flash('flash_class', 'alert-danger'); } return redirect()->route("item.updatedig"); }