FIX_LIVE_BDS_ISSUES&RFQ

This commit is contained in:
velz 2024-11-05 11:01:28 +05:30
parent 32e1abcf34
commit a3fb21ead0
3 changed files with 173 additions and 88 deletions

View File

@ -604,53 +604,53 @@ $(document).on('change', 'input[type="checkbox"][name="co_share_type[]"]', funct
} }
}); });
$(document).on('input', '[name="cgst[]"]', function() { // $(document).on('input', '[name="cgst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="igst[]"]').val(0); // $('[name="igst[]"]').val(0);
$('[name="cgst[]"]').val(val); // $('[name="cgst[]"]').val(val);
$('[name="sgst[]"]').val(val); // $('[name="sgst[]"]').val(val);
}else{ // }else{
$('[name="igst[]"]').val(''); // $('[name="igst[]"]').val('');
$('[name="sgst[]"]').val(''); // $('[name="sgst[]"]').val('');
} // }
console.log('cgst value', val); // console.log('cgst value', val);
}); // });
$(document).on('input', '[name="sgst[]"]', function() { // $(document).on('input', '[name="sgst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="igst[]"]').val(0); // $('[name="igst[]"]').val(0);
$('[name="sgst[]"]').val(val) // $('[name="sgst[]"]').val(val)
$('[name="cgst[]"]').val(val) // $('[name="cgst[]"]').val(val)
}else{ // }else{
$('[name="igst[]"]').val(''); // $('[name="igst[]"]').val('');
$('[name="sgst[]"]').val('') // $('[name="sgst[]"]').val('')
$('[name="cgst[]"]').val('') // $('[name="cgst[]"]').val('')
} // }
console.log('cgst value', val); // console.log('cgst value', val);
}); // });
$(document).on('input', '[name="igst[]"]', function() { // $(document).on('input', '[name="igst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="cgst[]"], [name="sgst[]"]').val(0); // $('[name="cgst[]"], [name="sgst[]"]').val(0);
$('[name="igst[]"]').val(val) // $('[name="igst[]"]').val(val)
}else{ // }else{
$('[name="cgst[]"], [name="sgst[]"]').val(''); // $('[name="cgst[]"], [name="sgst[]"]').val('');
$('[name="igst[]"]').val('') // $('[name="igst[]"]').val('')
} // }
console.log('igst value', val); // console.log('igst value', val);
}); // });
$(document).on('click', '[name="co_share_type[]"]', function() { $(document).on('click', '[name="co_share_type[]"]', function() {
@ -924,6 +924,30 @@ function getPolicyTransactionDataForEndorsementEdit(input){
} }
//end edit function //end edit function
function checkAndDistributeTax(input)
{
const event = window.event;
// console.log("Event type:", event.type);
// console.log("Event target:", event.target);
console.log("Event id:", event.target.id);
let cgst = parseFloat($('#cgst_' + input).val());
let sgst = parseFloat($('#sgst_' + input).val());
let igst = parseFloat($('#igst_' + input).val());
if(((event.target.id).startsWith('cgst') || (event.target.id).startsWith('sgst') ))
{
if(cgst !== 0) { $('#sgst_' + input).val(cgst.toFixed(2)); }
else if(sgst !== 0) { $('#cgst_' + input).val(sgst.toFixed(2)); }
$('#igst_' + input).val(0.00);
}
else
{
$('#cgst_' + input).val(0.00);
$('#sgst_' + input).val(0.00);
}
}
function amountCalculation(input) { function amountCalculation(input) {
// console.log(input); // console.log(input);
@ -945,6 +969,7 @@ function amountCalculation(input) {
} }
let cop = parseFloat($('#co_premium_' + input).val()) || 0; let cop = parseFloat($('#co_premium_' + input).val()) || 0;
checkAndDistributeTax(input);
let cgst = parseFloat($('#cgst_' + input).val()) || 0; let cgst = parseFloat($('#cgst_' + input).val()) || 0;
let sgst = parseFloat($('#sgst_' + input).val()) || 0; let sgst = parseFloat($('#sgst_' + input).val()) || 0;
let igst = parseFloat($('#igst_' + input).val()) || 0; let igst = parseFloat($('#igst_' + input).val()) || 0;

View File

@ -748,14 +748,14 @@
<!-- end form row --> <!-- end form row -->
<!-- Client form content modal--> <!-- Client form content modal-->
<div class="modal fade" id="upload_enrollment_model" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="false"> <div class="modal fade" id="upload_enrollment_model" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="false" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h4 class="modal-title" id="myCenterModalLabel">Add New Client</h4> <h4 class="modal-title" id="myCenterModalLabel">Add New Client</h4>
<button type="button" id="close_btn" class="close" data-dismiss="modal" aria-hidden="true">×</button> <button type="button" id="close_btn" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div> </div>
<div class="modal-body"> <div class="modal-body" style="overflow-y: auto;height: 90vh;">
<form class="parsley-examples" method="post" id="client_form" enctype="multipart/form-data"> <form class="parsley-examples" method="post" id="client_form" enctype="multipart/form-data">
<div class="form-group"> <div class="form-group">
@ -998,11 +998,31 @@
<script> <script>
var team_id = []; var team_id = [];
let isClientFormSubmitting = false;
$(document).ready(function(){ $(document).ready(function(){
// hidePermiumDetailsBasedOnTheTeam() // hidePermiumDetailsBasedOnTheTeam()
// $('#upload_enrollment_model').modal({
// backdrop: 'static',
// keyboard: false
// })
$('#upload_enrollment_model').on('hide.bs.modal', function (e) {
if (!isClientFormSubmitting) {
// Ask for confirmation
if (confirm("Are you sure you want to close? Unsaved changes will be lost.")) {
// If confirmed, reset the form
$('#client_form')[0].reset();
} else {
// If not confirmed, prevent the modal from closing
e.preventDefault();
}
}
});
team_id = <?php echo json_encode(user_team()); ?>; team_id = <?php echo json_encode(user_team()); ?>;
console.log('team_id', team_id); console.log('team_id', team_id);
@ -1203,53 +1223,53 @@ $(document).on('change', 'input[type="checkbox"][name="co_share_type[]"]', funct
} }
}); });
$(document).on('input', '[name="cgst[]"]', function() { // $(document).on('input', '[name="cgst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="igst[]"]').val(0); // $('[name="igst[]"]').val(0);
$('[name="cgst[]"]').val(val); // $('[name="cgst[]"]').val(val);
$('[name="sgst[]"]').val(val); // $('[name="sgst[]"]').val(val);
}else{ // }else{
$('[name="igst[]"]').val(''); // $('[name="igst[]"]').val('');
$('[name="sgst[]"]').val(''); // $('[name="sgst[]"]').val('');
} // }
// console.log('cgst value', val); // // console.log('cgst value', val);
}); // });
$(document).on('input', '[name="sgst[]"]', function() { // $(document).on('input', '[name="sgst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="igst[]"]').val(0); // $('[name="igst[]"]').val(0);
$('[name="sgst[]"]').val(val) // $('[name="sgst[]"]').val(val)
$('[name="cgst[]"]').val(val) // $('[name="cgst[]"]').val(val)
}else{ // }else{
$('[name="igst[]"]').val(''); // $('[name="igst[]"]').val('');
$('[name="sgst[]"]').val('') // $('[name="sgst[]"]').val('')
$('[name="cgst[]"]').val('') // $('[name="cgst[]"]').val('')
} // }
// console.log('cgst value', val); // // console.log('cgst value', val);
}); // });
$(document).on('input', '[name="igst[]"]', function() { // $(document).on('input', '[name="igst[]"]', function() {
let val = $(this).val(); // let val = $(this).val();
if(val){ // if(val){
$('[name="cgst[]"], [name="sgst[]"]').val(0); // $('[name="cgst[]"], [name="sgst[]"]').val(0);
$('[name="igst[]"]').val(val) // $('[name="igst[]"]').val(val)
}else{ // }else{
$('[name="cgst[]"], [name="sgst[]"]').val(''); // $('[name="cgst[]"], [name="sgst[]"]').val('');
$('[name="igst[]"]').val('') // $('[name="igst[]"]').val('')
} // }
// console.log('igst value', val); // // console.log('igst value', val);
}); // });
$(document).on('click', '[name="co_share_type[]"]', function() { $(document).on('click', '[name="co_share_type[]"]', function() {
@ -1650,9 +1670,33 @@ function getPolicyTransactionDataForEdit(input) {
checkInvoiceStatusToHideSubmitBtn(id) checkInvoiceStatusToHideSubmitBtn(id)
} }
function checkAndDistributeTax(input)
{
const event = window.event;
// console.log("Event type:", event.type);
// console.log("Event target:", event.target);
console.log("Event id:", event.target.id);
let cgst = parseFloat($('#cgst_' + input).val());
let sgst = parseFloat($('#sgst_' + input).val());
let igst = parseFloat($('#igst_' + input).val());
if(((event.target.id).startsWith('cgst') || (event.target.id).startsWith('sgst') ))
{
if(cgst !== 0) { $('#sgst_' + input).val(cgst.toFixed(2)); }
else if(sgst !== 0) { $('#cgst_' + input).val(sgst.toFixed(2)); }
$('#igst_' + input).val(0.00);
}
else
{
$('#cgst_' + input).val(0.00);
$('#sgst_' + input).val(0.00);
}
}
function amountCalculation(input) { function amountCalculation(input) {
// console.log(input); console.log('amountCalculation - ' + input);
let selectedOption = $('#policy_type_id').find('option:selected'); let selectedOption = $('#policy_type_id').find('option:selected');
let bap = selectedOption.data('bap'); let bap = selectedOption.data('bap');
@ -1671,9 +1715,12 @@ function amountCalculation(input) {
} }
let cop = parseFloat($('#co_premium_' + input).val()) || 0; let cop = parseFloat($('#co_premium_' + input).val()) || 0;
checkAndDistributeTax(input);
let cgst = parseFloat($('#cgst_' + input).val()) || 0; let cgst = parseFloat($('#cgst_' + input).val()) || 0;
let sgst = parseFloat($('#sgst_' + input).val()) || 0; let sgst = parseFloat($('#sgst_' + input).val()) || 0;
let igst = parseFloat($('#igst_' + input).val()) || 0; let igst = parseFloat($('#igst_' + input).val()) || 0;
let stamp_duty_amt = parseFloat($('#stamp_duty_' + input).val()) || 0; let stamp_duty_amt = parseFloat($('#stamp_duty_' + input).val()) || 0;
let agreed_amount = parseFloat($('#agreed_amount_' + input).val()) || 0; let agreed_amount = parseFloat($('#agreed_amount_' + input).val()) || 0;
@ -1697,7 +1744,10 @@ function amountCalculation(input) {
// Calculate GST percentage // Calculate GST percentage
let gst_per = igst; let gst_per = igst;
if (igst === 0) { if (igst === 0) {
gst_per = cgst + sgst; console.log('called' + cgst + sgst);
gst_per = parseFloat(cgst) + parseFloat(sgst);
// gst_per = (cgst) + (sgst);
console.log(gst_per);
} }
// Calculate the total premium (Base + TP + Co-Premium) // Calculate the total premium (Base + TP + Co-Premium)
@ -2658,7 +2708,7 @@ $("#inception_form_id").submit(function(event) {
$("#client_form").submit(function(event) { $("#client_form").submit(function(event) {
event.preventDefault(); event.preventDefault();
isClientFormSubmitting = true;
var isValid = $('#client_form').parsley().validate(); var isValid = $('#client_form').parsley().validate();
if (!isValid) { if (!isValid) {
console.log('Form is Empty', 'Warning'); console.log('Form is Empty', 'Warning');
@ -2705,6 +2755,7 @@ $("#client_form").submit(function(event) {
$('#client_form')[0].reset(); $('#client_form')[0].reset();
$('.close').click(); $('.close').click();
isClientFormSubmitting = false;
}, },
error: function (xhr, status, error) { error: function (xhr, status, error) {
console.error(xhr.responseText); console.error(xhr.responseText);

View File

@ -190,7 +190,7 @@ body {
<div class="row" style="margin-bottom:1rem;"> <div class="row" style="margin-bottom:1rem;">
<div class="col-6" style="align-self: center;"> <div class="col-6" style="align-self: center;">
<h4 style="position: relative;"> <?= isset($page_name) ? $page_name : 'RFQ' ?> Process</h4> <h4 style="position: relative;"> <?= isset($page_name) ? $page_name : 'RFQ' ?> </h4>
</div> </div>
<div class="col-2" id="status_change" style="text-align: right; position: relative;top: 56px; left: 386px;"> <div class="col-2" id="status_change" style="text-align: right; position: relative;top: 56px; left: 386px;">
@ -199,8 +199,8 @@ body {
</div> </div>
<button id="addQuote" class="btn btn-custom">Add New Proposal</button> <button id="addQuote" class="btn btn-custom">Add New Proposal</button>
<button id="submitData" class="btn btn-primary">Save</button> <button id="submitData" class="btn btn-primary">Save RFQ</button>
<button id="submitQCRData"class="btn btn-primary">Save QCR</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <button id="submitQCRData"class="btn btn-primary">Procced to QCR</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<a id="submitExcel"class="btn btn-primary" id>Export Excel</a> <a id="submitExcel"class="btn btn-primary" id>Export Excel</a>
<button id="submitMail"class="btn btn-primary" onclick="showModal()">Send Mail</button> <button id="submitMail"class="btn btn-primary" onclick="showModal()">Send Mail</button>
@ -364,7 +364,7 @@ $(document).ready(function() {
$('#submitQCRData').text('Save'); $('#submitQCRData').text('Save');
} else { } else {
$('#submitData').show(); $('#submitData').show();
$('#submitQCRData').text('Save QCR'); $('#submitQCRData').text('Proceed to QCR');
} }
let excel_url = '<?= base_url('leads/exportQCRandRFQ/') ?>'+lead_id + '/' + type_for_url + '/' + 'excel' let excel_url = '<?= base_url('leads/exportQCRandRFQ/') ?>'+lead_id + '/' + type_for_url + '/' + 'excel'
@ -704,6 +704,14 @@ function addSuggestionsToTable() {
editableCell.classList.add('editablecolumns'); editableCell.classList.add('editablecolumns');
const inputBox = document.createElement('input'); const inputBox = document.createElement('input');
inputBox.type = 'hidden'; inputBox.type = 'hidden';
//add default values for default proposal for both hidden valuse as well as cell textContent
if(details.answers.length != 0)
{
inputBox.value = JSON.stringify(details.answers[0]);
editableCell.textContent = (details.answers[0].display_value);
}
editableCell.appendChild(inputBox); editableCell.appendChild(inputBox);
// Additional handling can be added here for 'answers' or 'type' // Additional handling can be added here for 'answers' or 'type'
} }
@ -727,7 +735,7 @@ function moveAddRowButton() {
const lastRow = rfqTable.rows[rfqTable.rows.length - 1]; const lastRow = rfqTable.rows[rfqTable.rows.length - 1];
const actionCell = lastRow.cells[lastRow.cells.length - 1]; const actionCell = lastRow.cells[lastRow.cells.length - 1];
actionCell.innerHTML = actionCell.innerHTML =
'<input type="checkbox" name="qcr"> QCR <input type="checkbox" name="client"> Client <button class="btn btn-danger btn-sm removeRow"></button> <button id="addRow" class="btn btn-primary btn-sm">+</button>'; '<input type="checkbox" name="qcr" checked> QCR <input type="checkbox" name="client" checked> Client <button class="btn btn-danger btn-sm removeRow"></button> <button id="addRow" class="btn btn-primary btn-sm">+</button>';
document.getElementById('addRow').addEventListener('click', addRow); document.getElementById('addRow').addEventListener('click', addRow);
} }
@ -1029,7 +1037,7 @@ function addRow(e) {
const actionCell = newRow.insertCell(); const actionCell = newRow.insertCell();
actionCell.classList.add('action'); actionCell.classList.add('action');
actionCell.innerHTML = actionCell.innerHTML =
'<input type="checkbox" name="qcr"> QCR <input type="checkbox" name="client"> Client <button class="btn btn-danger btn-sm removeRow"></button> <button class="btn btn-primary btn-sm" onclick="addRow(event)">+</button>'; '<input type="checkbox" name="qcr" checked> QCR <input type="checkbox" name="client" checked> Client <button class="btn btn-danger btn-sm removeRow"></button> <button class="btn btn-primary btn-sm" onclick="addRow(event)">+</button>';
e.target.remove(); e.target.remove();
@ -2124,10 +2132,10 @@ function showModal(){
var lead_id = $('#lead_id').val(); var lead_id = $('#lead_id').val();
if(RFQ_or_QCR == 2){ if(RFQ_or_QCR == 2){
$('#myCenterModalLabel').text('Client Data') $('#myCenterModalLabel').text('Client contact to send mail')
url = '<?= base_url('leads/list/') ?>' + lead_id; url = '<?= base_url('leads/list/') ?>' + lead_id;
}else{ }else{
$('#myCenterModalLabel').text('Insurer Data') $('#myCenterModalLabel').text('Choose insurer to send mail')
url = '<?= base_url('util/getLevelContects') ?>' url = '<?= base_url('util/getLevelContects') ?>'
} }
@ -2706,11 +2714,12 @@ function jsonToTable(json) {
try { try {
$('.loader').fadeIn(); // $('.loader').fadeIn();
$('.loader-mask').fadeIn(); // $('.loader-mask').fadeIn();
const jsonData = await tableToJsonForFormSubmit(); // Construct the JSON data const jsonData = await tableToJsonForFormSubmit(); // Construct the JSON data
console.log(jsonData);
// return false;
// Create a FormData object // Create a FormData object
const formData = new FormData(); const formData = new FormData();