Built files from Bizgaze WebServer
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

invoiceitemtaxalloc.js 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Apps;
  4. (function (Apps) {
  5. let Transact;
  6. (function (Transact) {
  7. let Components;
  8. (function (Components) {
  9. let Invoices;
  10. (function (Invoices) {
  11. class InvoiceItemTaxAloc extends Unibase.Platform.Core.BaseComponent {
  12. constructor() {
  13. super(...arguments);
  14. this.sampleInvoiceNo = "";
  15. this.assesableAdjust = 0;
  16. this.taxAdjust = 0;
  17. this.index = "#00-";
  18. }
  19. jsFiles() {
  20. return ["platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', 'apps/transact/managers/invoicemanager.js'];
  21. }
  22. cssFiles() {
  23. return [];
  24. }
  25. html() {
  26. let html = '<input type="hidden" id="hfInvItemTaxAllocsinvoiceItemId" value="0"/><input type="hidden" id="hfInvItemTaxAllocsGroupId" value="0"/><input type="hidden" id="hfInvItemTaxAllocsitemId" value="0"/><input type="hidden" id="hfInvItemTaxAllocsorderItemId" value="0"/><form id="frm_Bizgazetransact_createAppGroup" method ="post" data-validate="parsley" class=""><div class="bg-white b-b modal-header pa-10"><strong class="bizgaze_InvoiceItemTaxAllocHeader"> Invoice Item TaxAlloc Details </strong></div><div style="height: 773px; overflow: hidden auto;" class="simple-scroll-bar modal-body bg-cyan-light-5"><div class="card"><div class="card-body"><div class="divTaxAllocEdit"><table class="table table-bordered"><thead class="tbl-header"><tr class="text-info"><th>TaxCode Name</th><th>Assesable Amount</th><th>Tax Amount</th><th>Assesable Adjustment</th><th>Tax Adjustment</th></tr></thead><tbody class="tbl - body"><tr class="invTaxAllocsUpdateList-item"></tr></table></div><div class="divTaxAllocSave hidden"><table class="table table-bordered"><thead class="tbl-header"><tr class="text-info"><th>TaxCode Name</th><th>Assesable Adjustment</th><th>Tax Adjustment</th></tr></thead><tbody class="tbl-body"><tr class="invTaxAllocsSaveList - item bg-light"><td>Total Adjustment</td><td class="tdTotalAssesableAdj">0</td><td class="tdTotalTaxAdj">0</td></tr><tr class="invTaxAllocsSaveList-item"></tr></table></div></div></div></div><div class="b-t bg-white modal-footer pa-10"><a href="javascript:;" id="btn_CloseTaxAllocEdit" class="btn btn-light btn-sm mr-auto">Close</a><a id="btnInvItemTaxAllocUpdate" class="btn btn-primary btn-sm">Update</a><a id="btnInvItemTaxAllocSave" class="btn btn-primary btn-sm hidden">Save</a></div></form>';
  27. return html;
  28. }
  29. load(obj) {
  30. $("#btn_CloseTaxAllocEdit").click(function () {
  31. Bizgaze.Apps.Transact.Components.Invoices.InvoiceItemTaxAloc.Instance().navigationHelper.closePopUp();
  32. });
  33. $("#hfInvItemTaxAllocsinvoiceItemId").val(obj.invoiceItemId);
  34. $("#hfInvItemTaxAllocsGroupId").val(obj.taxGroupId);
  35. $("#hfInvItemTaxAllocsitemId").val(obj.itemId);
  36. $("#hfInvItemTaxAllocsorderItemId").val(obj.orderItemId);
  37. $('#btnInvItemTaxAllocUpdate').click(function () {
  38. var adjustments = InvoiceItemTaxAloc.Instance().updateList();
  39. if (adjustments.length > 0) {
  40. var postData = {
  41. InvItemTaxAllocs: adjustments,
  42. InvoiceId: Number($("#hf_pk_value").val()),
  43. };
  44. Bizgaze.Apps.Transact.Managers.InvoiceManager.Instance().UpdateInvoiceItemTaxAllocs(postData).then(function () {
  45. InvoiceItemTaxAloc.Instance().navigationHelper.closePopUp();
  46. });
  47. }
  48. if ($("#hfInvItemTaxAllocsitemId").val() == undefined) {
  49. $("#hfInvItemTaxAllocsitemId").val(0);
  50. }
  51. if (obj.element.filter('.SplInvoiceItemRow').length > 0) {
  52. obj.element.find('.hf_ItemAssesableAdjustmentVal').val(InvoiceItemTaxAloc.Instance().assesableAdjust);
  53. obj.element.find('.hf_ItemTaxAdjsutmentVal').val(InvoiceItemTaxAloc.Instance().taxAdjust);
  54. }
  55. else {
  56. obj.element.find('.hfItemAssesableAdjustmentVal').val(InvoiceItemTaxAloc.Instance().assesableAdjust);
  57. obj.element.find('.hfItemTaxAdjsutmentVal').val(InvoiceItemTaxAloc.Instance().taxAdjust);
  58. }
  59. Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().RefreshItemRowDetaisl(obj.element);
  60. Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().update_total();
  61. InvoiceItemTaxAloc.Instance().assesableAdjust = 0;
  62. InvoiceItemTaxAloc.Instance().taxAdjust = 0;
  63. });
  64. InvoiceItemTaxAloc.Instance().loadDetails(obj.element);
  65. }
  66. updateList() {
  67. var modifiedInvItemTaxAllocs = [];
  68. $('.invTaxAllocsUpdateList-item').each(function () {
  69. var element = $(this).find('.hfInvItemTaxAlloc');
  70. if ($(element).val() != undefined) {
  71. var itemId = Number($('#hfInvItemTaxAllocsitemId').val());
  72. var invTaxAllocItem = $(element).val();
  73. var obj = invTaxAllocItem.toString().split('-');
  74. var assesableAdjAmount = $(this).find(".hfInvItemAssesableAdjsustedAmt_" + obj[1] + "").text();
  75. var taxAdjAmount = $(this).find(".hfInvItemTaxAllocAdjsustedAmt_" + obj[1] + "").text();
  76. var invoiceItemId = Number($(this).find(".hfInvItemId").val());
  77. var taxCodes = $(this).find(".hfInvItemTaxCodes").val();
  78. var taxCodeId = $(this).find(".hfInvItemTaxCodeId").val();
  79. var ledgerId = Number($(this).find(".hfInvTaxAdjLedgerId").val());
  80. InvoiceItemTaxAloc.Instance().assesableAdjust += Number(assesableAdjAmount);
  81. InvoiceItemTaxAloc.Instance().taxAdjust += Number(taxAdjAmount);
  82. InvoiceItemTaxAloc.Instance().index += 1;
  83. var item = { Index: InvoiceItemTaxAloc.Instance().index, ItemId: itemId, InvoiceTaxAllocId: Number(obj[1]), Adjustment: Number(taxAdjAmount),
  84. TaxAdjustment: Number(taxAdjAmount), AssesableAdjustment: Number(assesableAdjAmount), InvoiceItemId: invoiceItemId, InvoiceId: Number($('.hdn_invoiceid').val()), TaxCodes: taxCodes, TaxCodeId: Number(taxCodeId), LedgerId: ledgerId };
  85. modifiedInvItemTaxAllocs.push(item);
  86. var existingRowIndex = 0;
  87. var elements = $.grep(Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().invItemTaxAdjustmentList, function (e) {
  88. if (e.ItemId == itemId && e.TaxCodeId == taxCodeId) {
  89. existingRowIndex = e.Index;
  90. }
  91. return (e.ItemId == itemId && e.TaxCodeId == taxCodeId);
  92. });
  93. if (elements.length > 0) {
  94. if (existingRowIndex != 0) {
  95. Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().invItemTaxAdjustmentList = $.grep(Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().invItemTaxAdjustmentList, function (e) {
  96. return e.Index != existingRowIndex;
  97. });
  98. Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().invItemTaxAdjustmentList.push(item);
  99. }
  100. }
  101. else {
  102. Bizgaze.Apps.Transact.Controls.InvoiceItem.Instance().invItemTaxAdjustmentList.push(item);
  103. }
  104. }
  105. });
  106. return modifiedInvItemTaxAllocs;
  107. }
  108. loadDetails(element) {
  109. var InvoiceItemId = $("#hfInvItemTaxAllocsinvoiceItemId").val();
  110. var TaxGroupId = $("#hfInvItemTaxAllocsGroupId").val();
  111. if (InvoiceItemId == undefined && TaxGroupId == undefined) {
  112. InvoiceItemId = 0;
  113. TaxGroupId = 0;
  114. }
  115. if (InvoiceItemId != 0) {
  116. Bizgaze.Apps.Transact.Managers.InvoiceManager.Instance().getInvoiceItemDetails(InvoiceItemId, TaxGroupId).then(function (result) {
  117. for (var i = 0; i < result.result.length; i++) {
  118. var data = result.result[i];
  119. var html = ' <tr class="invTaxAllocsUpdateList-item">' +
  120. '<td>' + data.TaxCodeName + '</td>' +
  121. '<td>' + data.AssessableAmt + '</td>' +
  122. '<td>' + data.TaxAmount + '</td>' +
  123. '<td contenteditable="true" class="hfInvItemAssesableAdjsustedAmt_' + data.InvoiceTaxAllocId + '" style="color:#5ba8fb;">' + data.AssesableAdjustment + '</td>' +
  124. '<input type="hidden" class="hfInvItemTaxAlloc" value="invItemTaxAlloc-' + data.InvoiceTaxAllocId + '"/>' +
  125. '<input type="hidden" class="hfInvItemId" value="' + data.InvoiceItemId + '"/>' +
  126. '<input type="hidden" class="hfInvItemTaxCodes" value="' + data.TaxCodes + '"/>' +
  127. '<input type="hidden" class="hfInvItemTaxCodeId" value="' + data.TaxCodeId + '"/>' +
  128. '<input type="hidden" class="hfInvTaxAdjLedgerId" value="' + data.LedgerId + '"/>' +
  129. '<td contenteditable="true" class="hfInvItemTaxAllocAdjsustedAmt_' + data.InvoiceTaxAllocId + '" style="color:#5ba8fb;">' + data.Adjustment + '</td>' +
  130. '</tr>';
  131. $(".invTaxAllocsUpdateList-item:last").after(html);
  132. $(".hfInvItemAssesableAdjsustedAmt_" + data.InvoiceTaxAllocId).keypress(function (event) {
  133. if ((event.which > 47 && event.which < 58) || (event.which == 46 || event.which == 8 || event.which == 45)) {
  134. }
  135. else {
  136. event.preventDefault();
  137. }
  138. }).on('paste', function (event) {
  139. event.preventDefault();
  140. });
  141. $(".hfInvItemTaxAllocAdjsustedAmt_" + data.InvoiceTaxAllocId).keypress(function (event) {
  142. if ((event.which > 47 && event.which < 58) || (event.which == 46 || event.which == 8 || event.which == 45)) {
  143. }
  144. else {
  145. event.preventDefault();
  146. }
  147. }).on('paste', function (event) {
  148. event.preventDefault();
  149. });
  150. }
  151. });
  152. }
  153. else {
  154. $("#hfInvItemTaxAllocsGroupId").val(TaxGroupId);
  155. $('.divTaxAllocEdit').addClass('hidden');
  156. $('#btnInvItemTaxAllocUpdate').addClass('hidden');
  157. $('.divTaxAllocSave').removeClass('hidden');
  158. $('#btnInvItemTaxAllocSave').removeClass('hidden');
  159. if (TaxGroupId != 0) {
  160. }
  161. }
  162. }
  163. static Instance() {
  164. if (this.instance === undefined) {
  165. this.instance = new InvoiceItemTaxAloc();
  166. }
  167. return this.instance;
  168. }
  169. }
  170. Invoices.InvoiceItemTaxAloc = InvoiceItemTaxAloc;
  171. })(Invoices = Components.Invoices || (Components.Invoices = {}));
  172. })(Components = Transact.Components || (Transact.Components = {}));
  173. })(Transact = Apps.Transact || (Apps.Transact = {}));
  174. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  175. })(Bizgaze || (Bizgaze = {}));