This commit is contained in:
2023-03-11 17:30:20 +00:00
commit b6c4e025bc
5124 changed files with 1153349 additions and 0 deletions
@@ -0,0 +1,117 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class EmployeeBreakupWiseTarget extends Unibase.Platform.Core.BaseComponent {
jsFiles() {
return [];
}
cssFiles() {
return [];
}
html(id, containerid) {
var html = ``;
return html;
}
load(formId, containerid, callback) {
var instance = this;
$('.modal-body').css('overflow', '');
$("#btn_CloseTargetemp").click(function () {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
}
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
var instance = this;
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
}
init(containerid) {
var instance = this;
var ContactId = Unibase.Themes.Providers.DetailHelper.recordId;
this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().getContactWiseTargetDetails(ContactId).then(function (response) {
instance.employeebrack(containerid, response);
});
});
}
employeebrack(containerid, response) {
let html = '';
html = `<div class="row employee-target-row"></div>`;
$(`#${containerid}`).append(html);
if (response.result !== '') {
let data = response.result;
for (let i = 0; i < data.length; i++) {
var breakuplistArr = data[i].breakuplist.split(',');
var progressDeg;
var progressNo = data[i].AchievePercentage;
var from_date = moment(response.result[i].FromDate).format("DD MMMM YYYY");
var to_date = moment(response.result[i].ToDate).format("DD MMMM YYYY");
progressDeg = 270;
if (progressNo < 50) {
progressDeg = progressDeg - (progressNo * 3.6);
}
var progressAngle = 90;
if (progressNo == 50) {
progressAngle = -progressAngle;
}
else if (progressNo > 50) {
progressAngle = -(progressAngle - (3.6 * (progressNo - 50)));
}
let html = `<div class="col-md-6"><div class="card font-weight-500"> <ul class="d-flex flex-row align-items-center w-100"> <li> <div class="progress-circle-container"> <div class="progress-circle progress-10 m-3" style="background-image: linear-gradient(` + progressAngle + `deg, #66b8ff 50%, transparent 50%, transparent), linear-gradient(` + progressDeg + `deg, #66b8ff 50%, #ebebeb 50%, #ebebeb)"><span>` + data[i].AchievePercentage.toFixed(0) + ` </span></div></div></li><li class="d-flex flex-column ml-2"> <h5>` + data[i].TargetDefinitionname + `</h5> <p>` + data[i].TagName + `</p><p>From :<span class="text-primary pl-1"> ` + from_date + ` </span> To :<span class="text-primary pl-1"> ` + to_date + ` </span></p></li></ul> <ul class="d-flex ml-2"> <li class="mt-2 mx-2 w-5"> <a href="javascript:void(0);" class="left text-dark left-arrow"><i class="rounded-50 px-2 p-1 border border-light-20 fa fa-angle-left"></i></a> </li><li class="my-auto pr-1 contentScrolling w-90" style="overflow-x: hidden;"> <ul class="d-flex flex-row mx-2 timeline_ul timeline_ul-` + i + `"></ul> </li><li class="mt-2 mx-2 mr-3 text-right w-5"> <a href="javascript:void(0);" class="right text-dark right-arrow"><i class="rounded-50 px-2 p-1 border border-light-20 fa fa-angle-right"></i></a> </li></ul> <ul class="d-flex ml-3 mr-1 py-2 mt-1 justify-content-between font-weight-600"> <li class="d-flex flex-row"> <span><i class="font-25 text-primary fa fa-bullseye" aria-hidden="true"></i></span> <p class="mx-3 text-dark"> ` + data[i].TotalT + ` <span class="text-light-60 font-weight-500">Target</span> </p></li><li class="d-flex flex-row"> <span><i class="font-18 text-danger fa fa-hourglass-half" aria-hidden="true"></i></span> <p class="mx-3 text-dark"> ` + data[i].PendingTarget + ` <span class="text-light-60 font-weight-500">Pending</span> </p></li><li class="d-flex flex-row"> <span><i class="font-25 text-success fa fa-check-circle-o" aria-hidden="true"></i></span> <p class="mx-3 text-dark"> ` + data[i].TotalA + ` <span class="text-light-60 font-weight-500">Acheived</span> </p></li></ul></div></div>`;
$('.employee-target-row').append(html);
for (let j = 0; j < data[i].AchieveStatus.length; j++) {
var progressDeg1;
var progressNo1 = data[i].AchieveStatus[j];
progressDeg1 = 270;
if (progressNo1 < 50) {
progressDeg1 = progressDeg1 - (progressNo1 * 3.6);
}
var progressAngle1 = 90;
if (progressNo1 == 50) {
progressAngle1 = -progressAngle1;
}
else if (progressNo1 > 50) {
progressAngle1 = -(progressAngle1 - (3.6 * (progressNo1 - 50)));
}
let html_li = `<li class="d-flex flex-column"> <div class="d-flex flex-row"> <hr class="bg-success" width="85px" style="height: 5px;"> <div class="my-auto progress-circle-timeline progress-10" style="background-image: linear-gradient(` + progressAngle1 + `deg, #66b8ff 50%, transparent 50%, transparent), linear-gradient(` + progressDeg1 + `deg, #66b8ff 50%, #ebebeb 50%, #ebebeb);"><span>` + data[i].AchieveStatus[j].toFixed(0) + `%</span></div></div><span class="text-right px-1 ">` + breakuplistArr[j] + `</span> </li>`;
$(`.timeline_ul-${i}`).append(html_li);
}
}
function changeContentScroll(pos, x, elem) {
var content = $($(elem).parent().siblings('.contentScrolling '));
var currentPos = content.scrollLeft();
content.scrollLeft(currentPos + pos);
}
$('.left-arrow').click(function (e) {
changeContentScroll(-36, 0, this);
});
$('.right-arrow').click(function (e) {
changeContentScroll(+36, 0, this);
});
return html;
}
else {
let message = response.message;
let html = '<div class="alert alert-warning text-center w-100">' + message + '</div>';
$('.employee-target-row').append(html);
}
}
static Instance() {
if (this._instance === undefined) {
this._instance = new EmployeeBreakupWiseTarget();
}
return this._instance;
}
}
Components.EmployeeBreakupWiseTarget = EmployeeBreakupWiseTarget;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
File diff suppressed because one or more lines are too long
@@ -0,0 +1,46 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class RefreshTenureTypes extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return [];
}
jsFiles() {
return [];
}
html() {
return "";
}
load() {
}
init() {
Bizgaze.Apps.TM.Targets.Components.RefreshTenureTypes.Instance().refreshtenuretypes();
}
refreshtenuretypes() {
var instance = this;
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().refreshTenureTypes().then(function (response) {
MessageHelper.Instance().showSuccess(response.message, '');
});
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new RefreshTenureTypes();
}
return this.instance;
}
}
Components.RefreshTenureTypes = RefreshTenureTypes;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
@@ -0,0 +1 @@
{"version":3,"file":"refreshtenuretypes.js","sourceRoot":"","sources":["refreshtenuretypes.ts"],"names":[],"mappings":"AAEA,IAAU,OAAO,CA6ChB;AA7CD,WAAU,OAAO;IACb,IAAiB,IAAI,CA2CpB;IA3CD,WAAiB,IAAI;QACjB,IAAiB,EAAE,CAyClB;QAzCD,WAAiB,EAAE;YACf,IAAiB,OAAO,CAuCvB;YAvCD,WAAiB,OAAO;gBACpB,IAAiB,UAAU,CAqC1B;gBArCD,WAAiB,UAAU;oBACvB,MAAa,kBAAmB,SAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa;wBAEvE,QAAQ;4BACJ,OAAO,EAAE,CAAC;wBACd,CAAC;wBACD,OAAO;4BACH,OAAO,EAAE,CAAC;wBACd,CAAC;wBACD,IAAI;4BACA,OAAO,EAAE,CAAC;wBACd,CAAC;wBACD,IAAI;wBAEJ,CAAC;wBACD,IAAI;4BACA,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,CAAC;wBAC1F,CAAC;wBACD,kBAAkB;4BAEd,IAAI,QAAQ,GAAG,IAAI,CAAC;4BACpB,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,2CAA2C,EAAE;gCAC7E,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,UAAU,QAAQ;oCAClG,aAAa,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gCAC/D,CAAC,CAAC,CAAC;4BACP,CAAC,CAAC,CAAC;wBACP,CAAC;wBAGD,MAAM,CAAC,QAAQ;4BACX,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;gCAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;6BAC5C;4BACD,OAAO,IAAI,CAAC,QAAQ,CAAC;wBACzB,CAAC;qBAEJ;oBAnCY,6BAAkB,qBAmC9B,CAAA;gBACL,CAAC,EArCgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAqC1B;YACL,CAAC,EAvCgB,OAAO,GAAP,UAAO,KAAP,UAAO,QAuCvB;QACL,CAAC,EAzCgB,EAAE,GAAF,OAAE,KAAF,OAAE,QAyClB;IACL,CAAC,EA3CgB,IAAI,GAAJ,YAAI,KAAJ,YAAI,QA2CpB;AACL,CAAC,EA7CS,OAAO,KAAP,OAAO,QA6ChB"}
+1
View File
@@ -0,0 +1 @@
var Bizgaze;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i extends Unibase.Platform.Core.BaseComponent{cssFiles(){return[]}jsFiles(){return[]}html(){return""}load(){}init(){n.Apps.TM.Targets.Components.RefreshTenureTypes.Instance().refreshtenuretypes()}refreshtenuretypes(){var t=this;t.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().refreshTenureTypes().then(function(n){MessageHelper.Instance().showSuccess(n.message,"")})})}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.RefreshTenureTypes=i})(i=t.Components||(t.Components={}))})(i=t.Targets||(t.Targets={}))})(i=t.TM||(t.TM={}))})(t=n.Apps||(n.Apps={}))})(Bizgaze||(Bizgaze={}));
@@ -0,0 +1,223 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class SaveTargetValue extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return [];
}
jsFiles() {
return ['apps/tm/targets/managers/targetmanager.js'];
}
html() {
var html = `<form id="frm_bizgazeApp_Employee_edit" data-validate="parsley" method="post"><header class="bg-white modal-header pa-10" id="contactheader"></header><div data-simplebar class="scrollable w-f-md simple-scroll-bar" style="overflow:auto;"><div class="table-responsive"><table class="tblContactTarget table-bordered"></table></div></div><footer class="bg-white modal-footer pa-10"><a href="javascript:;" id="btn_CloseTargetemp" class="btn btn-light btn-sm mr-auto">Close</a><a href="javascript:;" id="btn_SaveEmployeeTarget" class="btn btn-primary btn-sm">Save</a></footer></form>`;
return html;
}
load(formId, containerid, callback) {
var instance = this;
$('.modal-body').css('overflow', '');
$("#btn_CloseTargetemp").click(function () {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
$("#btn_SaveEmployeeTarget").click(function () {
instance.saveTarget(containerid);
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
}
saveTarget(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 itemList = [];
$(".tblContactTarget").find(".TargetValue-row").each(function () {
var TagId = Number($(this).find("#hfTagId").val());
var BreakupTenureId = Number($(this).find("#BreakupTenureId").val());
var ContactTargetId = Number($(this).find("#ContactTargetId").val());
var TargetValue = Number($(this).find("#TargetValue").val());
var ContactId = Number($('#hfcontactId').val());
var TotalTarget = Number($(".tblContactTarget").find(".row-total-rw-" + TagId).html());
itemList.push({
TagId: TagId,
BreakupTenureId: BreakupTenureId,
TargetDefinitionId: targetdefinitionid,
ContactTargetId: ContactTargetId,
TargetValue: TargetValue,
ContactId: ContactId,
});
});
var instance = this;
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().savecontacttargets(itemList).then(function (response) {
if (response != null) {
MessageHelper.Instance().showSuccess(response.message, '');
}
var detailobj = Unibase.Themes.Compact.Components.Details.Instance();
var detail_instance = Unibase.Themes.Compact.Components.Details.Instance();
var containerid = detail_instance._containerId;
var portletid = detail_instance.unibase_core_activeportletid;
detail_instance.loadWidgets(detailobj._installedAppId, portletid, "#" + containerid + "");
});
});
}
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
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);
Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.instance.loadTarget(targetdefinitionid, Pk_Value);
var instance = this;
instance.loadData(Pk_Value);
}
loadData(Pk_Value) {
this.navigationHelper.popup(Pk_Value, '', Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.Instance(), null, Unibase.Platform.Helpers.Size.Large);
}
loadTarget(TargetDefinitionId, ContactId) {
var instance = this;
var ar = [];
this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().LoadTargetDetails(TargetDefinitionId, ContactId).then(function (response) {
if (response != null) {
var contacthtml = '<strong class="biz-highlight-bg-color cname">' + response.result.ContactName + '</strong><input type="hidden" id="hfcontactId" class="hf-' + response.result.Contactid + '"value="' + response.result.Contactid + '" />';
$("#contactheader").html(contacthtml);
var element = $(".tblContactTarget");
var html = '<thead> <tr class="text-dark"><td>Tag Name</td>';
var bname = response.result.BreakupTenureName;
for (var i = 0; i < bname.length; i++) {
html += '<td class="text-left volume">' + bname[i] + '</td>';
}
var btid = response.result.BreakupTenureid;
var btid1 = response.result.TenureTypeId;
html += '<td class="text-left">Total</td></tr></thead>';
var contacttaglist = response.result.ContactList;
html += '<tbody>';
var totaltarget = 0;
for (var i = 0; i < contacttaglist.length; i++) {
html += '<tr class="rw-' + contacttaglist[i].TagId + '" id="totvalue"><td style="height: 29px; width: 126px;">' + contacttaglist[i].TagName + '</td>';
var tlist = contacttaglist[i].TargetValues;
var targetval = 0;
for (var j = 0; j < tlist.length; j++) {
html += '<td class="TargetValue-row ' + tlist[j].BreakupTenureName + '">';
html += '<input type = "hidden" id = "hfbreakupname" class="' + tlist[j].BreakupTenureName + '" />' +
' <input type="hidden" id="hfTagId" class="hf-' + contacttaglist[i].TagId + '" value="' + contacttaglist[i].TagId + '" />' +
' <input type="hidden" id="BreakupTenureId" class="hf-' + tlist[j].BreakupTenureId + '" value="' + tlist[j].BreakupTenureId + '" />' +
'<input type="hidden" id="ContactTargetId" class="hf-' + tlist[j].ContactTargetId + '" value="' + tlist[j].ContactTargetId + '" />' +
'<input type="text" onkeypress="return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13 || event.charCode == 46) ? null : event.charCode >= 48 && event.charCode <= 57" class="no-border text-left " style="height: 29px; width: 126px;" id="TargetValue" value="' + tlist[j].TargetValue + '" /></td>';
targetval = targetval + tlist[j].TargetValue;
var bval = {
BreakupTenureName: tlist[j].BreakupTenureName,
TargetValue: tlist[j].TargetValue
};
ar.push(bval);
}
html += '<td class="font-bold text-left row-total-rw-' + contacttaglist[i].TagId + '" style="height: 29px; width: 126px;">' + Number(targetval) + '</td>';
html += '</tr>';
totaltarget = totaltarget + targetval;
}
html += '<tr class="font-bold text-left cc" style="height: 29px; width: 126px;">';
html += '<td >Total</td>';
for (var k = 0; k < bname.length; k++) {
var tval = 0;
for (var l = 0; l < ar.length; l++) {
if (bname[k] == ar[l].BreakupTenureName) {
tval = tval + ar[l].TargetValue;
}
}
html += '<td class="col-tot-' + bname[k] + ' coltot">' + tval + '</td>';
}
html += '<td class="maintotal">' + totaltarget + '</td>';
html += '</tr>';
html += '</tbody>';
element.html(html);
var ProviderName = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_providername").Value;
if (ProviderName == "Sales Target By Value For Employee" || ProviderName == "Sales Target By Volume For Employee" || ProviderName == "Sales Target By Value For Customer" || ProviderName == "Sales Target By Volume For Customer") {
$('.TargetValue-row').keyup(function (event) {
if (event.which != 46 && (event.which < 47 || event.which > 59)) {
event.preventDefault();
if ((event.which == 46)) {
event.preventDefault();
}
}
});
}
else {
$('.TargetValue-row').keyup(function (event) {
if ((event.which > 47 && event.which < 58) || (event.which == 37 || event.which == 124)) {
}
else {
event.preventDefault();
}
}).on('paste', function (event) {
event.preventDefault();
});
}
Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.instance.bind(element);
}
});
});
}
bind(element) {
$('.tblContactTarget tr').each(function () {
$(this).find('.TargetValue-row').each(function () {
var cls = $(this).attr('class').split(' ');
Bizgaze.Apps.TM.Targets.Components.SaveTargetValue.instance.calculate(cls[0]);
});
});
}
calculate(cls) {
function delay(callback, ms) {
var timer = 0;
return function () {
var context = this, args = arguments;
clearTimeout(timer);
timer = setTimeout(function () {
callback.apply(context, args);
}, ms || 0);
};
}
$('.' + cls + '').keyup(delay(function (e) {
var brekupclass = $(this).find('#hfbreakupname').attr('class');
var elemrn = $(this).parent().attr('class');
const $cells = $('.' + elemrn).find('.TargetValue-row');
var rowTotal = 0;
$cells.each(function eachCell(i) {
var val2 = $(this).find("#TargetValue").val();
rowTotal += Number(val2);
});
$('.row-total-' + elemrn).text(rowTotal.toFixed(2));
var sumcolumn = 0;
$('.' + brekupclass).each(function () {
var value = $(this).find("#TargetValue").val();
if (!isNaN(value) && value.length != 0) {
sumcolumn += Number(value);
}
});
$(".col-tot-" + brekupclass + "").text(sumcolumn.toFixed(2));
var maintotal = 0;
var element = $('.cc').find('.coltot');
element.each(function () {
var value = $(this).text();
if (!isNaN(value) && value.length != 0) {
maintotal += parseFloat(value);
}
$('.maintotal').text(maintotal.toFixed(2));
});
}, 500));
}
static Instance() {
if (this.instance === undefined) {
this.instance = new SaveTargetValue();
}
return this.instance;
}
}
Components.SaveTargetValue = SaveTargetValue;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,100 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class Target extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return [];
}
jsFiles() {
return ["apps/tm/targets/managers/targetmanager.js"];
}
html(id, containerid) {
return '<div class="modal-header bg-white"><strong class="text-dark">Import</strong><div id="industry_validation" class="clear form-error-message"></div></div><div data-simplebar class="import-export-body modal-body simple-scroll-bar"><form id="form_Import"><div id="div_importexport" class=""><div class="card" id = "importexportsection"><div class="card-body"><div class="" id="div_Import"><input type="file" id="import_File" class="bg-light d-none d-sm-block required"><a href="javascript:;" id="fileUpload" class="btn btn-warning text-white mt-15">Upload</a></div></div></div><div class="hidden" id="div_Export"><span id="sp_formName"></span><a href="javascript:;" id="fileExport" class="btn btn-primary text-white">Download</a></div></div></form></div><div class="modal-footer bg-white"><button id="btn_CloseImport" class="btn btn-secondary btn-sm mr-auto">Close</button></div>';
}
load(id, containerid, callback) {
Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/membership/infos/identity.js", function () {
});
$("#btn_CloseImport").click(function () {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
$('#import_File').change(function (e) {
Bizgaze.Apps.TM.Targets.Components.Target.Instance().fileEvent(e);
});
$("#fileUpload").click(function () {
Bizgaze.Apps.TM.Targets.Components.Target.Instance().importTarget();
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
}
init() {
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);
if (allowothercontacts == 1) {
Bizgaze.Apps.TM.Targets.Components.Target.Instance().exportEmployeeTarget();
}
else {
Bizgaze.Apps.TM.Targets.Components.Target.Instance().exportCustomerTarget();
}
}
render() {
}
fileEvent($event) {
const fileSelected = $event.target.files[0];
Bizgaze.Apps.TM.Targets.Components.Target.fileData = new FormData();
Bizgaze.Apps.TM.Targets.Components.Target.fileData.append(fileSelected.name, fileSelected);
}
exportEmployeeTarget() {
this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().exportEmployeeTarget(Unibase.Themes.Providers.DetailHelper.recordId).then(function (response) {
MessageHelper.Instance().showSuccess(response.message, '');
});
});
}
exportCustomerTarget() {
this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().exportCustomerTarget(Unibase.Themes.Providers.DetailHelper.recordId).then(function (response) {
MessageHelper.Instance().showSuccess(response.message, '');
});
});
}
uploadEmployeeTarget() {
var instance = this;
instance.navigationHelper.popup(0, '', Bizgaze.Apps.TM.Targets.Components.Target.Instance(), null, Unibase.Platform.Helpers.Size.DockLeft);
}
importTarget() {
var id = Unibase.Themes.Providers.DetailHelper.recordId;
const url = _appsettings.server_url() + '/apis/v4/bizgaze/tm/targets/importemployeetarget/targetdefinitionid/' + id;
Unibase.Platform.Helpers.FileHelper.Instance().upload(url, Bizgaze.Apps.TM.Targets.Components.Target.fileData).then(function (response) {
if (response != null) {
MessageHelper.Instance().showSuccess(response.message, '');
var detailobj = Unibase.Themes.Compact.Components.Details.Instance();
var detail_instance = Unibase.Themes.Compact.Components.Details.Instance();
var containerid = detail_instance._containerId;
var portletid = detail_instance.unibase_core_activeportletid;
detail_instance.loadWidgets(detailobj._installedAppId, portletid, "#" + containerid + "");
}
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new Target();
}
return this.instance;
}
}
Target.fileData = new FormData();
Components.Target = Target;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
@@ -0,0 +1 @@
{"version":3,"file":"target.component.js","sourceRoot":"","sources":["target.component.ts"],"names":[],"mappings":"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"}
+1
View File
@@ -0,0 +1 @@
var Bizgaze;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i extends Unibase.Platform.Core.BaseComponent{cssFiles(){return[]}jsFiles(){return["apps/tm/targets/managers/targetmanager.js"]}html(){return'<div class="modal-header bg-white"><strong class="text-dark">Import<\/strong><div id="industry_validation" class="clear form-error-message"><\/div><\/div><div data-simplebar class="import-export-body modal-body simple-scroll-bar"><form id="form_Import"><div id="div_importexport" class=""><div class="card" id = "importexportsection"><div class="card-body"><div class="" id="div_Import"><input type="file" id="import_File" class="bg-light d-none d-sm-block required"><a href="javascript:;" id="fileUpload" class="btn btn-warning text-white mt-15">Upload<\/a><\/div><\/div><\/div><div class="hidden" id="div_Export"><span id="sp_formName"><\/span><a href="javascript:;" id="fileExport" class="btn btn-primary text-white">Download<\/a><\/div><\/div><\/form><\/div><div class="modal-footer bg-white"><button id="btn_CloseImport" class="btn btn-secondary btn-sm mr-auto">Close<\/button><\/div>'}load(t,i){Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/membership/infos/identity.js",function(){});$("#btn_CloseImport").click(function(){$("#"+i).modal("hide");$("#"+i).remove()});$("#import_File").change(function(t){n.Apps.TM.Targets.Components.Target.Instance().fileEvent(t)});$("#fileUpload").click(function(){n.Apps.TM.Targets.Components.Target.Instance().importTarget();$("#"+i).modal("hide");$("#"+i).remove()})}init(){var r=this,t=Unibase.Themes.Providers.DetailHelper.installedAppId,i=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+t+"_allowothercontacts").Value);i==1?n.Apps.TM.Targets.Components.Target.Instance().exportEmployeeTarget():n.Apps.TM.Targets.Components.Target.Instance().exportCustomerTarget()}render(){}fileEvent(t){const i=t.target.files[0];n.Apps.TM.Targets.Components.Target.fileData=new FormData;n.Apps.TM.Targets.Components.Target.fileData.append(i.name,i)}exportEmployeeTarget(){this.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().exportEmployeeTarget(Unibase.Themes.Providers.DetailHelper.recordId).then(function(n){MessageHelper.Instance().showSuccess(n.message,"")})})}exportCustomerTarget(){this.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().exportCustomerTarget(Unibase.Themes.Providers.DetailHelper.recordId).then(function(n){MessageHelper.Instance().showSuccess(n.message,"")})})}uploadEmployeeTarget(){var t=this;t.navigationHelper.popup(0,"",n.Apps.TM.Targets.Components.Target.Instance(),null,Unibase.Platform.Helpers.Size.DockLeft)}importTarget(){var t=Unibase.Themes.Providers.DetailHelper.recordId;const i=_appsettings.server_url()+"/apis/v4/bizgaze/tm/targets/importemployeetarget/targetdefinitionid/"+t;Unibase.Platform.Helpers.FileHelper.Instance().upload(i,n.Apps.TM.Targets.Components.Target.fileData).then(function(n){if(n!=null){MessageHelper.Instance().showSuccess(n.message,"");var i=Unibase.Themes.Compact.Components.Details.Instance(),t=Unibase.Themes.Compact.Components.Details.Instance(),r=t._containerId,u=t.unibase_core_activeportletid;t.loadWidgets(i._installedAppId,u,"#"+r+"")}})}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}i.fileData=new FormData;t.Target=i})(i=t.Components||(t.Components={}))})(i=t.Targets||(t.Targets={}))})(i=t.TM||(t.TM={}))})(t=n.Apps||(n.Apps={}))})(Bizgaze||(Bizgaze={}));
@@ -0,0 +1,269 @@
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 = {}));
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,277 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class CustomerTargetVSAchive extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return ['libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css'];
}
jsFiles() {
return ['libs/tabulator/js/tabulator.min.js'];
}
html() {
return "";
}
loadCustHtml(containerid) {
const html = `<div id="CustomerTargetAchiveWidget"><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 VS Achieve</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.CustomerTargetVSAchive.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.CustomerTargetVSAchive.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
</div>
</div>
</div><div class="card-body pa-0"><div id="Customer_Table" class="target-widget-table templateviewer-tableview"></div></div></div></div>`;
$("#" + containerid).html(html);
}
loadEmpHtml(containerid) {
const html = `<div id="EmployeeTargetAchiveWidget"><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 VS Achieve</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.CustomerTargetVSAchive.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.CustomerTargetVSAchive.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
</div>
</div>
</div><div class="card-body pa-0"><div id="Employee_Table_${containerid}" 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 == 1) {
Bizgaze.Apps.TM.Targets.Components.CustomerTargetVSAchive.Instance().loadEmpHtml(Containerid);
instance.employeewisetargetvsachive(Containerid);
}
else {
Bizgaze.Apps.TM.Targets.Components.CustomerTargetVSAchive.Instance().loadCustHtml(Containerid);
instance.loadCustTabulator("");
instance.customerwisetargetvsachive();
}
});
}
customerwisetargetvsachive() {
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().loadCustomerTargetvsAchive(userinfo.sessionId, targetdefinitionid).then(function (response) {
if (response != null) {
var result = response.result;
instance.customerData.setData(result);
}
});
});
}
employeewisetargetvsachive(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().loadEmployeeTargetvsAchive(userinfo.sessionId, targetdefinitionid).then(function (response) {
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.CustomerTargetVSAchive.Instance().loadTabulator(dataarry, datatree, response, containerid);
});
});
}
loadTabulator(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) {
return "<i class='fa fa-pencil'></i>";
};
instance.initialEmployeeData = response;
instance.employeeData = new Tabulator(`#Employee_Table_${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: "Achieved Value", field: "AchievedTarget", cellClick: function (e, cell) {
instance.currentRow = cell.getRow();
instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/w_tagwisetarget.js', function () {
if (!instance.currentRow._row.data.EmployeeId.includes("p")) {
Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.Instance().loadForm(0, cell.getRow().getData().EmployeeId, 0, null, 0);
}
});
}, formatter: function (cell) {
instance.currentRow = cell.getRow();
var achive = cell.getValue();
if (!instance.currentRow._row.data.EmployeeId.includes("p")) {
return "<span class='text-primary' font-weight:bold;'>" + achive + "</span>";
}
else {
return achive;
}
}
},
{ title: "Percentage", field: "Percentage" },
],
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;
},
});
}
loadCustTabulator(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_Table", {
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: "Achieved Value", field: "AchievedTarget", cellClick: function (e, cell) {
instance.currentRow = cell.getRow();
instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/w_tagwisetarget.js', function () {
Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.Instance().loadForm(0, cell.getRow().getData().EmployeeId, 0, null, 0);
});
}, formatter: function (cell) {
instance.currentRow = cell.getRow();
var achive = cell.getValue();
return "<span class='text-primary' font-weight:bold;'>" + achive + "</span>";
}
},
{ title: "Percentage", field: "Percentage" },
],
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('#CustomerTargetAchiveWidget').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('#CustomerTargetAchiveWidget').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('#CustomerTargetAchiveWidget').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 CustomerTargetVSAchive();
}
return this.instance;
}
}
Components.CustomerTargetVSAchive = CustomerTargetVSAchive;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,334 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class DBPPlanningWidget extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return [];
}
jsFiles() {
return ['apps/tm/targets/components/savetargetvalue.js'];
}
html() {
var html = '<div></div>';
return html;
}
load() {
}
init(Containerid) {
var instance = this;
Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadHtml(Containerid);
$(".submit").click(function () {
alert("hai");
});
$('.TargetValue-row').keyup(function (event) {
if (event.which != 46 && (event.which < 47 || event.which > 59)) {
event.preventDefault();
if ((event.which == 46)) {
event.preventDefault();
}
}
});
$(".saveTargetPlan").click(function () {
Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(false);
});
$(".SendforDBCApproval").click(function () {
Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(true);
});
}
loadHtml(containerid) {
var html = `<div class="card pb-15 mb-0" id="DBPTarget">
<div class="card-header Configure_Target">Target</div>
<div class="card-body text-center" >
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadEditPlan();" class="btn btn-success px-5"> Configure Target </a>
</div></div>`;
$("." + containerid).html(html);
}
loadEditPlan() {
$(".Configure_Target").html('');
var html = `<div class="card-body text-center Edit_TargetPlan">
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadPlanningHtml();" type="button" class="btn btn-info">Edit Target Plan</a>
<a href="javascript:;" type="button" class="btn btn-info">Send for DBC Approval</a>
</div>`;
$("#DBPTarget").html(html);
}
loadPlanningHtml() {
const instance = this;
$(".Edit_TargetPlan").html('');
var html = `<div class="card-body d-flex align-items-end">
<div class="col-md-3 floating-label-form-group-with-value" id="IncludedTags">
<label for="txt_States">States</label>
<input type="hidden" class="hf_States" value="" />
<select style="width:100%" id="txt_States" value="" class="no-border form-control select2_IncludedTags txtIncludedTags" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3 floating-label-form-group-with-value" id="Districts">
<label for="txt_Districts">Districts</label>
<input type="hidden" class="hf_Districts" value="" />
<select style="width:100%" id="txt_Districts" value="" class="no-border form-control select2_Districts txtDistricts" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3 floating-label-form-group-with-value" id="IncludedTags">
<label for="txt_segment">Segments</label>
<input type="hidden" class="hf_segment" value="" />
<select style="width:100%" id="txt_segment" value="" class="no-border form-control select2_IncludedTags txtIncludedTags" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3">
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().ApplyFilter()" type="submit" id="submit" class="btn btn-primary h-100 mt-4">Apply Filter</a>
<button class="h-100 mt-4 ml-2 btn btn-light">Clear</button>
</div>
</div>
<div class="table-responsive px-10">
<table class="table table-bordered table-striped" id="tblDBPTarget">
<thead>
<tr class="bg-light">
<th>District Name</th>
<th>Product Line</th>
<th>Segment</th>
<th class="text-center">Plan Name</th>
<th class="text-center">Quantity</th>
</tr>
</thead>
<tbody class="table_DBPTbody d-none" id="tableDBPTbody"></tbody>
<tfoot id="tableDBPTFoot" class="table-active font-weight-600"></tfoot>
</table>
<div id="dbpTablePagination" class="pagination custom-pagination pagination-rounded pull-right"></div>
</div>
<div class="text-right m-auto">
<button type="button" class="btn btn-info saveTargetPlan" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(false);">Save as Draft</button>
<button type="button" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(true);" class="btn btn-info SendforDBCApproval">Send for DBC Approval</button>
</div>`;
$("#DBPTarget").html(html);
var url = _appsettings.server_url() + '/apis/v4/bizgaze/mobil/targets/getdbpsegments';
AutoCompleteHelper.getHelper().Create($("#txt_segment"), ".hf_segment", url, function (response) {
});
var url = _appsettings.server_url() + '/apis/v4/bizgaze/mobil/targets/getdbpstates';
AutoCompleteHelper.getHelper().Create($("#txt_States"), ".hf_States", url, function (response) {
});
var stateIds = $("#txt_States").val();
var url = _appsettings.server_url() + '/apis/v4/bizgaze/mobil/targets/getdbpdistricts/stateId/' + stateIds;
AutoCompleteHelper.getHelper().Create($("#txt_Districts"), ".hf_Districts", url, function (response) {
});
$("#txt_States").change(function () {
var stateIds = $("#txt_States").val();
var url = _appsettings.server_url() + '/apis/v4/bizgaze/mobil/targets/getdbpdistricts/stateId/' + stateIds;
AutoCompleteHelper.getHelper().Create($("#txt_Districts"), ".hf_Districts", url, function (response) {
});
});
Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().ApplyDistricts();
}
ApplyDistricts() {
var instance = this;
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().ApplyDBPDistricts().then(function (response) {
let data = response.result;
var state_Ids = data.StateIds;
var state_Names = data.StateNames;
var district_Ids = data.DistrictIds;
var district_Names = data.DistrictNames;
var stateIds = [];
var stateNames = [];
var districtIds = [];
var districtNames = [];
stateIds = state_Ids.split(",");
stateNames = state_Names.split(",");
districtIds = district_Ids.split(",");
districtNames = district_Names.split(",");
if (stateIds.length != 0) {
for (let i = 0; i < stateIds.length; i++) {
var state_option = new Option(stateNames[i], stateIds[i], true, true);
$("#txt_States").append(state_option).trigger('change');
}
}
if (districtIds.length != 0) {
for (let j = 0; j < districtIds.length; j++) {
var state_option = new Option(districtNames[j], districtIds[j], true, true);
$("#txt_Districts").append(state_option).trigger('change');
}
}
});
});
}
ApplyFilter() {
var instance = this;
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 stateid = ($("#txt_States").val()).toString().length === 0 ? 0 : ($("#txt_States").val()).toString();
var districtid = ($("#txt_Districts").val()).toString().length === 0 ? 0 : ($("#txt_Districts").val()).toString();
var segmentid = ($("#txt_segment").val()).toString().length === 0 ? 0 : ($("#txt_segment").val()).toString();
var productlinetagid = "adfgb";
var distributorid = 0;
var obj = {
StateId: stateid,
DistrictId: districtid,
SegmentId: segmentid,
ProductLineId: productlinetagid,
DistributorId: distributorid,
TargetDefinitionId: targetdefinitionid
};
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
instance.navigationHelper.showLoading();
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().GetDBPTargetPlannings(obj).then(function (response) {
if (response) {
$("#divDBPPlanning2021").html('<tr class="row-dbpitem hidden"></tr>');
$(".row-dbpitem:last").before('<tr></tr>');
}
else {
return false;
}
$(".table_DBPTbody").html('');
for (var i = 0; i < response.result.length; i++) {
let isplanRow = response.result[i].PlanName == '2023';
let isGrandTotal = response.result[i].SegmentTag == 'GrandTotal';
var res = response.result;
var html = ``;
if (!isGrandTotal) {
if (isplanRow) {
html = `<tr class="bg-white TargetValue-row">
<td class="Districtname">` + response.result[i].DistrictName + `</td>
<td class="ProductLine">` + response.result[i].ProductLineTag + `</td>
<td class="Segment" >` + response.result[i].SegmentTag + `</td>
<td class="text-center PlanName">` + response.result[i].PlanName + `</td>
<td class="text-center"><input type="text" onkeyup="return Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().calTotal(this)" class="text-center TargetValue editTarget" value=` + response.result[i].TotalQty + `></td>
<input type="hidden" id="hf_PlanId" value=` + res[i].PlanId + ` />
<input type="hidden" id="hf_StateId" value=` + res[i].StateId + ` />
<input type="hidden" id="hf_DistrictId" value=` + res[i].DistrictId + ` />
<input type="hidden" class="hf_ProductlineId" id="hf_ProductlineId" value=` + res[i].ProductlineId + `>
<input type="hidden" class="hf_SegmentTagId" id="hf_SegmentTagId" value=` + res[i].SegmentTagId + `>
<input type="hidden" id="hf_PlanId" value=` + res[i].PlanId + ` />
</tr>`;
}
else {
html = `<tr class="bg-white">
<td class="Districtname">` + response.result[i].DistrictName + `</td>
<td class="ProductLine">` + response.result[i].ProductLineTag + `</td>
<td class="Segment" >` + response.result[i].SegmentTag + `</td>
<td class="text-center PlanName">` + response.result[i].PlanName + `</td>
<td class="text-center Quantity">` + response.result[i].TotalQty + `</td>
</tr>`;
}
}
else {
let totalHtml = '';
if (isplanRow && isGrandTotal) {
totalHtml = `<tr>
<td colspan="3">GrandTotal</td>
<td class="text-center">2023</td>
<td class="text-center gtqty">` + response.result[i].TotalQty + `</td>
</tr>`;
}
else {
totalHtml = `<tr>
<td colspan="3">GrandTotal</td>
<td class="text-center">2022</td>
<td class="text-center">` + response.result[i].TotalQty + `</td>
</tr>`;
}
$('#tableDBPTFoot').html(totalHtml);
}
$(".table_DBPTbody:last").append(html);
}
instance.loadPagination();
instance.navigationHelper.hideLoading();
});
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().getTargetDefinitionDetails(targetdefinitionid).then(function (response) {
if (response) {
if (response.result.StageName == "Completed") {
$(".editTarget").attr("disabled", "disabled");
}
}
});
});
});
}
loadPagination() {
var instance = this;
instance.fileCacheHelper.loadJsFile('"libs/jquery/pagination/jquery.pagination.js"', function () {
const pageSize = 20;
const tableRows = $('#tableDBPTbody tr');
const totalRecords = tableRows.length;
tableRows.hide();
$('#tableDBPTbody').removeClass('d-none');
$('#tableDBPTbody tr').slice(0, 20).show();
const handlePaginationClick = (page_index) => {
const indexPageSize = page_index * pageSize;
$('#tableDBPTbody tr:visible').hide();
$('#tableDBPTbody tr').slice(indexPageSize, indexPageSize + pageSize).show();
};
let elem = $('#dbpTablePagination');
elem.pagination(totalRecords, pageSize, {
items_per_page: pageSize,
callback: handlePaginationClick
});
});
}
calTotal(event) {
let gtqty = 0;
$(".table_DBPTbody").find(".TargetValue-row").each(function () {
var colval = Number($(this).find(".TargetValue").val());
gtqty = gtqty + colval;
});
$(".gtqty").val(gtqty);
$(".gtqty").text(gtqty);
}
save(IsApproval) {
var instance = this;
var postdata = [];
$("#tblDBPTarget").find(".TargetValue-row").each(function () {
postdata.push({
StateId: Number($(this).find("#hf_StateId").val()),
DistrictId: Number($(this).find("#hf_DistrictId").val()),
ProductlineId: Number($(this).find(".hf_ProductlineId").val()),
SegmentTagId: Number($(this).find(".hf_SegmentTagId").val()),
TotalQty: Number($(this).find(".TargetValue").val()),
PlanName: "2023 Plan",
PlanId: Number($(this).find("#hf_PlanId").val()),
TargetDefinitionId: Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_targetdefinitionid").Value),
IsApproval: IsApproval,
});
});
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().saveTargetPlan(postdata).then(function (response) {
if (response) { }
var detail_instance = Unibase.Themes.Compact.Components.Details.Instance();
var containerid = $("._bizgaze_detail_container:visible").attr("id");
var _installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
var portletid = detail_instance.unibase_core_activeportletid;
detail_instance.loadWidgets(_installedAppId, portletid, "#" + containerid + "");
});
});
}
approval() {
var instance = this;
var targetdefinitionid = 101274070000002;
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().saveApprove(targetdefinitionid).then(function (response) {
if (response) {
}
});
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new DBPPlanningWidget();
}
return this.instance;
}
}
Components.DBPPlanningWidget = DBPPlanningWidget;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
File diff suppressed because one or more lines are too long
+80
View File
@@ -0,0 +1,80 @@
var Bizgaze;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i extends Unibase.Platform.Core.BaseComponent{cssFiles(){return[]}jsFiles(){return["apps/tm/targets/components/savetargetvalue.js"]}html(){return"<div><\/div>"}load(){}init(t){var i=this;n.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadHtml(t);$(".submit").click(function(){alert("hai")});$(".TargetValue-row").keyup(function(n){n.which!=46&&(n.which<47||n.which>59)&&(n.preventDefault(),n.which==46&&n.preventDefault())});$(".saveTargetPlan").click(function(){n.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(!1)});$(".SendforDBCApproval").click(function(){n.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(!0)})}loadHtml(n){var t=`<div class="card pb-15 mb-0" id="DBPTarget">
<div class="card-header Configure_Target">Target</div>
<div class="card-body text-center" >
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadEditPlan();" class="btn btn-success px-5"> Configure Target </a>
</div></div>`;$("."+n).html(t)}loadEditPlan(){$(".Configure_Target").html("");var n=`<div class="card-body text-center Edit_TargetPlan">
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().loadPlanningHtml();" type="button" class="btn btn-info">Edit Target Plan</a>
<a href="javascript:;" type="button" class="btn btn-info">Send for DBC Approval</a>
</div>`;$("#DBPTarget").html(n)}loadPlanningHtml(){var i,r,t;const u=this;$(".Edit_TargetPlan").html("");i=`<div class="card-body d-flex align-items-end">
<div class="col-md-3 floating-label-form-group-with-value" id="IncludedTags">
<label for="txt_States">States</label>
<input type="hidden" class="hf_States" value="" />
<select style="width:100%" id="txt_States" value="" class="no-border form-control select2_IncludedTags txtIncludedTags" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3 floating-label-form-group-with-value" id="Districts">
<label for="txt_Districts">Districts</label>
<input type="hidden" class="hf_Districts" value="" />
<select style="width:100%" id="txt_Districts" value="" class="no-border form-control select2_Districts txtDistricts" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3 floating-label-form-group-with-value" id="IncludedTags">
<label for="txt_segment">Segments</label>
<input type="hidden" class="hf_segment" value="" />
<select style="width:100%" id="txt_segment" value="" class="no-border form-control select2_IncludedTags txtIncludedTags" IsTagSelect="false" multiple="multiple">
<option value="0">Select</option>
</select>
</div>
<div class="col-md-3">
<a href="javascript:;" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().ApplyFilter()" type="submit" id="submit" class="btn btn-primary h-100 mt-4">Apply Filter</a>
<button class="h-100 mt-4 ml-2 btn btn-light">Clear</button>
</div>
</div>
<div class="table-responsive px-10">
<table class="table table-bordered table-striped" id="tblDBPTarget">
<thead>
<tr class="bg-light">
<th>District Name</th>
<th>Product Line</th>
<th>Segment</th>
<th class="text-center">Plan Name</th>
<th class="text-center">Quantity</th>
</tr>
</thead>
<tbody class="table_DBPTbody d-none" id="tableDBPTbody"></tbody>
<tfoot id="tableDBPTFoot" class="table-active font-weight-600"></tfoot>
</table>
<div id="dbpTablePagination" class="pagination custom-pagination pagination-rounded pull-right"></div>
</div>
<div class="text-right m-auto">
<button type="button" class="btn btn-info saveTargetPlan" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(false);">Save as Draft</button>
<button type="button" onclick="Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().save(true);" class="btn btn-info SendforDBCApproval">Send for DBC Approval</button>
</div>`;$("#DBPTarget").html(i);t=_appsettings.server_url()+"/apis/v4/bizgaze/mobil/targets/getdbpsegments";AutoCompleteHelper.getHelper().Create($("#txt_segment"),".hf_segment",t,function(){});t=_appsettings.server_url()+"/apis/v4/bizgaze/mobil/targets/getdbpstates";AutoCompleteHelper.getHelper().Create($("#txt_States"),".hf_States",t,function(){});r=$("#txt_States").val();t=_appsettings.server_url()+"/apis/v4/bizgaze/mobil/targets/getdbpdistricts/stateId/"+r;AutoCompleteHelper.getHelper().Create($("#txt_Districts"),".hf_Districts",t,function(){});$("#txt_States").change(function(){var n=$("#txt_States").val(),t=_appsettings.server_url()+"/apis/v4/bizgaze/mobil/targets/getdbpdistricts/stateId/"+n;AutoCompleteHelper.getHelper().Create($("#txt_Districts"),".hf_Districts",t,function(){})});n.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().ApplyDistricts()}ApplyDistricts(){var t=this;t.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().ApplyDBPDistricts().then(function(n){var u;let t=n.result;var o=t.StateIds,s=t.StateNames,h=t.DistrictIds,c=t.DistrictNames,i=[],f=[],r=[],e=[];if(i=o.split(","),f=s.split(","),r=h.split(","),e=c.split(","),i.length!=0)for(let n=0;n<i.length;n++)u=new Option(f[n],i[n],!0,!0),$("#txt_States").append(u).trigger("change");if(r.length!=0)for(let n=0;n<r.length;n++)u=new Option(e[n],r[n],!0,!0),$("#txt_Districts").append(u).trigger("change")})})}ApplyFilter(){var t=this,r=Unibase.Themes.Providers.DetailHelper.installedAppId,i=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+r+"_targetdefinitionid").Value),u=$("#txt_States").val().toString().length===0?0:$("#txt_States").val().toString(),f=$("#txt_Districts").val().toString().length===0?0:$("#txt_Districts").val().toString(),e=$("#txt_segment").val().toString().length===0?0:$("#txt_segment").val().toString(),o={StateId:u,DistrictId:f,SegmentId:e,ProductLineId:"adfgb",DistributorId:0,TargetDefinitionId:i};t.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){t.navigationHelper.showLoading();n.Apps.TM.Targets.Managers.TargetManager.Instance().GetDBPTargetPlannings(o).then(function(n){var i,r,u;if(n)$("#divDBPPlanning2021").html('<tr class="row-dbpitem hidden"><\/tr>'),$(".row-dbpitem:last").before("<tr><\/tr>");else return!1;for($(".table_DBPTbody").html(""),i=0;i<n.result.length;i++){let t=n.result[i].PlanName=="2023",f=n.result[i].SegmentTag=="GrandTotal";if(r=n.result,u=``,f){let r="";r=t&&f?`<tr>
<td colspan="3">GrandTotal</td>
<td class="text-center">2023</td>
<td class="text-center gtqty">`+n.result[i].TotalQty+`</td>
</tr>`:`<tr>
<td colspan="3">GrandTotal</td>
<td class="text-center">2022</td>
<td class="text-center">`+n.result[i].TotalQty+`</td>
</tr>`;$("#tableDBPTFoot").html(r)}else u=t?`<tr class="bg-white TargetValue-row">
<td class="Districtname">`+n.result[i].DistrictName+`</td>
<td class="ProductLine">`+n.result[i].ProductLineTag+`</td>
<td class="Segment" >`+n.result[i].SegmentTag+`</td>
<td class="text-center PlanName">`+n.result[i].PlanName+`</td>
<td class="text-center"><input type="text" onkeyup="return Bizgaze.Apps.TM.Targets.Components.DBPPlanningWidget.Instance().calTotal(this)" class="text-center TargetValue editTarget" value=`+n.result[i].TotalQty+`></td>
<input type="hidden" id="hf_PlanId" value=`+r[i].PlanId+` />
<input type="hidden" id="hf_StateId" value=`+r[i].StateId+` />
<input type="hidden" id="hf_DistrictId" value=`+r[i].DistrictId+` />
<input type="hidden" class="hf_ProductlineId" id="hf_ProductlineId" value=`+r[i].ProductlineId+`>
<input type="hidden" class="hf_SegmentTagId" id="hf_SegmentTagId" value=`+r[i].SegmentTagId+`>
<input type="hidden" id="hf_PlanId" value=`+r[i].PlanId+` />
</tr>`:`<tr class="bg-white">
<td class="Districtname">`+n.result[i].DistrictName+`</td>
<td class="ProductLine">`+n.result[i].ProductLineTag+`</td>
<td class="Segment" >`+n.result[i].SegmentTag+`</td>
<td class="text-center PlanName">`+n.result[i].PlanName+`</td>
<td class="text-center Quantity">`+n.result[i].TotalQty+`</td>
</tr>`;$(".table_DBPTbody:last").append(u)}t.loadPagination();t.navigationHelper.hideLoading()});t.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().getTargetDefinitionDetails(i).then(function(n){n&&n.result.StageName=="Completed"&&$(".editTarget").attr("disabled","disabled")})})})}loadPagination(){var n=this;n.fileCacheHelper.loadJsFile('"libs/jquery/pagination/jquery.pagination.js"',function(){const n=20,t=$("#tableDBPTbody tr"),i=t.length;t.hide();$("#tableDBPTbody").removeClass("d-none");$("#tableDBPTbody tr").slice(0,20).show();const r=t=>{const i=t*n;$("#tableDBPTbody tr:visible").hide();$("#tableDBPTbody tr").slice(i,i+n).show()};let u=$("#dbpTablePagination");u.pagination(i,n,{items_per_page:n,callback:r})})}calTotal(){let n=0;$(".table_DBPTbody").find(".TargetValue-row").each(function(){var t=Number($(this).find(".TargetValue").val());n=n+t});$(".gtqty").val(n);$(".gtqty").text(n)}save(t){var r=this,i=[];$("#tblDBPTarget").find(".TargetValue-row").each(function(){i.push({StateId:Number($(this).find("#hf_StateId").val()),DistrictId:Number($(this).find("#hf_DistrictId").val()),ProductlineId:Number($(this).find(".hf_ProductlineId").val()),SegmentTagId:Number($(this).find(".hf_SegmentTagId").val()),TotalQty:Number($(this).find(".TargetValue").val()),PlanName:"2023 Plan",PlanId:Number($(this).find("#hf_PlanId").val()),TargetDefinitionId:Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+Unibase.Themes.Providers.DetailHelper.installedAppId+"_targetdefinitionid").Value),IsApproval:t})});r.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().saveTargetPlan(i).then(function(n){n;var t=Unibase.Themes.Compact.Components.Details.Instance(),i=$("._bizgaze_detail_container:visible").attr("id"),r=Unibase.Themes.Providers.DetailHelper.installedAppId,u=t.unibase_core_activeportletid;t.loadWidgets(r,u,"#"+i+"")})})}approval(){var t=this,i=0x5c1bb4f7a182;t.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().saveApprove(i).then(function(n){n})})}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.DBPPlanningWidget=i})(i=t.Components||(t.Components={}))})(i=t.Targets||(t.Targets={}))})(i=t.TM||(t.TM={}))})(t=n.Apps||(n.Apps={}))})(Bizgaze||(Bizgaze={}));
@@ -0,0 +1,198 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class TagWiseTarget extends Unibase.Platform.Core.BaseComponent {
constructor() {
super(...arguments);
this.formatarray = [];
this.tagtarget = [];
this.breakupdatalist = [];
}
cssFiles() {
return ['libs/tabulator/css/tabulator.min.css', 'libs/tabulator/css/tabulator_simple.min.css'];
}
jsFiles() {
return ['libs/tabulator/js/tabulator.min.js'];
}
html() {
var html = `<form id="frm_bizgazeApp_Employee_edit" data-validate="parsley" method="post"><div class="bg-white header" id="contactheader"></div><div class="scrollable" style="overflow:auto;"><div id="TagTargetMonthly" style="overflow:auto;"></div><div class="NoRecords"></div></div><div class="footer bg-white"><a href="javascript:;" id="btn_CloseTargetemp" class="btn btn-light btn-sm mr-auto">Close</a><a href="javascript:;" id="download_targetachievecsv" class="btn btn-info btn-sm pull-right">Download</a></div></form>`;
return html;
}
load(formId, containerid, callback) {
var instance = this;
$('.modal-body').css('overflow', '');
$("#btn_CloseTargetemp").click(function () {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
$("#download_targetachievecsv").click(function () {
instance.customerData.download("csv", "data.csv");
});
}
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
var instance = this;
var targetdefinitionid = 0;
if (FormId == 0) {
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
targetdefinitionid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_targetdefinitionid").Value);
}
else {
targetdefinitionid = FormId;
}
instance.fileCacheHelper.loadCssFiles(["libs/tabulator/css/tabulator.min.css", "libs/tabulator/css/tabulator_simple.min.css"], null);
instance.fileCacheHelper.loadJsFiles(["libs/tabulator/js/tabulator.min.js"], function () {
Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.instance.loadTarget(targetdefinitionid, Pk_Value);
});
instance.loadData(Pk_Value);
}
loadData(Pk_Value) {
this.navigationHelper.popup(Pk_Value, '', Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
}
loadTarget(TargetDefinitionId, ContactId) {
var instance = this;
var ar = [];
this.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().LoadTagWiseTargetDetails(TargetDefinitionId, ContactId).then(function (response) {
if (response.result.length > 0) {
var a = 0;
for (let i = 0; i < response.result.length; i++) {
if (response.result[i].TotalT == 0) {
a;
}
else {
a = a + 1;
}
}
if (a == 0) {
$("#contactheader").removeClass("bg-white header");
$('#contactheader').html('<span style="background-color:#EAEAE6; display: block; width: 100%; height: 100%; " class="alert alert-info ma-0 text-center"><h5>There is no Data</h5></span>');
$('#contactheader').removeClass("modal-header");
$('#contactheader').removeClass("pa-10");
}
else {
var contacthtml = '<header class="b - b bg - wight bg - gradient Contacthead"><p class="h5 text - dark cname">' + response.result[0].ContactName + '</p></header>';
$("#contactheader").html(contacthtml);
var result = response.result;
instance.formatarray = result[0].breakuplist.split(",");
instance.loadTagWiseTabulator(result);
}
}
else {
$("#contactheader").removeClass("bg-white header");
$('#contactheader').html('<span style="background-color:#EAEAE6; display: block; width: 100%; height: 100%; " class="alert alert-info ma-0 text-center"><h5>There is no Data</h5></span>');
$('#contactheader').removeClass("modal-header");
$('#contactheader').removeClass("pa-10");
}
});
});
}
loadTagWiseTabulator(response) {
let columnsarr = [];
var target;
if (this.formatarray.length > 0) {
columnsarr.push({ title: "TagName", field: "TagName", widthGrow: 1 });
for (let i = 0; i < this.formatarray.length; i++) {
if (this.formatarray[i].lastIndexOf('A') == this.formatarray[i].length - 1) {
columnsarr.push({
field: this.formatarray[i], title: this.formatarray[i - 1] + " Achieve",
formatter: function (cell) {
var achive = cell.getValue();
if (target != 0) {
if (target <= achive) {
cell.getElement().style.backgroundColor = "#88fc92";
return achive;
}
else {
cell.getElement().style.backgroundColor = "#f75c5c";
return achive;
}
}
else {
return achive;
}
}
});
}
else {
columnsarr.push({
field: this.formatarray[i], title: this.formatarray[i] + " Target",
formatter: function (cell) {
target = cell.getValue();
return target;
}
});
}
}
for (var j = 0; j < response.length; j++) {
var achievedarray = 0;
var target = 0;
for (var i = 0; i < columnsarr.length; i++) {
if (columnsarr[i].title.includes("Target")) {
response[j][columnsarr[i].field] = response[j].Breakupdatalist[target];
target = target + 1;
}
if (columnsarr[i].title.includes("Achieve")) {
response[j][columnsarr[i].field] = response[j].AchivedList[achievedarray];
if (response[j].AchivedList[achievedarray] == undefined) {
response[j][columnsarr[i].field] = 0;
}
achievedarray = achievedarray + 1;
}
}
}
columnsarr.push({
title: "Total Target", field: "TotalT", widthGrow: 1, formatter: function (cell) {
target = cell.getValue();
return target;
}
});
columnsarr.push({
title: "Total Achieve", field: "TotalA", widthGrow: 1, formatter: function (cell) {
var achive = cell.getValue();
if (target != 0) {
if (target <= achive) {
cell.getElement().style.backgroundColor = "#88fc92";
return achive;
}
else {
cell.getElement().style.backgroundColor = "#f75c5c";
return achive;
}
}
else {
return achive;
}
}
});
}
var instance = this;
var tabledata = [];
instance.customerData = new Tabulator("#TagTargetMonthly", {
data: response,
columns: columnsarr,
layout: "fitDataStretch",
resizableColumns: true,
dataTree: false,
dataTreeSelectPropagate: true,
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new TagWiseTarget();
}
return this.instance;
}
}
Components.TagWiseTarget = TagWiseTarget;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
var Bizgaze;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i extends Unibase.Platform.Core.BaseComponent{constructor(){super(...arguments);this.formatarray=[];this.tagtarget=[];this.breakupdatalist=[]}cssFiles(){return["libs/tabulator/css/tabulator.min.css","libs/tabulator/css/tabulator_simple.min.css"]}jsFiles(){return["libs/tabulator/js/tabulator.min.js"]}html(){return`<form id="frm_bizgazeApp_Employee_edit" data-validate="parsley" method="post"><div class="bg-white header" id="contactheader"></div><div class="scrollable" style="overflow:auto;"><div id="TagTargetMonthly" style="overflow:auto;"></div><div class="NoRecords"></div></div><div class="footer bg-white"><a href="javascript:;" id="btn_CloseTargetemp" class="btn btn-light btn-sm mr-auto">Close</a><a href="javascript:;" id="download_targetachievecsv" class="btn btn-info btn-sm pull-right">Download</a></div></form>`}load(n,t){var i=this;$(".modal-body").css("overflow","");$("#btn_CloseTargetemp").click(function(){$("#"+t).modal("hide");$("#"+t).remove()});$("#download_targetachievecsv").click(function(){i.customerData.download("csv","data.csv")})}loadForm(t,i){var r=this,u=Unibase.Themes.Providers.DetailHelper.installedAppId,f=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+u+"_targetdefinitionid").Value);r.fileCacheHelper.loadCssFiles(["libs/tabulator/css/tabulator.min.css","libs/tabulator/css/tabulator_simple.min.css"],null);r.fileCacheHelper.loadJsFiles(["libs/tabulator/js/tabulator.min.js"],function(){n.Apps.TM.Targets.Components.TagWiseTarget.instance.loadTarget(f,i)});r.loadData(i)}loadData(t){this.navigationHelper.popup(t,"",n.Apps.TM.Targets.Components.TagWiseTarget.Instance(),null,Unibase.Platform.Helpers.Size.Large)}loadTarget(t,i){var r=this;this.fileCacheHelper.loadJsFile("apps/tm/targets/managers/targetmanager.js",function(){n.Apps.TM.Targets.Managers.TargetManager.Instance().LoadTagWiseTargetDetails(t,i).then(function(n){var t,u,i;if(n.result.length>0){t=0;for(let i=0;i<n.result.length;i++)n.result[i].TotalT==0?t:t=t+1;t==0?($("#contactheader").removeClass("bg-white header"),$("#contactheader").html('<span style="background-color:#EAEAE6; display: block; width: 100%; height: 100%; " class="alert alert-info ma-0 text-center"><h5>There is no Data<\/h5><\/span>'),$("#contactheader").removeClass("modal-header"),$("#contactheader").removeClass("pa-10")):(u='<header class="b - b bg - wight bg - gradient Contacthead"><p class="h5 text - dark cname">'+n.result[0].ContactName+"<\/p><\/header>",$("#contactheader").html(u),i=n.result,r.formatarray=i[0].breakuplist.split(","),r.loadTagWiseTabulator(i))}else $("#contactheader").removeClass("bg-white header"),$("#contactheader").html('<span style="background-color:#EAEAE6; display: block; width: 100%; height: 100%; " class="alert alert-info ma-0 text-center"><h5>There is no Data<\/h5><\/span>'),$("#contactheader").removeClass("modal-header"),$("#contactheader").removeClass("pa-10")})})}loadTagWiseTabulator(n){var r,f,i,u,e,o;let t=[];if(this.formatarray.length>0){t.push({title:"TagName",field:"TagName",widthGrow:1});for(let n=0;n<this.formatarray.length;n++)this.formatarray[n].lastIndexOf("A")==this.formatarray[n].length-1?t.push({field:this.formatarray[n],title:this.formatarray[n-1]+" Achieve",formatter:function(n){var t=n.getValue();return i!=0?i<=t?(n.getElement().style.backgroundColor="#88fc92",t):(n.getElement().style.backgroundColor="#f75c5c",t):t}}):t.push({field:this.formatarray[n],title:this.formatarray[n]+" Target",formatter:function(n){return i=n.getValue()}});for(r=0;r<n.length;r++)for(f=0,i=0,u=0;u<t.length;u++)t[u].title.includes("Target")&&(n[r][t[u].field]=n[r].Breakupdatalist[i],i=i+1),t[u].title.includes("Achieve")&&(n[r][t[u].field]=n[r].AchivedList[f],n[r].AchivedList[f]==undefined&&(n[r][t[u].field]=0),f=f+1);t.push({title:"Total Target",field:"TotalT",widthGrow:1,formatter:function(n){return i=n.getValue()}});t.push({title:"Total Achieve",field:"TotalA",widthGrow:1,formatter:function(n){var t=n.getValue();return i!=0?i<=t?(n.getElement().style.backgroundColor="#88fc92",t):(n.getElement().style.backgroundColor="#f75c5c",t):t}})}e=this;o=[];e.customerData=new Tabulator("#TagTargetMonthly",{data:n,columns:t,layout:"fitDataStretch",resizableColumns:!0,dataTree:!1,dataTreeSelectPropagate:!0})}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.TagWiseTarget=i})(i=t.Components||(t.Components={}))})(i=t.Targets||(t.Targets={}))})(i=t.TM||(t.TM={}))})(t=n.Apps||(n.Apps={}))})(Bizgaze||(Bizgaze={}));
@@ -0,0 +1,298 @@
var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let TM;
(function (TM) {
let Targets;
(function (Targets) {
let Components;
(function (Components) {
class TargetVSAchieve extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return ['libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css'];
}
jsFiles() {
return ['libs/tabulator/js/tabulator.min.js'];
}
html() {
return "<div><button>save</button></div>";
}
loadCustHtml(containerid) {
const html = `<div id="CustomerTargetAchiveWidget" class="mt-40"><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 VS Achive</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.TargetVSAchieve.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.TargetVSAchieve.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
</div>
</div>
</div><div class="card-body pa-0"><div id="Customer_Table" class="target-widget-table templateviewer-tableview"></div></div></div></div>`;
$(".dashboard_targetwidget:first").html(html);
}
loadEmpHtml(containerid) {
const html = `<div id="EmployeeTargetAchiveWidget" class="mt-40"><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 VS Achive</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.TargetVSAchieve.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.TargetVSAchieve.Instance().clearTargetSearch('${containerid}')"><i class="zmdi zmdi-close"></i></a>
</div>
</div>
</div><div class="card-body pa-0"><div id="Employee_Table" class="target-widget-table templateviewer-tableview"></div></div></div></div>`;
$(".dashboard_targetwidget").html(html);
}
loadAutoHtml(containerid) {
const html = `<div class="card-body">
<div class="col-md-3 floating-label-form-group-with-value" id="IncludedTags">
<label for="txt_targetdefinition">Target Definitions</label>
<input type="hidden" class="hf_targetdefinition" value="" />
<select style="width:100%" id="txt_targetdefinition" value="" class="no-border form-control select2_targetdefinition txttargetdefinition" IsTagSelect="false">
<option value="0">Select</option>
</select>
</div>
<div class="dashboard_targetwidget"></div>
</div>`;
$("." + containerid).html(html);
var url = _appsettings.server_url() + '/apis/v4/bizgaze/tm/targets/gettargetdefinitionsautocomplete';
AutoCompleteHelper.getHelper().Create($("#txt_targetdefinition"), ".hf_targetdefinition", url, function (response) {
});
}
load() {
}
init(Containerid) {
Bizgaze.Apps.TM.Targets.Components.TargetVSAchieve.Instance().loadAutoHtml(Containerid);
var instance = this;
$("#txt_targetdefinition").change(function () {
instance.targetDefinitionId = $("#txt_targetdefinition").val();
instance.fileCacheHelper.loadJsFile('apps/tm/targets/managers/targetmanager.js', function () {
Bizgaze.Apps.TM.Targets.Managers.TargetManager.Instance().getTargetDefinitionDetails(instance.targetDefinitionId).then(function (response) {
if (response != null) {
var allowothercontacts = response.result.AllowOtherContacts;
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 == 1) {
Bizgaze.Apps.TM.Targets.Components.TargetVSAchieve.Instance().loadEmpHtml(Containerid);
instance.employeewisetargetvsachive(instance.targetDefinitionId);
}
else {
Bizgaze.Apps.TM.Targets.Components.TargetVSAchieve.Instance().loadCustHtml(Containerid);
instance.loadCustTabulator("");
instance.customerwisetargetvsachive(instance.targetDefinitionId);
}
});
}
});
});
});
}
customerwisetargetvsachive(targetdefinitionid) {
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().loadCustomerTargetvsAchive(userinfo.sessionId, targetdefinitionid).then(function (response) {
if (response != null) {
var result = response.result;
instance.customerData.setData(result);
}
});
});
}
employeewisetargetvsachive(targetdefinitionid) {
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().loadEmployeeTargetvsAchive(userinfo.sessionId, targetdefinitionid).then(function (response) {
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.TargetVSAchieve.Instance().loadTabulator(dataarry, datatree, response);
});
});
}
loadTabulator(response, datatree, response1) {
var instance = this;
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.initialEmployeeData = response;
instance.employeeData = new Tabulator("#Employee_Table", {
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: "Achived Value", field: "AchievedTarget", cellClick: function (e, cell) {
instance.currentRow = cell.getRow();
instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/w_tagwisetarget.js', function () {
if (!instance.currentRow._row.data.EmployeeId.includes("p")) {
Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.Instance().loadForm(instance.targetDefinitionId, cell.getRow().getData().EmployeeId, 0, null, 0);
}
});
}, formatter: function (cell) {
instance.currentRow = cell.getRow();
var achive = cell.getValue();
if (!instance.currentRow._row.data.EmployeeId.includes("p")) {
return "<span class='text-primary' font-weight:bold;'>" + achive + "</span>";
}
else {
return achive;
}
}
},
{ title: "Percentage", field: "Percentage" },
],
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;
},
});
}
loadCustTabulator(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_Table", {
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: "Achived Value", field: "AchievedTarget", cellClick: function (e, cell) {
instance.currentRow = cell.getRow();
instance.fileCacheHelper.loadJsFile('apps/tm/targets/components/w_tagwisetarget.js', function () {
Bizgaze.Apps.TM.Targets.Components.TagWiseTarget.Instance().loadForm(instance.targetDefinitionId, cell.getRow().getData().EmployeeId, 0, null, 0);
});
}, formatter: function (cell) {
instance.currentRow = cell.getRow();
var achive = cell.getValue();
return "<span class='text-primary' font-weight:bold;'>" + achive + "</span>";
}
},
{ title: "Percentage", field: "Percentage" },
],
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('#CustomerTargetAchiveWidget').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('#CustomerTargetAchiveWidget').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('#CustomerTargetAchiveWidget').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 TargetVSAchieve();
}
return this.instance;
}
}
Components.TargetVSAchieve = TargetVSAchieve;
})(Components = Targets.Components || (Targets.Components = {}));
})(Targets = TM.Targets || (TM.Targets = {}));
})(TM = Apps.TM || (Apps.TM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));