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.

coupongeneration.js 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
  2. function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
  3. return new (P || (P = Promise))(function (resolve, reject) {
  4. function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
  5. function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
  6. function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
  7. step((generator = generator.apply(thisArg, _arguments || [])).next());
  8. });
  9. };
  10. var Bizgaze;
  11. (function (Bizgaze) {
  12. let Apps;
  13. (function (Apps) {
  14. let Paybacks;
  15. (function (Paybacks) {
  16. let Components;
  17. (function (Components) {
  18. class CouponGeneration extends Unibase.Platform.Core.BaseComponent {
  19. constructor() {
  20. super();
  21. this.generatedquantity = 0;
  22. this.couponrequestid = 0;
  23. }
  24. cssFiles() {
  25. return [];
  26. }
  27. jsFiles() {
  28. return ["apps/paybacks/components/coupongeneration.js", "platform/core/helpers/datetimehelper/datetimehelper.js", "platform/portlets/managers/portletmanager.js", "platform/portlets/managers/interfaces/iportletmanager.js"];
  29. }
  30. html(id, containerid) {
  31. var html = `<div class="b-a wrapper"><div id="bizgaze_ErrorMessages" class="clear"></div>
  32. <div class="card"><div class="card-header card-header-action"><span class="" id="hf-widget-title_coupongeneration">Coupon Generation</span><a id="addCouponGeneration" href="javascript:;"><i class="fa fa-plus"></i></a></div>
  33. <div class="card-body"><div class="div_generationproperties hidden"><input type="hidden" id="hf_requestedquantity" value="0"><input type="hidden" id="hf_generatedquantity" value="0">
  34. <div class="row"><div class='col-sm-3'><label for="name" class="pull-left">Requested Coupons</label></div><div class="col-sm-3"><span id="txt_requestcoupons"></span></div></div>
  35. <div class="row"><div class='col-sm-3'><label for="name" class="pull-left">Generated Coupons</label></div><div class="col-sm-3"><span id="txt_generatedcoupons"></span></div></div>
  36. <div class="row"><div class='col-sm-3'><label for="name" class="pull-left">Coupon Quantity</label></div><div class="col-sm-4"><a data-target="#coupon_modal_1" class="btn btn-block btn-success" id="savecoupongeneration" href="#">Save</a></div></div>
  37. <div class="row"><div class='col-sm-3'><label for="name" class="pull-left"></label></div><div class="col-sm-4"><a data-target="#coupon_modal_1" class="btn btn-block btn-success" id="savecoupongeneration" href="#">Save</a></div></div></div>
  38. <ul id="ul_Generation_Details" class="mt-10">
  39. <li class="list-group-item bg-cyan-light-4" id="CouponGeneration_Heading">
  40. <div class="row">
  41. <div class="col-sm-3"><strong>Generation ID</strong></div>
  42. <div class="col-sm-3"><strong>Generated Coupons</strong></div>
  43. <div class="col-sm-3"><strong>Generated Date</strong></div>
  44. <div class="col-sm-3"><strong>Created By</strong></div>
  45. </div>
  46. </li>
  47. <li class="length-row" id="CouponGeneration_Details_HiddenRow" class=""></li>
  48. </ul>
  49. </div>`;
  50. return html;
  51. }
  52. load(id, containerid, callback) {
  53. return __awaiter(this, void 0, void 0, function* () {
  54. var instance = this;
  55. var requestedquantity;
  56. instance.generatedquantity = 0;
  57. for (let obj of Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters) {
  58. if (obj.Key === "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_requestedquantity") {
  59. requestedquantity = Number(obj.Value);
  60. }
  61. if (obj.Key === "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_couponrequestid") {
  62. instance.couponrequestid = Number(obj.Value);
  63. }
  64. }
  65. $("#txt_requestcoupons").text(requestedquantity);
  66. $("#hf_requestedquantity").val(requestedquantity);
  67. $("#addCouponGeneration").click(function () {
  68. $(".div_generationproperties").removeClass("hidden");
  69. });
  70. yield Bizgaze.Apps.Paybacks.Managers.SchemeManager.Instance().getCouponGenerations(instance.couponrequestid).then(function (response) {
  71. var data = response.result;
  72. if (data.length > 0) {
  73. for (var i = 0; i < data.length; i++) {
  74. instance.generatedquantity += data[i].GeneratedQuantity;
  75. }
  76. }
  77. });
  78. $("#hf_generatedquantity").val(instance.generatedquantity);
  79. $("#txt_generatedcoupons").text(instance.generatedquantity);
  80. $("#savecoupongeneration").click(function () {
  81. instance.SaveCouponGeneration(containerid);
  82. });
  83. $(".txt_couponqty").keypress(function (key) {
  84. if (key.charCode < 46 || key.charCode > 58)
  85. return false;
  86. });
  87. instance.loadCoupongenerations(instance.couponrequestid);
  88. });
  89. }
  90. init(containerid) {
  91. var instance = this;
  92. instance.fileCacheHelper.loadJsFiles(["apps/paybacks/components/coupongeneration.js", "apps/paybacks/managers/schememanager.js", "tenants/themes/default/components/details/details.js", "platform/core/helpers/datetimehelper/datetimehelper.js", "platform/portlets/managers/interfaces/iportletmanager.js", "platform/portlets/managers/portletmanager.js"], function () {
  93. instance.navigationHelper.loadSection(0, containerid, Bizgaze.Apps.Paybacks.Components.CouponGeneration.Instance(), null, null);
  94. });
  95. }
  96. SaveCouponGeneration(containerid) {
  97. var requestquantity = Number($("#hf_requestedquantity").val());
  98. var generatedquantity = Number($("#hf_generatedquantity").val());
  99. if (generatedquantity == 0)
  100. generatedquantity = Number($("#txt_couponqty").val());
  101. else
  102. generatedquantity += Number($("#txt_couponqty").val());
  103. if (generatedquantity > requestquantity) {
  104. MessageHelper.Instance().showError("Generated Quantity can not be greater than Requested Quantity", "bizgaze_ErrorMessages");
  105. return false;
  106. }
  107. var instance = this;
  108. var postData = {
  109. coupongenerationid: Number(0),
  110. couponrequestid: Number(instance.couponrequestid),
  111. generatedquantity: Number($("#txt_couponqty").val()),
  112. generationno: 0,
  113. seriesid: 0,
  114. stageid: 0,
  115. };
  116. instance.fileCacheHelper.loadJsFile("tenants/themes/default/components/details/details.js", function () {
  117. Bizgaze.Apps.Paybacks.Managers.SchemeManager.Instance().saveCouponGeneration(postData).then(function (response) {
  118. MessageHelper.Instance().showSuccess(response.message, "bizgaze_ErrorMessages");
  119. instance.loadCoupongenerations(instance.couponrequestid);
  120. $(".div_generationproperties").addClass("hidden");
  121. var portletid = Number($("#hf_PortletId").val());
  122. var installedappid = Unibase.Themes.Providers.DetailHelper.installedAppId;
  123. Unibase.Themes.Compact.Components.Details.Instance().loadWidgets(installedappid, portletid, "");
  124. });
  125. });
  126. }
  127. loadCoupongenerations(couponrequestid) {
  128. Bizgaze.Apps.Paybacks.Managers.SchemeManager.Instance().getCouponGenerations(couponrequestid).then(function (response) {
  129. var data = response.result;
  130. var html = '';
  131. if (data.length > 0) {
  132. for (var i = 0; i < data.length; i++) {
  133. var len = $('.length-row').length;
  134. var _datetimehelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
  135. html += '<li class="CouponGeneration-row length-row list-group-item" id="CouponGeneration_' + len + '" >' +
  136. '<input type="hidden" id="hf_pk_value" value="' + data[i].CouponGenerationId + '">' +
  137. '<input type="hidden" id="hf_CouponRequestId" value="' + data[i].CouponRequestId + '">' +
  138. '<div class="row"><div class="col-sm-3" ><span><a style="text-decoration:underline;" class="font-bold" href="#" onclick="Unibase.Platform.Helpers.NavigationHelper.Instance().loadDetail(' + data[i].CouponGenerationId + ',' + data[i].InstalledAppId + ',null);">' + data[i].GenerationNo + '</a></span>' +
  139. '</div>' +
  140. '<div class="col-sm-3">' +
  141. '<span>' + data[i].GeneratedQuantity + '</span></div>' +
  142. '<div class="col-sm-3">' +
  143. '<span>' + _datetimehelper.formatLocalDate1(data[i].CreatedDate, '') + '</span>' +
  144. '</div>' +
  145. '<div class="col-sm-3">' +
  146. '<span>' + data[i].CreatedbyName + '</span>' +
  147. '</div>' +
  148. '</div>' +
  149. '</li>';
  150. }
  151. $("#CouponGeneration_Details_HiddenRow").empty();
  152. $('#CouponGeneration_Details_HiddenRow').append(html);
  153. }
  154. });
  155. }
  156. RegenerateCoupon() {
  157. var instance = this;
  158. var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  159. var id = String(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_coupongenerationid").Value);
  160. var stagestatusid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_refstatusid").Value);
  161. if (stagestatusid == 4) {
  162. $(".DetailSetting_" + installedAppId + "_Re-Generate").removeClass("hidden");
  163. }
  164. else
  165. $(".DetailSetting_" + installedAppId + "_Re-Generate").addClass("hidden");
  166. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  167. $(detailContainer).find('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Re-Generate').click(function () {
  168. $(".DetailSetting_" + installedAppId + "_Re-Generate").addClass("hidden");
  169. instance.fileCacheHelper.loadJsFile("apps/paybacks/managers/schememanager.js", function () {
  170. Bizgaze.Apps.Paybacks.Managers.SchemeManager.Instance().ResaveCouponGeneration(id).then(function (response) {
  171. if (response.errors == null) {
  172. var detailInstance = Unibase.Themes.Compact.Components.Details.Instance();
  173. var panel = "#" + detailInstance._containerId;
  174. var obj = Unibase.Themes.Compact.Components.Details.Instance();
  175. obj._recordId = Unibase.Themes.Providers.DetailHelper.recordId;
  176. obj._installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  177. detailInstance.loadAppDefaultWidget(obj, panel, detailInstance._containerId, function () {
  178. detailInstance.loadDefaultWidgets(obj._installedAppId, panel);
  179. detailInstance.LoadApprovals(obj._recordId, obj._installedAppId);
  180. });
  181. MessageHelper.Instance().showSuccess("Coupon Generated Successfully", "");
  182. }
  183. else {
  184. MessageHelper.Instance().showError(response.message, "div_message");
  185. }
  186. });
  187. });
  188. });
  189. }
  190. static Instance() {
  191. if (this.instance === undefined) {
  192. this.instance = new CouponGeneration();
  193. }
  194. return this.instance;
  195. }
  196. }
  197. Components.CouponGeneration = CouponGeneration;
  198. })(Components = Paybacks.Components || (Paybacks.Components = {}));
  199. })(Paybacks = Apps.Paybacks || (Apps.Paybacks = {}));
  200. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  201. })(Bizgaze || (Bizgaze = {}));