1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- var __awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},Unibase;(function(n){let t;(function(t){let i;(function(i){let r;(function(r){class u extends t.Core.BaseComponent{constructor(){super();this.IsTenure=!1;this.CommonFilter=[];this.Filter=[];this.subreportpagination=[];this._lists_default_index=0;this.IsSelectable=!1;this.IdColumn=null;this.TextColumn=null;this.dataListId=0;this.subreportResponse="";this.widgetHeightNum=n.Themes.Compact.Components.Index.Instance().widgetHeightNum;this.isTouchScreen=n.Themes.Compact.Components.Index.Instance().isTouchScreen;this.reportManager=i.Managers.ReportManager.Instance();this._reportBuilder=i.Reports.ReportBuilder.Instance();this._reportViewer=i.Components.ReportViewer.Instance();this.ListSearchTerm=""}loadView(t,r,u,f,e,o,s,h,c){var l=this,a,v;let y=l._reportViewer.getReportViewerInstance(o);let p=0;o.indexOf("div_portletwidget")>-1?(p=Number(o.split("_")[2]),o.indexOf("viewall")==-1&&(l._reportViewer.IsPortletWidget=!0)):($(".report-search").addClass("d-sm-flex"),$(".search_icon").removeClass("hidden"));l._reportViewer.toggleGroupByAndShowAllBtn(o,!0);s.InstalledAppId!=0&&(n.Platform.Analytics.Reports.ReportBuilder.Instance().appConfigType=n.Platform.Apps.Enums.AppConfigeType.Details);a="libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css";v=["libs/jquery/ui/jquery-ui.min.js","libs/tabulator-tables/js/tabulator.min.js","platform/analytics/infos/reportbuilder/reportbuilderinfo.js","platform/analytics/managers/reportmanager.js","platform/analytics/components/reportbuilder/reportbuilder.js","platform/datasources/enums/datasource.js","platform/analytics/enums/aggregationtype.js","platform/analytics/enums/datatype.js"];l.fileCacheHelper.loadCssFile(a,function(){l.fileCacheHelper.loadJsFiles(v,function(){return __awaiter(this,void 0,void 0,function*(){if(y.pivotTypeId==i.Reports.Enums.PivotType.PivotTable)return l.loadPivotTable(r,o,t);yield l.initTable(t,o,r,null,c);n.Platform.Helpers.NavigationHelper.Instance().hideLoading()})})})}initTable(t,r,u,f,e){return __awaiter(this,void 0,void 0,function*(){var o=this,nt,ut,l,a,g,b,v;let s=o._reportViewer.getReportViewerInstance(r);let tt=0;const k=t.result.ReportInfo.IsPivotTree;var it=function(t){var i="",r,u;return $("#"+n.Platform.Analytics.Viewers.TableViewer.Instance().AutoCompleteElement).val()==t.getRow().getData()[n.Platform.Analytics.Viewers.TableViewer.Instance().IdColumn]&&(i=" checked"),r=t.getRow().getData()[n.Platform.Analytics.Viewers.TableViewer.Instance().TextColumn],u=t.getRow().getData()[n.Platform.Analytics.Viewers.TableViewer.Instance().IdColumn],'<input type="radio" name="select" onclick="Unibase.Forms.Controls.AutoComplete.Instance().reportOnClick(\''+r+"',"+u+",'"+n.Platform.Analytics.Viewers.TableViewer.Instance().AutoCompleteElement+"');\" "+i+" />"},rt=[],w=function(n){if(!k){var t=n.getRow(),i=t.getPosition(!1);return i+1}},h=t.result.ReportJsonData,c=t.result.ReportJsonData.Result;let et=n.Platform.Membership.Infos.Identity.getCurrentUser();let y=$("#Viewer_"+r),p="100%",ft=parseInt(y.css("margin-left"))+parseInt(y.css("margin-right"));if(y.css({"max-width":`calc(100% - ${ft}px)`,"max-height":""}),o._reportViewer.IsPortletWidget){let n=o.widgetHeightNum;p=n;y.css({overflow:"auto",height:"100%","max-height":`${n}px`})}if(r.includes("div_dashboardportletwidget")){let n=$(`#${r}`).siblings(".hf_portletwidgetheight").val();n=parseInt(n);p=n<=0?"100%":n+48}l=t.result.ReportInfo.ReportColumns;l=l.filter(n=>n.Isvisible==!0);let d=l.filter(function(n){return n.IsPivotColumn===!0});if((d.length>0||t.result.ReportInfo.IsPivotTree)&&(o._reportViewer.ispivottable=!0),o._reportViewer.table=new Tabulator("#Viewer_"+r,{placeholder:"<div class='alert alert-primary text-center mb-0 border-0 w-100 font-14 rounded-0'>No data available<\/div>",downloadDataFormatter:function(t){let i=this,r=n.Platform.Analytics.Viewers.TableViewer.Instance().exportdata,u=eval("data.data=JSON.parse(expres.Data)");return t},columnCalcs:"both",dataTree:o._reportViewer.ispivottable,dataTreeStartExpanded:t.result.ReportInfo.IsTreeExpand,dataTreeRowExpanded:function(i,f){if(!t.result.ReportInfo.IsTreeExpand){o._reportBuilder.datatreeIndex_Width=o._reportBuilder.datatreeIndex_Width?o._reportBuilder.datatreeIndex_Width:70;o._reportBuilder.datatreeIndex_Width/70<=f&&(o._reportBuilder.datatreeIndex_Width=o._reportBuilder.datatreeIndex_Width+70);n.Platform.Analytics.Reports.ReportBuilder.Instance().tabulatorColumns[0].width=o._reportBuilder.datatreeIndex_Width;n.Platform.Analytics.Reports.ReportBuilder.Instance().tabulatorColumns[0].minWidth=o._reportBuilder.datatreeIndex_Width;const c=eval("row.getData()."+o._reportViewer.pivotparentcolumn[0].ReportColumnName+"");let{fromDate:t,toDate:h}=o._reportViewer.checkForReportDatePicker(u,r);s.fromDate&&s.toDate&&(t=s.fromDate,h=s.toDate);var e={ReportId:u,page:1,pageSize:0,IsPivot:!0,PivotId:Number(c),FromDate:t,ToDate:h,IsJson:!0,InputParameters:s.inputParameters,Filter:s.dynamicFilters};o._reportBuilder.dataTreeRowExpandedColumn.push({Level:f});$.when(o.reportManager.getReportViewerData(e)).done(function(n){let r=JSON.parse(n.result);var t=JSON.parse(r.Data),u=t.filter(n=>n.haschild==!0).forEach(n=>n._children=[]);return i.getData()._children=t,i.update(i.getData())})}},cellClick:function(n,t){var f,e;if(o.subreportResponse&&o.subreportResponse.length){let i=t._cell.column.field,f=o.subreportResponse.find(n=>n.AliasName==i);if(f)return o.tableCellClick(n,t,tt,u,o.subreportResponse,r)}f=t.getRow();let i=s.ViewerSettings.OnClick.trim(),h=s.ViewerSettings.InstalledAppId;if(i){i=i.replace("{{appinstalledappid}}",h.toString());let n=f.getData();e=Handlebars.compile(i);i=e(n);eval(i)}},ajaxProgressiveLoadScrollMargin:500,ajaxError:function(t,i){let f;f=eval("postmethod1(parameters)");var e=n.Platform.Membership.Infos.Identity.getCurrentUser();f.then(function(n){var f=JSON.parse(JSON.parse(n.result).Result.Data);let t=new PaginationObject;t.last_page=1;t.data=f;i.setData(t.data);$("#Viewer_pagintion"+r).html(Math.ceil(JSON.parse(JSON.parse(n.result).Result.Data).length)+" of "+JSON.parse(n.result).Result.Count);JSON.parse(n.result).Result.Count>20&&($(i.element.childNodes[1]).append(`<div class="text-center text-white mt-10-removed mb-20-removed my-2 bg-white-removed"> <a class="btn btn-success m-b btn-list-load-more btn-list-load-more_${r} btncount_2" id="btn-list-load-more_${r}">More</a></div>`),$(".btn-list-load-more_"+r).unbind().click(function(){let e=$("#"+r).find("#ListSearch").val();var t=i.element.childNodes[1].lastChild.lastChild.classList[5].match(/\d+/g).map(Number)[0];let h=o._reportViewer.isIdentityFilter(s.dynamicFilters),n=new Report;n.ReportId=Number(u);n.page=Number(t);n.Filter=s.dynamicFilters;n.DateFilter=s.dateFilters;n.InputParameters=s.inputParameters;n.FilterId=s.filterId;n.pageSize=o._reportViewer.PageSize;n.SearchTerm=e?$("#"+r).find("#ListSearch").val().toString():null;n.IsDynamicFilterApplied=h;let f;f=eval("postmethod1(parameters)");f.then(function(n){i.addData(JSON.parse(n.result).Result.Data,!1);i.element.childNodes[1].lastChild.lastChild.classList.remove("btncount_"+t+"");i.element.childNodes[1].lastChild.lastChild.classList.add("btncount_"+(t+1)+"");let u=i.getDataCount();u>=JSON.parse(n.result).Result.Count?(JSON.parse(n.result).Result.Count!=0&&$("#btn-list-load-more_"+r).addClass("hidden"),$("#Viewer_pagintion"+r).html(JSON.parse(n.result).Result.Count+" of "+JSON.parse(n.result).Result.Count)):$("#Viewer_pagintion"+r).html(Math.ceil(u)+" of "+JSON.parse(n.result).Result.Count)})}))})},ajaxResponse:function(n,t,i){var e={},s=[],u;let f=new PaginationObject;if(i.length>0){if(u=JSON.parse(JSON.parse(i.result).Result.Data),o._reportViewer.ispivottable==!0){for(let n=0;n<u.length;n++)e=u[n],u[n].haschild==!0&&(e._children=[]),s.push(e);f.data=s}else f.data=o.IsTenure==!0?u:u;let n=o._reportViewer.table.getDataCount()+JSON.parse(JSON.parse(i.result).Result.Data).length;return $("#Viewer_pagintion"+r).html(Math.ceil(n)+" of "+JSON.parse(i.result).Result.Count),f.last_page=Math.ceil(JSON.parse(i.result).Result.Count/20),f}},height:p,layout:"fitDataFill",resizableColumns:o.isTouchScreen?"header":!0,columns:[{title:"",formatter:w,frozen:!0,minWidth:40,width:40}],rowTap:function(n,t){let i=$(t.getTable().element).attr("id").replace(/Viewer_/g,"");$(".portletwidget-item").attr("data-mobileSwipe","false");$("#"+i).parents(".portletwidget-item").attr("data-mobileSwipe","true")},dataSorting:function(n){var t,f,i;if(n.length>0){if(t=[],s.sortColumn)if(f=typeof s.sortColumn=="string"?JSON.parse(s.sortColumn):s.sortColumn,i=f.find(t=>t.Name==n[0].field),i){let r=i.Order.toLowerCase()=="asc"?"Desc":"Asc";t.push({Order:r,Name:n[0].field})}else t.push({Order:n[0].dir,Name:n[0].field});else t.push({Order:n[0].dir,Name:n[0].field});s.sortColumn=t;o._reportViewer.getReportData(u,r,e,null)}},virtualDom:s.virtualDom,layoutColumnsOnNewData:!0,dataLoaded:n=>{n.length&&s.js&&this.bindWidgetConfigurations(r,n),o.setTableHolderHeight(r)}}),s.table=o._reportViewer.table,c.Data==""&&$(".tabulator-loader").remove(),f!=null)if(h.TotalRecords==0)$("#Viewer_"+r).css("height","100");else{$("#Viewer_"+r).css("height","88%");let n="67%";window.innerWidth<=575&&(n="100%");$("#Viewer_"+r).next(".modal-footer").css({position:"fixed",bottom:"0px",width:n})}if(a=0,c.Data!=""&&(a=JSON.parse(c.Data).length,a>=5&&o._reportViewer.IsPortletWidget)){const n=o._reportViewer.getViewAllHtml(r,"mobile",u);$(`#Viewer_${r}`).find(".tabulator-tableHolder").append(n);$(`#lnkViewAll_${r}`).removeClass("hidden")}if(o._reportViewer.IsPortletWidget){if($("#WidgetTitleLink_"+r).addClass("widget-title-link"),$("#ViewerHeader_"+r).attr("data-toggle","collapse").attr("data-target","#Viewer_"+r),$("#Viewer_"+r).addClass("collapse"),e!="undefined"&&e!=null&&e!=0&&e.Data.CssProperty!=null&&e.Data.CssProperty!=undefined&&e.Data.CssProperty!=""&&JSON.parse(e.Data.CssProperty)[0].ReportCollapase!=undefined&&s.ViewerSettings.defaultViewerTypeId==n.Platform.Analytics.Reports.Enums.ReportType.Table){if(e.Data.PortletWidgetCss==undefined)if(JSON.parse(e.Data.CssProperty)[0].ReportCollapase==!0)$("#Viewer_"+r).addClass("show"),$("#ViewerHeader_"+r).attr("aria-expanded","true");else{$("#Viewer_"+r).removeClass("show");$("#ViewerHeader_"+r).attr("aria-expanded","false");$("#Viewer_"+r).on("shown.bs.collapse",function(){s.table&&s.table.redraw(!0)})}if(e.Data.PortletWidgetCss!=undefined)if(e.Data.portletWidgetIsCollapse==!0)$("#Viewer_"+r).addClass("show"),$("#ViewerHeader_"+r).attr("aria-expanded","true");else{$("#Viewer_"+r).removeClass("show");$("#ViewerHeader_"+r).attr("aria-expanded","false");$(`#Viewer_${r}`).on("shown.bs.collapse",function(){s.table&&s.table.redraw(!0)})}$("#Viewer_"+r).attr("data-iscollapseapplied","true")}let t=o.widgetHeightNum-Math.abs($("#Viewer_"+r).find(".tabulator-header").height());if($("#Viewer_"+r).css({overflow:"auto",height:"100%","max-height":""+t+"px"}),o._reportViewer.appendWidgetNoDataIcon(c,r),c.Data==="")$("#Viewer_"+r).off("shown.bs.collapse").on("shown.bs.collapse",function(){s.table.redraw(!0)})}else{g="#Viewer_"+r;b=g.includes("div_dashboardportletwidget");let n="";const i=o._reportViewer.tabMode&&(!b||o.navigationHelper.isReportPopup(r));n=i&&c.Data!=""?`<div class="text-center text-white bg-white-removed report-viewer-footer ${i?"footer-count-wrap":""}"><div class="reportCountWrap_${r} text-right report-count-wrap font-14"><span class="biz-highlight-bg-color" id="visibleReportCountWrap_${r}"><span id="visibleReportCount_${r}">0</span> of </span><a href="javascript:;" class="rpt-Count${r} biz-highlight-bg-color text-underline" onclick="Unibase.Platform.Analytics.Components.ReportViewer.Instance().getCount(${s.ReportId}, ${s.InstalledAppId},'${r}');">Get count</a><span class="biz-highlight-bg-color hidden" id="Viewer_pagintion${r}">0 of 0</span>
- </div>`:'<div class="text-center text-white bg-white-removed report-viewer-footer">';const u=`<div class="btn-group btn-group-sm btn-list-load-more more-btn-group" id="btn-list-load-more_${r}">
- <a class="btn btn-outline-primary load-more-list-btn btncount_2 rounded-left" id="loadMoreListBtn_${r}">More</a>
- <button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split rounded-right px-10"
- data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="sr-only">Toggle Dropdown</span>
- </button>
- <div class="dropdown-menu p-1" id="moreBtnDpMenu_${r}">
- <a class="dropdown-item d-flex align-items-center c-gap-5 showall-link" href="javascript:;" id="showAllLink_${r}" onclick="Unibase.Platform.Analytics.Components.ReportViewer.Instance().showAllData(${s.ReportId}, ${s.InstalledAppId},'${r}');">Next <span class="showall-count" id="showAllCount_${r}" title="Change count" data-tooltip="true">500</span><input class="showall-input w-100 ml-1 hidden" id="showAllInput_${r}" pattern="[0-9]+"></a>
- </div>
- </div>`;b==!0?(h.TotalRecords>5||!t.result.ReportInfo.IsEnableCount)&&(n+=u):(h.TotalRecords>15||!t.result.ReportInfo.IsEnableCount)&&(n+=u);n+="<\/div>";$(o._reportViewer.table.element).find(".tabulator-tableHolder").append(n);o._reportViewer.bindShowAllCountChangeEvents(r)}if(s.reportDatalength=a,$(`#visibleReportCount_${r}`).text(a),$("#Viewer_pagintion"+r).html(a+" of "+h.TotalRecords),(r.includes("div_dashboardportletwidget")||o._reportViewer.IsPortletWidget)&&!o.navigationHelper.isReportPopup(r)||$("#Viewer_"+r).find(".tabulator-tableHolder").addClass("pb-10"),h.TotalRecords==0?h.Result.Data==""?$("#btn-list-load-more_"+r).addClass("hidden"):o._reportViewer.PageSize!=JSON.parse(h.Result.Data).length||t.result.ReportInfo.IsEnableCount?(JSON.parse(h.Result.Data).length<o._reportViewer.PageSize||JSON.parse(h.Result.Data).length==0)&&$("#btn-list-load-more_"+r).addClass("hidden"):$("#btn-list-load-more_"+r).removeClass("hidden"):(h.Result.Data!=""&&t.result.ReportJsonData.TotalRecords==JSON.parse(h.Result.Data).length&&$("#btn-list-load-more_"+r).addClass("hidden"),$(`#visibleReportCountWrap_${r}`).addClass("d-none"),$(`.reportCountWrap_${r} .rpt-Count${r}`).addClass("hidden"),$(`#Viewer_pagintion${r}`).removeClass("hidden")),s.isShowAll&&h.Result.Data!=""&&JSON.parse(h.Result.Data).length<s.PageSize&&$("#btn-list-load-more_"+r).addClass("hidden"),$(`#loadMoreListBtn_${r}`).off("click").click(function(){o.moreButtonClick(r,u)}),v=[],ut=l,n.Platform.Analytics.Viewers.TableViewer.Instance().IsSelectable)v.push({title:"",formatter:w,frozen:!0,minWidth:70,width:70},{title:"",formatter:it,frozen:!0,minWidth:40,width:40});else{let n="right";k&&(n="center");v.push({title:"",formatter:w,minWidth:40,hozAlign:n,headerHozAlign:n})}if(s.pivotTypeId!=i.Reports.Enums.PivotType.Pivot&&t.result.ReportInfo.PivotTypeId!=i.Reports.Enums.PivotType.PivotTreeView){let n=o.setColumns(t,v);n&&n.length&&(c.Data=n)}if(o._reportViewer.table.redraw(!0),s.pivotTypeId==0||t.result.ReportInfo.IsTreeExpand)if(t.result.ReportInfo.IsTreeExpand){let n=o.getTreeViewData(t);yield s.table.setData(n).then(()=>__awaiter(this,void 0,void 0,function*(){o._reportViewer.table.redraw(!0);yield o.setGroupBy(s,r,n)}))}else yield s.table.setData(c.Data).then(()=>__awaiter(this,void 0,void 0,function*(){o._reportViewer.table.redraw(!0);yield o.setGroupBy(s,r,c.Data?JSON.parse(c.Data):[])}));else l.forEach(n=>n.IsPivotAggrColumn||v.push({title:n.DisplayText,field:n.AliasName.toLowerCase()})),o.pivotReport(r,t,c,t.result.ReportInfo.ReportColumns,v,d,u),yield o._reportViewer.table.setData(c.Data).then(n=>__awaiter(this,void 0,void 0,function*(){o._reportViewer.table.redraw(!0);yield o.setGroupBy(s,r,n)}));return n.Platform.Analytics.Viewers.TableViewer.Instance().table=o._reportViewer.table,s.table=o._reportViewer.table,o.reportManager.getSubReports(u).then(function(t){return __awaiter(this,void 0,void 0,function*(){var i,r,f;t.status==n.Data.Status.Success&&(i=t.result,o.subreportResponse=i,nt=i,i.length>0&&(r=i.find(n=>n.RowClick==!0),r&&r.RowClick&&(f=function(n){return $(n.getElement()).addClass("clickable-cell"),"<i class='fa fa-plus'><\/i>"},o._reportViewer.table.addColumn({formatter:f,width:5,title:"",headerSort:!1},!0)),i.forEach(function(n){n.AliasName&&o._reportViewer.table.getColumn(n.AliasName)&&o._reportViewer.table.getColumn(n.AliasName).getCells().forEach(function(n){$(n.getElement()).addClass("text-underline clickable-cell")})})),yield o.reportManager.getColumns(u).then(function(n){var t,i;if(o._reportViewer.pivotparentcolumn=n.result.filter(function(n){return n.IsPivotParentColumn===!0}),t=n.result.filter(n=>n.GroupByCategory==!0),t.length!=0)for(i=0;i<t.length;i++)rt.push(t[i].ReportColumnName)}))})}),o.tabulatorColumnHeaderMenu(r,l),h.Result.Data==""&&o._reportViewer.table.redraw(!0),s.tblGroupedCols&&s.tblGroupedCols.length>0&&s.tblGroupedCols.forEach(function(n){s.table.hideColumn(n)}),o._reportViewer.table})}setTableHolderHeight(n){let t=0;const i=$("#Viewer_"+n);t+=i.find(".tabulator-header").prop("scrollHeight");t+=i.find(".tabulator-footer").outerHeight(!0)||0;i.find(".tabulator-tableHolder").addClass("h-100").css({"max-height":`calc(100% - ${t}px)`})}setColumnDpMenuPosition(n,t,i){n.stopPropagation();const r=$(n.currentTarget);if(r.siblings(".column-dp-menu").hasClass("show"))r.siblings(".column-dp-menu").removeClass("show");else{$("#Viewer_"+t+" .tabulator-header").find(".column-dp-menu.show").removeClass("show");const n=r.offset().left-$("#Viewer_"+t).offset().left,u=$("#Viewer_"+t+" .tabulator-header").outerHeight(!0);r.siblings(".dropdown-menu_"+i).css({position:"fixed",top:u,left:n}).addClass("show").attr("onclick","event.stopPropagation();");$("#Viewer_"+t).width()<r.offset().left+200?$(".dropdown-menu_"+i).find(".sub-dropdown-menu .dropdown-menu").addClass("open-left-side"):$(".dropdown-menu_"+i).find(".sub-dropdown-menu .dropdown-menu").addClass("open-right-side")}}tabulatorColumnHeaderMenu(n,t){var u,i;const f=this,r=t;let e=t[0].ReportId;for(u=r.length,i=0;i<u;i++){let u=r[i].ReportColumnId,t=r[i].AliasName.replace(" ",""),e=r[i].ColumnName,f=`<div class="dropdown column-dropdown"><span class="dropdown-toggle no-caret column-dpmenu-icon" onClick="Unibase.Platform.Analytics.Viewers.TableViewer.Instance().setColumnDpMenuPosition(event, '${n}', ${u},'${t}');"><span
- class="tabulator-header-menu-button px-0"><i class="las la-ellipsis-v"></i></span></span>
- <div class="dropdown-menu column-dp-menu dropdown-radio dropdown-menu-right dropdown-menu_`+u+`" style="position:relative;">
- <div><a class="dropdown-item d-flex align-items-center" href="javascript:;" onclick='Unibase.Platform.Analytics.Viewers.TableViewer.Instance().applySorting("${n}","${t}","Asc")'><span class="mr-2"><i class="fa fa-sort-asc" style=" vertical-align: bottom;"></span></i><span>Sort Ascending</span></a></div>
- <div><a class="dropdown-item d-flex align-items-center" href="javascript:;" onclick = 'Unibase.Platform.Analytics.Viewers.TableViewer.Instance().applySorting("${n}","${t}","Desc")'><span class="mr-2"><i class="fa fa-sort-desc" style=" vertical-align: top;"></i></span><span>Sort Descending</span></a></div>
- <div class="dropdown-divider"></div>
- <div>
- <div class="sub-dropdown-menu show-on-hover">
- <a class="dropdown-item" href="javascript:;"><i class="fa fa-filter mr-2"></i><span>Filter</span></a>
- <div class="dropdown-menu dropdown-radio" id="dropdown_menu_${t}">
- <p class="px-2 mb-2 font-weight-normal text-dark">Show items with value that :</p>
- <select class="dropdown-item p-1 coulmn-dp-select border-0 cursor-pointer" id="dynamic_filtering_${t}_exp1" style="outline: none;">
- <option selected value="0">is equal to</option>
- <option value="1">Is not equal to</option>
- <option value="2">Starts with</option>
- <option value="3">Contains</option>
- <option value="4">Does not contain</option>
- <option value="5">Ends with</option>
- <option value="6">Is null</option>
- <option value="7">Is not null</option>
- <option value="8">Is empty</option>
- <option value="9">Is not empty</option>
- </select>
-
- <a class="dropdown-item p-1" href="javascript:;"><span>
- <input type="text" id="dynamic_filtering_${t}_value1" class="border"></span></a>
- <select class="dropdown-item p-1 coulmn-dp-select cursor-pointer" id="dynamic_filtering_${t}_operator" style="outline: none;">
- <option selected value="0">And</option>
- <option value="1">Or</option>
- </select>
- <select class="dropdown-item p-1 coulmn-dp-select border-0 cursor-pointer" id="dynamic_filtering_${t}_exp2" style="outline: none;">
- <option selected value="0">is equal to</option>
- <option value="1">Is not equal to</option>
- <option value="2">Starts with</option>
- <option value="3">Contains</option>
- <option value="4">Does not contain</option>
- <option value="5">Ends with</option>
- <option value="6">Is null</option>
- <option value="7">Is not null</option>
- <option value="8">Is empty</option>
- <option value="9">Is not empty</option>
- </select>
- <a class="dropdown-item p-1" href="javascript:;"><span>
- <input type="text" class="border" id="dynamic_filtering_${t}_value2"></span></a>
- <div class="d-flex align-items-center justify-content-between p-1 pt-2">
- <a href="javascript:;" class="btn btn-sm btn-outline-primary" onclick='Unibase.Platform.Analytics.Viewers.TableViewer.Instance().applyTableDynamicFiltering("${n}","${t}")'>Filter</a>
- <a href="javascript:;" class="btn btn-sm btn-outline-danger" onclick='Unibase.Platform.Analytics.Viewers.TableViewer.Instance().clearTableDynamicFiltering("${n}","${t}")'>Clear</a></div>
- </div>
- </div>
- </div>
- </div>
- </div>`;$("#Viewer_"+n).find("[tabulator-field='"+t.toLocaleLowerCase()+"']").find(".tabulator-col-title-holder").prepend(f);$("#Viewer_"+n).find(".tabulator-col-title-holder").addClass("flex-center")}this.bindTableDynamicfiltersIfExists(n)}moreButtonClick(t,r){var e=this,o,h;let u=e._reportViewer.getReportViewerInstance(t),v=$("#"+t).find("#ListSearch").val(),s=u.PageSize==500?u.PageSize:e._reportViewer.PageSize;o=0;u.pivotTypeId==i.Reports.Enums.PivotType.PivotTable?(h=Number($(".pvtTable").attr("data-numrows")),s*u.Page==h&&(u.Page=u.Page+1,o=u.Page)):o=+$(`#loadMoreListBtn_${t}`).attr("class").match(/btncount_\d+/)[0].split("_").pop();let{fromDate:c,toDate:l}=this._reportViewer.checkForReportDatePicker(r,t);u.fromDate&&u.toDate&&(c=u.fromDate,l=u.toDate);u.Page=Number(o);let y=e._reportViewer.isIdentityFilter(u.dynamicFilters),f=new Report;f.ReportId=Number(r);f.page=u.Page;f.FilterId=u.filterId;f.Filter=u.dynamicFilters;f.InputParameters=u.inputParameters;f.DateFilter=u.dateFilters;f.pageSize=s;f.SearchTerm=v?$("#"+t).find("#ListSearch").val().toString():null;f.IsEnableCount=u.isEnableCount;f.IsJson=!0;f.FromDate=c;f.ToDate=l;f.IsDynamicFilterApplied=y;let{stringifiedSortColumns:a}=u.getStringfySortColsAlongWithGrpByCols(t,u);a&&(f.SortColumn=a);u.pivotTypeId!=i.Reports.Enums.PivotType.PivotTable&&$(`#loadMoreListBtn_${t}`).addClass(`btncount_${o+1}`).removeClass(`btncount_${o}`);e.reportManager.getReportViewerData(f).then(function(f){var h,s,c,l;if(f.status==n.Data.Status.Success)if(h=JSON.parse(f.result),h.Data!=""){let n=JSON.parse(h.Data),v=u.reportData;if(u.reportData=$.merge(v,n),u.reportDatalength=u.reportData.length,u.pivotTypeId==i.Reports.Enums.PivotType.PivotTable)return e.pivotMoreButtonClick(t,r,u.reportData);if(u.pivotTypeId==i.Reports.Enums.PivotType.PivotTreeView)for(s=0;s<n.length;s++)n[s].haschild==!0&&(n[s]._children=[]);let a=JSON.stringify(n);c=$("#"+t).find(".tabulator-tableHolder");l=c.scrollTop();let{hasImageUrl:y,data:p}=e.checkForImageUrlAndUpdateTableData(u.reportColumns,n);y&&(a=p);e._reportViewer.table.redraw(!0);e._reportViewer.table.addData(a).then(n=>{e._reportViewer.table.redraw(!0),n=n.map(n=>n._row),e.bindWidgetConfigurations(t,n),c.scrollTop(l)});let o=e._reportViewer.table.getDataCount();o>=f.totalRecords?(f.totalRecords!=0&&$("#btn-list-load-more_"+t).addClass("hidden"),$("#Viewer_pagintion"+t).html(f.totalRecords+" of "+f.totalRecords)):$("#Viewer_pagintion"+t).html(Math.ceil(o)+" of "+f.totalRecords);u.reportDatalength=o;$(`#visibleReportCount_${t}`).text(o)}else $("#btn-list-load-more_"+t).addClass("hidden");else $(`#loadMoreListBtn_${t}`).removeClass(`btncount_${o+1}`).addClass(`btncount_${o}`)})}pivotReport(n,r,u,f,e,o){var f;return __awaiter(this,void 0,void 0,function*(){var n=this,h,c,l;let s=r.result.ReportInfo;h=[];o.length>0&&(c=f.filter(function(n){return n.IsPivotColumn===!0})[0].ReportColumnName);let a=f.filter(function(n){return n.IsPivotRow===!0});if(a.length>0){n._reportBuilder.DataSourceId==0||n._reportBuilder.DataSourceId==t.DataSources.Enums.DataSource.Sql||n._reportBuilder.DataSourceId==t.DataSources.Enums.DataSource.MySql?a.forEach(t=>h.push({title:t.DisplayText,field:t.ReportColumnName.toLowerCase(),bottomCalc:n._reportBuilder.getAggregationName(t.TableAggrTypeId)})):a.forEach(t=>h.push({title:t.DisplayText,field:t.ReportColumnName,bottomCalc:n._reportBuilder.getAggregationName(t.TableAggrTypeId)}));let i={title:c,columns:h};e.push(i);n._reportBuilder.tabulatorColumns=e;n._reportViewer.table.setColumns(e)}if(s.PivotTypeId==i.Reports.Enums.PivotType.Pivot)n.pivoting(s.DataListId,o,c,e);else if(s.PivotTypeId==i.Reports.Enums.PivotType.TreeView)l=n.treeView_Children(u),u.Data=l;else if(s.PivotTypeId==i.Reports.Enums.PivotType.PivotTreeView)n.pivoting(s.DataListId,o,c,e),l=n.treeView_Children(u),u.Data=l;else if(s.PivotTypeId==i.Reports.Enums.PivotType.TimeInterval){let t=n.tenureReport(f);e.push(t);n._reportViewer.table.setColumns(e)}})}treeView_Children(n){var u=this,r=[],i={},t;if(u._reportViewer.ispivottable==!0){t=[];n.Data!=""&&n.Data!=""&&(t=JSON.parse(n.Data));for(let n=0;n<t.length;n++)i=t[n],t[n].haschild==!0&&(i._children=[]),r.push(i)}return r}pivoting(n,t,i,r){var u=this,f={pivotColumnId:t[0].ReportColumnId,pivotColumnName:t[0].ReportColumnName,pivotDataType:t[0].PivotDateType,pivotAggregationColumnName:i};u.pivot_PivotRows(f,n,i,r)}pivot_PivotRows(n,t,r,u){return __awaiter(this,void 0,void 0,function*(){var f=this,s=[],e=0,o;n.pivotDataType==i.Reports.Enums.AggregationType.year?e=i.Reports.Enums.AggregationType.year:n.pivotDataType==i.Reports.Enums.AggregationType.month&&(e=i.Reports.Enums.AggregationType.month);f.dataListId=t;f.pivotColumns=new PivotColumns;yield f.getDistinctData(n.pivotColumnId,n.pivotColumnName,e);f.pivotColumns.PivotRows&&(f.pivotColumns.PivotRows.forEach(n=>s.push({title:n,field:n})),o=u.findIndex(function(n){return n.title===r}),o>-1&&u.splice(o,1,...s),f._reportBuilder.tabulatorColumns=u,f._reportViewer.table.setColumns(u))})}tenureReport(n){var i,r,u,f,t;let o=n.filter(function(n){return n.IsPivotColumn===!0})[0].ReportColumnName;for(i=n.filter(function(n){return n.IsPivotColumn===!0})[0].TimeInterval.split(","),r=[],t=0;t<i.length;t++)u=0,t!=i.length-1?(u=t==0?Number(i[t]):Number(i[t])+1,f=i[t+1],r.push(u+"-"+f)):r.push(">"+i[t]);let e=[];for(t=0;t<r.length;t++)e.push({title:r[t],field:r[t],visible:!0});return{title:o,columns:e}}setColumns(n,i){var r=this,f=n.result.ReportInfo,u=n.result.ReportInfo.ReportColumns,e=n.result.ReportJsonData.Result;u=u.filter(n=>n.Isvisible==!0);const o=function(n){return r.subreportResponse.length&&r.subreportResponse.forEach(function(t){if(t.AliasName==n.getField())return $(n.getElement()).addClass("text-underline"),!1}),n.getValue()};f.DataSourceId==0||f.DataSourceId==t.DataSources.Enums.DataSource.Sql||f.DataSourceId==t.DataSources.Enums.DataSource.MySql?u.forEach(n=>{const t=r.getColHorizontalAlign(n);i.push({title:n.DisplayText,field:n.AliasName.toLowerCase(),bottomCalc:r._reportBuilder.getAggregationName(n.TableAggrTypeId),bottomCalcParams:{precision:2},hozAlign:t,headerHozAlign:t,formatter:o,visible:!0})}):u.forEach(n=>{const t=r.getColHorizontalAlign(n);i.push({title:n.DisplayText,field:n.ReportColumnName,bottomCalc:r._reportBuilder.getAggregationName(n.TableAggrTypeId),bottomCalcParams:{precision:2},hozAlign:t,headerHozAlign:t,formatter:o,visible:!0})});let s=u.find(n=>n.IsRowTotal==!0)?!0:!1;if(s&&i.push({title:"Total",field:"total",bottomCalc:"none",bottomCalcParams:{precision:2},headerHozAlign:"right",hozAlign:"right",visible:!0,cssClass:"font-weight-600"}),e.Data){let{hasImageUrl:n,data:t,tabulatorColumns:f}=r.checkForImgUrlAndUpdateTableDataAndTabuCols(u,JSON.parse(e.Data),i);if(n&&(i=f),r._reportBuilder.tabulatorColumns=i,r._reportViewer.table.setColumns(i),n)return t}else r._reportBuilder.tabulatorColumns=i,r._reportViewer.table.setColumns(i)}checkForImgUrlAndUpdateTableDataAndTabuCols(n,t,i){let f,u=n.filter(function(n){return n.IsImageUrl});if(t&&t.length)for(var r=0;r<u.length;r++){let n=i.findIndex(n=>n.field==u[r].AliasName.toLowerCase());n>-1&&(i[n].formatter="image",i[n].formatterParams={height:"50px",width:"50px"},f=!0);t.forEach(n=>n[u[r].AliasName]=_appsettings.asset_url()+"/"+n[u[r].AliasName])}return{data:JSON.stringify(t),tabulatorColumns:i,hasImageUrl:f}}checkForImageUrlAndUpdateTableData(n,t){let u,r=n.filter(function(n){return n.IsImageUrl});if(t)for(var i=0;i<r.length;i++)u=!0,t.forEach(n=>n[r[i].AliasName]=_appsettings.asset_url()+"/"+n[r[i].AliasName]);return{data:JSON.stringify(t),hasImageUrl:u}}getColHorizontalAlign(n){return n.DataType==i.Reports.Enums.DataType.decimal||n.DataType==i.Reports.Enums.DataType.int32||n.DataType==i.Reports.Enums.DataType.int64?"right":n.DataType==i.Reports.Enums.DataType.date||n.DataType==i.Reports.Enums.DataType.dateTime?"center":"left"}isPivot(n){var t=this,i=n.result.filter(function(n){return n.IsPivotAggrColumn===!0});i.length>0&&(t._reportViewer.ispivottable=!0)}isTenure(n){var t=this,i=n.result.filter(function(n){return n.IsTenureApplied===!0});i.length>0&&(t.IsTenure=!0)}getDistinctData(t,i,r){return __awaiter(this,void 0,void 0,function*(){var t=this,u,f;t.pivotColumns.ColumnName="";u=btoa(n.Platform.Helpers.NavigationHelper.commonFilter_FromDate);f=btoa(n.Platform.Helpers.NavigationHelper.commonFilter_ToDate);yield n.Platform.Analytics.Managers.ReportManager.Instance().getDistinctColumnData(t.dataListId,i,r,u,f).then(function(n){if(n!=""){let u=[];t.pivotColumns.ColumnName=i;for(var r=0;r<n.length;r++)u.push(n[r][i]);$("#PivotRows_Select2").is(":visible")&&$("#PivotRows_Select2").select2({placeholder:"Select Pivot Rows",data:u});t.pivotColumns.PivotRows=u}})})}generatesubtables(i,r,u,f,e,o,s,h){function a(i,r,u,e){return __awaiter(this,void 0,void 0,function*(){if(u._row.cells[0].element==r.target||u._row.cells[0].element==r.target.parentElement?$(u._row.element.children[0]).find("i").eq(0).hasClass("fa-plus")?$(u._row.element.children[0]).find("i").eq(0).removeClass("fa-plus").addClass("fa-minus"):$(u._row.element.children[0]).find("i").eq(0).removeClass("fa-minus").addClass("fa-plus"):$(u._row.element.children[0]).find("i").eq(0).removeClass("fa-minus").addClass("fa-plus"),typeof i=="string"&&(i=JSON.parse(i)),i.length>0)for(const i of i){if($(u._row.getElement()).find(`#subTable_sub_${f}_${i.ChildReportId}_${i.SubReportId}_${s[1]}`).length>0){const n=$(`#subTable_sub_${f}_${i.ChildReportId}_${i.SubReportId}_${s[1]}`);if(n.is(":visible")){n.hide();continue}else $(u._row.getElement()).find(".subtable").hide(),n.show()}$(u._row.getElement()).find(".subtable").hide();c.reportManager.getSubReports(i.ChildReportId).then(function(r){var a,g,v,k;const d=c.navigationHelper.getLastContainerId();let it=d+"_"+o;const nt=c._reportViewer.getReportViewerInstance(it),l=c._reportViewer.getReportViewerInstance(d),tt=n.Platform.Helpers.DateTimeHelper.Instance();for(a=[],l&&l.dynamicFilters&&l.dynamicFilters.length&&(a=a.concat(l.dynamicFilters)),a=a.filter((n,t,i)=>i.findIndex(t=>n.ParameterName===t.ParameterName)===t),g=JSON.parse(i.Filters),v=0,k=0;k<g.length;k++){let n=g[k],t=n.ParameterValue.trim().replace("@","");v=n.Isvalue?n.ParameterName:eval("row.getData()."+n.ParameterName+"");let i=c.getExpId(n.Operator);a.push({ParameterName:t.trim(),ParameterValue:v.toString(),ExpOp:i})}var y="",p="",w=n.Platform.Helpers.NavigationHelper.commonFilter_FromDate,b=n.Platform.Helpers.NavigationHelper.commonFilter_ToDate;if(w!=null&&b!=null?(y=w.toString(),p=b.toString()):(y=n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(n.Platform.Helpers.DateTimeHelper.Instance().currentDate()),"YYYY/MM/DD"),p=n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(n.Platform.Helpers.DateTimeHelper.Instance().currentDate()),"YYYY/MM/DD")),l&&l.reportResponse&&l.reportResponse.result&&l.reportResponse.result.ReportInfo&&l.reportResponse.result.ReportInfo.IsEnableGlobalDatepicker){let n=$("#dynamic-filters"+h).find("#report-daterange"+h+"-1").val();n&&(w=tt.formatLocalDateformat(w,"DD/MM/YYYY"),b=tt.formatLocalDateformat(b,"DD/MM/YYYY"),n!=w+" - "+b&&(y=n.split("-")[0].trim(),p=n.split("-")[1].trim()))}let rt={ReportId:i.ChildReportId,Filter:a,LinkSubReport:!0,pageSize:c._reportViewer.PageSize,page:0,IsJson:!0,FromDate:y,ToDate:p,viewerTypeId:l&&l.ViewerSettings&&l.ViewerSettings.selectedViewerTypeId,DisplayModeTypeId:c._reportViewer.getDisplayModeTypeId(),IsDynamicFilterApplied:nt&&nt.IsDynamicFilterApplied};c.reportManager.getReportInfo(rt).then(function(w){var k,nt,g,tt,b,it,rt;if(w.status==n.Data.Status.Error)return MessageHelper.Instance().showError(w.message,l.parentContainerId+" #div_ErrorMessage");if(w.result.ReportJsonData.Status==n.Data.Status.Error)return MessageHelper.Instance().showError(w.result.ReportJsonData.Message,"div_ErrorMessage","."+d);k=document.createElement("div");nt=document.createElement("div");k.style.boxSizing="border-box";k.style.padding="10px 10px 10px 10px";k.style.borderTop="1px solid #333";k.style.borderBottom="1px solid #333";k.style.background="#ddd";k.setAttribute("id","subTable_sub_"+f+"_"+i.ChildReportId+"_"+i.SubReportId+"_"+s[1]+"");k.setAttribute("class","subTable_sub_"+e+"_"+(v+1)+" subtable");nt.style.border="1px solid #333";nt.setAttribute("class","subTable_sub"+(v+1)+"");nt.setAttribute("id","subTable_sub"+i.ChildReportId+"_"+s[1]+"");k.appendChild(nt);u.getElement().appendChild(k);g=new Tabulator(nt,{layout:"fitColumns",virtualDom:!0,virtualDomBuffer:300,columnMinWidth:120,movableRows:!0,tooltips:!0,movableColumns:!0,resizableColumns:c.isTouchScreen?"header":!0,cellClick:function(n,t){var i=JSON.parse(r.result.toString());c.tableCellClick(n,t,e,o,i,h)}});let n=[];if(tt=w.result.ReportInfo.ReportColumns,tt=tt.filter(n=>n.Isvisible==!0),tt.forEach(i=>{const r=c.getColHorizontalAlign(i);w.result.DataSourceId==Number(t.DataSources.Enums.DataSource.MongoDB)?n.push({title:i.DisplayText,field:i.AliasName,hozAlign:r,headerHozAlign:r}):n.push({title:i.DisplayText,field:i.AliasName.toLowerCase(),hozAlign:r,headerHozAlign:r})}),b=w.result.ReportJsonData&&w.result.ReportJsonData.Result&&w.result.ReportJsonData.Result.Data,b&&typeof b=="string"&&(b=JSON.parse(b)),b&&b.length){let{hasImageUrl:t,data:i,tabulatorColumns:r}=c.checkForImgUrlAndUpdateTableDataAndTabuCols(tt,b,n);t&&(b=JSON.parse(i),n=r)}if(g.setColumns(n),b&&b.length?(it=b.find(n=>n.RowClick==!0),it&&(rt=function(n){return $(n.getElement()).addClass("clickable-cell"),"<i class='fa fa-plus' id="+i.ChildReportId+"><\/i>"},g.addColumn({formatter:rt,width:5,title:"Icon",headerSort:!1},!0))):$(k).find(".tabulator-tableHolder").html(`<div class='alert alert-primary text-center mb-0 border-0 w-100 font-14 rounded-0'>No data available</div>`),w.result.ReportJsonData.TotalRecords>15&&(g.element.childNodes[1].insertAdjacentHTML("beforeend",`<div class="text-center text-white my-10 bg-white-removed"> <a class="btn btn-success m-b btn-list-load-more btn-list-load-more_`+h+` btncount_2" id = "btn-list-load-more_`+h+` " pagination=`+h+`>More<i class=""> </i></a></div>`),$(".btn-list-load-more_"+h).unbind().click(function(n){let e=$("#"+h).find("#ListSearch").val();var u=$(n.currentTarget).attr("pagination"),r=g.element.childNodes[1].lastChild.lastChild.classList[5].match(/\d+/g).map(Number)[0];let f=c._reportViewer.isIdentityFilter(l.dynamicFilters),t=new ReportObject;t.ReportId=i.ChildReportId;t.Filter=a;t.LinkSubReport=!0;t.pageSize=c._reportViewer.PageSize;t.page=r;t.IsJson=!0;t.FromDate=y;t.ToDate=p;t.IsDynamicFilterApplied=f;c.reportManager.getReportViewerData(t).then(function(n){var t=JSON.parse(n.result);g.addData(t.Data,!1);g.element.childNodes[1].lastChild.lastChild.classList.remove("btncount_"+r+"");g.element.childNodes[1].lastChild.lastChild.classList.add("btncount_"+(r+1)+"");let i=g.getDataCount();i>=t.totalRecords&&$("#btn-list-load-more_"+u+"").addClass("hidden")})})),b&&b.length){g.setData(b);let n=$("#Viewer_"+h+" .tabulator-headers").width(),t=$("#Viewer_"+h+"_viewall .tabulator-headers").width();$("#Viewer_"+h+" .subtable").css("width",n-18);$("#Viewer_"+h+"_viewall .subtable").css("width",t-18)}})})}})}var c=this,l;l||(l=window.event);l.cancelBubble=!0;l.stopPropagation&&l.stopPropagation();c.reportManager.getSubReportById(s).then(function(t){if(t.status==n.Data.Status.Success&&t.result.length){var e=t.result;e.length>0&&a(e,i,r,u,f)}})}tableCellClick(t,i,r,u,f,e){var h=this,c=[],o,l,s,y,v,a;if(f.length!=0&&(o=f.find(n=>n.AliasName==i._cell.column.definition.field),o)){l=i.getRow();let f=l.getData();if(o.SubReportTypeId==n.Platform.Analytics.Reports.Enums.SubReportType.Detail)s="Unibase.Platform.Helpers.NavigationHelper.Instance().loadDetail({{"+o.PrimaryKeyColumn+"}},{{appinstalledappid}},null,null);",s=s.replace("{{appinstalledappid}}",o.InstalledAppId),s=s.replace("{{"+o.PrimaryKeyColumn+"}}",f[o.PrimaryKeyColumn]),y=Handlebars.compile(s),s=y(f),eval(s);else{if(o.Inline)return h.generatesubtables(t,l,r,l.getPosition(!1),!0,u,o.SubReportId,e+"_"+o.SubReportId);const n=h._reportViewer.getReportViewerInstance(e);if(n&&n.dynamicFilters&&n.dynamicFilters.length){const t=$.extend(!0,[],n.dynamicFilters);t.forEach(n=>{n.IsSubReportFilter=!0});c=c.concat(t)}for(v=JSON.parse(o.Filters),a=0;a<v.length;a++){let n=v[a],t=f[n.ParameterName.trim()],i=h.getExpId(n.Operator);n.Isvalue&&(t=n.ParameterName);c.push({ParameterName:n.ParameterValue.trim(),ParameterValue:t.toString(),ExpOp:i,IsSubReportFilter:!0})}return h._reportViewer.dynamicFilters=c.filter((n,t,i)=>i.findIndex(t=>n.ParameterName===t.ParameterName)===t),h._reportViewer.isSubReport=!0,h._reportViewer.report_ViewAll(o.ChildReportId,0,"_linkedreport_"+o.ChildReportId)}}}getExpId(n){var i=t.Core.Enums.ExpressionOperator.Equals;switch(n){case"Equals":i=t.Core.Enums.ExpressionOperator.Equals;break;case"NotEquals":i=t.Core.Enums.ExpressionOperator.NotEquals;break;case"GreaterThan":i=t.Core.Enums.ExpressionOperator.GreaterThan;break;case"GreaterThanOrEquals":i=t.Core.Enums.ExpressionOperator.GreaterThanOrEquals;break;case"LessThan":i=t.Core.Enums.ExpressionOperator.LessThan;break;case"LessThanOrEquals":i=t.Core.Enums.ExpressionOperator.LessThanOrEquals;break;case"EqualsColumn":i=t.Core.Enums.ExpressionOperator.EqualsColumn;break;case"NotEqualsColumn":i=t.Core.Enums.ExpressionOperator.NotEqualsColumn;break;case"LessThanColumn":i=t.Core.Enums.ExpressionOperator.LessThanColumn;break;case"LessThanOrEqualsColumn":i=t.Core.Enums.ExpressionOperator.LessThanOrEqualsColumn;break;case"GreaterThanColumn":i=t.Core.Enums.ExpressionOperator.GreaterThanColumn;break;case"GreaterThanOrEqualsColumn":i=t.Core.Enums.ExpressionOperator.GreaterThanOrEqualsColumn}return i}Export(t,i){let r=this;var u={ReportId:Number(t)};$.when(r.reportManager.getReportViewerData(u)).done(function(t){t.Count>=100?n.Platform.Analytics.Managers.ReportManager.Instance().startDownloadLargeFile(u).then(function(){}):(r.exportdata=t,n.Platform.Analytics.Viewers.TableViewer.Instance().table.download("xlsx",""+i+".xlsx"))})}getTreeViewData(n){var i=this,t;if(n.result.ReportJsonData.Result.Data!=""){let r=[],u=JSON.parse(n.result.ReportJsonData.Result.Data);for(r=u.filter(function(t){return t.parentid==n.result.ReportInfo.PivotValue}),r.length==0&&(r=u),t=0;t<r.length;t++){let n=f(r[t].childid);n!=undefined&&(r[t]._children=[],r[t]._children=n)}function f(n){let t=i.gettreeChildRecords(u,n);if(t.length>0){for(var r=0;r<t.length;r++){let n=f(t[r].childid);n!=undefined&&(t[r]._children=[],t[r]._children=n)}return t}}return r}}gettreeChildRecords(n,t){return n.filter(function(n){return n.parentid==t})}loadPivotTable(n,t,i){return __awaiter(this,void 0,void 0,function*(){var r=this,u,f;i.result!=""?(u=i.result.ReportJsonData.Result,u.Data!=""?(f=JSON.parse(u.Data),f!=""?r.fileCacheHelper.loadCssFile("libs/pivottable/css/pivot.css",function(){r.fileCacheHelper.loadJsFile("libs/pivottable/js/pivot.js",function(){r.pivotTable(n,t,f)})}):r.showPivotTableNoDataMsg(t)):r.showPivotTableNoDataMsg(t)):r.showPivotTableNoDataMsg(t)})}showPivotTableNoDataMsg(n){$(`#Viewer_${n}`).html(`<div class="biz-custom-scrollbar templateviewer-body h-100"><div class="alert alert-primary text-center mb-0 border-0 rounded-0 w-100 font-14 font-weight-500">No data available</div></div>`)}pivotTable(n,t,i){var f=this,u,e;let r=f._reportViewer.getReportViewerInstance(t);if(r.pivotTableRowCols=[],r.pivotTableColumnCols=[],r.reportColumns.length!=0)for(u=0;u<r.reportColumns.length;u++)r.reportColumns[u].Isvisible&&(r.reportColumns[u].IsPivotTableCol?r.pivotTableColumnCols.push(""+r.reportColumns[u].AliasName+""):r.pivotTableRowCols.push(""+r.reportColumns[u].AliasName+"")),r.reportColumns[u].IsPivotAggrColumn&&(r.pivotTableAggCol=r.reportColumns[u].AliasName,r.pivotTableAgg=f.getAggregation(r.reportColumns[u].AggrFuncId));e={Cols:r.pivotTableColumnCols,Rows:r.pivotTableRowCols,AggCol:r.pivotTableAggCol,PivotTableAgg:r.pivotTableAgg,EnablePTConfig:r.enablePivotTableConfig};f.fileCacheHelper.loadJsFileAsync("platform/analytics/enums/pivottableaggregationtype.js",function(){return __awaiter(this,void 0,void 0,function*(){yield f.pivotUI(n,t,i,e)})})}getAggregation(t){let i="";switch(t){case n.Platform.Analytics.Reports.Enums.AggregationType.sum:i="Sum"}return i}pivotUI(t,i,r,u){return __awaiter(this,void 0,void 0,function*(){var e=this,f,c,s,y;let h=e._reportViewer.getReportViewerInstance(i);f=[];c=[];yield e.reportManager.getSubReports(t).then(function(t){return __awaiter(this,void 0,void 0,function*(){var i,r;if(t.status==n.Data.Status.Success)for(f=t.result,i=0;i<f.length;i++)r=h.reportColumns.find(n=>n.ReportColumnId==f[i].ReportColumnId),r&&c.push(r.AliasName)})});let o=$("#Viewer_"+i);const p=$.pivotUtilities.aggregatorTemplates;let l=0,a=[],v="Count";h.reportColumns.length>0&&(s=h.reportColumns.find(n=>n.PivotTableAggrTypeId!=0),s!=undefined&&s.PivotTableAggrTypeId!=0&&(l=s.PivotTableAggrTypeId,a=[s.ReportColumnName]));l==0&&u.AggCol!=""?(a=[u.AggCol],v=u.PivotTableAgg):(y=e.getPivotTableAggregationType(l),v=y);o.pivotUI(r,{cols:u.Cols,rows:u.Rows,vals:a,aggregatorName:v,rendererName:"Table",rendererOptions:{table:{clickCallback:function(n,t,i,r){for(var s,c,l,o,u=0;u<f.length;u++)if(s=h.reportColumns.find(n=>n.ReportColumnId==f[u].ReportColumnId),s&&s.AliasName==r.colAttrs[0]){for(c=[],e._reportViewer.dateFilters=[],l=JSON.parse(f[u].Filters),o=0;o<l.length;o++){let n=l[o],t=i[n.ParameterName.trim()],r=e.getExpId(n.Operator);if(n.Isvalue&&(t=n.ParameterName),n.ParameterValue.indexOf("date")>-1){var a=new Date(t.split("/").reverse().join("-")),y=a.getDate(),p=a.getMonth()+1,w=a.getFullYear(),v=w+"/"+p+"/"+y;e._reportViewer.dateFilters.push({ParameterName:n.ParameterName,FromDate:v,ToDate:v})}else c.push({ParameterName:n.ParameterValue.trim(),ParameterValue:t.toString(),ExpOp:r})}return e._reportViewer.dynamicFilters=c,e._reportViewer.report_ViewAll(f[u].ChildReportId,0,"_linkedreport_"+f[u].ChildReportId)}}}},onRefresh:function(){const n=o.find(".pvtTable");c.forEach(t=>{if(n.find(`.pvtAxisLabel:contains("${t}")`).siblings(".pvtColLabel").length>0){n.find('.pvtVal[data-value!="null"]').addClass("text-underline");return}let i=0;if(n.find(`.pvtAxisLabel:contains("${t}")`).prevAll("th[colspan]").each(function(n,t){Number($(t).attr("colspan"))>0&&(i+=Number($(t).attr("colspan")))}),n.find(`.pvtAxisLabel:contains("${t}")`).length){let r=n.find(`.pvtAxisLabel:contains("${t}")`).index()+i;n.find(`tbody tr`).each(function(n,t){$(t).find(".pvtRowLabel").eq(r).addClass("text-underline")})}})}});u.EnablePTConfig||(o.find(".pvtUiCell").addClass("d-none"),o.find(".pvtRendererArea").addClass("pa-0"));n.Platform.Helpers.NavigationHelper.Instance().hideLoading();o.addClass("pivot-ui-tableview");o.find("button").each(function(n,t){$(t).text().toLowerCase().includes("cancel")?$(t).addClass("btn btn-outline-danger btn-sm"):$(t).addClass("btn btn-primary btn-sm")})})}getPivotTableAggregationType(n){var t="";switch(n){case i.Reports.Enums.PivotTableAggregationType.Count:t="Count";break;case i.Reports.Enums.PivotTableAggregationType.ListUniqueValues:t="List Unique Values"}return t}pivotMoreButtonClick(n,t,i){var u=this,f;let r=u._reportViewer.getReportViewerInstance(n);$(".pvtUi").remove();f={Cols:r.pivotTableColumnCols,Rows:r.pivotTableRowCols,AggCol:r.pivotTableAggCol,EnablePTConfig:r.enablePivotTableConfig};u.pivotUI(t,n,i,f)}applySorting(t,i,r){let u=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(t),f=u.reportColumns.find(n=>n.AliasName==i);if(f){typeof u.sortColumn=="string"&&(u.sortColumn=JSON.parse(u.sortColumn));let n=u.sortColumn.find(n=>n.Name==i);n?n.Order=r:u.sortColumn=[{Name:i,Order:r}];u.getReportData(u.ReportId,t,"","")}}applyTableDynamicFiltering(t,i){let r=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(t),u=$("#"+t).find(`#dropdown_menu_${i}`);if(u.length){let n=u.find(`#dynamic_filtering_${i}_value1`).val(),f=u.find(`#dynamic_filtering_${i}_value2`).val(),e=u.find(`#dynamic_filtering_${i}_exp1`).find(":selected").text(),o=u.find(`#dynamic_filtering_${i}_exp2`).find(":selected").text(),s=Number(u.find(`#dynamic_filtering_${i}_operator`).val())+1;n&&(r.tableDynamicFilters.find(t=>t.Key==i&&t.Value==n)||(r.inputParameters.push({Key:i,Value:n,ExpOp:this.getOperatorForTableDynamicFilter(e)}),r.tableDynamicFilters.push({Key:i,Value:n,ExpOp:this.getOperatorForTableDynamicFilter(e)})));f&&(r.tableDynamicFilters.find(n=>n.Key==i&&n.Value==f)||(r.inputParameters.push({Key:i,Value:f,ExpOp:this.getOperatorForTableDynamicFilter(o),ConjectiveOp:s}),r.tableDynamicFilters.push({Key:i,Value:f,ExpOp:this.getOperatorForTableDynamicFilter(o),ConjectiveOp:s})));r.loadFilteredReport(r.ReportId,0,t)}}clearTableDynamicFiltering(t,i){let r=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(t),f=r.inputParameters.findIndex(n=>n.Key==i),e=r.tableDynamicFilters.findIndex(n=>n.Key==i);while(f>-1)r.inputParameters.splice(f,1),f=r.inputParameters.findIndex(n=>n.Key==i);while(e>-1)r.tableDynamicFilters.splice(e,1),f=r.tableDynamicFilters.findIndex(n=>n.Key==i);let u=$("#"+t).find(`#dropdown_menu_${i}`);u.length&&(u.find(`#dynamic_filtering_${i}_value1`).val(""),u.find(`#dynamic_filtering_${i}_value2`).val(""),u.find(`#dynamic_filtering_${i}_exp1`).val("0"),u.find(`#dynamic_filtering_${i}_exp2`).val("0"),u.find(`#dynamic_filtering_${i}_operator`).val("0"));r.loadFilteredReport(r.ReportId,0,t)}getOperatorForTableDynamicFilter(n){let i;switch(n){case"is equal to":i=t.Core.Enums.ExpressionOperator.Equals;break;case"Is not equal to":i=t.Core.Enums.ExpressionOperator.NotEquals;break;case"Starts with":i=t.Core.Enums.ExpressionOperator.StartsWith;break;case"Contains":i=t.Core.Enums.ExpressionOperator.Contains;break;case"Does not contain":i=t.Core.Enums.ExpressionOperator.DoesNotContains;break;case"Ends with":i=t.Core.Enums.ExpressionOperator.EndsWith;break;case"Is null":i=t.Core.Enums.ExpressionOperator.IsNull;break;case"Is not null":i=t.Core.Enums.ExpressionOperator.IsNotNull;break;case"Is empty":i=t.Core.Enums.ExpressionOperator.Empty;break;case"Is not empty":i=t.Core.Enums.ExpressionOperator.NotEmpty}return i}bindTableDynamicfiltersIfExists(t){var u,r;let i=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(t);if(i&&i.tableDynamicFilters&&i.tableDynamicFilters.length)for(u=i.tableDynamicFilters,r=0;r<u.length;r++){let n=u[r],t=$(`[tabulator-field='${n.Key}'].tabulator-col`);n.ConjectiveOp?(t.find(`#dynamic_filtering_${n.Key}_value2`).val(n.Value),t.find(`#dynamic_filtering_${n.Key}_exp2`).val(n.ExpOp-1),t.find(`#dynamic_filtering_${n.Key}_operator`).val(n.ConjectiveOp-1)):(t.find(`#dynamic_filtering_${n.Key}_value1`).val(n.Value),t.find(`#dynamic_filtering_${n.Key}_exp1`).val(n.ExpOp-1))}}bindWidgetConfigurations(t,i){this.fileCacheHelper.loadJsFiles(["platform/forms/managers/formmanager.js","platform/forms/components/formviewer/formviewer.js","platform/core/helpers/token/tokenhelper.js"],()=>{var f,h,e,r,o,s;let u=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(t);if(u.js){let{jsToEval:c,statusconditions:l,widgetconditions:h}=this.getWidgetConfigsHtml(u.js,t);if(c)for(f=Handlebars.compile(c),r=0;r<u.table.rowManager.activeRows.length;r++){h=u.table.rowManager.activeRows[r].element;e=u.table.rowManager.activeRows[r].data;let n=f(e);eval(n)}if(l&&i!=null)for(r=0;r<i.length;r++)o=i[r],s=n.Core.Helpers.TokenHelper.Instance().replace(l,o),eval(s);h&&(h=h.replaceAll("\\",""),eval(h))}})}getWidgetConfigsHtml(t,i){var w,f,a,tt,o,b,u,y,s,d,r,c;let e=n.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(i),it=n.Platform.DataSources.Components.QueryParser.Instance(),p=n.Platform.Analytics.Viewers.TemplateViewer.Instance();var l="",h="",v="",g="";let k=Number(i.split("_")[2]),nt=t.indexOf("html(");if(nt!=-1){let ft=t.slice(nt+5),ot=it.getIndexOfCorrespondingCloseBracket(ft),ut=ft.substring(0,ot-1);ut=ut.replaceAll("\\","").replaceAll("`","");let rt=HtmlHelper.getHelper().decode(ut),et=$(rt).find("#hf_widgetitem_Id").val();if(rt.indexOf("widgetitem_config")>-1&&(w=t.substring(t.indexOf("widgetitem_config")-15,t.indexOf("widgetitem_config")+40),g=w.substring(w.indexOf("<div"),w.indexOf("<\/div>")+6),e.reportWidgetData!=null)){if(e.reportWidgetData.AppConfigurations.WidgetItemGrouped.length!=0){for(f=e.reportWidgetData.AppConfigurations.WidgetItemGrouped,h=`<div class='dropdown widget-item-config-dp'><a href='javascript:;' class='no-caret pull-right dropdown-link btn btn-icon btn-flush-biz-theme btn-rounded flush-soft-hover w-25p h-25p' data-toggle='dropdown'><span class="btn-icon-wrap"><i class='fa fa-ellipsis-h dropdown-icon text-dark'></i></span></a><ul class='dropdown-menu pull-right clearfix'><li class='dropdown-menu-item hidden'>`,r=0;r<f.length;r++){b=f[r].SettingName.replace(/ /g,"");a="";let t="";f[r].JsFunction!=null&&f[r].JsFunction!=""&&(t=HtmlHelper.getHelper().decode(f[r].JsFunction));f[r].SettingUrlType==4?(l+=HtmlHelper.getHelper().decode(f[r].JsFunction),tt=f[r].SettingUrl.replace(/ /g,""),a=tt):(a=p.load_appconfigurations(f[r],rt,k),t!=null&&t!=""&&(t.indexOf("{{")>-1||t.indexOf("}}")>-1?l+=t+";":v+=t+";"));(!n.Themes.Compact.Components.Details.Instance().isSystemLock||n.Themes.Compact.Components.Details.Instance().isSystemLock&&f[r].ExcludeFromLock)&&(h+='<li id="li_'+i+'"><a class="dropdown-item" href="javascript:;" id="widgetconfig_'+et+"_"+b+'" onclick="'+a+'">'+f[r].SettingName+"<\/a><\/li>")}h+="<\/li><\/ul><\/div>";p.autoFixConfigDpVisibility(i)}if(e.reportWidgetData.AppConfigurations.WidgetItemUnGrouped.length!=0){for(h+="<div class='pull-right'>",o=e.reportWidgetData.AppConfigurations.WidgetItemUnGrouped,r=0;r<o.length;r++){b=o[r].SettingName.replace(/ /g,"");let t="";o[r].JsFunction!=null&&o[r].JsFunction!=""&&(t=HtmlHelper.getHelper().decode(o[r].JsFunction));a=o[r].SettingUrl;t!=null&&t!=""&&(t.indexOf("{{")>-1||t.indexOf("}}")>-1?l+=t+";":v+=t+";");(!n.Themes.Compact.Components.Details.Instance().isSystemLock||n.Themes.Compact.Components.Details.Instance().isSystemLock&&o[r].ExcludeFromLock)&&(h+=' <span class="mr-10"><a href="javascript:;" id="widgetconfig_'+et+"_"+b+'" onclick="'+a+'"><i class="'+o[r].Icon+'"><\/i><\/a> <\/span>')}h+="<\/div>"}t=t.replace(g,h);let w="",nt='<div class="mx-2 my-auto"><a href="javascript:void(0);" id="dropdownMenuButton_'+i+'" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fa fa-ellipsis-v"><\/i><\/a><div class="dropdown-menu drop-Button_'+i+'" aria-labelledby="dropdownMenuButton_"'+i+"><\/div><\/div>";if(e.reportWidgetData.AppConfigurations!=null&&e.reportWidgetData.Data.ReportId==e.ReportId){if(u=e.reportWidgetData.AppConfigurations.WidgetGrouped.filter(n=>n.AppConfigType===3),u.length>0){for(y="",r=0;r<u.length;r++){if(s="",d="",u[r].JsFunction!=null&&u[r].JsFunction!=""&&(s=HtmlHelper.getHelper().decode(u[r].JsFunction)),u[r].SettingDesignHtml!=null&&u[r].SettingDesignHtml!=""&&(d=HtmlHelper.getHelper().decode(u[r].SettingDesignHtml)),y=p.load_appconfigurations(u[r],rt,k),!n.Themes.Compact.Components.Details.Instance().isSystemLock||n.Themes.Compact.Components.Details.Instance().isSystemLock&&u[r].ExcludeFromLock){let t="pr-3";n.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin&&(t="");w+=(u[r].Icon=="null"||u[r].Icon=="")&&u[r].SettingUrlType==3?'<span class="'+t+'"><a href="javascript:;" class="nav-link biz-highlight-bg-color" id="LinkButton" title="'+u[r].SettingName+'" onclick="'+y+'"><i class=""><\/i>'+d+"<\/a><\/span>":(u[r].Icon=="null"||u[r].Icon=="")&&(u[r].SettingUrlType==10||u[r].SettingUrlType==11)?'<span class="'+t+'"><a href="javascript:;" class="nav-link biz-highlight-bg-color btn btn-sm btn-outline-primary" id="LinkButton" title="'+u[r].SettingName+'" onclick="'+y+'">'+u[r].SettingName+"<\/a><\/span>":'<span class="'+t+'"><a href="javascript:;" class="nav-link biz-highlight-bg-color" id="LinkButton" title="'+u[r].SettingName+'" onclick="'+y+'"><i class="'+u[r].Icon+'"><\/i><\/a><\/span>'}s!=null&&s!=""&&(s.indexOf("{{")>-1||s.indexOf("}}")>-1?l+=s+";":v+=s+";")}$(".sp_widget_create_"+i+"").addClass("d-flex flex-row align-items-center");$(".sp_widget_create_"+i+"").html(w)}let t=e.reportWidgetData.AppConfigurations.WidgetUnGrouped.filter(function(n){return n.AppConfigType===3});if(t.length>0){$(".sp_widget_create_"+i).parent().addClass("align-items-center").append(nt);let f="",e="";for(r=0;r<t.length;r++)c=HtmlHelper.getHelper().decode(t[r].JsFunction),f=p.load_appconfigurations(t[r],rt,k),(!n.Themes.Compact.Components.Details.Instance().isSystemLock||n.Themes.Compact.Components.Details.Instance().isSystemLock&&u[r].ExcludeFromLock)&&(e+=t[r].Icon=="null"||t[r].Icon==""&&t[r].SettingUrlType==3?'<a href="javascript:;" class="nav-link biz-highlight-bg-color" id="LinkButton" title="'+t[r].SettingName+'" onclick="'+f+'"><i class=""><\/i>'+HtmlHelper.getHelper().decode(t[r].SettingDesignHtml)+"<\/a>":'<a href="javascript:;" class="nav-link d-flex flex-row" id="LinkButton" title="'+t[r].SettingName+'" onclick="'+f+'"><span>'+t[r].SettingName+'<\/span><i class="ml-auto my-auto font-14 '+t[r].Icon+'"><\/i><\/a>'),c!=null&&c!=""&&(c.indexOf("{{")>-1||c.indexOf("}}")>-1?l+=c+";":v+=c+";");$(".drop-Button_"+i).empty().append(e)}}}}return{jsToEval:t,statusconditions:l,widgetconditions:v}}setGroupBy(n,t,i){return __awaiter(this,void 0,void 0,function*(){n.tblGroupedCols&&n.tblGroupedCols.length&&(n.table.options.dataTree=!1,yield n.table.setGroupBy(n.tblGroupedCols));n.js&&this.bindWidgetConfigurations(t,i)})}static Instance(){return this._instance===undefined&&(this._instance=new u),this._instance}}r.TableViewer=u})(r=i.Viewers||(i.Viewers={}))})(i=t.Analytics||(t.Analytics={}))})(t=n.Platform||(n.Platform={}))})(Unibase||(Unibase={}));
|