diff --git a/app/Http/Controllers/MarhunController.php b/app/Http/Controllers/MarhunController.php index 1e947e40..1fadfde6 100644 --- a/app/Http/Controllers/MarhunController.php +++ b/app/Http/Controllers/MarhunController.php @@ -19,6 +19,10 @@ use App\Models\LelongBidMarhun; use App\Models\LelKarat; use App\Models\LelKarat_temp; +use App\Models\Pengesahan; +use App\Models\GadaiMarhun; +use Carbon\Carbon; + class MarhunController extends Controller { /** @@ -51,40 +55,52 @@ class MarhunController extends Controller public function kemaskini(Request $request) { - // dd($request->all()); + $user = Auth::user(); - + $currentdate = Carbon::now(); + $currentdate = $currentdate->toDateTimeString(); + + // dd($request->all()); $marhun = LelongBidMarhun::where('id','=',$request->idmarhun)->first(); $lelongbid = LelongBid::where('id','=',$marhun->lelongbid_id)->first(); // dd($lelongbid); $caw = CawanganLelong::where('id','=',$lelongbid->caw_id)->first(); $lelong = Lelong::where('id','=',$lelongbid->lelong_id)->first(); - $simkarat = LelKarat::where('lelong_id','=',$lelong->id)->get(); + // $simkarat = LelKarat::where('lelong_id','=',$lelong->id)->get(); - foreach($simkarat as $karat) - { - if($karat->karat == $request->karat) - { + // foreach($simkarat as $karat) + // { + // if($karat->karat == $request->karat) + // { + if($request->karat != $marhun->karat) + { + $karat = new Pengesahan; + $karat->lelong_id = $lelong->id; + $karat->lelongbid_id = $lelongbid->id; + $karat->norujukan = $lelongbid->norujukan; + $karat->diminta_oleh = $user->id; + $karat->diminta_pada = $currentdate; + $karat->save(); + } $bezaberat = $marhun->berat - $request->berat_emas; // $bezahargaasas = $marhun->hargaasas - $request->hargaasas; - $val = round($request->berat_emas * $karat->harga); - + // $val = round($request->berat_emas * $karat->harga); $marhun->marhun = $request->marhun; $marhun->karat = $request->karat; $marhun->berat = $request->berat_emas; $marhun->harga = $request->harga; - $marhun->n_marhun = $request->berat_emas * $karat->harga; - $marhun->hargaasas = floatval(number_format($val,2)); + $marhun->n_marhun = $request->nilai_marhun; + $marhun->hargaasas = $request->harga_asas; $marhun->save(); $lelongbid->berat = $lelongbid->berat - ($bezaberat); // $lelongbid->hargaasas = $lelongbid->hargaasas - ($bezahargaasas); $lelongbid->save(); - } - } + // } + // } return redirect()->route('marhun.show',$lelongbid->id) @@ -95,14 +111,13 @@ class MarhunController extends Controller { $lelongbid = LelongBid::where('id','=',$id)->first(); $marhun = LelongBidMarhun::where('lelongbid_id','=',$id)->get(); - + $lelkarat = LelKarat::where('lelong_id','=',$lelongbid->lelong_id)->get(); $karatall = JenisKarat::all(); $emasall = JenisEmas::all(); - - return view('marhun.marhun',compact('marhun','lelongbid','karatall','emasall')); + // dd($lelkarat); + return view('marhun.marhun',compact('marhun','lelongbid','karatall','emasall','lelkarat')); } - public function exportmarhundetails(Request $request) { $lelongbid = LelongBid::where('id','=',$request->lelongbid)->first(); @@ -140,6 +155,81 @@ class MarhunController extends Controller return view('marhun.senarailelongmarhun',compact('senarai')); } + + public function sahubahmutu(Request $request) + { + // dd($request->all()); + $mutumarhun = Pengesahan::join('lelong', 'pengesahan.lelong_id', '=', 'lelong.id') + ->select( + 'pengesahan.id as pengesahan_id', + 'pengesahan.norujukan', + 'lelong.tarikh_lelong' + ) + ->get(); + + return view('pengesahan.perubahanmutumarhun', compact('mutumarhun')); + } + + public function mutumarhun($pengesahan_id) + { + $pengesahan = Pengesahan::where('id', $pengesahan_id) + ->first(); + + $marhuns = LelongBidMarhun::where('lelongbid_id', $pengesahan->lelongbid_id) + ->get()->toArray(); + + $lelongbid = LelongBid::where('id', $pengesahan->lelongbid_id)->first(); + $karat = Lelkarat::where('lelong_id', $pengesahan->lelong_id)->get(); + + foreach($marhuns as $index1=>$marhun) + { + $gadaimarhun = GadaiMarhun::where('marhun', $marhun['marhun']) + ->where('norujukan', $lelongbid->norujukan) + ->first(); + + $karat = $karat->where('karat', $gadaimarhun->karat)->first(); + + $total = $karat->harga * $gadaimarhun->berat; + $hargaasas = round($total); + // if($gadaimarhun->karat == $marhun['karat']) + // { + // $status = 0; + // } + // else + // { + // $status = 1; + // } + $marhuns[$index1]['old_marhun'] = $gadaimarhun->marhun; + $marhuns[$index1]['old_karat'] = $gadaimarhun->karat; + // $marhun[$index1]['status_perubahan'] = $status; + $marhuns[$index1]['old_berat'] = $gadaimarhun->berat; + $marhuns[$index1]['old_harga'] = $karat->harga; + $marhuns[$index1]['old_nilaimarhun'] = $total; + $marhuns[$index1]['old_hargaasas'] = $hargaasas; + // $marhun + } + return view('pengesahan.mutumarhun', compact('marhuns', 'lelongbid', 'pengesahan_id')); + } + + public function terimaperubahan(Request $request) + { + //update mutu marhun - gadaimarhun + $user = Auth::user(); + + $currentdate = Carbon::now(); + $currentdate = $currentdate->toDateTimeString(); + + $pengesahan = Pengesahan::where('id', $request->pengesahan_id) + ->first(); + dd($pengesahan); + $pengesahan->disahkan_oleh = $user->id; + $pengesahan->disahkan_pada = $currentdate; + $pengesahan->update(); + + // $updategadaimarhun = GadaiMarhun::where('') + + //update status lelongbidmarhun = tangguh + } } \ No newline at end of file diff --git a/app/Models/Pengesahan.php b/app/Models/Pengesahan.php new file mode 100644 index 00000000..9f48811e --- /dev/null +++ b/app/Models/Pengesahan.php @@ -0,0 +1,24 @@ +id(); + $table->unsignedBigInteger('lelong_id')->unsigned(); + $table->unsignedBigInteger('lelongbid_id')->unsigned(); + $table->string('norujukan'); + $table->integer('disahkan_oleh')->nullable(); + $table->datetime('disahkan_pada')->nullable(); + $table->integer('diminta_oleh'); + $table->datetime('diminta_pada'); + $table->integer('status')->default(0); //1 = terima + $table->timestamps(); + + $table->foreign('lelong_id') + ->references('id')->on('lelong') + ->onDelete('cascade'); + + $table->foreign('lelongbid_id') + ->references('id')->on('lelongbid') + ->onDelete('cascade'); + + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('pengesahan'); + } +} diff --git a/database/seeders/RolesSeeder.php b/database/seeders/RolesSeeder.php index 101e3f16..35b520c2 100644 --- a/database/seeders/RolesSeeder.php +++ b/database/seeders/RolesSeeder.php @@ -107,6 +107,10 @@ class RolesSeeder extends Seeder 'name' => 'pengesahanpembida', 'description' => 'Pengesahan Pembida Baru' ]); + Permission::create([ + 'name' => 'pengesahan', + 'description' => 'Pengesahan Perubahan Mutu Marhun' + ]); //account Permission::create([ @@ -158,6 +162,7 @@ class RolesSeeder extends Seeder $role6->givePermissionTo('tangguhan'); $role6->givePermissionTo('analisa'); $role6->givePermissionTo('pengesahanpembida'); + $role6->givePermissionTo('pengesahan'); $role7 = Role::create(['name' => 'account']); $role7->givePermissionTo('pengesahanbayaran'); diff --git a/resources/views/includes/sidebar.blade.php b/resources/views/includes/sidebar.blade.php index a8aa0f0a..fee7a72c 100644 --- a/resources/views/includes/sidebar.blade.php +++ b/resources/views/includes/sidebar.blade.php @@ -112,6 +112,14 @@ +
  • + + +