@@ -472,21 +509,34 @@
})
}
- var tablemarhun = $('#myTable').DataTable({
- "ordering": false,
- "columnDefs": [
- {
- "targets": [ 1 ],
- "visible": false,
- "searchable": false
+ var tablemarhun = $('#myTable').DataTable({
+ "ordering": false,
+ "columnDefs": [{
+ "targets": [1],
+ "visible": false,
+ "searchable": false
+ },
+ {
+ "targets": [7],
+ "visible": true,
+ "searchable": false
+ }
+ ],
+ "language": {
+ "lengthMenu": "Papar _MENU_ rekod setiap halaman",
+ "zeroRecords": "Tiada rekod dijumpai",
+ "info": "Memapar halaman _PAGE_ dari _PAGES_",
+ "infoEmpty": "Tiada rekod tersedia",
+ "infoFiltered": "(ditapis dari _MAX_ jumlah rekod)",
+ "search": "Cari:",
+ "paginate": {
+ "first": "Pertama",
+ "last": "Akhir",
+ "next": "Seterusnya",
+ "previous": "Sebelumnya"
+ }
},
- {
- "targets": [ 7 ],
- "visible": false,
- "searchable": false
- }
- ]
- });
+ });
$(".select2").select2({
dropdownParent: $('#daftar_marhun'),
@@ -526,60 +576,57 @@
closeOnSelect: false
});
- var total_nilai_marhun = 0;
- var total_berat = 0;
- var total_kuantiti = 0;
- var kadarupah = 0;
- var jumlah_marhun = 0;
- var jumlah_nilai_marhun = 0;
- var pinjaman_pelulus = 0;
- var pinjaman_teller = 0;
- function marhuntable(data){
- var counter = 1;
- total_nilai_marhun = 0;
- total_berat = 0;
- total_kuantiti = 0;
- var marhun_details = '';
- jumlah_nilai_marhun = 0;
- tablemarhun.clear().draw();
- $.each(data,function(index,marhun){
- $.each(marhun,function(index,marhun_detail){
- total_nilai_marhun = total_nilai_marhun + Number(marhun_detail['n_marhun']);
- total_berat = total_berat + Number(marhun_detail['berat']);
- marhun_details = marhun_details + marhun_detail['bil'] + " " + marhun_detail['marhun'] +",";
- jumlah_nilai_marhun += Number(marhun_detail['n_marhun']);
- status_tag_permata = marhun_detail['tag_permata'] == 1 ? 'Ada' : '';
- total_kuantiti += Number(marhun_detail['bil']);
- tablemarhun.row.add([
- counter,
- marhun_detail['recno'],
- marhun_detail['marhun'],
- formatter.format(marhun_detail['n_marhun']),
- marhun_detail['karat'],
- formatter.format(marhun_detail['berat']),
- marhun_detail['bil'],
- marhun_detail['nota'],
- marhun_detail['harga'],
- status_tag_permata,
- marhun_detail['berat_batu_permata'],
- "
"
- ]).draw();
- counter = counter + 1;
+ var total_nilai_marhun = 0;
+ var total_berat = 0;
+ var total_kuantiti = 0;
+ var kadarupah = 0;
+ var jumlah_marhun = 0;
+ var jumlah_nilai_marhun = 0;
+ var pinjaman_pelulus = 0;
+ var pinjaman_teller = 0;
+
+ function marhuntable(data) {
+ var counter = 1;
+ total_nilai_marhun = 0;
+ total_berat = 0;
+ total_kuantiti = 0;
+ var marhun_details = '';
+ var array_mutu = [];
+ jumlah_nilai_marhun = 0;
+ tablemarhun.clear().draw();
+ $.each(data, function(index, marhun) {
+ $.each(marhun, function(index, marhun_detail) {
+ total_nilai_marhun = total_nilai_marhun + Number(marhun_detail['n_marhun']);
+ total_berat = total_berat + Number(marhun_detail['berat']);
+ marhun_details = marhun_details + marhun_detail['bil'] + " " + marhun_detail['marhun'] + ",";
+ jumlah_nilai_marhun += Number(marhun_detail['n_marhun']);
+ status_tag_permata = marhun_detail['tag_permata'] == 1 ? 'Ada' : '';
+ total_kuantiti += Number(marhun_detail['bil']);
+ array_mutu.push([marhun_detail['karat'], marhun_detail['n_marhun']]);
+ tablemarhun.row.add([
+ counter,
+ marhun_detail['recno'],
+ marhun_detail['marhun'],
+ formatter.format(marhun_detail['n_marhun']),
+ marhun_detail['karat'],
+ formatter.format(marhun_detail['berat']),
+ marhun_detail['bil'],
+ marhun_detail['nota'],
+ marhun_detail['harga'],
+ status_tag_permata,
+ marhun_detail['berat_batu_permata'],
+ "
"
+ ]).draw();
+ counter = counter + 1;
+ });
});
- });
- $('#totalberattable').text(formatter.format(total_berat));
- $('#totalkuantititable').text(total_kuantiti);
- $('#totalnilaimarhuntable').text(formatter.format(jumlah_nilai_marhun));
- $('#bilangan_marhun').val(formatter.format(counter-1));
- $('#bilangan_jumlah_kuantiti').val(formatter.format(total_kuantiti));
- $('#jumlah_nilai_marhun').val(formatter.format(jumlah_nilai_marhun));
- // if(total_nilai_marhun > 0 && total_nilai_marhun < 401){
- // kadarupah = 1.2/100;
- // }else if(total_nilai_marhun >= 401 && total_nilai_marhun < 2001){
- // kadarupah = 1.5/100;
- // }else if(total_nilai_marhun >= 2001 ){
- // kadarupah = 1.7/100;
- // }
+ $('#totalberattable').text(formatter.format(total_berat));
+ $('#totalkuantititable').text(total_kuantiti);
+ $('#totalnilaimarhuntable').text(formatter.format(jumlah_nilai_marhun));
+ $('#bilangan_marhun').val(formatter.format(counter - 1));
+ $('#bilangan_jumlah_kuantiti').val(formatter.format(total_kuantiti));
+ $('#jumlah_nilai_marhun').val(formatter.format(jumlah_nilai_marhun));
+
$.ajax({
method:'GET',
@@ -594,33 +641,40 @@
}
});
- $('#total_nilai_marhun').val(formatter.format(total_nilai_marhun));
- $('#marhun_detail').val(marhun_details);
- $('#total_berat').val(formatter.format(total_berat));
- $('#kadarkeuntungan').val(formatter.format(kadarupah));
- $('#kuantiti_marhun').val(formatter.format(jumlah_marhun));
+ $('#total_nilai_marhun').val(formatter.format(total_nilai_marhun));
+ $('#marhun_detail').val(marhun_details);
+ $('#total_berat').val(formatter.format(total_berat));
+ $('#kadarkeuntungan').val(formatter.format(kadarupah));
+ $('#kuantiti_marhun').val(formatter.format(jumlah_marhun));
- $.ajax({
- method:'GET',
- url: api_url + '/api/maxpinjaman',
- success:function(data){
- $.each(data,function(index,pinjaman){
- if(pinjaman['user_type'] == 'teller'){
- pinjaman_teller = Number(pinjaman['max']);
- }
- if(pinjaman['user_type'] == 'khazanah'){
- pinjaman_pelulus = Number(pinjaman['max']);
- }
- });
- $('.span-pinjaman-max-pelulus').text(formatter.format(pinjaman_pelulus) + ' %');
- $('.span-pinjaman-max').text(formatter.format(pinjaman_teller) + ' %');
- var max_teller = total_nilai_marhun * (pinjaman_teller/100);
- var max_pelulus = total_nilai_marhun * (pinjaman_pelulus/100);
- $('#pembiayaan_max_teller').val(formatter.format(max_teller.toFixed(2)));
- $('#pembiyaan_max_pelulus').val(formatter.format(max_pelulus.toFixed(2)));
- }
- });
- }
+ var max_teller = 0;
+ var max_pelulus = 0;
+
+ $.ajax({
+ method: 'GET',
+ url: api_url + '/api/maxpinjaman',
+ data: {
+ 'mutu': array_mutu,
+ 'total_nilai_marhun': total_nilai_marhun,
+ },
+ success: function(data) {
+ $.each(data, function(index, pinjaman) {
+ if (pinjaman['user_type'] == 'teller') {
+ pinjaman_teller = Number(pinjaman['max']);
+ max_teller = pinjaman['teller_pinjaman'];
+ }
+ if (pinjaman['user_type'] == 'khazanah') {
+ pinjaman_pelulus = Number(pinjaman['max']);
+ max_pelulus = pinjaman['pc_pinjaman'];
+ }
+ });
+ $('.span-pinjaman-max-pelulus').text(formatter.format(pinjaman_pelulus) + ' %');
+ $('.span-pinjaman-max').text(formatter.format(pinjaman_teller) + ' %');
+ $('#pembiayaan_max_teller').val(formatter.format(max_teller));
+ $('#pembiyaan_max_pelulus').val(formatter.format(max_pelulus));
+ }
+ });
+ }
$('#pinjaman').on('input',function(){
var pinjaman = Number(this.value);
@@ -859,8 +913,9 @@
var batu_permata_array = $('#batupermata').val();
var tag_permata = $('input[id=tagpermata]').is(':checked') ? 1 : 0;
- var beratpermata = $('#beratpermata').val();
- var kuantiti = $('#kuantiti').val();
+ var beratpermata = $('#beratpermata').val();
+ var kuantiti = $('#kuantiti').val();
+
if(kuantiti > 10)
{
@@ -1425,22 +1480,24 @@
buttonsStyling: false
});
- swalWithBootstrapButtons.fire({
- title: 'Dapatkan Pengesahan Khazanah',
- text: "Tetapan margin melebihi " + pinjaman_teller + "% untuk Khazanah!",
- icon: 'info',
- showCancelButton: true,
- confirmButtonText: 'Hantar',
- cancelButtonText: 'Batal',
- reverseButtons: true
- }).then((result) => {
- if (result.isConfirmed) {
+ swalWithBootstrapButtons.fire({
+ title: 'Dapatkan Pengesahan Khazanah',
+ text: "Tetapan Margin Melebihi Limit Maksima Teller!",
+ icon: 'info',
+ showCancelButton: true,
+ confirmButtonText: 'Hantar',
+ cancelButtonText: 'Batal',
+ reverseButtons: true
+ }).then((result) => {
+ if (result.isConfirmed) {
- let norujukan = $('#norujukan').val();
- let nm = parseFloat($('#total_nilai_marhun').val().replace(/[^0-9.-]+/g,""));let ber = $('#total_berat').val();let marg = $('.span-pinjaman').text();
- let status = "Pembiayaan Melebihi Margin " + pinjaman_teller + "%";
- let jumpinjam = $('#pinjaman').val();
- let teller = "{{ Auth::user()->name }}";
+ let norujukan = $('#norujukan').val();
+ let nm = parseFloat($('#total_nilai_marhun').val().replace(/[^0-9.-]+/g, ""));
+ let ber = $('#total_berat').val();
+ let marg = $('.span-pinjaman').text();
+ let status = "Tetapan Margin Melebihi Limit Maksima Teller: " + pinjaman_teller + "%";
+ let jumpinjam = $('#pinjaman').val();
+ let teller = "{{ Auth::user()->name }}";
Swal.fire({
title: 'Tunggu Pengesahan Daripada Khazanah.',
@@ -1598,23 +1655,24 @@
let marhun = $(e).closest('tr').children('td:eq(1)').text();let selectedrow = $(e).closest('tr');let recnozz = tablemarhun.row(selectedrow).data();
let norujuk = $('#norujukan').val();
- $.ajax({
- method: 'put',
- url: '{{ route("gadai.editmarhun") }}',
- data: {
- "_token": "{{ csrf_token() }}",
- "norujukan" : norujuk,
- "recno" : recnozz[1],
- "teller": "{{ Auth::user()->name }}"
- },
- success:function(data){
- location.reload();
- },error: function(xhr, status, error) {
- var err = eval("(" + xhr.responseText + ")");
- alert(xhr.responseText);
- }
- });
- }
+ $.ajax({
+ method: 'put',
+ url: '{{ route("gadai.editmarhun") }}',
+ data: {
+ "_token": "{{ csrf_token() }}",
+ "norujukan": norujuk,
+ "recno": recnozz[1],
+ "teller": "{{ Auth::user()->name }}"
+ },
+ success: function(data) {
+ location.reload();
+ },
+ error: function(xhr, status, error) {
+ var err = eval("(" + xhr.responseText + ")");
+ alert(xhr.responseText);
+ }
+ });
+ }
function editmarhun(e){
let norujuk = $('#norujukan').val();
@@ -1852,5 +1910,169 @@
}
});
+ // Toggle Table Functionality
+ let isMarginTableVisible = false;
+
+ $('#toggleTableBtn').on('click', function() {
+ if (!isMarginTableVisible) {
+ // Check if main table has data before showing margin table
+ let tableData = $('#myTable').DataTable().data();
+ if (tableData.length === 0) {
+ Swal.fire({
+ icon: 'warning',
+ title: 'Amaran!',
+ text: 'Tiada data marhun untuk papar margin. Sila daftar marhun terlebih dahulu.'
+ });
+ return;
+ }
+
+ // Show margin table, hide main table
+ $('#myTable_wrapper').hide();
+ $('#marginTable').show();
+ $(this).html('
Papar Marhun');
+ loadMarginData();
+ isMarginTableVisible = true;
+
+ // Disable Daftar Marhun button when margin table is visible
+ $('button[data-target="#daftar_marhun"]').prop('disabled', true);
+ } else {
+ // Show main table, hide margin table
+ $('#marginTable_wrapper').hide();
+ $('#myTable_wrapper').show();
+ $(this).html('
Papar Margin');
+ isMarginTableVisible = false;
+
+ // Enable Daftar Marhun button when main table is visible
+ $('button[data-target="#daftar_marhun"]').prop('disabled', false);
+ }
+ });
+
+ function loadMarginData() {
+ let marginData = [];
+ let totalNilaiMarhun = 0;
+ let totalNilaiTeller = 0;
+ let totalNilaiPC = 0;
+
+ // Process each individual row from the main table
+ let rowsData = [];
+ tablemarhun.rows().data().each(function(row, index) {
+ console.log(row);
+ let recno = row[1]; // Recno column
+ let karat = row[4]; // Karat column
+ let nilaiMarhun = parseFloat(row[3].replace(/[^0-9.-]+/g, "")); // Nilai Marhun column
+ rowsData.push({
+ index: index,
+ recno: recno,
+ karat: karat,
+ nilaiMarhun: nilaiMarhun
+ });
+ });
+
+ let bil = 1;
+ let processedCount = 0;
+ let totalEntries = rowsData.length;
+
+ rowsData.forEach((rowData) => {
+ // Call API to get margin data for each individual item
+ $.ajax({
+ url: '{{ config("api.url") }}/api/maxmutuemas/specific',
+ type: 'GET',
+ data: { karat: rowData.karat, nilaimarhun: rowData.nilaiMarhun },
+ success: function(response) {
+ if (response && response.karat) {
+ let nilaiTeller = parseFloat(response.maxteller) || 0;
+ let nilaiPC = parseFloat(response.maxpc) || 0;
+
+ marginData.push({
+ index: rowData.index,
+ bil: rowData.index + 1,
+ recno: rowData.recno,
+ karat: rowData.karat,
+ nilaiMarhun: rowData.nilaiMarhun,
+ marginTeller: response.teller,
+ marginPC: response.pc,
+ nilaiTeller: nilaiTeller,
+ nilaiPC: nilaiPC
+ });
+
+ totalNilaiMarhun += rowData.nilaiMarhun;
+ totalNilaiTeller += nilaiTeller;
+ totalNilaiPC += nilaiPC;
+ }
+
+ processedCount++;
+ if (processedCount === totalEntries) {
+ // Sort by original index to maintain order
+ marginData.sort((a, b) => a.index - b.index);
+ populateMarginTable(marginData, totalNilaiMarhun, totalNilaiTeller, totalNilaiPC);
+ }
+ },
+ error: function() {
+ processedCount++;
+ if (processedCount === totalEntries) {
+ // Sort by original index to maintain order
+ marginData.sort((a, b) => a.index - b.index);
+ populateMarginTable(marginData, totalNilaiMarhun, totalNilaiTeller, totalNilaiPC);
+ }
+ }
+ });
+ });
+ }
+
+ let marginDataTable = null;
+ function populateMarginTable(data, totalMarhun, totalTeller, totalPC) {
+ // If DataTable already exists, destroy it first
+ if (marginDataTable !== null) {
+ marginDataTable.destroy();
+ marginDataTable = null;
+ }
+
+ let tbody = $('#marginTableBody');
+ tbody.empty();
+
+ data.forEach(function(item) {
+ let row = `
+
+ ${item.bil}
+ ${item.karat}
+ RM${item.nilaiMarhun.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2})}
+ ${item.marginTeller}%
+ ${item.marginPC}%
+ RM${item.nilaiTeller.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2})}
+ RM${item.nilaiPC.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2})}
+
+ `;
+ tbody.append(row);
+ });
+
+ // Initialize DataTable
+ marginDataTable = $('#marginTable').DataTable({
+ "pageLength": 10,
+ "ordering": false,
+ "order": [[ 0, "asc" ]],
+ "responsive": true,
+ "language": {
+ "lengthMenu": "Papar _MENU_ rekod setiap halaman",
+ "zeroRecords": "Tiada rekod dijumpai",
+ "info": "Memapar halaman _PAGE_ dari _PAGES_",
+ "infoEmpty": "Tiada rekod tersedia",
+ "infoFiltered": "(ditapis dari _MAX_ jumlah rekod)",
+ "search": "Cari:",
+ "paginate": {
+ "first": "Pertama",
+ "last": "Akhir",
+ "next": "Seterusnya",
+ "previous": "Sebelumnya"
+ }
+ },
+ "footerCallback": function (row, data, start, end, display) {
+ // Update footer totals
+ $('#totalNilaiMarhunMargin').text('RM' + totalMarhun.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2}));
+ $('#totalNilaiTellerMargin').text('RM' + totalTeller.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2}));
+ $('#totalNilaiPCMargin').text('RM' + totalPC.toLocaleString('en-MY', {minimumFractionDigits: 2, maximumFractionDigits: 2}));
+ }
+ });
+ }
+
@endsection
diff --git a/resources/views/homepage/operasi/home.blade.php b/resources/views/homepage/operasi/home.blade.php
index a86275b..b327950 100644
--- a/resources/views/homepage/operasi/home.blade.php
+++ b/resources/views/homepage/operasi/home.blade.php
@@ -3,7 +3,7 @@
@section('content')
diff --git a/resources/views/homepage/operasi/laporan-audit.blade.php b/resources/views/homepage/operasi/laporan-audit.blade.php
new file mode 100644
index 0000000..afffb68
--- /dev/null
+++ b/resources/views/homepage/operasi/laporan-audit.blade.php
@@ -0,0 +1,46 @@
+@extends('layouts.app_operasi')
+
+@section('content')
+
+
+
+
+
+
+ Home
+ Laporan Audit
+
+
+
+
+
+
+
+
+
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/modal/editmarhun.blade.php b/resources/views/modal/editmarhun.blade.php
index a40407c..5b95402 100644
--- a/resources/views/modal/editmarhun.blade.php
+++ b/resources/views/modal/editmarhun.blade.php
@@ -63,7 +63,7 @@
@endforeach
-
Berat
+
Berat Bersih
Harga
diff --git a/resources/views/operasi/edit_marginmutu.blade.php b/resources/views/operasi/edit_marginmutu.blade.php
new file mode 100644
index 0000000..ae1333e
--- /dev/null
+++ b/resources/views/operasi/edit_marginmutu.blade.php
@@ -0,0 +1,148 @@
+@extends('layouts.app_operasi')
+@section('content')
+
+
+
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/operasi/marginmutu.blade.php b/resources/views/operasi/marginmutu.blade.php
new file mode 100644
index 0000000..5bc86a6
--- /dev/null
+++ b/resources/views/operasi/marginmutu.blade.php
@@ -0,0 +1,64 @@
+@extends('layouts.app_operasi')
+@section('content')
+
+
+
+
+
+
+
+
+ Home
+ Parameter
+ Margin Mutu Emas
+
+
+
+
+
+
+
+
+
+ Bil
+ Karat
+ Keterangan
+ Teller (%)
+ PC (%)
+ Operasi (%)
+ Tarikh Update
+ Tindakan
+
+
+
+ @foreach($maxmutuemas as $index=>$mme)
+
+ {{ $loop->iteration }}
+ {{ $mme['karat'] }}
+ {{ $mme['keterangan'] }}
+ {{ $mme['teller'] }}%
+ {{ $mme['pc'] }}%
+ {{ $mme['operasi'] }}%
+ {{ \Carbon\Carbon::parse($mme['tarikhupdate'])->format('d/m/Y') }}
+
+ Edit
+
+
+ @endforeach
+
+
+
+
+
+
+
+
+
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/operasi/parameter.blade.php b/resources/views/operasi/parameter.blade.php
index 110e2ca..4028c70 100644
--- a/resources/views/operasi/parameter.blade.php
+++ b/resources/views/operasi/parameter.blade.php
@@ -16,7 +16,7 @@