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.

planincentives.component.js 7.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Forms;
  4. (function (Forms) {
  5. let Controls;
  6. (function (Controls) {
  7. class PlanIncentives extends Unibase.Platform.Core.BaseComponent {
  8. loadControl(containerid, prop) {
  9. var html = '<ul>' +
  10. '<li class="list-group-item bg-cyan-light-4" id="li_PlanIncentive_Details">' +
  11. '<h6>' +
  12. '<div class="row">' +
  13. '<div class="col-sm-3">Incentive Name</div>' +
  14. '<div class="col-sm-2">Volume</div>' +
  15. '<div class="col-sm-2">Discount</div>' +
  16. '<div class="col-sm-2">Max Payout</div>' +
  17. '<div class="col-sm-2">Min Payout</div>' +
  18. '</div>' +
  19. '</h6>' +
  20. '</li>' +
  21. '</ul>';
  22. $("#" + containerid).html(html);
  23. }
  24. init(formpropertyid, prop, callback) {
  25. var PlanId = $('#hf_pk_value').val();
  26. $("#btnDynamicSave").addClass('hidden');
  27. this.GetIncentives(PlanId);
  28. }
  29. loadControlSettings(controlsettingjson, formpropertyid) {
  30. throw new Error("Method not implemented.");
  31. }
  32. loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
  33. throw new Error("Method not implemented.");
  34. }
  35. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  36. throw new Error("Method not implemented.");
  37. }
  38. GetIncentives(PlanId) {
  39. var instance = this;
  40. var jsfiles = ['apps/transact/managers/offers/offermanager.js', 'apps/transact/managers/interfaces/offers/ioffermanager.js'];
  41. instance.fileCacheHelper.loadJsFiles(jsfiles, function (response) {
  42. Bizgaze.Apps.Transact.Managers.OfferManager.Instance().getplanincentives(PlanId).then(function (response) {
  43. var dt = response.result;
  44. if (dt.length > 0) {
  45. for (var i = 0; i < dt.length; i++) {
  46. var data = dt[i];
  47. var html = '<li class="list-group-item" id="li_Incentives_' + i + '"><div class="row"><div class="col-sm-3">' + data.IncentiveName + '</div><div class="col-sm-2">' + data.Volume + '</div>';
  48. if (data.DiscountType != 0) {
  49. if (data.DiscountType == 1)
  50. html += '<div class="col-sm-2">' + data.PayoutValue + ' (Per Unit)</div>';
  51. else if (data.DiscountType == 2)
  52. html += '<div class="col-sm-2">' + data.PayoutPercent + ' %</div>';
  53. else if (data.DiscountType == 3)
  54. html += '<div class="col-sm-2">' + data.OPayoutValue + '(Fixed Value)</div>';
  55. }
  56. else {
  57. if (data.PayoutValue != 0)
  58. html += '<div class="col-sm-2">' + data.PayoutValue + ' (Per Unit)</div>';
  59. else if (data.PayoutPercent != 0)
  60. html += '<div class="col-sm-2">' + data.PayoutPercent + ' %</div>';
  61. else if (data.OPayoutValue != 0)
  62. html += '<div class="col-sm-2">' + data.OPayoutValue + '(Fixed Value)</div>';
  63. else
  64. html += '<div class="col-sm-2">' + data.PayoutValue + ' (Per Unit)</div>';
  65. }
  66. html += '<div class="col-sm-2">' + data.MaxPayout + '</div>' +
  67. '<div class="col-sm-2">' + data.MinPayout + '</div>';
  68. if (data.ItemVolumePayouts.length == 0) {
  69. html += '</div></li>';
  70. $("#li_PlanIncentive_Details").after(html);
  71. }
  72. else {
  73. html += '<div class="col-sm-1 pull-right btn btn-primary btn-sm" onclick="Bizgaze.Forms.Controls.PlanIncentives.Instance().ShowFoCItems(' + i + ')" >FoC</div>' +
  74. '</div>' +
  75. '</li>' +
  76. '<div id="div_FoCItems_' + i + '" class="hidden mt-15"><div>';
  77. $("#li_PlanIncentive_Details").after(html);
  78. Bizgaze.Forms.Controls.PlanIncentives.Instance().GetFoCItems(data.ItemVolumePayouts, i);
  79. }
  80. }
  81. }
  82. else {
  83. $('#li_PlanIncentive_Details').html('<div class="alert alert-info ma-0">There is no Data</div>');
  84. $('#li_PlanIncentive_Details').removeClass('bg-cyan-light-4');
  85. $('#li_PlanIncentive_Details').addClass('no-borders pa-5');
  86. }
  87. });
  88. });
  89. }
  90. GetFoCItems(FocItems, i) {
  91. var Html = '<ul class="col-sm-12">' +
  92. '<li class="list-group-item bg-cyan-light-4" id="li_FoCItems_Details_' + i + '">' +
  93. '<h6>' +
  94. '<div class="row">' +
  95. '<div class="col-sm-3">Item Name</div>' +
  96. '<div class="col-sm-3">For Every</div>' +
  97. '<div class="col-sm-3">FoC</div>' +
  98. '<div class="col-sm-2">Discount (%)</div>' +
  99. '</h6>' +
  100. '</div>' +
  101. '</li>';
  102. for (var j = 0; j < FocItems.length; j++) {
  103. var data = FocItems[j];
  104. Html += '<li class="list-group-item" >' +
  105. '<div class="row">' +
  106. '<div class="col-sm-3">' + data.ItemName + '</div>' +
  107. '<div class="col-sm-3">' + data.Recur + '</div>' +
  108. '<div class="col-sm-3">' + data.Quantity + '</div>' +
  109. '<div class="col-sm-2">' + data.Discount + '</div>' +
  110. '</div</li>';
  111. }
  112. Html += '</ul>';
  113. $('#div_FoCItems_' + i).html(Html);
  114. }
  115. ShowFoCItems(len) {
  116. var IsHidden = $('#div_FoCItems_' + len).hasClass('hidden');
  117. if (IsHidden) {
  118. $('#div_FoCItems_' + len).removeClass('hidden');
  119. }
  120. else {
  121. $('#div_FoCItems_' + len).addClass('hidden');
  122. }
  123. }
  124. static Instance() {
  125. if (this.instance === undefined)
  126. this.instance = new PlanIncentives();
  127. return this.instance;
  128. }
  129. }
  130. Controls.PlanIncentives = PlanIncentives;
  131. })(Controls = Forms.Controls || (Forms.Controls = {}));
  132. })(Forms = Bizgaze.Forms || (Bizgaze.Forms = {}));
  133. })(Bizgaze || (Bizgaze = {}));