Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

employeeleaves.js 9.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
  2. function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
  3. return new (P || (P = Promise))(function (resolve, reject) {
  4. function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
  5. function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
  6. function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
  7. step((generator = generator.apply(thisArg, _arguments || [])).next());
  8. });
  9. };
  10. var Bizgaze;
  11. (function (Bizgaze) {
  12. let Apps;
  13. (function (Apps) {
  14. let Hrms;
  15. (function (Hrms) {
  16. let Controls;
  17. (function (Controls) {
  18. class EmployeeLeaves extends Unibase.Platform.Core.BaseComponent {
  19. constructor() {
  20. super(...arguments);
  21. this.availablebalance = 0;
  22. this.currentlybooked = "0";
  23. this.balanceleaves = 0;
  24. this.employeeid = 0;
  25. this.leavetypeid = 0;
  26. this.containerid = "";
  27. this.currentlybookedcount = 0;
  28. this.leavepolicyid = 0;
  29. }
  30. init(formpropertyid, prop, callback) {
  31. let instance = this;
  32. if (this.employeeid == 0 && this.leavetypeid == 0) {
  33. this.availablebalance = 0;
  34. this.currentlybooked = "0";
  35. this.currentlybookedcount = 0;
  36. this.balanceleaves = 0;
  37. this.leavepolicyid = 0;
  38. instance.loadControl(instance.containerid, null);
  39. }
  40. if (callback != null)
  41. callback();
  42. }
  43. loadControl(containerid, prop) {
  44. let instance = this;
  45. instance.todate1 = moment(new Date($.now())).format("DD/MM/YYYY");
  46. instance.yearlastdate = new Date(new Date().getFullYear(), 11, 31);
  47. instance.yearlastdate = moment(instance.yearlastdate).format("DD/MM/YYYY");
  48. instance.containerid = containerid;
  49. var html = `<table class="table"><thead><tr><div class="todate-date d-flex align-items-center"><th scope ="col">AS of ${instance.todate1}</th><th scope ="col">Day(s)</th></tr></thead></div><thead><tr><div class="dayscount-date d-flex align-items-center"><th scope ="col">Available Balance:</th><th scope ="col" id="availble">${instance.availablebalance}</th> </tr></thead></div><thead><tr><div class="totaldays-date d-flex align-items-center"><th scope ="col">Currently Booked:</th><th scope ="col">${instance.currentlybooked}</th></tr></thead></div><thead><tr><div class="total-date d-flex align-items-center"><th scope ="col">Balance After Booked Leave:</th><th scope ="col">${instance.balanceleaves}</th></tr></thead></div></table>
  50. <input type="hidden" id="hdn_employeeleavescountcontrol" class="value-control" value="Bizgaze.Apps.Hrms.Controls.EmployeeLeaves.Instance().employeeleavesControlObj();">`;
  51. $("#" + containerid).html(html);
  52. }
  53. getEmployeeAvailableLeaves(employeeid, leavetypeid) {
  54. let instance = this;
  55. instance.fileCacheHelper.loadJsFile("apps/hrms/managers/leavemanager.js", function () {
  56. Bizgaze.Apps.Hrms.Managers.LeaveManager.Instance().getleavescountData(Number(employeeid), Number(leavetypeid)).then(function (response) {
  57. if (response.result.length > 0) {
  58. var data = response.result;
  59. instance.leavepolicyid = data[0].leavepolicyid;
  60. instance.availablebalance = data[0].availableleaves;
  61. Bizgaze.Apps.Hrms.Controls.EmployeeLeaves.Instance().getCurrentlyBookedLeaves();
  62. instance.loadControl(instance.containerid, null);
  63. }
  64. });
  65. });
  66. }
  67. getCurrentlyBookedLeaves() {
  68. let instance = this;
  69. let fromdate = $(".hfdate_fromdate").val();
  70. let todate = $(".hfdate_todate").val();
  71. var firstDate = moment(fromdate);
  72. var secondDate = moment(todate);
  73. var leavefromdate = moment(fromdate).format("YYYY-MM-DD");
  74. var leavetodate = moment(todate).format("YYYY-MM-DD");
  75. var diffInDays = Math.abs(firstDate.diff(secondDate, 'days'));
  76. instance.fileCacheHelper.loadJsFile("apps/hrms/managers/holidaymanager.js", function () {
  77. Bizgaze.Apps.Hrms.Managers.HolidayManager.Instance().getHolidayDates(leavefromdate, leavetodate, instance.leavepolicyid).then(function (response) {
  78. var data = response.result;
  79. instance.currentlybooked = data + "(days)";
  80. instance.currentlybookedcount = data;
  81. instance.balanceleaves = instance.availablebalance - instance.currentlybookedcount;
  82. instance.loadControl(instance.containerid, null);
  83. });
  84. });
  85. }
  86. employeeleavesControlObj() {
  87. let instance = this;
  88. var EmployeeId = Number($(".txtAutoComplete_employeeid").val());
  89. var LeaveTypeId = Number($(".ddl_cascading_leavetypeid").val());
  90. if (instance.currentlybookedcount == 0 && EmployeeId != 0 && LeaveTypeId != 0) {
  91. MessageHelper.Instance().showError("Currently Booked Leaves Is Zero.Please check once.", 'div_ErrorMessage_' + $('#' + Unibase.Platform.Helpers.NavigationHelper.Instance().getLastContainerId()).find('#hf_FormId').val());
  92. return false;
  93. }
  94. }
  95. loadControlSettings(controlsettingjson, formpropertyid) {
  96. return null;
  97. }
  98. loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
  99. return null;
  100. }
  101. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  102. var instance = this;
  103. var leaverequestid = Number(propval);
  104. let employeeid;
  105. let leavetypeid;
  106. instance.fileCacheHelper.loadJsFiles(["apps/hrms/managers/leavemanager.js"], function () {
  107. return __awaiter(this, void 0, void 0, function* () {
  108. if ($("#div_FormName").text() == "Employee Leave Request") {
  109. yield Bizgaze.Apps.Hrms.Managers.LeaveManager.Instance().getLeaveRequest(leaverequestid).then(function (response) {
  110. var requsetdata = response.result;
  111. employeeid = requsetdata[0].employeeid;
  112. leavetypeid = requsetdata[0].leavetypeid;
  113. });
  114. }
  115. else {
  116. var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  117. employeeid = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_employeeid").Value;
  118. leavetypeid = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_leavetypeid").Value;
  119. }
  120. Bizgaze.Apps.Hrms.Managers.LeaveManager.Instance().getleavescountData(Number(employeeid), Number(leavetypeid)).then(function (response) {
  121. if (response.result.length > 0) {
  122. var data = response.result;
  123. instance.availablebalance = data[0].availableleaves + data[0].currentlybooked;
  124. instance.balanceleaves = data[0].balanceleaves;
  125. instance.currentlybookedcount = data[0].currentlybooked;
  126. instance.currentlybooked = data[0].currentlybooked + "(days)";
  127. instance.leavepolicyid = data[0].leavepolicyid;
  128. instance.loadControl(instance.containerid, null);
  129. }
  130. });
  131. });
  132. });
  133. }
  134. static Instance() {
  135. if (this._instance === undefined)
  136. this._instance = new EmployeeLeaves();
  137. return this._instance;
  138. }
  139. }
  140. Controls.EmployeeLeaves = EmployeeLeaves;
  141. })(Controls = Hrms.Controls || (Hrms.Controls = {}));
  142. })(Hrms = Apps.Hrms || (Apps.Hrms = {}));
  143. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  144. })(Bizgaze || (Bizgaze = {}));