123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269 |
- var Bizgaze;
- (function (Bizgaze) {
- let Apps;
- (function (Apps) {
- let TM;
- (function (TM) {
- let Targets;
- (function (Targets) {
- let Components;
- (function (Components) {
- class CreateEmployyeWiseTarget extends Unibase.Platform.Core.BaseComponent {
- cssFiles() {
- return ['libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css'];
- }
- jsFiles() {
- return ['libs/tabulator/js/tabulator.min.js', 'apps/tm/targets/components/savetargetvalue.js'];
- }
- html() {
- var html = '<div></div>';
- return html;
- }
- loadHtml(containerid) {
- const html = `<div id="EmployeeTargetWidget"><div class="card"><div class="card-header border-0 py-1 d-flex align-items-center"><span class="biz-highlight-bg-color text-truncate w-25">Employee Target</span>
- <div class="card-search-bar target-search-wrap">
- <div class="search-wrapper d-flex w-100">
- <input class="form-control txt_global_search target-search-input" placeholder="Search Employee" oninput="Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().targetTabulatorSearch('${containerid}')">
- <i class="fa fa-search search-left-icon"></i>
- <div class="biz-highlight-bg-color main-search-loader search-clear-icon d-none"></div>
- <a href="javascript:;" class="search-clear-icon target-search-clear biz-highlight-bg-color d-none" onclick="Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
- </div>
- </div>
- </div><div class="card-body pa-0"><div id="Employee_TargetTable_${containerid}" class="target-widget-table templateviewer-tableview"></div></div></div></div>`;
- $("#" + containerid).html(html);
- }
- loadCustHtml(containerid) {
- const html = `<div id="CustomerTargetWidget"><div class="card"><div class="card-header border-0 py-1 d-flex align-items-center"><span class="biz-highlight-bg-color text-truncate w-25">Customer Target</span>
- <div class="card-search-bar target-search-wrap">
- <div class="search-wrapper d-flex w-100">
- <input class="form-control txt_global_search target-search-input" placeholder="Search Customer" oninput="Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().targetTabulatorSearch('${containerid}')">
- <i class="fa fa-search search-left-icon"></i>
- <div class="biz-highlight-bg-color main-search-loader search-clear-icon d-none"></div>
- <a href="javascript:;" class="search-clear-icon target-search-clear biz-highlight-bg-color d-none" onclick="Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
- </div>
- </div>
- </div><div class="card-body pa-0"><div id="Customer_TargetTable" class="target-widget-table templateviewer-tableview"></div></div></div></div>`;
- $("#" + containerid).html(html);
- }
- load() {
- }
- init(Containerid) {
- var instance = this;
- var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
- var allowothercontacts = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_allowothercontacts").Value);
- instance.fileCacheHelper.loadCssFile('libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css', null);
- instance.fileCacheHelper.loadJsFiles(["libs/tabulator/js/tabulator.min.js"], function () {
- if (allowothercontacts == 2) {
- Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().loadCustHtml(Containerid);
- instance.customerwisetarget();
- }
- else {
- Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().loadHtml(Containerid);
- instance.employeewisetarget(Containerid);
- }
- });
- }
- employeewisetarget(Containerid) {
- var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
- var targetdefinitionid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetdefinitionid").Value);
- var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
- var instance = this;
- instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
- Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().employeeWiseTarget(userinfo.sessionId, targetdefinitionid).then(function (response) {
- if (response != null) {
- var dataarry = [];
- var result = response.result;
- instance.employeetotaldata = response.result;
- instance.totalEmployeeResponse = jQuery.extend(true, [], response.result);
- var datatree = false;
- var userparentinformation = response.result.filter(function (o) { return o.EmployeeId === userinfo.userId + "p"; });
- if (userparentinformation.length > 0) {
- datatree = true;
- userparentinformation[0]["_children"] = [];
- }
- dataarry.push(userparentinformation[0]);
- Bizgaze.Apps.TM.Targets.Components.CreateEmployyeWiseTarget.Instance().loadEmpTargetTabulator(dataarry, datatree, response, Containerid);
- }
- });
- });
- }
- loadEmpTargetTabulator(response, datatree, response1, Containerid) {
- var instance = this;
- var autoNumFormatter = function (cell) {
- var row = cell.getRow();
- var rowIndex = row.getPosition(false);
- return (rowIndex + 1);
- };
- var editIcon = function (cell, formatterParams) {
- var icon = "<i class='fa fa-pencil'></i>";
- if (cell.getRow().getData()._children != undefined) {
- icon = "";
- }
- return icon;
- };
- instance.initialEmployeeData = response;
- instance.employeeData = new Tabulator(`#Employee_TargetTable_${Containerid}`, {
- placeholder: "<div class='alert alert-primary text-center mb-0 border-0 w-100 font-14 rounded-0'>No data available</div>",
- data: response,
- layout: "fitDataFill",
- columns: [
- { title: "EmployeeId", field: "EmployeeId", visible: false },
- { title: "Employee Name", field: "EmployeeName" },
- { title: "Target Value", field: "TargetValue" },
- {
- title: "Edit Target Value", formatter: editIcon, hozAlign: "center", cellClick: function (e, cell) {
- instance.currentRow = cell.getRow();
- if (!instance.currentRow._row.data.EmployeeId.includes("p")) {
- instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/savetargetvalue.js', function () {
- Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.Instance().loadForm(0, cell.getRow().getData().EmployeeId, 0, null, 0);
- });
- }
- }
- },
- ],
- dataTree: datatree,
- dataTreeSelectPropagate: true,
- dataTreeChildIndent: 15,
- dataTreeRowExpanded: function (row, level) {
- var currentemployeeid = row.getData().EmployeeId;
- if (currentemployeeid.includes("p"))
- currentemployeeid = currentemployeeid.replace("p", "");
- var empdatta = instance.employeetotaldata.filter(function (o) { return o.ParentId === Number(currentemployeeid); });
- for (var i = 0; i < empdatta.length; i++) {
- var userparentinformation = instance.employeetotaldata.filter(function (o) { return o.EmployeeId === empdatta[i].EmployeeId; });
- ;
- if (userparentinformation[0].EmployeeId.includes("p")) {
- if (userparentinformation.length > 0) {
- datatree = true;
- empdatta[i]["_children"] = [];
- }
- }
- }
- row.getData()._children = empdatta;
- row.getData().isExpanded = true;
- row.update(row.getData());
- instance.employeeData.redraw(true);
- instance.initialEmployeeData = instance.employeeData.getData();
- },
- dataTreeRowCollapsed: function (row, level) {
- row.getData().isExpanded = false;
- },
- dataTreeStartExpanded: function (row, level) {
- return row.getData().isExpanded;
- },
- });
- }
- customerwisetarget() {
- var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
- var targetdefinitionid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetdefinitionid").Value);
- var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
- var instance = this;
- instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
- Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().customerWiseTarget(userinfo.sessionId, targetdefinitionid).then(function (response) {
- if (response != null) {
- var result = response.result;
- instance.loadCustTargetTabulator("");
- instance.customerData.setData(result);
- }
- });
- });
- }
- loadCustTargetTabulator(response) {
- var instance = this;
- var tabledata = [];
- var autoNumFormatter = function (cell) {
- var row = cell.getRow();
- var rowIndex = row.getPosition(false);
- return (rowIndex + 1);
- };
- var editIcon = function (cell, formatterParams) {
- return "<i class='fa fa-pencil'></i>";
- };
- instance.customerData = new Tabulator("#Customer_TargetTable", {
- placeholder: "<div class='alert alert-primary text-center mb-0 border-0 w-100 font-14 rounded-0'>No data available</div>",
- data: tabledata,
- layout: "fitDataFill",
- columns: [
- { title: "EmployeeId", field: "EmployeeId", visible: false, },
- { title: "Customer Name", field: "EmployeeName" },
- { title: "ParentId", field: "ParentId", visible: false },
- { title: "Target Value", field: "TargetValue" },
- {
- title: "Edit Target Value", formatter: editIcon, hozAlign: "center", cellClick: function (e, cell) {
- instance.currentRow = cell.getRow();
- instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/savetargetvalue.js', function () {
- Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.Instance().loadForm(0, cell.getRow().getData().EmployeeId, 0, null, 0);
- });
- }
- },
- ],
- pagination: "local",
- paginationSize: 15,
- dataTree: false,
- dataTreeSelectPropagate: true,
- });
- }
- targetTabulatorSearch(containerId) {
- const instance = this;
- const containerEl = $(`#${containerId}`);
- const searchEl = containerEl.find('.target-search-input');
- const loaderEl = containerEl.find('.main-search-loader');
- const clearEl = containerEl.find('.target-search-clear');
- let tableEl = instance.employeeData;
- let totalResponse = instance.totalEmployeeResponse;
- let initialTableData = instance.initialEmployeeData;
- clearTimeout(instance.searchTimer);
- loaderEl.removeClass('d-none');
- clearEl.addClass('d-none');
- instance.searchTimer = setTimeout(function () {
- let searchVal = searchEl.val();
- searchVal = searchVal.trim().toLowerCase();
- if (searchVal) {
- if (containerEl.find('#CustomerTargetWidget').length > 0) {
- instance.customerData.setFilter("EmployeeName", "like", searchVal);
- }
- else {
- const searchedData = totalResponse.filter(employee => {
- return employee.EmployeeName.toLowerCase().includes(searchVal) && !employee.EmployeeId.includes('p');
- });
- tableEl.replaceData(searchedData);
- tableEl.redraw(true);
- }
- clearEl.removeClass('d-none');
- }
- else {
- if (containerEl.find('#CustomerTargetWidget').length === 0) {
- tableEl.replaceData(initialTableData);
- tableEl.redraw(true);
- }
- clearEl.addClass('d-none');
- }
- loaderEl.addClass('d-none');
- }, 1000);
- }
- clearTargetSearch(containerId) {
- const instance = this;
- const containerEl = $(`#${containerId}`);
- let initialTableData = instance.initialEmployeeData;
- containerEl.find('.target-search-input').val('');
- containerEl.find('.target-search-clear,.main-search-loader').addClass('d-none');
- if (containerEl.find('#CustomerTargetWidget').length > 0) {
- instance.customerData.setFilter("EmployeeName", "like", "");
- return;
- }
- instance.employeeData.replaceData(initialTableData);
- instance.employeeData.redraw(true);
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new CreateEmployyeWiseTarget();
- }
- return this.instance;
- }
- }
- Components.CreateEmployyeWiseTarget = CreateEmployyeWiseTarget;
- })(Components = Targets.Components || (Targets.Components = {}));
- })(Targets = TM.Targets || (TM.Targets = {}));
- })(TM = Apps.TM || (Apps.TM = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|