123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
- return new (P || (P = Promise))(function (resolve, reject) {
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
- step((generator = generator.apply(thisArg, _arguments || [])).next());
- });
- };
- var Unibase;
- (function (Unibase) {
- let Themes;
- (function (Themes) {
- let Compact;
- (function (Compact) {
- let KpiWidgets;
- (function (KpiWidgets) {
- class Comparision extends Unibase.Platform.Core.BaseComponent {
- jsFiles() {
- return [];
- }
- cssFiles() {
- return [];
- }
- html(id, containerid) {
- let title = id[0].WidgetName;
- var html = '<div class="card card-sm" id="widget_kpis_Comparision kpi-card">' +
- '<a href="Javascript:;" class="kpi-link-report" onclick="Unibase.Themes.Compact.KpiWidgets.Comparision.Instance().linkReport(' + id[0].WidgetId + ',' + id[0].PortletWidgetId + ',' + "'" + containerid + "'" + ')";><small id="showreport_' + id[0].PortletWidgetId + '" class="font-sm-11"><span class="nav-icon-wrap"><i class="font-14 dripicons dripicons-graph-pie text-dark"></i></span></small></a>' +
- '<div class="card-body p-2">' +
- '<span class="d-block font-14 font-weight-400 text-dark mb-10" ><span id="hf_kpi_widgetName_' + id[0].PortletWidgetId + '">' + title + '</span>' +
- '</span>' +
- '<span class="d-block align-items-center card-action-wrap pull-right font-11" >' +
- '<a href="#" class="inline-block full-screen mr-15 hidden" id="kpi_FullScreen_' + id[0].PortletWidgetId + '">' +
- '<i class="ion ion-md-expand"></i>' +
- '</a>' +
- '</span>' +
- '<span class="d-block text-primary mb-10 pull-right font-11" id="kpi_Percentage_' + id[0].PortletWidgetId + '">0%</span></span>' +
- '<span id="config_widget_' + id[0].PortletWidgetId + '"></span>' +
- '<span class="d-block display-5 font-weight-400 text-dark" id="kpi_value_1_' + id[0].PortletWidgetId + '">0000</span>' +
- '<span class="text-secondary font-12 ml-1" ><span id="kpi_value_2_' + id[0].PortletWidgetId + '"></span>000000</span>' +
- '</div>' +
- '</div>';
- return html;
- }
- load(id, containerid, callback) {
- let instance = this;
- let inputparameters = Unibase.Themes.Providers.DashboardHelper.Instance().replaceWidgetParameterValues(id[0].WidgetParameters, id[0].InstalledAppId);
- let fromDate = "", toDate = "";
- var cf_fromDate = Unibase.Platform.Membership.Infos.Identity.currentUser.fromDate;
- var cf_toDate = Unibase.Platform.Membership.Infos.Identity.currentUser.toDate;
- if (cf_fromDate != null && cf_toDate != null) {
- fromDate = cf_fromDate.toString();
- toDate = cf_toDate.toString();
- }
- else {
- fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
- toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
- }
- var parameters = {
- WidgetId: id[0].WidgetId,
- PortletWidgetId: id[0].PortletWidgetId,
- InstalledAppId: id[0].InstalledAppId,
- InputParameters: inputparameters,
- FromDate: fromDate,
- ToDate: toDate
- };
- instance.loadResponseData(id[0].PortletWidgetId, containerid, parameters);
- }
- loadResponseData(portletwidgetid, detailContainer, parameters) {
- let instance = this;
- instance.inputParameters = parameters.InputParameters;
- Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getKpiWidgetData(parameters).then(function (response) {
- instance.loadData(portletwidgetid, detailContainer, parameters, false, response);
- });
- }
- loadData(portletwidgetid, detailContainer, parameters, IsPreview, response) {
- detailContainer = '.' + detailContainer;
- var post = response.result;
- if (post != null) {
- if (post.IsMaximize == true) {
- $("#kpi_FullScreen_" + portletwidgetid).removeClass("hidden");
- }
- if (response != null) {
- var data = JSON.parse(post.Data)[0];
- var selected_values = post.Selected_Columns;
- var sp = selected_values.split(',');
- var column1 = sp[0];
- var column2 = sp[1];
- var column3 = sp[2];
- var Value_1 = data[column1];
- var Value_2 = data[column2];
- var Value_3 = data[column3];
- if (data == null || data == "" || data == undefined) {
- Value_1 = 0;
- Value_2 = 0;
- }
- if (Value_2 != 0)
- var difference = Value_2 - Value_1;
- if (Value_3 == null || Value_3 == undefined) {
- var kpi_percentage = Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(((Value_2 - Value_1) / Value_2) * 100, 2);
- if (difference > 0) {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('text-success');
- kpi_percentage = '+' + kpi_percentage;
- }
- else if (difference < 0) {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('text-danger');
- kpi_percentage = '-' + kpi_percentage;
- }
- else {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).removeClass('d-block');
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('hidden');
- }
- }
- else {
- var kpi_percentage = Value_3;
- if (Value_3 > 0) {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('text-success');
- kpi_percentage = '+' + kpi_percentage;
- }
- else if (Value_3 < 0) {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('text-danger');
- kpi_percentage = '-' + kpi_percentage;
- }
- else {
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).removeClass('d-block');
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).addClass('hidden');
- }
- }
- $(detailContainer).find("#kpi_value_1_" + portletwidgetid).text(Value_1);
- $(detailContainer).find("#kpi_value_2_" + portletwidgetid).text(Value_2);
- $(detailContainer).find("#kpi_Percentage_" + portletwidgetid).text(kpi_percentage + '% ');
- var colors = ["primary", "success", "warning", "danger", "info", "light", "secondary", "dark"];
- if (response.result.AppConfigurations.length != 0) {
- var designhtml = "";
- var appconfig = response.result.AppConfigurations;
- for (var i = 0; i < appconfig.length; i++) {
- var onlickurl = "";
- var sname = appconfig[i].SettingName.replace(/ /g, '');
- designhtml += ' <span class="mr-10"><a href="javascript:;" id="widgetconfig_' + sname + '" onclick="' + onlickurl + '">' +
- '<button class="btn btn-sm btn-' + colors[i] + ' pull-right btn-rounded text-white">' + appconfig[i].SettingName + '</button>' +
- '</a> </span>';
- }
- designhtml += "</div>";
- $(detailContainer).find("#config_widget_" + portletwidgetid).html(designhtml);
- }
- if (post.LinkReportId != 0 && post.LinkReportId != null) {
- }
- else {
- $(detailContainer).find("#showreport_" + portletwidgetid).addClass('hidden');
- }
- }
- }
- $(detailContainer).siblings('.line-loader').remove();
- $(detailContainer).removeClass('hidden');
- }
- linkReport(widgetid, portletwidgetid, containerid) {
- return __awaiter(this, void 0, void 0, function* () {
- var instance = this;
- yield Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getKPIWidget(widgetid).then(function (response) {
- var res = response.result;
- if (res != null) {
- let containerid = "div_kpireport_" + portletwidgetid;
- instance.navigationHelper.popup(res.LinkReportId, containerid, Unibase.Platform.Analytics.Components.ReportViewer.Instance(), null, Unibase.Platform.Helpers.Size.ExtraLarge);
- }
- });
- });
- }
- static Instance() {
- if (this.instance === null || this.instance === undefined)
- this.instance = new Comparision();
- return this.instance;
- }
- }
- KpiWidgets.Comparision = Comparision;
- })(KpiWidgets = Compact.KpiWidgets || (Compact.KpiWidgets = {}));
- })(Compact = Themes.Compact || (Themes.Compact = {}));
- })(Themes = Unibase.Themes || (Unibase.Themes = {}));
- })(Unibase || (Unibase = {}));
|