diff --git a/app/Console/Commands/DailyGadai.php b/app/Console/Commands/DailyGadai.php new file mode 100644 index 0000000..5b368d5 --- /dev/null +++ b/app/Console/Commands/DailyGadai.php @@ -0,0 +1,69 @@ +get(); + $current = Carbon::now(); + foreach($cawangan as $cawangan_mysql){ + $all_gadai = Gadai::on($cawangan_mysql['mysql'])->where('sttebus','!=','L')->orWhere('sttebus','!=','T')->get(); + foreach($all_gadai as $gadai){ + $tarikh_gadai = Carbon::parse($gadai['t_gadai'].' '. $gadai['masa']); + $diff = date_diff($tarikh_gadai,$current); + $month = $diff->format("%m"); + $days = $diff->format("%d"); + $days = $days + 1; + if($days >= 1 && $days <= 15) + { + $extensivemonth = 0.5; + } + else if($days >= 16) + { + $extensivemonth = 1; + } + $tempoh_gadai = $month + $extensivemonth; + Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array( + 'jbg' => $tempoh_gadai + )); + } + } + } +} \ No newline at end of file diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index ad6e311..7f069f4 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -5,6 +5,10 @@ namespace App\Console; use Illuminate\Console\Scheduling\Schedule; use Laravel\Lumen\Console\Kernel as ConsoleKernel; +use App\Cawangan; +use App\Gadai; +use Carbon\Carbon; + class Kernel extends ConsoleKernel { /** @@ -13,7 +17,7 @@ class Kernel extends ConsoleKernel * @var array */ protected $commands = [ - // + Commands\DailyGadai::class, ]; /** @@ -25,5 +29,7 @@ class Kernel extends ConsoleKernel protected function schedule(Schedule $schedule) { // + + $schedule->command('gadai:daily')->daily()->at('00:00')->timezone('Asia/Kuala_Lumpur'); } } diff --git a/app/Gadai.php b/app/Gadai.php index 96f8f1b..0c4a8fe 100644 --- a/app/Gadai.php +++ b/app/Gadai.php @@ -7,15 +7,62 @@ use Illuminate\Database\Eloquent\Model; class Gadai extends Model { protected $table = 'gadai'; + public $timestamps = false; /** * The attributes that are mass assignable. * * @var array */ - // protected $fillable = [ - - // ]; + protected $fillable = [ + 'kodcaw', + 'norujukan', + 'nopelanggan', + 'nokp', + 't_gadai', + 'masa', + 'nilaimarhun', + 'berat', + 'pinjaman', + 'telahbayar', + 'upahtelahbyr', + 'CajTelahByr', + 'ansuran', + 'ansupah', + 'kadarupah', + 'tempoh', + 't_Lelong', + 't_Hapus', + 'sttebus', + 'terima', + 'cetak', + 'tnCek', + 'noCek', + 'bkcode', + 'teller', + 'pelulus', + 'cancelid', + 'canceltime', + 'f_lulus', + 'tag', + 'jbg', + 'bakiPJM', + 'bakiupah', + 'marhun' , + 'taglel' , + 't_update', + 'penilai' , + 'tagserah' , + 'namapelulus' , + 'percentpinj' , + 'namateller' , + 'jumtebus' , + 'upahnotis', + 'tagpalsu' , + 'tagcetak' , + 'lel1stop' , + 'tebus', + ]; /** * The attributes excluded from the model's JSON form. diff --git a/app/Http/Controllers/GadaiController.php b/app/Http/Controllers/GadaiController.php index f97eeb2..e061576 100644 --- a/app/Http/Controllers/GadaiController.php +++ b/app/Http/Controllers/GadaiController.php @@ -19,7 +19,7 @@ class GadaiController extends Controller public function gadaiTransactionByCawanganAndDay($cawangan_code,$date){ $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$cawangan_code)->first(); - $gadaiTransaction = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$date)->get(); + $gadaiTransaction = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$date)->count(); return response()->json($gadaiTransaction); } @@ -61,7 +61,7 @@ class GadaiController extends Controller public function create($kodcaw,Request $request) { - $current = Carbon::now(); + $current = Carbon::now()->setTimezone('Asia/Kuala_Lumpur');; $current = new Carbon(); $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); @@ -71,31 +71,24 @@ class GadaiController extends Controller 'nopelanggan' => $request->nopelanggan, 'nokp' => $request->nokp, 't_gadai' => $current->toDateString(), - 'masa' =>$current->toTimeString(), - 'nilaimarhun' => $request->nilaimarhun, - 'n_marhuns' => $request->nilaimarhun, - 'berat' => $request->berat, - 'pinjaman' => $request->pinjaman, - 'kadarupah' => $request->kadarupah, - 'tempoh' => 6, - 't_matang' => $current->addMonths(6)->subDays(1), - 'sttebus' => '', - 'marhun' => $request->marhun, - 'jantina' => $request->jantina, - 'bangsa' => $request->bangsa, - 'jenistebus' => '', - 'penilai' => 'AFIQ', - 'namapenilai' => 'Afiq', - 'namapelulus' => 'Afiq', - 'percentpinj' => $request->percentpinj, - 'namateller' => 'Afiq', - 'tagpalsu' => 0, - 'tellernew' => '', - 'tagcall' => '' + 'masa' =>$current->toTimeString() ]); return response()->json($gadai, 201); } + public function daftarGadaiMarhun($norujukan,Request $request) + { + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + $gadai = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->update(array( + 'nilaimarhun' => $request->nilaimarhun, + 'pinjaman' => $request->pinjaman, + 'kadarupdah' => $request->kadarupah, + 'marhun' => $request->marhun, + 'percentpinj' => $request->percentpinj + )); + return response()->json($gadai, 200); + } + public function update($id, Request $request) { $gadai = Gadai::findOrFail($id); @@ -104,6 +97,23 @@ class GadaiController extends Controller return response()->json($gadai, 200); } + public function getTransactionByTarikh($kodcaw,$tarikh){ + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); + + $gadai_transaction = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$tarikh)->get(); + + return response()->json($gadai); + } + + public function updateOneGadaiByNorujukan($norujukan,$kodcaw,Request $request){ + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); + $gadai = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->update(array( + '' + )); + + return response()->json($gadai); + } + public function delete($id) { Gadai::findOrFail($id)->delete(); diff --git a/app/Http/Controllers/MarhunController.php b/app/Http/Controllers/MarhunController.php index 7f6079c..ef35e0d 100644 --- a/app/Http/Controllers/MarhunController.php +++ b/app/Http/Controllers/MarhunController.php @@ -43,23 +43,6 @@ class MarhunController extends Controller $current = Carbon::now(); $current = new Carbon(); - $nota = ""; - if($request->rosak != ""){ - $nota = $nota . $request->rosak; - } - if($request->putus != ""){ - $nota = $nota . ', ' . $request->putus; - } - if($request->patah != ""){ - $nota = $nota . ', ' . $request->patah; - } - if($request->permata != ""){ - $nota = $nota . ', ' . $request->permata; - } - if($request->sebelah != ""){ - $nota = $nota . ', ' . $request->sebelah; - } - $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); $marhun = Marhun::on($cawangan['mysql'])->create([ 'kodcaw'=> $kodcaw, @@ -67,7 +50,7 @@ class MarhunController extends Controller 't_gadai' => $current->toDateString(), 'bil' => 1, 'marhun' => $request->marhun, - 'nota' => $nota, + 'nota' => $request->nota, 'karat' => $request->karat, 'berat' => $request->berat_emas, 'harga' => $request->harga, diff --git a/app/Http/Controllers/MaxPinjamanController.php b/app/Http/Controllers/MaxPinjamanController.php new file mode 100644 index 0000000..734d04b --- /dev/null +++ b/app/Http/Controllers/MaxPinjamanController.php @@ -0,0 +1,15 @@ +get(); + + return response()->json($pinjaman); + } +} \ No newline at end of file diff --git a/app/Http/Controllers/TransactionController.php b/app/Http/Controllers/TransactionController.php new file mode 100644 index 0000000..ff20cdb --- /dev/null +++ b/app/Http/Controllers/TransactionController.php @@ -0,0 +1,57 @@ +create([ + 'trans_type' => $request->trans_type, + 'norujukan' => $request->norujukan, + 'nokp' => $request->nokp, + 'teller' => $request->teller, + 'kodcaw' => $request->kodcaw, + 'duit_masuk' => $request->duit_masuk, + 'created_at' => $current, + ]); + + return response()->json($transaction,201); + } + + public function duitKeluar(Request $request){ + $current = Carbon::now(); + $current = new Carbon(); + + $transaction = Transaction::on('mysql7')->create([ + 'trans_type' => $request->trans_type, + 'norujukan' => $request->norujukan, + 'nokp' => $request->nokp, + 'teller' => $request->teller, + 'kodcaw' => $request->kodcaw, + 'duit_keluar' => $request->duit_keluar, + 'created_at' => $current, + ]); + + return response()->json($transaction,201); + } + + public function showAllTransaction(){ + $transaction = Transaction::on('mysql7')->get(); + + return response()->json($transaction); + } + + public function getTransactionByRujukan($norujukan){ + $transaction = Transaction::on('mysql7')->where('norujukan','=',$norujukan)->get(); + + return response()->json($transaction); + } +} \ No newline at end of file diff --git a/app/MaxPinjaman.php b/app/MaxPinjaman.php new file mode 100644 index 0000000..569aa2f --- /dev/null +++ b/app/MaxPinjaman.php @@ -0,0 +1,26 @@ + '', 'strict' => false, ], + 'mysql8' => [ + 'driver' => 'mysql', + 'host' => env('DB_HOST_8'), + 'port' => env('DB_PORT'), + 'database' => env('DB_DATABASE_8'), + 'username' => env('DB_USERNAME_8'), + 'password' => env('DB_PASSWORD_8'), + 'charset' => 'utf8', + 'collation' => 'utf8_unicode_ci', + 'prefix' => '', + 'strict' => false, + ], + 'mysql9' => [ + 'driver' => 'mysql', + 'host' => env('DB_HOST_9'), + 'port' => env('DB_PORT'), + 'database' => env('DB_DATABASE_9'), + 'username' => env('DB_USERNAME_9'), + 'password' => env('DB_PASSWORD_9'), + 'charset' => 'utf8', + 'collation' => 'utf8_unicode_ci', + 'prefix' => '', + 'strict' => false, + ], ], ]; \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index f41875e..c632f4b 100644 --- a/routes/web.php +++ b/routes/web.php @@ -34,10 +34,15 @@ $router->group(['prefix'=>'api'], function () use ($router){ $router->get('gadai/{noic}',['uses'=>'GadaiController@showOneGadai']); $router->get('gadai/norujukan/{norujukan}',['uses'=>'GadaiController@showOneGadaiByNorujukan']); $router->get('gadai/norujukan/{kodcaw}/{norujukan}',['uses'=>'GadaiController@showOneGadaibyRujukanAndCawangan']); + $router->post('gadai/{kodcaw}',['uses'=>'GadaiController@create']); $router->delete('gadai/{id}', ['uses' => 'GadaiController@delete']); $router->put('gadai/{id}', ['uses' => 'GadaiController@update']); + $router->get('gadai/{cawangan_code}/{date}',['uses'=>'GadaiController@gadaiTransactionByCawanganAndDay']); + $router->put('gadai/norujukan/{norujukan}',['uses'=>'GadaiController@updateOneGadaiByNorujukan']); + + $router->put('gadai/norujukan/{kodcaw}/{norujukan}',['uses'=>'GadaiController@daftarGadaiMarhun']); //Lelong API $router->get('lelong',['uses'=>'LelongController@showAllLelongs']); @@ -64,12 +69,24 @@ $router->group(['prefix'=>'api'], function () use ($router){ $router->get('cawangan',['uses'=>'CawanganController@showAllCawangans']); $router->get('cawangan/{code_cawangan}',['uses'=>'CawanganController@showOneCawangan']); + //Poskod API $router->get('poskod',['uses'=>'PoskodController@showAllPoskod']); $router->get('poskod/{poskod}',['uses'=>'PoskodController@showOnePoskod']); + //Negeri API $router->get('negeri/{kodnegeri}',['uses'=>'NegeriController@showOneNegeri']); + //Daerah API $router->get('daerah/{koddaerah}',['uses'=>'DaerahController@showOneDaerah']); + //Bank API $router->get('bank',['uses'=>'BankController@showAllBank']); + + //Transaction API + $router->post('transaction/duit_masuk',['uses'=>'TransactionController@duitMasuk']); + $router->post('transaction/duit_keluar',['uses'=>'TransactionController@duitKeluar']); + $router->get('transaction',['uses'=>'TransactionController@showAllTransaction']); + $router->get('transaction/{norujukan}',['uses'=>'TransactionController@getTransactionByRujukan']); + + $router->get('maxpinjaman',['uses'=>'MaxPinjamanController@getAllMaxPinjaman']); });