123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678 |
- var Bizgaze;
- (function (Bizgaze) {
- let Apps;
- (function (Apps) {
- let Transact;
- (function (Transact) {
- let Controls;
- (function (Controls) {
- class Dues extends Unibase.Platform.Core.BaseComponent {
- init(formpropertyid, prop, callback) {
- var instance = this;
- instance.flag = 0;
- instance.isDueLoading = false;
- var jsfiles = ['apps/transact/managers/payments/paymentmanager.js', 'platform/core/helpers/numberhelper/numberhelper.js'];
- instance.fileCacheHelper.loadJsFiles(jsfiles, function () {
- });
- }
- loadControl(containerid, prop) {
- var instance = this;
- instance.transactionId = prop.FormPropertyId;
- var html = '<div class="col-sm-12 transactonList_div transactonList_div_TRN' + instance.transactionId + ' p-0"><div class="transactonList_item transactonList_item_TRN' + instance.transactionId + '" name="' + instance.transactionId + '"><div id="dueControl_transactonListDiv" class="col-sm-12 transactonList_div transactonList_div_TRN2 p-0"><div class="row rowDues" id="dueControlList"><input type="hidden" id="hf_TotalDiscountAmount" value=""/><input type="hidden" id="hf_DiscountAccountId" value="0"/><input type="hidden" id="hf_PenalityAccountId" value="0"/><input type="hidden" id="hf_TDSAccountId" value="0"/><input type="hidden" id="hf_DiscountAccountName" value=""/><input type="hidden" id="hf_PenalityAccountName" value=""/><input type="hidden" id="hf_TDSAccountName" value=""/><div class="col-sm-3 mt-20 text-ul"><u><a href="javascript:;" class="h6" onclick="Bizgaze.Apps.Transact.Controls.Dues.Instance().toggleDues(\'TRN' + instance.transactionId + '\');" style="color:#5ba8fb;">Dues : <span class="txtDuesTotalAmt">0.00</span></a></u></div>' +
- '<div class="col-sm-3"></div><div class="d-none d-sm-block col-sm-3 text-right m-r-n"><div class="mt-10"><a href="javascript:;" name="disabled" class="btn btn-sm btn-success" onclick="Bizgaze.Apps.Transact.Controls.Dues.Instance().AutoAdjustDues(\'TRN' + instance.transactionId + '\');" id="btnAutoAdjustDues">Auto Adjust</a></div></div><div class="block d-sm-none col-sm-2 m-r-n"><div class="mt-10"><a href="javascript:;" name="disabled" class="btn btn-sm btn-success" onclick="Bizgaze.Apps.Transact.Controls.Dues.Instance().AutoAdjustDues(\'TRN' + instance.transactionId + '\');" id="btnAutoAdjustDues">Auto Adjust</a></div></div><div class="col-sm-3"><div class="floating-label-form-group m-t-md"><input data-trnid="TRN' + instance.transactionId + '" class="form-control txtTotalDueAdjusted txtTotalDueAdjusted_TRN' + instance.transactionId + ' floating-label-control m-b-n" type="text" style="cursor: not-allowed;" disabled="disabled"/></div></div></div>' +
- '<input type="hidden" id="hdn_duecontrol" class="value-control" value="Bizgaze.Apps.Transact.Controls.Dues.Instance().dueControlObj(\'TRN' + instance.transactionId + '\');"/>' +
- '<section class="mt-5 secDues secDues_TRN' + instance.transactionId + ' hidden"><div class="list-group divDue_List"></div></section>';
- $("#" + containerid).html(html);
- var controlType = "0";
- if (prop.PropertySettings != null) {
- for (var i = 0; i < prop.PropertySettings.length; i++) {
- var data = prop.PropertySettings[i];
- if (data.ControlPropertyName == "ControlType" && data.ControlPropertyValue != "") {
- controlType = data.ControlPropertyValue;
- }
- }
- }
- if (controlType == "1") {
- instance.journalTypeId = 2;
- }
- else if (controlType == "2") {
- instance.journalTypeId = 1;
- }
- else if (controlType == "3") {
- }
- }
- loadPaymentDues(contactId) {
- var instance = this;
- if (contactId != null && contactId != 0 && contactId != undefined) {
- var instance = this;
- var trnId = instance.transactionId;
- var paymentid = 0;
- if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) {
- var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
- var hiddenFieldPaymentId = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentid");
- if (hiddenFieldPaymentId != null || hiddenFieldPaymentId != undefined) {
- paymentid = Number(hiddenFieldPaymentId.Value);
- }
- }
- var lobid = Number($(".txtAutoComplete_lobid").val());
- if (isNaN(lobid)) {
- lobid = 0;
- }
- var date = "";
- var userDate = $(".date_journaldate").val();
- if (userDate != undefined && userDate != null && userDate != "") {
- var formattedUserDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDate(userDate);
- date = moment(formattedUserDate).format("YYYY-MM-DD");
- }
- else {
- var curDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate();
- date = moment(curDate).format("YYYY-MM-DD");
- }
- var duesTotalBal = 0;
- var adjustedTotal = 0;
- instance.isDueLoading = true;
- instance.navigationHelper.showLoading();
- var element = $('.transactonList_item_TRN' + trnId + '');
- Bizgaze.Apps.Transact.Managers.PaymentManager.Instance().getPendings(Number(contactId), paymentid, null, instance.journalTypeId, lobid, date, "Dues").then(function (response) {
- var totalDue = 0;
- var result = response.result;
- var divDues = element.find('.divDue_List');
- $(divDues).empty();
- $(divDues).html('<div class="list-group-item m-b-n divDue_List_item hidden"></div>');
- if (result.length != 0) {
- for (var i = 0; i < result.length; i++) {
- var item = result[i];
- if (i == 0) {
- $("#hf_DiscountAccountId").val(item.DiscountAccountId);
- $("#hf_PenalityAccountId").val(item.PenalityAccountId);
- $("#hf_TDSAccountId").val(item.TDSAccountId);
- $("#hf_DiscountAccountName").val(item.DiscountAccountName);
- $("#hf_PenalityAccountName").val(item.PenalityAccountName);
- $("#hf_TDSAccountName").val(item.TDSAccountName);
- var accountsObj = {
- DiscountAccountId: item.DiscountAccountId,
- PenalityAccountId: item.PenalityAccountId,
- TDSAccountId: item.TDSAccountId,
- DiscountAccountName: item.DiscountAccountName,
- PenalityAccountName: item.PenalityAccountName,
- TDSAccountName: item.TDSAccountName,
- };
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().bindAccounts(accountsObj);
- }
- adjustedTotal += item.Amount;
- duesTotalBal += Number(item.JournalAlloc.TotalAmount - item.JournalAlloc.AdjustedAmount);
- function datediff(date2, today) {
- today = new Date(today.split('/')[2], today.split('/')[1] - 1, today.split('/')[0]);
- date2 = new Date(date2.split('/')[2], date2.split('/')[1] - 1, date2.split('/')[0]);
- var timeDiff = Math.abs(today.getTime() - date2.getTime());
- var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
- return diffDays;
- }
- var today = new Date();
- var dd = today.getDate();
- var mm = today.getMonth() + 1;
- var yyyy = today.getFullYear();
- if (dd < 10) {
- dd = '0' + dd;
- }
- if (mm < 10) {
- mm = '0' + mm;
- }
- today = dd + '/' + mm + '/' + yyyy;
- var dBalance = 0;
- var tBalance = 0;
- dBalance = Number(item.JournalAlloc.TotalAmount - item.JournalAlloc.AdjustedAmount);
- instance.damount = dBalance;
- tBalance = Number(item.JournalAlloc.TotalAmount);
- var date = $(".date_journaldate").val().toString();
- var NumOfDays = 0;
- if (paymentid == 0) {
- NumOfDays = datediff(Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(item.JournalAlloc.JournalDate, null), date);
- }
- else {
- var PaymentDate = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentdate").Value;
- NumOfDays = datediff(Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(item.JournalAlloc.JournalDate, null), date);
- }
- instance.bindDuesHtml(item, dBalance, NumOfDays, trnId, tBalance);
- }
- }
- if (duesTotalBal > 0)
- element.find('.txtDuesTotalAmt').text(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(duesTotalBal, 2));
- else
- element.find('.txtDuesTotalAmt').text("0.00");
- if (duesTotalBal > 0) {
- $(".anchor_totalDue").text(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(duesTotalBal, 2));
- }
- else {
- $(".anchor_totalDue").text("0.00");
- }
- }).then(function () {
- $(".txtTotalDueAdjusted").val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(adjustedTotal, 2));
- $(".secDues").removeClass("hidden");
- element.find('.secDues_' + trnId + '').addClass('hidden');
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- instance.isDueLoading = false;
- var isWalletLoading = Bizgaze.Apps.Transact.Controls.Wallet.Instance().isWalletLoading;
- if (instance.isDueLoading == false && isWalletLoading == false) {
- instance.navigationHelper.hideLoading();
- }
- });
- }
- }
- toggleDues(trnId) {
- var instance = this;
- var element = $('.transactonList_item_' + trnId + '');
- element.find('.secDues_' + trnId + '').toggleClass('hidden');
- }
- AutoAdjustDues(trnId) {
- var instance = this;
- var element = $('.transactonList_item_' + trnId + '');
- var btnColor = $(element).find('#btnAutoAdjustDues').attr('class');
- if ($(element).find('#btnAutoAdjustDues').attr("name") == "enabled") {
- }
- else {
- $(element).find('#btnAutoAdjustDues').attr("name", "enabled");
- }
- instance.updatePayment(trnId);
- var totAdj = 0;
- $(element).find('.divDue_Item').each(function () {
- var xyz = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(xyz))
- totAdj += xyz;
- });
- $('.txtTotalDueAdjusted').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(totAdj, 2));
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- }
- clearDues() {
- var instance = this;
- var trnId = "TRN" + instance.transactionId;
- var totalDueAdjAmt = Number($(".totAdjusted").first().text());
- var totalCreditAmt = Number($(".totAmount").first().text());
- if ((totalDueAdjAmt < totalCreditAmt) || (totalDueAdjAmt > totalCreditAmt)) {
- $(".txtTotalDueAdjusted").val(0);
- $(".totAdjusted").text(0.00);
- var elementforPayment = $('.transactonList_item_' + trnId + '');
- $(elementforPayment).find('.divDue_Item').each(function () {
- $(this).find('.txtCurrentAmount').val(0);
- var walletAmt = $(this).find('.hfDueAmount').val();
- $(this).find('.lblDueBalance').val(walletAmt);
- });
- }
- }
- updatePayment(trnId) {
- var instance = this;
- var element = $('.transactonList_item_' + trnId + '');
- var advanceAmt = 0;
- var total = 0;
- var ttWalAdj = Number($('.txtTotalWalletAdjusted').val());
- var totWalAdj = (isNaN(ttWalAdj)) ? 0 : Number($('.txtTotalWalletAdjusted').val());
- var prevamount = Number($("#txt_TotalCreditAmount").val()) + totWalAdj;
- $(".paymentmodelistitem").each(function () {
- if (!($(this).hasClass("hidden"))) {
- var amount = Number($(this).find('.paymentamount').val());
- $(this).find('.amount').text(amount);
- total = Number(prevamount) + Number(amount);
- prevamount = total;
- }
- });
- var paymentTotal = Number(total) == 0 ? prevamount : Number(total);
- $("#hf_TotalCreditAmount").val(paymentTotal);
- $(element).find('.divDue_Item').each(function (index) {
- var amount = Number($("#txt_TotalCreditAmount").val());
- var txtDiscountAmount = Number($(this).find('.txtDiscountAmount').val());
- var txtTdsAmount = Number($(this).find('.txtTdsAmount').val());
- var currentAmount = Number($(this).find('.txtCurrentAmount').val());
- var discamount = Number($(this).find('.hfDiscountAmount').val());
- var tdsamount = Number($(this).find('.hfTdsAmount').val());
- var dueAmount = 0;
- if ((discamount == 0) && (tdsamount == 0)) {
- $('.lblDueBalance').val();
- dueAmount = Number($(this).find('.hfDueAmount').val()) - txtDiscountAmount - txtTdsAmount;
- }
- if ((discamount != 0) && (tdsamount != 0)) {
- dueAmount = (Number($(this).find('.hfDueAmount').val()) + tdsamount + discamount) - txtDiscountAmount - txtTdsAmount;
- }
- if ((discamount != 0) && (tdsamount == 0)) {
- dueAmount = (Number($(this).find('.hfDueAmount').val()) + discamount) - txtDiscountAmount - txtTdsAmount;
- }
- if ((discamount == 0) && (tdsamount != 0)) {
- dueAmount = (Number($(this).find('.hfDueAmount').val()) + tdsamount) - txtDiscountAmount - txtTdsAmount;
- }
- var txtCurrentAmt = 0;
- if (paymentTotal >= dueAmount) {
- if (dueAmount != 0) {
- paymentTotal -= dueAmount;
- txtCurrentAmt = dueAmount;
- dueAmount = 0;
- advanceAmt = paymentTotal;
- }
- }
- else {
- dueAmount -= paymentTotal;
- txtCurrentAmt = paymentTotal;
- paymentTotal = 0;
- }
- if (Number(paymentTotal) < 0.01) {
- paymentTotal = 0;
- }
- $(this).find('.txtCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(txtCurrentAmt, 2));
- $(this).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(dueAmount, 2));
- });
- }
- bindDuesHtml(item, dBalance, NumOfDays, formPropId, tBalance) {
- var instance = this;
- var discAmount = item.DiscountAmount;
- if (item.PaymentTermMode == 2) {
- discAmount = discAmount * -1;
- }
- var tdsAttr = "";
- if (item.TCSAmount > 0) {
- tdsAttr = "disabled";
- }
- var journalAlloc = item.JournalAlloc;
- var Amount = item.Amount;
- var html = '<div class="list-group-item divDue_Item" id="divDue_List_item_' + journalAlloc.JournalId + '"><div class="row">' +
- '<input type="hidden" class="hf_JournalAllocId" value="' + journalAlloc.JournalAllocId + '" />' +
- '<input type="hidden" class="hf_RefAllocId" value="' + journalAlloc.RefAllocId + '" />' +
- '<div class="col-sm-3"><div class="floating-label-form-group m-b floating-label-form-group-with-value" style="border:0px"><span class="h6">' + journalAlloc.JournalNo + ' (' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(tBalance, 2) + ')</span><br/><input class="form-control value-control text-dark" disabled type="text" value="' + Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(journalAlloc.JournalDate, null) + ' (' + NumOfDays + ' days)"></div></div>' +
- '<div class="col-sm-2"><div class="floating-label-form-group m-b floating-label-form-group-with-value" style="border:0px"><span class="h6">Balance</span><input class="hfOrgDueAmount" type="hidden" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(dBalance - discAmount - item.TDSAmount, 2) + '"><input class="hfDueAmount" type="hidden" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(dBalance - discAmount - item.TDSAmount, 2) + '"><input id="lblDueBalance_' + journalAlloc.JournalId + '" class="form-control value-control lblDueBalance text-dark" disabled type="text" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(dBalance - discAmount - Amount - item.TDSAmount, 2) + '" placeholder="Balance" data-label="Balance"></div></div>' +
- '<div class="col-sm-2"><div class="floating-label-form-group m-b floating-label-form-group-with-value"><span class="h6">Discount</span><br /><input class="hfDiscountAmount" type="hidden" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(discAmount, 2) + '" /><input class="form-control value-control floating-label-control txtDiscountAmount" type="text" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(discAmount, 2) + '" id="txtDiscountAmount_' + journalAlloc.JournalId + '" class="form-control value-control floating-label-control txtCurrentAmount" placeholder="Discount Amount" data-label="Discount Amount" onclick="this.select()" onkeypress="return Bizgaze.Apps.Transact.Controls.Dues.Instance().isSignDecimalplusNoLongPress(event,this.id)" onkeyup="Bizgaze.Apps.Transact.Controls.Dues.Instance().discountValidation(event,this.id,\'' + journalAlloc.JournalId + '\',\'' + "TRN" + formPropId + '\')" /></div></div>' +
- '<div class="col-sm-2"><div class="floating-label-form-group m-b floating-label-form-group-with-value"><span class="h6">TDS</span><br /><input class="hfTdsAmount" type="hidden" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(item.TDSAmount, 2) + '" /><input class="form-control value-control floating-label-control txtTdsAmount" ' + tdsAttr + ' type="text" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(item.TDSAmount, 2) + '" id="txtTdsAmount_' + journalAlloc.JournalId + '" class="form-control value-control floating-label-control" placeholder="TDS Amount" data-label="TDS Amount" onclick="this.select()" oninput="return Bizgaze.Apps.Transact.Controls.Dues.Instance().isDecimalplusNoLongPress(event,this.id)" onkeyup="Bizgaze.Apps.Transact.Controls.Dues.Instance().tdsValidation(event,this.id,\'' + journalAlloc.JournalId + '\',\'' + "TRN" + formPropId + '\')" /></div></div>' +
- '<div class="col-sm-3"><div class="floating-label-form-group m-b"><span class="h6">Adjusted Amount</span><br><input id="txtCurrentAmount_' + journalAlloc.JournalId + '" type="text" data-previousvalue="0" value="' + Amount + '" class="form-control value-control floating-label-control txtCurrentAmount" placeholder="Amount" data-label="Amount" onclick="this.select()" oninput="return Bizgaze.Apps.Transact.Controls.Dues.Instance().isDecimalplusNoLongPress(event,this.id)" onkeyup="Bizgaze.Apps.Transact.Controls.Dues.Instance().AdjustDueAmount(event,\'' + journalAlloc.JournalId + '\',\'' + "TRN" + formPropId + '\');"/></div></div>' +
- '</div></div>';
- var element = $('.transactonList_item_TRN' + formPropId + '');
- element.find('.divDue_List_item').before(html);
- }
- bindDueEvents() {
- }
- tdsValidation(evt, id, jId, trnId) {
- var instance = this;
- instance.flag = 0;
- var val = document.getElementById(id);
- var curDueAmount = Number(val.value);
- var elementforPayment = $('.transactonList_item_' + trnId);
- var element = elementforPayment.find('#divDue_List_item_' + jId);
- var tdsAccountId = Number($("#hf_TDSAccountId").val());
- var totDueAmount = Number($(element).find('.hfDueAmount').val());
- instance.AdjustDueAmount(evt, jId, trnId);
- if (totDueAmount < curDueAmount) {
- $(element).find('.txtTdsAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("TDSAmount cannot be greater than Due Amount");
- return false;
- }
- var adjustedAmt = $(element).find('.txtCurrentAmount').val();
- if (adjustedAmt != 0) {
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- }
- return true;
- }
- discountValidation(evt, id, jId, trnId) {
- var instance = this;
- instance.flag = 0;
- var val = document.getElementById(id);
- var isNegativeValue = (val.value.match(/-/g) || []).length;
- var curDueAmount = Number(val.value);
- var elementforPayment = $('.transactonList_item_' + trnId);
- var element = elementforPayment.find('#divDue_List_item_' + jId);
- var discountAccountId = Number($("#hf_DiscountAccountId").val());
- var penalityAccountId = Number($("#hf_PenalityAccountId").val());
- var totDueAmount = Number($(element).find('.hfDueAmount').val());
- var isDiscAmount = Math.sign(curDueAmount);
- if (isNaN(isDiscAmount)) {
- $(element).find('.txtDiscountAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
- return false;
- }
- instance.AdjustDueAmount(evt, jId, trnId);
- if (totDueAmount < curDueAmount) {
- $(element).find('.txtDiscountAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Discount cannot be greater than Due Amount");
- return false;
- }
- var adjustedAmt = $(element).find('.txtCurrentAmount').val();
- if (adjustedAmt != 0) {
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- }
- return true;
- }
- AdjustDueAmount(event, jId, trnId) {
- var instance = this;
- instance.flag = 0;
- const maxAmt = Number($(event.target).parents('.divDue_Item').find('.hfOrgDueAmount').val());
- const currVal = Number($(event.target).val());
- if (currVal > maxAmt) {
- $(event.target).val(maxAmt);
- }
- var formId = $(".transactonList_div_" + trnId).parents("form").attr("id").split('_')[1];
- var elementforPayment = $('.transactonList_item_' + trnId + '');
- var totDue = 0;
- var totDueAmt = Number(elementforPayment.find('.txtDuesTotalAmt').text());
- $(elementforPayment).find('.divDue_Item').each(function () {
- var xyz = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(xyz))
- totDue += xyz;
- });
- var element = elementforPayment.find('#divDue_List_item_' + jId + '');
- var previousValue = $(element).find('.txtCurrentAmount').data("previousvalue");
- var crAmt = totDueAmt;
- var totalAmt = Number($(".totAmount").first().text());
- var OrgdueAmount = Number($(element).find('.hfOrgDueAmount').val());
- var DueAmount = Number($(element).find('.hfDueAmount').val());
- var txtCurrentAmt = $(element).find('.txtCurrentAmount').val();
- var txtDiscountAmt = Number($(element).find('.txtDiscountAmount').val());
- var txtTDSAmt = Number($(element).find('.txtTdsAmount').val());
- var hf_DiscountAmount = Number($(element).find(".hfDiscountAmount").val());
- var hf_TDSAmount = Number($(element).find(".hfTdsAmount").val());
- var lblDueBalance = Number($(element).find(".lblDueBalance").val());
- var totalAmount = OrgdueAmount + hf_DiscountAmount + hf_TDSAmount;
- var txtDueBal = 0;
- if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt != 0 && txtTDSAmt != 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt != 0 && txtTDSAmt == 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt != 0 && txtTDSAmt != 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt == 0 && txtTDSAmt != 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt == 0 && txtTDSAmt == 0 && hf_DiscountAmount != 0) {
- txtDueBal = OrgdueAmount + hf_DiscountAmount;
- }
- else if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt == 0 && txtTDSAmt != 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt != 0 && txtTDSAmt != 0 && lblDueBalance != 0) {
- txtDueBal = totalAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt != 0 && hf_TDSAmount != 0 && lblDueBalance == 0 && totalAmount != txtCurrentAmt && hf_DiscountAmount == 0) {
- txtDueBal = Number(txtCurrentAmt) - txtDiscountAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt != 0 && hf_TDSAmount != 0 && lblDueBalance == 0 && totalAmount != txtCurrentAmt && hf_DiscountAmount != 0 && txtTDSAmt != 0) {
- txtDueBal = totalAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt != 0 && txtTDSAmt != 0 && lblDueBalance == 0) {
- txtDueBal = OrgdueAmount - txtTDSAmt;
- }
- else if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt == 0 && txtTDSAmt != 0) {
- txtDueBal = OrgdueAmount + hf_DiscountAmount;
- }
- else if ((txtCurrentAmt == 0 || txtCurrentAmt == "") && txtDiscountAmt != 0 && txtTDSAmt == 0 && hf_DiscountAmount != 0) {
- txtDueBal = (OrgdueAmount + hf_TDSAmount + hf_DiscountAmount) - txtDiscountAmt;
- }
- else if ((txtCurrentAmt != 0) && txtDiscountAmt == 0 && txtTDSAmt == 0 && lblDueBalance == 0 && hf_DiscountAmount != 0) {
- txtDueBal = OrgdueAmount + hf_DiscountAmount;
- }
- else if ((txtDiscountAmt == 0 && hf_DiscountAmount != 0) && (txtTDSAmt == 0 && hf_TDSAmount != 0) && txtCurrentAmt == 0) {
- txtDueBal = totalAmount;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt != 0 && txtTDSAmt == 0 && lblDueBalance != 0) {
- txtDueBal = totalAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt == 0 && txtTDSAmt == 0 && lblDueBalance != 0) {
- txtDueBal = totalAmount - txtTDSAmt;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt != 0 && txtTDSAmt == 0 && lblDueBalance == 0 && txtCurrentAmt == totalAmount) {
- txtDueBal = totalAmount - txtDiscountAmt;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt != 0 && txtTDSAmt == 0 && lblDueBalance == 0) {
- txtDueBal = OrgdueAmount + hf_DiscountAmount - txtDiscountAmt;
- }
- else if (txtCurrentAmt == lblDueBalance && txtCurrentAmt != "" && txtCurrentAmt != 0) {
- txtDueBal = OrgdueAmount + hf_DiscountAmount + hf_TDSAmount;
- }
- else if (txtCurrentAmt != 0 && txtDiscountAmt != 0 && txtTDSAmt != 0 && hf_DiscountAmount == 0 && hf_TDSAmount == 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt - txtTDSAmt;
- }
- else if (txtCurrentAmt == 0 && DueAmount != 0 && OrgdueAmount != 0 && hf_DiscountAmount != 0 && hf_TDSAmount != 0 && txtDiscountAmt != 0 && txtTDSAmt != 0) {
- txtDueBal = OrgdueAmount;
- }
- else if (txtCurrentAmt == 0 && txtDiscountAmt != 0 && hf_TDSAmount != 0 && hf_DiscountAmount == 0 && hf_TDSAmount != 0) {
- txtDueBal = OrgdueAmount - txtDiscountAmt;
- }
- else if (totalAmount == txtCurrentAmt) {
- txtDueBal = totalAmount;
- }
- else {
- txtDueBal = OrgdueAmount;
- }
- if (txtDueBal < 0) {
- txtDueBal = 0;
- }
- $(' #lblDueBalance_' + jId + '').val(txtDueBal);
- if (totDue <= crAmt) {
- if (totDue <= totalAmt) {
- if (totDue <= totDueAmt) {
- if (txtCurrentAmt == 0 || txtCurrentAmt == undefined) {
- $(element).find('.txtCurrentAmount').val(0.00);
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(txtDueBal, 2));
- var ttWallet = 0;
- $(elementforPayment).find('.divDue_Item').each(function () {
- var pqr = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(pqr))
- ttWallet += pqr;
- });
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- var currentValue = Number($(element).find('.txtCurrentAmount').val());
- $(element).find('.txtCurrentAmount').data("previousvalue", currentValue);
- return false;
- }
- if (Number(txtCurrentAmt) + txtDiscountAmt + txtTDSAmt > OrgdueAmount) {
- var walletAmount_ = 0;
- if ((hf_DiscountAmount != 0 && txtDiscountAmt == 0)) {
- walletAmount_ = Number(hf_DiscountAmount);
- }
- else if ((hf_TDSAmount != 0 && txtTDSAmt == 0)) {
- walletAmount_ = walletAmount_ + Number(hf_TDSAmount);
- }
- if (txtDiscountAmt == 0) {
- $(element).find('.txtDiscountAmount').val(0.00);
- }
- if (txtTDSAmt == 0) {
- $(element).find('.txtTdsAmount').val(0.00);
- }
- $(element).find('.txtCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(txtDueBal, 2));
- if (txtCurrentAmt == totalAmount) {
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
- }
- else {
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(walletAmount_, 2));
- }
- }
- else {
- var walletAmount = txtDueBal - Number(txtCurrentAmt);
- if (walletAmount < 0) {
- walletAmount = 0;
- }
- if (hf_TDSAmount != 0 && txtTDSAmt == 0 && txtDiscountAmt == 0 && hf_DiscountAmount != 0) {
- walletAmount = hf_DiscountAmount + hf_TDSAmount + walletAmount;
- }
- $(element).find('.txtCurrentAmount').val(txtCurrentAmt);
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(walletAmount, 2));
- }
- var ttWallet = 0;
- $(elementforPayment).find('.divDue_Item').each(function () {
- var pqr = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(pqr))
- ttWallet += pqr;
- });
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
- }
- else {
- $(element).find('.txtCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(OrgdueAmount - txtDiscountAmt - txtTDSAmt, 2));
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
- var ttWallet = 0;
- $(elementforPayment).find('.divDue_List_item').each(function () {
- var pqr = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(pqr))
- ttWallet += pqr;
- });
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
- }
- }
- else {
- MessageHelper.Instance().showError("You cannot adjust without enough credits", 'div_ErrorMessage_' + formId);
- $(element).find('.txtCurrentAmount').val(previousValue);
- }
- }
- else {
- var ttWallet = 0;
- $(elementforPayment).find('.divDue_Item').each(function () {
- var pqr = Number($(this).find('.txtCurrentAmount').val());
- if (!isNaN(pqr))
- ttWallet += pqr;
- });
- var newAmt = Number(crAmt) - (Number(ttWallet) - Number(txtCurrentAmt));
- var OldCurAdjAmt = Number($(element).find('.txtCurrentAmount').val());
- if (newAmt >= 0) {
- if (newAmt >= Number($(element).find('.hfDueAmount').val())) {
- var curAdjAmt = ttWallet - OldCurAdjAmt;
- var newAdjAmt = txtDueBal;
- $(element).find('.txtCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(newAdjAmt, 2));
- $(element).find('.lblDueBalance').val(0.00);
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(curAdjAmt + newAdjAmt, 2));
- }
- else {
- var curAdjAmt = ttWallet - OldCurAdjAmt;
- var newAdjAmt = OrgdueAmount - newAmt;
- $(element).find('.txtCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(newAmt, 2));
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(newAdjAmt, 2));
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(curAdjAmt + newAdjAmt, 2));
- }
- }
- else {
- $(element).find('.txtCurrentAmount').val(0);
- $(element).find('.lblDueBalance').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(Number($(element).find('.hfWalletAmount').val()), 2));
- $(elementforPayment).find('.txtTotalDueAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
- }
- }
- Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
- var currentValue = Number($(element).find('.txtCurrentAmount').val());
- $(element).find('.txtCurrentAmount').data("previousvalue", currentValue);
- }
- isDecimalplusNoLongPress(evt, id) {
- let value = $('#' + id).val();
- var charCode = (evt.which) ? evt.which : evt.keyCode;
- if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode == 46) {
- return false;
- }
- if (value) {
- if (value.split('.').length >= 2) {
- if (value.split('.')[1]) {
- if (value.split('.')[1].length >= 2) {
- let valNew = parseFloat(`${value}`).toFixed(2);
- $('#' + id).val(valNew);
- }
- }
- }
- }
- return true;
- }
- isSignDecimalplusNoLongPress(evt, id) {
- var instance = this;
- instance.flag++;
- var charCode = (evt.which) ? evt.which : evt.keyCode;
- if (instance.flag <= 4) {
- if (charCode == 46) {
- var val = document.getElementById(id);
- var txt = val.value;
- if (!(txt.indexOf(".") > -1)) {
- return true;
- }
- }
- if (charCode == 45) {
- return true;
- }
- if (charCode > 31 && (charCode < 48 || charCode > 57))
- return false;
- }
- else {
- return false;
- }
- return true;
- }
- initFlag() {
- var instance = this;
- instance.flag = 0;
- }
- loadControlSettings(controlsettingjson, formpropertyid) {
- return ``;
- }
- loadPropertySettings(propertysettings, formpropertyid) {
- if (propertysettings != null) {
- for (var i = 0; i < propertysettings.length; i++) {
- var data = propertysettings[i];
- if (data.ControlPropertyName == "ControlType" && data.ControlPropertyValue != "") {
- $("#hdn_" + formpropertyid).attr("ControlType", data.ControlPropertyValue);
- $("#hdn_" + formpropertyid).val(data.ControlPropertyValue);
- }
- }
- }
- }
- bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
- return ``;
- }
- dueControlObj(trnId) {
- var walletamount = Number($('.txtTotalWalletAdjusted').val());
- var dueamount = Number($('.txtTotalDueAdjusted ').val());
- if (walletamount > 0 && dueamount == 0) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Error! Wallet amount is not adjusted against Dues. Remove the excess amount from wallets & save!");
- return false;
- }
- var instance = this;
- var element = $('.transactonList_item_' + trnId + '');
- var data = new Array();
- element.find('.divDue_Item').each(function (index) {
- var balanceAmount = Number($(this).find('.lblDueBalance').val());
- var isDueObj = false;
- if ($(this).find('.txtCurrentAmount').val() != 0 && $(this).find('.txtCurrentAmount').val() != '' && $(this).find('.txtCurrentAmount').val() != undefined) {
- isDueObj = true;
- }
- else if (!isNaN(balanceAmount) && balanceAmount == 0) {
- isDueObj = true;
- }
- if (isDueObj) {
- var jAId = Number($(this).find('.hf_JournalAllocId').val());
- var journalTypeId = 2;
- var discountAmount = Number($(this).find('.txtDiscountAmount').val());
- var tdsAmount = Number($(this).find('.txtTdsAmount').val());
- if (instance.journalTypeId == 1) {
- data.push({
- JournalAllocId: isNaN(jAId) ? 0 : jAId,
- Credit: Number($(this).find('.txtCurrentAmount').val()),
- RefAllocId: Number($(this).find('.hf_RefAllocId').val()),
- AllocType: 2,
- AllocTypeId: 2,
- Discount: discountAmount,
- TDSAmount: tdsAmount,
- });
- }
- else if (journalTypeId == 2) {
- data.push({
- JournalAllocId: isNaN(jAId) ? 0 : jAId,
- Debit: Number($(this).find('.txtCurrentAmount').val()),
- RefAllocId: Number($(this).find('.hf_RefAllocId').val()),
- AllocType: 2,
- AllocTypeId: 2,
- Discount: discountAmount,
- TDSAmount: tdsAmount,
- });
- }
- }
- });
- return data;
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new Dues();
- }
- return this.instance;
- }
- }
- Controls.Dues = Dues;
- })(Controls = Transact.Controls || (Transact.Controls = {}));
- })(Transact = Apps.Transact || (Apps.Transact = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|