Built files from Bizgaze WebServer
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

createtenant.component.js 69KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910
  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. let Subscriptions;
  10. (function (Subscriptions) {
  11. class CreateTenant extends Unibase.Platform.Core.BaseComponent {
  12. constructor() {
  13. super(...arguments);
  14. this.formEl = $(`[data-formuniquekey="bizgaze_transact_extension_subscription_paymentdetails"]`);
  15. }
  16. jsFiles() {
  17. return ['apps/transact/managers/invoicemanager.js', 'apps/transact/controls/subscriptions/subscribeuserregistrations.js'];
  18. }
  19. init(formpropertyid, prop, callback) {
  20. $("#CreateTenant").click(function () {
  21. });
  22. }
  23. loadControl(containerid, prop) {
  24. this.fileCacheHelper.loadCssFiles(['libs/simplebar/simplebar.min.css', 'apps/transact/controls/subscriptions/style.subscription.css'], null);
  25. this.fileCacheHelper.loadJsFile('libs/simplebar/simplebar.min.js', null);
  26. var html = `<div class="createtenantdiv"></div><div class="PaymentDetails"></div>`;
  27. $("#formFooter").addClass("hidden");
  28. $(".btn_Save_Form").addClass("btn_CreateTenant_Form");
  29. var Register = `<span><button type="button" id="CreateTenant" class="btn btn-sm btn-primary">Create Tenant</button></span>`;
  30. $(".btn_CreateTenant_Form").removeClass("btn_Save_Form");
  31. $(".btn_CreateTenant_Form").html(Register);
  32. $("#" + containerid).html(html);
  33. }
  34. getSubOrderDetailsUpdate(OrderId, OrderToken) {
  35. var instance = this;
  36. instance.navigationHelper.showLoading();
  37. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  38. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getPaymentDetailsbyOrderId(OrderId).then(function (response) {
  39. var obj = {};
  40. var data = response;
  41. var res = response.result[0];
  42. var Payment_Group = response.result[0].payment_group;
  43. var CFPaymentId = response.result[0].cf_payment_id;
  44. var status = response.result[0].payment_status;
  45. if (Payment_Group == 'upi') {
  46. obj = {
  47. OrderId: response.result[0].order_id,
  48. OrderToken: OrderToken,
  49. paymentstatus: response.result[0].payment_status,
  50. BankReference: response.result[0].bank_reference,
  51. CFPaymentId: String(CFPaymentId),
  52. Entity: response.result[0].entity,
  53. IsCaptured: response.result[0].is_captured,
  54. PaymentCompletiontime: response.result[0].payment_completion_time,
  55. PaymentCurrency: response.result[0].payment_currency,
  56. PaymentGroup: response.result[0].payment_group,
  57. PaymentMessage: response.result[0].payment_message,
  58. PaymentMethod: "upi",
  59. Channel: response.result[0].payment_method.upi.channel,
  60. UPIID: response.result[0].payment_method.upi.upi_id,
  61. PaymentStatus: response.result[0].payment_status,
  62. PaymentTime: response.result[0].payment_time,
  63. TotalAmount: response.result[0].order_amount
  64. };
  65. }
  66. else if (Payment_Group == "wallet") {
  67. obj = {
  68. OrderId: response.result[0].order_id,
  69. OrderToken: OrderToken,
  70. paymentstatus: response.result[0].payment_status,
  71. BankReference: response.result[0].bank_reference,
  72. CFPaymentId: String(CFPaymentId),
  73. Entity: response.result[0].entity,
  74. IsCaptured: response.result[0].is_captured,
  75. PaymentCompletiontime: response.result[0].payment_completion_time,
  76. PaymentCurrency: response.result[0].payment_currency,
  77. PaymentGroup: response.result[0].payment_group,
  78. PaymentMessage: response.result[0].payment_message,
  79. PaymentMethod: "app",
  80. Channel: response.result[0].payment_method.app.channel,
  81. Phone: response.result[0].payment_method.app.phone,
  82. PaymentStatus: response.result[0].payment_status,
  83. PaymentTime: response.result[0].payment_time,
  84. TotalAmount: response.result[0].order_amount
  85. };
  86. }
  87. else {
  88. obj = {
  89. OrderId: response.result[0].order_id,
  90. OrderToken: OrderToken,
  91. paymentstatus: response.result[0].payment_status,
  92. BankReference: response.result[0].bank_reference,
  93. CFPaymentId: String(CFPaymentId),
  94. Entity: response.result[0].entity,
  95. IsCaptured: response.result[0].is_captured,
  96. PaymentCompletiontime: response.result[0].payment_completion_time,
  97. PaymentCurrency: response.result[0].payment_currency,
  98. PaymentGroup: response.result[0].payment_group,
  99. PaymentMessage: response.result[0].payment_message,
  100. PaymentMethod: "card",
  101. Channel: response.result[0].payment_method.card.channel,
  102. CardNumber: response.result[0].payment_method.card.card_number,
  103. CardNetwork: response.result[0].payment_method.card.card_network,
  104. CardType: response.result[0].payment_method.card.card_type,
  105. CardCountry: response.result[0].payment_method.card.card_country,
  106. CardbankName: response.result[0].payment_method.card.card_bank_name,
  107. PaymentStatus: response.result[0].payment_status,
  108. PaymentTime: response.result[0].payment_time,
  109. TotalAmount: response.result[0].order_amount
  110. };
  111. }
  112. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().SaveSucriptionPayementDetails(obj).then(function (response) {
  113. var info = response.result;
  114. instance.navigationHelper.hideLoading();
  115. if (status == "SUCCESS") {
  116. if (res != null) {
  117. instance.paymentSuccess(res);
  118. }
  119. }
  120. else {
  121. instance.PaymentFailed(data);
  122. }
  123. });
  124. });
  125. });
  126. }
  127. getSubOrderDetails(OrderId, OrderToken) {
  128. var instance = this;
  129. instance.navigationHelper.showLoading();
  130. CreateTenant.instance.orderId = OrderId;
  131. CreateTenant.instance.orderToken = OrderToken;
  132. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  133. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscriptionPaymentData(OrderId).then(function (response) {
  134. var paymentdata = response.result;
  135. var Bizorderid = paymentdata.BizOrderId;
  136. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getPaymentDetailsbyOrderId(OrderId).then(function (response) {
  137. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscripuionOrderByBizorderId(Number(Bizorderid)).then(function (rese) {
  138. var orderdata = rese.result;
  139. var tenureId = orderdata.TenureId;
  140. var tenurePeriod = orderdata.TenurePeriod;
  141. var obj = {};
  142. var data = response;
  143. var res = response.result[0];
  144. var Payment_Group = response.result[0].payment_group;
  145. var CFPaymentId = response.result[0].cf_payment_id;
  146. var status = response.result[0].payment_status;
  147. var SubscriptionPaymentId = paymentdata.SubscriptionPaymentId;
  148. var resdate = res.payment_time;
  149. var resdate = res.payment_time;
  150. resdate = new Date(resdate);
  151. var subscriptionEndDate;
  152. if (tenureId == 2) {
  153. subscriptionEndDate = convertDateMonth(resdate);
  154. }
  155. else if (tenureId == 3) {
  156. var subDate = new Date(new Date().setFullYear(new Date().getFullYear() + tenurePeriod));
  157. subscriptionEndDate = subDate;
  158. }
  159. function convertDateMonth(date) {
  160. date.setDate(date.getDate() + 30 * tenurePeriod);
  161. return (date);
  162. }
  163. if (Payment_Group == 'upi') {
  164. obj = {
  165. OrderId: response.result[0].order_id,
  166. OrderToken: OrderToken,
  167. paymentstatus: response.result[0].payment_status,
  168. BankReference: response.result[0].bank_reference,
  169. CFPaymentId: String(CFPaymentId),
  170. Entity: response.result[0].entity,
  171. IsCaptured: response.result[0].is_captured,
  172. PaymentCompletiontime: response.result[0].payment_completion_time,
  173. PaymentCurrency: response.result[0].payment_currency,
  174. PaymentGroup: response.result[0].payment_group,
  175. PaymentMessage: response.result[0].payment_message,
  176. PaymentMethod: "upi",
  177. Channel: response.result[0].payment_method.upi.channel,
  178. UPIID: response.result[0].payment_method.upi.upi_id,
  179. PaymentStatus: response.result[0].payment_status,
  180. PaymentTime: response.result[0].payment_time,
  181. TotalAmount: response.result[0].order_amount,
  182. SubscriptionPaymentId: SubscriptionPaymentId,
  183. DueDate: subscriptionEndDate
  184. };
  185. }
  186. else if (Payment_Group == "wallet") {
  187. obj = {
  188. OrderId: response.result[0].order_id,
  189. OrderToken: OrderToken,
  190. paymentstatus: response.result[0].payment_status,
  191. BankReference: response.result[0].bank_reference,
  192. CFPaymentId: String(CFPaymentId),
  193. Entity: response.result[0].entity,
  194. IsCaptured: response.result[0].is_captured,
  195. PaymentCompletiontime: response.result[0].payment_completion_time,
  196. PaymentCurrency: response.result[0].payment_currency,
  197. PaymentGroup: response.result[0].payment_group,
  198. PaymentMessage: response.result[0].payment_message,
  199. PaymentMethod: "app",
  200. Channel: response.result[0].payment_method.app.channel,
  201. Phone: response.result[0].payment_method.app.phone,
  202. PaymentStatus: response.result[0].payment_status,
  203. PaymentTime: response.result[0].payment_time,
  204. TotalAmount: response.result[0].order_amount,
  205. SubscriptionPaymentId: SubscriptionPaymentId,
  206. DueDate: subscriptionEndDate
  207. };
  208. }
  209. else {
  210. obj = {
  211. OrderId: response.result[0].order_id,
  212. OrderToken: OrderToken,
  213. paymentstatus: response.result[0].payment_status,
  214. BankReference: response.result[0].bank_reference,
  215. CFPaymentId: String(CFPaymentId),
  216. Entity: response.result[0].entity,
  217. IsCaptured: response.result[0].is_captured,
  218. PaymentCompletiontime: response.result[0].payment_completion_time,
  219. PaymentCurrency: response.result[0].payment_currency,
  220. PaymentGroup: response.result[0].payment_group,
  221. PaymentMessage: response.result[0].payment_message,
  222. PaymentMethod: "card",
  223. Channel: response.result[0].payment_method.card.channel,
  224. CardNumber: response.result[0].payment_method.card.card_number,
  225. CardNetwork: response.result[0].payment_method.card.card_network,
  226. CardType: response.result[0].payment_method.card.card_type,
  227. CardCountry: response.result[0].payment_method.card.card_country,
  228. CardbankName: response.result[0].payment_method.card.card_bank_name,
  229. PaymentStatus: response.result[0].payment_status,
  230. PaymentTime: response.result[0].payment_time,
  231. TotalAmount: response.result[0].order_amount,
  232. SubscriptionPaymentId: SubscriptionPaymentId,
  233. DueDate: subscriptionEndDate
  234. };
  235. }
  236. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().SaveSucriptionPayementDetails(obj).then(function (response) {
  237. var info = response.result;
  238. if (status == "SUCCESS") {
  239. if (res != null) {
  240. instance.paymentSuccessDetails(res, tenureId, tenurePeriod);
  241. }
  242. }
  243. else {
  244. instance.PaymentFaildDetails(data);
  245. }
  246. });
  247. });
  248. });
  249. });
  250. });
  251. }
  252. paymentSuccess(res) {
  253. var status = true;
  254. var orderId = res.order_id;
  255. var instance = this;
  256. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  257. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().GetSubscripuionPaymentInfo(orderId).then(function (response) {
  258. var result = response.result;
  259. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().GetSubscripuionUserPlanInfoByOrderId(orderId).then(function (info) {
  260. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().GetUserInfoByOrderId(orderId).then(function (userdata) {
  261. var tenureId = userdata.result.TenureId;
  262. var planName = info.result.ItemName;
  263. var tenurePeriod = userdata.result.TenurePeriod;
  264. var resdate = res.payment_time;
  265. var paymentdate = resdate.split("T")[0];
  266. var date = moment(paymentdate).format('DD/MM/YYYY');
  267. resdate = new Date(resdate);
  268. var time = resdate.toLocaleTimeString().replace(/(.*)\D\d+/, '$1');
  269. var DateTime = date + '| ' + time;
  270. var startDateFormat = new Date(res.payment_time);
  271. var subDate = new Date(new Date().setFullYear(new Date().getFullYear() + tenurePeriod));
  272. var subscriptionEndDate;
  273. if (tenureId == 2) {
  274. subscriptionEndDate = convertMonthDate(resdate);
  275. }
  276. else if (tenureId == 3) {
  277. subscriptionEndDate = convertDate(subDate);
  278. }
  279. function convertDate(str) {
  280. var mnths = {
  281. Jan: "01",
  282. Feb: "02",
  283. Mar: "03",
  284. Apr: "04",
  285. May: "05",
  286. Jun: "06",
  287. Jul: "07",
  288. Aug: "08",
  289. Sep: "09",
  290. Oct: "10",
  291. Nov: "11",
  292. Dec: "12"
  293. }, date = str.toString().split(" ");
  294. return [date[2], mnths[date[1]], date[3]].join("/");
  295. }
  296. function convertMonthDate(date) {
  297. date.setDate(date.getDate() + 30 * tenurePeriod);
  298. date.toLocaleDateString();
  299. return (moment(date).format('DD/MM/YYYY'));
  300. }
  301. var url = window.location.origin;
  302. var html = `
  303. <div class="subs-main-content-wrap biz-custom-scrollbar"> <div class="subs-transact-sec py-50">
  304. <div class="biz-custom-scrollbar bg-registration container mx-auto registration-container-border row subs-transact-row-wrap bg-white">
  305. <div class="col-lg-7 p-5 pb-0 pr-md-10 pr-lg-20 pr-xl-30">
  306. <div data-simplebar class="transact-details-scroll simple-scroll-bar">
  307. <div class="transact-details-wrap">
  308. <div class="transact-detail-top-wrap flex-column mb-50">`;
  309. html += `<div class="text-center mb-3"> <i class="bg-light-green fa fa-check font-30 p-3 rounded-pill text-white"></i></div> <h3 class="text-center transact-status-msg">Payment Sucessfull</h3>
  310. </div>
  311. <ul class="transact-detail-list w-100 font-weight-500">
  312. <li class="transact-detail-list-item date-time-detail justify-content-between">
  313. <span>Date & Time</span>
  314. <span>Payment ID</span>
  315. </li>
  316. <li class="transact-detail-list-item payment-detail justify-content-between">
  317. <span class="date-time-detail">` + DateTime + `</span>
  318. <span class="payment-detail">` + res.cf_payment_id + `</span>
  319. </li>
  320. </ul>
  321. <div class="transact-status-img-wrap">
  322. <img src="imgs/transact-success.png" class="img-fluid transact-status-img">
  323. </div>
  324. </div>
  325. </div>
  326. </div>
  327. <div class="col-lg-5 p-5 pl-0">
  328. <div class="border p-4 rounded-15 subdetails pt-0 shadow">
  329. <div class="subs-details-wrap">
  330. <p class="transact-price inr-sign text-center dashed-border py-2 px-4 rounded-8 mx-auto w-fit my-40">` + res.payment_amount + `</p>
  331. <h4 class="subs-details-heading mb-25 pb-20 border-bottom font-weight-700">
  332. Subscription Details
  333. </h4>
  334. <div data-simplebar class="subs-details-scroll simple-scroll-bar">
  335. <div class="subs-card-wrap ">
  336. <div class="subs-card subs-plan-card border-bottom pb-2">
  337. <h6 class="subs-card-title text-light font-weight-600">` + planName + `
  338. </h6>
  339. <div class="subs-card-body subitemdetails">
  340. </div>
  341. </div>
  342. <div class="subs-card subs-period-card border-bottom py-4">
  343. <h4 class="subs-card-title font-weight-600 ">
  344. Subscription Period
  345. </h4>
  346. <div class="subs-card-body">
  347. <span class="card-body-title text-light">` + date + ` to ` + subscriptionEndDate + `</span>
  348. </div>
  349. </div>
  350. <div class="pt-4 subs-card subs-due-date-card d-flex justify-content-between align-items-center divinvoice">
  351. <div>
  352. <h4 class="subs-card-title ">
  353. Due Date
  354. </h4>
  355. <div class="subs-card-body">
  356. <span class="card-body-title text-light">` + subscriptionEndDate + `</span>
  357. </div>
  358. </div>
  359. <div><a class="btn btn-blue" href = "javascript:;" onclick = "Bizgaze.Apps.Transact.Controls.Subscriptions.CreateTenant.Instance().login()">Login</a></div>
  360. </div>
  361. </div>
  362. </div>
  363. </div>
  364. </div>
  365. </div>
  366. </div>
  367. </div></div>`;
  368. $(".PaymentDetails").append(html);
  369. $(".formValidate").removeClass("bg-white subs-bg-pattern").addClass("bg-light");
  370. var Duedate = subscriptionEndDate.replaceAll("/", "-");
  371. CreateTenant.instance.Loginurl = window.location.origin;
  372. var urldata = CreateTenant.instance.Loginurl;
  373. var Log_url = urldata.replace("//", "-");
  374. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().SubcriptionsBackgroundProcess(orderId, Duedate.toString(), Log_url.toString()).then(function (response) {
  375. instance.SubscriptionItemData(result.BizOrderId, result.InvoiceId);
  376. });
  377. });
  378. });
  379. });
  380. });
  381. }
  382. login() {
  383. Unibase.Platform.Helpers.CookieHelper.Instance().setIdentityCookie("");
  384. var identity = Unibase.Platform.Helpers.CookieHelper.Instance().getIdentityCookie();
  385. if (identity == null || identity == "" || identity == "idenity=" || identity == "idenity") {
  386. var url = window.location.origin;
  387. window.open(url, '_blank');
  388. }
  389. }
  390. paymentSuccessDetails(res, tenureId, tenurePeriod) {
  391. var status = true;
  392. var orderId = res.order_id;
  393. var instance = this;
  394. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  395. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscriptionPaymentData(orderId).then(function (response) {
  396. var result = response.result;
  397. CreateTenant.instance.organizationId = result.OrganizationId;
  398. var resdate = res.payment_time;
  399. var url = window.location.origin;
  400. var paymentdate = resdate.split("T")[0];
  401. var date = moment(paymentdate).format('DD/MM/YYYY');
  402. resdate = new Date(resdate);
  403. var time = resdate.toLocaleTimeString().replace(/(.*)\D\d+/, '$1');
  404. var DateTime = date + '| ' + time;
  405. var subDate = new Date(new Date().setFullYear(new Date().getFullYear() + tenurePeriod));
  406. var subscriptionEndDate;
  407. if (tenureId == 2) {
  408. subscriptionEndDate = convertMonthDate(resdate);
  409. }
  410. else if (tenureId == 3) {
  411. subscriptionEndDate = convertDate(subDate);
  412. }
  413. function convertDate(str) {
  414. var mnths = {
  415. Jan: "01",
  416. Feb: "02",
  417. Mar: "03",
  418. Apr: "04",
  419. May: "05",
  420. Jun: "06",
  421. Jul: "07",
  422. Aug: "08",
  423. Sep: "09",
  424. Oct: "10",
  425. Nov: "11",
  426. Dec: "12"
  427. }, date = str.toString().split(" ");
  428. return [date[2], mnths[date[1]], date[3]].join("/");
  429. }
  430. function convertMonthDate(date) {
  431. date.setDate(date.getDate() + 30 * tenurePeriod);
  432. date.toLocaleDateString();
  433. return (moment(date).format('DD/MM/YYYY'));
  434. }
  435. var html = `
  436. <div class="subs-main-content-wrap biz-custom-scrollbar"> <div class="subs-transact-sec">
  437. <div class="row mx-0 subs-transact-row-wrap biz-custom-scrollbar">
  438. <div class="col-lg-5 px-0 pr-md-10 pr-lg-20 pr-xl-30">
  439. <div data-simplebar class="transact-details-scroll simple-scroll-bar">
  440. <div class="transact-details-wrap">
  441. <div class="transact-detail-top-wrap">`;
  442. html += ` <h3 class="transact-status-msg">Payment Sucessfull</h3>
  443. <p class="transact-price inr-sign">` + res.payment_amount + `</p>
  444. </div>
  445. <div class="transact-status-img-wrap">
  446. <img src="imgs/transact-success.png" class="img-fluid transact-status-img">
  447. </div>
  448. <ul class="transact-detail-list w-100">
  449. <li class="transact-detail-list-item date-time-detail justify-content-between">
  450. <span>Date & Time</span>
  451. <span>Payment ID</span>
  452. </li>
  453. <li class="transact-detail-list-item payment-detail justify-content-between">
  454. <span class="date-time-detail">` + DateTime + `</span>
  455. <span class="payment-detail">` + res.cf_payment_id + `</span>
  456. </li>
  457. </ul>
  458. </div>
  459. </div>
  460. </div>
  461. <div class="col-lg-7 pt-30 px-0 pt-lg-0 pl-lg-20 pl-xl-30 subdetails">
  462. <div class="subs-details-wrap">
  463. <p class="transact-price inr-sign">` + res.payment_amount + `</p>
  464. <h4 class="subs-details-heading font-weight-700 my-25">
  465. Subscription Details
  466. </h4>
  467. <div data-simplebar class="subs-details-scroll simple-scroll-bar">
  468. <div class="subs-card-wrap divinvoice">
  469. <div class="subs-card subs-plan-card">
  470. <h6 class="subs-card-title text-light-80">
  471. Plan Name
  472. </h6>
  473. <div class="subs-card-body subitemdetails">
  474. </div>
  475. </div>
  476. <div class="subs-card subs-period-card">
  477. <h6 class="subs-card-title">
  478. Subscription Period
  479. </h6>
  480. <div class="subs-card-body">
  481. <span class="card-body-title text-light">` + date + ` to ` + subscriptionEndDate + `</span>
  482. </div>
  483. </div>
  484. <div class="subs-card subs-due-date-card">
  485. <h6 class="subs-card-title heading-underline">
  486. Due Date
  487. </h6>
  488. <div class="subs-card-body">
  489. <span class="card-body-title text-light">` + subscriptionEndDate + `</span>
  490. </div>
  491. </div>
  492. </div>
  493. </div>
  494. </div>
  495. </div>
  496. </div>
  497. </div></div>`;
  498. $(".PaymentDetails").append(html);
  499. instance.navigationHelper.hideLoading();
  500. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().SubscriptionsRepay(orderId).then(function (response) {
  501. var res = response;
  502. instance.SubscriptionItemData(result.BizOrderId, result.InvoiceId);
  503. });
  504. });
  505. });
  506. }
  507. PaymentFaildDetails(data) {
  508. var PaymentStatus = false;
  509. var orderId = data.result[0].order_id;
  510. var instance = this;
  511. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  512. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscriptionPaymentData(orderId).then(function (response) {
  513. var result = response.result;
  514. instance.SaveFailedPaymentbyInvoiceData(result, PaymentStatus);
  515. var res = data.result[0];
  516. var resdate = res.payment_time;
  517. var paymentdate = resdate.split("T")[0];
  518. var date = moment(paymentdate).format('DD/MM/YYYY');
  519. resdate = new Date(resdate);
  520. var time = resdate.toLocaleTimeString().replace(/(.*)\D\d+/, '$1');
  521. var DateTime = date + '|' + time;
  522. var html = ` <div class="row subs-transact-row-wrap subs-transact-failure-wrap justify-content-center">
  523. <div class="col-12 col-sm-10 col-md-8 col-lg-6">
  524. <div class="transact-failure-img-wrap text-center">
  525. <img src="imgs/transact-failure.png" alt="failure-img"
  526. class="img-fluid transact-failure-img mb-1">
  527. <h5 class="transact-status-msg text-danger">
  528. ` + res.payment_message + `
  529. </h5>
  530. </div>
  531. <p class="transact-failure-msg text-dark-100 text-center my-20">Lorem ipsum dolor sit amet
  532. consectetur
  533. adipisicing elit. Quasi et mollitia vel deserunt
  534. iusto doloremque sapiente eveniet molestiae voluptates voluptatibus consequuntur dolore
  535. architecto, inventore temporibus veniam error minus itaque consectetur.</p>
  536. <div class="subs-details-wrap">
  537. <div class="subs-card-wrap">
  538. <div class="subs-card subs-period-card">
  539. <h6 class="subs-card-title heading-underline">
  540. Date & Time
  541. </h6>
  542. <div class="subs-card-body">
  543. <span class="card-body-title">` + DateTime + `</span>
  544. </div>
  545. </div>
  546. <div class="subs-card subs-due-date-card">
  547. <h6 class="subs-card-title heading-underline">
  548. Payment ID
  549. </h6>
  550. <div class="subs-card-body">
  551. <span class="card-body-title">` + res.cf_payment_id + `</span>
  552. </div>
  553. </div>
  554. </div>
  555. <div class="retry-payment-wrap mt-20 text-center">
  556. <a href="javascript:;" onclick="Bizgaze.Apps.Transact.Controls.Subscriptions.CreateTenant.Instance().GetSubscriptionFaildOrderData(\'` + res.order_id + `\',\'` + res.payment_amount + `\')" class="btn retry-payment-btn"><i
  557. class="fa fa-refresh mr-1"></i> Retry</a>
  558. </div>
  559. </div>
  560. </div>
  561. </div>`;
  562. $(".PaymentDetails").append(html);
  563. });
  564. });
  565. }
  566. PaymentFailed(data) {
  567. var PaymentStatus = false;
  568. var orderId = data.result[0].order_id;
  569. var instance = this;
  570. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  571. var result = data.result;
  572. var res = data.result[0];
  573. var resdate = res.payment_time;
  574. var paymentdate = resdate.split("T")[0];
  575. var date = moment(paymentdate).format('DD/MM/YYYY');
  576. resdate = new Date(resdate);
  577. var time = resdate.toLocaleTimeString().replace(/(.*)\D\d+/, '$1');
  578. var DateTime = date + '|' + time;
  579. var html = ` <div class="row subs-transact-row-wrap subs-transact-failure-wrap justify-content-center">
  580. <div class="col-12 col-sm-10 col-md-8 col-lg-6">
  581. <div class="transact-failure-img-wrap text-center">
  582. <img src="imgs/transact-failure.png" alt="failure-img"
  583. class="img-fluid transact-failure-img mb-1">
  584. <h5 class="transact-status-msg text-danger">
  585. ` + res.payment_message + `
  586. </h5>
  587. </div>
  588. <p class="transact-failure-msg text-dark-100 text-center my-20">Lorem ipsum dolor sit amet
  589. consectetur
  590. adipisicing elit. Quasi et mollitia vel deserunt
  591. iusto doloremque sapiente eveniet molestiae voluptates voluptatibus consequuntur dolore
  592. architecto, inventore temporibus veniam error minus itaque consectetur.</p>
  593. <div class="subs-details-wrap">
  594. <div class="subs-card-wrap">
  595. <div class="subs-card subs-period-card">
  596. <h6 class="subs-card-title heading-underline">
  597. Date & Time
  598. </h6>
  599. <div class="subs-card-body">
  600. <span class="card-body-title">` + DateTime + `</span>
  601. </div>
  602. </div>
  603. <div class="subs-card subs-due-date-card">
  604. <h6 class="subs-card-title heading-underline">
  605. Payment ID
  606. </h6>
  607. <div class="subs-card-body">
  608. <span class="card-body-title">` + res.cf_payment_id + `</span>
  609. </div>
  610. </div>
  611. </div>
  612. <div class="retry-payment-wrap mt-20 text-center">
  613. <a href="javascript:;" onclick="Bizgaze.Apps.Transact.Controls.Subscriptions.CreateTenant.Instance().GetSubscriptionFaildPaymentData(\'` + res.order_id + `\',\'` + res.payment_amount + `\')" class="btn retry-payment-btn"><i
  614. class="fa fa-refresh mr-1"></i> Retry</a>
  615. </div>
  616. </div>
  617. </div>
  618. </div>`;
  619. $(".PaymentDetails").append(html);
  620. });
  621. }
  622. SaveFailedPaymentbyInvoiceData(invoice, PaymentStatus) {
  623. var Invoice_Id = invoice.InvoiceId;
  624. var orgId = CreateTenant.instance.organizationId;
  625. var obj = {
  626. PaymentTypeId: 1,
  627. InvoiceId: invoice.InvoiceId,
  628. PaymentModeId: 3,
  629. RefNo: "",
  630. RefDate: invoice.RefDate,
  631. BankRefNo: "",
  632. BankRefDate: invoice.RefDate,
  633. BankId: invoice.BranchId,
  634. BankBranch: "",
  635. };
  636. var instance = this;
  637. instance.fileCacheHelper.loadJsFile('apps/transact/enums/enum.js', function () {
  638. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  639. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getInvoiceDetails(invoice.InvoiceId).then(function (response) {
  640. var invoiceDeatils = response.result;
  641. var OrderStatusId = Bizgaze.Apps.Transact.Enums.OrderStatus.Completed;
  642. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().updateOrdersStage(invoiceDeatils.OrderId, OrderStatusId).then(function (response) {
  643. var res = response.result;
  644. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().updateInvoiceStage(invoiceDeatils.VersionGuid, invoiceDeatils.OrderId).then(function (response) {
  645. var res = response.result;
  646. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().savePaymentbyInvoiceData(obj).then(function (response) {
  647. var resdata = response.result;
  648. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().UpdatedPaymentStage(Invoice_Id, PaymentStatus).then(function (response) {
  649. var resdata = response.result;
  650. });
  651. });
  652. });
  653. });
  654. });
  655. });
  656. });
  657. }
  658. customUiJs() {
  659. const instance = this;
  660. const formEl = instance.formEl;
  661. formEl.find('.bizgaze_FormErrorMessages').addClass('form-error-message ml-0 r-0').detach().prependTo(formEl);
  662. const logoDivHeight = formEl.find(".subs-logo-wrap").outerHeight(true);
  663. formEl.find(".simple-scroll-bar.modal-body").css("height", `calc(100vh - ${logoDivHeight}px)`).addClass("pb-15 pb-md-20 pt-0").removeClass("bg-cyan-light-5 biz_grey_bg");
  664. const modalBodyPaddingBottom = parseInt(formEl.find(".simple-scroll-bar.modal-body").css('padding-bottom'));
  665. const subsDetailHeadingHeight = formEl.find('.subs-details-heading').outerHeight(true);
  666. if ($(window).width() >= 991) {
  667. formEl.find('.transact-details-scroll').css("max-height", `calc(100vh - ${logoDivHeight + modalBodyPaddingBottom}px)`);
  668. formEl.find('.subs-details-scroll').css("max-height", `calc(100vh - ${logoDivHeight + modalBodyPaddingBottom + subsDetailHeadingHeight}px)`);
  669. }
  670. }
  671. GetSubscriptionFaildPaymentData(OrderId, PaymentAmount) {
  672. var payamount = Number(PaymentAmount);
  673. var instance = this;
  674. var PaymentStatus = true;
  675. instance.fileCacheHelper.loadJsFiles(["apps/transact/managers/subscriptions/subscriptionmanager.js", "apps/transact/controls/subscriptions/subscribeuserregistrations.js"], function () {
  676. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().GetUserInfoByOrderId(OrderId).then(function (response) {
  677. var res = response.result;
  678. var customerUserId = res.SubscriptionsUserId;
  679. var Email = res.Email;
  680. var ContactNumber = res.ContactNumber;
  681. Bizgaze.Apps.Transact.Controls.Subscriptions.SubcribeUserRegistrations.Instance().retryPayement(payamount, customerUserId, PaymentStatus, Email, ContactNumber);
  682. });
  683. });
  684. }
  685. GetSubscriptionFaildOrderData(OrderId, PaymentAmount) {
  686. var payamount = Number(PaymentAmount);
  687. var instance = this;
  688. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  689. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscriptionPaymentData(OrderId).then(function (response) {
  690. var res = response.result;
  691. CreateTenant.instance.organizationId = res.OrganizationId;
  692. Bizgaze.Apps.Transact.Controls.Subscriptions.OrderDetails.Instance().Orderdata(res);
  693. Bizgaze.Apps.Transact.Controls.Subscriptions.OrderDetails.Instance().paymentgateway(payamount, res.OrganizationId, false);
  694. });
  695. });
  696. }
  697. SubscriptionItemData(bizorderid, InvoiceId) {
  698. var instance = this;
  699. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  700. instance.fileCacheHelper.loadJsFile("apps/transact/components/invoices/printinvoice.js", function () {
  701. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getSubscriptionOrderItems(bizorderid).then(function (response) {
  702. var res = response.result;
  703. var orderItems = [];
  704. for (var i = 0; i < res.length; i++) {
  705. orderItems.push({
  706. ItemId: response.result[i].ItemId, ItemName: response.result[i].ItemName, LobId: response.result[i].LobId, OfferId: response.result[i].OfferId, OfferName: response.result[i].OfferName, OrderId: response.result[i].OrderId, OrderItemId: response.result[i].OrderTypeId, OrderNo: response.result[i].OrderNo, OrderTypeId: response.result[i].OrderTypeId, SKU: response.result[i].SKU, SubscriptionItemType: response.result[i].SubscriptionItemType, TaxAmount: response.result[i].TaxAmount, TaxGroupId: response.result[i].TaxGroupId, TaxGroupName: response.result[i].TaxGroupName, TaxTotal: response.result[i].TaxTotal, TaxPercentage: response.result[i].TaxPercentage, UnitName: response.result[i].UnitName, UnitPrice: response.result[i].UnitPrice, Quantity: response.result[i].Quantity, RowTotal: response.result[i].RowTotal, RowDiscount: response.result[i].RowDiscount,
  707. });
  708. }
  709. var html = ``;
  710. for (var i = 0; i < res.length; i++) {
  711. res.ItemName;
  712. res.UnitPrice;
  713. res.RowDiscount;
  714. res.RowTotal;
  715. res.TaxTotal;
  716. var ItemPrice = (res[i].UnitPrice) - (res[i].RowDiscount) + (res[i].TaxTotal);
  717. html += `<div class="plan-item-wrap">
  718. <div class="plan-title-price-wrap">
  719. <span class="card-body-title plan-title">` + res[i].ItemName + `</span>
  720. <span class="plan-price inr-sign">` + ItemPrice + `</span>
  721. </div>`;
  722. if (res[i].Description != null && res[i].Description != "") {
  723. html += `<span class="plan-desc">` + res[i].Description + `</span></div>`;
  724. }
  725. else {
  726. html += `<span class="plan-desc"></span></div>`;
  727. }
  728. }
  729. var html1 = `<div class="download-invoice-wrap downloadinvoice d-none">
  730. <a href="javascript:;" onclick="Bizgaze.Apps.Transact.Components.Invoices.PrintInvoice.Instance().printPreview(` + InvoiceId + `)" class="d-flex align-items-center download-invoice-btn downloadinvoice"><i class="la la-arrow-circle-down font-18 mr-1 d-none"></i> Invoice</a>
  731. </div>`;
  732. $(".subitemdetails:first").append(html);
  733. $(".divinvoice:first").append(html1);
  734. });
  735. });
  736. });
  737. }
  738. SavePaymentbyInvoiceData(invoice, PaymentStatus, cf_payment_id) {
  739. var Invoice_Id = invoice.InvoiceId;
  740. var orgId = CreateTenant.instance.organizationId;
  741. var cf_paymentid = cf_payment_id.toString();
  742. var obj = {
  743. PaymentTypeId: 1,
  744. InvoiceId: invoice.InvoiceId,
  745. PaymentModeId: 3,
  746. RefNo: cf_paymentid,
  747. RefDate: invoice.RefDate,
  748. BankRefNo: "",
  749. BankRefDate: invoice.RefDate,
  750. BankId: invoice.BranchId,
  751. BankBranch: "",
  752. };
  753. var instance = this;
  754. instance.fileCacheHelper.loadJsFile('apps/transact/enums/enum.js', function () {
  755. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  756. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getInvoiceDetails(invoice.InvoiceId).then(function (response) {
  757. var invoiceDeatils = response.result;
  758. var OrderStatusId = Bizgaze.Apps.Transact.Enums.OrderStatus.Completed;
  759. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().updateOrdersStage(invoiceDeatils.OrderId, OrderStatusId).then(function (response) {
  760. var res = response.result;
  761. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().updateInvoiceStage(invoiceDeatils.VersionGuid, invoiceDeatils.OrderId).then(function (response) {
  762. var res = response.result;
  763. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().savePaymentbyInvoiceData(obj).then(function (response) {
  764. var resdata = response.result;
  765. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().UpdatedPaymentStage(Invoice_Id, PaymentStatus).then(function (response) {
  766. var resdata = response.result;
  767. instance.navigationHelper.hideLoading();
  768. });
  769. });
  770. });
  771. });
  772. });
  773. });
  774. });
  775. }
  776. validateUserbyPhoneorMailforNewTenant() {
  777. var instance = this;
  778. var orgId = CreateTenant.instance.organizationId;
  779. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  780. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getCustomerDetails(orgId).then(function (response) {
  781. var data = response.result;
  782. if (data != null)
  783. instance.validateUserbyPhoneorMail(data.PhoneNumber, data.EmailAddress);
  784. });
  785. });
  786. }
  787. validateUserbyPhoneorMail(phonenumber, emailaddress) {
  788. var instance = this;
  789. instance.fileCacheHelper.loadJsFile('apps/transact/managers/subscriptions/subscriptionmanager.js', function () {
  790. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getUserbyPhoneorMail(Number(phonenumber), emailaddress).then(function (response) {
  791. var res = response.result;
  792. if (response.message == "Email/Phonenumber doesn't exist") {
  793. instance.createnewtenant();
  794. }
  795. });
  796. });
  797. }
  798. createnewtenant() {
  799. var instance = this;
  800. instance.navigationHelper.showLoading();
  801. var orgId = CreateTenant.instance.organizationId;
  802. instance.fileCacheHelper.loadJsFile("apps/transact/managers/subscriptions/subscriptionmanager.js", function () {
  803. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getGeneratedPassWord().then(function (response) {
  804. CreateTenant.instance.PassWord = response.message;
  805. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().getCustomerDetails(orgId).then(function (response) {
  806. var data = response.result;
  807. CreateTenant.instance.Email = data.EmailAddress;
  808. var obj = {
  809. FirstName: data.OrganizationName,
  810. lastname: "",
  811. contactnumber: data.PhoneNumber,
  812. email: data.EmailAddress,
  813. Password: CreateTenant.instance.PassWord,
  814. TenantName: data.OrganizationName,
  815. TenantId: 0,
  816. ContactNumberConfirmed: true,
  817. EmailConfirmed: false,
  818. IndustryId: 1,
  819. IndustryTenantId: 1,
  820. IndustryName: "Test_Industry",
  821. IsDefaultData: true,
  822. };
  823. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().createNewTenant(obj).then(function (response) {
  824. var res = response.result;
  825. instance.navigationHelper.hideLoading();
  826. if (response.errors == null) {
  827. MessageHelper.Instance().showSuccess(response.message, '');
  828. var res = response.result;
  829. Bizgaze.Apps.Transact.Controls.Subscriptions.CreateTenant.Instance().sendCredentials(CreateTenant.instance.Email, CreateTenant.instance.PassWord);
  830. }
  831. else {
  832. const errDivId = instance.formEl.find('.bizgaze_FormErrorMessages').attr('id');
  833. MessageHelper.Instance().showError(response.message, errDivId);
  834. }
  835. });
  836. });
  837. });
  838. });
  839. }
  840. sendCredentials(email, password) {
  841. var instance = this;
  842. instance.fileCacheHelper.loadJsFile("apps/transact/managers/subscriptions/subscriptionmanager.js", function () {
  843. Bizgaze.Apps.Transact.Managers.Subscriptions.SubscriptionManager.Instance().sendEmailandPasswordtoRegisteruser(email, password).then(function (response) {
  844. CreateTenant.instance.PassWord = response.message;
  845. if (response.status == 0) {
  846. MessageHelper.Instance().showSuccess(response.message, '');
  847. }
  848. else {
  849. const errDivId = instance.formEl.find('.bizgaze_FormErrorMessages').attr('id');
  850. MessageHelper.Instance().showError(response.message, errDivId);
  851. }
  852. });
  853. ``;
  854. });
  855. }
  856. invoiceDownload(invoiceid) {
  857. var instance = this;
  858. let InstallAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  859. instance.fileCacheHelper.loadJsFile("apps/transact/managers/invoicemanager.js", function () {
  860. Bizgaze.Apps.Transact.Managers.InvoiceManager.Instance().getprintinvoice(invoiceid, true, false).then(function (data) {
  861. var resp = data.result;
  862. instance.printPopup(resp);
  863. }, function (response) {
  864. MessageHelper.Instance().showError(response.responseText, "");
  865. });
  866. });
  867. }
  868. DownloadInvoice() {
  869. var instance = this;
  870. let InstallAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  871. var invoiceId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstallAppId + "_invoiceid").Value);
  872. instance.fileCacheHelper.loadJsFile("apps/transact/managers/invoicemanager.js", function () {
  873. Bizgaze.Apps.Transact.Managers.InvoiceManager.Instance().getprintinvoice(invoiceId, true, false).then(function (data) {
  874. var resp = data.result;
  875. CreateTenant.Instance().printPopup(resp);
  876. }, function (response) {
  877. MessageHelper.Instance().showError(response.responseText, "");
  878. });
  879. });
  880. }
  881. printPopup(data) {
  882. var mywindow = window.open('', 'my Print', 'height=400,width=850');
  883. var content = '<html><head><title>Print</title><link rel="stylesheet" href="lib/bizgaze/print.css" /><link rel="stylesheet" href="lib/bootstrap/bootstrap-theme.min.css" /></head><body>';
  884. content += data.PrintHTML;
  885. content += "<script>print();</script>";
  886. content += '</body></html>';
  887. mywindow.document.write(content);
  888. return true;
  889. }
  890. loadControlSettings(controlsettingjson, formpropertyid) {
  891. }
  892. loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
  893. }
  894. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  895. }
  896. static Instance() {
  897. if (this.instance === undefined) {
  898. this.instance = new CreateTenant();
  899. }
  900. return this.instance;
  901. }
  902. }
  903. Subscriptions.CreateTenant = CreateTenant;
  904. })(Subscriptions = Controls.Subscriptions || (Controls.Subscriptions = {}));
  905. })(Controls = Transact.Controls || (Transact.Controls = {}));
  906. })(Transact = Apps.Transact || (Apps.Transact = {}));
  907. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  908. })(Bizgaze || (Bizgaze = {}));