Built files from Bizgaze WebServer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

wallet.component.js 33KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Apps;
  4. (function (Apps) {
  5. let Transact;
  6. (function (Transact) {
  7. let Controls;
  8. (function (Controls) {
  9. class Wallet extends Unibase.Platform.Core.BaseComponent {
  10. init(formpropertyid, prop, callback) {
  11. var instance = this;
  12. instance.flag = 0;
  13. instance.isWalletLoading = false;
  14. var jsfiles = ['apps/transact/managers/payments/paymentmanager.js', 'platform/core/helpers/numberhelper/numberhelper.js', 'apps/transact/controls/payments/paymentsummary.components.js'];
  15. instance.fileCacheHelper.loadJsFiles(jsfiles, function () {
  16. });
  17. }
  18. loadControl(containerid, prop) {
  19. var instance = this;
  20. instance.transactionId = prop.FormPropertyId;
  21. var html = '<div class="col-sm-12 transactonList_div transactonList_div_TRN' + prop.FormPropertyId + ' p-0"><div class="transactonList_item transactonList_item_TRN' + prop.FormPropertyId + '" name="' + prop.FormPropertyId + '"><div id="walletControl_transactonListDiv" class="col-sm-12 transactonList_div transactonList_div_TRN2 p-0"><div class="row rowWallets" id="walletControlList"><div class="col-sm-3 mt-20 text-ul"><u><a href="javascript:;" class="h6" onclick="Bizgaze.Apps.Transact.Controls.Wallet.Instance().toggleWallets(\'TRN' + prop.FormPropertyId + '\');" >Wallet : <span class="txtWalletsTotalAmt">0.00</span></a></u></div>' +
  22. '<div class="col-sm-3"></div><div class="d-none d-sm-block col-sm-2 text-right m-r-n"><div class="mt-30"><label class="h6">Adjusted : </label></div></div><div class="block d-sm-none col-sm-2 m-r-n"><div class="mt-30"><label class="h6">Adjusted : </label></div></div><div class="col-sm-4"><div class="floating-label-form-group mt-15"><input data-trnid="TRN' + prop.FormPropertyId + '" id="txtIdTotalWalletAdjusted_TRN' + prop.FormPropertyId + '" class="form-control txtTotalWalletAdjusted txtTotalWalletAdjusted_TRN' + prop.FormPropertyId + ' floating-label-control m-b-n" type="text" onkeypress="return Bizgaze.Apps.Transact.Controls.Wallet.Instance().isDecimalplusNoLongPress(event,this.id);" onkeyup="Bizgaze.Apps.Transact.Controls.Wallet.Instance().totalWalletAdjustment(event,this);"/></div></div></div>' +
  23. '<input type="hidden" id="hdn_walletcontrol" class="value-control" value="Bizgaze.Apps.Transact.Controls.Wallet.Instance().walletControlObj(\'TRN' + prop.FormPropertyId + '\');"/>' +
  24. '<section class="mt-5 secWallets secWallets_TRN' + prop.FormPropertyId + ' hidden"><div class="list-group divWallet_List"></div></section></div><input type="hidden" class="hf_AdvanceJournalAllocId" id="hf_AdvanceJournalAllocId_TRN' + instance.transactionId + '" value="">';
  25. $("#" + containerid).html(html);
  26. if (prop.PropertySettings != null) {
  27. for (var i = 0; i < prop.PropertySettings.length; i++) {
  28. var data = prop.PropertySettings[i];
  29. if (data.ControlPropertyName == "ControlType" && data.ControlPropertyValue != "") {
  30. this.controlType = data.ControlPropertyValue;
  31. }
  32. }
  33. }
  34. if (this.controlType == "1") {
  35. instance.journalTypeId = 2;
  36. }
  37. else if (this.controlType == "2") {
  38. instance.journalTypeId = 1;
  39. }
  40. else if (this.controlType == "3") {
  41. instance.journalTypeId = 3;
  42. }
  43. }
  44. loadInvoiceWallets(response) {
  45. var instance = this;
  46. var trnId = instance.transactionId;
  47. var result = response;
  48. var element = $('.transactonList_item_TRN' + trnId + '');
  49. var divWallets = element.find('.divWallet_List');
  50. $(divWallets).empty();
  51. $(divWallets).html('<div class="list-group-item m-b-n divWallet_List_item hidden"></div>');
  52. var walletsTotalBal = 0;
  53. var adjustdTotalAmount = 0;
  54. if (result.length != 0) {
  55. for (var i = 0; i < result.length; i++) {
  56. var item = result[i];
  57. walletsTotalBal += Number(item.TotalAmount - item.CurrentAmount);
  58. adjustdTotalAmount += Number(item.CurrentAmount);
  59. function datediff(date2, today) {
  60. today = new Date(today.split('/')[2], today.split('/')[1] - 1, today.split('/')[0]);
  61. date2 = new Date(date2.split('/')[2], date2.split('/')[1] - 1, date2.split('/')[0]);
  62. var timeDiff = Math.abs(today.getTime() - date2.getTime());
  63. var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
  64. return diffDays;
  65. }
  66. var today = new Date();
  67. var dd = today.getDate();
  68. var mm = today.getMonth() + 1;
  69. var yyyy = today.getFullYear();
  70. if (dd < 10) {
  71. dd = '0' + dd;
  72. }
  73. if (mm < 10) {
  74. mm = '0' + mm;
  75. }
  76. today = dd + '/' + mm + '/' + yyyy;
  77. var wBalance = Number(item.TotalAmount);
  78. var NumOfDays = datediff(Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(item.JournalDate, null), today);
  79. instance.bindWalletsHtml(item, wBalance, NumOfDays, item.CurrentAmount, trnId);
  80. }
  81. }
  82. if (walletsTotalBal > 0)
  83. element.find('.txtWalletsTotalAmt').text(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(walletsTotalBal, 2));
  84. else
  85. element.find('.txtWalletsTotalAmt').text("0.00");
  86. if (adjustdTotalAmount > 0)
  87. element.find('.txtTotalWalletAdjusted').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(adjustdTotalAmount, 2));
  88. else
  89. element.find('.txtTotalWalletAdjusted').val("0.00");
  90. }
  91. loadPaymentWallets(contactId) {
  92. var instance = this;
  93. if (contactId != null && contactId != 0 && contactId != undefined) {
  94. var instance = this;
  95. var trnId = instance.transactionId;
  96. var paymentid = 0;
  97. if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) {
  98. var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  99. var hiddenFieldPaymentId = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_paymentid");
  100. if (hiddenFieldPaymentId != null || hiddenFieldPaymentId != undefined) {
  101. paymentid = Number(hiddenFieldPaymentId.Value);
  102. }
  103. }
  104. var lobid = Number($(".txtAutoComplete_lobid").val());
  105. if (isNaN(lobid)) {
  106. lobid = 0;
  107. }
  108. var date = "";
  109. var userDate = $(".date_journaldate").val();
  110. if (userDate != undefined && userDate != null && userDate != "") {
  111. var formattedUserDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDate(userDate);
  112. date = moment(formattedUserDate).format("YYYY-MM-DD");
  113. }
  114. else {
  115. var curDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate();
  116. date = moment(curDate).format("YYYY-MM-DD");
  117. }
  118. var adjustedTotal = 0;
  119. instance.isWalletLoading = true;
  120. instance.navigationHelper.showLoading();
  121. var element = $('.transactonList_item_TRN' + trnId + '');
  122. Bizgaze.Apps.Transact.Managers.PaymentManager.Instance().getPendings(Number(contactId), paymentid, null, instance.journalTypeId, lobid, date, "Wallets").then(function (response) {
  123. var result = response.result;
  124. var divWallets = element.find('.divWallet_List');
  125. $(divWallets).empty();
  126. $(divWallets).html('<div class="list-group-item m-b-n divWallet_List_item hidden"></div>');
  127. var walletsTotalBal = 0;
  128. if (result.length != 0) {
  129. for (var i = 0; i < result.length; i++) {
  130. var item = result[i];
  131. adjustedTotal += item.Amount;
  132. walletsTotalBal += Number(item.JournalAlloc.TotalAmount - item.JournalAlloc.AdjustedAmount);
  133. function datediff(date2, today) {
  134. today = new Date(today.split('/')[2], today.split('/')[1] - 1, today.split('/')[0]);
  135. date2 = new Date(date2.split('/')[2], date2.split('/')[1] - 1, date2.split('/')[0]);
  136. var timeDiff = Math.abs(today.getTime() - date2.getTime());
  137. var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
  138. return diffDays;
  139. }
  140. var today = new Date();
  141. var dd = today.getDate();
  142. var mm = today.getMonth() + 1;
  143. var yyyy = today.getFullYear();
  144. if (dd < 10) {
  145. dd = '0' + dd;
  146. }
  147. if (mm < 10) {
  148. mm = '0' + mm;
  149. }
  150. today = dd + '/' + mm + '/' + yyyy;
  151. var wBalance = Number(item.JournalAlloc.TotalAmount - item.JournalAlloc.AdjustedAmount);
  152. var NumOfDays = datediff(Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(item.JournalAlloc.JournalDate, null), today);
  153. instance.bindWalletsHtml(item.JournalAlloc, wBalance, NumOfDays, item.Amount, trnId);
  154. }
  155. }
  156. if (walletsTotalBal > 0)
  157. element.find('.txtWalletsTotalAmt').text(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(walletsTotalBal, 2));
  158. else
  159. element.find('.txtWalletsTotalAmt').text("0.00");
  160. }).then(function () {
  161. $(".txtTotalWalletAdjusted").val(adjustedTotal);
  162. element.find('.secWallets_' + trnId + '').addClass('hidden');
  163. Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
  164. instance.isWalletLoading = false;
  165. var isDueLoading = Bizgaze.Apps.Transact.Controls.Dues.Instance().isDueLoading;
  166. if (instance.isWalletLoading == false && isDueLoading == false) {
  167. instance.navigationHelper.hideLoading();
  168. }
  169. });
  170. }
  171. }
  172. toggleWallets(trnId) {
  173. var instance = this;
  174. var element = $('.transactonList_item_' + trnId + '');
  175. element.find('.secWallets_' + trnId + '').toggleClass('hidden');
  176. }
  177. isDecimal(evt, id) {
  178. var charCode = (evt.which) ? evt.which : evt.keyCode;
  179. if (charCode == 46) {
  180. var val = document.getElementById(id);
  181. var txt = val.value;
  182. if (!(txt.indexOf(".") > -1)) {
  183. return true;
  184. }
  185. }
  186. if (charCode > 31 && (charCode < 48 || charCode > 57))
  187. return false;
  188. return true;
  189. }
  190. isDecimalplusNoLongPress(evt, id) {
  191. var charCode = (evt.which) ? evt.which : evt.keyCode;
  192. if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46)
  193. return false;
  194. else {
  195. var val = document.getElementById(id);
  196. var len = val.value.length;
  197. var index = val.value.indexOf('.');
  198. if (index > 0 && charCode == 46) {
  199. return false;
  200. }
  201. if (index > 0) {
  202. var CharAfterdot = (len + 1) - index;
  203. if (CharAfterdot > 3) {
  204. return false;
  205. }
  206. }
  207. }
  208. return true;
  209. }
  210. initFlag() {
  211. var instance = this;
  212. instance.flag = 0;
  213. }
  214. bindWalletsHtml(journalAlloc, wBalance, NumOfDays, Amount, formPropId) {
  215. var instance = this;
  216. var html = '<div class="list-group-item divWallet_Item" id="divWallet_List_item_' + journalAlloc.JournalId + '"><div class="row">' +
  217. '<input type="hidden" class="hf_JournalAllocId" value="' + journalAlloc.JournalAllocId + '" />' +
  218. '<input type="hidden" class="hf_RefAllocId" value="' + journalAlloc.RefAllocId + '" />' +
  219. '<input type="hidden" class="hf_JournalId" value="' + journalAlloc.JournalId + '" />' +
  220. '<input type="hidden" class="hf_AdjustedAmount" value="' + journalAlloc.AdjustedAmount + '" />' +
  221. '<div class="col-sm-4"><div class="floating-label-form-group m-b floating-label-form-group-with-value py-1 m-0 p-0 border-0 shadow-none" style="border:0px"><div class="h6 h-100 card-header align-items-center d-flex p-0 border-0">' + journalAlloc.JournalNo + ' (' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(wBalance, 2) + ')</div><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>' +
  222. '<div class="col-sm-4"><div class="floating-label-form-group m-b floating-label-form-group-with-value py-1 m-0 p-0 border-0 shadow-none" style="border:0px"><div class="h6 h-100 card-header align-items-center d-flex p-0 border-0">Remaining Amt</div><input class="hfWalletAmount" type="hidden" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(wBalance, 2) + '" /><input id="lblWalletRemaing_' + journalAlloc.JournalId + '" class="form-control value-control lblWalletRemaing text-dark" disabled type="text" value="' + Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(wBalance - Amount, 2) + '"></div></div>' +
  223. '<div class="col-sm-4"><div class="floating-label-form-group m-b py-1 m-0 p-0 border-0 shadow-none"><div class="h6 card-header align-items-center d-flex p-0 h-100 border-0">Adjusted Amt</div><input id="txtWalletCurrentAmount_' + journalAlloc.JournalId + '" type="text" value="' + Amount + '" class="form-control txtWalletCurrentAmount floating-label-control value-control" placeholder="Amount" data-label="Amount" onkeypress="return Bizgaze.Apps.Transact.Controls.Wallet.Instance().isDecimalplusNoLongPress(event,this.id)" onkeyup="Bizgaze.Apps.Transact.Controls.Wallet.Instance().AdjustWalletAmount(\'' + journalAlloc.JournalId + '\',\'' + "TRN" + formPropId + '\',event);" /></div></div>' +
  224. '</div></div>';
  225. var element = $('.transactonList_item_TRN' + formPropId + '');
  226. element.find('.divWallet_List_item').before(html);
  227. }
  228. bindWalletEvents() {
  229. }
  230. totalWalletAdjustment(evt, curElement) {
  231. var instance = this;
  232. var charCode = (evt.which) ? evt.which : evt.keyCode;
  233. if (charCode == 190 || charCode == 110 || charCode == 46) {
  234. return true;
  235. }
  236. var errormsg = $(".bizgaze_FormErrorMessages:visible").attr("id");
  237. instance.initFlag();
  238. if (instance.controlType != "3") {
  239. Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().loadPaymentSummary();
  240. }
  241. var trnId = curElement.dataset.trnid;
  242. var element = $('.transactonList_item_' + trnId + '');
  243. var curAdjAmt = Number(element.find('.txtTotalWalletAdjusted').val());
  244. var totWalletAmt = Number(element.find('.txtWalletsTotalAmt').text());
  245. if (curAdjAmt > totWalletAmt) {
  246. var totWalletAmt = Number(element.find('.txtWalletsTotalAmt').text());
  247. element.find('.txtTotalWalletAdjusted_' + trnId).val(totWalletAmt);
  248. MessageHelper.Instance().showError("Cannot adjust more than your wallets", errormsg);
  249. }
  250. instance.updatePayment(trnId);
  251. }
  252. walletsTotal(trnId) {
  253. var instance = this;
  254. var element = $('.transactonList_item_' + trnId + '');
  255. var amount = 0;
  256. var wTotals = element.find('.txtTotalWalletAdjusted').val();
  257. wTotals = Number(wTotals);
  258. if (wTotals > 0)
  259. amount += wTotals;
  260. return amount;
  261. }
  262. updatePayment(trnId) {
  263. var instance = this;
  264. var element = $('.transactonList_item_' + trnId + '');
  265. var walletsTotal = instance.walletsTotal(trnId);
  266. if (Number(walletsTotal) != 0) {
  267. element.find('.txtTotalWalletAdjusted').val(walletsTotal);
  268. $(element).find('.divWallet_Item').each(function (index) {
  269. var wAmount = Number($(this).find('.hfWalletAmount').val());
  270. var wCurrentAmt = 0;
  271. if (walletsTotal >= wAmount) {
  272. if (wAmount != 0) {
  273. walletsTotal -= wAmount;
  274. wCurrentAmt = wAmount;
  275. wAmount = 0;
  276. }
  277. }
  278. else {
  279. wAmount -= walletsTotal;
  280. wCurrentAmt = walletsTotal;
  281. walletsTotal = 0;
  282. }
  283. $(this).find('.txtWalletCurrentAmount').val(wCurrentAmt);
  284. $(this).find('.lblWalletRemaing').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(wAmount, 2));
  285. });
  286. }
  287. else if (Number(walletsTotal) == 0) {
  288. element.find('.txtTotalWalletAdjusted').val(walletsTotal);
  289. element.find('.txtWalletCurrentAmount').val(walletsTotal);
  290. $('.divWallet_Item').each(function () {
  291. $(this).find(".lblWalletRemaing").val($(this).find(".hfWalletAmount").val());
  292. });
  293. }
  294. }
  295. AdjustWalletAmount(jId, trnId, evt) {
  296. var charCode = (evt.which) ? evt.which : evt.keyCode;
  297. if (charCode == 190 || charCode == 110 || charCode == 46) {
  298. return true;
  299. }
  300. var instance = this;
  301. instance.flag = 0;
  302. var formId = $(".transactonList_div_" + trnId).parents("form").attr("id").split('_')[1];
  303. var x = document.getElementById("divWallet_List_item_" + jId).parentElement.parentElement.getAttribute("class");
  304. var elementforPayment = $('.transactonList_item_' + trnId + '');
  305. var totAdjustment = $(elementforPayment).find('.txtTotalWalletAdjusted_' + trnId + '').val();
  306. var totWallet = 0;
  307. var totWalletAmt = Number(elementforPayment.find('.txtWalletsTotalAmt').text());
  308. $(elementforPayment).find('.divWallet_Item').each(function () {
  309. var xyz = Number($(this).find('.txtWalletCurrentAmount').val());
  310. if (!isNaN(xyz))
  311. totWallet += xyz;
  312. });
  313. var element = elementforPayment.find('#divWallet_List_item_' + jId + '');
  314. var Amt = $("#hf_TotalCreditAmount").val();
  315. if (instance.controlType == "3")
  316. Amt = totWallet;
  317. if (totWallet <= totWalletAmt) {
  318. var OrgwalletAmount = Number($(element).find('.hfWalletAmount').val());
  319. var txtWalletCurrentAmount = 0;
  320. txtWalletCurrentAmount = Number($(element).find('.txtWalletCurrentAmount').val());
  321. if (txtWalletCurrentAmount == 0 || txtWalletCurrentAmount == undefined) {
  322. $(element).find('.txtWalletCurrentAmount').val(0.00);
  323. $(element).find('.lblWalletRemaing').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(OrgwalletAmount, 2));
  324. var ttWallet = 0;
  325. $(elementforPayment).find('.divWallet_Item').each(function () {
  326. var pqr = Number($(this).find('.txtWalletCurrentAmount').val());
  327. if (!isNaN(pqr))
  328. ttWallet += pqr;
  329. });
  330. $(elementforPayment).find('.txtTotalWalletAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
  331. return false;
  332. }
  333. if (txtWalletCurrentAmount > OrgwalletAmount) {
  334. $(element).find('.txtWalletCurrentAmount').val(OrgwalletAmount);
  335. $(element).find('.lblWalletRemaing').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
  336. }
  337. else {
  338. var walletAmount = OrgwalletAmount - txtWalletCurrentAmount;
  339. $(element).find('.txtWalletCurrentAmount').val(txtWalletCurrentAmount);
  340. $(element).find('.lblWalletRemaing').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(walletAmount, 2));
  341. }
  342. var ttWallet = 0;
  343. $(elementforPayment).find('.divWallet_Item').each(function () {
  344. var pqr = Number($(this).find('.txtWalletCurrentAmount').val());
  345. if (!isNaN(pqr))
  346. ttWallet += pqr;
  347. });
  348. $(elementforPayment).find('.txtTotalWalletAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
  349. }
  350. else {
  351. MessageHelper.Instance().showError("You don't have enough amount in that wallets", 'div_ErrorMessage_' + formId);
  352. $(element).find('.txtWalletCurrentAmount').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(Number($(element).find('.hfWalletAmount').val()), 2));
  353. $(element).find('.lblWalletRemaing').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(0, 2));
  354. var ttWallet = 0;
  355. $(elementforPayment).find('.divWallet_Item').each(function () {
  356. var pqr = Number($(this).find('.txtWalletCurrentAmount').val());
  357. if (!isNaN(pqr))
  358. ttWallet += pqr;
  359. });
  360. $(elementforPayment).find('.txtTotalWalletAdjusted_' + trnId + '').val(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(ttWallet, 2));
  361. }
  362. if (instance.controlType != "3") {
  363. Bizgaze.Apps.Transact.Controls.PaymentSummary.Instance().updatePaymentSummaryTotal();
  364. Bizgaze.Apps.Transact.Controls.Dues.Instance().clearDues();
  365. }
  366. }
  367. walletControlObj(trnId) {
  368. var instance = this;
  369. var element = $('.transactonList_item_' + trnId + '');
  370. var data = new Array();
  371. element.find('.divWallet_Item').each(function (index) {
  372. if ($(this).find('.txtWalletCurrentAmount').val() != 0 && $(this).find('.txtWalletCurrentAmount').val() != '' && $(this).find('.txtWalletCurrentAmount').val() != undefined) {
  373. var jAId = Number($(this).find('.hf_JournalAllocId').val());
  374. if (instance.journalTypeId == 1) {
  375. data.push({
  376. JournalAllocId: isNaN(jAId) ? 0 : jAId,
  377. Debit: Number($(this).find('.txtWalletCurrentAmount').val()),
  378. RefAllocId: Number($(this).find('.hf_RefAllocId').val()),
  379. AllocType: 2,
  380. AllocTypeId: 2
  381. });
  382. }
  383. else if (instance.journalTypeId == 2) {
  384. data.push({
  385. JournalAllocId: isNaN(jAId) ? 0 : jAId,
  386. Credit: Number($(this).find('.txtWalletCurrentAmount').val()),
  387. RefAllocId: Number($(this).find('.hf_RefAllocId').val()),
  388. AllocType: 2,
  389. AllocTypeId: 2
  390. });
  391. }
  392. else if (instance.controlType == "3") {
  393. let Notes = "";
  394. let Debit = 0;
  395. let Credit = 0;
  396. if ($(".hdn_invoicetypeid").val() == "1") {
  397. Notes = "Adjustment SalesReturn against " + $(".hdn_tempjournalno").val();
  398. Debit = Number($(this).find('.txtWalletCurrentAmount').val());
  399. }
  400. else {
  401. Notes = " Adjustment PurchaseReturn against " + $(".hdn_tempjournalno").val();
  402. Credit = Number($(this).find('.txtWalletCurrentAmount').val());
  403. }
  404. data.push({
  405. JournalAllocId: isNaN(jAId) ? 0 : jAId,
  406. RefAllocId: Number($(this).find('.hf_RefAllocId').val()),
  407. JournalId: Number($(this).find(".hf_JournalId").val()),
  408. AdjustedAmount: Number($(this).find('.hf_AdjustedAmount').val()),
  409. TotalAmount: Number($(this).find(".txtWalletsTotalAmt").text()),
  410. IsWallet: true,
  411. CurrentAmount: Number($(this).find('.txtWalletCurrentAmount').val()),
  412. AllocType: 2,
  413. Discount: 0,
  414. RefNo: "",
  415. Credit: Credit,
  416. Debit: Debit
  417. });
  418. }
  419. }
  420. });
  421. if (Number($(".totAdvance").first().text()) > 0) {
  422. var jAId = Number($(this).find('.hf_AdvanceJournalAllocId').val());
  423. if (instance.journalTypeId == 1) {
  424. data.push({
  425. JournalAllocId: isNaN(jAId) ? 0 : jAId,
  426. LedgerId: Number($(".txtAutoComplete_contactid option:selected").val()),
  427. Credit: Number($(".totAdvance").first().text()),
  428. RefAllocId: 0,
  429. AllocType: 3,
  430. AllocTypeId: 3,
  431. });
  432. }
  433. else if (instance.journalTypeId == 2) {
  434. data.push({
  435. JournalAllocId: isNaN(jAId) ? 0 : jAId,
  436. LedgerId: Number($(".txtAutoComplete_contactid option:selected").val()),
  437. Debit: Number($(".totAdvance").first().text()),
  438. RefAllocId: 0,
  439. AllocType: 3,
  440. AllocTypeId: 3,
  441. });
  442. }
  443. }
  444. return data;
  445. }
  446. loadControlSettings(controlsettingjson, formpropertyid) {
  447. return ``;
  448. }
  449. loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
  450. return ``;
  451. }
  452. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  453. return ``;
  454. }
  455. static Instance() {
  456. if (this.instance === undefined) {
  457. this.instance = new Wallet();
  458. }
  459. return this.instance;
  460. }
  461. }
  462. Controls.Wallet = Wallet;
  463. })(Controls = Transact.Controls || (Transact.Controls = {}));
  464. })(Transact = Apps.Transact || (Apps.Transact = {}));
  465. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  466. })(Bizgaze || (Bizgaze = {}));