123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223 |
- 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 = {}));
|