Merged in Hotfix/aiman/block-tebus-refer-t_lelong-gadai (pull request #334)
Block SAG refer to t_lelong table gadai instead of table lelong
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
@include('modal.historytebus')
|
||||
@include('modal.wakil')
|
||||
@include('errors.alert', ['errorapproval' => $getApprovalError ?? null])
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12 col-lg-12">
|
||||
<div class="card">
|
||||
@@ -176,7 +176,7 @@
|
||||
|
||||
@endphp
|
||||
<a class="nav-item nav-link {{ $activate_tab_SAG_baru }}" id="nav-tawarruq-tab" data-toggle="tab" href="#nav-tawarruq" role="tab" aria-controls="nav-tawarruq" aria-selected="{{ $aria_selected_SAG_baru }}">SAG Baru</a>
|
||||
<a class="nav-item nav-link {{ $activate_tab_SAG_lama }}" " id="nav-xtawarruq-tab" data-toggle="tab" href="#nav-xtawarruq" role="tab" aria-controls="nav-xtawarruq" aria-selected="{{ $aria_selected_SAG_lama }}"><span id="textnavsag">SAG Lama</span></a>
|
||||
<a class="nav-item nav-link {{ $activate_tab_SAG_lama }}" id="nav-xtawarruq-tab" data-toggle="tab" href="#nav-xtawarruq" role="tab" aria-controls="nav-xtawarruq" aria-selected="{{ $aria_selected_SAG_lama }}"><span id="textnavsag">SAG Lama</span></a>
|
||||
</div>
|
||||
</nav>
|
||||
<div class="tab-content" id="navtawarruqdannottawarruq">
|
||||
@@ -194,6 +194,7 @@
|
||||
<th>Tempoh</th>
|
||||
<th>Keuntungan</th>
|
||||
<th>Lelong</th>
|
||||
<th>Pembayaran Terakhir</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -201,16 +202,6 @@
|
||||
<div class="tab-pane fade {{ $activate_pane_SAG_lama }}" id="nav-xtawarruq" role="tabpanel" aria-labelledby="nav-xtawarruq-tab">
|
||||
<table id="xtawarruq" class="table table-striped table-hover">
|
||||
<thead class="thead-dark">
|
||||
{{-- <tr>
|
||||
<th>Bil</th>
|
||||
<th>No Rujukan</th>
|
||||
<th>Tarikh Gadai</th>
|
||||
<th>Tarikh Matang</th>
|
||||
<th>Pembiayaan</th>
|
||||
<th>Margin</th>
|
||||
<th>Tempoh</th>
|
||||
<th>Lelong</th>
|
||||
</tr> --}}
|
||||
<tr>
|
||||
<th>Bil</th>
|
||||
<th>No Rujukan</th>
|
||||
@@ -222,6 +213,7 @@
|
||||
<th>Tempoh</th>
|
||||
<th>Keuntungan</th>
|
||||
<th>Lelong</th>
|
||||
<th>Pembayaran Terakhir</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -243,6 +235,8 @@
|
||||
</thead>
|
||||
</table>
|
||||
|
||||
{{-- Lelong --}}
|
||||
|
||||
<table id="lelongTable" class="table table-striped table-hover">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
@@ -634,6 +628,16 @@
|
||||
var pinjaman = $(data).data("pinjaman");
|
||||
var hargajualan = $(data).data("hargajualan");
|
||||
|
||||
var isBlocked = $(data).data("blocked");
|
||||
if(isBlocked === true || isBlocked === "true"){
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: 'Amaran',
|
||||
text: 'Pembiayaan Sedang Dilelong'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
Swal.fire({
|
||||
title: 'Memuatkan...',
|
||||
allowEscapeKey : false,
|
||||
@@ -860,6 +864,41 @@
|
||||
|
||||
}
|
||||
|
||||
function getPembayaranTerakhir(tarikhLelong)
|
||||
{
|
||||
if (!tarikhLelong || tarikhLelong === '') {
|
||||
return { tarikh: '', blocked: false };
|
||||
}
|
||||
|
||||
let lelongDate;
|
||||
if (tarikhLelong.includes('-')) {
|
||||
const parts = tarikhLelong.split('-');
|
||||
if (parts[0].length === 4) {
|
||||
lelongDate = new Date(tarikhLelong);
|
||||
} else {
|
||||
lelongDate = new Date(parts[2], parts[1] - 1, parts[0]);
|
||||
}
|
||||
}
|
||||
|
||||
let pembayaranTerakhir = new Date(lelongDate);
|
||||
pembayaranTerakhir.setDate(pembayaranTerakhir.getDate() - 3);
|
||||
|
||||
let today = new Date();
|
||||
today.setHours(0, 0, 0, 0);
|
||||
pembayaranTerakhir.setHours(0, 0, 0, 0);
|
||||
|
||||
let isBlocked = today > pembayaranTerakhir;
|
||||
|
||||
let day = String(pembayaranTerakhir.getDate()).padStart(2, '0');
|
||||
let month = String(pembayaranTerakhir.getMonth() + 1).padStart(2, '0');
|
||||
let year = pembayaranTerakhir.getFullYear();
|
||||
|
||||
return {
|
||||
tarikh: `${year}-${month}-${day}`,
|
||||
blocked: isBlocked
|
||||
};
|
||||
}
|
||||
|
||||
function gadaiTable(data,jenistebus){
|
||||
|
||||
var counter = 1;
|
||||
@@ -890,15 +929,7 @@
|
||||
var taglel = '';
|
||||
if(gadai_detail['taglel'] == 1){
|
||||
if(tagarrahnbid == 1){
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
async:false,
|
||||
url:api_arrahnbid + 'portalApi?norujukan=' + gadai_detail['norujukan'],
|
||||
|
||||
success: function(data){
|
||||
taglel = data.lelong.t_lelong;
|
||||
}
|
||||
});
|
||||
taglel = gadai_detail['t_lelong'];
|
||||
} else {
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
@@ -919,7 +950,17 @@
|
||||
if(gadai_detail["percentpinj"] != 0)
|
||||
xtawarruq.row.add([
|
||||
'<input type="radio" value='+ gadai_detail["norujukan"] +' name="belum"/>',
|
||||
'<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
let blockedAttr = bayaranInfo.blocked ? 'data-blocked="true"' : '';
|
||||
return '<a href="#" onclick="checkserah(this)" ' +
|
||||
'data-pinjaman='+ gadai_detail['pinjaman'] +' ' +
|
||||
'data-hargajualan='+ gadai_detail['hargajualan'] +' ' +
|
||||
'data-norujukan='+ gadai_detail['norujukan'] +' ' +
|
||||
'data-url=' + urlroute + ' ' +
|
||||
blockedAttr + '>' +
|
||||
gadai_detail['norujukan'] + '</a>';
|
||||
})(),
|
||||
gadai_detail['t_gadai'],
|
||||
tarikh_matang,
|
||||
'RM '+ formatter.format(gadai_detail['bakihargajualan']),
|
||||
@@ -928,20 +969,23 @@
|
||||
gadai_detail['tempoh'],
|
||||
'RM '+ formatter.format(upahsemasa),
|
||||
'<div style="white-space: nowrap; color:red; font-weight: bolder">' + taglel + '</div>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
if (!bayaranInfo.tarikh) {
|
||||
return '';
|
||||
}
|
||||
let color = bayaranInfo.blocked ? 'red' : 'green';
|
||||
return '<div style="white-space: nowrap; color: ' + color + '; font-weight: bold;">' +
|
||||
bayaranInfo.tarikh + '</div>';
|
||||
})()
|
||||
]).draw();
|
||||
}else{
|
||||
var taglel = '';
|
||||
if(gadai_detail['taglel'] == 1){
|
||||
if(tagarrahnbid == 1){
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
async:false,
|
||||
url:api_arrahnbid + 'portalApi?norujukan=' + gadai_detail['norujukan'],
|
||||
|
||||
success: function(data){
|
||||
taglel = data.lelong.t_lelong;
|
||||
}
|
||||
});
|
||||
if(gadai_detail['t_lelong'] != null){
|
||||
taglel = gadai_detail['t_lelong'];
|
||||
}
|
||||
} else {
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
@@ -961,7 +1005,17 @@
|
||||
let table_norujukan = gadai_detail["norujukan"];
|
||||
tablegadai.row.add([
|
||||
'<input type="radio" value='+ gadai_detail["norujukan"] +' name="belum"/>',
|
||||
'<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
let blockedAttr = bayaranInfo.blocked ? 'data-blocked="true"' : '';
|
||||
return '<a href="#" onclick="checkserah(this)" ' +
|
||||
'data-pinjaman='+ gadai_detail['pinjaman'] +' ' +
|
||||
'data-hargajualan='+ gadai_detail['hargajualan'] +' ' +
|
||||
'data-norujukan='+ gadai_detail['norujukan'] +' ' +
|
||||
'data-url=' + urlroute + ' ' +
|
||||
blockedAttr + '>' +
|
||||
gadai_detail['norujukan'] + '</a>';
|
||||
})(),
|
||||
gadai_detail['t_gadai'],
|
||||
tarikh_matang,
|
||||
'RM '+ formatter.format(gadai_detail['bakihargajualan']),
|
||||
@@ -970,6 +1024,15 @@
|
||||
gadai_detail['tempoh'],
|
||||
'RM '+ formatter.format(upahsemasa['pendapatan']),
|
||||
'<div style="white-space: nowrap; color:red; font-weight: bolder">' + taglel + '</div>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
if (!bayaranInfo.tarikh) {
|
||||
return '';
|
||||
}
|
||||
let color = bayaranInfo.blocked ? 'red' : 'green';
|
||||
return '<div style="white-space: nowrap; color: ' + color + '; font-weight: bold;">' +
|
||||
bayaranInfo.tarikh + '</div>';
|
||||
})()
|
||||
]).draw();
|
||||
}
|
||||
}else if(jenistebus == "sudah_tebus"){
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
@include('modal.agh')
|
||||
|
||||
|
||||
<div class="container">
|
||||
<div class="container col-12">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12 col-lg-12">
|
||||
<div class="card">
|
||||
@@ -184,6 +184,7 @@
|
||||
<th>Tempoh</th>
|
||||
<th>Keuntungan</th>
|
||||
<th>Lelong</th>
|
||||
<th>Pembayaran Terakhir</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -191,16 +192,6 @@
|
||||
<div class="tab-pane fade {{ $activate_pane_SAG_lama }}" id="nav-xtawarruq" role="tabpanel" aria-labelledby="nav-xtawarruq-tab">
|
||||
<table id="xtawarruq" class="table table-striped table-hover">
|
||||
<thead class="thead-dark">
|
||||
{{-- <tr>
|
||||
<th>Bil</th>
|
||||
<th>No Rujukan</th>
|
||||
<th>Tarikh Gadai</th>
|
||||
<th>Tarikh Matang</th>
|
||||
<th>Pembiayaan</th>
|
||||
<th>Margin</th>
|
||||
<th>Tempoh</th>
|
||||
<th>Lelong</th>
|
||||
</tr> --}}
|
||||
<tr>
|
||||
<th>Bil</th>
|
||||
<th>No Rujukan</th>
|
||||
@@ -212,6 +203,7 @@
|
||||
<th>Tempoh</th>
|
||||
<th>Keuntungan</th>
|
||||
<th>Lelong</th>
|
||||
<th>Pembayaran Terakhir</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -233,6 +225,8 @@
|
||||
</thead>
|
||||
</table>
|
||||
|
||||
{{-- Lelong --}}
|
||||
|
||||
<table id="lelongTable" class="table table-striped table-hover">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
@@ -514,7 +508,7 @@
|
||||
});
|
||||
|
||||
var xtawarruq = $('#xtawarruq').DataTable({
|
||||
"scrollX": false
|
||||
"scrollX": true,
|
||||
});
|
||||
|
||||
var tabledahtebus = $('#dahtebusTable').DataTable({
|
||||
@@ -563,6 +557,26 @@
|
||||
function checkserah(data){
|
||||
var urlpenebusan = $(data).data("url");
|
||||
var norujukan = $(data).data("norujukan");
|
||||
|
||||
var isBlocked = $(data).data("blocked");
|
||||
if(isBlocked === true || isBlocked === "true"){
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: 'Amaran',
|
||||
text: 'Pembiayaan Sedang Dilelong'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
Swal.fire({
|
||||
title: 'Memuatkan...',
|
||||
allowEscapeKey : false,
|
||||
allowOutsideClick: false,
|
||||
didOpen: function () {
|
||||
Swal.showLoading()
|
||||
}
|
||||
});
|
||||
|
||||
$.ajax({
|
||||
method:'get',
|
||||
url: api_url + '/api/check/serah/gadai',
|
||||
@@ -585,14 +599,49 @@
|
||||
});
|
||||
}
|
||||
|
||||
function getPembayaranTerakhir(tarikhLelong)
|
||||
{
|
||||
if (!tarikhLelong || tarikhLelong === '') {
|
||||
return { tarikh: '', blocked: false };
|
||||
}
|
||||
|
||||
let lelongDate;
|
||||
if (tarikhLelong.includes('-')) {
|
||||
const parts = tarikhLelong.split('-');
|
||||
if (parts[0].length === 4) {
|
||||
lelongDate = new Date(tarikhLelong);
|
||||
} else {
|
||||
lelongDate = new Date(parts[2], parts[1] - 1, parts[0]);
|
||||
}
|
||||
}
|
||||
|
||||
let pembayaranTerakhir = new Date(lelongDate);
|
||||
pembayaranTerakhir.setDate(pembayaranTerakhir.getDate() - 3);
|
||||
|
||||
let today = new Date();
|
||||
today.setHours(0, 0, 0, 0);
|
||||
pembayaranTerakhir.setHours(0, 0, 0, 0);
|
||||
|
||||
let isBlocked = today > pembayaranTerakhir;
|
||||
|
||||
let day = String(pembayaranTerakhir.getDate()).padStart(2, '0');
|
||||
let month = String(pembayaranTerakhir.getMonth() + 1).padStart(2, '0');
|
||||
let year = pembayaranTerakhir.getFullYear();
|
||||
|
||||
return {
|
||||
tarikh: `${year}-${month}-${day}`,
|
||||
blocked: isBlocked
|
||||
};
|
||||
}
|
||||
|
||||
function gadaiTable(data,jenistebus){
|
||||
|
||||
var counter = 1;
|
||||
tablegadai.clear().draw();
|
||||
tabledahtebus.clear().draw();
|
||||
tablelelong.clear().draw();
|
||||
xtawarruq.clear().draw();
|
||||
$.each(data,function(index,gadai_detail){
|
||||
var counter = 1;
|
||||
tablegadai.clear().draw();
|
||||
tabledahtebus.clear().draw();
|
||||
tablelelong.clear().draw();
|
||||
xtawarruq.clear().draw();
|
||||
$.each(data,function(index,gadai_detail){
|
||||
let jeniskeuntungan = (gadai_detail['tagbaru'] == 1) ? 'onepercent' : 'asal';
|
||||
$.ajax({
|
||||
method:'get',
|
||||
@@ -616,15 +665,7 @@ $.each(data,function(index,gadai_detail){
|
||||
var taglel = '';
|
||||
if(gadai_detail['taglel'] == 1){
|
||||
if(tagarrahnbid == 1){
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
async:false,
|
||||
url:api_arrahnbid + 'portalApi?norujukan=' + gadai_detail['norujukan'],
|
||||
|
||||
success: function(data){
|
||||
taglel = data.lelong.t_lelong;
|
||||
}
|
||||
});
|
||||
taglel = gadai_detail['t_lelong'];
|
||||
} else {
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
@@ -647,7 +688,18 @@ $.each(data,function(index,gadai_detail){
|
||||
if(gadai_detail["percentpinj"] != 0)
|
||||
xtawarruq.row.add([
|
||||
'<input type="radio" value='+ gadai_detail["norujukan"] + ' name="belum"/>',
|
||||
'<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
// '<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
let blockedAttr = bayaranInfo.blocked ? 'data-blocked="true"' : '';
|
||||
return '<a href="#" onclick="checkserah(this)" ' +
|
||||
'data-pinjaman='+ gadai_detail['pinjaman'] +' ' +
|
||||
'data-hargajualan='+ gadai_detail['hargajualan'] +' ' +
|
||||
'data-norujukan='+ gadai_detail['norujukan'] +' ' +
|
||||
'data-url=' + urlroute + ' ' +
|
||||
blockedAttr + '>' +
|
||||
gadai_detail['norujukan'] + '</a>';
|
||||
})(),
|
||||
gadai_detail['t_gadai'],
|
||||
tarikh_matang,
|
||||
'RM '+ formatter.format(gadai_detail['bakihargajualan']),
|
||||
@@ -656,20 +708,23 @@ $.each(data,function(index,gadai_detail){
|
||||
gadai_detail['tempoh'],
|
||||
'RM '+ upahsemasa,
|
||||
'<div style="white-space: nowrap; color:red; font-weight: bolder">' + taglel + '</div>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
if (!bayaranInfo.tarikh) {
|
||||
return '';
|
||||
}
|
||||
let color = bayaranInfo.blocked ? 'red' : 'green';
|
||||
return '<div style="white-space: nowrap; color: ' + color + '; font-weight: bold;">' +
|
||||
bayaranInfo.tarikh + '</div>';
|
||||
})()
|
||||
]).draw();
|
||||
}else{
|
||||
var taglel = '';
|
||||
if(gadai_detail['taglel'] == 1){
|
||||
if(tagarrahnbid == 1){
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
async:false,
|
||||
url:api_arrahnbid + 'portalApi?norujukan=' + gadai_detail['norujukan'],
|
||||
|
||||
success: function(data){
|
||||
taglel = data.lelong.t_lelong;
|
||||
}
|
||||
});
|
||||
if(gadai_detail['t_lelong'] != null) {
|
||||
taglel = gadai_detail['t_lelong'];
|
||||
}
|
||||
} else {
|
||||
$.ajax({
|
||||
method:"GET",
|
||||
@@ -690,7 +745,18 @@ $.each(data,function(index,gadai_detail){
|
||||
// let radio_action = "onclick=checkCanChangeGadaianDetail(" + "'" + table_norujukan + "'" + ")";
|
||||
tablegadai.row.add([
|
||||
'<input type="radio" value='+ gadai_detail["norujukan"] + ' name="belum"/>',
|
||||
'<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
// '<a href="#" onclick="checkserah(this)" data-pinjaman='+ gadai_detail['pinjaman'] +' data-hargajualan='+ gadai_detail['hargajualan'] +' data-norujukan='+ gadai_detail['norujukan'] +' data-url=' + urlroute +'>' + gadai_detail['norujukan'] + '</a>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
let blockedAttr = bayaranInfo.blocked ? 'data-blocked="true"' : '';
|
||||
return '<a href="#" onclick="checkserah(this)" ' +
|
||||
'data-pinjaman='+ gadai_detail['pinjaman'] +' ' +
|
||||
'data-hargajualan='+ gadai_detail['hargajualan'] +' ' +
|
||||
'data-norujukan='+ gadai_detail['norujukan'] +' ' +
|
||||
'data-url=' + urlroute + ' ' +
|
||||
blockedAttr + '>' +
|
||||
gadai_detail['norujukan'] + '</a>';
|
||||
})(),
|
||||
gadai_detail['t_gadai'],
|
||||
tarikh_matang,
|
||||
'RM '+ formatter.format(gadai_detail['bakihargajualan']),
|
||||
@@ -699,6 +765,15 @@ $.each(data,function(index,gadai_detail){
|
||||
gadai_detail['tempoh'],
|
||||
'RM '+ upahsemasa['pendapatan'],
|
||||
'<div style="white-space: nowrap; color:red; font-weight: bolder">' + taglel + '</div>',
|
||||
(function() {
|
||||
let bayaranInfo = getPembayaranTerakhir(taglel);
|
||||
if (!bayaranInfo.tarikh) {
|
||||
return '';
|
||||
}
|
||||
let color = bayaranInfo.blocked ? 'red' : 'green';
|
||||
return '<div style="white-space: nowrap; color: ' + color + '; font-weight: bold;">' +
|
||||
bayaranInfo.tarikh + '</div>';
|
||||
})()
|
||||
]).draw();
|
||||
}
|
||||
}else if(jenistebus == "sudah_tebus"){
|
||||
|
||||
Reference in New Issue
Block a user