var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let Hrms; (function (Hrms) { let Payroll; (function (Payroll) { let Controls; (function (Controls) { let EmployeeSalary; (function (EmployeeSalary) { class EmployeeSalaryDetails extends Unibase.Platform.Core.BaseComponent { constructor() { super(...arguments); this.ctc_Array = []; this.VisibleContainerId = ""; this.salarycomponenttypeid = 1; } init(formpropertyid, prop, callback) { var container = "control-container-" + formpropertyid; var instance = this; instance.local_container = container; instance.editEarning = false; instance.findtxtcrRdr = 2; instance.rowindexid = parseInt('00001', 8); instance.flag = 0; instance.fileCacheHelper.loadJsFiles(['platform/core/helpers/numberhelper/numberhelper.js', 'apps/hrms/enums/componenttypes.js', 'apps/hrms/enums/earningtypes.js', 'apps/hrms/controls/salarytemplate.component.js', 'apps/hrms/payroll/controls/ctccalculation.js', 'apps/hrms/enums/calculationtype.js'], function () { instance.changeAnnualctcdata(); }); } loadControlSettings(controlsettingjson, formpropertyid) { } loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) { } bindEditFormDetails(formpropertyid, propval, DocPropertyName) { } loadControl(container, prop) { var instance = this; instance.rowindexid = prop.FormPropertyId; var html = ""; instance.VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1]; instance.fileCacheHelper.loadJsFiles(["apps/hrms/payroll/managers/payrollmanager.js", 'apps/hrms/payroll/controls/ctccalculation.js'], function () { var ctcInstance = new Bizgaze.Apps.Hrms.Payroll.CtcCalculation(); html = ctcInstance.getcomponentHtml(); $("#" + container).html(html); $('#refreshsystemcalculations').attr("onclick", "Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().refreshsystemcalculations()"); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().edit(); }); $(".txtAutoComplete_salarytemplateid").change(function () { Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().employeesalarydetails(); }); } salarycomponentObj() { return Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array; } employeesalarydetails() { var instance = this; var salarytemplateid = Number($(".txtAutoComplete_salarytemplateid").val()); instance.fileCacheHelper.loadJsFiles(["apps/hrms/payroll/managers/payrollmanager.js", 'apps/hrms/enums/componenttypes.js', 'apps/hrms/enums/earningtypes.js', 'apps/hrms/controls/salarytemplate.component.js'], function () { Bizgaze.Apps.Hrms.Payroll.Managers.PayRollManager.Instance().getSalaryTemplateById(salarytemplateid).then(function (response) { Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array = []; $('#btnAddNew').addClass('hidden'); $('#hdn_salarycomponentcontrol').val("Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().salarycomponentObj();"); if (response.result != null) { $("#salaryearningdetails_table").html(''); $("#salarydeductiondetails_table").html(''); $("#salaryreimbursementdetails_table").html(''); $(".txt_annualctc").val(response.result[0].AnnualCTC); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().binddata(response.result); } }); }); } getemployeesalarydetails(isrevise) { $("#btnDynamicSave").attr("disabled", "true"); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().revisecalculation(); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().edit(); } refreshsystemcalculations() { var instance = this; let AnnualCTC = $(".txt_annualctc").val(); let basic = 0; var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; var Employeeid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_recordid").Value); let obj = Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array.find(x => x.componenttypeid == Bizgaze.Apps.Hrms.Enums.ComponentTypes.Earnings && x.earningtypeid == Bizgaze.Apps.Hrms.Enums.EarningTypes.Basic); if (obj != undefined) { basic = obj.monthlyamount; } instance.fileCacheHelper.loadJsFile("apps/hrms/payroll/managers/payrollmanager.js", function () { Bizgaze.Apps.Hrms.Payroll.Managers.PayRollManager.Instance().getEmployeeTaxDetailsByEmployeeId(Employeeid, AnnualCTC, basic).then(function (response) { for (var i = 0; i < response.result.length; i++) { let data = response.result[i]; if (data != null) { let salarycomponentid = data.SalaryComponentId; let obj = instance.ctc_Array.find(x => x.salarycomponentid == salarycomponentid); if (obj != undefined) { obj.amount = data.Amount; obj.monthlyamount = data.Amount; } } else { obj.amount = 0; obj.monthlyamount = 0; } } instance.ctc_calculation(); }); }); } binddata(response) { let employeesalartdetailid = Number($(".hdn_employeesalarydetailid").val()); for (var i = 0; i < response.length; i++) { var data = response[i]; if (data.employeesalartdetailid == 0) { data.employeesalartdetailid = employeesalartdetailid; } var item = { payslipname: data.PaySlipName, calculationtypeid: data.CalculationTypeId, calculationtypename: data.CalculationTypeName, salarycomponentid: data.SalaryComponentId, earningtypeid: data.EarningTypeId, amount: data.Amount, rowindexid: data.ComponentTypeId == Bizgaze.Apps.Hrms.Enums.ComponentTypes.Earnings ? data.EarningTypeId : data.SalaryComponentId, salarycomponenttypeid: data.ComponentTypeId, componenttypeid: data.ComponentTypeId, maxamount: data.MaxAmount, templateid: data.TemplateId, templateitemid: data.TemplateItemId, monthlyamount: data.AmountMonthly, annualamount: data.AmountAnnually, employeesalartdetailid: data.employeesalartdetailid, issystemgenerated: data.IsSystemGenerated }; Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array.push(item); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().bindcomponenthtml(item); } } bindcomponenthtml(data) { var ctcInstance = new Bizgaze.Apps.Hrms.Payroll.CtcCalculation(); ctcInstance.bindcomponenthtml(data, Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array, false); $('.removeComponent').attr("onclick", "").addClass('hidden'); } revisecalculation() { var $radios = $('input:radio[name=revisecalculationtype]'); $radios.filter('[id=rdb_revisecalculationtype_2]').prop('checked', true); $(".txt_revisepercentage").addClass("hidden"); $(".txt_revisepercentage").blur(function () { var annualctc = Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().AnnualCTC; var revisepercentage = Number($(".txt_revisepercentage").val()); var revisedctc = Number(annualctc * (revisepercentage / 100)) + (annualctc); $(".txt_annualctc").val(revisedctc); $("#btnDynamicSave").prop("disabled", false); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_calculation(); }); $(".rdb_revisecalculationtype_1").click(function () { if ($(".rdb_revisecalculationtype_1").prop("checked") == true) { $(".txt_revisepercentage").removeClass("hidden"); $(".div_revisepercentage ").removeClass("hidden"); $(".txt_annualctc").prop("disabled", true); $(".txt_annualctc").css("color", "#495057"); $(".txt_revisepercentage").val(0); $("#btnDynamicSave").prop("disabled", false); } $(".txt_annualctc").val(Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().AnnualCTC); }); $(".rdb_revisecalculationtype_2").click(function () { if ($(".rdb_revisecalculationtype_2").prop("checked") == true) { $(".txt_revisepercentage").addClass("hidden"); $(".div_revisepercentage ").addClass("hidden"); $(".txt_annualctc").prop("disabled", false); $(".txt_revisepercentage").val(0); $("#btnDynamicSave").prop("disabled", true); } $(".txt_annualctc").val(Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().AnnualCTC); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_calculation(); }); } edit() { var instance = this; instance.fileCacheHelper.loadJsFile("apps/hrms/payroll/managers/payrollmanager.js", function () { var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; if (installedAppId != 0) { var employeeid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_recordid").Value); Bizgaze.Apps.Hrms.Payroll.Managers.PayRollManager.Instance().getSalaryDetailsByEmployeeId(employeeid).then(function (response) { Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array = []; $('#btnAddNew').addClass('hidden'); $('#hdn_salarycomponentcontrol').val("Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().salarycomponentObj();"); if (response.result != null) { var reportColumnText = new Option(response.result[0].TemplateName, response.result[0].SalaryTemplateId, true); $("#salaryearningdetails_table").html(''); $("#salarydeductiondetails_table").html(''); $("#salaryreimbursementdetails_table").html(''); $(".txt_annualctc").val(response.result[0].AnnualCTC); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().AnnualCTC = response.result[0].AnnualCTC; $(".txtAutoComplete_salarytemplateid").html(reportColumnText); $(".hdn_employeesalarydetailid").val(response.result[0].EmployeeSalaryDetailId); if (response.result[0].ReviseCalculationType == 1) { $("#rdb_revisecalculationtype_" + response.result[0].ReviseCalculationType).prop("checked", true); $("#hdnRdb_revisecalculationtype").val(response.result[0].ReviseCalculationType); $(".txt_revisepercentage").removeClass("hidden"); } else if (response.result[0].ReviseCalculationType == 2) { $("#rdb_revisecalculationtype_" + response.result[0].ReviseCalculationType).prop("checked", true); $("#hdnRdb_revisecalculationtype").val(response.result[0].ReviseCalculationType); $(".txt_revisepercentage").addClass("hidden"); } $(".txt_revisepercentage").val(response.result[0].RevisePercentage); var date = moment(response.result[0].ReviseSalaryEffectiveFrom).format("DD/MM/YYYY"); var effectivedate = $(".date_revisesalaryeffectivefrom").val(); if (date == effectivedate) { $(".date_revisesalaryeffectivefrom").val(""); } else { $(".date_revisesalaryeffectivefrom").val(date); $(".hfdate_revisesalaryeffectivefrom").val(date); } var paydate = moment(response.result[0].PayoutMonth).format("DD/MM/YYYY"); $(".date_payoutmonth").val(paydate); $(".hfdate_payoutmonth").val(paydate); Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().binddata(response.result.reverse()); } }); } }); } changecalculationtype(id, rowindexid) { if (id == 1) { $('#txt_CalculationAmount_' + rowindexid).addClass('hidden'); } else { $('#txt_CalculationAmount_' + rowindexid).removeClass('hidden'); } var ctcInstance = new Bizgaze.Apps.Hrms.Payroll.CtcCalculation(); let obj = Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array; ctcInstance.salaryitem_Calculation(rowindexid, obj); } getsalarycomponentbyid(salarycomponentid) { var instance = this; if (salarycomponentid != 0) { instance.fileCacheHelper.loadJsFile("apps/hrms/payroll/managers/payrollmanager.js", function () { Bizgaze.Apps.Hrms.Payroll.Managers.PayRollManager.Instance().getsalarycomponentbyid(salarycomponentid).then(function (response) { if (response.result != null) { var data = response.result; let rowindexid = data.EarningTypeId; let obj = Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array.find(x => x.rowindexid == rowindexid); if (obj != undefined) { obj.payslipname = data.PaySlipName; obj.calculationtypeid = data.CalculationTypeId; obj.calculationtypename = data.CalculationTypeName; obj.salarycomponentid = data.SalaryComponentId; obj.earningtypeid = data.EarningTypeId; obj.amount = data.Amount; Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_calculation(); var ctcInstance = new Bizgaze.Apps.Hrms.Payroll.CtcCalculation(); ctcInstance.bindctcdata(obj); } } }); }); } } ctc_calculation() { var ctcInstance = new Bizgaze.Apps.Hrms.Payroll.CtcCalculation(); ctcInstance.ctc_calculation(Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_Array); } changeAnnualctcdata() { $(".txt_annualctc").keyup(function () { var annualCTC = Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().AnnualCTC; var reviseAnnualCTC = $(".txt_annualctc").val(); if (annualCTC == reviseAnnualCTC) { $("#btnDynamicSave").prop("disabled", true); } else { $("#btnDynamicSave").prop("disabled", false); } Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().ctc_calculation(); }); } PreDeductionClick() { var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; $(".DetailSetting_" + installedAppId + "_PreDeduction").attr("data-trnsactid", 2); $(".DetailSetting_" + installedAppId + "_PreDeduction").click(function () { Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().loadPreDeduction(); }); } loadPreDeduction() { let instance = this; var uniqueid = 'Bizgaze_Extension_HRMs_SalaryComponents_App_SalaryComponents_CreateSalaryComponents'; Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(uniqueid).then(function (response) { var successCallBack = { CallBack: function (id) { }, Parameters: null, }; var hdn_deductionTypeId = ".dropdown_componenttypeid"; var cObj = { hiddenFieldControlId: hdn_deductionTypeId, }; var loadObj = { CallBack: function (cObj) { $(cObj.hiddenFieldControlId).val(2); $(".dropdown_componenttypeid").trigger("change"); $(".dropdown_componenttypeid").attr("disabled", "true"); }, Parameters: cObj, }; let formviewerObj = { FormId: response.result.FormId, AppConfigurationId: 0, Pk_Value: 0, PortletWidgetId: 0, OnSuccess: successCallBack, OnFail: null, OnLoad: loadObj }; Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj); instance.navigationHelper.hideLoading(); }); } PostDeductionClick() { var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; $(".DetailSetting_" + installedAppId + "_PostDeduction").attr("data-trnsactid", 3); $(".DetailSetting_" + installedAppId + "_PostDeduction").click(function () { Bizgaze.Apps.Hrms.Payroll.Controls.EmployeeSalary.EmployeeSalaryDetails.Instance().loadPostDeduction(); }); } loadPostDeduction() { let instance = this; var uniqueid = 'Bizgaze_Extension_HRMs_SalaryComponents_App_SalaryComponents_CreateSalaryComponents'; Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(uniqueid).then(function (response) { var successCallBack = { CallBack: function (id) { }, Parameters: null, }; var hdn_deductionTypeId = ".dropdown_componenttypeid"; var cObj = { hiddenFieldControlId: hdn_deductionTypeId, }; var loadObj = { CallBack: function (cObj) { $(cObj.hiddenFieldControlId).val(3); $(".dropdown_componenttypeid").trigger("change"); $(".dropdown_componenttypeid").attr("disabled", "true"); }, Parameters: cObj, }; let formviewerObj = { FormId: response.result.FormId, AppConfigurationId: 0, Pk_Value: 0, PortletWidgetId: 0, OnSuccess: successCallBack, OnFail: null, OnLoad: loadObj }; Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj); instance.navigationHelper.hideLoading(); }); } static Instance() { if (this.instance === undefined) { this.instance = new EmployeeSalaryDetails(); } return this.instance; } } EmployeeSalary.EmployeeSalaryDetails = EmployeeSalaryDetails; })(EmployeeSalary = Controls.EmployeeSalary || (Controls.EmployeeSalary = {})); })(Controls = Payroll.Controls || (Payroll.Controls = {})); })(Payroll = Hrms.Payroll || (Hrms.Payroll = {})); })(Hrms = Apps.Hrms || (Apps.Hrms = {})); })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {})); })(Bizgaze || (Bizgaze = {}));