where('nama', 'sticker') ->lockForUpdate() ->first(); $nextIndex = str_pad($index->value + 1, 4, '0', STR_PAD_LEFT); // update index DB::table('indexnum') ->where('nama', 'sticker') ->update(['value' => $nextIndex]); $notrans = sprintf( '%s/STK/%s/%s', $nextIndex, Carbon::now()->format('m'), Carbon::now()->format('Y') ); $transStiker = TransaksiStiker::where('notrans', $sticker->notrans)->first(); $detailTransStiker = DetailTransaksiStiker::where('notrans', $sticker->notrans)->first(); Log::info(json_encode($transStiker)); Log::info(json_encode($detailTransStiker)); // HEADER DB::table('transaksi_stiker')->insert([ 'notrans' => $notrans, 'nama' => $transStiker->nama, 'alamat' => $transStiker->alamat, 'telepon' => $transStiker->telepon, 'jenis_transaksi' => $transStiker->jenis_transaksi, 'harga' => $transStiker->harga, 'keterangan' => $transStiker->keterangan, 'tanggal' => Carbon::now(), 'awal' => Carbon::now()->startOfMonth(), 'akhir' => Carbon::now()->endOfMonth(), 'maks' => $transStiker->maks, 'no_id' => $transStiker->no_id, 'unit_kerja' => $transStiker->unit_kerja, 'no_induk' => $transStiker->no_induk, 'area' => $transStiker->area, 'jenis_stiker' => $transStiker->jenis_stiker, 'unitno' => $transStiker->unitno, 'exit_pass' => $transStiker->exit_pass, 'hari_ke' => $transStiker->hari_ke, 'jenis_langganan' => $transStiker->jenis_langganan, 'no_kuitansi' => $transStiker->no_kuitansi, 'tgl_edited' => Carbon::now(), 'tipe_exit_pass' => $transStiker->tipe_exit_pass, 'seq_code' => $transStiker->seq_code, 'reserved' => $transStiker->reserved, 'batasan_jam' => $transStiker->batasan_jam, 'batasan_awal' => $transStiker->batasan_awal, 'batasan_akhir' => $transStiker->batasan_akhir, 'asuransi' => $transStiker->asuransi, 'visitor' => $transStiker->visitor, ]); // DETAIL DB::table('detail_transaksi_stiker')->insert([ 'notrans' => $notrans, 'nopol' => $detailTransStiker->nopol, 'jenis_mobil' => $detailTransStiker->jenis_mobil, 'adm' => $detailTransStiker->adm, 'kategori' => $detailTransStiker->kategori, 'jenis_member' => $detailTransStiker->jenis_member, 'akses' => $detailTransStiker->akses, 'akses_out' => $detailTransStiker->akses_out, 'status' => $detailTransStiker->status, 'merk' => $detailTransStiker->merk, 'tipe' => $detailTransStiker->tipe, 'tahun' => $detailTransStiker->tahun, 'warna' => $detailTransStiker->warna, 'keterangan' => $detailTransStiker->keterangan, ]); DB::table('indexnum') ->where('nama', 'sticker') ->update(['value' => $nextIndex]); return $notrans; }); } }