public function run() { $folderpath = 'database/seeds/seed_files'; $folders = File::directories($folderpath); $latest = '11232015'; foreach ($folders as $value) { $_dir = explode("/", $value); $cnt = count($_dir); $name = $_dir[$cnt - 1]; $latest_date = DateTime::createFromFormat('mdY', $latest); $now = DateTime::createFromFormat('mdY', $name); if ($now > $latest_date) { $latest = $name; } } $file_path = $folderpath . "/" . $latest . "/Store SOS.xlsx"; echo (string) $file_path, "\n"; Model::unguard(); DB::statement('SET FOREIGN_KEY_CHECKS=0;'); DB::table('store_sos_tags')->truncate(); $reader = ReaderFactory::create(Type::XLSX); // for XLSX files $filePath = $file_path; $reader->open($filePath); // Accessing the sheet name when reading foreach ($reader->getSheetIterator() as $sheet) { if ($sheet->getName() == 'Sheet1') { $cnt = 0; foreach ($sheet->getRowIterator() as $row) { if (!empty($row[0])) { // dd($row); if ($cnt > 0) { // dd($row); $store = Store::where('store_code', $row[0])->first(); // dd($store); $category = FormCategory::where('category', strtoupper($row[2]))->first(); // dd($category); $sos = SosTagging::where('sos_tag', strtoupper($row[3]))->first(); // dd($sos); StoreSosTag::insert(array('store_id' => $store->id, 'form_category_id' => $category->id, 'sos_tag_id' => $sos->id)); // echo (string)$row[0], "\n"; } $cnt++; } } } else { } } $reader->close(); DB::statement('SET FOREIGN_KEY_CHECKS=1;'); Model::reguard(); }
/** * Update the specified resource in storage. * * @param Request $request * @param int $id * @return Response */ public function update(Request $request, $id) { // dd($request->all()); $this->validate($request, ['store' => 'required|max:100|unique_with:stores, store_code = store_code,' . $id, 'store_code' => 'required', 'distributor' => 'required|not_in:0', 'template' => 'required|not_in:0', 'passing' => 'required|not_in:0']); \DB::beginTransaction(); try { $store = Store::findOrFail($id); $store->distributor_id = $request->distributor; $store->store_code = $request->store_code; $store->store = $request->store; $store->grade_matrix_id = $request->passing; $store->audit_template_id = $request->template; $store->update(); StoreSosTag::where('store_id', $store->id)->delete(); if (!empty($request->cat)) { foreach ($request->cat as $key => $value) { $data[] = ['store_id' => $store->id, 'form_category_id' => $key, 'sos_tag_id' => $value]; } StoreSosTag::insert($data); } \DB::commit(); Session::flash('flash_message', 'Store successfully updated!'); return redirect()->route("store.edit", [$id]); } catch (Exception $e) { DB::rollBack(); return redirect()->back(); } }