123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306 |
- var Bizgaze;
- (function (Bizgaze) {
- let Apps;
- (function (Apps) {
- let Transact;
- (function (Transact) {
- let Components;
- (function (Components) {
- let Invoices;
- (function (Invoices) {
- class LobSummary extends Unibase.Platform.Core.BaseComponent {
- constructor() {
- super(...arguments);
- this.appsHtml = '';
- this.palettecolors = [];
- this.onEditPalettes = '';
- this.IsAppRefresh = false;
- }
- jsFiles() {
- return ['libs/chartjs/chart.min.js'];
- }
- cssFiles() {
- return ["libs/chartjs/chart.min.css"];
- }
- html(id, containerid) {
- var instance = this;
- let html = ``;
- return html;
- }
- load(id, containerid, callback) {
- var instance = this;
- }
- init(containerid) {
- var instance = this;
- instance.loadMenu(containerid);
- }
- loadMenu(containerid) {
- var instance = this;
- $(`.${containerid}`).append(`<div class="card mb-0 border-0 BindData_` + containerid + ` findcontainer h-100" style="background:0 0">
- <div class="card-header py-2 px-3 search-bar-main-wrapper position-sticky t-0 bg-white z-index-2 border-0 viewer-header d-flex flex-wrap justify-content-between align-items-center" id="ViewerHeader_` + containerid + `">
- <div> <span class="biz-highlight-bg-color text-left font-weight-600">LoB Outstanding Summary</span></div>
- <div>
- <div id="select_new_Palette_Section" class=" floating-label-form-group-with-value d-none select_new_Palette_Section">
- <select id="select_new_Palette" class="form-control type-control required value-control dropdown_phonetype select_new_Palette" placeholder="Select" data-placeholder="Select" data-label="Palette" data-isparent="false">
- </select>
- </div>
- </div>
- </div>
- <div class="card-body p-2 userDesignWidgetCardBody">
- <ul class="lob_summary row px-3" id="lob_summary"></ul>
- <div class="text-danger w-100 font-12">* The Outstanding data will be auto-refreshed for every 24 hours.</div>
- </div>
- </div>`);
- $(".designsPreviewAppend").find(".select_new_Palette_Section").removeClass("d-none");
- $(`.BindData_` + containerid + ``).find(".lob_summary").html('');
- let height = $(`.${containerid}`).siblings('#hf_portletwidgetheight').val();
- if (height != '0px') {
- $('.userDesignWidgetCardBody').css({ "height": `` + height + ``, "overflow-x": "hidden" }).addClass("biz-custom-scrollbar");
- }
- instance.fileCacheHelper.loadJsFiles(["libs/chartjs/chart.min.js"], () => {
- Bizgaze.Apps.Crm.Palettes.Managers.PaletteManager.Instance().getPallettes().then((res) => {
- var instance = this;
- let indexInstance = Unibase.Themes.Compact.Components.Index.Instance();
- let currentuserpalleteid = indexInstance.currentTheme.paletteId;
- if (res.result != "" && res.result != null && res.length != 0) {
- let data = Array();
- for (let p = 0; p < res.result.length; p++) {
- data.push(res.result[p]);
- }
- data.sort(function (a, b) {
- var a1 = a.palletteid, b1 = b.palletteid;
- if (a1 == b1)
- return 0;
- return a1 > b1 ? 1 : -1;
- });
- for (let z = 0; z < data.length; z++) {
- let palletId = data[z].paletteid;
- let palletName = data[z].name;
- let html = '';
- if (currentuserpalleteid == palletId) {
- html = `<option value='` + palletId + `' selected >` + palletName + `</option>`;
- }
- else {
- html = `<option value='` + palletId + `' >` + palletName + `</option>`;
- }
- $('.select_new_Palette').append(html);
- }
- let palettid = '';
- $('.designsPreviewAppend').find(".select_new_Palette").change(function () {
- instance.onEditPalettes = $(this).find(":checked").val().toString();
- });
- $(`.BindData_` + containerid + ``).find(".select_new_Palette option").each(function () {
- var val = $(this).val();
- if (val == instance.onEditPalettes) {
- $(`.BindData_` + containerid + ``).find(".select_new_Palette option").removeAttr("checked");
- $(this).attr('selected', 'selected');
- }
- });
- palettid = instance.onEditPalettes;
- $(`.BindData_` + containerid + ``).find(".select_new_Palette").change(function () {
- $(".lob_summary").html('');
- palettid = $(this).find(":checked").val().toString();
- instance.loadPaletts(palettid);
- });
- if (palettid.length == 0) {
- palettid = $(`.BindData_` + containerid + ``).find(".select_new_Palette").find(":checked").val().toString();
- instance.loadPaletts(palettid);
- }
- else {
- instance.loadPaletts(palettid);
- }
- }
- else {
- instance.loadChart();
- }
- });
- });
- }
- loadPaletts(palettid) {
- let instance = this;
- Bizgaze.Apps.Crm.Palettes.Managers.PaletteManager.Instance().getPalletteColors(palettid).then((response) => {
- var data = Array();
- for (let i = 0; i < response.result.length; i++) {
- data.push(response.result[i]);
- }
- data.sort(function (a, b) {
- var a1 = a.palletteindex, b1 = b.palletteindex;
- if (a1 == b1)
- return 0;
- return a1 > b1 ? 1 : -1;
- });
- this.palettecolors = [];
- for (let i = 0; i < data.length; i++) {
- if (i < 5) {
- let getcolor = data[i].colorcode;
- this.palettecolors.push(getcolor);
- }
- }
- instance.loadChart();
- });
- }
- loadChart() {
- var instance = this;
- instance.fileCacheHelper.loadJsFiles(['apps/transact/managers/invoicemanager.js', "libs/chartjs/chart.min.js"], () => {
- Bizgaze.Apps.Transact.Managers.InvoiceManager.Instance().getlobsummary().then((res) => {
- let child_id = '';
- let child_lob;
- let child_lobid;
- let count = 0;
- if (res.result != null) {
- for (let i = 0; i < res.result.length; i++) {
- let data = JSON.parse(res.result[i]);
- let values = [];
- let breakup = [];
- let totalvalue = 0;
- count++;
- if (data.Data.length > 0) {
- let charts = data.Data;
- let chartlob = JSON.parse(charts);
- let lobsData = {};
- for (let j = 0; j < chartlob.length; j++) {
- let child_lobname = chartlob[j].lobname;
- child_id = chartlob[j].lobid;
- let child_value = chartlob[j].value;
- let child_breakup = chartlob[j].breakup;
- child_lobid = chartlob[j].lobid;
- if (lobsData[child_lobname] == undefined) {
- lobsData[child_lobname] = {
- name: child_lobname,
- id: child_lobid,
- values: [child_value],
- breakup: [child_breakup],
- };
- child_lob = child_lobname;
- let check = $(".lob_summary").find(`.pie_chart_` + child_lob + `_` + child_lobid + ``).length;
- if (check == 0) {
- var piechatstructure = `<li class="col-sm-4 p-1"><div class="card m-0 p-2">
- <div class="card-header p-2"><div class="d-flex align-items-center justify-content-between"><span class="list-item-main-title font-weight-600"> ` + child_lob + ` <span class="biz-highlight-text-color">(<span class='total_` + child_lobid + `'></span>)</span></span> <span class="text-right"><a class="btn btn-icon btn-flush-biz-theme btn-rounded flush-soft-hover w-30p h-30p report-maximize-btn lob_outstanding_summary_report_btn" data-lobidforreoport ='` + child_lobid + `' ><span class="btn-icon-wrap"><i class="las la-table font-18"></i></span></a></span></div></div>
- <div class="card-body">
- <canvas id=".pie_chart_` + child_lob + `_` + child_lobid + `" class=".pie_chart_` + child_lob + `_` + child_lobid + `" style = "width:100%;" data-lobid =` + child_lobid + `> </canvas>
- </div>
- </div></li>`;
- $(".lob_summary").append(piechatstructure);
- }
- }
- else {
- lobsData[child_lobname].values.push(child_value);
- lobsData[child_lobname].breakup.push(child_breakup);
- }
- }
- for (let objInner in lobsData) {
- var filters = [];
- if (this.palettecolors.length == 0) {
- this.palettecolors = [];
- this.palettecolors.push("#117899", "#f16c20", "#ecaa38", "#a2b86c", "#0f5b78");
- }
- var barColors = this.palettecolors;
- child_lobid = lobsData[objInner].id;
- child_lob = lobsData[objInner].name;
- let lob_xvalues = lobsData[objInner].values;
- for (let i = 0; i < lob_xvalues.length; i++) {
- totalvalue = totalvalue + lob_xvalues[i];
- }
- $('.total_' + child_lobid + '').html(`${totalvalue}`);
- let lob_yvalues = lobsData[objInner].breakup;
- new Chart(`.pie_chart_` + child_lob + `_` + child_lobid + ``, {
- type: "pie",
- data: {
- labels: lob_yvalues,
- datasets: [{
- backgroundColor: barColors,
- data: lob_xvalues
- }]
- },
- options: {
- responsive: true,
- onClick(e, item) {
- filters = [];
- if (item.length == 1) {
- var getcanvas = $(this)[0].canvas;
- var getlobid = $(getcanvas).attr("data-lobid");
- let lobactivepart = $(this)[0].tooltip.dataPoints[0].label;
- let checkingAnd = lobactivepart.toString();
- let Expid = 1;
- let check = checkingAnd.includes("and");
- if (check == true) {
- var breakpoints = checkingAnd.split("and");
- var breakpoints_One = breakpoints[0];
- var breakpoint = parseInt(breakpoints_One.replace(/[^0-9.]/g, "")).toString();
- if (breakpoints_One.includes("<") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.LessThan;
- }
- if (breakpoints_One.includes(">") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.GreaterThan;
- }
- if (breakpoints_One.includes("<=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.LessThanOrEquals;
- }
- if (breakpoints_One.includes(">=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.GreaterThanOrEquals;
- }
- filters.push({ 'Key': 'duedays', 'Value': breakpoint, ExpOp: Expid });
- var breakpoints_Two = breakpoints[1];
- var breakpoint = parseInt(breakpoints_Two.replace(/[^0-9.]/g, "")).toString();
- if (breakpoints_Two.includes("<") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.LessThan;
- }
- if (breakpoints_Two.includes(">") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.GreaterThan;
- }
- if (breakpoints_Two.includes("<=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.LessThanOrEquals;
- }
- if (breakpoints_Two.includes(">=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.GreaterThanOrEquals;
- }
- filters = filters.concat({ 'Key': 'duedays', 'Value': breakpoint, ExpOp: Expid });
- }
- else {
- var breakpoint = parseInt(checkingAnd.replace(/[^0-9.]/g, "")).toString();
- if (checkingAnd.includes("<=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.LessThanOrEquals;
- }
- if (checkingAnd.includes(">=") == true) {
- Expid = Unibase.Platform.Core.Enums.ExpressionOperator.GreaterThanOrEquals;
- }
- filters.push({ 'Key': 'duedays', 'Value': breakpoint, ExpOp: Expid });
- }
- var dynamicfilters = [];
- dynamicfilters.push({ 'Key': 'lobid', 'Value': getlobid, ExpOp: 1 });
- dynamicfilters = dynamicfilters.concat(filters);
- Unibase.Platform.Analytics.Components.ReportViewer.Instance().report_ViewAllByUniqueId('Bizgaze_Platform_Analytics_Reports_Lob_Outstanding_details_Summary', null, dynamicfilters, null);
- }
- },
- legend: {
- display: true,
- position: 'right'
- },
- },
- });
- }
- }
- }
- }
- $(".lob_outstanding_summary_report_btn").click(function () {
- let lobid = $(this).attr("data-lobidforreoport");
- var dynamicfilters = [];
- dynamicfilters.push({ 'Key': 'lobid', 'Value': lobid, ExpOp: 1 });
- dynamicfilters = dynamicfilters.concat(filters);
- Unibase.Platform.Analytics.Components.ReportViewer.Instance().report_ViewAllByUniqueId('Bizgaze_Platform_Analytics_Reports_Lob_Outstanding_details_Summary', null, dynamicfilters, null);
- });
- });
- });
- }
- static Instance() {
- if (this._instance === undefined)
- this._instance = new LobSummary();
- return this._instance;
- }
- }
- Invoices.LobSummary = LobSummary;
- })(Invoices = Components.Invoices || (Components.Invoices = {}));
- })(Components = Transact.Components || (Transact.Components = {}));
- })(Transact = Apps.Transact || (Apps.Transact = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|