Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

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 = {}));