diff --git a/app/Jobs/BiayaKartu.php b/app/Jobs/BiayaKartu.php new file mode 100644 index 0000000..64c6641 --- /dev/null +++ b/app/Jobs/BiayaKartu.php @@ -0,0 +1,81 @@ +syncAtmCards(); + } + + function syncAtmCards() + { + try { + $start = 0; + $limit = 100; + $loop = 1; + + while ($loop) { + $cards = DB::connection('oracle') + ->table('IST77.VW_CMS_VCARD') + ->where('crsts', 1) + ->skip($start) + ->take($limit) + ->get(); + + foreach ($cards as $card) { + Atmcard::updateOrCreate([ + 'crdno' => $card->crdno + ], [ + 'accflag' => $card->accflag, + 'cracc1' => $card->cracc1, + 'cracc2' => $card->cracc2, + 'cracc3' => $card->cracc3, + 'cracc4' => $card->cracc4, + 'cracc5' => $card->cracc5, + 'craccnam1' => $card->craccnam1, + 'craccnam2' => $card->craccnam2, + 'craccnam3' => $card->craccnam3, + 'craccnam4' => $card->craccnam4, + 'craccnam5' => $card->craccnam5, + 'crsts' => $card->crsts, + 'cttype' => $card->cttype, + 'ctdesc' => $card->ctdesc, + 'last_update' => $card->lastupdate, + ]); + } + + if (count($cards) < $limit) { + $loop = 0; + } + $start += $limit; + } + + } catch (Exception $e) { + Log::error('SyncDwh: syncCurrency: ' . $e->getMessage()); + } + } +} diff --git a/app/Models/Atmcard.php b/app/Models/Atmcard.php new file mode 100644 index 0000000..3f43217 --- /dev/null +++ b/app/Models/Atmcard.php @@ -0,0 +1,17 @@ +id(); + $table->string('crdno')->nullable(); + $table->string('accflag')->nullable(); + $table->string('cracc1')->nullable(); + $table->string('cracc2')->nullable(); + $table->string('cracc3')->nullable(); + $table->string('cracc4')->nullable(); + $table->string('cracc5')->nullable(); + $table->string('craccnam1')->nullable(); + $table->string('craccnam2')->nullable(); + $table->string('craccnam3')->nullable(); + $table->string('craccnam4')->nullable(); + $table->string('craccnam5')->nullable(); + $table->string('crsts')->nullable(); + $table->string('cttype')->nullable(); + $table->string('ctdesc')->nullable(); + $table->string('branch')->nullable(); + $table->string('currency')->nullable(); + $table->decimal('fee', 10, 2)->nullable(); + $table->timestamp('last_update')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('atmcards'); + } +};