nhance/app/Views/cd_master_add_modal.php
2025-08-06 12:27:33 +05:30

306 lines
13 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- modal content -->
<div id="con-close-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog" <?= !isset($CD_Master_Data) ? 'style="max-width: 35% !important;"' : '' ?>>
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="title">Add Opening Amount</h4>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true" onclick="resetCdMasterFormModal()">×</button>
</div>
<div class="modal-body p-4">
<div class="">
<form role="form" class="parsley-examples" id="CDMasterForm" enctype="multipart/form-data">
<input type="hidden" name="PrimaryKey" id="CD_Master_ID" />
<div class="form-group">
<div class="form-row">
<div class="form-group col-md-12">
<label for="emp_code">Client<span class="text-danger">*</span></label>
<select class="form-control <?= !isset($CD_Master_Data) ? 'readonly-select' : '' ?>" id="cd_client_id" name="client_id" required>
<option value="" >Select Client</option>
<?php foreach($clients as $value) {
if(isset($client['id']) && $value['id'] == $client['id']){
$client_select = "selected";
}else{
$client_select = "";
}
?>
<option value="<?= $value['id'] ?>" <?= $client_select ?>><?= $value['client_name'] ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="profile">Insurer<span class="text-danger">*</span></label>
<select class="form-control <?= !isset($CD_Master_Data) ? 'readonly-select' : '' ?>" id="insurer_id_for_cd" name="insurer_id" <?= isset($CD_Master_Data) ? 'onchange="filterInsurerBranch(this)"' : '' ?> required>
<option value="">Select Insurer</option>
<?php foreach($insurers as $value) { ?>
<option value="<?= $value['id'] ?>"><?= $value['name'] ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="insurer_branch_id">Insurer Branch<span class="text-danger">*</span></label>
<select class="form-control <?= !isset($CD_Master_Data) ? 'readonly-select' : '' ?>" id="insurer_branch_id" name="insurer_branch_id" required>
<option value="">Select Insurer Branch</option>
<?php if(isset($insurer_branch) && !empty($insurer_branch))
{ foreach($insurer_branch as $branch) { ?>
<option data-insurer="<?= $branch['insurer_id'] ?>" value="<?= $branch['id'] ?>"><?= $branch['branch_name'] ?></option>
<?php } } ?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="email">Opening Date<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="opening_date" id="opening_date" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="mobile">CD Account Number<span class="text-danger">*</span></label>
<input type="text" class="form-control" id="cd_ac_no_for_cd_master" name="cd_ac_no" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="mobile">Opening Amount<span class="text-danger">*</span></label>
<input type="text" class="form-control" id="opening_bal" name="opening_bal" onkeypress="return onlyNumbers(event)" required>
</div>
</div>
</div>
<div id="cdButtonWrapper" class="form-group text-right m-b-0">
<button class="btn btn-primary waves-effect waves-light mr-1" id="cd_master_btn_Submit">Submit</button>
<!-- <button type="button" class="btn btn-secondry waves-effect waves-light mr-1" data-dismiss="modal" aria-hidden="true">Close</button> -->
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<!-- /.modal -->
<script>
//checking and setting this is CD master page or not
var isCdMasterPage = <?php echo isset($CD_Master_Data) ? 'true' : 'false'; ?>;
console.log("isCdMasterPage", isCdMasterPage);
$(document).ready(function(){
var openingDatePicker = flatpickr("#opening_date", {
dateFormat: "d-m-Y",
allowInput: false
});
if(isCdMasterPage == true){
$('#cd_client_id').select2();
$('#insurer_id_for_cd').select2();
$('#insurer_branch_id').select2();
}
})
$('#cd_ac_no_for_cd_master').keyup(function(){
console.log('key chnage detected');
var cd_ac_no = $(this).val();
console.log(cd_ac_no +'-'+cd_ac_no.length);
cd_ac_no = cd_ac_no.trim();
console.log(cd_ac_no +'-'+cd_ac_no.length);
$.ajax({
url: '<?php echo base_url('util/check_cd_ac_no/');?>'+cd_ac_no,
type: "GET",
dataType: 'json',
success: function (res) {
console.log(res)
if(res.status == true){
toastr.warning(res.message, 'warning');
// $('#cd_ac_no').val('');
$('#cd_master_btn_Submit').prop('disabled',true);
return;
}
$('#cd_master_btn_Submit').prop('disabled',false);
},
error: function (xhr, status, error) {
console.error(xhr.responseText);
console.error(status, error);
}
});
})
$('#CDMasterForm').submit(function(event) {
event.preventDefault();
console.log("submit CD Master Form Data function called");
var isValid = $('#CDMasterForm').parsley().validate();
if (!isValid) {
$('#CDMasterForm').find('input, select, textarea').each(function() {
if ($(this).parsley().isValid() === false && !$(this).val()) {
console.log('Empty field ID:', this.id);
}
});
console.log('Form is Empty', 'Warning');
return;
}
let formData = new FormData($('#CDMasterForm')[0]);
console.log("formData", formData);
let url = '<?= base_url('master/cash_deposite/create') ?>';
console.log("url", url);
$.ajax({
data: formData,
url: url,
type: "POST",
dataType: 'json',
processData: false,
contentType: false,
success: function(res) {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
console.log('CD Mater Form Submit Responce', res);
if (res.status == true) {
toastr.success(res.message, 'Success');
if(isCdMasterPage == false){
appendCDACNO(res.data, res.cd_master_data.id);
// appendCdAccNo(res.cd_master_data);
}
} else {
toastr.warning(res.message, 'WARNING');
}
//this function for reset the form values after submitting the form or closing the form
resetCdMasterFormModal()
$('.close').click();
//if this page is CD mater form page than the page reload other wise not to reload
if(isCdMasterPage == true){
window.location.href = '<?= base_url('master/cash_deposite/list') ?>';
}
},
error: function(xhr, status, error) {
console.error(xhr.responseText);
console.error(status, error);
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
toastr.error('An error occurred while adding the CD account number.', 'ERROR');
}
});
});
function onlyNumbers(event) {
var charcode;
charcode = event.which || event.keyCode;
if (charcode >= 48 && charcode <= 57 || charcode == 46) return true;
return false;
}
function resetCdMasterFormModal(){
console.log("resetCdMasterFormModal() function called");
$('#CD_Master_ID').val('');
$('#opening_date').val('');
$('#cd_ac_no_for_cd_master').val('');
$('#opening_bal').val('');
$('#CDMasterForm').parsley().reset();
$('#cd_ac_no_for_cd_master').prop("disabled", false);
$('#opening_bal').prop("disabled", false);
if(isCdMasterPage == true){
$('#client_id').val('').change();
$('#insurer_id_for_cd').val('').change();
$('#insurer_branch_id').val('').change();
$('#client_id').prop("disabled", false);
$('#insurer_id_for_cd').prop("disabled", false);
$('#insurer_branch_id').prop("disabled", false);
$('#CDMasterForm')[0].reset();
}
}
function filterInsurerBranch(input) {
console.log("filterInsurerBranch function called");
let insurer_id = $(input).val();
console.log("insurer_id", insurer_id);
let branch_data = <?= isset($insurer_branch) && !empty($insurer_branch) ? json_encode($insurer_branch) : '[]' ?>;
console.log("branch_data", branch_data);
let filteredBranches = branch_data.filter(branch => branch.insurer_id == insurer_id);
console.log("filteredBranches", filteredBranches);
let $branchSelect = $('#insurer_branch_id');
$branchSelect.empty().append('<option value="">Select Insurer Branch</option>');
filteredBranches.forEach(branch => {
$branchSelect.append(
$('<option>', {
value: branch.id,
text: branch.branch_name
})
);
});
$branchSelect.val('').trigger('change.select2');
}
function showCdMasterAddModal(){
if(isCdMasterPage == true){
$('#client_id').val('');
$('#insurer_id_for_cd').val('');
$('#insurer_branch_id').val('');
}
$('#opening_date').val('');
$('#cd_ac_no_for_cd_master').val('');
$('#opening_bal').val('');
// $('#CDMasterForm').attr('action', '<?php echo base_url('master/cash_deposite/create');?>');
$('#title').html('Add Opening Amount');
$('#cd_master_btn_Submit').html('Submit');
var myModal = new bootstrap.Modal(document.getElementById('con-close-modal'));
myModal.show();
}
function appendCdAccNo(data) {
console.log("appendCdAccNo function called :", data);
const option = $('<option>', {
value: data.id,
text: data.cd_ac_no,
selected: true // directly set selected in the object
});
console.log("option", option);
$('#cd_ac_no_for_cd_master').append(option);
}
</script>