var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let Transact;
(function (Transact) {
let Controls;
(function (Controls) {
class ConfirmPayment extends Unibase.Platform.Core.BaseComponent {
init(formpropertyid, prop, callback) {
var jsfiles = ['apps/transact/managers/payments/paymentmanager.js', 'platform/core/helpers/numberhelper/numberhelper.js',];
this.fileCacheHelper.loadJsFiles(jsfiles, function () {
});
}
loadControl(containerid, prop) {
var instance = this;
var jsfiles = ['apps/transact/managers/payments/paymentmanager.js', 'platform/core/helpers/numberhelper/numberhelper.js',];
instance.fileCacheHelper.loadJsFiles(jsfiles, function () {
var html = `
`;
$("#" + containerid).html(html);
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
var PaymentModeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentmodeid").Value);
var paymentid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentid").Value);
$(".divCustomProperties_paymentaccountid").addClass("hidden");
$(".txtAutoComplete_paymentaccountid").removeClass("required");
var html = '';
Bizgaze.Apps.Transact.Managers.PaymentManager.Instance().getpayment(paymentid).then(function (response) {
debugger;
var paymentModes = [];
var PaymentModeNames = [];
for (var j = 0; j < response.result.Payments.length; j++) {
debugger;
var data = response.result.Payments[j];
var refno = 'NA';
if (data.EntryRefNo != null && data.EntryRefNo != '' && data.EntryRefNo != undefined) {
refno = data.EntryRefNo;
}
if (data.PaymentModeId != 0) {
var html = `
` +
'
' +
'
' + data.PaymentModeName + '
' +
'
Ref No.
' +
'
Ref Date
' +
'
Account *
' +
'
' +
'
';
$('#confirmPaymentDiv').find(".confirmPaymentList:last").after(html);
var selectedAccount = new Option(data.LedgerName, data.LedgerId.toString(), true);
$('#accountSetting_' + data.JournalEntryId).append(selectedAccount);
Bizgaze.Apps.Transact.Controls.ConfirmPayment.Instance().ledgerAutoComplete(data.JournalEntryId);
}
}
$(".refDateInput").daterangepicker({
locale: {
format: 'DD/MM/YYYY',
},
singleDatePicker: true,
showDropdowns: true,
minYear: 0,
});
$(".refDateInput").parents(".floating-label-form-group").addClass("floating-label-form-group-with-value");
$('#confirmPaymentDiv .account-setting-select').change(function () {
const journalEntryId = +$(this).attr('data-journalentryid');
if (+$(this).val() !== -1) {
$(`#hf_AccountId_${journalEntryId}`).val($(this).val());
}
Bizgaze.Apps.Transact.Controls.ConfirmPayment.Instance().loadform(journalEntryId);
});
});
});
}
loadform(JournalEntryId) {
var instance = this;
var accountName = "";
const selectEl = $(`#accountSetting_${JournalEntryId}`);
var hiddenFieldControlId = '#hf_accountId_' + JournalEntryId;
var controlId = 'hf_accountId_' + JournalEntryId;
var oldValue = +$(`#hf_AccountId_${JournalEntryId}`).val();
var accountId = +selectEl.val();
if (accountId == 0)
accountName = "Select Account";
if (accountId == -1) {
selectEl.val(null).trigger("change");
var FormUniqueId = "Bizgaze_Extension_Transact_Ledgers_App_Ledgers_CreateForm";
var AppConfigurationUnique = "Bizgaze_Extension_Transact_Ledgers_AppConfiguration_CreateLedgers";
Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(FormUniqueId).then(function (response) {
var obj = {
JournalEntryId: JournalEntryId,
controlid: controlId,
hiddenid: hiddenFieldControlId
};
var successobj = {
CallBack: function (id, obj) {
Bizgaze.Apps.Transact.Managers.LedgerManager.Instance().getLedgerById(id).then(function (response) {
var createdLedger = new Option(response.result.LedgerName, response.result.LedgerId, true);
selectEl.append(createdLedger).val(response.result.LedgerId).trigger('change');
$(`#hf_AccountId_${JournalEntryId}`).val(response.result.LedgerId);
});
},
Parameters: obj,
};
const onCloseCallBack = {
CallBack: function (id, obj) {
selectEl.val(oldValue).trigger('change');
},
Parameters: obj,
};
var formviewerObj = {
FormId: response.result.FormId,
AppConfigurationId: 0,
Pk_Value: 0,
PortletWidgetId: 0,
OnSuccess: successobj,
OnFail: null,
OnLoad: null,
OnClose: onCloseCallBack
};
instance.fileCacheHelper.loadJsFile("apps/transact/managers/ledgers/ledgermanager.js", function () {
Unibase.Platform.Forms.Components.FormViewer.instance.init(formviewerObj);
});
});
}
}
loadControlSettings(controlsettingjson, formpropertyid) {
throw new Error("Method not implemented.");
}
loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
throw new Error("Method not implemented.");
}
bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
var instance = this;
}
HideReceiptEditButton() {
let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
var stage = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith('_stageshortcode')).Value;
if (stage == "VD") {
$(detailContainer).find('#btn_EditReceipt').addClass('hidden');
$(detailContainer).find('#btn_EditReceipt').removeClass('d-flex');
}
else {
$(detailContainer).find('#btn_EditReceipt').removeClass('hidden');
$(detailContainer).find('#btn_EditReceipt').addClass('d-flex');
}
}
HidePaymentEditButton() {
let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
var stage = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith('_stageshortcode')).Value;
if (stage == "VD") {
$(detailContainer).find('#btn_EditPayments').addClass('hidden');
$(detailContainer).find('#btn_EditPayments').removeClass('d-flex');
}
else {
$(detailContainer).find('#btn_EditPayments').removeClass('hidden');
$(detailContainer).find('#btn_EditPayments').addClass('d-flex');
}
}
ConfirmPayment() {
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
var stage = String(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_stageshortcode").Value);
if (stage == "CNF") {
$(detailContainer).find('.DetailSetting_' + '' + InstalledAppId + '' + '_Confirm').parent('li').addClass('hidden');
}
else if (stage == "RJT") {
$(detailContainer).find('.DetailSetting_' + '' + InstalledAppId + '' + '_Reject').parent('li').addClass('hidden');
$(detailContainer).find('.DetailSetting_' + '' + InstalledAppId + '' + '_Confirm').parent('li').addClass('hidden');
}
}
ledgerAutoComplete(JournalEntryId) {
var url = _appsettings.server_url() + '/apis/v4/bizgaze/transact/ledgers/accounttypeledgersautocompleteasync';
AutoCompleteHelper.getHelper().Create("#accountSetting_" + JournalEntryId + "", "#hf_accountId_" + JournalEntryId + "", url, function (response) {
var data = response;
});
}
getobj() {
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
var PaymentModeId = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentmodeid").Value;
var RefNo = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refno").Value;
var paymenttypeid = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymenttypeid").Value;
var paymentid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentid").Value);
var fromDate = $(".date_decideddate").val();
var refNo = $(".txt_refno").val();
var refDate = $(".txt_refdate").val();
var paymentmodedata = {
PaymentId: paymentid,
PaymentStatusId: 4,
DecidedDate: moment(fromDate, "DD/MM/YYYY").format("YYYY-MM-DD"),
PaymentModeId: PaymentModeId,
PaymentTypeId: paymenttypeid,
RefNo: refNo,
Payments: Bizgaze.Apps.Transact.Controls.ConfirmPayment.Instance().getMultiAccounts(),
PaymentAccountId: Number(Bizgaze.Apps.Transact.Controls.ConfirmPayment.Instance().getMultiAccounts()[0].LedgerId),
RefDate: moment(refDate, "DD/MM/YYYY").format("YYYY-MM-DD"),
};
var detailobj = Unibase.Themes.Compact.Components.Details.Instance();
var detail_instance = Unibase.Themes.Compact.Components.Details.Instance();
var containerid = detail_instance._containerId;
var portletid = detail_instance.unibase_core_activeportletid;
detail_instance.loadWidgets(detailobj._installedAppId, portletid, "#" + containerid + "");
return paymentmodedata;
}
getMultiAccounts() {
var payments = [];
$(".multiAccounts").each(function () {
var journalEntryId = Number($(this).find("#hf_JournalEntryId").val());
var account = Number($(this).find(".hfaccountid").val());
var rDate = $(this).find(".txt_refdate").val();
var refDate = moment(rDate, "DD/MM/YYYY").format("YYYY-MM-DD");
var refNo = $(this).find(".txt_refno").val();
payments.push({ LedgerId: account, JournalEntryId: journalEntryId, RefDate: refDate, RefNo: refNo });
});
return payments;
}
reconcileEntry() {
var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
var paymentId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_paymentid").Value);
Bizgaze.Apps.Transact.Managers.PaymentManager.Instance().reconcileEntry(paymentId).then(function (response) {
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new ConfirmPayment();
return this._instance;
}
}
Controls.ConfirmPayment = ConfirmPayment;
})(Controls = Transact.Controls || (Transact.Controls = {}));
})(Transact = Apps.Transact || (Apps.Transact = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));