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

dataapilog.js 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  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 serviceIntegratorIds = 0;
  11. var Unibase;
  12. (function (Unibase) {
  13. let Platform;
  14. (function (Platform) {
  15. let DataApis;
  16. (function (DataApis) {
  17. let Components;
  18. (function (Components) {
  19. class DataApiLog extends Platform.Core.BaseComponent {
  20. constructor() {
  21. super();
  22. this.pageIndex = 0;
  23. }
  24. jsFiles() {
  25. return ["platform/integrations/managers/integrationmanager.js", "platform/dataapis/managers/dataapimanager.js", "libs/jquery/pagination/jquery.pagination.js"];
  26. }
  27. cssFiles() {
  28. return [];
  29. }
  30. html(id, containerid) {
  31. return '<div id="Unibase_dataapilog" default="" data-validate="parsley" data-isdynamic="false"><div class="b-b bg-white header log-Header"><strong class="text-dark">Data Api Log</strong><div class="b-b bg-white d-flex flex-column" id="div_Listsearch"><label class="mb-2">Remote PkId</label><input type="text" value="" data-isdynamic="false" placeholder="Search" data-placeholder="Search" data-label="Search" id="txtSearchItem"></div><div id="log_item" class="flex-column row"><label >Status :</label><div class="m-1"><select id="txtAutocomplete_log" placeholder="Select" data-placeholder="Select" data-label="Log"><option class="primary-account font-10" value="1">All</option><option class="secondary-account font-10" value="0">Success</option><option class="secondary-account font-10" value="2">Failed</option></select><input type="hidden" value="0" id="hfAutocomplete_log"></div></div><div class="d-flex flex-column" id="div_fromDate" data-dateinitialized="false"><label class="mt-5 mb-0">From Date :</label><div class="align-items-center d-flex"><input type="date" id="txt_fromDate" min="1980-01-01" class="form-control floating-label-control datepicker-input pl-0 w-150p" data-date-format="dd/MM/yyyy" data-isdynamic="false" placeholder="From Date *" data-placeholder="dd/mm/yyyy" data-label="From Date"><div id="clr_fdate"><i class="fa fa-close"></i></div></div><input type="hidden" id="hf_fromDate"></div><div class="d-flex flex-column" id="div_toDate"><label class="mt-5 mb-0">To Date :</label><div class="floating-label-from-group align-items-center d-flex"><input type="date" id="txt_toDate" class="form-control floating-label-control datepicker-input pl-0 w-150p" data-date-format="dd/MM/yyyy" data-isdynamic="false" placeholder="To Date *" data-placeholder="dd/mm/yyyy" data-label="To Date"><div id="clr_tdate"><i class="fa fa-close"></i></div></div><input type="hidden" id="hf_toDate"></div><a href="javascript:;" id="btnApply" class="btn btn-primary btn-sm">Apply</a></div><div data-simplebar class="simple-scroll-bar scrollable sync-log-body"><div id="Unibase_ValidationSummary" class="clear"></div><div class="row col-sm-12"><strong class="col-sm-4">Date</strong><strong class="col-sm-4">Remote PkId</strong><strong class="col-sm-4">Status</strong></div><div><ul class="divlog list-group"></ul><span id="totalcount">Total Count :<a href="javascript:; "id="getcount"></a></span></div><div id = "ItemsListPagination" class="pagination custom-pagination pagination-rounded pull-right"> </div></div><div id="div_LogFooter" class="bg-white footer"><a class="btn btn-light btn-sm btn-center mr-auto btn-close" id="btnClose">Close</a></div></div>';
  32. }
  33. init(serviceIntegratorId) {
  34. return __awaiter(this, void 0, void 0, function* () {
  35. Unibase.Platform.DataApis.Components.DataApiLog.serviceIntegratorId = serviceIntegratorId;
  36. this.navigationHelper.popup(0, '', Unibase.Platform.DataApis.Components.DataApiLog.Instance(), null, Platform.Helpers.Size.Large);
  37. Unibase.Platform.DataApis.Components.DataApiLog.Instance().loadApiLog(serviceIntegratorId);
  38. serviceIntegratorIds = serviceIntegratorId;
  39. });
  40. }
  41. load(id, containerid, callback) {
  42. $("#btnApply").click(function () {
  43. var ids = serviceIntegratorIds;
  44. Unibase.Platform.DataApis.Components.DataApiLog.Instance().loadApiLog(ids);
  45. });
  46. $("#clr_fdate").click(function () {
  47. $("#txt_fromDate").val("");
  48. });
  49. $("#clr_tdate").click(function () {
  50. $("#txt_toDate").val("");
  51. });
  52. var timer;
  53. $("#txtSearchItem").on('keyup', () => {
  54. var delay = 1000;
  55. window.clearTimeout(timer);
  56. timer = window.setTimeout(() => {
  57. var searchtext = $("#txtSearchItem").val();
  58. if (searchtext != "") {
  59. var ids = serviceIntegratorIds;
  60. Unibase.Platform.DataApis.Components.DataApiLog.Instance().loadApiLog(ids);
  61. }
  62. else {
  63. var ids = serviceIntegratorIds;
  64. Unibase.Platform.DataApis.Components.DataApiLog.Instance().loadApiLog(ids);
  65. }
  66. }, delay);
  67. });
  68. }
  69. loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
  70. }
  71. loadPagination(totalRecords, serviceIntegratorId) {
  72. var instance = this;
  73. let elem = $('#ItemsListPagination');
  74. elem.pagination(totalRecords, 20, {
  75. items_per_page: 20,
  76. callback: function (page, component) {
  77. instance.pageIndex = page;
  78. instance.loadApiLog(serviceIntegratorId);
  79. }, current_page: instance.pageIndex
  80. });
  81. }
  82. loadApiLog(serviceIntegratorId) {
  83. let datetimeIns = Unibase.Platform.Helpers.DateTimeHelper.Instance();
  84. var instance = this;
  85. var page = instance.pageIndex;
  86. var rows = 20;
  87. var fromdate = $("#txt_fromDate").val();
  88. var todate = $("#txt_toDate").val();
  89. var searchtext = $("#txtSearchItem").val();
  90. var statuscode = $("#txtAutocomplete_log").val();
  91. var postData = {
  92. Searchtext: searchtext,
  93. RefId: serviceIntegratorId,
  94. Page: page,
  95. Rows: rows,
  96. FromDate: fromdate,
  97. ToDate: todate,
  98. StatusCode: statuscode,
  99. };
  100. if (($("#txt_fromDate").val() == "" && $("#txt_toDate").val() != "" && $("#txt_toDate").val() != undefined)) {
  101. MessageHelper.Instance().showError("Please select FromDate", "Unibase_ValidationSummary");
  102. }
  103. else if ($("#txt_fromDate").val() != "" && $("#txt_fromDate").val() != undefined && $("#txt_toDate").val() == "") {
  104. MessageHelper.Instance().showError("Please select ToDate", "Unibase_ValidationSummary");
  105. }
  106. else if (($("#txt_fromDate").val() > $("#txt_toDate").val())) {
  107. MessageHelper.Instance().showError("ToDate is lessthan FromDate", "Unibase_ValidationSummary");
  108. }
  109. else {
  110. Unibase.Platform.DataApis.Manangers.DataApiManager.Instance().getApiLogItemsfilter(postData).then(function (response) {
  111. var data = JSON.parse(response.result);
  112. response.result = JSON.parse(response.result);
  113. if (response.result.length == 0) {
  114. $(".divlog").hide();
  115. $("#totalcount").hide();
  116. }
  117. else {
  118. $(".divlog").show();
  119. $("#totalcount").show();
  120. var html = "";
  121. for (var i = 0; i < response.result.length; i++) {
  122. var data = response.result[i];
  123. var date = Unibase.Platform.Helpers.DateTimeHelper.Instance().FormatDateTime(data.createddate);
  124. html += '<li class="list-group-item apilog-item group-item_' + data.ApiLogItemId + '">' +
  125. '<div class="">' +
  126. '<a href="#sync-' + data.ApiLogItemId + '" data-parent="divTasks" data-toggle="collapse" class="accordion-toggle collapsed" onclick="javascript:Unibase.Platform.DataApis.Components.DataApiLog.Instance().loadApiLogItem(\'' + data.ApiLogItemId + '\');"> ' +
  127. '<i class="indicator fa fa-chevron-right m-t-xs pull-right btn"></i>' +
  128. '<div class="row"><span class="col-sm-4">' + date + '</span> <span class="col-sm-4">' + data.RemotePkId + '</span> <span class="col-sm-4">' + data.Status + '</span>' +
  129. '</div>' +
  130. '</a>' +
  131. '<div class="panel-collapse collapse" id="sync-' + data.ApiLogItemId + '" style="height: 0px;">' +
  132. '<ul id="sync-list_' + data.ApiLogItemId + '" class="list-group no-radius m-b-none list-group-lg no-border m-t sync-list">';
  133. html += '</ul></div></div></li>';
  134. }
  135. }
  136. if (response.totalRecords > 20) {
  137. $("#ItemsListPagination").removeClass("hidden");
  138. instance.loadPagination(response.totalRecords, serviceIntegratorId);
  139. }
  140. else {
  141. $("#ItemsListPagination").addClass("hidden");
  142. }
  143. $('#getcount').text(response.totalRecords);
  144. $("#lblintegratelogRecords").text(response.result.length);
  145. $(".divlog").html(html);
  146. });
  147. }
  148. }
  149. loadApiLogItem(apiLogItemId) {
  150. let instance = this;
  151. Unibase.Platform.DataApis.Manangers.DataApiManager.Instance().getApiLogItem(apiLogItemId).then(function (response) {
  152. var date = Unibase.Platform.Helpers.DateTimeHelper.Instance().FormatDateTime(response.result.createddate);
  153. var innerhtml = '<li class="list-group-item bg-white border-0 apilog-item_' + response.result.ApiLogItemId + ' " style="background-color:unset !important">' +
  154. '<div class="row"><strong class="col-sm-2">Api Name</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.ApiName + '</span></div>' +
  155. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Request Url</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.RequestUrl + '</span></div>' +
  156. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Remote PkId</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.RemotePkId + '</span></div>' +
  157. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Pk Id</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.PkId + '</span></div>' +
  158. '<div class="text-black row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Status</strong><span class="col-sm-10">' + response.result.Status + '</span></div>' +
  159. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Message</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.ExceptionMessage + '</span></div>' +
  160. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Created Date</strong><span class="col-sm-10">' + date + '</span></div>' +
  161. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Inner Exception</strong><span style="word-wrap: break-word;" class="col-sm-10">' + response.result.InnerException + '</span></div>' +
  162. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Stack Trace</strong><span style="word-wrap: break-word;" class="col-sm-10 d-flex flex-column"><span data-integrations="4lines">' + response.result.StackTrace + '</span>';
  163. if (response.result.StackTrace != null && response.result.StackTrace != '' && response.result.StackTrace != undefined) {
  164. innerhtml += `<span class="font-14 font-weight-400 py-1" data-copy="true" data-copy2stacktrace="stacktrace"><span class="d-none" data-copy2stacktrace="true">${response.result.StackTrace}</span><span title='${response.result.StackTrace}'><i class="las la-copy"></i></span></span>`;
  165. }
  166. if (response.result.Headers != null && response.result.Headers != '' && response.result.Headers != undefined) {
  167. innerhtml += '</span></div > ' +
  168. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Request Header</strong><span style="word-wrap: break-word;" class="col-sm-10"><span data-integrations="4lines">' + response.result.Headers + '</span>';
  169. if (response.result.Headers != null && response.result.Headers != '' && response.result.Headers != undefined) {
  170. innerhtml += `<span class="font-14 font-weight-400 py-1" data-copy="true" data-copy2dropdownheader="dropdownheader"><span class="d-none" data-copy2dropdownheader="true">${response.result.Headers}</span><span title='${response.result.Headers}'><i class="las la-copy"></i></span></span>`;
  171. }
  172. }
  173. innerhtml += '</span></div>' +
  174. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Response Object</strong><span style="word-wrap: break-word;" class="col-sm-10"><span data-integrations="4lines">' + response.result.ResponseObject + '</span>';
  175. if (response.result.ResponseObject != null && response.result.ResponseObject != '' && response.result.ResponseObject != undefined) {
  176. innerhtml += `<span class="font-14 font-weight-400 py-1" data-copy="true" data-copy2dropdownRes="dropdownres"><span class="d-none" data-copy2dropdownres="true">${response.result.ResponseObject}</span><span title='${response.result.ResponseObject}'><i class="las la-copy"></i></span></span>`;
  177. }
  178. innerhtml += '</span></div > ' +
  179. '<div class="row" style="overflow-wrap: break-word;"><strong class="col-sm-2">Request Object</strong><span style="word-wrap: break-word;" class="col-sm-10"><span data-integrations="4lines">' + response.result.RequestObject + '</span>';
  180. if (response.result.RequestObject != null && response.result.RequestObject != '' && response.result.RequestObject != undefined) {
  181. innerhtml += `<span class="font-14 font-weight-400 py-1" data-copy="true" data-copy2dropdownReq="dropdownreq"><span class="d-none" data-copy2dropdownreq="true">${response.result.RequestObject}</span><span title='${response.result.RequestObject}'><i class="las la-copy"></i></span></span>`;
  182. }
  183. innerhtml += '</span ></div > ' +
  184. '</li>';
  185. $("#sync-list_" + apiLogItemId).html(innerhtml);
  186. let copy = ['stacktrace', 'dropdownheader', 'dropdownres', 'dropdownreq'];
  187. copy.forEach(function (element, index) {
  188. instance.copyFuntionaLity(element);
  189. });
  190. });
  191. }
  192. copyFuntionaLity(attr1) {
  193. $(`[data-copy2${attr1}="${attr1}"]`).on('click', function () {
  194. let element = $(this);
  195. let obj = $(this).find(`[data-copy2${attr1}="true"]`).text();
  196. eval(`navigator.clipboard.writeText(obj);
  197. $('[data-copy="true"]').removeClass('text-danger')
  198. element.addClass('text-danger')
  199. `);
  200. });
  201. }
  202. refreshFailedApiLog(dataApiLogId) {
  203. Unibase.Platform.DataApis.Manangers.DataApiManager.Instance().executeFailedApiLog(dataApiLogId).then(function (response) {
  204. if (response.status == 0) {
  205. MessageHelper.Instance().showSuccess(response.message, "");
  206. }
  207. else {
  208. MessageHelper.Instance().showSuccess(response.message, "");
  209. }
  210. });
  211. }
  212. refreshFailedApiQueue(apiQueueId) {
  213. let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  214. let html = '<div class="skelton_loader biz-secondary-color position-absolute w-100 z-index-10">';
  215. html += Unibase.Themes.Compact.Components.Nav_Template.Instance().skelTonListPage();
  216. html += '</div>';
  217. $('.BindData_' + VisibleContainerId).before(html);
  218. $('.BindData_' + VisibleContainerId).addClass('hidden');
  219. Unibase.Platform.DataApis.Manangers.DataApiManager.Instance().executeFailedApiQueue(apiQueueId).then(function (response) {
  220. if (response.status == 0) {
  221. MessageHelper.Instance().showSuccess(response.message, "");
  222. }
  223. else {
  224. MessageHelper.Instance().showSuccess(response.message, "");
  225. }
  226. $('.skelton_loader').remove();
  227. $('.BindData_' + VisibleContainerId).removeClass('hidden');
  228. });
  229. }
  230. static Instance() {
  231. return new DataApiLog();
  232. }
  233. }
  234. DataApiLog.serviceIntegratorId = 0;
  235. Components.DataApiLog = DataApiLog;
  236. })(Components = DataApis.Components || (DataApis.Components = {}));
  237. })(DataApis = Platform.DataApis || (Platform.DataApis = {}));
  238. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  239. })(Unibase || (Unibase = {}));