var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let Hrms; (function (Hrms) { let Components; (function (Components) { class AttendanceRequest extends Unibase.Platform.Core.BaseComponent { init(formpropertyid, prop, callback) { } loadControl(containerid, prop) { let html = ''; html = `
Check-in *
Check-out *
Total Hours
Description
`; $('#' + containerid).html(html); } loadControlSettings(controlsettingjson, formpropertyid) { return null; } loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) { return null; } bindEditFormDetails(formpropertyid, propval, DocPropertyName) { var id = propval; let html = `
Check-in *
Check-out *
Total Hours
Description
;`; return html; } getEmployeeCheckinAndCheckout(employeeid, fromdate, todate) { debugger; var fdate = moment(fromdate.replaceAll("/", "-"), "DD-MM-YYYY").format("YYYY-MM-DD"); var tdate = moment(todate.replaceAll("/", "-"), "DD-MM-YYYY").format("YYYY-MM-DD"); if (tdate < fdate) { MessageHelper.Instance().showError("Todate cannot be lesser than Fromdate", 'div_ErrorMessage_' + $('#' + Unibase.Platform.Helpers.NavigationHelper.Instance().getLastContainerId()).find('#hf_FormId').val()); } let Todatehf = moment(todate, "DD/MM/YYYY").format("YYYY/MM/DD"); let Fromdatehf = moment(fromdate, "DD/MM/YYYY").format("YYYY/MM/DD"); $(".hfdate_fromdate").val(Fromdatehf); $(".hfdate_todate").val(Todatehf); $(".attendace_card_view").removeClass("d-none"); if ($("#div_FormName").text() == "Create Regularization") { this.fileCacheHelper.loadJsFile("apps/hrms/managers/attendencemanager.js", function () { Bizgaze.Apps.Hrms.Managers.AttendenceManager.Instance().getEmployeeCheckinAndCheckout(employeeid, fdate, tdate).then(function (response) { $('.attendance_list').html(''); const datestotal = []; function getDates(startDate, endDate) { const dates = []; let currentDate = startDate; const addDays = function (days) { const date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; }; while (currentDate <= endDate) { dates.push(currentDate); currentDate = addDays.call(currentDate, 1); } return dates; } let totaldates, html_content = ''; const dates = getDates(new Date(fdate), new Date(tdate)); dates.forEach(function (date) { datestotal.push(date); }); totaldates = datestotal; for (let j = 0; j < totaldates.length; j++) { let selecteddates = totaldates[j]; let datesbetween = moment(selecteddates).format("YYYY-MM-DD"); let displaydate = moment(selecteddates).format('llll'); displaydate = displaydate.substring(0, 17); html_content = `
  • ` + displaydate + `
    00:00
  • `; $('.attendance_list').append(html_content); } if (response.result.length > 0) { for (var i = 0; i < response.result.length; i++) { var data = response.result[i]; let attendanceid = data.AttendanceId, date = data, checkindate = Unibase.Platform.Helpers.DateTimeHelper.instance.formatLocalDateTime(data.CheckIn), checkindate_format = moment(data.Date).format("YYYY-MM-DD"), checkoutdate = Unibase.Platform.Helpers.DateTimeHelper.instance.formatLocalDateTime(data.CheckOut), totaltime = data.TotalMinutes, description = data.Description; let attendeddate = checkindate.substring(0, 10); if (checkindate.length != 0) { let ckeckintime = checkindate.substring(11, 16); let checkindates = moment(ckeckintime, 'HHmm').format("HH:mm"); $("#" + checkindate_format).find(".check_in").html(``); } if (checkoutdate > checkindate) { if (checkoutdate.length != 0) { let ckeckouttime = checkoutdate.substring(11, 16); let checkoutdates = moment(ckeckouttime, 'HHmm').format("HH:mm"); $("#" + checkindate_format).find(".check_out").html(``); } } if (description != null && description != "") { $("#" + checkindate_format).find(".txt_Description").html(``); } if (totaltime != 0) { var m = totaltime % 60; var h = (totaltime - m) / 60; var HHMM = (h < 10 ? "0" : "") + h.toString() + ":" + (m < 10 ? "0" : "") + m.toString(); $("#" + checkindate_format).find(".totaltime").html(HHMM); } if (attendanceid != 0) { $("#" + checkindate_format).find(".hf_attendanceid").html(``); } } } $(".Check_out_btn,.Check_in_btn").change(function () { debugger; var checkin = $(this).parents(".datesbetween").find("#Check_in").val(); var checkout = $(this).parents(".datesbetween").find("#Check_out").val(); var start = new Date("01/01/2007 " + checkin).getTime(); var end = new Date("01/01/2007 " + checkout).getTime(); let difference = Math.abs(end - start); difference = difference / 1000; let hourDifference = Math.floor(difference / 3600); difference -= hourDifference * 3600; let minuteDifference = Math.floor(difference / 60); difference -= minuteDifference * 60; var value = (hourDifference < 10 ? "0" : "") + hourDifference.toString() + ":" + (minuteDifference < 10 ? "0" : "") + minuteDifference.toString(); $(this).parents(".datesbetween").find(".totaltime").html(value); }); }); }); } else { this.fileCacheHelper.loadJsFile("apps/hrms/managers/attendencemanager.js", function () { Bizgaze.Apps.Hrms.Managers.AttendenceManager.Instance().getRegularizationCheckinAndCheckout(employeeid, fdate, tdate).then(function (response) { $('.attendance_list').html(''); const datestotal = []; function getDates(startDate, endDate) { const dates = []; let currentDate = startDate; const addDays = function (days) { const date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; }; while (currentDate <= endDate) { dates.push(currentDate); currentDate = addDays.call(currentDate, 1); } return dates; } let totaldates, html_content = ''; const dates = getDates(new Date(fdate), new Date(tdate)); dates.forEach(function (date) { datestotal.push(date); }); totaldates = datestotal; for (let j = 0; j < totaldates.length; j++) { let selecteddates = totaldates[j]; let datesbetween = moment(selecteddates).format("YYYY-MM-DD"); let displaydate = moment(selecteddates).format('llll'); displaydate = displaydate.substring(0, 17); html_content = `
  • ` + displaydate + `
    00:00
  • `; $('.attendance_list').append(html_content); } if (response.result.length > 0) { debugger; for (var i = 0; i < response.result.length; i++) { var data = response.result[i]; let attendanceid = data.attendanceid, regularizationapprovalid = data.regularizationapprovalid, date = data, checkindate = Unibase.Platform.Helpers.DateTimeHelper.instance.formatLocalDateTime(data.checkin), checkindate_format = moment(data.date).format("YYYY-MM-DD"), checkoutdate = Unibase.Platform.Helpers.DateTimeHelper.instance.formatLocalDateTime(data.checkout), totaltime = data.totalminutes, description = data.description; let attendeddate = checkindate.substring(0, 10); if (checkindate.length != 0) { let ckeckintime = checkindate.substring(11, 16); let checkindates = moment(ckeckintime, 'HHmm').format("HH:mm"); $("#" + checkindate_format).find(".check_in").html(``); } if (checkoutdate.length != 0) { let ckeckouttime = checkoutdate.substring(11, 16); let checkoutdates = moment(ckeckouttime, 'HHmm').format("HH:mm"); $("#" + checkindate_format).find(".check_out").html(``); } if (description != null && description != "") { $("#" + checkindate_format).find(".txt_Description").html(``); } if (totaltime != 0) { var m = totaltime % 60; var h = (totaltime - m) / 60; var HHMM = (h < 10 ? "0" : "") + h.toString() + ":" + (m < 10 ? "0" : "") + m.toString(); $("#" + checkindate_format).find(".totaltime").html(HHMM); } if (attendanceid != 0) { $("#" + checkindate_format).find(".hf_attendanceid").html(``); } if (regularizationapprovalid != 0) { $("#" + checkindate_format).find(".hf_regularizationapprovalid").html(``); } } } $(".Check_out_btn ,.Check_in_btn").change(function () { debugger; var checkin = $(this).parents(".datesbetween").find("#Check_in").val(); var checkout = $(this).parents(".datesbetween").find("#Check_out").val(); var start = new Date("01/01/2007 " + checkin).getTime(); var end = new Date("01/01/2007 " + checkout).getTime(); let difference = Math.abs(end - start); difference = difference / 1000; let hourDifference = Math.floor(difference / 3600); difference -= hourDifference * 3600; let minuteDifference = Math.floor(difference / 60); difference -= minuteDifference * 60; var value = (hourDifference < 10 ? "0" : "") + hourDifference.toString() + ":" + (minuteDifference < 10 ? "0" : "") + minuteDifference.toString(); $(this).parents(".datesbetween").find(".totaltime").html(value); }); if ($("#div_FormName").text() == "Regularization_ApprovedForm") { $(".txt_checkbox").removeClass("hidden"); $(".Check_out_btn").attr("disabled", "disabled"); $(".Check_in_btn").attr("disabled", "disabled"); $(".dropdown_periodtypeid").attr("disabled", "disabled"); $(".txtAutoComplete_employeeid").attr("disabled", "disabled"); $(".date_fromdate").attr("disabled", "disabled"); $(".date_todate").attr("disabled", "disabled"); $(".calender_fromdate").addClass("hidden"); $(".calender_todate").addClass("hidden"); } }); }); } } Attendancerequestobj() { debugger; var attendanceRequest = new Array(); $('.datesbetween').each(function (index) { var element = $(this); var date_nontz = element.find("#hf_date").val(); var date_withtz = new Date(date_nontz.toString()); var isApproved = $(this).find('.txt_checkbox').is(':checked'); attendanceRequest.push({ Date: date_withtz, Description: element.find('#txt_Description').val(), CheckIn: element.find('#Check_in').val(), CheckOut: element.find('#Check_out').val(), AttendanceId: Number(element.find('#hf_attendanceid').val()), RegularizationapprovalId: Number(element.find('#hf_regularizationapprovalid').val()), IsApproved: isApproved, }); }); return attendanceRequest; } regularizationapprove() { let detailContainer = $("._bizgaze_detail_container:visible"); let refstatusId = (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.filter(function (o) { return o.Key === "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_refstatusid"; })[0].Value); $(detailContainer).find('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Approve').addClass('hidden'); if (refstatusId != '3' && refstatusId != '5') { $(detailContainer).find('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Approve').removeClass('hidden'); } } static Instance() { if (this.instance === undefined) { this.instance = new AttendanceRequest(); } return this.instance; } } Components.AttendanceRequest = AttendanceRequest; })(Components = Hrms.Components || (Hrms.Components = {})); })(Hrms = Apps.Hrms || (Apps.Hrms = {})); })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {})); })(Bizgaze || (Bizgaze = {}));