{"version":3,"sources":["./library/angular-admin-lte/src/index.ts","./library/angular-admin-lte/src/lib/accordion/accordion.module.ts","./library/angular-admin-lte/src/lib/alert/alert.module.ts","./library/angular-admin-lte/src/lib/animations/animations.directive.ts","./library/angular-admin-lte/src/lib/animations/animations.module.ts","./library/angular-admin-lte/src/lib/box-info/box-info.module.ts","./library/angular-admin-lte/src/lib/box-small/box-small.module.ts","./library/angular-admin-lte/src/lib/box/box.component.html","./library/angular-admin-lte/src/lib/box/box.component.ts","./library/angular-admin-lte/src/lib/box/box.directive.ts","./library/angular-admin-lte/src/lib/box/box.module.ts","./library/angular-admin-lte/src/lib/breadcrumbs/breadcrumbs.component.html","./library/angular-admin-lte/src/lib/breadcrumbs/breadcrumbs.component.ts","./library/angular-admin-lte/src/lib/breadcrumbs/breadcrumbs.module.ts","./library/angular-admin-lte/src/lib/color/color.definition.ts","./library/angular-admin-lte/src/lib/color/color.directive.ts","./library/angular-admin-lte/src/lib/color/color.module.ts","./library/angular-admin-lte/src/lib/color/color.service.ts","./library/angular-admin-lte/src/lib/dropdown/dropdown.module.ts","./library/angular-admin-lte/src/lib/form/input-group/input-group.module.ts","./library/angular-admin-lte/src/lib/form/input-text/input-text.module.ts","./library/angular-admin-lte/src/lib/helpers.ts","./library/angular-admin-lte/src/lib/layout/content/content.component.html","./library/angular-admin-lte/src/lib/layout/content/content.component.ts","./library/angular-admin-lte/src/lib/layout/content/content.module.ts","./library/angular-admin-lte/src/lib/layout/footer/footer.component.ts.FooterLeftComponent.html","./library/angular-admin-lte/src/lib/layout/footer/footer.component.ts.FooterRightComponent.html","./library/angular-admin-lte/src/lib/layout/footer/footer.component.html","./library/angular-admin-lte/src/lib/layout/footer/footer.component.ts","./library/angular-admin-lte/src/lib/layout/footer/footer.module.ts","./library/angular-admin-lte/src/lib/layout/footer/footer.service.ts","./library/angular-admin-lte/src/lib/layout/header/header.component.ts.HeaderLogoComponent.html","./library/angular-admin-lte/src/lib/layout/header/header.component.ts.HeaderLogoMiniComponent.html","./library/angular-admin-lte/src/lib/layout/header/header.component.html","./library/angular-admin-lte/src/lib/layout/header/header.component.ts","./library/angular-admin-lte/src/lib/layout/header/header.module.ts","./library/angular-admin-lte/src/lib/layout/header/header.service.ts","./library/angular-admin-lte/src/lib/layout/layout.module.ts","./library/angular-admin-lte/src/lib/layout/layout.provider.ts","./library/angular-admin-lte/src/lib/layout/layout.service.ts","./library/angular-admin-lte/src/lib/layout/layout.store.ts","./library/angular-admin-lte/src/lib/layout/sidebar-left/sidebar-left.component.html","./library/angular-admin-lte/src/lib/layout/sidebar-left/sidebar-left.component.ts","./library/angular-admin-lte/src/lib/layout/sidebar-left/sidebar-left.directive.ts","./library/angular-admin-lte/src/lib/layout/sidebar-left/sidebar-left.module.ts","./library/angular-admin-lte/src/lib/layout/sidebar-right/sidebar-right.module.ts","./library/angular-admin-lte/src/lib/layout/sidebar-right/sidebar-right.service.ts","./library/angular-admin-lte/src/lib/layout/wrapper/wrapper.component.html","./library/angular-admin-lte/src/lib/layout/wrapper/wrapper.component.ts","./library/angular-admin-lte/src/lib/layout/wrapper/wrapper.module.ts","./library/angular-admin-lte/src/lib/layout/wrapper/wrapper.service.ts","./library/angular-admin-lte/src/lib/services/routing.service.ts","./library/angular-admin-lte/src/lib/tabs/tabs.component.ts.TabHeaderComponent.html","./library/angular-admin-lte/src/lib/tabs/tabs.component.ts.TabContentComponent.html","./library/angular-admin-lte/src/lib/tabs/tabs.component.ts.TabComponent.html","./library/angular-admin-lte/src/lib/tabs/tabs.component.ts.TabsHeaderComponent.html","./library/angular-admin-lte/src/lib/tabs/tabs.component.html","./library/angular-admin-lte/src/lib/tabs/tabs.component.ts","./library/angular-admin-lte/src/lib/tabs/tabs.directive.ts","./library/angular-admin-lte/src/lib/tabs/tabs.module.ts","./src/$_lazy_route_resource lazy namespace object","./src/app/+layout/department/department.service.ts","./src/app/+layout/designation/designation.service.ts","./src/app/+layout/expense/toaster/toaster-container.component.ts.ToasterContainerComponent.html","./src/app/+layout/expense/toaster/toaster-container.component.ts","./src/app/+layout/expense/toaster/toaster.component.ts.ToasterComponent.html","./src/app/+layout/expense/toaster/toaster.component.ts","./src/app/+layout/expense/toaster/toaster.service.ts","./src/app/+layout/jobband/jobband.service.ts","./src/app/+layout/leave/approval/approval.component.html","./src/app/+layout/leave/approval/approval.component.ts","./src/app/+layout/leave/approval/approval.module.ts","./src/app/+layout/leave/clientholiday/Clientholiday.component.html","./src/app/+layout/leave/clientholiday/clientholiday.component.ts","./src/app/+layout/leave/clientholiday/clientholiday.service.ts","./src/app/+layout/leave/comp-off/comp-off.component.html","./src/app/+layout/leave/comp-off/comp-off.component.ts","./src/app/+layout/leave/comp-off/comp-off.module.ts","./src/app/+layout/leave/holidays/holidays.component.html","./src/app/+layout/leave/holidays/holidays.component.ts","./src/app/+layout/leave/holidays/holidays.module.ts","./src/app/+layout/leave/holidays/holidays.service.ts","./src/app/+layout/leave/leave-report/daily-report/daily-report.component.html","./src/app/+layout/leave/leave-report/daily-report/daily-report.component.ts","./src/app/+layout/leave/leave-report/leave-balance-report/leave-balance-report.component.html","./src/app/+layout/leave/leave-report/leave-balance-report/leave-balance-report.component.ts","./src/app/+layout/leave/leave-report/leave-report.module.ts","./src/app/+layout/leave/leave-report/leave-taken-report/leave-taken-report.component.html","./src/app/+layout/leave/leave-report/leave-taken-report/leave-taken-report.component.ts","./src/app/+layout/leave/leave-report/user-availability-report/user-availability-report.component.html","./src/app/+layout/leave/leave-report/user-availability-report/user-availability-report.component.ts","./src/app/+layout/leave/leave-report/user-report/user-report.component.html","./src/app/+layout/leave/leave-report/user-report/user-report.component.ts","./src/app/+layout/leave/leave-routing.module.ts","./src/app/+layout/leave/leave.component.html","./src/app/+layout/leave/leave.component.ts","./src/app/+layout/leave/leave.module.ts","./src/app/+layout/leave/leave.service.ts","./src/app/+layout/leave/setting/approval-setting/approval-setting.component.html","./src/app/+layout/leave/setting/approval-setting/approval-setting.component.ts","./src/app/+layout/leave/setting/customize-leave-balance/customize-leave-balance.component.html","./src/app/+layout/leave/setting/customize-leave-balance/customize-leave-balance.component.ts","./src/app/+layout/leave/setting/customize-leave-balance/update-leave-balance/update-leave-balance.component.html","./src/app/+layout/leave/setting/customize-leave-balance/update-leave-balance/update-leave-balance.component.ts","./src/app/+layout/leave/setting/customize-policy/customize-policy.component.html","./src/app/+layout/leave/setting/customize-policy/customize-policy.component.ts","./src/app/+layout/leave/setting/generalsettings/generalsettings.component.html","./src/app/+layout/leave/setting/generalsettings/generalsettings.component.ts","./src/app/+layout/leave/setting/leave-type/leave-type.component.html","./src/app/+layout/leave/setting/leave-type/leave-type.component.ts","./src/app/+layout/leave/setting/scheduleServices/scheduleServices.component.html","./src/app/+layout/leave/setting/scheduleServices/scheduleServices.component.ts","./src/app/+layout/leave/setting/setting.module.ts","./src/app/+layout/location/location.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/auth.guard.ts","./src/app/common.service.ts","./src/app/core/core.module.ts","./src/app/core/header-inner/header-inner.component.html","./src/app/core/header-inner/header-inner.component.ts","./src/app/core/star-rating/star-rating.component.ts","./src/app/core/validators/custom-validators.ts","./src/app/dynamic-form/controls/dynamic-control-base.ts","./src/app/dynamic-form/controls/dynamic-control-checkbox.ts","./src/app/dynamic-form/controls/dynamic-control-dropdown.ts","./src/app/dynamic-form/controls/dynamic-control-radio-button.ts","./src/app/dynamic-form/controls/dynamic-control-textarea.ts","./src/app/dynamic-form/controls/dynamic-control-textbox.ts","./src/app/dynamic-form/dynamic-control.service.ts","./src/app/dynamic-form/dynamic-form.module.ts","./src/app/environment.ts","./src/app/models/Language.ts","./src/app/permission-keyword.ts","./src/app/services/auth.service.ts","./src/app/services/common.module.ts","./src/app/services/expense/expense-http.service.ts","./src/app/services/jwt-interceptor.service.ts","./src/app/udf/udf.service.ts","./src/app/user/user.service.ts","./src/environments/environment.ts","./src/main.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":"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,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;YACnE,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAC;SAGxE;QAED,iBAAY,GAAG;YACT,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,EAAC,EAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;YACvD,EAAC,EAAE,EAAC,OAAO,EAAE,IA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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAuD;AAC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","file":"main.js","sourcesContent":["/*\r\n * Public API Surface of angular-admin-lte\r\n */\r\n\r\nexport * from './lib/layout/layout.module';\r\n\r\nexport * from './lib/accordion/accordion.module';\r\nexport * from './lib/alert/alert.module';\r\nexport * from './lib/box/box.module';\r\nexport * from './lib/box-info/box-info.module';\r\nexport * from './lib/box-small/box-small.module';\r\nexport * from './lib/breadcrumbs/breadcrumbs.module';\r\nexport * from './lib/dropdown/dropdown.module';\r\nexport * from './lib/form/input-group/input-group.module';\r\nexport * from './lib/form/input-text/input-text.module';\r\nexport * from './lib/tabs/tabs.module';\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AnimationsModule } from '../animations/animations.module';\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { AccordionHeaderComponent, AccordionContentComponent, AccordionComponent, AccordionGroupComponent } from './accordion.component';\r\nimport { AccordionToggleDirective } from './accordion.directive';\r\n\r\n@NgModule({\r\n imports: [CommonModule, AnimationsModule, ColorModule],\r\n exports: [AccordionHeaderComponent, AccordionContentComponent, AccordionComponent, AccordionGroupComponent],\r\n declarations: [AccordionToggleDirective, AccordionHeaderComponent,\r\n AccordionContentComponent, AccordionComponent, AccordionGroupComponent]\r\n})\r\nexport class AccordionModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AnimationsModule } from '../animations/animations.module';\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { AlertComponent } from './alert.component';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule, AnimationsModule, ColorModule],\r\n exports: [AlertComponent],\r\n declarations: [AlertComponent]\r\n})\r\nexport class AlertModule {}\r\n","import { Directive, Input, Output, ElementRef, EventEmitter, Renderer2, NgZone, AfterContentInit, OnInit, OnDestroy } from '@angular/core';\r\nimport { AnimationEvent } from './animations.interface';\r\n/*\r\n *\r\n */\r\n@Directive({\r\n selector: '[collapseAnimation]'\r\n})\r\nexport class CollapseAnimationDirective implements OnInit, AfterContentInit, OnDestroy {\r\n private firstStart = true;\r\n private isCollapsed: boolean;\r\n private lastIsCollapsed: boolean;\r\n private transitioning: boolean;\r\n private listener: Function;\r\n\r\n @Input() public collapseAnimationDuration = 350;\r\n @Input() public collapseAnimationTiming: string;\r\n @Input('collapseAnimation') public set _isCollapsed(value: boolean) {\r\n this.lastIsCollapsed = this.isCollapsed;\r\n this.isCollapsed = value;\r\n if (!this.firstStart) {\r\n this.emit('start');\r\n if (value) {\r\n this.collapse();\r\n } else if (value === false) {\r\n this.unCollapse();\r\n }\r\n }\r\n }\r\n\r\n @Output('collapseAnimation.start') public startEventEmitter = new EventEmitter();\r\n @Output('collapseAnimation.done') public doneEventEmitter = new EventEmitter();\r\n\r\n\r\n /**\r\n * @method constructor\r\n * @param elementRef [description]\r\n * @param ngZone [description]\r\n * @param renderer2 [description]\r\n */\r\n constructor(\r\n private elementRef: ElementRef,\r\n private ngZone: NgZone,\r\n private renderer2: Renderer2\r\n ) {}\r\n\r\n /**\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n if (this.collapseAnimationDuration && this.collapseAnimationDuration !== 350) {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'transition-duration', `${this.collapseAnimationDuration}ms`);\r\n }\r\n if (this.collapseAnimationTiming) {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'transition-timing-function', this.collapseAnimationTiming);\r\n }\r\n }\r\n\r\n /**\r\n * @method ngAfterContentInit\r\n */\r\n ngAfterContentInit() {\r\n this.emit('start');\r\n if (this.isCollapsed) {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'display', 'none');\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'collapsing');\r\n }\r\n this.emit('done');\r\n this.firstStart = false;\r\n\r\n this.subscriptions();\r\n }\r\n\r\n /**\r\n * [ngOnDestroy description]\r\n * @method ngOnDestroy\r\n * @return [description]\r\n */\r\n ngOnDestroy() {\r\n if (this.listener) {\r\n this.listener();\r\n }\r\n }\r\n\r\n /**\r\n * [subscriptions description]\r\n * @method subscriptions\r\n */\r\n private subscriptions(): void {\r\n this.ngZone.runOutsideAngular(() => {\r\n this.listener = this.renderer2.listen(this.elementRef.nativeElement, 'transitionend', () => {\r\n if (!this.isCollapsed) {\r\n this.renderer2.removeClass(this.elementRef.nativeElement, 'un-collapse');\r\n this.renderer2.removeClass(this.elementRef.nativeElement, 'collapsing');\r\n } else {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'display', 'none');\r\n }\r\n requestAnimationFrame(() => {\r\n this.renderer2.removeStyle(this.elementRef.nativeElement, 'height');\r\n this.emit('done');\r\n this.transitioning = false;\r\n });\r\n });\r\n });\r\n }\r\n\r\n\r\n /**\r\n * [unCollapse description]\r\n * @method unCollapse\r\n */\r\n private unCollapse(): void {\r\n this.transitioning = true;\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'un-collapse');\r\n this.renderer2.removeStyle(this.elementRef.nativeElement, 'display');\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'height', `${this.elementRef.nativeElement.scrollHeight}px`);\r\n }\r\n\r\n /**\r\n * [collapse description]\r\n * @method collapse\r\n */\r\n private collapse(): void {\r\n requestAnimationFrame(() => {\r\n if (!this.transitioning) {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'height', `${this.elementRef.nativeElement.offsetHeight}px`);\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'collapsing');\r\n }\r\n this.transitioning = true;\r\n requestAnimationFrame(() => {\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'height', `0px`);\r\n });\r\n });\r\n }\r\n\r\n private emit(phaseName: string): void {\r\n const event: AnimationEvent = {\r\n element: this.elementRef.nativeElement,\r\n fromState: this.lastIsCollapsed === undefined ? 'void' : this.lastIsCollapsed ? '1' : '0',\r\n phaseName: phaseName,\r\n toState: this.isCollapsed === undefined ? 'void' : this.isCollapsed ? '1' : '0',\r\n totalTime: this.collapseAnimationDuration,\r\n triggerName: 'collapseAnimation'\r\n };\r\n\r\n if (phaseName === 'done') {\r\n this.doneEventEmitter.emit(event);\r\n } else if (phaseName === 'start') {\r\n this.startEventEmitter.emit(event);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { CollapseAnimationDirective } from './animations.directive';\r\n\r\n\r\n@NgModule({\r\n exports: [CollapseAnimationDirective],\r\n declarations: [CollapseAnimationDirective]\r\n})\r\nexport class AnimationsModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { BoxInfoHeaderDirective, BoxInfoContentDirective, BoxInfoFooterDirective } from './box-info.directive';\r\nimport { BoxInfoComponent } from './box-info.component';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule, ColorModule],\r\n exports: [BoxInfoComponent, BoxInfoHeaderDirective, BoxInfoContentDirective, BoxInfoFooterDirective],\r\n declarations: [BoxInfoComponent, BoxInfoHeaderDirective, BoxInfoContentDirective, BoxInfoFooterDirective]\r\n})\r\nexport class BoxInfoModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { BoxSmallHeaderDirective, BoxSmallContentDirective, BoxSmallFooterDirective } from './box-small.directive';\r\nimport { BoxSmallComponent } from './box-small.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, ColorModule],\r\n exports: [BoxSmallComponent, BoxSmallHeaderDirective, BoxSmallContentDirective, BoxSmallFooterDirective],\r\n declarations: [BoxSmallComponent, BoxSmallHeaderDirective, BoxSmallContentDirective, BoxSmallFooterDirective]\r\n})\r\nexport class BoxSmallModule {}\r\n","
\r\n
\r\n

\r\n {{header}}\r\n \r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{footer}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Output,\r\n Renderer2,\r\n ViewChild\r\n} from '@angular/core';\r\n\r\nimport {AnimationEvent} from '../animations/animations.interface';\r\n\r\nimport {BoxContentDirective, BoxFooterDirective, BoxHeaderDirective, BoxToolsDirective} from './box.directive';\r\n\r\nimport {removeListeners} from '../helpers';\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-box',\r\n templateUrl: './box.component.html',\r\n styleUrls: ['./box.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BoxComponent implements AfterViewInit, OnDestroy {\r\n public isCollaping: boolean;\r\n public remove = false;\r\n public removed: boolean;\r\n private listeners = [];\r\n\r\n @Input() public boxColor = 'default';\r\n @Input() public buttonsStyleClass = 'btn btn-box-tool';\r\n @Input() public contentStyleClass = 'box-content-wrapper';\r\n @Input() public contentColor: string;\r\n @Input() public footer: string;\r\n @Input() public footerColor: string;\r\n @Input() public footerStyleClass = 'box-footer';\r\n @Input() public header: string;\r\n @Input() public headerBorder = true;\r\n @Input() public headerColor: string;\r\n @Input() public headerStyleClass = 'box-header';\r\n @Input() public isCollapsable = true;\r\n @Input() public isCollapsed = false;\r\n @Input() public isLoading: boolean;\r\n @Input() public isRemovable = true;\r\n @Input() public isSolid = false;\r\n @Input() public loadingColor: string;\r\n @Input() public loadingStyleClass = 'fa fa-refresh fa-spin';\r\n @Input() public styleClass = 'box';\r\n @Input() public boxBodyClass = 'box-body';\r\n\r\n @Output() public onCollapseDone = new EventEmitter();\r\n @Output() public onCollapseStart = new EventEmitter();\r\n\r\n @ContentChild(BoxHeaderDirective) public boxHeaderDirective: BoxHeaderDirective;\r\n @ContentChild(BoxFooterDirective) public boxFooterDirective: BoxFooterDirective;\r\n @ContentChild(BoxContentDirective) public boxContentDirective: BoxContentDirective;\r\n @ContentChild(BoxToolsDirective) public boxToolsDirective: BoxToolsDirective;\r\n\r\n @ViewChild('toggleButtonElement') private toggleButtonElement;\r\n @ViewChild('removeButtonElement') private removeButtonElement;\r\n\r\n /**\r\n * @method constructor\r\n * @param changeDetectorRef [description]\r\n * @param ngZone [description]\r\n * @param renderer2 [description]\r\n */\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private ngZone: NgZone,\r\n private renderer2: Renderer2\r\n ) {}\r\n\r\n /**\r\n * @method ngAfterViewInit\r\n */\r\n ngAfterViewInit() {\r\n this.ngZone.runOutsideAngular(() => {\r\n if (this.toggleButtonElement) {\r\n this.listeners.push(this.renderer2.listen(this.toggleButtonElement.nativeElement, 'click', () => {\r\n this.isCollapsed = !this.isCollapsed;\r\n this.changeDetectorRef.detectChanges();\r\n }));\r\n }\r\n if (this.removeButtonElement) {\r\n this.listeners.push(this.renderer2.listen(this.removeButtonElement.nativeElement, 'click', () => {\r\n this.remove = true;\r\n this.changeDetectorRef.detectChanges();\r\n }));\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n removeListeners(this.listeners);\r\n }\r\n\r\n /**\r\n * [removedDone description]\r\n * @method removedDone\r\n * @param event [description]\r\n */\r\n public removedDone(event): void {\r\n if (event.toState === '1') {\r\n this.removed = true;\r\n }\r\n }\r\n\r\n /**\r\n * [collapseStart description]\r\n * @method collapseStart\r\n * @param event [description]\r\n */\r\n public collapseStart(event: AnimationEvent): void {\r\n if (event.fromState !== 'void') {\r\n this.isCollaping = true;\r\n this.onCollapseStart.emit(event);\r\n }\r\n }\r\n\r\n /**\r\n * [collapseDone description]\r\n * @method collapseDone\r\n * @param event [description]\r\n */\r\n public collapseDone(event: AnimationEvent): void {\r\n if (event.fromState !== 'void') {\r\n this.isCollaping = false;\r\n this.onCollapseDone.emit(event);\r\n }\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n /* tslint:disable-next-line:directive-selector */\r\n selector: 'mk-box-content'\r\n})\r\nexport class BoxContentDirective {}\r\n\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n /* tslint:disable-next-line:directive-selector */\r\n selector: 'mk-box-footer'\r\n})\r\nexport class BoxFooterDirective {}\r\n\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n /* tslint:disable-next-line:directive-selector */\r\n selector: 'mk-box-tools'\r\n})\r\nexport class BoxToolsDirective {}\r\n\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n /* tslint:disable-next-line:directive-selector */\r\n selector: 'mk-box-header'\r\n})\r\nexport class BoxHeaderDirective {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AnimationsModule } from '../animations/animations.module';\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { BoxHeaderDirective, BoxContentDirective, BoxFooterDirective, BoxToolsDirective } from './box.directive';\r\nimport { BoxComponent } from './box.component';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule, AnimationsModule, ColorModule],\r\n exports: [BoxComponent, BoxHeaderDirective, BoxContentDirective, BoxFooterDirective, BoxToolsDirective],\r\n declarations: [BoxComponent, BoxHeaderDirective, BoxContentDirective, BoxFooterDirective, BoxToolsDirective]\r\n})\r\nexport class BoxModule {}\r\n","
    \r\n
  1. \r\n \r\n \r\n {{breadcrumb.data.breadcrumbs}}\r\n {{breadcrumb.data.title}}\r\n \r\n \r\n \r\n {{breadcrumb.data.breadcrumbs}}\r\n {{breadcrumb.data.title}}\r\n \r\n
  2. \r\n
\r\n","import { Component, OnInit, Input, OnDestroy, ChangeDetectorRef } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { RoutingService } from '../services/routing.service';\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-breadcrumbs',\r\n templateUrl: './breadcrumbs.component.html',\r\n styleUrls: ['./breadcrumbs.component.css']\r\n})\r\nexport class BreadcrumbsComponent implements OnInit, OnDestroy {\r\n public breadcrumbs;\r\n\r\n private subscription: Subscription;\r\n\r\n @Input() public homeIcon = 'fa fa-home';\r\n\r\n /**\r\n * @method constructor\r\n * @param routingService [description]\r\n * @param changeDetectorRef [description]\r\n */\r\n constructor(\r\n private routingService: RoutingService,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n /**\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n this.subscription = this.routingService.onChange.subscribe(value => {\r\n this.breadcrumbs = value;\r\n });\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule],\r\n exports: [BreadcrumbsComponent],\r\n declarations: [BreadcrumbsComponent]\r\n})\r\nexport class BreadcrumbsModule {}\r\n","export const colorsAliases = [\r\n 'default',\r\n 'primary',\r\n 'danger',\r\n 'warning',\r\n 'info',\r\n 'success'\r\n];\r\n\r\nexport const colors = {\r\n 'aqua': '#00c0ef',\r\n 'aqua-active': '#00a7d0',\r\n 'black': '#111111',\r\n 'black-active': '#000000',\r\n 'blue': '#0073b7',\r\n 'blue-active': '#005384',\r\n 'fuchsia': '#f012be',\r\n 'fuchsia-active': '#db0ead',\r\n 'green': '#00a65a',\r\n 'green-active': '#008d4c',\r\n 'gray': '#d2d6de',\r\n 'gray-active': '#b5bbc8',\r\n 'gray-light': '#f7f7f7',\r\n 'light-blue': '#3c8dbc',\r\n 'light-blue-active': '#357ca5',\r\n 'lime': '#01ff70',\r\n 'lime-active': '#00e765',\r\n 'maroon': '#d81b60',\r\n 'maroon-active': '#ca195a',\r\n 'navy': '#001f3f',\r\n 'navy-active': '#001a35',\r\n 'olive': '#3d9970',\r\n 'olive-active': '#368763',\r\n 'orange': '#ff851b',\r\n 'orange-active': '#ff7701',\r\n 'purple': '#605ca8',\r\n 'purple-active': '#555299',\r\n 'red': '#dd4b39',\r\n 'red-active': '#d33724',\r\n 'teal': '#39cccc',\r\n 'teal-active': '#30bbbb',\r\n 'yellow': '#f39c12',\r\n 'yellow-active': '#db8b0b',\r\n};\r\n","import { Directive, Input, Renderer2, ElementRef } from '@angular/core';\r\n\r\nimport { ColorService } from './color.service';\r\n\r\n@Directive({\r\n selector: '[mkColor]',\r\n providers: [ColorService]\r\n})\r\nexport class BackgroundColorDirective {\r\n /**\r\n * @method constructor\r\n * @param elementRef [description]\r\n * @param renderer2 [description]\r\n * @param colorService [description]\r\n */\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer2: Renderer2,\r\n private colorService: ColorService\r\n ) {}\r\n\r\n @Input('mkColorCondition') condition = true;\r\n @Input('mkColorPrefix') prefix: string;\r\n @Input('mkColorProperty') property: string;\r\n @Input('mkColor') set color(color: string) {\r\n this.colorService.setBackgroundColor(color, this.condition, this.property, this.prefix);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[mkFontColor]',\r\n providers: [ColorService]\r\n})\r\nexport class ColorDirective {\r\n /**\r\n * @method constructor\r\n * @param elementRef [description]\r\n * @param renderer2 [description]\r\n * @param colorService [description]\r\n */\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer2: Renderer2,\r\n private colorService: ColorService\r\n ) {}\r\n\r\n @Input('mkFontColor') set color(color: string) {\r\n this.colorService.setFontColor(color);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { BackgroundColorDirective, ColorDirective } from './color.directive';\r\n\r\n@NgModule({\r\n exports: [BackgroundColorDirective, ColorDirective],\r\n declarations: [BackgroundColorDirective, ColorDirective]\r\n})\r\nexport class ColorModule {}\r\n","import { Injectable, Renderer2, ElementRef } from '@angular/core';\r\n\r\nimport { colors, colorsAliases } from './color.definition';\r\n\r\n/*\r\n *\r\n */\r\n@Injectable()\r\nexport class ColorService {\r\n private currentBackgroundStyle: any;\r\n private currentBackgroundClass: any;\r\n private currentFontStyle: any;\r\n private currentFontClass: any;\r\n\r\n /**\r\n * @method constructor\r\n * @param renderer2 [description]\r\n * @param elementRef [description]\r\n */\r\n constructor(\r\n private renderer2: Renderer2,\r\n private elementRef: ElementRef\r\n ) {\r\n // this.init();\r\n // console.log(this);\r\n }\r\n\r\n /**\r\n * [setBackgroundColor description]\r\n * @method setBackgroundColor\r\n * @param color [description]\r\n * @param condition [description]\r\n * @param property [description]\r\n * @param prefix [description]\r\n */\r\n public setBackgroundColor(color: string, condition: boolean, property: string, prefix: string): void {\r\n if (color && condition) {\r\n this.resetBackgroundColor();\r\n if (colors[color]) {\r\n this.renderer2.addClass(this.elementRef.nativeElement, 'bg-color');\r\n this.currentBackgroundStyle = {property: property, color: colors[color]};\r\n this.renderer2.setStyle(this.elementRef.nativeElement, property, colors[color]);\r\n } else {\r\n this.renderer2.removeClass(this.elementRef.nativeElement, 'bg-color');\r\n if (color.indexOf('#') === 0 || color.indexOf('rgb') === 0) {\r\n this.currentBackgroundStyle = {property: property, color: color};\r\n this.renderer2.setStyle(this.elementRef.nativeElement, property, color);\r\n } else if (colorsAliases.indexOf(color) !== -1) {\r\n this.currentBackgroundClass = prefix ? `${prefix}-${color}` : color;\r\n this.renderer2.addClass(this.elementRef.nativeElement, this.currentBackgroundClass);\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * [resetBackgroundColor description]\r\n * @method resetBackgroundColor\r\n */\r\n public resetBackgroundColor(): void {\r\n if (this.currentBackgroundStyle) {\r\n this.renderer2.removeStyle(this.elementRef.nativeElement, this.currentBackgroundStyle.property, this.currentBackgroundStyle.color);\r\n } else if (this.currentBackgroundClass) {\r\n this.renderer2.removeClass(this.elementRef.nativeElement, this.currentBackgroundClass);\r\n }\r\n }\r\n\r\n /**\r\n * [setFontColor description]\r\n * @method setFontColor\r\n * @param color [description]\r\n */\r\n public setFontColor(color: string): void {\r\n if (color) {\r\n this.resetFontColor();\r\n if (color.startsWith('#') || color.startsWith('rgb')) {\r\n this.currentFontStyle = color;\r\n this.renderer2.setStyle(this.elementRef.nativeElement, 'color', color);\r\n } else {\r\n this.currentFontClass = `text-${color}`;\r\n this.renderer2.addClass(this.elementRef.nativeElement, this.currentFontClass);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * [resetFontColor description]\r\n * @method resetFontColor\r\n * @return [description]\r\n */\r\n public resetFontColor() {\r\n if (this.currentFontStyle) {\r\n this.renderer2.removeStyle(this.elementRef.nativeElement, 'color', this.currentFontStyle);\r\n } else if (this.currentFontClass) {\r\n this.renderer2.removeClass(this.elementRef.nativeElement, this.currentFontClass);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AnimationsModule } from '../animations/animations.module';\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { DropdownComponent, DropdownToggleComponent, DropdownMenuComponent } from './dropdown.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, AnimationsModule, ColorModule],\r\n exports: [DropdownComponent, DropdownToggleComponent, DropdownMenuComponent],\r\n declarations: [DropdownComponent, DropdownToggleComponent, DropdownMenuComponent]\r\n})\r\nexport class DropdownModule {}\r\n","import {NgModule} from '@angular/core';\r\nimport {FormsModule} from '@angular/forms';\r\nimport {CommonModule} from '@angular/common';\r\n\r\nimport {ColorModule} from '../../color/color.module';\r\n\r\nimport {InputGroupComponent} from './input-group.component';\r\nimport {\r\n InputGroupAddonLeftDirective,\r\n InputGroupAddonRightDirective,\r\n InputGroupContentDirective,\r\n InputGroupLabelDirective\r\n} from './input-group.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ColorModule,\r\n FormsModule\r\n ],\r\n exports: [InputGroupComponent, InputGroupLabelDirective, InputGroupAddonLeftDirective,\r\n InputGroupAddonRightDirective, InputGroupContentDirective],\r\n declarations: [InputGroupComponent, InputGroupLabelDirective, InputGroupAddonLeftDirective,\r\n InputGroupAddonRightDirective, InputGroupContentDirective]\r\n})\r\nexport class InputGroupModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ColorModule } from '../../color/color.module';\r\n\r\nimport { InputTextDirective } from './input-text.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ColorModule,\r\n FormsModule\r\n ],\r\n exports: [InputTextDirective],\r\n declarations: [InputTextDirective]\r\n})\r\nexport class InputTextModule {}\r\n","import { Subscription } from 'rxjs';\r\n\r\n\r\n/**\r\n * [throttle description]\r\n * @method throttle\r\n * @param callback [description]\r\n * @param delay [description]\r\n * @return [description]\r\n */\r\nexport function throttle(callback: Function, delay: number): (args: Array) => void {\r\n let timeout = null;\r\n return (...args) => {\r\n if (!timeout) {\r\n timeout = setTimeout(() => {\r\n callback.call(this, ...args);\r\n timeout = null;\r\n }, delay);\r\n }\r\n };\r\n}\r\n\r\n\r\n/**\r\n * [removeSubscriptions description]\r\n * @method removeSubscriptions\r\n */\r\nexport function removeSubscriptions(subscriptions): Array {\r\n if (subscriptions) {\r\n subscriptions.forEach((subscription: Subscription) => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n return [];\r\n}\r\n\r\n/**\r\n * [removeListeners description]\r\n * @method removeListeners\r\n */\r\nexport function removeListeners(listeners): Array {\r\n if (listeners) {\r\n listeners.forEach((listener: Function) => {\r\n listener();\r\n });\r\n }\r\n return [];\r\n}\r\n","
\r\n
\r\n \r\n
\r\n

\r\n {{header}}\r\n {{description}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef, ViewChild, ElementRef, OnDestroy } from '@angular/core';\r\nimport { Router, NavigationStart, NavigationEnd, Event as RouterEvent } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { LayoutStore } from '../layout.store';\r\n\r\nimport { RoutingService } from '../../services/routing.service';\r\nimport { SidebarRightService } from '../sidebar-right/sidebar-right.service';\r\nimport { HeaderService } from '../header/header.service';\r\nimport { FooterService } from '../footer/footer.service';\r\n\r\nimport { removeSubscriptions } from '../../helpers';\r\n\r\n@Component({\r\n selector: 'mk-layout-content',\r\n templateUrl: './content.component.html',\r\n styleUrls: ['./content.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ContentComponent implements OnInit, OnDestroy {\r\n public description: string;\r\n public header: string;\r\n public heightStyle: number;\r\n public sidebarLeftHeight: number;\r\n public windowInnerHeight: number;\r\n\r\n private layout: string;\r\n private titleTag: string;\r\n private navigationEnd: boolean;\r\n private subscriptions = [];\r\n\r\n @ViewChild('contentInnerElement') private contentInnerElement: ElementRef;\r\n\r\n /**\r\n * @method constructor\r\n * @param layoutStore\r\n * @param routingService\r\n * @param titleService\r\n * @param elementRef\r\n * @param changeDetectorRef\r\n * @param sidebarRightService\r\n * @param headerService\r\n * @param footerService\r\n * @param router\r\n */\r\n constructor(\r\n private layoutStore: LayoutStore,\r\n private routingService: RoutingService,\r\n private titleService: Title,\r\n private elementRef: ElementRef,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private sidebarRightService: SidebarRightService,\r\n private headerService: HeaderService,\r\n private footerService: FooterService,\r\n private router: Router\r\n ) {}\r\n\r\n /**\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n this.titleTag = this.titleService.getTitle();\r\n\r\n this.subscriptions.push(this.routingService.onChange.subscribe((value: any) => {\r\n if (value && value[value.length - 1]) {\r\n this.titleService.setTitle(this.getTitle(value[value.length - 1].data['title']));\r\n this.header = value[value.length - 1].data['title'];\r\n this.description = value[value.length - 1].data['description'];\r\n }\r\n this.changeDetectorRef.markForCheck();\r\n }));\r\n\r\n this.subscriptions.push(this.router.events.subscribe((routeEvent: RouterEvent) => {\r\n if (routeEvent instanceof NavigationStart) {\r\n this.navigationEnd = false;\r\n }\r\n if (routeEvent instanceof NavigationEnd) {\r\n this.navigationEnd = true;\r\n this.setContentMinHeight();\r\n }\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.sidebarLeftElementHeight.subscribe((value: number) => {\r\n this.sidebarLeftHeight = value;\r\n this.setContentMinHeight();\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.layout.subscribe((value: string) => {\r\n this.layout = value;\r\n this.setContentMinHeight();\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.windowInnerHeight.subscribe((value: number) => {\r\n this.windowInnerHeight = value;\r\n this.setContentMinHeight();\r\n }));\r\n this.heightStyle = this.windowInnerHeight;\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n this.subscriptions = removeSubscriptions(this.subscriptions);\r\n }\r\n\r\n /**\r\n * [scrollHeight description]\r\n * @method scrollHeight\r\n * @return [description]\r\n */\r\n public get scrollHeight(): number {\r\n return this.contentInnerElement.nativeElement.scrollHeight;\r\n }\r\n\r\n /**\r\n * [getTitle description]\r\n * @method getTitle\r\n * @param title [description]\r\n * @return [description]\r\n */\r\n private getTitle(title: string): string {\r\n return title ? `${title} - ${this.titleTag}` : this.titleTag;\r\n }\r\n\r\n /**\r\n * [setMinHeight description]\r\n * @method setMinHeight\r\n */\r\n private setContentMinHeight(): void {\r\n if (this.navigationEnd) {\r\n let heightStyle;\r\n\r\n const headerFooterOffsetHeight = this.headerService.offsetHeight + this.footerService.offsetHeight;\r\n\r\n if (this.layout === 'fixed') {\r\n heightStyle = this.windowInnerHeight - this.footerService.offsetHeight;\r\n } else {\r\n const sidebarRight =\r\n this.sidebarRightService.scrollHeight ?\r\n this.sidebarRightService.scrollHeight - this.headerService.offsetHeight : 0;\r\n\r\n heightStyle = Math.max(\r\n this.windowInnerHeight - headerFooterOffsetHeight,\r\n this.sidebarLeftHeight - this.headerService.offsetHeight,\r\n sidebarRight\r\n );\r\n }\r\n\r\n if (heightStyle && heightStyle !== this.heightStyle) {\r\n if (this.scrollHeight > heightStyle) {\r\n heightStyle = null;\r\n }\r\n this.heightStyle = heightStyle;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { BreadcrumbsModule } from '../../breadcrumbs/breadcrumbs.module';\r\nimport { ContentComponent } from './content.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule, BreadcrumbsModule],\r\n exports: [ContentComponent],\r\n declarations: [ContentComponent]\r\n})\r\nexport class ContentModule {}\r\n","","","
\r\n
\r\n \r\n
\r\n \r\n
\r\n","import { Component, ContentChild, OnInit, ViewChild, TemplateRef, ElementRef } from '@angular/core';\r\n\r\nimport { FooterService } from './footer.service';\r\n\r\n/**\r\n * Footer Left\r\n */\r\n@Component({\r\n selector: 'mk-layout-footer-left',\r\n template: ''\r\n})\r\nexport class FooterLeftComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n/**\r\n * Footer Right\r\n */\r\n@Component({\r\n selector: 'mk-layout-footer-right',\r\n template: ''\r\n})\r\nexport class FooterRightComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n@Component({\r\n selector: 'mk-layout-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.css']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n @ContentChild(FooterLeftComponent) public footerLeftComponent: FooterLeftComponent;\r\n @ContentChild(FooterRightComponent) public footerRightComponent: FooterRightComponent;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private footerService: FooterService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.footerService.elementRef = this.elementRef;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { FooterComponent, FooterLeftComponent, FooterRightComponent } from './footer.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [FooterComponent, FooterLeftComponent, FooterRightComponent],\r\n declarations: [FooterComponent, FooterLeftComponent, FooterRightComponent]\r\n})\r\nexport class FooterModule { }\r\n","import { Injectable, ElementRef } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class FooterService {\r\n public elementRef: ElementRef;\r\n\r\n /**\r\n * [offsetHeight description]\r\n * @method offsetHeight\r\n * @return [description]\r\n */\r\n public get offsetHeight(): number {\r\n return this.elementRef.nativeElement.offsetHeight;\r\n }\r\n}\r\n","","","
\r\n \r\n \r\n
\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Renderer2,\r\n TemplateRef,\r\n ViewChild\r\n} from '@angular/core';\r\n\r\nimport {LayoutStore} from '../layout.store';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\nimport {HeaderService} from './header.service';\r\nimport { DatePipe } from '@angular/common'\r\n\r\nimport {removeListeners, removeSubscriptions} from '../../helpers';\r\nimport { ExpenseHttpService } from 'src/app/services/expense/expense-http.service';\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\n\r\n/**\r\n * Header Logo\r\n */\r\n@Component({\r\n selector: 'mk-layout-header-logo',\r\n template: ''\r\n})\r\nexport class HeaderLogoComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n/**\r\n * Header Logo Mini\r\n */\r\n@Component({\r\n selector: 'mk-layout-header-logo-mini',\r\n template: ''\r\n})\r\nexport class HeaderLogoMiniComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n/**\r\n * Header\r\n */\r\n@Component({\r\n selector: 'mk-layout-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css']\r\n})\r\nexport class HeaderComponent implements AfterViewInit, OnDestroy {\r\n private isSidebarLeftCollapsed: boolean;\r\n private isSidebarRightCollapsed: boolean;\r\n private listeners = [];\r\n private subscriptions = [];\r\n\r\n @Input() isSidebarLeftToggle = true;\r\n @Input() isSidebarRightToggle = true;\r\n\r\n @ContentChild(HeaderLogoComponent) public headerLogoComponent: HeaderLogoComponent;\r\n @ContentChild(HeaderLogoMiniComponent) public headerLogoMiniComponent: HeaderLogoMiniComponent;\r\n\r\n @ViewChild('headerElement') private headerElement: ElementRef;\r\n @ViewChild('sidebarLeftToggleElement') private sidebarLeftToggleElement: ElementRef;\r\n @ViewChild('sidebarRightToggleElement') private sidebarRightToggleElement: ElementRef;\r\n\r\n /**\r\n * @method constructor\r\n * @param layoutStore [description]\r\n * @param ngZone [description]\r\n * @param renderer2 [description]\r\n * @param elementRef [description]\r\n * @param headerService [description]\r\n */\r\n ipAddress\r\n constructor(\r\n public toaster: ToasterService,\r\n public date: DatePipe,\r\n private layoutStore: LayoutStore,\r\n private ngZone: NgZone,\r\n private renderer2: Renderer2,\r\n private elementRef: ElementRef,\r\n private headerService: HeaderService,\r\n public auth: AuthService,\r\n private expenseHttpService: ExpenseHttpService\r\n \r\n ) {\r\n \r\n this.NoOfattemps=0;\r\n this.isusercheckedin();\r\n this.NoOfattemps=this.auth.getNoOfAttepmts();\r\n // this.ischeckedin='no';\r\n this.userid= this.auth.getUserId();\r\n this.checkintime=this.auth.getCheckinTime();\r\n this.diffrencetime();\r\n // debugger\r\n }\r\n\r\n /**\r\n * @method ngAfterViewInit\r\n */\r\n NoOfattemps: any;\r\n ischeckedin:any;\r\n userid:any;\r\n checkintime:any;\r\n checkintype:any;\r\n timeLeft: number = 1;\r\n mint: number = 0;\r\n hour: number = 0;\r\n interval;\r\n datecheckintime:any;\r\n currenttime:any;\r\n\r\n\r\nisusercheckedin()\r\n{\r\n let status= this.auth.getCheckintype();\r\n\r\n if(status=='0')\r\n {\r\n this.ischeckedin='no';\r\n }\r\n if(status=='1')\r\n {\r\n this.ischeckedin='yes';\r\n }\r\n if(status=='2')\r\n {\r\n this.ischeckedin='no';\r\n }\r\n\r\n}\r\n\r\ncheckout(){\r\n this.getLat\r\n this.getLong \r\n this.pauseTimer();\r\n this.ischeckedin='no';\r\n}\r\nlat:any\r\nlng :any\r\n\r\nget getLat(){\r\n return navigator.geolocation.getCurrentPosition((position: any) => {\r\n if (position) {\r\n this.lat = position.coords.latitude;\r\n }\r\n },\r\n (error: any) => console.log(error));\r\n}\r\nget getLong(){\r\n return navigator.geolocation.getCurrentPosition((position: any) => {\r\n if (position) {\r\n this.lng = position.coords.longitude;\r\n }\r\n },\r\n (error: any) => console.log(error));\r\n}\r\n\r\ncheckin(){\r\n debugger\r\n this.getLat\r\n this.getLong\r\n\r\n let date= new Date();\r\n let shortdate= this.date.transform(date, 'yyyy-MM-dd HH:mm:ss');\r\n let lat:any = this.getLat\r\n let long:any = this.getLong\r\n\r\n const params= {\r\n dateon: shortdate,\r\n userid: this.auth.getUserId(),\r\n cmpcode: this.auth.getcompanyCode(),\r\n ipaddress: this.ipAddress?.ip,\r\n status: '1',\r\n lati: this.lat == null?0:this.lat,\r\n longi: this.lng == null?0:this.lng,\r\n browser:navigator?.userAgent==null?'None':navigator?.userAgent\r\n }\r\n try {\r\n this.auth.setcheckstatus(params).subscribe(response => {\r\n if(response.success==true){\r\n this.auth.setNoOfAttepmts(response.data.table[0].totalattempt);\r\n this.NoOfattemps= this.auth.getNoOfAttepmts();\r\n if(response.data.table[0].data==4){ \r\n let currentdate:any= new Date();\r\n let mints= response.data.table[0].mintues * 60000;\r\n let actuallogged= currentdate-mints;\r\n this.checkintime= new Date(actuallogged);\r\n this.auth.setCheckininTime(this.checkintime);\r\n this.auth.setCheckin('1');\r\n this.ischeckedin='yes';\r\n this.diffrencetime();\r\n this.toaster.show('success', response.data.table[0].message);\r\n }\r\n if(response.data.table[0].data==5){\r\n this.auth.setCheckin('1');\r\n this.ischeckedin='yes';\r\n\r\n let lastdate:any = new Date(response.data.table[0].lastchkin);\r\n // this.lastcheckedin = lastdate;\r\n this.currenttime = new Date();\r\n let differencefrommints = this.currenttime - lastdate;\r\n let totalmint = Math.floor(differencefrommints / 60000);\r\n\r\n let mints = response.data.table[0].lastchkmin;\r\n let totalmintts = totalmint + mints;\r\n let milisecs = totalmintts * 60000;\r\n let actualdatobesaved = this.currenttime - milisecs;\r\n let convertstringtodate = new Date(actualdatobesaved);\r\n this.auth.setCheckininTime(convertstringtodate);\r\n this.auth.setCheckin('1');\r\n this.diffrencetime();\r\n this.toaster.show('warning', response.data.table[0].message)\r\n } \r\n }\r\n }, error => {\r\n this.toaster.show('warning', \"Please Try Again\")\r\n }); \r\n } catch (error) {\r\n this.toaster.show('warning', \"Please Try Again\")\r\n }\r\n} \r\n\r\npad(d) {\r\n return (d < 10) ? '0' + d.toString() : d.toString();\r\n}\r\n\r\nnewdate:any;\r\n diffrencetime(){\r\n \r\n if(this.checkintime=='')\r\n {\r\n this.datecheckintime= new Date();\r\n }\r\n else{\r\n this.datecheckintime= new Date(this.checkintime);\r\n }\r\n this.currenttime= new Date();\r\n\r\n let oldtime=this.currenttime-1260000;\r\n \r\n this.newdate=new Date(oldtime);\r\n let different= (this.currenttime-this.datecheckintime);\r\n let diffDays = Math.floor(different / 86400000); // days\r\n let diffHrs = Math.floor((different % 86400000) / 3600000); // hours\r\n let diffMins = Math.floor((different % 3.6e6) / 6e4)//Math.round(((different % 86400000) % 3600000) / 60000); // minutes \r\n let diffMinsx = Math.floor((different % 6e4) / 1000);\r\n // let diffMinss = Math.round((((different % 86400000) % 3600000 ) % 3600000)/ 60000); // minutes \r\n\r\n this.hour= this.pad(diffHrs);\r\n\r\n this.mint= this.pad(diffMins);\r\n this.timeLeft= diffMinsx;\r\n\r\n if(this.ischeckedin=='yes')\r\n{\r\n this.startTimer();\r\n}\r\n\r\n }\r\n\r\n \r\n startTimer() {\r\n clearInterval(this.interval);\r\n this.interval = setInterval(() => {\r\n if (this.timeLeft >= 59) {\r\n this.mint++;\r\n this.mint= this.pad(this.mint);\r\n if (this.mint == 60) {\r\n this.hour++;\r\n this.hour= this.pad(this.hour);\r\n this.mint = 0;\r\n }\r\n this.timeLeft = 0;\r\n } else {\r\n this.timeLeft++;\r\n }\r\n this.timeLeft= this.pad(this.timeLeft)\r\n \r\n }, 1000);\r\n\r\n \r\n\r\n \r\n }\r\n\r\n \r\n\r\n pauseTimer() {\r\n this.getLat\r\n this.getLong \r\n clearInterval(this.interval);\r\n let date= new Date();\r\n let shortdate= this.date.transform(date, 'yyyy-MM-dd HH:mm:ss');\r\n const params={\r\n dateon:shortdate,\r\n userid:this.auth.getUserId(),\r\n cmpcode:this.auth.getcompanyCode(),\r\n status:'2',\r\n header:'static',\r\n ipaddress: this.ipAddress?.ip,\r\n lati: this.lat == null?0:this.lat,\r\n longi: this.lng == null?0:this.lng,\r\n browser:navigator?.userAgent==null?'None':navigator?.userAgent\r\n }\r\ntry {\r\n this.auth.setcheckstatus(params).subscribe(response => {\r\n this.auth.setNoOfAttepmts(response.table);\r\n if(response.success==true)\r\n {\r\n this.auth.setNoOfAttepmts(response.data.table[0].totalattempt);\r\n this.NoOfattemps= this.auth.getNoOfAttepmts();\r\n \r\n if(response.data.table[0].data==5)\r\n {\r\n //not success\r\n this.toaster.show(\"warning\", response.data.table[0].message);\r\n this.auth.setCheckin('2');\r\n this.auth.setCheckininTime('');\r\n }\r\n if(response.data.table[0].data==4)\r\n {\r\n this.hour=0;\r\n this.mint=0;\r\n this.timeLeft=0;\r\n this.auth.setCheckin('2');\r\n this.auth.setCheckininTime('');\r\n this.toaster.show(\"success\", response.data.table[0].message);\r\n }\r\n \r\n }\r\n \r\n }, error => {\r\n this.toaster.show('warning', \"Please Try Again\")\r\n});\r\n} catch (error) {\r\n this.toaster.show('warning', \"Please Try Again\")\r\n}\r\n\r\n \r\n }\r\n\r\n\r\n\r\n ngAfterViewInit() {\r\n this.isusercheckedin();\r\n this.headerService.elementRef = this.headerElement;\r\n\r\n if (this.sidebarLeftToggleElement) {\r\n this.subscriptions.push(this.layoutStore.isSidebarLeftCollapsed.subscribe((value: boolean) => {\r\n this.isSidebarLeftCollapsed = value;\r\n }));\r\n this.ngZone.runOutsideAngular(() => {\r\n this.listeners.push(this.renderer2.listen(this.sidebarLeftToggleElement.nativeElement, 'click', (event: Event) => {\r\n event.preventDefault();\r\n this.layoutStore.sidebarLeftCollapsed(!this.isSidebarLeftCollapsed);\r\n }));\r\n });\r\n }\r\n if (this.sidebarRightToggleElement) {\r\n this.subscriptions.push(this.layoutStore.isSidebarRightCollapsed.subscribe((value: boolean) => {\r\n this.isSidebarRightCollapsed = value;\r\n }));\r\n this.ngZone.runOutsideAngular(() => {\r\n this.listeners.push(this.renderer2.listen(this.sidebarRightToggleElement.nativeElement, 'click', (event: Event) => {\r\n event.preventDefault();\r\n this.layoutStore.sidebarRightCollapsed(!this.isSidebarRightCollapsed);\r\n }));\r\n });\r\n }\r\n this.expenseHttpService.getIPAddress().then(async res => {\r\n debugger\r\n this.ipAddress = await res;\r\n })\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n this.listeners = removeListeners(this.listeners);\r\n this.subscriptions = removeSubscriptions(this.subscriptions);\r\n }\r\n\r\n settoggle()\r\n {\r\n \r\n let NewsidebarToggle: HTMLElement = document.getElementsByClassName(\"sidebar-mini\")[0] as HTMLElement;\r\n if(NewsidebarToggle.className == \"skin-blue sidebar-mini sidebar-collapse\"){\r\n NewsidebarToggle.className = \"skin-blue sidebar-mini\";\r\n return\r\n }\r\n if(localStorage.getItem(\"istoggle\") != null)\r\n {\r\n if(localStorage.getItem(\"istoggle\") === \"1\")\r\n {\r\n localStorage.setItem(\"istoggle\", \"0\");\r\n }\r\n else\r\n {\r\n localStorage.setItem(\"istoggle\", \"1\");\r\n }\r\n }\r\n else\r\n {\r\n localStorage.setItem(\"istoggle\", \"1\");\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { HeaderComponent, HeaderLogoComponent, HeaderLogoMiniComponent } from './header.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [HeaderComponent, HeaderLogoComponent, HeaderLogoMiniComponent],\r\n declarations: [HeaderComponent, HeaderLogoComponent, HeaderLogoMiniComponent]\r\n})\r\nexport class HeaderModule { }\r\n","import { Injectable, ElementRef } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class HeaderService {\r\n public elementRef: ElementRef;\r\n\r\n /**\r\n * [offsetHeight description]\r\n * @method offsetHeight\r\n * @return [description]\r\n */\r\n public get offsetHeight(): number {\r\n return this.elementRef.nativeElement.offsetHeight;\r\n }\r\n}\r\n","import { NgModule, ModuleWithProviders, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { ContentModule } from './content/content.module';\r\nimport { FooterModule } from './footer/footer.module';\r\nimport { HeaderModule } from './header/header.module';\r\nimport { SidebarLeftModule } from './sidebar-left/sidebar-left.module';\r\nimport { SidebarRightModule } from './sidebar-right/sidebar-right.module';\r\nimport { WrapperModule } from './wrapper/wrapper.module';\r\n\r\nimport { LayoutService } from './layout.service';\r\nimport { LayoutState } from './layout.state';\r\nimport { layoutProvider } from './layout.provider';\r\n\r\nimport { RoutingService } from '../services/routing.service';\r\nimport { WrapperService } from './wrapper/wrapper.service';\r\nimport { SidebarRightService } from './sidebar-right/sidebar-right.service';\r\nimport { HeaderService } from './header/header.service';\r\nimport { FooterService } from './footer/footer.service';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule],\r\n exports: [ContentModule, FooterModule, HeaderModule, SidebarLeftModule, SidebarRightModule, WrapperModule],\r\n providers: [RoutingService, WrapperService, SidebarRightService, HeaderService, FooterService]\r\n})\r\nexport class LayoutModule {\r\n\r\n /**\r\n * @method constructor\r\n * @param parentModule [description]\r\n */\r\n constructor(@Optional() @SkipSelf() parentModule: LayoutModule) {\r\n if (parentModule) {\r\n throw new Error('LayoutModule is already loaded. Import it in the AppModule only!');\r\n }\r\n }\r\n\r\n /**\r\n * [forRoot description]\r\n * @method forRoot\r\n * @param layoutConfig [description]\r\n * @return [description]\r\n */\r\n static forRoot(layoutConfig: LayoutState): ModuleWithProviders {\r\n return {\r\n ngModule: LayoutModule,\r\n providers: [...layoutProvider(layoutConfig), LayoutService]\r\n };\r\n }\r\n}\r\n\r\nexport * from './layout.service';\r\nexport * from './layout.store';\r\nexport * from './layout.state';\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nimport { LayoutStore } from './layout.store';\r\nimport { LayoutState } from './layout.state';\r\n\r\n/**\r\n * [InjectionToken description]\r\n */\r\nexport const LayoutConfigToken = new InjectionToken('layoutConfig');\r\n\r\n/**\r\n * [layoutStoreFactory description]\r\n */\r\nexport function layoutStoreFactory(layoutConfig: LayoutState): LayoutStore {\r\n return new LayoutStore(layoutConfig);\r\n}\r\n\r\n/**\r\n * [layoutProviders description]\r\n */\r\nexport function layoutProvider(layoutConfig: LayoutState) {\r\n return [{\r\n provide: LayoutStore,\r\n useFactory: layoutStoreFactory,\r\n deps: [LayoutConfigToken]\r\n }, {\r\n provide: LayoutConfigToken,\r\n useValue: layoutConfig\r\n }\r\n ];\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { RoutingService } from '../services/routing.service';\r\n\r\n@Injectable()\r\nexport class LayoutService {\r\n public isCustomLayout: BehaviorSubject = new BehaviorSubject(true);\r\n\r\n private customLayout: boolean;\r\n\r\n\r\n /**\r\n * @method constructor\r\n * @param routingService [description]\r\n */\r\n constructor(\r\n private routingService: RoutingService\r\n ) {\r\n this.init();\r\n }\r\n\r\n /**\r\n * [init description]\r\n * @method init\r\n * @return [description]\r\n */\r\n private init() {\r\n this.routingService.onChange.subscribe((value: any) => {\r\n if (value && value[value.length - 1]) {\r\n if (this.customLayout === undefined || this.customLayout !== value[value.length - 1].data['disableLayout']) {\r\n this.isCustomLayout.next(!!value[value.length - 1].data['customLayout']);\r\n }\r\n this.customLayout = value[value.length - 1].data['customLayout'];\r\n }\r\n });\r\n }\r\n}\r\n","import { BehaviorSubject , Observable } from 'rxjs';\r\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\r\n\r\nimport { LayoutState } from './layout.state';\r\n\r\n/*\r\n *\r\n */\r\nexport class LayoutStore {\r\n public readonly layoutState: Observable;\r\n\r\n private _layoutState: BehaviorSubject;\r\n private readonly initialLayoutState: LayoutState = {\r\n isSidebarLeftCollapsed: false,\r\n isSidebarLeftExpandOnOver: false,\r\n isSidebarLeftMouseOver: false,\r\n isSidebarLeftMini: true,\r\n sidebarRightSkin: 'dark',\r\n isSidebarRightCollapsed: true,\r\n isSidebarRightOverContent: true,\r\n layout: 'normal',\r\n sidebarLeftMenu: [],\r\n sidebarLeftMenuActiveUrl: '',\r\n skin: 'blue'\r\n };\r\n\r\n /**\r\n * @method constructor\r\n * @param layoutConfig [description]\r\n */\r\n constructor(layoutConfig: LayoutState) {\r\n if (layoutConfig) {\r\n this.initialLayoutState = Object.assign(this.initialLayoutState, layoutConfig);\r\n }\r\n this._layoutState = new BehaviorSubject(this.initialLayoutState);\r\n this.layoutState = this._layoutState.asObservable();\r\n }\r\n\r\n /**\r\n * [windowInnerHeight description]\r\n * @method windowInnerHeight\r\n * @return [description]\r\n */\r\n get windowInnerHeight(): Observable {\r\n return >this.layoutState.pipe(pluck('windowInnerHeight'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [windowInnerWidth description]\r\n * @method windowInnerWidth\r\n * @return [description]\r\n */\r\n get windowInnerWidth(): Observable {\r\n return >this.layoutState.pipe(pluck('windowInnerWidth'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarLeftCollapsed description]\r\n * @return [description]\r\n */\r\n get isSidebarLeftCollapsed(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarLeftCollapsed'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarLeftExpandOnOver description]\r\n * @method isSidebarLeftExpandOnOver\r\n * @return [description]\r\n */\r\n get isSidebarLeftExpandOnOver(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarLeftExpandOnOver'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarLeftMouseOver description]\r\n * @method isSidebarLeftMouseOver\r\n * @return [description]\r\n */\r\n get isSidebarLeftMouseOver(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarLeftMouseOver'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarLeftMini description]\r\n * @method isSidebarLeftMini\r\n * @return [description]\r\n */\r\n get isSidebarLeftMini(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarLeftMini'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [sidebarRightSkin description]\r\n * @method sidebarRightSkin\r\n * @return [description]\r\n */\r\n get sidebarRightSkin(): Observable {\r\n return >this.layoutState.pipe(pluck('sidebarRightSkin'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarRightCollapsed description]\r\n * @return [description]\r\n */\r\n get isSidebarRightCollapsed(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarRightCollapsed'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [isSidebarRightOverContent description]\r\n * @method isSidebarRightOverContent\r\n * @return [description]\r\n */\r\n get isSidebarRightOverContent(): Observable {\r\n return >this.layoutState.pipe(pluck('isSidebarRightOverContent'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [sidebarLeftMenu description]\r\n * @method sidebarLeftMenu\r\n * @return [description]\r\n */\r\n get sidebarLeftMenu(): Observable> {\r\n return >>this.layoutState.pipe(pluck('sidebarLeftMenu'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [sidebarLeftMenuActiveUrl description]\r\n * @method sidebarLeftMenuActiveUrl\r\n * @return [description]\r\n */\r\n get sidebarLeftMenuActiveUrl(): Observable {\r\n return >this.layoutState.pipe(pluck('sidebarLeftMenuActiveUrl'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [sidebarLeftElementHeight description]\r\n * @method sidebarLeftElementHeight\r\n * @return [description]\r\n */\r\n get sidebarLeftElementHeight(): Observable {\r\n return >this.layoutState.pipe(pluck('sidebarLeftElementHeight'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [layoutType description]\r\n * @method layoutType\r\n * @return [description]\r\n */\r\n get layout(): Observable {\r\n return >this.layoutState.pipe(pluck('layout'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [skin description]\r\n * @method skin\r\n * @return [description]\r\n */\r\n get skin(): Observable {\r\n return >this.layoutState.pipe(pluck('skin'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [wrapperClasses description]\r\n * @method wrapperClasses\r\n * @return [description]\r\n */\r\n get wrapperClasses(): Observable {\r\n return >this.layoutState.pipe(pluck('wrapperClasses'), distinctUntilChanged());\r\n }\r\n\r\n /**\r\n * [sidebarLeftCollapsed description]\r\n * @method sidebarLeftCollapsed\r\n * @param value [description]\r\n */\r\n public sidebarLeftCollapsed(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarLeftCollapsed: value})\r\n );\r\n }\r\n\r\n /**\r\n * [sidebarLeftExpandOnOver description]\r\n * @method sidebarLeftExpandOnOver\r\n * @param value [description]\r\n */\r\n public sidebarLeftExpandOnOver(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarLeftExpandOnOver: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setSidebarLeftElementHeight description]\r\n * @method setSidebarLeftElementHeight\r\n * @param value [description]\r\n */\r\n public setSidebarLeftElementHeight(value: number): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {sidebarLeftElementHeight: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setSidebarRightSkin description]\r\n * @method setSidebarRightSkin\r\n * @param value [description]\r\n */\r\n public setSidebarRightSkin(value?: string): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {sidebarRightSkin: value})\r\n );\r\n }\r\n\r\n /**\r\n * [sidebarLeftMouseOver description]\r\n * @method sidebarLeftMouseOver\r\n * @param value [description]\r\n */\r\n public sidebarLeftMouseOver(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarLeftMouseOver: value})\r\n );\r\n }\r\n\r\n /**\r\n * [sidebarLeftMini description]\r\n * @method sidebarLeftMini\r\n * @param value [description]\r\n */\r\n public sidebarLeftMini(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarLeftMini: value})\r\n );\r\n }\r\n\r\n /**\r\n * [sidebarRightCollapsed description]\r\n * @method sidebarRightCollapsed\r\n * @param value [description]\r\n */\r\n public sidebarRightCollapsed(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarRightCollapsed: value})\r\n );\r\n }\r\n\r\n /**\r\n * [sidebarRightOverContent description]\r\n * @method sidebarRightOverContent\r\n * @param value [description]\r\n */\r\n public sidebarRightOverContent(value?: boolean): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {isSidebarRightOverContent: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setSidebarLeftMenu description]\r\n * @method setSidebarLeftMenu\r\n * @param value [description]\r\n */\r\n public setSidebarLeftMenu(value: Array): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {sidebarLeftMenu: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setSidebarLeftMenuActiveUrl description]\r\n * @method setSidebarLeftMenuActiveUrl\r\n * @param value [description]\r\n */\r\n public setSidebarLeftMenuActiveUrl(value: string): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {sidebarLeftMenuActiveUrl: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setLayout description]\r\n * @method setLayout\r\n * @param value [description]\r\n */\r\n public setLayout(value: string): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {layout: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setSkin description]\r\n * @method setSkin\r\n * @param value [description]\r\n */\r\n public setSkin(value: string): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {skin: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setWrapperClasses description]\r\n * @method setWrapperClasses\r\n * @param value [description]\r\n */\r\n public setWrapperClasses(value: string): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {wrapperClasses: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setWindowInnerHeight description]\r\n * @method setWindowInnerHeight\r\n * @param value [description]\r\n */\r\n public setWindowInnerHeight(value: number): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {windowInnerHeight: value})\r\n );\r\n }\r\n\r\n /**\r\n * [setWindowInnerWidth description]\r\n * @method setWindowInnerWidth\r\n * @param value [description]\r\n */\r\n public setWindowInnerWidth(value: number): void {\r\n this._layoutState.next(\r\n Object.assign(this._layoutState.value, {windowInnerWidth: value})\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n \r\n
  • \r\n {{item.label}}\r\n \r\n \t{{item.label}}\r\n \t\r\n \t\t{{rightItem.text}}\r\n \t \r\n \t\r\n \r\n \r\n \t{{item.label}}\r\n \t\r\n \t\t{{rightItem.text}}\r\n \t \r\n \t\r\n \r\n
      \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
    \r\n\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n QueryList,\r\n Renderer2,\r\n ViewChild,\r\n ViewChildren\r\n} from '@angular/core';\r\nimport { Event as RouterEvent, NavigationEnd, PRIMARY_OUTLET, Router } from '@angular/router';\r\n\r\nimport { RoutingService } from '../../services/routing.service';\r\n\r\nimport { WrapperService } from '../wrapper/wrapper.service';\r\nimport { HeaderService } from '../header/header.service';\r\n\r\nimport { LayoutStore } from '../layout.store';\r\n\r\nimport { AnimationEvent } from '../../animations/animations.interface';\r\nimport { removeListeners, removeSubscriptions } from '../../helpers';\r\n\r\nimport { SidebarLeftToggleDirective } from './sidebar-left.directive';\r\nimport { AuthService } from '../../../../../../src/app/services/auth.service';\r\nimport { retry } from 'rxjs/operators';\r\nimport { debug } from 'util';\r\n\r\nexport interface Item {\r\n id: number;\r\n parentId: number;\r\n label: string;\r\n route?: string;\r\n iconClasses?: string;\r\n children?: Array;\r\n isActive?: boolean;\r\n isCollapsed?: boolean;\r\n disableCollapse?: boolean;\r\n}\r\n\r\nexport type Items = Array;\r\n\r\n@Component({\r\n selector: 'mk-layout-sidebar-left',\r\n templateUrl: './sidebar-left.component.html',\r\n styleUrls: ['./sidebar-left.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SidebarLeftComponent implements OnInit, AfterViewInit, OnDestroy {\r\n public menu: Array;\r\n public sidebarHeight: number;\r\n public sidebarOverflow: string;\r\n\r\n private layout: string;\r\n private isSidebarLeftCollapsed: boolean;\r\n private isSidebarLeftExpandOnOver: boolean;\r\n private isSidebarLeftMouseOver: boolean;\r\n private windowInnerWidth: number;\r\n private windowInnerHeight: number;\r\n private collapsedItems: Items = [];\r\n private activatedItems: Items = [];\r\n private toggleListeners: Array = [];\r\n private listeners: Array = [];\r\n private itemsByIds: { [propKey: number]: Item } = {};\r\n private runningAnimations = 0;\r\n private subscriptions = [];\r\n private activeUrl: String;\r\n private initialized: boolean;\r\n public CurrentUser: any;\r\n public toggle:boolean = false;\r\n ViewPermission: any = [];\r\n ViewPermissions: any = [];\r\n\r\n @ViewChild('sidebarElement') public sidebarElement: ElementRef;\r\n\r\n @ViewChildren(SidebarLeftToggleDirective) public sidebarLeftToggleDirectives: QueryList;\r\n\r\n /**\r\n * @method constructor\r\n * @param changeDetectorRef [description]\r\n * @param layoutStore [description]\r\n * @param ngZone [description]\r\n * @param renderer2 [description]\r\n * @param router [description]\r\n * @param routingService [description]\r\n * @param wrapperService [description]\r\n * @param headerService [description]\r\n */\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private layoutStore: LayoutStore,\r\n private ngZone: NgZone,\r\n private renderer2: Renderer2,\r\n private router: Router,\r\n private routingService: RoutingService,\r\n private wrapperService: WrapperService,\r\n private headerService: HeaderService,\r\n private auth: AuthService\r\n ) {\r\n this.auth.getPermission();\r\n this.auth.currentUser.subscribe(x => this.CurrentUser = x);\r\n }\r\n\r\n /**\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n let localData = localStorage.getItem('IsPermissions');\r\n this.ViewPermission = JSON.parse(localData);\r\n\r\n this.subscriptions.push(this.layoutStore.sidebarLeftMenu.subscribe(value => {\r\n this.menu = value;\r\n this.monkeyPatchMenu(this.menu);\r\n if (this.initialized) {\r\n this.setMenuListeners(this.activeUrl);\r\n this.setSidebarListeners();\r\n this.setMenuTogglesListeners();\r\n }\r\n this.initialized = true;\r\n }));\r\n this.subscriptions.push(this.layoutStore.sidebarLeftMenuActiveUrl.subscribe(value => {\r\n this.activeUrl = value;\r\n this.setMenuListeners(value);\r\n }));\r\n this.subscriptions.push(this.routingService.events.subscribe((event: RouterEvent) => {\r\n if (event instanceof NavigationEnd) {\r\n this.activeUrl = event.url;\r\n this.setMenuListeners(event.url);\r\n }\r\n }));\r\n\r\n this.setSidebarListeners();\r\n }\r\n\r\n /**\r\n * @method ngAfterViewInit\r\n */\r\n ngAfterViewInit() {\r\n this.setMenuTogglesListeners();\r\n this.checkMenuWithoutChildren();\r\n let sidebarToggle: HTMLElement = document.getElementsByClassName(\"sidebar-mini\")[0] as HTMLElement;\r\n sidebarToggle.className = \"skin-blue sidebar-mini sidebar-collapse\";\r\n if (this.router.url.indexOf(\"Gantt\") > 0) {\r\n let sidebarToggle: HTMLElement = document.getElementsByClassName(\"sidebar-toggle\")[0] as HTMLElement;\r\n sidebarToggle.click();\r\n }\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n this.subscriptions = removeSubscriptions(this.subscriptions);\r\n this.listeners = removeListeners(this.listeners);\r\n this.toggleListeners = removeListeners(this.toggleListeners);\r\n }\r\n\r\n /**\r\n * [setSidebarListeners description]\r\n * @method setSidebarListeners\r\n */\r\n setSidebarListeners(): void {\r\n this.subscriptions.push(this.layoutStore.layout.subscribe((value: string) => {\r\n this.layout = value;\r\n this.setSidebarHeight();\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.windowInnerHeight.subscribe((value: number) => {\r\n this.windowInnerHeight = value;\r\n this.setSidebarHeight();\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.sidebarLeftMenu.subscribe(() => {\r\n this.changeDetectorRef.detectChanges();\r\n }));\r\n\r\n this.ngZone.runOutsideAngular(() => {\r\n this.listeners.push(this.renderer2.listen(this.sidebarElement.nativeElement, 'mouseenter', () => {\r\n this.layoutStore.sidebarLeftMouseOver(true);\r\n }));\r\n this.listeners.push(this.renderer2.listen(this.sidebarElement.nativeElement, 'mouseleave', () => {\r\n this.layoutStore.sidebarLeftMouseOver(false);\r\n }));\r\n });\r\n\r\n this.subscriptions.push(this.layoutStore.windowInnerWidth.subscribe((value: number) => {\r\n this.windowInnerWidth = value;\r\n if (!this.isSidebarLeftCollapsed && this.windowInnerWidth <= 767) {\r\n this.layoutStore.sidebarLeftCollapsed(true);\r\n } else if (this.windowInnerWidth > 767 && this.isSidebarLeftCollapsed && !this.isSidebarLeftExpandOnOver) {\r\n this.layoutStore.sidebarLeftCollapsed(false);\r\n }\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.isSidebarLeftMouseOver.subscribe((value: boolean) => {\r\n this.isSidebarLeftMouseOver = value;\r\n if (this.isSidebarLeftExpandOnOver) {\r\n this.layoutStore.sidebarLeftCollapsed(!value);\r\n }\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.isSidebarLeftExpandOnOver.subscribe((value: boolean) => {\r\n this.isSidebarLeftExpandOnOver = value;\r\n if (this.windowInnerWidth > 767 && this.isSidebarLeftCollapsed !== undefined) {\r\n this.layoutStore.sidebarLeftCollapsed(value);\r\n }\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.isSidebarLeftCollapsed.subscribe((value: boolean) => {\r\n this.isSidebarLeftCollapsed = value;\r\n if (this.windowInnerWidth <= 767) {\r\n if (value) {\r\n this.renderer2.removeClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-open');\r\n } else {\r\n this.renderer2.addClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-open');\r\n }\r\n } else {\r\n if (this.isSidebarLeftExpandOnOver && !this.isSidebarLeftMouseOver && !value) {\r\n this.layoutStore.sidebarLeftExpandOnOver(false);\r\n }\r\n if (value) {\r\n this.renderer2.addClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-collapse');\r\n if (this.isSidebarLeftExpandOnOver) {\r\n this.renderer2.removeClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-expanded-on-hover');\r\n }\r\n } else {\r\n this.renderer2.removeClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-collapse');\r\n if (this.isSidebarLeftExpandOnOver) {\r\n this.renderer2.addClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-expanded-on-hover');\r\n }\r\n }\r\n }\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.isSidebarLeftMini.subscribe((value: boolean) => {\r\n if (value) {\r\n this.renderer2.addClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-mini');\r\n } else {\r\n this.renderer2.removeClass(this.wrapperService.wrapperElementRef.nativeElement, 'sidebar-mini');\r\n }\r\n }));\r\n }\r\n\r\n /**\r\n * [setMenuListeners description]\r\n * @method setMenuListeners\r\n */\r\n setMenuListeners(url): void {\r\n if (url === '/') {\r\n this.activeItems(url);\r\n this.changeDetectorRef.detectChanges();\r\n } else {\r\n const primaryOutlet = this.router.parseUrl(url).root.children[PRIMARY_OUTLET];\r\n if (primaryOutlet) {\r\n this.activeItems(primaryOutlet.toString());\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n if (this.windowInnerWidth <= 767 || this.isSidebarLeftExpandOnOver) {\r\n this.layoutStore.sidebarLeftCollapsed(true);\r\n }\r\n }\r\n\r\n /**\r\n * [getIconClasses description]\r\n * @method getIconClasses\r\n * @param item [description]\r\n * @return [description]\r\n */\r\n public getIconClasses(item: Item): string {\r\n if (item.iconClasses || item.iconClasses === '') {\r\n return item.iconClasses;\r\n } else {\r\n return 'fa fa-circle-o';\r\n }\r\n }\r\n\r\n /**\r\n * [visibilityStateStart description]\r\n * @method visibilityStateStart\r\n * @param event [description]\r\n */\r\n public visibilityStateStart(event: AnimationEvent): void {\r\n this.runningAnimations++;\r\n this.ngZone.runOutsideAngular(() => {\r\n setTimeout(() => {\r\n this.runningAnimations--;\r\n if (!this.runningAnimations) {\r\n this.layoutStore.setSidebarLeftElementHeight(this.sidebarElement.nativeElement.offsetHeight);\r\n }\r\n }, event.totalTime);\r\n });\r\n }\r\n\r\n /**\r\n * [uncollapseItemParents description]\r\n * @method uncollapseItemParents\r\n * @param item [description]\r\n * @param isActive [description]\r\n */\r\n private uncollapseItemParents(item: Item, isActive = false): void {\r\n if (isActive) {\r\n item.isActive = true;\r\n this.activatedItems.push(item);\r\n }\r\n item.isCollapsed = false;\r\n this.collapsedItems.push(item);\r\n if (item.parentId) {\r\n this.uncollapseItemParents(this.itemsByIds[item.parentId], isActive);\r\n }\r\n }\r\n\r\n /**\r\n * [findItemsByUrl description]\r\n * @method findItemsByUrl\r\n * @param url [description]\r\n * @param items [description]\r\n * @param returnItems [description]\r\n * @return [description]\r\n */\r\n private findItemsByUrl(url: string, items: Items, returnItems: Items = []): Items {\r\n items.forEach((item: Item) => {\r\n if (item.route === url) {\r\n returnItems.push(item);\r\n } else if (item.children) {\r\n this.findItemsByUrl(url, item.children, returnItems);\r\n }\r\n });\r\n return returnItems;\r\n }\r\n\r\n /**\r\n * [activeItems description]\r\n * @method activeItems\r\n * @param url [description]\r\n */\r\n private activeItems(url: string): void {\r\n this.activatedItems.forEach((item: Item) => {\r\n item.isActive = false;\r\n });\r\n this.activatedItems = [];\r\n\r\n this.collapsedItems.forEach((item: Item) => {\r\n item.isActive = false;\r\n item.isCollapsed = true;\r\n });\r\n this.collapsedItems = [];\r\n\r\n const items = this.findItemsByUrl(url, this.menu);\r\n items.forEach(item => {\r\n item.isActive = true;\r\n this.uncollapseItemParents(item, true);\r\n this.activatedItems.push(item);\r\n });\r\n }\r\n\r\n /**\r\n * [monkeyPatchMenu description]\r\n * @method monkeyPatchMenu\r\n * @param items [description]\r\n * @param parentId [description]\r\n */\r\n private monkeyPatchMenu(items: Items, parentId?: number): void {\r\n items.forEach((item: Item, index: number) => {\r\n item.id = parentId ? Number(parentId + '' + index) : index;\r\n if (parentId) {\r\n item.parentId = parentId;\r\n }\r\n if (!item.disableCollapse) {\r\n item.isCollapsed = true;\r\n }\r\n item.isActive = false;\r\n if (parentId || item.children) {\r\n this.itemsByIds[item.id] = item;\r\n }\r\n if (item.children) {\r\n this.monkeyPatchMenu(item.children, item.id);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * [setMenuTogglesListeners description]\r\n * @method setMenuTogglesListeners\r\n */\r\n private setMenuTogglesListeners(): void {\r\n this.toggleListeners = removeListeners(this.toggleListeners);\r\n this.ngZone.runOutsideAngular(() => {\r\n this.sidebarLeftToggleDirectives.forEach((menuToggle: SidebarLeftToggleDirective) => {\r\n this.toggleListeners.push(this.renderer2.listen(menuToggle.elementRef.nativeElement, 'click', (event) => {\r\n event.preventDefault();\r\n if (menuToggle.item.isCollapsed) {\r\n this.collapsedItems.forEach((item: Item) => {\r\n if (!item.disableCollapse) {\r\n item.isCollapsed = true;\r\n }\r\n });\r\n this.collapsedItems = [];\r\n this.uncollapseItemParents(menuToggle.item);\r\n } else {\r\n menuToggle.item.isCollapsed = !menuToggle.item.isCollapsed;\r\n }\r\n this.changeDetectorRef.detectChanges();\r\n }));\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * [checkMenuWithoutChildren description]\r\n * @method checkMenuWithoutChildren\r\n */\r\n private checkMenuWithoutChildren(): void {\r\n let menuHaveChildren;\r\n this.menu.forEach((item: Item) => {\r\n if (item.children) {\r\n return menuHaveChildren = true;\r\n }\r\n });\r\n if (!menuHaveChildren) {\r\n this.ngZone.runOutsideAngular(() => {\r\n setTimeout(() => {\r\n this.layoutStore.setSidebarLeftElementHeight(this.sidebarElement.nativeElement.offsetHeight);\r\n });\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * [setSidebarHeight description]\r\n * @method setSidebarHeight\r\n */\r\n private setSidebarHeight(): void {\r\n if (this.layout === 'fixed') {\r\n const height = this.windowInnerHeight - this.headerService.offsetHeight;\r\n if (height && height !== this.sidebarHeight) {\r\n this.sidebarHeight = height;\r\n this.sidebarOverflow = 'auto';\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n } else if (this.sidebarHeight) {\r\n this.sidebarOverflow = this.sidebarHeight = null;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n checkChildMenuItemPermission(menuItem): boolean {\r\n for (let i = 0; i < menuItem.length; i++) {\r\n let subMenuItem = menuItem[i];\r\n if (this.CurrentUser) {\r\n if (this.ViewPermission.filter(x => x.formName.toUpperCase() === subMenuItem.label.toUpperCase())) {\r\n this.ViewPermissions = this.ViewPermission.filter(x => x.formName.toUpperCase() === subMenuItem.label.toUpperCase())\r\n if(this.ViewPermissions.length === 0) {\r\n return true;\r\n }\r\n if(this.ViewPermissions.filter(xx => xx.viewpermission === 1).length>0) {\r\n return true;\r\n }else{\r\n return false;\r\n }\r\n \r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n showMenuItem(menuItem): boolean {\r\n this.auth.currentUser.subscribe(x => this.CurrentUser = x);\r\n // if (this.CurrentUser) {\r\n if (!menuItem.default) {\r\n if (!menuItem.isRoot) {\r\n // return this.CurrentUser.permission.includes(menuItem.module + '_URL_VISIBILITY');\r\n if (this.ViewPermission.filter(x => x.formName.toUpperCase() === menuItem.label.toUpperCase())) {\r\n this.ViewPermissions = this.ViewPermission.filter(x => x.formName.toUpperCase() === menuItem.label.toUpperCase())\r\n if(this.ViewPermissions.length === 0) {\r\n return true;\r\n }\r\n if(this.ViewPermissions.filter(xx => xx.viewpermission === 1).length>0) {\r\n return true;\r\n }else{\r\n return false;\r\n }\r\n \r\n }\r\n \r\n\r\n } else if (menuItem.children !== undefined && menuItem.children.length) {\r\n return this.checkChildMenuItemPermission(menuItem.children);\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n // }\r\n }\r\n\r\n checktoggle(item:any)\r\n {\r\n if( item.label === 'Overview')\r\n {\r\n if(localStorage.getItem(\"istoggle\") != null)\r\n {\r\n if(localStorage.getItem(\"istoggle\") === \"0\" || localStorage.getItem(\"istoggle\") === \"1\")\r\n {\r\n //localStorage.setItem(\"istoggle\", \"1\");\r\n document.getElementById(\"asidemenu\").click();\r\n }\r\n }\r\n else\r\n {\r\n //localStorage.setItem(\"istoggle\", \"1\");\r\n document.getElementById(\"asidemenu\").click();\r\n } \r\n }\r\n else\r\n {\r\n // if(localStorage.getItem(\"istoggle\") === \"1\")\r\n // {\r\n // //localStorage.setItem(\"istoggle\", \"0\");\r\n // document.getElementById(\"asidemenu\").click();\r\n // }\r\n }\r\n }\r\n}\r\n","import { Directive, Input, ElementRef } from '@angular/core';\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n selector: '[mkMenuToggle]'\r\n})\r\nexport class SidebarLeftToggleDirective {\r\n @Input('mkMenuToggle') item;\r\n\r\n /**\r\n * @method constructor\r\n * @param elementRef [description]\r\n */\r\n constructor(\r\n public elementRef: ElementRef\r\n ) {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { AnimationsModule } from '../../animations/animations.module';\r\n\r\nimport { SidebarLeftToggleDirective } from './sidebar-left.directive';\r\nimport { SidebarLeftComponent } from './sidebar-left.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule, AnimationsModule],\r\n exports: [SidebarLeftComponent],\r\n declarations: [SidebarLeftToggleDirective, SidebarLeftComponent]\r\n})\r\nexport class SidebarLeftModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SidebarRightComponent } from './sidebar-right.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [SidebarRightComponent],\r\n declarations: [SidebarRightComponent]\r\n})\r\nexport class SidebarRightModule {}\r\n","import { Injectable, ElementRef } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class SidebarRightService {\r\n public elementRef: ElementRef;\r\n\r\n /**\r\n * [scrollHeight description]\r\n * @method scrollHeight\r\n * @return [description]\r\n */\r\n get scrollHeight(): number {\r\n return this.elementRef ? this.elementRef.nativeElement.scrollHeight : null;\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n","import { Component, OnInit, Renderer2, ElementRef, NgZone, OnDestroy } from '@angular/core';\r\n\r\nimport { throttle, removeSubscriptions, removeListeners } from '../../helpers';\r\nimport { LayoutStore } from '../layout.store';\r\nimport { WrapperService } from './wrapper.service';\r\n\r\n@Component({\r\n selector: 'mk-layout-wrapper',\r\n templateUrl: './wrapper.component.html',\r\n styleUrls: ['./wrapper.component.css']\r\n})\r\nexport class WrapperComponent implements OnInit, OnDestroy {\r\n private skin: string;\r\n private listeners = [];\r\n private subscriptions = [];\r\n\r\n public classes: string;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer2: Renderer2,\r\n private layoutStore: LayoutStore,\r\n private wrapperService: WrapperService,\r\n private ngZone: NgZone\r\n ) {}\r\n\r\n /**\r\n * [ngOnInit description]\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n this.layoutStore.setWindowInnerHeight(window.innerHeight);\r\n this.layoutStore.setWindowInnerWidth(window.innerWidth);\r\n\r\n this.wrapperService.wrapperElementRef = this.elementRef;\r\n\r\n this.subscriptions.push(this.layoutStore.wrapperClasses.subscribe((value: string) => {\r\n this.classes = value ? value : null;\r\n }));\r\n\r\n this.ngZone.runOutsideAngular(() => {\r\n this.listeners.push(this.renderer2.listen('window', 'resize', throttle(() => {\r\n this.layoutStore.setWindowInnerHeight(window.innerHeight);\r\n this.layoutStore.setWindowInnerWidth(window.innerWidth);\r\n }, 250)));\r\n });\r\n\r\n this.subscriptions.push(this.layoutStore.layout.subscribe((value: string) => {\r\n value === 'fixed' ? this.renderer2.addClass(this.elementRef.nativeElement, 'fixed') :\r\n this.renderer2.removeClass(this.elementRef.nativeElement, 'fixed');\r\n value === 'boxed' ? this.renderer2.addClass(this.elementRef.nativeElement, 'layout-boxed') :\r\n this.renderer2.removeClass(this.elementRef.nativeElement, 'layout-boxed');\r\n }));\r\n\r\n this.subscriptions.push(this.layoutStore.skin.subscribe((value: string) => {\r\n if (value) {\r\n if (this.skin && this.skin !== value) {\r\n this.renderer2.removeClass(this.elementRef.nativeElement, `skin-${this.skin}`);\r\n }\r\n this.skin = value;\r\n this.renderer2.addClass(this.elementRef.nativeElement, `skin-${this.skin}`);\r\n }\r\n }));\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n this.subscriptions = removeSubscriptions(this.subscriptions);\r\n this.listeners = removeListeners(this.listeners);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { WrapperComponent } from './wrapper.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [WrapperComponent],\r\n declarations: [WrapperComponent]\r\n})\r\nexport class WrapperModule {}\r\n","import { Injectable, ElementRef } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class WrapperService {\r\n public wrapperElementRef: ElementRef;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Event as RouterEvent, NavigationEnd, PRIMARY_OUTLET, Router } from '@angular/router';\r\n\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n/*\r\n *\r\n */\r\nexport interface Path {\r\n data: Object;\r\n params: Object;\r\n url: string;\r\n}\r\n\r\n/*\r\n *\r\n */\r\nexport interface Paths extends Array {}\r\n\r\n\r\n/*\r\n *\r\n */\r\n@Injectable()\r\nexport class RoutingService {\r\n public onChange: BehaviorSubject = new BehaviorSubject(undefined);\r\n public events: BehaviorSubject = new BehaviorSubject(undefined);\r\n\r\n /**\r\n * @method constructor\r\n * @param router [description]\r\n */\r\n constructor(\r\n private router: Router\r\n ) {\r\n this.init();\r\n }\r\n\r\n /**\r\n * [createUrl description]\r\n * @method createUrl\r\n * @param route [description]\r\n * @return [description]\r\n */\r\n private static createUrl(route: ActivatedRouteSnapshot): string {\r\n const url = route.url.map(urlSegment => urlSegment.toString()).join('/');\r\n return url;\r\n }\r\n\r\n /**\r\n * [isChildrenSelfRoute description]\r\n * @method isChildrenSelfRoute\r\n * @param route [description]\r\n * @return [description]\r\n */\r\n private static isChildrenSelfRoute(route: ActivatedRouteSnapshot): boolean {\r\n route.routeConfig.children.forEach(child => {\r\n if (child.path === '' && (child.component || child.loadChildren)) {\r\n return true;\r\n }\r\n });\r\n\r\n return false;\r\n }\r\n\r\n /**\r\n * [createBreadcrumb description]\r\n * @method createBreadcrumb\r\n * @param route [description]\r\n * @param url [description]\r\n * @return [description]\r\n */\r\n private static createBreadcrumb(route: ActivatedRouteSnapshot, url: string): Path {\r\n let isUrl = true;\r\n\r\n if (route.children.length !== 0 && route.firstChild.routeConfig.path) {\r\n if (url !== '/' && !route.routeConfig.loadChildren && !route.routeConfig.component && !RoutingService.isChildrenSelfRoute(route)) {\r\n isUrl = false;\r\n }\r\n }\r\n\r\n return {\r\n data: route.data,\r\n params : route.params,\r\n url: isUrl ? url : null\r\n };\r\n }\r\n\r\n\r\n /**\r\n * [init description]\r\n * @method init\r\n */\r\n private init(): void {\r\n this.router.events.subscribe(routeEvent => {\r\n // https://github.com/angular/angular/issues/17473: event not fired anymore on load for routed component.\r\n this.events.next(routeEvent);\r\n if (routeEvent instanceof NavigationEnd) {\r\n let route = this.router.routerState.root.snapshot,\r\n tmpUrl = '',\r\n url = '',\r\n rootRoot = true;\r\n\r\n const paths: Paths = [];\r\n\r\n while (route.children.length) {\r\n route = route.firstChild;\r\n tmpUrl = `/${RoutingService.createUrl(route)}`;\r\n\r\n if (route.outlet !== PRIMARY_OUTLET || (!route.routeConfig.path && !rootRoot)) {\r\n continue;\r\n }\r\n\r\n rootRoot = false;\r\n\r\n if (route.params || route.data) {\r\n for (const key in route.params) {\r\n if (!key) { continue; }\r\n if (route.data['title']) {\r\n route.data['title'] = route.data['title'].replace(`:${key}`, route.params[key]);\r\n route.data['title'] = route.data['title'].replace(`:${key}`, route.params[key]);\r\n }\r\n if (route.data['breadcrumbs']) {\r\n route.data['breadcrumbs'] = route.data['breadcrumbs'].replace(`:${key}`, route.params[key]);\r\n }\r\n if (route.data['description']) {\r\n route.data['description'] = route.data['description'].replace(`:${key}`, route.params[key]);\r\n }\r\n }\r\n }\r\n\r\n if (tmpUrl === '/') {\r\n paths.push(RoutingService.createBreadcrumb(route, tmpUrl));\r\n } else {\r\n url += tmpUrl;\r\n paths.push(RoutingService.createBreadcrumb(route, url));\r\n }\r\n }\r\n\r\n this.onChange.next(paths);\r\n }\r\n });\r\n }\r\n}\r\n","","","","","
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ContentChildren,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n QueryList,\r\n Renderer2,\r\n SimpleChange,\r\n TemplateRef,\r\n ViewChild,\r\n ViewChildren\r\n} from '@angular/core';\r\n\r\nimport { TabToggleDirective } from './tabs.directive';\r\n\r\nimport { removeListeners, removeSubscriptions } from '../helpers';\r\n\r\n// @TODO Vertical tabs\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-tab-header',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabHeaderComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-tab-content',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabContentComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-tab',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabComponent implements OnInit {\r\n public index: number;\r\n public isActive = false;\r\n\r\n private contentTemplateRef: TemplateRef;\r\n\r\n @Input() public header: string;\r\n @Input() public isDisabled: boolean;\r\n @Input() public tabColor: string;\r\n\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n\r\n @ContentChild(TabHeaderComponent) public tabHeaderComponent: TabHeaderComponent;\r\n @ContentChild(TabContentComponent) public tabContentComponent: TabContentComponent;\r\n\r\n /**\r\n * @method ngOnInit\r\n */\r\n ngOnInit() {\r\n if (this.tabContentComponent) {\r\n this.contentTemplateRef = this.tabContentComponent.templateRef;\r\n } else {\r\n this.contentTemplateRef = this.templateRef;\r\n }\r\n }\r\n}\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-tabs-header',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabsHeaderComponent {\r\n @ViewChild('templateRef') public templateRef: TemplateRef;\r\n}\r\n\r\n/*\r\n *\r\n */\r\n@Component({\r\n selector: 'mk-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabsComponent implements AfterContentInit, AfterViewInit, OnChanges, OnDestroy {\r\n private activatedTabIndex: number;\r\n private listeners = [];\r\n private subscriptions = [];\r\n\r\n @Input() public set activeTabIndex(index: number) {\r\n this.activatedTabIndex = index;\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n @Input() public header: string;\r\n @Input() public headerStyleClass = 'header pull-left';\r\n @Input() public navStyleClass = 'nav nav-tabs';\r\n @Input() public contentStyleClass = 'tab-content';\r\n @Input() public styleClass = 'nav-tabs-custom';\r\n @Input() public tabsColor: string;\r\n\r\n @Output() public onClose = new EventEmitter();\r\n @Output() public onOpen = new EventEmitter();\r\n\r\n @ContentChild(TabsHeaderComponent) public tabsHeaderComponent: TabsHeaderComponent;\r\n\r\n @ContentChildren(TabComponent) public tabs: QueryList;\r\n\r\n @ViewChildren(TabToggleDirective) public tabToggleDirectives: QueryList;\r\n\r\n /**\r\n * @method constructor\r\n * @param changeDetectorRef [description]\r\n * @param ngZone [description]\r\n * @param renderer2 [description]\r\n */\r\n constructor(\r\n private changeDetectorRef: ChangeDetectorRef,\r\n private ngZone: NgZone,\r\n private renderer2: Renderer2\r\n ) {}\r\n\r\n /**\r\n * @method ngAfterViewInit\r\n */\r\n ngAfterContentInit() {\r\n // Set tab index on load.\r\n this.setTabIndex();\r\n\r\n // Update tab index if tabs is updated.\r\n this.subscriptions.push(this.tabs.changes.subscribe(() => {\r\n this.setTabIndex();\r\n }));\r\n\r\n // Open tab on load.\r\n this.openTabIndex();\r\n }\r\n\r\n /**\r\n * @method ngAfterViewInit\r\n */\r\n ngAfterViewInit() {\r\n // Set tab toggles on load.\r\n this.setTabsToggle();\r\n\r\n // Update tab toggles if tabs is updated.\r\n this.subscriptions.push(this.tabToggleDirectives.changes.subscribe(() => {\r\n this.setTabsToggle();\r\n }));\r\n }\r\n\r\n /**\r\n * @method ngOnChanges\r\n * @param changes [description]\r\n */\r\n ngOnChanges(changes: {[propKey: string]: SimpleChange}) {\r\n if (changes.activeTabIndex) {\r\n this.openTabIndex();\r\n }\r\n }\r\n\r\n /**\r\n * @method ngOnDestroy\r\n */\r\n ngOnDestroy() {\r\n removeListeners(this.listeners);\r\n removeSubscriptions(this.subscriptions);\r\n }\r\n\r\n /**\r\n * [toggleTab description]\r\n * @method toggleTab\r\n */\r\n public openTabIndex(): void {\r\n if (this.tabs) {\r\n this.tabs.forEach((tab: TabComponent) => {\r\n if (this.activatedTabIndex === tab.index || (this.activatedTabIndex === undefined && tab.index === 0)) {\r\n tab.isActive = true;\r\n this.onOpen.emit({index: tab.index});\r\n this.changeDetectorRef.detectChanges();\r\n } else if (tab.isActive) {\r\n tab.isActive = false;\r\n this.onClose.emit({index: tab.index});\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * [openTab description]\r\n * @method openTab\r\n * @param event [description]\r\n * @param tabToOpen [description]\r\n */\r\n public openTab(event: Event, tabToOpen: TabComponent): void {\r\n event.preventDefault();\r\n tabToOpen.isActive = true;\r\n this.onOpen.emit({event, index: tabToOpen.index});\r\n this.tabs.forEach((tab: TabComponent) => {\r\n if (tab.isActive && tabToOpen !== tab) {\r\n tab.isActive = false;\r\n this.onClose.emit({event, index: tab.index});\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * [setTabIndex description]\r\n * @method setTabIndex\r\n */\r\n private setTabIndex(): void {\r\n this.tabs.forEach((tab: TabComponent, index: number) => {\r\n tab.index = index;\r\n });\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n /**\r\n * [setTabsToggle description]\r\n * @method setTabsToggle\r\n */\r\n private setTabsToggle(): void {\r\n this.listeners = removeListeners(this.listeners);\r\n this.ngZone.runOutsideAngular(() => {\r\n this.tabToggleDirectives.forEach((tabToggle: TabToggleDirective) => {\r\n this.listeners.push(this.renderer2.listen(tabToggle.elementRef.nativeElement, 'click', (event) => {\r\n this.openTab(event, tabToggle.tabComponent);\r\n this.changeDetectorRef.detectChanges();\r\n }));\r\n });\r\n });\r\n }\r\n}\r\n","import { Directive, Input, ElementRef } from '@angular/core';\r\n\r\n/*\r\n *\r\n */\r\n@Directive({\r\n selector: '[mkTabToggle]'\r\n})\r\nexport class TabToggleDirective {\r\n @Input('mkTabToggle') tabComponent;\r\n\r\n /**\r\n * @method constructor\r\n * @param elementRef [description]\r\n */\r\n constructor(\r\n public elementRef: ElementRef\r\n ) {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ColorModule } from '../color/color.module';\r\n\r\nimport { TabToggleDirective } from './tabs.directive';\r\nimport { TabsComponent, TabsHeaderComponent, TabComponent, TabHeaderComponent, TabContentComponent } from './tabs.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, ColorModule],\r\n exports: [TabsComponent, TabsHeaderComponent, TabComponent, TabHeaderComponent, TabContentComponent],\r\n declarations: [TabToggleDirective, TabsComponent, TabsHeaderComponent, TabComponent, TabHeaderComponent, TabContentComponent]\r\n})\r\nexport class TabsModule {}\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\n\r\nexport class DepartmentService {\r\n constructor(private http: HttpClient, private authService: AuthService) {}\r\n\r\n getDepartmentList(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + \"/Admin/GetAllDepartments\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n addDeparetment(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/CreateDepartment\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateDeparment(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/UpdateDepartmentStatus\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n\r\n getDepartmentDetails(depId,CmpCode): Observable {\r\n \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetDepartmentById?Id=\" + depId+`&CmpCode=`+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n deleteDepartment(depId): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteDepartment?Id=\"+depId;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class DesignationService {\r\n constructor(private http: HttpClient, private authService: AuthService) { }\r\n\r\n getDesignationList(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + \"/Admin/GetAllDesignations\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n addDesignation(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + \"/Admin/CreateDesignation\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateDesignation(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n\r\n const URL = environment.apiUrl + \"/Admin/UpdateDesignation\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getDesignationDetails(desId,Cmpcode): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + \"/Admin/GetDesignationById?Id=\" + desId+`&Cmpcode=`+Cmpcode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n\r\n\r\n deleteDesignation(desId): Observable{ \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n\r\n const URL = environment.apiUrl + \"/Admin/DeleteDesignation?Id=\"+desId;\r\n return this.http\r\n .post(URL, {headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n}\r\n","\n \n\n \n ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ToasterService } from './toaster.service';\r\nimport { Toast } from './toast.interface';\r\n\r\n@Component({\r\n selector: 'app-toaster-container',\r\n template: `\r\n \r\n\r\n \r\n `,\r\n styles: []\r\n})\r\nexport class ToasterContainerComponent implements OnInit {\r\n\r\n toasts: Toast[] = [];\r\n\r\n constructor(private toaster: ToasterService) {}\r\n\r\n ngOnInit() {\r\n this.toaster.toast$\r\n .subscribe(toast => {\r\n this.toasts = [toast, ...this.toasts];\r\n setTimeout(() => this.toasts.pop(), toast.delay || 3000);\r\n });\r\n }\r\n\r\n remove(index: number) {\r\n this.toasts = this.toasts.filter((v, i) => i !== index);\r\n //this.toasts.splice(index, 1);\r\n }\r\n}","\n
    \n

    {{toast.title}}

    \n

    {{toast.body}}

    \n ×\n
    \n ","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { Toast } from './toast.interface';\r\n\r\n@Component({\r\n selector: 'app-toaster',\r\n template: `\r\n
    \r\n

    {{toast.title}}

    \r\n

    {{toast.body}}

    \r\n ×\r\n
    \r\n `,\r\n styles: [`\r\n .toast {\r\n position: fixed;\r\n z-index:99999;\r\n right: 0;\r\n width: 300px;\r\n height: 80px;\r\n padding: .75rem 1.25rem;\r\n margin-top: 1rem;\r\n border: 1px solid transparent;\r\n border-radius: .25rem;\r\n animation: move 0.5s both;\r\n }\r\n\r\n .toast-success {\r\n color: #155724;\r\n background-color: #d4edda;\r\n border-color: #c3e6cb;\r\n }\r\n\r\n .toast-error {\r\n color: #721c24;\r\n background-color: #f8d7da;\r\n border-color: #f5c6cb;\r\n }\r\n\r\n .toast-warning {\r\n color: #856404;\r\n background-color: #fff3cd;\r\n border-color: #ffeeba;\r\n }\r\n\r\n .close {\r\n position: absolute;\r\n top: 7px;\r\n right: 10px;\r\n font-size: 1.5em;\r\n cursor: pointer;\r\n }\r\n\r\n .toast-heading {\r\n margin-top: 10px;\r\n }\r\n\r\n @keyframes move {\r\n from {\r\n transform: translateY(100%);\r\n }\r\n to {\r\n transform: translateY(0);\r\n }\r\n `]\r\n})\r\nexport class ToasterComponent {\r\n @Input() toast: Toast;\r\n @Input() i: number;\r\n @Output() remove = new EventEmitter();\r\n}","import { Injectable } from '@angular/core';\r\nimport { Toast } from './toast.interface';\r\nimport { ToastType } from './toast.type';\r\nimport { Observable, BehaviorSubject } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToasterService {\r\n subject: BehaviorSubject;\r\n toast$: Observable;\r\n\r\n constructor() {\r\n this.subject = new BehaviorSubject(null);\r\n this.toast$ = this.subject.asObservable()\r\n .pipe(filter(toast => toast !== null));\r\n }\r\n\r\n show(type: ToastType, title?: string, body?: string, delay?: number) {\r\n \r\n this.subject.next({ type, title, body, delay });\r\n }\r\n}","import { Injectable, PipeTransform } from \"@angular/core\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { Observable, BehaviorSubject, Subject, of } from \"rxjs\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class JobbandService {\r\n constructor(private http: HttpClient, private authService: AuthService) {}\r\n\r\n getJobBandList(parms): Observable {\r\n debugger;\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllJobBands\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveJobBand(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + \"/Admin/SaveJobBand\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getJobBand(depId): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n const URL = environment.apiUrl + \"/Admin/GetJobBandById?Id=\" + depId;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n deleteJobBand(bandId): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteJobBand?Id=\"+bandId;\r\n return this.http\r\n .post(URL, {headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Leave Approvals

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n   {{financialYearText}}  \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{Approval.submitedBy}}\r\n \r\n\r\n \r\n {{ Approval.employeeName }} {{ Approval.empCode }}\r\n \r\n \r\n {{ Approval.employeeName }} {{ Approval.empCode }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ dateformat(Approval.createdDate) }}\r\n \r\n \r\n\r\n\r\n \r\n \r\n

    {{Approval.leaveTypeName}}

    \r\n
    \r\n
    \r\n \r\n \r\n

    Approver

    \r\n

    Informer

    \r\n
    \r\n
    \r\n\r\n \r\n \r\n {{Approval.leaveStartDate | date}} - {{Approval.leaveEndDate | date}}\r\n \r\n \r\n \r\n \r\n {{ Approval.totalDays }} {{ Approval.dayHoursTaken }}\r\n \r\n \r\n\r\n \r\n \r\n {{ dateformat(request.updatedDate)\r\n }}\r\n  - \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • Total\r\n : {{myRequestsListLength}}
    • \r\n
    • Pending : {{pendingReqLength}}
    • \r\n
    • Approve : {{approvedReqLength}}
    • \r\n
    • Reject\r\n : {{rejectReqLength}}
    • \r\n
    • Cancelled : {{mycancelledLeaveslength}}\r\n
    • \r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{Approval.submitedBy}}\r\n \r\n \r\n {{ Approval.employeeName }} {{ Approval.empCode }}\r\n \r\n\r\n \r\n {{ Approval.employeeName }} {{ Approval.empCode }}\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n {{ dateformat(Approval.createdDate) }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ Approval.totalDays }} {{ Approval.dayHoursTaken }}\r\n \r\n \r\n\r\n \r\n \r\n {{ dateformat(request.updatedDate)\r\n }}\r\n  - \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{currentRequestType}} Request Details

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n  \r\n Pending    \r\n \r\n

    \r\n

    \r\n  \r\n Approved    \r\n \r\n

    \r\n

    \r\n  \r\n Rejected    \r\n \r\n

    \r\n

    \r\n  \r\n Cancelled    \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{ leaveDetails.empCode }} - {{\r\n leaveDetails.employeeName }}\r\n
    \r\n\r\n
    \r\n \r\n {{ leaveDetails.leaveTypeName }} ({{ leaveDetails.type\r\n }})\r\n
    \r\n\r\n
    \r\n \r\n {{ leaveDetails.leaveStartDate | date }} - {{\r\n leaveDetails.leaveEndDate | date }}\r\n
    \r\n\r\n
    \r\n \r\n {{ leaveDetails.totalDays }} {{\r\n leaveDetails.dayHoursTaken }}\r\n
    \r\n\r\n
    \r\n \r\n {{ leaveDetails.leaveReason }}\r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n\r\n \r\n
    \r\n
    \r\n \r\n View / Download\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n  \r\n Pending  \r\n \r\n

    \r\n

    \r\n  \r\n Approved  \r\n \r\n

    \r\n

    \r\n  \r\n Rejected  \r\n \r\n

    \r\n

    \r\n  \r\n Cancelled  \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{ compOffDetails.empCode }} - {{\r\n compOffDetails.employeeName }}\r\n
    \r\n
    \r\n \r\n {{ compOffDetails.workedDate | date }}\r\n
    \r\n
    \r\n \r\n Full Day\r\n Half Day\r\n Quater Day\r\n {{compOffDetails.duration}} {{ compOffDetails.unitText}}\r\n \r\n
    \r\n
    \r\n \r\n {{ compOffDetails.projectname }}\r\n
    \r\n
    \r\n \r\n {{ compOffDetails.toBeCredited }} {{\r\n compOffDetails.unitText }}\r\n
    \r\n
    \r\n \r\n {{ compOffDetails.expiryDate | date }}\r\n
    \r\n
    \r\n \r\n {{ compOffDetails.description }}\r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Approval Timeline

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \"User\r\n \r\n \r\n {{ leaveDetails.empCode }}\r\n - \r\n {{ leaveDetails.employeeName }}\r\n \r\n\r\n 's request has been sent for approval\r\n {{\r\n leaveDetails.createdDate | date:'medium' }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • \r\n
      \r\n \r\n\r\n {{leaveApproval.status}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{leaveApproval.status}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n
      \r\n\r\n \r\n \r\n\r\n \r\n   Leave approved based on approval settings.\r\n \r\n\r\n
      \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \"User\r\n \r\n \r\n
      \r\n \r\n {{\r\n leaveApproval.approverEmpCode }}\r\n - \r\n {{ leaveApproval.approverName }}\r\n \r\n
      \r\n
      \r\n Approver\r\n
      \r\n
      \r\n Informer\r\n\r\n\r\n
      \r\n\r\n
      \r\n \r\n Email\r\n - \r\n {{ leaveApproval.approverEmail }}\r\n \r\n
      \r\n\r\n
      \r\n \r\n Approver\r\n authority\r\n - \r\n {{leaveApproval.approverGroupName}}\r\n \r\n \r\n
      \r\n\r\n
      \r\n \r\n Project\r\n - \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
      \r\n\r\n\r\n
      \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n \r\n
      \r\n
      \r\n This field is mandatory\r\n
      \r\n
      \r\n \r\n \r\n \r\n\r\n
      \r\n
      \r\n
      \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n This field is mandatory\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n   {{ leaveApproval.comment\r\n }}\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n   {{ leaveDetails.postApprovalComment\r\n }}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
      \r\n
    • \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n Name - {{name}}
      \r\n\r\n
      Approver authority - Admin
      \r\n
      \r\n\r\n
      Approver
      \r\n
      \r\n\r\n
    • \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \"User\r\n \r\n \r\n {{ compOffDetails.empCode }}\r\n - \r\n {{ compOffDetails.employeeName }}\r\n \r\n 's request has been sent for approval\r\n {{\r\n compOffDetails.createdDate | date:'medium' }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
      \r\n\r\n
    • \r\n
      \r\n \r\n\r\n {{compoffApproval.status}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{compoffApproval.status}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
      \r\n \r\n\r\n \r\n   Compensatory Off approved based on approval settings.\r\n \r\n\r\n
      \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \"User\r\n \r\n \r\n
      \r\n \r\n {{\r\n compoffApproval.approverEmpCode }}\r\n - \r\n {{ compoffApproval.approverName }}\r\n \r\n
      \r\n\r\n
      \r\n Approver\r\n
      \r\n
      \r\n Informer\r\n
      \r\n
      \r\n\r\n \r\n Email\r\n - \r\n {{ compoffApproval.approverEmail }}\r\n \r\n
      \r\n
      \r\n \r\n Approver authority\r\n - \r\n {{compoffApproval.approverGroupName}}\r\n \r\n \r\n
      \r\n\r\n
      \r\n \r\n Project\r\n - \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n
      \r\n
      \r\n
      \r\n \r\n \r\n \r\n
      \r\n
      \r\n \r\n
      \r\n
      \r\n This field is mandatory\r\n
      \r\n
      \r\n \r\n \r\n \r\n\r\n
      \r\n
      \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n This field is mandatory\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n   {{ compoffApproval.comment\r\n }}\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
      \r\n
    • \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n Name - {{name}}
      \r\n\r\n
      Approver authority - Admin
      \r\n
      \r\n\r\n
      Approver
      \r\n
      \r\n\r\n
    • \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Approval Timeline

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n

    Employee

    \r\n
    \r\n

    Date of request

    \r\n
    \r\n

    Request type

    \r\n
    \r\n {{\r\n request.employeeName}}\r\n  - \r\n {{ request.empCode }}\r\n {{ request.createdDate | date }}{{ request.requestType }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{ showMessage }}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Project List
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.projectname}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.approvaltype}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Project

    \r\n \r\n
    \r\n
    \r\n\r\n
      \r\n\r\n\r\n
    • \r\n\r\n\r\n
      \r\n
      \r\n {{admin.projectname}}\r\n
      \r\n
      \r\n\r\n\r\n
    • \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import {\r\n Component, OnInit, QueryList,\r\n ViewChildren,\r\n Directive,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ElementRef, ViewChild\r\n} from '@angular/core';\r\nimport { LeaveService } from \"../leave.service\";\r\nimport { FormGroup, FormBuilder, Validators,FormControl } from \"@angular/forms\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap/datepicker\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { environment } from \"src/app/environment\";\r\nimport { Router,ActivatedRoute } from '@angular/router';\r\nimport { GridComponent } from '@syncfusion/ej2-angular-grids';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToasterService } from '../../expense/toaster/toaster.service';\r\nimport { ExpenseHttpService } from 'src/app/services/expense/expense-http.service';\r\nimport { TextSearchColorSettings } from '@syncfusion/ej2-angular-pdfviewer';\r\nimport { isBuffer } from 'lodash';\r\nimport { ElementSchemaRegistry } from '@angular/compiler';\r\n\r\n\r\ninterface RequestsApprovalsSorting {\r\n requestId: any;\r\n empCode: any;\r\n employeeName: any;\r\n status: any;\r\n createdDate: any;\r\n requestType: string;\r\n}\r\n\r\ninterface RequestsApprovals {\r\n isSelected: boolean;\r\n requestId: any;\r\n empCode: any;\r\n employeeName: any;\r\n statusId: any;\r\n status: any;\r\n createdDate: any;\r\n requestType: string;\r\n isCurrentWorkflow: boolean;\r\n}\r\n\r\ninterface LeavesDetails {\r\n leaveId: any;\r\n employeeId: any;\r\n empCode: string;\r\n empName: string;\r\n leaveTypeId: any;\r\n leaveTypeName: string;\r\n type: string;\r\n dayHoursTaken: string;\r\n leaveStartDate: any;\r\n leaveEndDate: any;\r\n totalDays: any;\r\n leaveReason: string;\r\n statusId: any;\r\n status: string;\r\n financialYearId: any;\r\n financialYear: string;\r\n createdBy: any;\r\n createdDate: any;\r\n updatedBy: any;\r\n updatedDate: any;\r\n filePaths: any;\r\n}\r\ninterface LeavesApprovalDetails {\r\n leaveApprovalId: any;\r\n leaveId: any;\r\n employeeId: any;\r\n empCode: string;\r\n empName: string;\r\n statusId: any;\r\n status: string;\r\n comment: string;\r\n approvedBy: any;\r\n approvedDate: any;\r\n approverGroup: any;\r\n isCurrentWorkflow: boolean;\r\n approverEmpId: any;\r\n approverEmpCode: string;\r\n approverEmail: string;\r\n approverName: string;\r\n approverGroupName:string\r\n type:number\r\n}\r\ninterface CompOffApprovalDetails {\r\n approvalId: any;\r\n compOffId: any;\r\n employeeId: any;\r\n empCode: string;\r\n empName: string;\r\n statusId: any;\r\n status: string;\r\n comment: string;\r\n approvedBy: any;\r\n approvedDate: any;\r\n approverGroup: any;\r\n isCurrentWorkflow: boolean;\r\n approverEmpId: any;\r\n approverEmpCode: string;\r\n approverEmail: string;\r\n approverName: string;\r\n approverGroupName:string\r\n type:number\r\n\r\n\r\n}\r\n\r\nexport type SortColumn = keyof RequestsApprovalsSorting | \"\";\r\nexport type SortDirection = \"asc\" | \"desc\" | \"\";\r\nconst rotate: { [key: string]: SortDirection } = {\r\n asc: \"desc\",\r\n desc: \"\",\r\n \"\": \"asc\",\r\n};\r\nconst compare = (v1: string, v2: string) => (v1 < v2 ? -1 : v1 > v2 ? 1 : 0);\r\nexport interface SortEvent {\r\n column: SortColumn;\r\n direction: SortDirection;\r\n}\r\n\r\n@Directive({\r\n // tslint:disable-next-line: directive-selector\r\n selector: \"th[sortable]\",\r\n // tslint:disable-next-line: use-host-property-decorator\r\n host: {\r\n \"[class.asc]\": 'direction === \"asc\"',\r\n \"[class.desc]\": 'direction === \"desc\"',\r\n \"(click)\": \"rotate()\",\r\n },\r\n})\r\n\r\n// tslint:disable-next-line: directive-class-suffix\r\nexport class NgbdSortableHeader { \r\n @Input() sortable: SortColumn = \"\";\r\n @Input() direction: SortDirection = \"\";\r\n @Output() sort = new EventEmitter();\r\n\r\n rotate() {\r\n this.direction = rotate[this.direction];\r\n this.sort.emit({ column: this.sortable, direction: this.direction });\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-approval',\r\n templateUrl: './approval.component.html',\r\n styleUrls: ['./approval.component.css']\r\n})\r\nexport class ApprovalComponent implements OnInit {\r\n CurrentUser: any;\r\n loggedUserId: any;\r\n isAdmin: Boolean;\r\n userLoader: Boolean = false;\r\n canPostApproveRequest: Boolean;\r\n\r\n myApprovalsList: RequestsApprovals[] = [];\r\n chkAllApprovals: Boolean = false;\r\n myApprovalsFilterRequestType: any = -1;\r\n myApprovalsFilterStatusId: any = -1;\r\n myApprovalsListLength: any;\r\n myApprovalsPage = 1;\r\n myApprovalsPageSize = 10;\r\n\r\n myRequestsList: RequestsApprovals[] = [];\r\n chkAllRequests: Boolean = false;\r\n myRequestsFilterRequestType: any = -1;\r\n myRequestsFilterStatusId: any = -1;\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n\r\n // For User Dropdownlist\r\n ddlEmployeeUserId: any;\r\n EmployeeList = [];\r\n ActiveEmployee = [];\r\n\r\n parms: any;\r\n\r\n // For Request Details & Approvals\r\n currentRequestType: string;\r\n leaveDetails: LeavesDetails;\r\n leaveApprovalList: LeavesApprovalDetails[] = [];\r\n compOffDetails: any;\r\n compOffApprovalList: CompOffApprovalDetails[] = [];\r\n\r\n leaveFull: any[];\r\n compOff: any[];\r\n\r\n\r\n requestApprovalComment: string;\r\n requestBulkApprovalComment: string;\r\n checkedLeaveRequestIds: number[] = [];\r\n checkedCompOffRequestIds: number[] = [];\r\n\r\n public showSuccess: Boolean;\r\n public showMessage: string;\r\n\r\n formImport: FormGroup;\r\n importType: any;\r\n fileToUpload: File = null;\r\n chckSendForApproval: Boolean = true;\r\n\r\n generalSettingsData: any;\r\n isCancelReasonMandatory: Boolean = false;\r\n isLeaveReasonTextboxEmpty: Boolean = false;\r\n\r\n apiURL: any;\r\n Queryuserid:any;\r\n CmpCode:any;\r\n\r\n @ViewChild('labelImport')labelImport: ElementRef;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n userId:any\r\n financialYearText: any;\r\n nextFinancialYearId: any;\r\n currentFinancialYearId: any;\r\n prevFinancialYearId: any;\r\n value = 0;\r\n constructor(private _leaveSer: LeaveService,\r\n private _fb: FormBuilder, private datePipe: DatePipe,\r\n private _authSer: AuthService,private http:ExpenseHttpService,\r\n private activatedRoute: ActivatedRoute, private toasterService: ToasterService,\r\n private _commonSer: CommonService) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.Queryuserid = this.activatedRoute.snapshot.params.userId;\r\n this.userId=this._authSer.getUserId()\r\n }\r\n roleid:any\r\n name:any\r\n DateFormat: any;\r\n ngOnInit() {//Angular Lifecycle hook\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.CurrentUser = res;\r\n this.loggedUserId = res.userId;\r\n this.isAdmin = res.isAdmin;\r\n this.canPostApproveRequest = this.CurrentUser.permission.includes(Permission.PostApprovalRequest);\r\n this.roleid=this._authSer.getRoleId()\r\n this.name=this._authSer.getUserFullName()\r\n\r\n // Call after getting current userId\r\n this.getEmployeesListForSelect();\r\n this.getCurrentFinancialYear()\r\n this.bindRequestsList();\r\n this.getGeneralSettingsData();\r\n });\r\n\r\n this.apiURL = environment.siteUrl;\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n this.DateFormat= this._authSer.getdateFormat();\r\n }\r\n\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {// Created By S Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n dateformat(datas:string){// Created By K Global Date Format\r\n return this._authSer.Dateformat(datas);\r\n }\r\n\r\n getCurrentFinancialYear() {// Created By S Get financial year details\r\n debugger\r\n this._leaveSer.getCurrentFinancialYear(this.CmpCode).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n });\r\n }\r\n\r\n getFinancialYearDetailsback(evnt, financialYearId) {// Created By S Get privious financial years details \r\n debugger\r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => { \r\n this._leaveSer.getFinancialYearDetails(res.data.table1[0].prevId, cmp).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title; \r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"none\"\r\n // elementTypeList.style.pointerEvents = \"none\"\r\n // elementHoliday.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"auto\"\r\n // elementTypeList.style.pointerEvents = \"auto\"\r\n // elementHoliday.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n \r\n \r\n this.bindRequestsList();\r\n \r\n \r\n });\r\n });\r\n }\r\n\r\n getFinancialYearDetailsForwrd(evnt, financialYearId) {// Created By S Get next financial year details\r\n debugger\r\n \r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n // elementAddLeave.style.pointerEvents = \"none\"\r\n // elementTypeList.style.pointerEvents = \"none\"\r\n // elementHoliday.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n // elementAddLeave.style.pointerEvents = \"auto\"\r\n // elementTypeList.style.pointerEvents = \"auto\"\r\n // elementHoliday.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n \r\n this.bindRequestsList();\r\n \r\n });\r\n }\r\n bindRequestsList() {// Created By S Get Data\r\n this.getMyRequestsList();\r\n this.getMyApprovalsList();\r\n }\r\n total:any=[]\r\n pending:any=[]\r\n pendingLength:any=0\r\n rejectLength:any=0\r\n CancelledLength: any = 0\r\n approvedLength:any=0\r\n rejected:any=[]\r\n approved:any=[]\r\n totalApprovalList:any=[]\r\n\r\n getMyApprovalsList() {// Created By S Get My approval list\r\n let loggedUserId = this.loggedUserId;\r\n let ddlUserId;\r\n // if(this.Queryuserid!=undefined){\r\n // ddlUserId = this.Queryuserid\r\n // }\r\n // else{\r\n ddlUserId = this.ddlEmployeeUserId;\r\n // }\r\n \r\n let _filterStatusId = this.myApprovalsFilterStatusId;\r\n let _requestType = this.myApprovalsFilterRequestType;\r\n\r\n this.parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n UserId: loggedUserId,\r\n statusType: _filterStatusId,\r\n FinancialYearId: this.currentFinancialYearId,\r\n requestType: _requestType,\r\n searchedUserId: ddlUserId,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getAllMyLeavesCompOffApprovals(this.parms).subscribe((res) => {\r\n this.chkAllApprovals = false;\r\n this.userLoader = false;\r\n this.myApprovalsList = res[\"data\"].table;\r\n if(this.Queryuserid!=undefined){\r\n // this.Queryuserid\r\n this.myApprovalsList = res[\"data\"].table.filter((x) => x.requestId == this.Queryuserid);\r\n }\r\n else{\r\n // ddlUserId = this.ddlEmployeeUserId;\r\n this.myApprovalsList = res[\"data\"].table;\r\n }\r\n this.totalApprovalList=this.myApprovalsList\r\n console.log(this.myApprovalsList,'apporvallist')\r\n //
    \r\n // \r\n //
    \r\n //
    \r\n // \r\n //
    \r\n //
    \r\n // \r\n //
    \r\n //
    \r\n // \r\n //
    \r\n \r\n this.total=this.myApprovalsList.length\r\n this.pending=this.myApprovalsList.filter(x=>x.status==\"Pending\")\r\n this.rejected=this.myApprovalsList.filter(x=>x.status==\"Rejected\")\r\n this.approved=this.myApprovalsList.filter(x=>x.status==\"Approved\")\r\n this.CancelledLength=this.myApprovalsList.filter(x=>x.status==\"Cancelled\")\r\n this.pendingLength=this.pending.length\r\n this.CancelledLength = this.CancelledLength.length\r\n this.rejectLength=this.rejected.length\r\n this.approvedLength=this.approved.length\r\n this.myApprovalsListLength = this.myApprovalsList.length;\r\n },\r\n error => {\r\n this.userLoader = false;\r\n this.myRequestsList = [];\r\n console.log(error);\r\n });\r\n }\r\nactive:any=1\r\n getFilterVaLue(val){// Created By S Filter Lists by legends for approvals\r\n debugger\r\n if(val===1)\r\n {\r\n this.active=1\r\n this.myApprovalsList=this.totalApprovalList\r\n }\r\n else if(val===2)\r\n {\r\n this.active=2\r\n\r\n this.pending=this.totalApprovalList.filter(x=>x.status==\"Pending\")\r\n this.myApprovalsList=[]\r\n this.myApprovalsList=this.pending\r\n }\r\n else if(val===3)\r\n {\r\n this.active=3\r\n\r\n this.myApprovalsList=[]\r\n this.myApprovalsList = this.totalApprovalList.filter(x=>x.status==\"Approved\")\r\n\r\n }\r\n else if(val===4)\r\n {\r\n this.active=4\r\n\r\n this.myApprovalsList=[]\r\n this.myApprovalsList=this.totalApprovalList.filter(x=>x.status==\"Rejected\")\r\n\r\n }\r\n else if(val===5)\r\n {\r\n this.active=5\r\n\r\n this.myApprovalsList=[]\r\n this.myApprovalsList=this.totalApprovalList.filter(x=>x.status==\"Cancelled\")\r\n\r\n }\r\n else{\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n getFilterVaLueReq(val)// Created By S Filter Lists by legends for My Requests\r\n {\r\n if(val===1)\r\n {\r\n this.active=1\r\n this.myRequestsList=this.totalmyRequestsList\r\n }\r\n else if(val===2)\r\n {\r\n this.active=2\r\n this.myRequestsList=[]\r\n this.myRequestsList=this.totalmyRequestsList.filter(x=>x.status==\"Pending\")\r\n }\r\n else if(val===3)\r\n {\r\n this.active=3\r\n this.myRequestsList=[]\r\n this.myRequestsList= this.totalmyRequestsList.filter(x=>x.status==\"Approved\")\r\n\r\n }\r\n else if(val===4)\r\n {\r\n this.active=4\r\n this.myRequestsList=[]\r\n this.myRequestsList=this.totalmyRequestsList.filter(x=>x.status==\"Rejected\")\r\n\r\n }\r\n else if(val===5)\r\n {\r\n this.active=5\r\n this.myRequestsList=[]\r\n this.myRequestsList=this.totalmyRequestsList.filter(x=>x.status==\"Cancelled\")\r\n\r\n }\r\n else{\r\n\r\n }\r\n }\r\n\r\n pendingReqLength:any=0\r\n rejectReqLength:any=0\r\n mycancelledLeaves:any\r\n mycancelledLeaveslength:any = 0\r\n approvedReqLength:any=0\r\n totalmyRequestsList:any=[]\r\n getMyRequestsList() {// Created By S Get My Requests\r\n let loggedUserId = this.loggedUserId;\r\n let _filterStatusId = this.myRequestsFilterStatusId;\r\n let _requestType = this.myRequestsFilterRequestType;\r\n\r\n this.parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n UserId: loggedUserId,\r\n statusType: _filterStatusId,\r\n requestType: _requestType,\r\n FinancialYearId: this.currentFinancialYearId,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getAllMyLeavesCompOffRequests(this.parms).subscribe((res) => {\r\n this.chkAllRequests = false;\r\n this.userLoader = false;\r\n this.myRequestsList = res[\"data\"].table;\r\n this.totalmyRequestsList=this.myRequestsList\r\n console.log(this.myRequestsList,'myrequestlist')\r\n this.myRequestsListLength = this.myRequestsList.length;\r\n\r\n this.pending=this.myRequestsList.filter(x=>x.status==\"Pending\")\r\n this.pendingReqLength=this.pending.length\r\n\r\n this.rejected=this.myRequestsList.filter(x=>x.status==\"Rejected\")\r\n this.rejectReqLength=this.rejected.length\r\n\r\n this.approved=this.myRequestsList.filter(x=>x.status==\"Approved\")\r\n this.approvedReqLength=this.approved.length\r\n\r\n this.mycancelledLeaves=this.myRequestsList.filter(x=>x.status==\"Cancelled\")\r\n this.mycancelledLeaveslength=this.mycancelledLeaves.length\r\n \r\n },\r\n error => {\r\n this.userLoader = false;\r\n this.myRequestsList = [];\r\n console.log(error);\r\n });\r\n }\r\n\r\n // Filters\r\n filterRequestTypeChange(_filterRequestType, _type) {// Created By S Update Request type\r\n if (_type === 1) {\r\n this.myApprovalsFilterRequestType = _filterRequestType;\r\n this.getMyApprovalsList();\r\n } else if (_type === 2) {\r\n this.myRequestsFilterRequestType = _filterRequestType;\r\n this.getMyRequestsList();\r\n }\r\n }\r\n filterStatusChange(_filterStatusId, _type) {// Created By S Update Status Type\r\n if (_type === 1) {\r\n this.myApprovalsFilterStatusId = _filterStatusId;\r\n this.getMyApprovalsList();\r\n } else if (_type === 2) {\r\n this.myRequestsFilterStatusId = _filterStatusId;\r\n this.getMyRequestsList();\r\n }\r\n }\r\n\r\n getEmployeesListForSelect () {// Created By S Get all employees list\r\n this._leaveSer.getEmployeesListForSelect(this.loggedUserId,this.CmpCode).subscribe((res) => {\r\n // For Employee Select List\r\n this.EmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'userId', 'employeeCodeName');\r\n // const selectedEmp = this.EmployeeList.find(x => x.id.toString() === this.loggedUserId.toString());\r\n // if (selectedEmp !== undefined) {\r\n // setTimeout(() => {\r\n // this.ddlSelection(selectedEmp, 'Employee', undefined, undefined);\r\n // }, 300);\r\n // }\r\n },\r\n error => {\r\n this.EmployeeList = [];\r\n console.log(error);\r\n });\r\n }\r\n ddlSelection(value: any, placeHolder: any) { // Created By S On Employee field update\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n this.ddlEmployeeUserId = value.id;\r\n\r\n this.getMyApprovalsList();\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n removed(placeHolder: any) {// Created By S On Remove Employee\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ddlEmployeeUserId = null;\r\n\r\n this.getMyApprovalsList();\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n onSortMyApprovals({ column, direction }: SortEvent) {// Created By S Sorting Approval Requests\r\n // resetting other headers\r\n this.headers.forEach((header) => {\r\n if (header.sortable !== column) {\r\n header.direction = \"\";\r\n }\r\n });\r\n\r\n // sorting MyApprovalsList\r\n if (direction === \"\" || column === \"\") {\r\n this.myApprovalsList = this.myApprovalsList;\r\n } else {\r\n this.myApprovalsList = [...this.myApprovalsList].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === \"asc\" ? res : -res;\r\n });\r\n }\r\n }\r\n getLeaveDetails(requid){// Created By S Get Leave Detauls by Id\r\n debugger;\r\n this._leaveSer.getLeaveDetails(requid,this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n if (res[\"data\"].table.length > 0) {\r\n this.leaveDetails = res[\"data\"].table[0];\r\n console.log(this.leaveDetails,'leaveDetail'); \r\n } \r\n })\r\n }\r\n // get myApprovalsList(): RequestsApprovals[] {\r\n // return this.myApprovalsListTemp.map((request, i) => ({\r\n // id: i + 1,\r\n // ...request,\r\n // })).slice(\r\n // (this.myApprovalsPage - 1) * this.myApprovalsPageSize,\r\n // (this.myApprovalsPage - 1) * this.myApprovalsPageSize + this.myApprovalsPageSize\r\n // );\r\n // }\r\n\r\n\r\n \r\n getRequestDetails(requestId, requestType) {// Created By S Get Request Details based on Request Type\r\n debugger\r\n this.leaveDetails = null;\r\n this.compOffDetails = null;\r\n this.leaveApprovalList = [];\r\n this.compOffApprovalList = [];\r\n this.isLeaveReasonTextboxEmpty = false;\r\n\r\n this.currentRequestType = \"\";\r\n this.requestApprovalComment = \"\";\r\n this.userLoader = true;\r\n if (requestType === \"Leave\") {\r\n this.currentRequestType = \"Leave\";\r\n this._leaveSer.getLeaveDetails(requestId,this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n if (res[\"data\"].table.length > 0) {\r\n this.leaveDetails = res[\"data\"].table[0];\r\n console.log(this.leaveDetails);\r\n\r\n this._commonSer.OpenModalHandler(\"requestDetailsModal\");\r\n this.getLeaveApprovalDetails(requestId);\r\n } else {\r\n //Show not found message\r\n }\r\n },\r\n error => {\r\n this.userLoader = false;\r\n this.currentRequestType = \"\";\r\n this.leaveDetails = null;\r\n console.log(error);\r\n });\r\n } else if (requestType === \"Compensatory Off\") {\r\n this.currentRequestType = \"Compensatory Off\";\r\n this._leaveSer.getCompOffDetails(requestId,this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n if (res[\"data\"].table.length > 0) {\r\n this.compOffDetails = res[\"data\"].table[0];\r\n console.clear();\r\n console.log(this.compOffDetails);\r\n this._commonSer.OpenModalHandler(\"requestDetailsModal\");\r\n this.getCompOffApprovalDetails(requestId);\r\n } else {\r\n //Show not found message\r\n }\r\n },\r\n error => {\r\n this.userLoader = false;\r\n this.currentRequestType = \"\";\r\n this.compOffDetails = null;\r\n console.log(error);\r\n });\r\n }\r\n }\r\n onlyUnique(value, index, self) {// Created By S \r\n return self.indexOf(value) === index;\r\n }\r\n \r\n disbutton:boolean=true\r\n loginUserList:any=[]\r\n withoutLoginUserList:any\r\n checkList:boolean=false\r\n listArray:any\r\n getLeaveApprovalDetails(leaveId) {// Created By S Get Leave Approval Details\r\n this.leaveApprovalList = [];\r\n this.disbutton=true\r\n this._leaveSer.getLeaveApprovalDetails(leaveId,this.CmpCode).subscribe((res) => {\r\n debugger;\r\n this.leaveApprovalList = res[\"data\"].table;\r\n this.checkList=false\r\n this.loginUserList=[]\r\n this.withoutLoginUserList=[]\r\n this.listArray=[]\r\n this.compOffApprovalList = [];\r\n this.approvalgGrouplistSix =[]\r\n this.approvalgGrouplistTen=[]\r\n for(var i=0;i {\r\n this.leaveApprovalList = [];\r\n console.log(error);\r\n });\r\n }\r\n projectList:any=[]\r\n projects:any=[]\r\n getproject(type,status){// Created By S On approval timeline project click\r\n debugger;\r\n // approvedBy: \"20586\"\r\n // approvedDate: null\r\n // approverEmail: \"ramesh@samsung.co.in\"\r\n // approverEmpCode: \"SAMUID5001\"\r\n // approverEmpId: 20586\r\n // approverGroup: 6\r\n // approverName: \"Ramesh \"\r\n // comment: null\r\n // empCode: \"SAMUID5004\"\r\n // employeeId: 20589\r\n // employeeName: \"Neha Verma \"\r\n // isCurrentWorkflow: false\r\n // leaveApprovalId: 487\r\n // leaveId: 168\r\n // status: \"Pending\"\r\n // statusId: 1\r\n // type: 1\r\n // getProjectDetails(type,typeid,approvalid,CmpCode,approvalgroup)\r\n if(type==1)\r\n {\r\n this._leaveSer.getProjectDetails(type,status.leaveId,status.approvedBy,this.CmpCode,status.approverGroup).subscribe((res) => {\r\n this.projectList = res[\"data\"].table;\r\n \r\n },\r\n error => {\r\n this.leaveApprovalList = [];\r\n console.log(error);\r\n });\r\n }\r\n if(type==2){\r\n this._leaveSer.getProjectDetails(type,status.compOffId,status.approvedBy,this.CmpCode,status.approverGroup).subscribe((res) => {\r\n this.projectList = res[\"data\"].table;\r\n \r\n },\r\n error => {\r\n this.leaveApprovalList = [];\r\n console.log(error);\r\n });\r\n }\r\n \r\n // this.projectList= this.leaveApprovalList.filter(x=>x.approverEmpCode==status)\r\n // this.projects=this.projectList[0].projectname\r\n // this.projects.toString()\r\n }\r\n // Get Compensatory Off Approval Details\r\n showButtonApproval:boolean=false\r\n approvalgGrouplistSix:any=[]\r\n approvalgGrouplistTen:any=[]\r\n getCompOffApprovalDetails(compOffId) {// Created By S Get Comp-off details\r\n this.disbutton=true\r\n this.showButtonApproval=false\r\n \r\n this.compOffApprovalList = [];\r\n this.approvalgGrouplistSix =[]\r\n this.approvalgGrouplistTen=[]\r\n this._leaveSer.getCompOffApprovalDetails(compOffId,this.CmpCode).subscribe((res) => {\r\n this.compOffApprovalList = res[\"data\"].table;\r\n debugger;\r\n\r\n this.checkList=false\r\n this.loginUserList=[]\r\n this.withoutLoginUserList=[]\r\n this.listArray=[]\r\n for(var i=0;i {\r\n this.compOffApprovalList = [];\r\n console.log(error);\r\n });\r\n }\r\n\r\n processComppoffApprovalAll(compOffId){// Created By S On Approval Com-Off Requests - All Level\r\n debugger\r\n let parms = {\r\n CompOffId: compOffId,\r\n StatusId: 2,\r\n Comment: this.requestApprovalComment,\r\n UserId: this._authSer.getUserId(),\r\n CmpCode:this.CmpCode,\r\n };\r\n this._leaveSer.compOffApprovalAll(parms).subscribe((res) =>{\r\n if (res.success === true) {\r\n debugger\r\n this.closeAllModals() \r\n\r\n this.showMessage = res.data;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = res.message;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n this.getMyApprovalsList();\r\n })\r\n \r\n\r\n }\r\n processLeaveApprovalAll(leaveId){// Created By S On Approval All Leaves\r\n debugger\r\n let parms = {\r\n LeaveId: leaveId,\r\n StatusId: 2,\r\n RejectedReason: this.requestApprovalComment,\r\n ApprovedBy: this._authSer.getUserId(),\r\n CmpCode:this.CmpCode,\r\n };\r\n this._leaveSer.leaveApprovalAll(parms).subscribe((res) =>{\r\n if (res.success === true) {\r\n debugger\r\n this.closeAllModals() \r\n\r\n this.showMessage = res.data;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = res.message;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n })\r\n this.getMyApprovalsList();\r\n\r\n }\r\n\r\n //Process Leave Request\r\n processLeaveApproval(leaveId, statusId) {// Created By S On Leave Approve\r\n this.isLeaveReasonTextboxEmpty = false;\r\n if (statusId == 3) {\r\n if (this.isCancelReasonMandatory && (this.requestApprovalComment == null || this.requestApprovalComment.trim().length == 0)) {\r\n this.isLeaveReasonTextboxEmpty = true;\r\n return;\r\n }\r\n }\r\n\r\n let currentUserID = this.loggedUserId;\r\n this.parms = {\r\n LeaveId: leaveId,\r\n StatusId: statusId,\r\n RejectedReason: this.requestApprovalComment,\r\n ApprovedBy: currentUserID,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this.showSuccess = true;\r\n this._leaveSer.leaveApproval(this.parms).subscribe((response) => {\r\n this.userLoader = false;\r\n if (response.success === true) {\r\n debugger\r\n this.closeAllModals()\r\n\r\n this.showMessage = response.data;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n this.getMyApprovalsList();\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n \r\n this.toasterService.show('success',this.showMessage)\r\n \r\n //this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n console.log(error);\r\n });\r\n }\r\n //Process Compensatory Off Request\r\n processCompOffApproval(compOffId, statusId) {// Created By S On Comp-off Approval\r\n this.isLeaveReasonTextboxEmpty = false;\r\n if (statusId == 3) {\r\n if (this.isCancelReasonMandatory && (this.requestApprovalComment == null || this.requestApprovalComment.trim().length == 0)) {\r\n this.isLeaveReasonTextboxEmpty = true;\r\n return;\r\n }\r\n }\r\n\r\n let currentUserID = this.loggedUserId;\r\n this.parms = {\r\n CompOffId: compOffId,\r\n StatusId: statusId,\r\n Comment: this.requestApprovalComment,\r\n UserId: currentUserID,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this.showSuccess = true;\r\n this._leaveSer.compOffApproval(this.parms).subscribe((response) => {\r\n this.userLoader = false;\r\n if (response.success === true) {\r\n this.showMessage = response.data;\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.toasterService.show('success',this.showMessage)\r\n this.closeAllModals()\r\n\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.toasterService.show('success',this.showMessage)\r\n this.closeAllModals()\r\n }\r\n this.getMyApprovalsList();\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n //this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.toasterService.show('success',this.showMessage)\r\n \r\n console.log(error);\r\n });\r\n }\r\n\r\n \r\n checkAllMyApprovals() {// Created By K Select All - Approvals\r\n if (this.chkAllApprovals) {\r\n this.myApprovalsList.forEach(request => { request.isSelected = true; });\r\n } else {\r\n this.myApprovalsList.forEach(request => { request.isSelected = false; });\r\n }\r\n }\r\n checkAllMyRequests() {// Created By K Select All - Requests\r\n if (this.chkAllRequests) {\r\n this.myRequestsList.forEach(request => { request.isSelected = true; });\r\n } else {\r\n this.myRequestsList.forEach(request => { request.isSelected = false; });\r\n }\r\n }\r\n\r\n \r\n showBulkApprovalModal() {// Created By S Process Bulk Approval\r\n this.requestBulkApprovalComment = \"\";\r\n let isAnySelected = false;\r\n this.myApprovalsList.forEach(request => {\r\n if (request.isCurrentWorkflow == false) {\r\n request.isSelected = false;\r\n }\r\n });\r\n\r\n this.myApprovalsList.forEach(request => {\r\n if (request.isSelected) {\r\n isAnySelected = true;\r\n }\r\n });\r\n if (isAnySelected) {\r\n this._commonSer.OpenModalHandler(\"bulkRequestsApprovalModal\");\r\n }\r\n }\r\n processBulkRequestsApproval(statusId) {// Created By S Approve In bulk\r\n let currentUserID = this.loggedUserId;\r\n this.checkedLeaveRequestIds = [];\r\n this.checkedCompOffRequestIds = [];\r\n this.myApprovalsList.forEach(request => {\r\n if (request.isSelected && request.statusId === 1) {\r\n if (request.requestType === \"Leave\") {\r\n this.checkedLeaveRequestIds.push(request.requestId);\r\n } else if (request.requestType === \"Compensatory Off\") {\r\n this.checkedCompOffRequestIds.push(request.requestId);\r\n }\r\n }\r\n });\r\n\r\n if (this.checkedLeaveRequestIds.length === 0 && this.checkedCompOffRequestIds.length === 0) {\r\n this.showSuccess = false;\r\n this.showMessage = \"Please select atleast one request to process approval\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n\r\n this.parms = {\r\n LeaveIdList: this.checkedLeaveRequestIds,\r\n CompOffIdList: this.checkedCompOffRequestIds,\r\n StatusId: statusId,\r\n Comment: this.requestBulkApprovalComment,\r\n ApprovedBy: currentUserID,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this.showSuccess = true;\r\n this._leaveSer.leaveCompOffBulkApproval(this.parms).subscribe((response) => {\r\n this.userLoader = false;\r\n if (response.success === true) {\r\n this.showMessage = response.data;\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n this.getMyApprovalsList();\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n console.log(error);\r\n });\r\n }\r\n\r\n closeAllModals() {// Created By S Close Modals\r\n this._commonSer.CloseModalHandler('requestDetailsModal');\r\n this._commonSer.CloseModalHandler('requestApprovalModal');\r\n this._commonSer.CloseModalHandler('bulkRequestsApprovalModal');\r\n this._commonSer.CloseModalHandler('userMessageModel');\r\n }\r\n\r\n // Import and Export\r\n ExportLeavesExcel() {// Created By S Export Leaves as excel\r\n let loggedUserId = this.loggedUserId;\r\n let ddlUserId = this.ddlEmployeeUserId;\r\n let _filterStatusId = this.myApprovalsFilterStatusId;\r\n let _requestType = this.myApprovalsFilterRequestType;\r\n\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n UserId: loggedUserId,\r\n statusType: _filterStatusId,\r\n requestType: _requestType,\r\n searchedUserId: ddlUserId,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getLeavesReport_Excel(parms).subscribe((res) => {\r\n this.userLoader = false;\r\n let _exportData = res[\"data\"];\r\n this._commonSer.exportAsExcelFile(_exportData, 'Leave Report');\r\n },\r\n error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n\r\n // this._leaveSer.getLeavesReport_Excel().subscribe((res) => {\r\n // let exportData = res[\"data\"];\r\n // this._commonSer.exportAsExcelFile(exportData[0].table, 'Leave Report');\r\n // }, error => {\r\n // console.log(error);\r\n // });\r\n }\r\n\r\n ExportCompOffExcel() {// Created By S Export Comp-off as excel\r\n let loggedUserId = this.loggedUserId;\r\n let ddlUserId = this.ddlEmployeeUserId;\r\n let _filterStatusId = this.myApprovalsFilterStatusId;\r\n let _requestType = this.myApprovalsFilterRequestType;\r\n\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n UserId: loggedUserId,\r\n statusType: _filterStatusId,\r\n requestType: _requestType,\r\n searchedUserId: ddlUserId,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getCompOffReport_Excel(parms).subscribe((res) => {\r\n this.userLoader = false;\r\n let _exportData = res[\"data\"];\r\n this._commonSer.exportAsExcelFile(_exportData, 'CompensatoryOff Report');\r\n },\r\n error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n\r\n // this._leaveSer.getCompOffReport_Excel().subscribe((res) => {\r\n // let exportData = res[\"data\"];\r\n // this._commonSer.exportAsExcelFile(exportData.table, 'CompensatoryOff Report');\r\n // }, error => {\r\n // console.log(error);\r\n // });\r\n }\r\n\r\n showtable = true;\r\n showimport = false;\r\n\r\n resetImportForm() {// Created By S Reset Form\r\n this.showtable = true;\r\n this.showimport = false;\r\n this.chckSendForApproval = true;\r\n this.importType = 0;\r\n }\r\n Import(_importType) {// Created By S Initialize form\r\n this.showtable = false;\r\n this.showimport = true;\r\n this.chckSendForApproval = true;\r\n this.importType = _importType;\r\n }\r\n\r\n showMapData = false;\r\n showNext = false;\r\n showname = false;\r\n showtext = true;\r\n\r\n onFileChange(files: FileList) {// Created By S On file recived\r\n this.showname = true;\r\n this.showtext = false;\r\n this.labelImport.nativeElement.innerText = Array.from(files)\r\n .map(f => { if (f.size <= 2242880) {\r\n this.showNext = true;\r\n return f.name + ' ' + f.size;\r\n } else {\r\n return 'file size exceeds 2MB';\r\n }\r\n }).join(', ');\r\n this.fileToUpload = files.item(0);\r\n }\r\n showUpload() {// Created By S Toggle\r\n this.showimport = true;\r\n this.showNext = false;\r\n this.showMapData = false;\r\n }\r\n showMap() {// Created By S Toggle\r\n this.showimport = false;\r\n this.showNext = false;\r\n this.showMapData = true;\r\n }\r\n\r\n uploadData() {// Created By S Upload import files\r\n const formData = new FormData();\r\n formData.append('importFile', this.fileToUpload);\r\n\r\n if (this.importType == 1) {\r\n this.userLoader = true;\r\n this._leaveSer.importLeaves(formData, this.chckSendForApproval).subscribe((response) => {\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(response);\r\n if (response[\"success\"] === true) {\r\n this.showSuccess = true;\r\n this.showMessage = response[\"data\"];\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response[\"message\"];\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n this.getMyApprovalsList();\r\n this.resetImportForm();\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.resetImportForm();\r\n console.log(error);\r\n });\r\n } else if (this.importType == 2) {\r\n this.userLoader = true;\r\n this._leaveSer.importCompOffs(formData, this.chckSendForApproval).subscribe((response) => {\r\n this.userLoader = false;\r\n if (response[\"success\"] === true) {\r\n this.showSuccess = true;\r\n this.showMessage = response[\"data\"];\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response[\"message\"];\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n this.getMyApprovalsList();\r\n this.resetImportForm();\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.resetImportForm();\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n\r\n // General Settings Data\r\n getGeneralSettingsData() {// Created By S Getting Leave genral settings\r\n this._leaveSer.getGeneralSettings(this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n this.generalSettingsData = res[\"data\"];\r\n this.isCancelReasonMandatory = this.generalSettingsData.leaveCancellationReasonMandatory;\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n recieptIMg: any;\r\n userImage(item) {// Created By S Update\r\n // \r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n\r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n\r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n\r\n }\r\n \r\n\r\n OnPagingHide( value:any) {// Created By S\r\n if(value==1){\r\n \r\n var reqt = document.getElementById(\"Reqt\");\r\n var appr = document.getElementById(\"Appr\");\r\n \r\n if (reqt.style.display === \"none\") {\r\n reqt.style.display = \"\";\r\n appr.style.display = \"none\";\r\n }\r\n }\r\n else{\r\n \r\n var reqt = document.getElementById(\"Reqt\");\r\n var appr = document.getElementById(\"Appr\");\r\n \r\n if (appr.style.display === \"none\") {\r\n reqt.style.display = \"none\";\r\n appr.style.display = \"\";\r\n }\r\n }\r\n \r\n \r\n \r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TabsModule as MkTabsModule } from 'angular-admin-lte';\r\nimport { TimepickerModule, BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { ApprovalComponent, NgbdSortableHeader } from './approval.component';\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n BoxModule, SelectModule,\r\n MkTabsModule,\r\n BoxModule,\r\n CoreModule,\r\n SelectModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n GridAllModule,\r\n PagerModule,\r\n ],\r\n declarations: [ApprovalComponent, NgbdSortableHeader]\r\n})\r\nexport class ApprovalModule { }\r\n","\r\n
    \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n

    Client Holiday List

    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
    \r\n \r\n
      \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n
    • \r\n CSV\r\n
    • \r\n\r\n
    \r\n
    \r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n {{dateformat(holiday.holidayStartDate)}}\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n {{dateformat(holiday.holidayEndDate)}}\r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{showHoliday}} Client Holiday

    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n  \r\n *\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n {{ requiredHolidayName }}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n  \r\n *\r\n
    \r\n
    \r\n \r\n \r\n\r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n
    \r\n {{ requiredHolidayDate }}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n  \r\n *\r\n
    \r\n
    \r\n \r\n \r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n {{endDateInvalidMessage}}\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ HolidayCalendarDatesList[i].HolidayDate | date }}\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Import File
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    View\r\n sample files so that you can import files in a standard format.\r\n

    \r\n
    \r\n
    \r\n
    0\" >\r\n Results\r\n {{item}}
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { DatePipe } from \"@angular/common\";\r\nimport { UserService } from \"src/app/user/user.service\";\r\nimport { Component, OnInit,Input, ViewChild, ElementRef } from \"@angular/core\";\r\nimport { LeaveService } from \"../leave.service\";\r\nimport {\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n FormControl,\r\n} from \"@angular/forms\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap/datepicker\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { Permission } from \"src/app/permission-keyword\";\r\nimport * as _ from \"lodash\";\r\nimport { ToasterService } from '../../expense/toaster/toaster.service';\r\nimport { clientholidayService } from \"./clientholiday.service\";\r\nimport { GridComponent,Column, ExcelExportProperties } from \"@syncfusion/ej2-angular-grids\";\r\nimport { ExpenseHttpService } from \"src/app/services/expense/expense-http.service\";\r\nimport { UploaderComponent } from \"@syncfusion/ej2-angular-inputs\";\r\n\r\n\r\nclass ClientholidayCalendarDates {\r\n ClientholidayId: number;\r\n ClientholidayDate: Date;\r\n DayType: string;\r\n}\r\n\r\n@Component({\r\n selector: \"app-Clientholiday\",\r\n templateUrl: \"./Clientholiday.component.html\",\r\n styleUrls: [\"./Clientholiday.component.css\"],\r\n})\r\nexport class ClientholidayComponent implements OnInit {\r\n @Input() usertypestrings: any;\r\n @ViewChild(\"FileName\") FileName: ElementRef;\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n holidays = [];\r\n locations: any;\r\n selectedLocation: any;\r\n currentUser: any;\r\n @ViewChild('file') public uploadObj: UploaderComponent;\r\n holidayForm: FormGroup;\r\n searchString;\r\n collectionSize = 0;\r\n isEdit = false;\r\n maxDate1:any;\r\n minDBDate:any;\r\n checkDate:any;\r\n today:any;\r\n startDate: any;\r\n endDate: any;\r\n DateFormat:any\r\n showSuccess: boolean;\r\n showMessage: any;\r\n submitted: any;\r\n confirmBox: boolean;\r\n CheckJson: any;\r\n isstartdate:any;\r\n HolidayTypesVal = [];\r\n HolidayCalendarDatesList: ClientholidayCalendarDates[];\r\n\r\n holidayList: any;\r\n tempholidayList: any;\r\n userLoader: Boolean = false;\r\n filterHoliday = \"\";\r\n page: 1;\r\n pageSize: 4;\r\n showHoliday:any;\r\n\r\n gapi: any;\r\n auth2: any;\r\n Name: any;\r\n show: any;\r\n\r\n flterShowData = false;\r\n\r\n UserId: any;\r\n CmpCode:any;\r\n @ViewChild('overviewgrid')\r\n public gridInstance: GridComponent;\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n //GoogleAuth\r\n GoogleAuth: any; // Google Auth object.\r\n filterPeriod: number;\r\n navigationText: any;\r\n filterStartDate: Date;\r\n filterEndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n monthNamesList = [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"May\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\",\r\n ];\r\n public clientHolidayField: Object = { text: 'name', value: 'id' };\r\n public servicestatustext: string = 'Select Period';\r\n FilterPeriodList = [\r\n {\r\n id: 1,\r\n name: 'Yesterday',\r\n },\r\n {\r\n id: 2,\r\n name: 'Today',\r\n },\r\n {\r\n id: 3,\r\n name: 'Last Week',\r\n },\r\n {\r\n id: 4,\r\n name: 'This Week',\r\n },\r\n {\r\n id: 5,\r\n name: 'Last Month',\r\n },\r\n {\r\n id: 6,\r\n name: 'This Month',\r\n },\r\n {\r\n id: 7,\r\n name: 'Last Year',\r\n },\r\n {\r\n id: 8,\r\n name: 'This Year',\r\n },\r\n {\r\n id: 9,\r\n name: 'Custom',\r\n }\r\n ];\r\n\r\n // Validation Message\r\n requiredHolidayName: String = null;\r\n requiredHolidayDate: String = null;\r\n\r\n st: number;\r\n\r\n @ViewChild(\"loginRef\") loginElement: ElementRef;\r\n // Http: any;\r\n\r\n constructor(\r\n private _leaveSer: LeaveService,\r\n private _holidaysServ: clientholidayService,\r\n private _fb: FormBuilder,\r\n private _authSer: AuthService,\r\n private _commonSer: CommonService,\r\n private _userService: UserService,\r\n private _bsDatepickerConfig: BsDatepickerConfig,\r\n private auth: AuthService,\r\n private commonService: CommonService,\r\n private datePipe: DatePipe,\r\n private Http: ExpenseHttpService,\r\n private toaster: ToasterService\r\n\r\n ) {\r\n this.CmpCode = this.auth.getcompanyCode();\r\n }\r\n\r\n currentDate = new Date();\r\n roleId:any;\r\n UserType:any;\r\n todayDate:any;\r\n \r\n ngOnInit() {\r\n //this.todayDate=this.datePipe.transform(new Date(), 'yyyy-MM-dd');\r\n this.UserId = this.auth.getUserId();\r\n this.CmpCode = this.auth.getcompanyCode();\r\n let userType = this.auth.getUserType();\r\n let roleId = this.auth.getRoleId();\r\n this.roleId = roleId;\r\n if (roleId === '1') {\r\n this.UserType = 1;\r\n } else if (roleId === '2' || roleId === '3' || roleId === '10') {\r\n this.UserType = 2;\r\n } else if (roleId === '30') {\r\n this.UserType = 3;\r\n } else if (roleId === '40') {\r\n this.UserType = 4;\r\n }\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.CmpCode = this.auth.getcompanyCode();\r\n this.googleSDK();\r\n this.DateFormat= this._authSer.getdateFormat();\r\n // Set default filter\r\n this.filterPeriod = 8;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear() + \"-01-01 00:00:00\");\r\n this.filterEndDate = new Date(currentDate.getFullYear() + \"-12-31 00:00:00\");\r\n\r\n this.holidayForm = new FormGroup({\r\n holidayName: new FormControl(\"\", Validators.required),\r\n holidayDate: new FormControl(\"\", Validators.required),\r\n isRestrictedHoliday: new FormControl(\"\"),\r\n locations: new FormControl(\"\"),\r\n locationsParm: new FormControl(\"\"),\r\n Description: new FormControl(\"\"),\r\n DaysReminder: new FormControl(\"\"),\r\n notifyEmployees: new FormControl(\"\"),\r\n reprocessLeave: new FormControl(\"\"),\r\n createdBy: new FormControl(\"\"),\r\n Id: new FormControl(\"\"),\r\n holidayType: new FormControl(\"\"),\r\n endDate: new FormControl(\"\"),\r\n holidayDatesList: new FormControl(\"\"),\r\n });\r\n\r\n this.auth.currentUser.subscribe((x) => {\r\n this.currentUser = x;\r\n this.UserId = this.currentUser.userId;\r\n });\r\n this.getAllLocations();\r\n if (this.usertypestrings == \"salesperson\") {\r\n this.UserType = 3;\r\n // this.UserChange('', this.UserType);\r\n }\r\n }\r\n\r\n ImportFileExcel: any;\r\n ImportFileExcelName: any;\r\n onFileChangeImg(event){\r\n let IsCheckSize = event.target.files[0].size;\r\n if(IsCheckSize > 2097152){\r\n this.toaster.show(\"success\", 'Please Select a file smaller than 2MB');\r\n }else {\r\n this.ImportFileExcel = event.target.files[0];\r\n this.ImportFileExcelName = event.target.files[0].name;\r\n };\r\n }\r\n\r\n errorData = []\r\n SaveImportExcelData() {\r\n if (this.ImportFileExcel !== undefined) {\r\n let fd = new FormData();\r\n fd.append(\"file\", this.ImportFileExcel);\r\n fd.append(\"Cmpcode\", this.CmpCode);\r\n fd.append(\"userid\", this.UserId);\r\n fd.append(\"excelFileName\", \"ClientHolidays\");\r\n this.Http.ImportExcelFiles(fd).then((res) => {\r\n if (res.success === true) {\r\n this.toaster.show(\"success\", \"Records Imported Successfully\");\r\n this.errorData = []\r\n this.uploadObj.clearAll();\r\n this.ngOnInit();\r\n this._commonSer.CloseModalHandler('exampleModal3'); \r\n } else {\r\n this.errorData = res?.data?.split(\"*\");\r\n this.errorData[0] = \"Please Resolve the Below Errors\"\r\n this.ImportFileExcel = undefined;\r\n this.uploadObj.clearAll();\r\n this.toaster.show(\"warning\", \"Incorrect Records\");\r\n }\r\n },(error) => {\r\n this.toaster.show(\"warning\", \"Uh oh, Something went wrong!\");\r\n });\r\n } else {\r\n this.toaster.show(\"error\", \"Uh oh, Something went wrong!\");\r\n }\r\n }\r\n \r\n\r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n logText(i: number) {\r\n this.st = i;\r\n }\r\n\r\n //DateFormat='MM/dd/yyyy';\r\n \r\n \r\n \r\n dateformat(datas:string){\r\n return this._authSer.Dateformat(datas);\r\n // if (this.DateFormat=='1')\r\n // {\r\n // return this.datePipe.transform(datas, 'MM/dd/yyyy')\r\n \r\n // }\r\n // if(this.DateFormat=='2')\r\n // {\r\n // return this.datePipe.transform(datas, 'dd/MM/yyyy')\r\n // }\r\n // if(this.DateFormat== '3')\r\n // {\r\n // return this.datePipe.transform(datas, 'yyyy/MM/dd')\r\n // }\r\n }\r\n\r\n prepareLoginButton() {\r\n this.auth2.attachClickHandler(\r\n this.loginElement.nativeElement,\r\n {},\r\n (googleUser) => {\r\n let profile = googleUser.getBasicProfile();\r\n console.log(googleUser);\r\n let a = googleUser.getAuthResponse().access_token;\r\n let params = {\r\n UserId: this.UserId,\r\n AccessToken: googleUser.getAuthResponse().access_token,\r\n SyncType: this.st,\r\n };\r\n this._commonSer\r\n .CRG_PostAPI(\"Admin/SyncWithGoogleCalendar\", params)\r\n .subscribe((res) => {});\r\n },\r\n (error) => {\r\n alert(JSON.stringify(error, undefined, 2));\r\n }\r\n );\r\n }\r\n\r\n googleSDK() {\r\n window[\"googleSDKLoaded\"] = () => {\r\n window[\"gapi\"].load(\"auth2\", () => {\r\n this.auth2 = window[\"gapi\"].auth2.init({\r\n client_id:\r\n \"467170952999-rae30kmckqs7a4j4u7mk1dduu6p9a97b.apps.googleusercontent.com\",\r\n cookie_policy: \"single_host_origin\",\r\n scope:\r\n \"https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/calendar.events\",\r\n });\r\n\r\n this.prepareLoginButton();\r\n });\r\n };\r\n\r\n (function (d, s, id) {\r\n var js,\r\n fjs = d.getElementsByTagName(s)[0];\r\n if (d.getElementById(id)) {\r\n \r\n return;\r\n }\r\n js = d.createElement(s);\r\n js.id = id;\r\n js.src = \"https://apis.google.com/js/platform.js?onload=googleSDKLoaded\";\r\n fjs.parentNode.insertBefore(js, fjs);\r\n })(document, \"script\", \"google-jssdk\");\r\n }\r\n\r\n getAllLocations() {\r\n this._userService.getAllLocationsForSelect(this.CmpCode).subscribe((res: any) => {\r\n if (res.success) {\r\n this.locations = [];\r\n this.locations = _.map(res.data.table, (tableObj) => {\r\n return { id: tableObj.locationId, text: tableObj.locationName };\r\n });\r\n this.getAllHolidays();\r\n (this.gridInstance.columns[4] as Column).visible = true;\r\n }\r\n });\r\n this.getAllLocationList();\r\n }\r\n selectedHoliday = [];\r\n\r\n holidayTypes = [\"Full Day\", \"First Half\", \"Second Half\"];\r\n\r\n getAllHolidays() {\r\n this.Http.getHolidayList(this.CmpCode).then((res: any) => {\r\n this.holidays=res.data.table;\r\n\r\n });\r\n // let par = {\r\n // PageNo: 1,\r\n // NoOfRecords: 10000,\r\n // SortType: \"desc\", //'asc',\r\n // FieldName: \"CreatedDate\",\r\n // CmpCode:this.CmpCode\r\n // };\r\n // this.commonService\r\n // .CRG_PostAPI(\"Holiday/GetAllHoliday\", par)\r\n // .subscribe((res) => {\r\n // const response = JSON.parse(JSON.parse(res[\"_body\"]).data);\r\n // for (var j = 0; j < response.length; j++) {\r\n // if (response[j].LocationIds) {\r\n // var locationId = response[j].LocationIds.split(\",\");\r\n // let name = [];\r\n // for (var i = 0; i < locationId.length; i++) {\r\n // if (this.locations.some((c) => c.id == locationId[i])) {\r\n // name.push(_.find(this.locations, (e) => e.id == locationId[i]));\r\n // }\r\n // }\r\n // response[j].LocationName = name.map((c) => c.text).join();\r\n // }\r\n // }\r\n // this.holidays = response;\r\n // this.myRequestsListLength = this.holidays.length;\r\n // });\r\n }\r\n\r\n /************************** SAVE Holiday *********************************/\r\n \r\n onHolidayNameChanged() {\r\n this.requiredHolidayName = null;\r\n if (this.holidayForm.controls.holidayName.value == null || \r\n this.holidayForm.controls.holidayName.value == undefined ||\r\n this.holidayForm.controls.holidayName.value == \"\") {\r\n this.requiredHolidayName = \"Name is required.\";\r\n }\r\n }\r\n projectDocumentForm:any=[];\r\n validationError:any;\r\n saveHoliday() {\r\n this.holidayForm.value;\r\n this.holidayForm.value;\r\n // if (this.projectDocumentForm.documentName === undefined || this.projectDocumentForm.remarks === undefined || this.projectDocumentForm.startdate === undefined ||this.projectDocumentForm.enddate === undefined) {\r\n // return;\r\n // }\r\ndebugger;\r\nif(this.projectDocumentForm.enddates==null || this.projectDocumentForm.enddates==undefined ||this.projectDocumentForm.enddates==\"\") \r\n{\r\nthis.validationError=\"please enter the Date\"\r\n}\r\nelse{\r\ndebugger;\r\n\r\n}\r\n\r\n if(this.holidayForm.value.Id ==0 || this.holidayForm.value.Id ==null)\r\n {\r\n var params = {\r\n\r\n CmpCode: this.CmpCode,\r\n HolidayId:0,\r\n HolidayTitle:this.holidayForm.value.holidayName,\r\n Description:this.holidayForm.value.Description,\r\n Locations:this.holidayForm.value.locations,\r\n //DateJson:'',\r\n DaysReminder:this.holidayForm.value.DaysReminder,\r\n //NotifyEmployees:true,\r\n ReprocessLeave:this.holidayForm.value.reprocessLeave,\r\n HolidayStartDate:this.projectDocumentForm.startdates,\r\n HolidayEndDate:this.projectDocumentForm.enddates,\r\n //FinancialYearId:0,\r\n CreatedBy:this.UserId,\r\n //CreatedDate:null,\r\n //UpdatedBy:,\r\n // UpdatedDate:new Date(),\r\n //IsDeleted:false,\r\n IsRestricted:this.holidayForm.value.isRestrictedHoliday,\r\n }\r\n \r\n }\r\n else{\r\n params = {\r\n CmpCode: this.CmpCode,\r\n HolidayId:this.holidayForm.value.Id,\r\n HolidayTitle:this.holidayForm.value.holidayName,\r\n Description:this.holidayForm.value.Description,\r\n Locations:this.holidayForm.value.locations,\r\n //DateJson:'',\r\n DaysReminder:this.holidayForm.value.DaysReminder,\r\n //NotifyEmployees:true,\r\n ReprocessLeave:this.holidayForm.value.reprocessLeave,\r\n // HolidayStartDate:this.projectDocumentForm.startdates,\r\n // HolidayEndDate:this.projectDocumentForm.enddates,\r\n HolidayStartDate:this.projectDocumentForm.startdate,\r\n HolidayEndDate:this.projectDocumentForm.enddate,\r\n //FinancialYearId:0,\r\n CreatedBy:this.UserId,\r\n //CreatedDate:null,\r\n //UpdatedBy:,\r\n // UpdatedDate:new Date(),\r\n //IsDeleted:false,\r\n IsRestricted:this.holidayForm.value.isRestrictedHoliday,\r\n }\r\n \r\n }\r\n \r\n this.Http.saveClientHoliday(params).then((res: any) => {\r\n //this.Loader=false;\r\n this._commonSer.CloseModalHandler(\"MessageModel\");\r\n this.holidayForm.reset();\r\n this.projectDocumentForm.enddates=\"\";\r\n this.projectDocumentForm.startdates=\"\";\r\n this.showSuccess = true;\r\n this.toaster.show('success', res.data);\r\n $(\"#closemodel\").trigger(\"click\");\r\n // this.closeModel('addmaster');\r\n this.getAllHolidays();\r\n });\r\n\r\n\r\n\r\n }\r\n assignSelectedDate:any;\r\n IsDateMinMaxAssign(projectDocumentForm){\r\n debugger;\r\n this.assignSelectedDate = projectDocumentForm.enddate;\r\n }\r\n\r\n IsAssigndateChange(projectDocumentForm){\r\n projectDocumentForm.enddate = this.assignSelectedDate;\r\n }\r\n IsDateMinMaxAssignstart(projectDocumentForm){\r\n debugger;\r\n this.assignSelectedDate = projectDocumentForm.startdate;\r\n }\r\n\r\n IsAssigndateChangestart(projectDocumentForm){\r\n projectDocumentForm.startdate = this.assignSelectedDate;\r\n }\r\n IsDateMinMaxAssignstartsetenddate(projectDocumentForm)\r\n {\r\n debugger;\r\n projectDocumentForm.enddate=projectDocumentForm.startdate\r\n }\r\n IsAssigndateChangestartsetenddate(projectDocumentForm)\r\n {\r\n debugger;\r\n projectDocumentForm.enddates=projectDocumentForm.startdates\r\n // this.minDBDate=projectDocumentForm.enddates;\r\n this.minDBDate = this.datePipe.transform(projectDocumentForm.enddates, 'yyyy-MM-dd');\r\n\r\n }\r\n\r\n /************************** Edit Holiday *********************************/\r\n\r\n \r\n editHoliday(holiday) {\r\n debugger\r\nthis.showHoliday=\"Edit\"\r\n this.isstartdate=1;\r\n this.checkDate=this.datePipe.transform(holiday.holidayStartDate, 'yyyy-MM-dd')\r\n this.today=this.datePipe.transform(new Date(), 'yyyy-MM-dd')\r\n \r\nvar d1 = Date.parse(this.checkDate);\r\nvar d2 = Date.parse(this.today);\r\nif(d1 location.id == val[x])\r\n );\r\n }\r\n\r\n this.selectedLocation = this.selectedLocation.filter(function (element) {\r\n return element !== undefined;\r\n });\r\n this.holidayForm.value.locationsParm = this.selectedLocation;\r\n }\r\n\r\n this.HolidayTypesVal = [];\r\n //this.CheckJson = JSON.parse(holiday.DateJson);\r\n // for (var i in this.CheckJson) {\r\n // this.HolidayTypesVal.push(this.CheckJson[i].DayType);\r\n // }\r\n\r\n let leaveStartDate1 = this.getFormattedDate(holiday.HolidayStartDate);\r\n let leaveEndDate1 = this.getFormattedDate(holiday.HolidayEndDate);\r\n\r\n if (leaveStartDate1 != null && leaveEndDate1 != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList1 = this.getDates(leaveStartDate1, leaveEndDate1);\r\n for (let i = 0; i < arrayDatesList1.length; i++) {\r\n let newData = new ClientholidayCalendarDates();\r\n newData.ClientholidayDate = arrayDatesList1[i];\r\n newData.DayType = this.HolidayTypesVal[i];\r\n this.HolidayCalendarDatesList.push(newData);\r\n } \r\n }\r\n\r\n this.commonService.OpenModalHandler(\"addHoliday\");\r\n this.holidayForm.enable();\r\n\r\n this.getAllHolidays();\r\n this.isView = false;\r\n this.isEdit = true;\r\n\r\n //this.holidayForm.get('locationsParm').markAsDirty();\r\n //this.holidayForm.markAsDirty();\r\n //this.holidayForm.valid = true;\r\n \r\n setTimeout(() => {\r\n //this.holidayForm.markAsTouched();\r\n //this.holidayForm.markAsDirty();\r\n\r\n //this.holidayForm.updateValueAndValidity();\r\n\r\n // this.holidayForm.get('locationsParm').setErrors(null);\r\n // this.holidayForm.get('locationsParm').markAsTouched();\r\n // this.holidayForm.get('locationsParm').markAsDirty();\r\n //console.log(this.holidayForm);\r\n }, 300);\r\n }\r\n /************************** View Holiday *********************************/\r\n\r\n isView = false;\r\n\r\n viewHoliday(holiday) {\r\nthis.showHoliday=\"View\"\r\nthis.projectDocumentForm.startdate= this.datePipe.transform(holiday.holidayStartDate, 'yyyy-MM-dd');\r\n this.projectDocumentForm.enddate= this.datePipe.transform(holiday.holidayEndDate, 'yyyy-MM-dd');\r\n this.holidayForm.patchValue({\r\n Id: holiday.holidayId,\r\n holidayName: holiday.holidayTitle,\r\n holidayDate:this.datePipe.transform(holiday.holidayStartDate, 'yyyy-MM-dd'),\r\n endDate:this.datePipe.transform(holiday.holidayEndDate, 'yyyy-MM-dd'),\r\n isRestrictedHoliday: holiday.isRestricted,\r\n locations: holiday.locationIds,\r\n Description: holiday.description,\r\n DaysReminder: holiday.daysReminder,\r\n //notifyEmployees: holiday.NotifyEmployee,\r\n reprocessLeave: holiday.isReprocess,\r\n\r\n\r\n createdBy: holiday.createdBy,\r\n });\r\n\r\n this.selectedLocation = [];\r\n if (holiday.LocationIds) {\r\n var val = holiday.LocationIds.split(\",\");\r\n for (var x = 0; x < val.length; x++) {\r\n this.selectedLocation.push(\r\n _.find(this.locations, (location) => location.id == val[x])\r\n );\r\n }\r\n\r\n this.selectedLocation = this.selectedLocation.filter(function (element) {\r\n return element !== undefined;\r\n });\r\n }\r\n\r\n // this.HolidayTypesVal = [];\r\n // this.CheckJson = JSON.parse(holiday.DateJson);\r\n // for (var i in this.CheckJson) {\r\n // this.HolidayTypesVal.push(this.CheckJson[i].DayType);\r\n // }\r\n\r\n let leaveStartDate1 = this.getFormattedDate(holiday.HolidayStartDate);\r\n let leaveEndDate1 = this.getFormattedDate(holiday.HolidayEndDate); // new Date(this.endDate);\r\n\r\n if (leaveStartDate1 != null && leaveEndDate1 != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList1 = this.getDates(leaveStartDate1, leaveEndDate1);\r\n for (let i = 0; i < arrayDatesList1.length; i++) {\r\n let newData = new ClientholidayCalendarDates();\r\n newData.ClientholidayDate = arrayDatesList1[i];\r\n newData.DayType = this.HolidayTypesVal[i];\r\n this.HolidayCalendarDatesList.push(newData);\r\n }\r\n }\r\n\r\n this.commonService.OpenModalHandler(\"addHoliday\");\r\n this.holidayForm.disable();\r\n this.isView = true;\r\n }\r\n\r\n /************************** New Holiday *********************************/\r\n\r\n newHoliday() {\r\n debugger;\r\n this.showHoliday=\"Add\"\r\n this.holidayForm.enable();\r\n this.holidayForm.reset();\r\n //this.holidayForm.markAsPristine();\r\n // console.log(this.FileName.nativeElement.value);\r\n // this.projectDocumentForm.startdate=\"\";\r\n this.projectDocumentForm.startdate=\"\";\r\n this.projectDocumentForm.enddate=\"\";\r\n ////this.FileName.nativeElement.value(\"\");\r\n this.isstartdate=0;\r\n this.projectDocumentForm.startdate=undefined;\r\n\r\n this.isEdit = false;\r\n this.isView = false;\r\n this.HolidayCalendarDatesList = [];\r\n this._commonSer.OpenModalHandler(\"addHoliday\");\r\n }\r\n\r\n\r\n /************************** Delete Holiday *********************************/\r\n\r\n showWarning: Boolean = false;\r\n deleteId = 0;\r\n IsDelete: Boolean = false;\r\n deleteHoliday(holiday) {\r\n this.deleteId = holiday.holidayId;\r\n this.showSuccess = false;\r\n this.showWarning = false;\r\n this.IsDelete = true;\r\n this.confirmBox = true;\r\n this.isView = false;\r\n this.showMessage = \"Are you sure, you want to delete this record?\";\r\n this._commonSer.OpenModalHandler(\"MessageModel\");\r\n \r\n\r\n }\r\n\r\n ConfirmDeleteAction() {\r\n debugger\r\n const params={\r\n Id:this.deleteId,\r\n deleteBy:this.UserId,\r\n formName :'Client Holiday',\r\n CmpCode: this.CmpCode,\r\n }\r\n \r\n try {\r\n this._commonSer.CloseModalHandler(\"MessageModel\");\r\n // this._holidaysServ.deleteHoliday(this.deleteId).subscribe((res) => {\r\n \r\n this.Http.deleteClientHoliday(params).then((res) =>{\r\n \r\n this.getAllHolidays();\r\n this.showMessage = res.message;\r\n this.IsDelete = false;\r\n this.deleteId = 0;\r\n this.confirmBox = false;\r\n this.showWarning = false;\r\n if (res.success == true) {\r\n //this.showSuccess = true;\r\n this.toaster.show(\"success\", \"Record Deleted Successfully\");\r\n } else {\r\n this.toaster.show(\"warning\", res.message);\r\n }\r\n\r\n //this._commonSer.OpenModalHandler(\"MessageModel\");\r\n });\r\n } catch (ex) {\r\n console.log(ex);\r\n this.getAllHolidays();\r\n }\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n setNavigationText() {\r\n let vm = this;\r\n vm.navigationText = \"\";\r\n\r\n let startDateString =\r\n vm.filterStartDate.getDate() +\r\n \" \" +\r\n vm.monthNamesList[vm.filterStartDate.getMonth()] +\r\n \" \" +\r\n vm.filterStartDate.getFullYear() +\r\n \"\";\r\n let endDateString =\r\n vm.filterEndDate.getDate() +\r\n \" \" +\r\n vm.monthNamesList[vm.filterEndDate.getMonth()] +\r\n \" \" +\r\n vm.filterEndDate.getFullYear() +\r\n \"\";\r\n\r\n vm.navigationText = startDateString + \" - \" + endDateString;\r\n }\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._holidaysServ.getlocationlist(parms).subscribe(\r\n (res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"locationId\",\r\n \"locationName\"\r\n );\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n console.log(error);\r\n }\r\n );\r\n }\r\n getAllFilterHolidays() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getFormattedDate(this.filterStartDate).toDateString(),\r\n EndDate: this.getFormattedDate(this.filterEndDate).toDateString(),\r\n LocationIds:\r\n this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n //FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n // UserId: this.currentUserId\r\n };\r\n\r\n this.commonService\r\n .CRG_PostAPI(\"Holiday/GetAllHoliday\", parms)\r\n .subscribe((res) => {\r\n const target = \"#exampleModalfilter2\";\r\n $(target).hide();\r\n const response = JSON.parse(JSON.parse(res[\"_body\"]).data);\r\n for (var j = 0; j < response.length; j++) {\r\n if (response[j].LocationIds) {\r\n var locationId = response[j].LocationIds.split(\",\");\r\n let name = [];\r\n for (var i = 0; i < locationId.length; i++) {\r\n if (this.locations.some((c) => c.id == locationId[i])) {\r\n name.push(_.find(this.locations, (e) => e.id == locationId[i]));\r\n }\r\n }\r\n response[j].LocationName = name.map((c) => c.text).join();\r\n }\r\n }\r\n this.holidays = response;\r\n this.myRequestsListLength = this.holidays.length;\r\n });\r\n }\r\n\r\n filterShow() {\r\n // this.getDepartmentList();\r\n // this.getAllDesigationList();\r\n //this.getAllLocationList();\r\n this.flterShowData = true;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.setNavigationText();\r\n this.getAllFilterHolidays();\r\n //this.getUserAvailabilityReport();\r\n }\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n // \r\n switch (placeHolder) {\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n // \r\n switch (_type) {\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n\r\n this.setNavigationText();\r\n this.getAllHolidays();\r\n }\r\n onChangeFilterPeriod(e) {\r\n let _period = e.srcElement.value;\r\n let currentDate = new Date();\r\n\r\n if (_period == 1) {\r\n // Yesterday\r\n currentDate.setDate(currentDate.getDate() - 1);\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 2) {\r\n // Today\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 3) {\r\n // Last Week\r\n let first = currentDate.getDate() - currentDate.getDay() - 7;\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 4) {\r\n // This Week\r\n let first = currentDate.getDate() - currentDate.getDay();\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 5) {\r\n // Last Month\r\n currentDate.setMonth(currentDate.getMonth() - 1);\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n } else if (_period == 6) {\r\n // This Month\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n } else if (_period == 7) {\r\n // Last Year\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear() - 1,\r\n currentDate.getMonth() - currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear() - 1,\r\n currentDate.getMonth() - currentDate.getMonth() + 12,\r\n 0\r\n );\r\n } else if (_period == 8) {\r\n // This Year\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() - currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() - currentDate.getMonth() + 12,\r\n 0\r\n );\r\n } else if (_period == 9) {\r\n // Custom\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n }\r\n\r\n this.setNavigationText();\r\n }\r\n\r\n Search() {\r\n //this.holidayList = this.tempholidayList;\r\n if (this.filterHoliday) {\r\n let filteredList = Object.assign([], this.holidays).filter(\r\n (hil) =>\r\n hil.HolidayTitle.toLowerCase().indexOf(\r\n this.filterHoliday.toLowerCase()\r\n ) > -1\r\n );\r\n this.holidays = filteredList;\r\n } else this.getAllHolidays();\r\n }\r\n\r\n endDateInvalid = false;\r\n endDateInvalidMessage = \"\";\r\n validateEndDate() {\r\n let res = this.datePipe.transform(\r\n this.holidayForm.value.holidayDate,\r\n \"dd-MM-yyyy\"\r\n );\r\n\r\n let endDate = this.datePipe.transform(\r\n this.holidayForm.value.endDate,\r\n \"dd-MM-yyyy\"\r\n );\r\n\r\n if (endDate < res) {\r\n // this.holidayForm.controls['endDate'].hasError()\r\n\r\n this.endDateInvalid = true;\r\n this.endDateInvalidMessage = \"End date should be valid.\";\r\n return false;\r\n } else {\r\n this.endDateInvalid = false;\r\n return true;\r\n }\r\n }\r\n\r\n datepickerStartDate($event1) {\r\n this.startDate = $event1;\r\n this.calculateDays();\r\n this.requiredHolidayDate = null;\r\n if (this.startDate == null ||\r\n this.startDate == undefined ||\r\n this.holidayForm.controls.holidayDate.value == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n }\r\n }\r\n datepickerEndDate($event1) {\r\n this.endDate = $event1;\r\n this.calculateDays();\r\n this.requiredHolidayDate = null;\r\n if (this.endDate == null ||\r\n this.endDate == undefined ||\r\n this.endDate == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n }\r\n }\r\n getFormattedDate(val: any) {\r\n if (val === null) {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year, month, day);\r\n }\r\n calculateDays() {\r\n let vw = this;\r\n let leaveStartDate = this.getFormattedDate(this.startDate);\r\n let leaveEndDate = this.getFormattedDate(this.endDate); // new Date(this.endDate);\r\n\r\n if (leaveStartDate != null && leaveEndDate != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList = this.getDates(leaveStartDate, leaveEndDate);\r\n for (let i = 0; i < arrayDatesList.length; i++) {\r\n let newData = new ClientholidayCalendarDates();\r\n newData.ClientholidayDate = arrayDatesList[i];\r\n newData.DayType = \"1\";\r\n vw.HolidayCalendarDatesList.push(newData);\r\n }\r\n }\r\n }\r\n\r\n getDates(startDate, stopDate) {\r\n let dateArray = new Array();\r\n let currentDate = startDate;\r\n while (currentDate <= stopDate) {\r\n dateArray.push(this.getFormattedDate(currentDate));\r\n currentDate.setDate(currentDate.getDate() + 1);\r\n }\r\n return dateArray;\r\n }\r\n\r\n setDayTypeValue(e, i) {\r\n let _value = e.srcElement.value;\r\n this.HolidayCalendarDatesList[i].DayType = _value;\r\n this.holidayForm.get(\"holidayType\").setValue(_value);\r\n }\r\n\r\n resetForm() {\r\n const target = \"#exampleModalfilter\";\r\n $(target).hide(\"slow\");\r\n \r\n this.filterEndDate= null;\r\n this.filterStartDate= null;\r\n this.filterPeriod=null;\r\n }\r\n export(): void {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'Client_Holiday_List.xlsx'\r\n };\r\n this.getAllLocations();\r\n (this.gridInstance.columns[4] as Column).visible = false;\r\n this.gridInstance.excelExport(excelExportProperties);\r\n }\r\n printList(printData) {\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n exportTableToCSV(filename) {\r\n var csv = [];\r\n var rows = document.getElementById(\"tableData\").querySelectorAll(\"table tr\");\r\n for (var i = 0; i < rows.length; i++) {\r\n var row = [], cols = rows[i].querySelectorAll(\"td, th\");\r\n for (var j = 0; j < cols.length-1; j++)\r\n row.push(cols[j].textContent);\r\n csv.push(row.join(\",\"));\r\n }\r\n\r\n // Download CSV file\r\n this.downloadCSV(csv.join(\"\\n\"), filename);\r\n }\r\n downloadCSV(csv, filename) {\r\n var csvFile;\r\n var downloadLink;\r\n\r\n // CSV file\r\n csvFile = new Blob([csv], { type: \"text/csv\" });\r\n\r\n // Download link\r\n downloadLink = document.createElement(\"a\");\r\n\r\n // File name\r\n downloadLink.download = filename;\r\n\r\n // Create a link to the file\r\n downloadLink.href = window.URL.createObjectURL(csvFile);\r\n\r\n // Hide download link\r\n downloadLink.style.display = \"none\";\r\n\r\n // Add the link to DOM\r\n document.body.appendChild(downloadLink);\r\n\r\n // Click download link\r\n downloadLink.click();\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class clientholidayService {\r\n constructor(private http: HttpClient, private authService: AuthService) {}\r\n\r\n\r\nsaveHoliday(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n const URL = environment.apiUrl + \"/Holiday/PostHoliday\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n}\r\n\r\ngetlocationlist(parm): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAlllocations\";\r\n return this.http\r\n .post(URL,parm,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n}\r\n\r\n\r\n deleteHoliday(HolidayId): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n let parms = {};\r\n const URL = environment.apiUrl + \"/Holiday/DeleteHoliday?holidayId=\"+HolidayId;\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllHoliday(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Holiday/GetAllHoliday\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n

    Compensatory Off Requests

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n   {{financialYearText}}  \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data.employeeName}}\r\n \r\n\r\n \r\n {{ data.empCode }}\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n {{dateformat(data.workedDate)}}\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n Full Day\r\n Half Day\r\n Quarter Day\r\n {{ country.duration }}\r\n \r\n \r\n {{ country.duration }}\r\n   \r\n {{ country.unitText }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {{dateformat(data.expiryDate)}}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {{dateformat(country.createdDate)}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n\r\n \r\n\r\n
    \r\n \r\n
      \r\n
    • View\r\n
    • \r\n\r\n \r\n
    • Edit\r\n \r\n
    • \r\n \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Compensatory Off Request

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n Employee name is required *\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n Project name is required *\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n Worked date is required *\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n Unit is required *\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n Hrs\r\n
    \r\n
    \r\n
    \r\n Duration is required *\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n \r\n {{datValue}}\r\n \r\n \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Leave Description is required *\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Are you sure? You want to cancel this compensatory off request?

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n This field is mandatory\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{ showMessage }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n","import { Component, OnInit,QueryList,ChangeDetectionStrategy,\r\n ViewChildren,\r\n Directive,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild, } from '@angular/core';\r\nimport { LeaveService } from \"./../leave.service\";\r\nimport { FormGroup, FormBuilder, Validators } from \"@angular/forms\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap/datepicker\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { DatePipe } from '@angular/common';\r\nimport { DatePickerComponent } from '@syncfusion/ej2-angular-calendars';\r\nimport { state } from '@angular/animations';\r\nimport { environment } from \"src/app/environment\";\r\nimport { ToasterService } from '../../expense/toaster/toaster.service';\r\nimport { GridComponent ,Column, ExcelExportProperties} from '@syncfusion/ej2-angular-grids';\r\n\r\n\r\n\r\n\r\ninterface Country {\r\n empCode?: any;\r\n WorkedDate: any;\r\n ExpiryDate: any;\r\n duration: number;\r\n status: string;\r\n createdDate: string;\r\n}\r\n\r\nexport type SortColumn = keyof Country | \"\";\r\nexport type SortDirection = \"asc\" | \"desc\" | \"\";\r\nconst rotate: { [key: string]: SortDirection } = {\r\n asc: \"desc\",\r\n desc: \"\",\r\n \"\": \"asc\",\r\n};\r\nconst compare = (v1: string, v2: string) => (v1 < v2 ? -1 : v1 > v2 ? 1 : 0);\r\n\r\nexport interface SortEvent {\r\n column: SortColumn;\r\n direction: SortDirection;\r\n}\r\n\r\n@Directive({\r\n selector: \"th[sortable]\",\r\n host: {\r\n \"[class.asc]\": 'direction === \"asc\"',\r\n \"[class.desc]\": 'direction === \"desc\"',\r\n \"(click)\": \"rotate()\",\r\n },\r\n})\r\nexport class NgbdSortableHeader {\r\n @Input() sortable: SortColumn = \"\";\r\n @Input() direction: SortDirection = \"\";\r\n @Output() sort = new EventEmitter();\r\n\r\n rotate() {\r\n this.direction = rotate[this.direction];\r\n this.sort.emit({ column: this.sortable, direction: this.direction });\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-comp-off',\r\n templateUrl: './comp-off.component.html',\r\n styleUrls: ['./comp-off.component.css'],\r\n // changeDetection: ChangeDetectionStrategy.OnPush\r\n\r\n})\r\nexport class CompOffComponent implements OnInit {\r\n @ViewChild('ejDatePicker') ejDatePicker: DatePickerComponent;\r\npublic targetElement: HTMLElement;\r\npublic placeholder: String = 'Date of Birth';\r\n datePickerConfiq: Partial;\r\n compLeaveApply: FormGroup;\r\n allLeaveTypeList: any;\r\n allHolidayList: any;\r\n currentUserId: any;\r\n submitted = false;\r\n leaveStartFrom: Date;\r\n userLoader: Boolean = false;\r\n collection: any[];\r\n public showSuccess: Boolean;\r\n public showMessage: string;\r\n page = 1;\r\n pageSize = 10;\r\n COUNTRIES: Country[] = [];\r\n parms;\r\n collectionSize: any;\r\n startDateChange;\r\n minDate: Date;\r\n bsValue: Date = new Date();\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n myDateValue;\r\n startDate: any;\r\n endDate: any;\r\n userAvalLeave: any;\r\n mytime: Date = new Date();\r\n DateFormat:any\r\n unitValue: number;\r\n selectHours: boolean = true;\r\n private selectedLink: any = 1;\r\n currentDate: any;\r\n todatlEmployeeList: any;\r\n employeName: any;\r\n employeCode: any;\r\n\r\n ddlEmployeeUserId: any;\r\n EmployeeList = [];\r\n ActiveEmployee = [];\r\n\r\n workedDate: Date;\r\n expiryDate: Date;\r\n\r\n generalSettingsData: any;\r\n DayTypeSelectList = [];\r\n todaysDate: Date;\r\n ViewPermission:boolean\r\n canApplyCompOff: Boolean = true;\r\n DeletePermission:boolean\r\n editMode = false;\r\n LocalDataPermission:any\r\n cancelCompOffReason: any = \"\";\r\n isCancelReasonMandatory: Boolean = false;\r\n isCancelReasonTextboxEmpty: Boolean = true;\r\n CmpCode:any;\r\n EditPermission:boolean\r\n AddPermission:boolean\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public employeeFields: Object = { text: 'text', value: 'id' };\r\n public durationFields: Object = { text: 'text', value: 'val' };\r\n public employeetext: string = \"Please select an employee\"\r\n public durationtext: string = \"Select duration\"\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n public value: any ;\r\n public leaveDuration = [{text: \"Full Day\", val: \"1\"},\r\n {text: \"Half Day\", val: \"2\"},\r\n {text: \"Quarter Day\", val: \"3\"}]\r\n \r\n\r\n //--------DatePicker-------\r\n public today: Date = new Date();\r\n public currentYear: number = this.today.getFullYear();\r\n public currentMonth: number = this.today.getMonth();\r\n public currentDay: number = this.today.getDate();\r\n public dateValue: Object = new Date(new Date().setDate(14));\r\n public minCalDate: Object = new Date(this.currentYear, this.currentMonth, 1);\r\n public maxCalDate: Object = new Date(this.currentYear, this.currentMonth, 27);\r\n ProjectCode: any;\r\n ProjectName: any;\r\n ProjectList: any;\r\n ProjectFields: any;\r\n myno: number;\r\n maxdate: any;\r\n financialYearText: any;\r\n currentFinancialYearId: any;\r\n prevFinancialYearId: any;\r\n nextFinancialYearId: any;\r\n currentyear: number ;\r\n year: any ;\r\n view: boolean = true;\r\n //-------------------------\r\n\r\n constructor(\r\n private _leaveSer: LeaveService,\r\n private _fb: FormBuilder,\r\n private _authSer: AuthService,\r\n private _commonSer: CommonService,\r\n private toasterService:ToasterService,\r\n private datePipe: \r\n DatePipe\r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.unitValue = 1;\r\n\r\n this._authSer.IsPermissions('Compensatory Off');\r\n this.LocalDataPermission = this._authSer.LocalDataPermission;\r\n if (this.LocalDataPermission == '' || this.LocalDataPermission === null || this.LocalDataPermission === undefined) {\r\n this.LocalDataPermission[0].addPermission = 0;\r\n this.LocalDataPermission[0].editPermission = 0;\r\n this.LocalDataPermission[0].viewpermission = 0;\r\n this.LocalDataPermission[0].deletePermission = 0;\r\n }\r\n this.ViewPermission = this.LocalDataPermission[0].viewpermission //this.CurrentUser.permission.includes(Permission.ProjectPhaseView);\r\n this.AddPermission = this.LocalDataPermission[0].addPermission; //this.CurrentUser.permission.includes(Permission.ProjectPhaseAdd);\r\n this.EditPermission = this.LocalDataPermission[0].editPermission //this.CurrentUser.permission.includes(Permission.ProjectPhaseEdit);\r\n this.DeletePermission = this.LocalDataPermission[0].deletePermission; //this.CurrentUser.permission.includes(Permission.ProjectPhaseDelete);\r\n // this.ArchivePermission = this.LocalDataPermission[0].addPermission; //this.CurrentUser.permission.includes(Permission.ProjectArchive); \r\n }\r\n\r\n ngOnInit() {// Angular Lifecycle hook\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.ProjectFields = { text: 'projectname', value: 'projectid' };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n \r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.DateFormat= this._authSer.getdateFormat();\r\n // this.minDate.setDate(this.minDate.getDate() - 1);\r\n // var now = new Date() ;\r\n // let converDate = now.setDate(now.getDate() + 90);\r\n // this.currentDate = converDate\r\n this.myno = 123\r\n this.maxdate = new Date()\r\n this.compLeaveApply = this._fb.group({\r\n CompOffId: [\"\"],\r\n UserId: [, Validators.required],\r\n WorkedDate: [\"\", Validators.required],\r\n ProjectId: [0, Validators.required],\r\n Unit: [1, Validators.required],\r\n Duration: [\"1\", Validators.required],\r\n ExpiryDate: [\"\"],\r\n WorkedStartTime: [\"\"],\r\n WorkedEndTime: [\"\"],\r\n Description: [\"\"],\r\n CreatedBy: [\"\"],\r\n CmpCode:[\"\"]\r\n });\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n this.getProjectsListForSelect(this.currentUserId);\r\n this.compLeaveApply.patchValue({\r\n UserId: this.currentUserId,\r\n Unit: 1,\r\n Duration: \"1\"\r\n });\r\n });\r\n\r\n this.todaysDate = new Date();\r\n\r\n this.getEmployeesListForSelect();\r\n this.getAllLeaveType1();\r\n this.getAllHolidaysLsist();\r\n this.getAllLeave();\r\n this.userAvaliableLeave();\r\n this.getEmplyeDetails();\r\n this.getGeneralSettingsData();\r\n this.getCurrentFinancialYear();\r\n this.editMode = false;\r\n }\r\n \r\n\r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {// Created By K Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n \r\n //DateFormat='MM/dd/yyyy';\r\n \r\n getCurrentFinancialYear() {// Created By K Getting Current financial year details\r\n debugger\r\n this._leaveSer.getCurrentFinancialYear(this.CmpCode).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n });\r\n }\r\n \r\n dateformat(datas:string){// Created By K Global Date Format\r\n return this._authSer.Dateformat(datas);\r\n\r\n }\r\n\r\n toRoleid:any\r\n getEmployeesListForSelect () {// Created By A Getting all employees list\r\n debugger\r\n this._leaveSer.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.todatlEmployeeList = res['data'].table;\r\n if (res['data'].table != null && res['data'].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n var roleid=this._authSer.getRoleId()\r\n if(roleid==\"1\" || roleid==\"2\" ||roleid==\"10\")\r\n {\r\n // this.todatlEmployeeList.push({userId:0,employeeCodeName:\"My Team\"})\r\n this.toRoleid=0\r\n \r\n }\r\n // For Dashboard Emplyee Select List\r\n this.EmployeeList = this._commonSer.SetDDlDropdownfor(res[\"data\"].table, 'userId', 'employeeCodeName',this.toRoleid);\r\n const selectedEmp = this.todatlEmployeeList.find(x => x.userId === this.currentUserId);\r\n if(this.toRoleid==0) \r\n {\r\n if(res[\"data\"].table.length==1)\r\n {\r\n if (selectedEmp !== undefined) {\r\n const empValue = { 'id': selectedEmp.userId, 'text': selectedEmp.employeeCodeName };\r\n this.value=selectedEmp.userId\r\n \r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n }, 0);\r\n }\r\n }\r\n else\r\n {\r\n if (selectedEmp !== undefined) {\r\n this.value=0\r\n \r\n // const empValue = { 'id': selectedEmp.userId, 'text': selectedEmp.employeeCodeName };\r\n const empValue = { 'id': 0, 'text': \"My Team\" };\r\n \r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n }, 0);\r\n }\r\n }\r\n \r\n }\r\n else{\r\n if (selectedEmp !== undefined) {\r\n const empValue = { 'id': selectedEmp.userId, 'text': selectedEmp.employeeCodeName };\r\n this.value=selectedEmp.userId\r\n\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n }, 0);\r\n }\r\n \r\n }\r\n });\r\n }\r\n\r\n getProjectsListForSelect (val) {// Created By A Get All Employees\r\n \r\n this._leaveSer.getProjectsListForSelect(val,this.CmpCode).subscribe((res) => {\r\n debugger\r\n this.todatlEmployeeList = res['data'].table;\r\n if (res['data'].table != null && res['data'].table.length > 0) {\r\n this.ProjectName = res[\"data\"].table[0].projectname;\r\n this.ProjectCode = res[\"data\"].table[0].projectid;\r\n }\r\n this.ProjectList = res['data'].table\r\n \r\n \r\n });\r\n }\r\n\r\n getFinancialYearDetailsback(evnt, financialYearId) {// Created By K Getting Previous financial year details\r\n debugger\r\n \r\n \r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => {\r\n \r\n \r\n this._leaveSer.getFinancialYearDetails(res.data.table1[0].prevId, cmp).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n this.currentyear = today.getFullYear();\r\n this.year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"none\"\r\n elementTypeList.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"auto\"\r\n elementTypeList.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n \r\n this.getAllLeave();\r\n \r\n \r\n });\r\n });\r\n }\r\n\r\n getFinancialYearDetailsForwrd(evnt, financialYearId) {// Created By K Get Next Financial year details\r\n debugger\r\n \r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n this.currentyear = today.getFullYear();\r\n this.year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"none\"\r\n elementTypeList.style.pointerEvents = \"none\"\r\n // elementHoliday.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n \r\n // elementAddLeave.style.pointerEvents = \"auto\"\r\n elementTypeList.style.pointerEvents = \"auto\"\r\n // elementHoliday.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n \r\n this.getAllLeave(); \r\n \r\n });\r\n }\r\n ddlSelection(value: any, placeHolder: any) {// Created By K Global Controller For Fields Updates\r\n debugger;\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value.item.innerText);\r\n this.ddlEmployeeUserId =value.item.id\r\n this.getAllLeave();\r\n this.userAvaliableLeave();\r\n break;\r\n\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n\r\n\r\n export(): void {// Created By K Export as Comp-off Lits as excel\r\n debugger\r\n (this.Grid.columns[0] as Column).visible = true;\r\n\r\n (this.Grid.columns[2] as Column).visible = true;\r\n (this.Grid.columns[4] as Column).visible = true;\r\n (this.Grid.columns[5] as Column).visible = false;\r\n (this.Grid.columns[8] as Column).visible = true;\r\n (this.Grid.columns[9] as Column).visible = false;\r\n (this.Grid.columns[10] as Column).visible = true;\r\n (this.Grid.columns[11] as Column).visible = false;\r\n (this.Grid.columns[12] as Column).visible = true;\r\n (this.Grid.columns[13] as Column).visible = true;\r\n\r\n (this.Grid.columns[14] as Column).visible = true;\r\n\r\n\r\n\r\n\r\n\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'daily-report.xlsx'\r\n };\r\n this.Grid.excelExport(excelExportProperties);\r\n }\r\n Duration:any\r\n chkButtonView:boolean=true\r\n selectedItem:any\r\n disName:boolean;\r\n checkItem:any\r\n InviteEdituser(data,type){ // Created By A Initialize edit and view comp-off\r\n debugger\r\n\r\n let date = this.datePipe.transform(data.workedDate, 'MM-dd-yyyy')\r\n \r\n this.getProjectsListForSelect(data.employeeId);\r\n if(type=='view'){\r\n this.disName=true\r\n this.chkButtonView=false\r\n this.dateValue=date\r\n this.view = false\r\n \r\n\r\n this.Duration=data.duration\r\n this.selectedItem=data.duration\r\n this.compLeaveApply.setValue({\r\n CompOffId:data.compOffId,\r\n UserId: data.employeeId,\r\n ProjectId: data.projectid,\r\n WorkedDate:date,\r\n Unit:data.unit,\r\n Duration:data.duration,\r\n ExpiryDate:data.expiryDate,\r\n WorkedStartTime:data.workedStartTime,\r\n WorkedEndTime:data.workedEndTime,\r\n Description:data.description,\r\n CreatedBy:data.userId,\r\n CmpCode:this.CmpCode,\r\n })\r\n setTimeout(() => {\r\n this.compLeaveApply.controls[\"ProjectId\"].patchValue(data.projectid) \r\n }, 500);\r\n \r\n this.checkItem=data.unit\r\n this.compLeaveApply.get('Duration').setValue(data.duration);\r\n this.datValue=this.dateformat(data.expiryDate)\r\n if(this.datValue)\r\n {\r\n this.setValue=true\r\n\r\n }\r\n\r\n }\r\n else{\r\n this.editMode=true\r\n this.chkButtonView=true\r\n this.dateValue=date\r\n this.view = true\r\n this.Duration=data.duration\r\n this.compLeaveApply.setValue({\r\n CompOffId:data.compOffId,\r\n UserId: data.employeeId,\r\n WorkedDate:date,\r\n Unit:data.unit,\r\n ProjectId: data.projectid,\r\n Duration:data.duration,\r\n ExpiryDate:data.expiryDate,\r\n WorkedStartTime:data.workedStartTime,\r\n WorkedEndTime:data.workedEndTime,\r\n Description:data.description,\r\n CreatedBy:data.userId,\r\n CmpCode:this.CmpCode,\r\n })\r\n setTimeout(() => {\r\n this.compLeaveApply.controls[\"ProjectId\"].patchValue(data.projectid) \r\n }, 500);\r\n this.datValue=this.dateformat(data.expiryDate)\r\n this.checkItem=data.unit\r\n this.compLeaveApply.get('Duration').setValue(data.duration);\r\n if(this.datValue)\r\n {\r\n this.setValue=true\r\n }\r\n\r\n\r\n }\r\n }\r\n showDeleteModel(data){// Created By A\r\n\r\n }\r\n setradio(_value: any): void {// Created By A Initialize unit of days\r\n this.selectedLink = _value;\r\n this.checkItem=_value\r\n if (_value == 1) {\r\n this.compLeaveApply.patchValue({\r\n Duration: \"1\"\r\n });\r\n } else {\r\n this.compLeaveApply.patchValue({\r\n Duration: \"01.00\"\r\n });\r\n }\r\n this.checkItem=_value\r\n }\r\n isSelected(name: any): boolean {// Created By K\r\n debugger\r\n if (!this.selectedLink) { // if no radio button is selected, always return false so every nothing is shown\r\n return false;\r\n }\r\n \r\n return (this.selectedLink === name); // if current radio button is selected, return true, else return false\r\n }\r\n\r\n selectUnit(unit) {// Created By A \r\n this.selectHours = true;\r\n }\r\n selectUnit1(unit) {// Created By A\r\n this.selectHours = false;\r\n }\r\n\r\n getEmplyeDetails() {// Created By A Getting employees details\r\n this._leaveSer.getEmployeeDetails(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n //this.todatlEmployeeList = res['data'].table\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n });\r\n }\r\n\r\n dateRangeCreated($event1) {// Created By A Create date intervals\r\n this.startDate = $event1;\r\n this.minDate = this.startDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n let now = new Date(this.startDate);\r\n //let converDate: any = now.setDate(now.getDate() + 90);\r\n\r\n let _expireDate;\r\n if (this.generalSettingsData.creditedLeaveExpiresAfterType == 1) {\r\n _expireDate = now.setDate(now.getDate() + this.generalSettingsData.creditedLeaveExpiresAfter);\r\n } else if (this.generalSettingsData.creditedLeaveExpiresAfterType == 2) {\r\n _expireDate = now.setMonth(now.getMonth() + this.generalSettingsData.creditedLeaveExpiresAfter);\r\n } else {\r\n _expireDate = now.setDate(now.getDate() + 90); // Default\r\n }\r\n this.currentDate = new Date(_expireDate);\r\n\r\n this.workedDate = this.getFormattedDate($event1);\r\n this.expiryDate = this.getFormattedDate(this.currentDate);\r\n }\r\n dateRangeCreated1($event1) {// Created By A\r\n this.minDate = this.startDate;\r\n }\r\n totalData:any=[]\r\n getAllLeave() {// Created By A get all aplied comp-off\r\n debugger;\r\n let currentID = this.ddlEmployeeUserId; //this.currentUserId;\r\n this.parms = {\r\n UserId: currentID,\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n SortType: \"desc\",\r\n FinancialYearId: this.currentFinancialYearId,\r\n FieldName: \"CreatedDate\",\r\n Condition: \"\",\r\n CmpCode:this.CmpCode\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getAllCompLeave(this.parms).subscribe((res) => {\r\n debugger;\r\n this.userLoader = false;\r\n this.COUNTRIES = res[\"data\"].table;\r\n this.totalData=this.COUNTRIES\r\n this.checkLength=this.COUNTRIES\r\n this.totallength=this.COUNTRIES.length\r\n this.checkLength=this.totalData.filter(x=>x.status==\"Pending\")\r\n this.pendingLength=this.checkLength.length\r\n this.checkLength=this.totalData.filter(x=>x.status==\"Approved\")\r\n this.approvedLength=this.checkLength.length\r\n \r\n this.checkLength=this.totalData.filter(x=>x.status==\"Rejected\")\r\n this.rejectedLength=this.checkLength.length\r\n this.collectionSize = this.COUNTRIES.length;\r\n });\r\n }\r\n\r\n userAvaliableLeave() {// Created By A get availability detail\r\n this.userLoader = true;\r\n this._leaveSer.getAvailableLeaveBalance(this.currentUserId, 0,this.CmpCode).subscribe(res => {\r\n this.userLoader = false;\r\n this.userAvalLeave = res['data'].table;\r\n });\r\n }\r\n workdateError: boolean = true;\r\n openApplyCompOffModal() {// Created By A // Created By A information modal\r\n this.popUPCloseReset();\r\n this.datValue=\"\"\r\n this.view = true\r\n this.disName=false\r\n this.chkButtonView=true\r\n this.workdateError = false;\r\n if (this.canApplyCompOff === true) {\r\n this._commonSer.OpenModalHandler(\"applyLeaveMode\");\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = \"Compensatory Off request cannot be completed. Please contact administrator.\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n }\r\n popUPCloseReset() {// Created By A Reset modal\r\n this.compLeaveApply.reset();\r\n this.compLeaveApply.patchValue({\r\n UserId: this.currentUserId,\r\n Unit: 1,\r\n Duration: \"1\"\r\n });\r\n this.selectedLink = 1;\r\n\r\n if (this.generalSettingsData.unitsAllowed == 1 || this.generalSettingsData.unitsAllowed == 3) {\r\n this.compLeaveApply.patchValue({\r\n Unit: 1\r\n });\r\n this.setradio(1);\r\n } else if (this.generalSettingsData.unitsAllowed == 2 || this.generalSettingsData.unitsAllowed == 3) {\r\n this.compLeaveApply.patchValue({\r\n Unit: 2\r\n });\r\n this.setradio(2);\r\n }\r\n\r\n this.canApplyCompOff = true;\r\n if (this.generalSettingsData.compensatoryRequestMode == 1) {\r\n this.canApplyCompOff = false;\r\n }\r\n\r\n this.editMode = false;\r\n }\r\n selectLeaveID(selectId) {// Created By A\r\n this.compLeaveApply.patchValue({\r\n LeaveTypeId: selectId,\r\n UserId: this.currentUserId,\r\n });\r\n }\r\n getAllLeaveType1() {// Created By K Get all leave types\r\n this._leaveSer.getAllLeavetype(this.CmpCode).subscribe((response) => {\r\n this.allLeaveTypeList = response.data.table;\r\n });\r\n }\r\n\r\n getAllHolidaysLsist() {// Created By K All holidays list\r\n const parms = {};\r\n this._leaveSer.getAllHolidayList(parms).subscribe((response) => {\r\n this.allHolidayList = response.data.table;\r\n });\r\n }\r\n get f() {\r\n return this.compLeaveApply.controls;\r\n }\r\n getFormattedDate(val: any) {// Created By A Date Format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year, month, day);\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {// Created By A Backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n convertCSharpDateToFormattedDate(val: any) {// Created By A Backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n //return new Date(year + \"-\" + (month + 1) + \"-\" + day + \" 00:00:00\");\r\n return new Date(year, month, day);\r\n }\r\n\r\n selectedEmp: any;\r\n selectedWorkDate: any;\r\n selectedDuration: any;\r\n selectedExpDate: any;\r\n\r\n getDate:any\r\n setValue:boolean=false\r\n datValue:any\r\n selectWorkDate(val){// Created By A on Work date Select\r\n debugger;\r\n this.selectedWorkDate = val; \r\n this.compLeaveApply.controls.WorkedDate.setValue(val);\r\n console.log(this.selectedWorkDate);\r\n var date=this.datePipe.transform(this.selectedWorkDate, 'MM/dd/yyyy')\r\n this._leaveSer.getcompDate(date,this.CmpCode).subscribe((res) => {\r\n debugger;\r\n var date=res['data']\r\n \r\n if(date.table[0].type==0)\r\n {\r\n this.setValue=false\r\n this.getDate=date.table[0].expiredate\r\n this.datValue=this.dateformat(this.getDate)\r\n this.compLeaveApply.controls.ExpiryDate.setValue(this.getCSharpFormattedDate(this.getDate));\r\n }\r\n else{\r\n this.setValue=true\r\n this.getDate=date.table[0].expiredate\r\n this.datValue=this.dateformat(this.getDate)\r\n \r\n this.compLeaveApply.controls.ExpiryDate.setValue(this.getCSharpFormattedDate(this.getDate));\r\n }\r\n\r\n }\r\n )\r\n }\r\n\r\n selectDuration(val){// Created By A On Duration select\r\n this.selectedExpDate = val; \r\n this.compLeaveApply.controls.Duration.setValue(val) ;\r\n console.log(this.selectedExpDate);\r\n }\r\n\r\n \r\n selectEmp(val){// Created By A On Employee Select\r\n this.selectedEmp = val;\r\n this.getProjectsListForSelect(val);\r\n this.compLeaveApply.controls.UserId.setValue(val) ;\r\n console.log(this.selectedEmp);\r\n }\r\n selectProj(val){// Created By A On Project Select\r\n debugger\r\n this.compLeaveApply.controls.WorkedDate.setValue(null) ;\r\n let data = this.ProjectList.filter(x => x.projectid == val.value)\r\n this.maxdate = new Date(data[0].actualdate)\r\n }\r\n closeAllModals() {// Created By A Modal reset\r\n // this._commonSer.CloseModalHandler('requestDetailsModal');\r\n // this._commonSer.CloseModalHandler('requestApprovalModal');\r\n // this._commonSer.CloseModalHandler('bulkRequestsApprovalModal');\r\n // this._commonSer.CloseModalHandler('userMessageModel');\r\n this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n}\r\n // Apply Comoff\r\n applyLeave() {// Created By K On submit apply comp-off \r\n debugger;\r\n this.submitted = true;\r\n if (this.compLeaveApply.invalid) {\r\n return;\r\n }\r\n\r\n if(this.compLeaveApply.controls[\"ProjectId\"].value == null){\r\n this.compLeaveApply.controls[\"ProjectId\"].patchValue(0)\r\n }\r\n\r\n this.userLoader = true;\r\n // let startDate = this.compLeaveApply.value.LeaveStartDate;\r\n // let endDate = this.compLeaveApply.value.LeaveEndDate;\r\n // var date1: any = new Date(startDate);\r\n // var date2: any = new Date(endDate);\r\n // var diffDays: any = (date2 - date1) / (1000 * 60 * 60 * 24); \r\n if(this.compLeaveApply.controls.ExpiryDate.value)\r\n {\r\n this.compLeaveApply.patchValue({\r\n ExpiryDate:this.datePipe.transform(this.compLeaveApply.controls.ExpiryDate.value, 'MM/dd/yyyy'),\r\n \r\n Unit: this.selectedLink,\r\n CmpCode:this._authSer.getcompanyCode(),\r\n CreatedBy:this._authSer.getUserId()\r\n });\r\n }\r\n else if(this.compLeaveApply.controls.WorkedDate.value)\r\n {\r\n this.compLeaveApply.patchValue({\r\n WorkedDate:this.datePipe.transform(this.compLeaveApply.controls.WorkedDate.value, 'MM/dd/yyyy'),\r\n Unit: this.selectedLink,\r\n CmpCode:this._authSer.getcompanyCode(),\r\n CreatedBy:this._authSer.getUserId()\r\n });\r\n }\r\n else{\r\n this.compLeaveApply.patchValue({\r\n WorkedDate:this.datePipe.transform(this.selectedWorkDate, 'MM/dd/yyyy'),\r\n ExpiryDate:this.datePipe.transform(this.experyDate, 'MM/dd/yyyy'),\r\n Unit: this.selectedLink,\r\n CmpCode:this._authSer.getcompanyCode(),\r\n CreatedBy:this._authSer.getUserId()\r\n });\r\n }\r\n \r\n this.showSuccess = true;\r\n if( this.compLeaveApply.value.CompOffId==null) \r\n {\r\n this.compLeaveApply.patchValue({\r\n CompOffId: 0\r\n });\r\n }\r\n this.compLeaveApply.patchValue({\r\n WorkedDate:this.datePipe.transform(this.compLeaveApply.controls.WorkedDate.value, 'MM/dd/yyyy'),\r\n \r\n });\r\n if(this.checkItem !=undefined)\r\n {\r\n this.compLeaveApply.patchValue({\r\n Unit:this.checkItem\r\n \r\n });\r\n \r\n }\r\n \r\n this._leaveSer.applyCompLeave(this.compLeaveApply.value).subscribe(\r\n (response) => {\r\n if(response.success == false){\r\n this.toasterService.show(\"error\",response.message);\r\n this.userLoader = false;\r\n return\r\n }else{\r\n this.userLoader = false;\r\n this.submitted = false;\r\n this.showMessage = response.message;\r\n this.datValue=\"\"\r\n //console.log(response);\r\n if (response.success == true) {\r\n //this.compLeaveApply.reset();\r\n this.showMessage = response.data;\r\n this.datValue=\"\"\r\n \r\n this.getAllLeave();\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.datValue=\"\"\r\n \r\n }\r\n this.closeAllModals()\r\n this.toasterService.show(\"success\",this.showMessage);\r\n \r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.popUPCloseReset();\r\n // this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n }\r\n \r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toasterService.show(\"error\",this.showMessage);\r\n this.datValue=\"\"\r\n\r\n //this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.popUPCloseReset();\r\n this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n }\r\n );\r\n }\r\n\r\n // onSort({ column, direction }: SortEvent) {\r\n // this.headers.forEach((header) => {\r\n // if (header.sortable !== column) {\r\n // header.direction = \"\";\r\n // }\r\n // });\r\n\r\n // if (direction === \"\" || column === \"\") {\r\n // this.COUNTRIES = this.COUNTRIES;\r\n // } else {\r\n // this.COUNTRIES = [...this.COUNTRIES].sort((a, b) => {\r\n // const res = compare(`${a[column]}`, `${b[column]}`);\r\n // return direction === \"asc\" ? res : -res;\r\n // });\r\n // }\r\n // }\r\n\r\n // get countries(): Country[] {\r\n // return this.COUNTRIES.map((country, i) => ({\r\n // id: i + 1,\r\n // ...country,\r\n // })).slice(\r\n // (this.page - 1) * this.pageSize,\r\n // (this.page - 1) * this.pageSize + this.pageSize\r\n // );\r\n // }\r\n\r\n // General Settings Data\r\n getGeneralSettingsData() {// Created By A Get leaves genral settings info\r\n this._leaveSer.getGeneralSettings(this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n this.generalSettingsData = res[\"data\"];\r\n // this.setDayListDDL();\r\n this.canApplyCompOff = true;\r\n if (this.generalSettingsData.compensatoryRequestMode == 1) {\r\n this.canApplyCompOff = false;\r\n }\r\n\r\n if (this.generalSettingsData.unitsAllowed == 1 || this.generalSettingsData.unitsAllowed == 3) {\r\n this.compLeaveApply.patchValue({\r\n Unit: 1\r\n });\r\n this.setradio(1);\r\n } else if (this.generalSettingsData.unitsAllowed == 2 || this.generalSettingsData.unitsAllowed == 3) {\r\n this.compLeaveApply.patchValue({\r\n Unit: 2\r\n });\r\n this.setradio(2);\r\n }\r\n\r\n if (this.generalSettingsData.leaveCancellationReasonMandatory == true) {\r\n this.isCancelReasonMandatory = true;\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n // setDayListDDL() {\r\n // this.DayTypeSelectList = [];\r\n\r\n // if (this.generalSettingsData.durationAllowedFullDay == true) {\r\n // this.DayTypeSelectList.push({ value: \"1\", text: \"Full Day\" });\r\n // }\r\n // if (this.generalSettingsData.durationAllowedHalfDay == true) {\r\n // this.DayTypeSelectList.push({ value: \"2\", text: \"Half Day\" });\r\n // }\r\n // if (this.generalSettingsData.durationAllowedQuarterDay == true) {\r\n // this.DayTypeSelectList.push({ value: \"3\", text: \"Quarter Day\" });\r\n // }\r\n // }\r\n experyDate:any \r\n selectChangeExpiryDate(val)// Created By A\r\n {\r\n debugger;\r\n this.experyDate=val\r\n\r\n }\r\n\r\n calculateDuration() {// Created By A Comp-off duration calculation\r\n let start = this.compLeaveApply.value.WorkedStartTime;\r\n let end = this.compLeaveApply.value.WorkedEndTime;\r\n if (start != null && end != null) {\r\n if (this.isSelected(2)) {\r\n let a = start.split(':'); // split it at the colons\r\n let b = end.split(':');\r\n // minutes are worth 60 seconds. Hours are worth 60 minutes.\r\n let seconds = a.length == 3 ? (+a[0]) * 60 * 60 + (+a[1]) * 60 + (+a[2]) : (+a[0]) * 60 * 60 + (+a[1]) * 60;\r\n let second2 = b.length == 3 ? (+b[0]) * 60 * 60 + (+b[1]) * 60 + (+a[2]) : (+b[0]) * 60 * 60 + (+b[1]) * 60;\r\n let duration = second2 - seconds;\r\n let totalDuration = new Date(duration * 1000).toISOString().substr(11, 8);\r\n\r\n let hour = totalDuration.split(':')[0];\r\n let minutes = totalDuration.split(':')[1];\r\n let ddlDuration = this.getNearestHalfHourTimeString(hour, minutes);\r\n //alert(ddlDuration);\r\n this.compLeaveApply.patchValue({\r\n Duration: ddlDuration.trim()\r\n });\r\n }\r\n }\r\n }\r\n\r\n getNearestHalfHourTimeString(hour, minutes) {// Created By A Get hours and minutes\r\n let _hr = 0;\r\n let _min = \"00\";\r\n if (minutes < 15) {\r\n minutes = \"00\";\r\n } else if (minutes < 45) {\r\n minutes = \"30\";\r\n } else {\r\n minutes = \"00\";\r\n ++hour;\r\n }\r\n if (hour > 23) {\r\n hour = 12;\r\n } else if (hour > 12) {\r\n hour = hour - 12;\r\n } else if (hour == 0) {\r\n hour = 12;\r\n }\r\n\r\n if (hour > 9) {\r\n hour = 9;\r\n if (minutes == \"30\") {\r\n minutes = \"00\";\r\n }\r\n }\r\n\r\n _hr = hour;\r\n if (minutes == \"00\") {\r\n _min = \"00\";\r\n } else if (minutes = \"30\") {\r\n _min = \"50\";\r\n }\r\n\r\n return(_hr + \".\" + _min);\r\n }\r\n\r\n\r\n // Edit Compensatory off\r\n getCompOffDetails(compOffId: number, statusId: number) {// Created By A // Created By A Get comp-off detalis with id\r\n if (compOffId > 0 && statusId === 1) {\r\n let vm = this;\r\n vm.userLoader = true;\r\n vm._leaveSer.getCompOffDetailsForEdit(compOffId)\r\n .subscribe((response) => {\r\n vm.userLoader = false;\r\n if (response[\"success\"] == true) {\r\n vm.setCompOffFormData(response[\"data\"]);\r\n } else {\r\n vm.showSuccess = false;\r\n vm.showMessage = response[\"message\"];\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n }, (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n }\r\n showWarning: Boolean = false;\r\n deleteId = 0;\r\n IsDelete: Boolean = false;\r\n deleteHoliday(data) {// Created By A Initialize Confirmation modal\r\n this.deleteId = data.compOffId;\r\n this.showSuccess = false;\r\n this.showWarning = false;\r\n this.IsDelete = true;\r\n // this.confirmBox = true;\r\n // this.isView = false;\r\n this.showMessage = \"Are you sure, you want to delete this record?\";\r\n this._commonSer.OpenModalHandler(\"MessageModel\");\r\n \r\n\r\n }\r\n\r\n ConfirmDeleteAction() {// Created By A On Confirm delete\r\n debugger\r\n const params={\r\n Id:this.deleteId,\r\n // deleteBy:this.UserId,\r\n formName :'Client Holiday',\r\n CmpCode: this.CmpCode,\r\n }\r\n \r\n try {\r\n this._commonSer.CloseModalHandler(\"MessageModel\");\r\n \r\n // this.Http.deleteClientHoliday(params).then((res) =>{\r\n \r\n // this.getAllHolidays();\r\n // this.showMessage = res.message;\r\n // this.IsDelete = false;\r\n // this.deleteId = 0;\r\n // this.confirmBox = false;\r\n // this.showWarning = false;\r\n // if (res.success == true) {\r\n // //this.showSuccess = true;\r\n // this.toaster.show(\"success\", \"Record Deleted Successfully\");\r\n // } else {\r\n // this.toaster.show(\"warning\", res.message);\r\n // }\r\n\r\n // });\r\n } catch (ex) {\r\n console.log(ex);\r\n // this.getAllHolidays();\r\n }\r\n }\r\n\r\n // \r\n setCompOffFormData(compOffDetails) {// Created By A Set Form Data from DB\r\n this.popUPCloseReset();\r\n this.submitted = true;\r\n this.editMode = true;\r\n\r\n if (compOffDetails.unit == 1) {\r\n this.setradio(1);\r\n } else if (compOffDetails.unit == 2) {\r\n this.setradio(2);\r\n }\r\n\r\n this.compLeaveApply.patchValue({\r\n CompOffId: compOffDetails.compOffId,\r\n UserId: compOffDetails.userId,\r\n WorkedDate: this.convertCSharpDateToFormattedDate(compOffDetails.workedDate),\r\n Unit: compOffDetails.unit,\r\n Duration: compOffDetails.duration,\r\n ExpiryDate: this.convertCSharpDateToFormattedDate(compOffDetails.expiryDate),\r\n WorkedStartTime: compOffDetails.workedStartTime,\r\n WorkedEndTime: compOffDetails.workedEndTime,\r\n Description: compOffDetails.description,\r\n CreatedBy: compOffDetails.createdBy\r\n });\r\n\r\n this._commonSer.OpenModalHandler(\"applyLeaveMode\");\r\n }\r\n\r\n CancelCompOffRequest() {// Created By K Initialize Cancle comp-off\r\n this.cancelCompOffReason = \"\";\r\n this.isCancelReasonTextboxEmpty = false;\r\n\r\n this._commonSer.OpenModalHandler(\"confirmCancelModel\");\r\n }\r\n ConfirmCompOffCancel() {// Created By K On Confirm cancle comp-off\r\n this.isCancelReasonTextboxEmpty = false;\r\n if (this.isCancelReasonMandatory && (this.cancelCompOffReason == null || this.cancelCompOffReason.trim().length == 0)) {\r\n this.isCancelReasonTextboxEmpty = true;\r\n return;\r\n }\r\n\r\n let currentUserID = this.currentUserId;\r\n this.parms = {\r\n CompOffId: this.compLeaveApply.value.CompOffId,\r\n CancelReason: this.cancelCompOffReason,\r\n UserId: currentUserID,\r\n CmpCode:this.CmpCode\r\n };\r\n this.userLoader = true;\r\n this.showSuccess = true;\r\n this._leaveSer.cancelCompOffRequest(this.parms).subscribe((response) => {\r\n this.userLoader = false;\r\n this.getAllLeave();\r\n if (response.success === true) {\r\n this.compLeaveApply.reset();\r\n this.showSuccess = true;\r\n this.showMessage = response.data;\r\n this.closeAllModals()\r\n\r\n \r\n this.toasterService.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n // this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n this.userAvaliableLeave();\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.toasterService.show(\"success\",this.showMessage);\r\n this.closeAllModals()\r\n\r\n\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n }\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Something went's wrong, please try again.\";\r\n this.toasterService.show(\"success\",this.showMessage);\r\n this.closeAllModals()\r\n\r\n\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n console.log(error);\r\n });\r\n }\r\n \r\n recieptIMg: any;\r\n userImage(item) {// Created By K Convert users image URL in standard format \r\n // \r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n\r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n\r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n\r\n }\r\n approvedLength:any=0\r\n rejectedLength:any=0\r\n pendingLength:any=0\r\n totallength:any=0\r\n checkLength:any=[]\r\n active:any=0\r\n getlistbylegend(val)// Created By K Filters by legends\r\n {\r\n if(val==0)\r\n {\r\n this.active=0\r\n this.COUNTRIES=this.totalData\r\n }\r\n else\r\n if(val==1)\r\n {\r\n this.active=1\r\n this.COUNTRIES=[]\r\n this.COUNTRIES=this.totalData.filter(x=>x.status==\"Pending\")\r\n }\r\n else if(val==2)\r\n {\r\n this.active=2\r\n\r\n this.COUNTRIES=[]\r\n this.COUNTRIES=this.totalData.filter(x=>x.status==\"Approved\")\r\n\r\n }\r\n else if(val==3)\r\n {\r\n this.active=3\r\n\r\n this.COUNTRIES=[]\r\n this.COUNTRIES=this.totalData.filter(x=>x.status==\"Rejected\")\r\n\r\n \r\n }\r\ndebugger\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TabsModule as MkTabsModule } from 'angular-admin-lte';\r\nimport { TimepickerModule, BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { CompOffComponent, NgbdSortableHeader } from './comp-off.component';\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\nimport { DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\nimport { DatePickerModule } from '@syncfusion/ej2-angular-calendars';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n BoxModule, SelectModule,\r\n MkTabsModule,\r\n BoxModule,\r\n CoreModule,\r\n SelectModule,\r\n GridAllModule,\r\n PagerModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n DropDownListModule,\r\n DatePickerModule,\r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot()\r\n ],\r\n declarations: [CompOffComponent, NgbdSortableHeader]\r\n})\r\nexport class CompoffModule { }\r\n","\r\n
    \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n

    Holiday List

    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
      \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n
    • \r\n CSV\r\n
    • \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n {{dateformat(holiday.HolidayStartDate)}}\r\n \r\n\r\n \r\n \r\n \r\n\r\n
    \r\n {{holiday.LocationName}}\r\n
    \r\n
    \r\n All Locations\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n \r\n\r\n
    \r\n {{data.Description}}\r\n
    \r\n
    \r\n No Description Provided\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Manage Holiday

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n  \r\n *\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {{ requiredHolidayName }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n  \r\n *\r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
    \r\n {{ requiredHolidayDate }}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n {{endDateInvalidMessage}}\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ HolidayCalendarDatesList[i].HolidayDate | date }}\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    (Leaves that are already applied for this holiday will be reprocessed and the balance will be\r\n adjusted accordingly)\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Import File
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n

    View\r\n sample files to ensure you import files in the standard format.

    \r\n
    \r\n
    \r\n
    0\" >\r\n Results\r\n {{item}}
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { DatePipe } from \"@angular/common\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { UserService } from \"src/app/user/user.service\";\r\nimport { Component, OnInit, ViewChild, ElementRef } from \"@angular/core\";\r\nimport { LeaveService } from \"../leave.service\";\r\nimport {\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n FormControl,\r\n} from \"@angular/forms\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap/datepicker\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { Permission } from \"src/app/permission-keyword\";\r\nimport * as _ from \"lodash\";\r\nimport { ToasterService } from '../../expense/toaster/toaster.service';\r\nimport { HolidaysService } from \"./holidays.service\";\r\nimport { GridComponent,Column, ExcelExportProperties } from \"@syncfusion/ej2-angular-grids\";\r\nimport { ExpenseHttpService } from \"src/app/services/expense/expense-http.service\";\r\nimport { UploaderComponent } from \"@syncfusion/ej2-angular-inputs\";\r\n\r\n\r\nclass HolidayCalendarDates {\r\n HolidayId: number;\r\n HolidayDate: Date;\r\n DayType: string;\r\n}\r\n\r\n@Component({\r\n selector: \"app-holidays\",\r\n templateUrl: \"./holidays.component.html\",\r\n styleUrls: [\"./holidays.component.css\"],\r\n})\r\nexport class HolidaysComponent implements OnInit {\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n holidays = [];\r\n locations: any;\r\n selectedLocation: any;\r\n currentUser: any;\r\n holidayForm: FormGroup;\r\n searchString;\r\n collectionSize = 0;\r\n startDate: any;\r\n endDate: any;\r\n DateFormat:any\r\n showSuccess: boolean;\r\n showMessage: any;\r\n submitted: any;\r\n confirmBox: boolean;\r\n CheckJson: any;\r\n HolidayTypesVal = [];\r\n HolidayCalendarDatesList: HolidayCalendarDates[];\r\n\r\n holidayList: any;\r\n tempholidayList: any;\r\n userLoader: Boolean = false;\r\n filterHoliday = \"\";\r\n page: 1;\r\n pageSize: 4;\r\n\r\n gapi: any;\r\n auth2: any;\r\n Name: any;\r\n show: any;\r\n EditPermission: boolean;\r\n DeletePermission: boolean;\r\n ViewPermission: boolean;\r\n EditAllPermission: boolean;\r\n AddPermission: boolean;\r\n flterShowData = false;\r\n CurrentUser:any\r\n UserId: any;\r\n CmpCode:any;\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n @ViewChild('overviewgrid')\r\n public gridInstance: GridComponent;\r\n //GoogleAuth\r\n GoogleAuth: any; // Google Auth object.\r\n filterPeriod: number;\r\n navigationText: any;\r\n filterStartDate: Date;\r\n filterEndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n monthNamesList = [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"May\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\",\r\n ];\r\n\r\n // Validation Message\r\n requiredHolidayName: String = null;\r\n requiredHolidayDate: String = null;\r\n\r\n st: number;\r\n LocalDataPermission: any;\r\n\r\n @ViewChild(\"loginRef\") loginElement: ElementRef;\r\n // Http: any;\r\n\r\n constructor(\r\n private _holidaysServ: HolidaysService,\r\n private _authSer: AuthService,\r\n private _commonSer: CommonService,\r\n private _userService: UserService,\r\n private auth: AuthService,\r\n private commonService: CommonService,\r\n private datePipe: DatePipe,\r\n private Http: ExpenseHttpService,\r\n private toaster: ToasterService\r\n\r\n ) {\r\n debugger\r\n this.CmpCode = this.auth.getcompanyCode();\r\n this.auth.IsPermissions('Change Requests');\r\n this.LocalDataPermission = this.auth.LocalDataPermission;\r\n if (this.LocalDataPermission === '' || this.LocalDataPermission === null || this.LocalDataPermission === undefined) {\r\n this.LocalDataPermission[0].addPermission = 0;\r\n this.LocalDataPermission[0].editPermission = 0;\r\n this.LocalDataPermission[0].viewpermission = 0;\r\n this.LocalDataPermission[0].deletePermission = 0;\r\n }\r\n\r\n // this.auth.currentUser.subscribe(x => this.CurrentUser = x);\r\n this.ViewPermission = this.LocalDataPermission[0]?.viewpermission;\r\n this.AddPermission = this.LocalDataPermission[0]?.addPermission;\r\n this.EditPermission = this.LocalDataPermission[0]?.editPermission;\r\n this.DeletePermission = this.LocalDataPermission[0]?.deletePermission;\r\n\r\n }\r\n viwerrole:any;\r\n roleIds:any;\r\n btndisableimport: boolean = true;\r\n btndisableexport: boolean = true;\r\n currentDate = new Date();\r\n ngOnInit() {\r\n this.roleIds = this.auth.getRoleId();\r\n this.viwerrole=this.roleIds\r\n if (this.roleIds == \"1\") {\r\n\r\n }\r\n if (this.roleIds == \"2\") {\r\n this.btndisableimport = false;\r\n }\r\n if (this.roleIds == \"3\" || this.viwerrole==\"11\") {\r\n this.btndisableimport = false;\r\n this.btndisableexport = false;\r\n }\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.CmpCode = this.auth.getcompanyCode();\r\n // this.googleSDK();\r\n this.DateFormat= this._authSer.getdateFormat();\r\n // Set default filter\r\n this.filterPeriod = 8;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear() + \"-01-01 00:00:00\");\r\n this.filterEndDate = new Date(currentDate.getFullYear() + \"-12-31 00:00:00\");\r\n\r\n this.holidayForm = new FormGroup({\r\n holidayName: new FormControl(\"\", Validators.required),\r\n holidayDate: new FormControl(\"\", Validators.required),\r\n isRestrictedHoliday: new FormControl(\"\"),\r\n locations: new FormControl(\"\"),\r\n locationsParm: new FormControl(\"\"),\r\n Description: new FormControl(\"\"),\r\n DaysReminder: new FormControl(\"\"),\r\n notifyEmployees: new FormControl(\"\"),\r\n reprocessLeave: new FormControl(\"\"),\r\n createdBy: new FormControl(\"\"),\r\n CmpCode: new FormControl(\"\"),\r\n Id: new FormControl(\"\"),\r\n holidayType: new FormControl(\"\"),\r\n endDate: new FormControl(\"\"),\r\n holidayDatesList: new FormControl(\"\"),\r\n });\r\n\r\n this.auth.currentUser.subscribe((x) => {\r\n this.currentUser = x;\r\n this.UserId = this.currentUser.userId;\r\n });\r\n this.getAllLocations();\r\n }\r\n\r\n ImportFileExcel: any;\r\n ImportFileExcelName: any;\r\n onFileChangeImg(event){\r\n let IsCheckSize = event.target.files[0].size;\r\n if(IsCheckSize > 2097152){\r\n this.toaster.show(\"success\", 'Please Select a file smaller than 2MB');\r\n }else {\r\n this.ImportFileExcel = event.target.files[0];\r\n this.ImportFileExcelName = event.target.files[0].name;\r\n };\r\n }\r\n ImportFileData: any;\r\n importError = false;\r\n ImportFile() {\r\n try {\r\n this.importError = false;\r\n this.ImportFileData = undefined;\r\n \r\n } catch (ex) {\r\n\r\n }\r\n }\r\n handleFileInput(event) {\r\n let IsCheckSize = event.target.files[0].size;\r\n if(IsCheckSize > 2097152){\r\n this.toaster.show(\"success\", 'Please Select a file smaller than 2MB');\r\n }else {\r\n this.ImportFileData = event.target.files[0];\r\n $('#importFile').val('');\r\n };\r\n }\r\n UploadFileBtn() {\r\n $('#importFile').click();\r\n }\r\n errorData = [] ;\r\n @ViewChild('file') public uploadObj: UploaderComponent;\r\n SaveImportExcelData() {\r\n if (this.ImportFileExcel !== undefined) {\r\n let fd = new FormData();\r\n fd.append(\"file\", this.ImportFileExcel);\r\n fd.append(\"Cmpcode\", this.CmpCode);\r\n fd.append(\"userid\", this.UserId);\r\n fd.append(\"excelFileName\", \"organizationholidays\");\r\n this.Http.ImportExcelFiles(fd).then((res) => {\r\n if (res.success === true) {\r\n this.toaster.show(\"success\", \"Records Imported Successfully\");\r\n this.errorData = []\r\n this.uploadObj.clearAll();\r\n this.ngOnInit();\r\n this.commonService.CloseModalHandler('exampleModal3'); \r\n } else {\r\n this.errorData = res?.data?.split(\"*\");\r\n this.errorData[0] = \"Please Resolve the Below Errors\"\r\n this.ImportFileExcel = undefined;\r\n this.uploadObj.clearAll();\r\n this.toaster.show(\"warning\", \"Incorrect Records\");\r\n this.ngOnInit();\r\n }\r\n },(error) => {\r\n this.toaster.show(\"warning\", \"Uh oh, Something went wrong!\");\r\n });\r\n } else {\r\n this.toaster.show(\"error\", \"Please Select a file\");\r\n }\r\n }\r\n \r\n\r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n logText(i: number) {\r\n this.st = i;\r\n }\r\n\r\n //DateFormat='MM/dd/yyyy';\r\n \r\n \r\n \r\n dateformat(datas:string){\r\n return this._authSer.Dateformat(datas);\r\n // if (this.DateFormat=='1')\r\n // {\r\n // return this.datePipe.transform(datas, 'MM/dd/yyyy')\r\n \r\n // }\r\n // if(this.DateFormat=='2')\r\n // {\r\n // return this.datePipe.transform(datas, 'dd/MM/yyyy')\r\n // }\r\n // if(this.DateFormat== '3')\r\n // {\r\n // return this.datePipe.transform(datas, 'yyyy/MM/dd')\r\n // }\r\n }\r\n\r\n prepareLoginButton() {\r\n this.auth2.attachClickHandler(\r\n this.loginElement.nativeElement,\r\n {},\r\n (googleUser) => {\r\n let profile = googleUser.getBasicProfile();\r\n console.log(googleUser);\r\n let a = googleUser.getAuthResponse().access_token;\r\n let params = {\r\n UserId: this.UserId,\r\n AccessToken: googleUser.getAuthResponse().access_token,\r\n SyncType: this.st,\r\n };\r\n this._commonSer\r\n .CRG_PostAPI(\"Admin/SyncWithGoogleCalendar\", params)\r\n .subscribe((res) => {});\r\n },\r\n (error) => {\r\n alert(JSON.stringify(error, undefined, 2));\r\n }\r\n );\r\n }\r\n\r\n googleSDK() {\r\n window[\"googleSDKLoaded\"] = () => {\r\n window[\"gapi\"].load(\"auth2\", () => {\r\n this.auth2 = window[\"gapi\"].auth2.init({\r\n client_id:\r\n \"467170952999-rae30kmckqs7a4j4u7mk1dduu6p9a97b.apps.googleusercontent.com\",\r\n cookie_policy: \"single_host_origin\",\r\n scope:\r\n \"https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/calendar.events\",\r\n });\r\n\r\n this.prepareLoginButton();\r\n });\r\n };\r\n\r\n (function (d, s, id) {\r\n var js,\r\n fjs = d.getElementsByTagName(s)[0];\r\n if (d.getElementById(id)) {\r\n \r\n return;\r\n }\r\n js = d.createElement(s);\r\n js.id = id;\r\n js.src = \"https://apis.google.com/js/platform.js?onload=googleSDKLoaded\";\r\n fjs.parentNode.insertBefore(js, fjs);\r\n })(document, \"script\", \"google-jssdk\");\r\n }\r\n\r\n getAllLocations() {\r\n this._userService.getAllLocationsForSelect(this.CmpCode).subscribe((res: any) => {\r\n if (res.success) {\r\n this.locations = [];\r\n this.locations = _.map(res.data.table, (tableObj) => {\r\n return { id: tableObj.locationId, text: tableObj.locationName };\r\n });\r\n this.getAllHolidays();\r\n }\r\n });\r\n this.getAllLocationList();\r\n }\r\n selectedHoliday = [];\r\n\r\n holidayTypes = [\"Full Day\", \"First Half\", \"Second Half\"];\r\n\r\n getAllHolidays() {\r\n let par = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\", //'asc',\r\n FieldName: \"CreatedDate\",\r\n CmpCode:this.CmpCode\r\n };\r\n this.commonService\r\n .CRG_PostAPI(\"Holiday/GetAllHoliday\", par)\r\n .subscribe((res) => {\r\n const response = JSON.parse(JSON.parse(res[\"_body\"]).data);\r\n for (var j = 0; j < response.length; j++) {\r\n if (response[j].LocationIds) {\r\n var locationId = response[j].LocationIds.split(\",\");\r\n let name = [];\r\n for (var i = 0; i < locationId.length; i++) {\r\n if (this.locations.some((c) => c.id == locationId[i])) {\r\n name.push(_.find(this.locations, (e) => e.id == locationId[i]));\r\n }\r\n }\r\n response[j].LocationName = name.map((c) => c.text).join();\r\n }\r\n }\r\n this.holidays = response;\r\n this.myRequestsListLength = this.holidays.length;\r\n });\r\n }\r\n\r\n /************************** SAVE Holiday *********************************/\r\n onHolidayNameChanged() {\r\n this.requiredHolidayName = null;\r\n if (this.holidayForm.controls.holidayName.value == null || \r\n this.holidayForm.controls.holidayName.value == undefined ||\r\n this.holidayForm.controls.holidayName.value == \"\") {\r\n this.requiredHolidayName = \"Name is required.\";\r\n }\r\n }\r\n\r\n saveHoliday() {\r\n debugger;\r\n\r\n this.requiredHolidayName = null;\r\n this.requiredHolidayDate = null;\r\n\r\n console.clear();\r\n console.log(this.holidayForm);\r\n\r\n let isFormValid = true;\r\n if (this.holidayForm.controls.holidayName.value == null ||\r\n this.holidayForm.controls.holidayName.value == undefined ||\r\n this.holidayForm.controls.holidayName.value == \"\") {\r\n this.requiredHolidayName = \"Name is required.\";\r\n isFormValid = false;\r\n }\r\n\r\n if (this.holidayForm.controls.holidayDate.value == null ||\r\n this.holidayForm.controls.holidayDate.value == undefined ||\r\n this.holidayForm.controls.holidayDate.value == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n isFormValid = false;\r\n }\r\n\r\n if (this.holidayForm.controls.endDate.value == null ||\r\n this.holidayForm.controls.endDate.value == undefined ||\r\n this.holidayForm.controls.endDate.value == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n isFormValid = false;\r\n }\r\n\r\n //if (this.holidayForm.status === \"VALID\") {\r\n if (isFormValid === true) {\r\n if (!this.isEdit) {\r\n this.holidayForm.get(\"createdBy\").setValue(this.currentUser.userId);\r\n // this.holidayForm.controls[\"CmpCode\"].patchValue(this.CmpCode)\r\n }\r\n\r\n if (this.holidayForm.value.locationsParm != null && this.holidayForm.value.locationsParm != undefined) {\r\n this.holidayForm.value.locations = Array.prototype.map\r\n .call(this.holidayForm.value.locationsParm, (s) => s.id)\r\n .toString();\r\n }\r\n\r\n this.holidayForm.value.holidayType = this.HolidayCalendarDatesList[0].DayType;\r\n let vm = this;\r\n\r\n this.HolidayCalendarDatesList.forEach(function (part, index) {\r\n this[index].HolidayDate = vm\r\n .getFormattedDate(this[index].HolidayDate)\r\n .toDateString();\r\n }, this.HolidayCalendarDatesList); // use arr as this\r\n\r\n this.holidayForm.value.holidayDatesList = this.HolidayCalendarDatesList;\r\n\r\n let parms = {\r\n HolidayId:\r\n this.holidayForm.value.Id == null ? 0 : this.holidayForm.value.Id,\r\n HolidayTitle: this.holidayForm.value.holidayName,\r\n HolidayStartDate: this.getFormattedDate(\r\n this.holidayForm.value.holidayDate\r\n ).toDateString(),\r\n HolidayEndDate: this.getFormattedDate(\r\n this.holidayForm.value.endDate\r\n ).toDateString(),\r\n IsRestricted: this.holidayForm.value.isRestrictedHoliday,\r\n Locations: this.holidayForm.value.locations,\r\n DateJson: JSON.stringify(this.holidayForm.value.holidayDatesList),\r\n Description: this.holidayForm.value.Description,\r\n DaysReminder: this.holidayForm.value.DaysReminder,\r\n NotifyEmployees: this.holidayForm.value.notifyEmployees,\r\n ReprocessLeave: this.holidayForm.value.reprocessLeave,\r\n createdBy: this.holidayForm.value.createdBy,\r\n CmpCode: this.CmpCode,\r\n CreatedDate: this.holidayForm.value.CreatedDate,\r\n UpdatedDate: this.holidayForm.value.UpdatedDate,\r\n };\r\n\r\n this._holidaysServ.saveHoliday(parms).subscribe(\r\n (response) => {\r\n this.submitted = false;\r\n if (response.success == true) {\r\n this._commonSer.CloseModalHandler(\"MessageModel\");\r\n this.holidayForm.reset();\r\n this.showSuccess = true;\r\n this.showMessage = response.data;\r\n // this._commonSer.OpenModalHandler(\"MessageModel\");\r\n this.commonService.CloseModalHandler(\"addHoliday\");\r\n this.toaster.show(\"success\", this.showMessage);\r\n // this.closeModel('addmaster');\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.data;\r\n this._commonSer.OpenModalHandler(\"MessageModel\");\r\n }\r\n\r\n this.getAllHolidays();\r\n },\r\n (error) => {\r\n this.showSuccess = false;\r\n this.showWarning = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.OpenModalHandler(\"MessageModel\");\r\n }\r\n );\r\n }\r\n }\r\n\r\n /************************** Edit Holiday *********************************/\r\n\r\n isEdit = false;\r\n editHoliday(holiday) {\r\n this.holidayForm.reset();\r\n this.holidayForm.enable();\r\n var vm = this;\r\n this.holidayForm.patchValue({\r\n Id: holiday.HolidayId,\r\n holidayName: holiday.HolidayTitle,\r\n holidayDate: vm.getFormattedDate(holiday.HolidayStartDate),\r\n endDate: vm.getFormattedDate(holiday.HolidayEndDate),\r\n isRestrictedHoliday: holiday.IsRestricted,\r\n locations: holiday.LocationIds,\r\n Description: holiday.Description,\r\n DaysReminder: holiday.DaysReminder,\r\n notifyEmployees: holiday.NotifyEmployee,\r\n reprocessLeave: holiday.IsReprocess,\r\n });\r\n this.selectedLocation = [];\r\n if (holiday.LocationIds) {\r\n var val = holiday.LocationIds.split(\",\");\r\n for (var x = 0; x < val.length; x++) {\r\n this.selectedLocation.push(\r\n _.find(this.locations, (location) => location.id == val[x])\r\n );\r\n }\r\n\r\n this.selectedLocation = this.selectedLocation.filter(function (element) {\r\n return element !== undefined;\r\n });\r\n this.holidayForm.value.locationsParm = this.selectedLocation;\r\n }\r\n\r\n this.HolidayTypesVal = [];\r\n this.CheckJson = JSON.parse(holiday.DateJson);\r\n for (var i in this.CheckJson) {\r\n this.HolidayTypesVal.push(this.CheckJson[i].DayType);\r\n }\r\n\r\n let leaveStartDate1 = this.getFormattedDate(holiday.HolidayStartDate);\r\n let leaveEndDate1 = this.getFormattedDate(holiday.HolidayEndDate);\r\n\r\n if (leaveStartDate1 != null && leaveEndDate1 != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList1 = this.getDates(leaveStartDate1, leaveEndDate1);\r\n for (let i = 0; i < arrayDatesList1.length; i++) {\r\n let newData = new HolidayCalendarDates();\r\n newData.HolidayDate = arrayDatesList1[i];\r\n newData.DayType = this.HolidayTypesVal[i];\r\n this.HolidayCalendarDatesList.push(newData);\r\n }\r\n }\r\n\r\n this.commonService.OpenModalHandler(\"addHoliday\");\r\n this.holidayForm.enable();\r\n\r\n this.getAllHolidays();\r\n this.isView = false;\r\n this.isEdit = true;\r\n\r\n //this.holidayForm.get('locationsParm').markAsDirty();\r\n //this.holidayForm.markAsDirty();\r\n //this.holidayForm.valid = true;\r\n \r\n setTimeout(() => {\r\n //this.holidayForm.markAsTouched();\r\n //this.holidayForm.markAsDirty();\r\n\r\n //this.holidayForm.updateValueAndValidity();\r\n\r\n // this.holidayForm.get('locationsParm').setErrors(null);\r\n // this.holidayForm.get('locationsParm').markAsTouched();\r\n // this.holidayForm.get('locationsParm').markAsDirty();\r\n //console.log(this.holidayForm);\r\n }, 300);\r\n }\r\n /************************** View Holiday *********************************/\r\n\r\n isView = false;\r\n viewHoliday(holiday) {\r\n this.holidayForm.patchValue({\r\n Id: holiday.HolidayId,\r\n holidayName: holiday.HolidayTitle,\r\n holidayDate: new Date(holiday.HolidayStartDate),\r\n endDate: new Date(holiday.HolidayEndDate),\r\n isRestrictedHoliday: holiday.IsRestricted,\r\n locations: holiday.LocationIds,\r\n Description: holiday.Description,\r\n DaysReminder: holiday.DaysReminder,\r\n notifyEmployees: holiday.NotifyEmployee,\r\n reprocessLeave: holiday.IsReprocess,\r\n createdBy: holiday.CreatedBy,\r\n });\r\n\r\n this.selectedLocation = [];\r\n if (holiday.LocationIds) {\r\n var val = holiday.LocationIds.split(\",\");\r\n for (var x = 0; x < val.length; x++) {\r\n this.selectedLocation.push(\r\n _.find(this.locations, (location) => location.id == val[x])\r\n );\r\n }\r\n\r\n this.selectedLocation = this.selectedLocation.filter(function (element) {\r\n return element !== undefined;\r\n });\r\n }\r\n\r\n this.HolidayTypesVal = [];\r\n this.CheckJson = JSON.parse(holiday.DateJson);\r\n for (var i in this.CheckJson) {\r\n this.HolidayTypesVal.push(this.CheckJson[i].DayType);\r\n }\r\n\r\n let leaveStartDate1 = this.getFormattedDate(holiday.HolidayStartDate);\r\n let leaveEndDate1 = this.getFormattedDate(holiday.HolidayEndDate); // new Date(this.endDate);\r\n\r\n if (leaveStartDate1 != null && leaveEndDate1 != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList1 = this.getDates(leaveStartDate1, leaveEndDate1);\r\n for (let i = 0; i < arrayDatesList1.length; i++) {\r\n let newData = new HolidayCalendarDates();\r\n newData.HolidayDate = arrayDatesList1[i];\r\n newData.DayType = this.HolidayTypesVal[i];\r\n this.HolidayCalendarDatesList.push(newData);\r\n }\r\n }\r\n\r\n this.commonService.OpenModalHandler(\"addHoliday\");\r\n this.holidayForm.disable();\r\n this.isView = true;\r\n }\r\n\r\n /************************** New Holiday *********************************/\r\n\r\n newHoliday() {\r\n debugger;\r\n this.holidayForm.enable();\r\n this.holidayForm.reset();\r\n this.isEdit = false;\r\n this.isView = false;\r\n this.HolidayCalendarDatesList = [];\r\n this._commonSer.OpenModalHandler(\"addHoliday\");\r\n }\r\n\r\n\r\n /************************** Delete Holiday *********************************/\r\n\r\n showWarning: Boolean = false;\r\n deleteId = 0;\r\n IsDelete: Boolean = false;\r\n deleteHoliday(holiday) {\r\n this.deleteId = holiday.HolidayId;\r\n this.showSuccess = false;\r\n this.showWarning = false;\r\n this.IsDelete = true;\r\n this.confirmBox = true;\r\n this.isView = false;\r\n this.showMessage = \"Are you sure, you want to delete this record?\";\r\n this._commonSer.OpenModalHandler(\"MessageModel\");\r\n }\r\n\r\n ConfirmDeleteAction() {\r\n try {\r\n this._commonSer.CloseModalHandler(\"MessageModel\");\r\n this._holidaysServ.deleteHoliday(this.deleteId).subscribe((res) => {\r\n this.getAllHolidays();\r\n this.showMessage = res.message;\r\n this.IsDelete = false;\r\n this.deleteId = 0;\r\n this.confirmBox = false;\r\n this.showWarning = false;\r\n\r\n if (res.success == true) {\r\n //this.showSuccess = true;\r\n this.toaster.show(\"success\", \"Record Deleted Successfully\");\r\n } else {\r\n this.showSuccess = false;\r\n }\r\n\r\n //this._commonSer.OpenModalHandler(\"MessageModel\");\r\n });\r\n } catch (ex) {\r\n console.log(ex);\r\n this.getAllHolidays();\r\n }\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n setNavigationText() {\r\n let vm = this;\r\n vm.navigationText = \"\";\r\n\r\n let startDateString =\r\n vm.filterStartDate.getDate() +\r\n \" \" +\r\n vm.monthNamesList[vm.filterStartDate.getMonth()] +\r\n \" \" +\r\n vm.filterStartDate.getFullYear() +\r\n \"\";\r\n let endDateString =\r\n vm.filterEndDate.getDate() +\r\n \" \" +\r\n vm.monthNamesList[vm.filterEndDate.getMonth()] +\r\n \" \" +\r\n vm.filterEndDate.getFullYear() +\r\n \"\";\r\n\r\n vm.navigationText = startDateString + \" - \" + endDateString;\r\n }\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._holidaysServ.getlocationlist(parms).subscribe(\r\n (res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"locationId\",\r\n \"locationName\"\r\n );\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n console.log(error);\r\n }\r\n );\r\n }\r\n getAllFilterHolidays() {\r\n this.userLoader = true;\r\n let parms = {\r\n //Period: this.filterPeriod,\r\n StartDate: this.getFormattedDate(this.filterStartDate).toDateString(),\r\n EndDate: this.getFormattedDate(this.filterEndDate).toDateString(),\r\n LocationIds:\r\n this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n //FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n // UserId: this.currentUserId\r\n };\r\n\r\n this.commonService\r\n .CRG_PostAPI(\"Holiday/GetAllHoliday\", parms)\r\n .subscribe((res) => {\r\n const response = JSON.parse(JSON.parse(res[\"_body\"]).data);\r\n for (var j = 0; j < response.length; j++) {\r\n if (response[j].LocationIds) {\r\n var locationId = response[j].LocationIds.split(\",\");\r\n let name = [];\r\n for (var i = 0; i < locationId.length; i++) {\r\n if (this.locations.some((c) => c.id == locationId[i])) {\r\n name.push(_.find(this.locations, (e) => e.id == locationId[i]));\r\n }\r\n }\r\n response[j].LocationName = name.map((c) => c.text).join();\r\n }\r\n }\r\n this.holidays = response;\r\n this.myRequestsListLength = this.holidays.length;\r\n });\r\n }\r\n\r\n filterShow() {\r\n // this.getDepartmentList();\r\n // this.getAllDesigationList();\r\n //this.getAllLocationList();\r\n this.flterShowData = true;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.setNavigationText();\r\n this.getAllFilterHolidays();\r\n //this.getUserAvailabilityReport();\r\n }\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n // \r\n switch (placeHolder) {\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n // \r\n switch (_type) {\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n\r\n this.setNavigationText();\r\n this.getAllHolidays();\r\n }\r\n onChangeFilterPeriod(e) {\r\n let _period = e.srcElement.value;\r\n let currentDate = new Date();\r\n\r\n if (_period == 1) {\r\n // Yesterday\r\n currentDate.setDate(currentDate.getDate() - 1);\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 2) {\r\n // Today\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 3) {\r\n // Last Week\r\n let first = currentDate.getDate() - currentDate.getDay() - 7;\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 4) {\r\n // This Week\r\n let first = currentDate.getDate() - currentDate.getDay();\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 5) {\r\n // Last Month\r\n currentDate.setMonth(currentDate.getMonth() - 1);\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n } else if (_period == 6) {\r\n // This Month\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n } else if (_period == 7) {\r\n // Last Year\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear() - 1,\r\n currentDate.getMonth() - currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear() - 1,\r\n currentDate.getMonth() - currentDate.getMonth() + 12,\r\n 0\r\n );\r\n } else if (_period == 8) {\r\n // This Year\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() - currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() - currentDate.getMonth() + 12,\r\n 0\r\n );\r\n } else if (_period == 9) {\r\n // Custom\r\n this.filterStartDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth(),\r\n 1\r\n );\r\n this.filterEndDate = new Date(\r\n currentDate.getFullYear(),\r\n currentDate.getMonth() + 1,\r\n 0\r\n );\r\n }\r\n\r\n this.setNavigationText();\r\n }\r\n\r\n Search() {\r\n //this.holidayList = this.tempholidayList;\r\n if (this.filterHoliday) {\r\n let filteredList = Object.assign([], this.holidays).filter(\r\n (hil) =>\r\n hil.HolidayTitle.toLowerCase().indexOf(\r\n this.filterHoliday.toLowerCase()\r\n ) > -1\r\n );\r\n this.holidays = filteredList;\r\n } else this.getAllHolidays();\r\n }\r\n\r\n endDateInvalid = false;\r\n endDateInvalidMessage = \"\";\r\n validateEndDate() {\r\n let res = this.datePipe.transform(\r\n this.holidayForm.value.holidayDate,\r\n \"dd-MM-yyyy\"\r\n );\r\n\r\n let endDate = this.datePipe.transform(\r\n this.holidayForm.value.endDate,\r\n \"dd-MM-yyyy\"\r\n );\r\n\r\n if (endDate < res) {\r\n // this.holidayForm.controls['endDate'].hasError()\r\n\r\n this.endDateInvalid = true;\r\n this.endDateInvalidMessage = \"End date should be valid.\";\r\n return false;\r\n } else {\r\n this.endDateInvalid = false;\r\n return true;\r\n }\r\n }\r\n\r\n datepickerStartDate(event) {\r\n debugger\r\n this.startDate = event.value;\r\n this.calculateDays();\r\n this.requiredHolidayDate = null;\r\n if (this.startDate == null ||\r\n this.startDate == undefined ||\r\n this.holidayForm.controls.holidayDate.value == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n }\r\n }\r\n NewHolidayCalendarDatesList = [ {text: \"Full Day\", id: 1},\r\n {text: \"1st Half\", id: 2},\r\n {text: \"2nd Half\", id: 3} ]\r\n\r\n \r\n NewHolidayCalendarDatesListfield = {value: \"id\", text: \"text\"}\r\n datepickerEndDate(event) {\r\n debugger\r\n this.endDate = event.value;\r\n this.calculateDays();\r\n this.requiredHolidayDate = null;\r\n if (this.endDate == null ||\r\n this.endDate == undefined ||\r\n this.endDate == \"\") {\r\n this.requiredHolidayDate = \"Date is required.\";\r\n }\r\n }\r\n getFormattedDate(val: any) {\r\n if (val === null) {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year, month, day);\r\n }\r\n calculateDays() {\r\n let vw = this;\r\n let leaveStartDate = this.getFormattedDate(this.startDate);\r\n let leaveEndDate = this.getFormattedDate(this.endDate); // new Date(this.endDate);\r\n\r\n if (leaveStartDate != null && leaveEndDate != null) {\r\n this.HolidayCalendarDatesList = [];\r\n let arrayDatesList = this.getDates(leaveStartDate, leaveEndDate);\r\n for (let i = 0; i < arrayDatesList.length; i++) {\r\n let newData = new HolidayCalendarDates();\r\n newData.HolidayDate = arrayDatesList[i];\r\n newData.DayType = \"1\";\r\n vw.HolidayCalendarDatesList.push(newData);\r\n }\r\n }\r\n }\r\n\r\n getDates(startDate, stopDate) {\r\n let dateArray = new Array();\r\n let currentDate = startDate;\r\n while (currentDate <= stopDate) {\r\n dateArray.push(this.getFormattedDate(currentDate));\r\n currentDate.setDate(currentDate.getDate() + 1);\r\n }\r\n return dateArray;\r\n }\r\n\r\n setDayTypeValue(e, i) {\r\n let _value = e.value;\r\n this.HolidayCalendarDatesList[i].DayType = _value;\r\n this.holidayForm.get(\"holidayType\").setValue(_value);\r\n }\r\n\r\n resetForm() {\r\n const target = \"#exampleModalfilter\";\r\n $(target).hide(\"slow\");\r\n \r\n this.filterEndDate= null;\r\n this.filterStartDate= null;\r\n this.filterPeriod=null;\r\n }\r\n export(): void {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'Holiday_List.xlsx'\r\n };\r\n (this.gridInstance.columns[1] as Column).visible = false;\r\n this.gridInstance.excelExport(excelExportProperties);\r\n }\r\n printList(printData) {\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n exportTableToCSV(filename) {\r\n var csv = [];\r\n var rows = document.getElementById(\"tableData\").querySelectorAll(\"table tr\");\r\n for (var i = 0; i < rows.length; i++) {\r\n var row = [], cols = rows[i].querySelectorAll(\"td, th\");\r\n for (var j = 0; j < cols.length; j++)\r\n row.push(cols[j].textContent);\r\n csv.push(row.join(\",\"));\r\n }\r\n\r\n // Download CSV file\r\n this.downloadCSV(csv.join(\"\\n\"), filename);\r\n }\r\n downloadCSV(csv, filename) {\r\n var csvFile;\r\n var downloadLink;\r\n\r\n // CSV file\r\n csvFile = new Blob([csv], { type: \"text/csv\" });\r\n\r\n // Download link\r\n downloadLink = document.createElement(\"a\");\r\n\r\n // File name\r\n downloadLink.download = filename;\r\n\r\n // Create a link to the file\r\n downloadLink.href = window.URL.createObjectURL(csvFile);\r\n\r\n // Hide download link\r\n downloadLink.style.display = \"none\";\r\n\r\n // Add the link to DOM\r\n document.body.appendChild(downloadLink);\r\n\r\n // Click download link\r\n downloadLink.click();\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { HolidaysComponent } from './holidays.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TimepickerModule, BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { DynamicFormModule } from 'src/app/dynamic-form/dynamic-form.module';\r\nimport { CommonUtilModule } from '../../../services/common.module';\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\nimport { UploaderModule } from '@syncfusion/ej2-angular-inputs';\r\nimport { DatePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport { DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n NgbModule,\r\n BoxModule, SelectModule,\r\n GridAllModule,\r\n PagerModule,\r\n UploaderModule,\r\n DatePickerModule,\r\n DropDownListModule,\r\n DynamicFormModule, ReactiveFormsModule,\r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot(),CommonUtilModule,\r\n \r\n ],\r\n declarations: [HolidaysComponent]\r\n})\r\nexport class HolidaysModule {\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class HolidaysService {\r\n constructor(private http: HttpClient, private authService: AuthService) {}\r\n\r\n\r\nsaveHoliday(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Holiday/PostHoliday\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n}\r\ngetlocationlist(parm): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAlllocations\";\r\n return this.http\r\n .post(URL,parm,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n}\r\n\r\n\r\n deleteHoliday(HolidayId): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n let parms = {};\r\n const URL = environment.apiUrl + \"/Holiday/DeleteHoliday?holidayId=\"+HolidayId;\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllHoliday(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Holiday/GetAllHoliday\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Daily Report

    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{ navigationText }}

    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n    \r\n \r\n    \r\n \r\n\r\n \r\n\r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n
      \r\n \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n
    • \r\n CSV\r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data.empCode }}- \r\n {{ data.employeeName }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    0\">\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
      \r\n
    • Download PNG image
    • \r\n
    • Download JPEG image
    • \r\n
    • Download PDF document
    • \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n
      \r\n {{ item[0] }}\r\n
      \r\n
      \r\n \r\n
      \r\n
      \r\n
      \r\n
    • \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n No data available\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChildren, QueryList, ViewChild } from '@angular/core';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport * as Highcharts from 'highcharts';\r\nimport { GridComponent,ExcelExportProperties, Column } from \"@syncfusion/ej2-angular-grids\";\r\ndeclare let html2canvas: any;\r\n//import jsPDF from 'jspdf';\r\n\r\n@Component({\r\n selector: 'app-daily-report',\r\n templateUrl: './daily-report.component.html',\r\n styleUrls: ['./daily-report.component.css']\r\n})\r\nexport class DailyReportComponent implements OnInit {\r\n CmpCode:any;\r\n datePickerConfiq: Partial;\r\n\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n navigationText: any;\r\n\r\n flterShowData = false;\r\n\r\n filterDate: Date;\r\n\r\n // For User Dropdownlist\r\n filterLeaveTypeId: any;\r\n LeaveTypeList: any[];\r\n ddlLeaveTypeList: any[];\r\n ActiveLeaveTypes = [];\r\n\r\n filterDepartmentId: any;\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n ActiveDepartments = [];\r\n\r\n filterDesignationId: any;\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n ActiveDesignations = [];\r\n\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n\r\n catogries = [];\r\n reportList: any[];\r\n showchart = false;\r\n showlist = true;\r\n chartData = [];\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n\r\n highcharts = Highcharts;\r\n chartOptions = {\r\n chart : {\r\n plotBorderWidth: null,\r\n plotShadow: false\r\n },\r\n title : {\r\n text: 'Daily Report'\r\n },\r\n tooltip : {\r\n pointFormat: '{series.name}: {point.percentage:.1f}%'\r\n },\r\n plotOptions : {\r\n pie: {\r\n allowPointSelect: true,\r\n cursor: 'pointer',\r\n dataLabels: {\r\n enabled: true,\r\n format: '{point.name}%: {point.percentage:.1f} %',\r\n }\r\n }\r\n },\r\n series : [{\r\n type: 'pie',\r\n name: 'Daily Report',\r\n data: [[]]\r\n }]\r\n };\r\n\r\n IsShowMenu: Boolean = true;\r\n capturedImage: any;\r\n\r\n monthNamesList = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\r\n\r\n filterUserStatus: number = null;\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n recieptIMg: string;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService) {this.CmpCode = this._authSer.getcompanyCode(); }\r\n\r\n ngOnInit() {\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n });\r\n\r\n this.reportList = [];\r\n\r\n let currentDate = new Date();\r\n this.filterDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate());\r\n\r\n this.setNavigationText();\r\n this.getDailyReport();\r\n }\r\n\r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n \r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n filterShow() {\r\n this.getLeaveTypeList();\r\n this.getDepartmentList();\r\n this.getAllDesigationList();\r\n this.getAllLocationList();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n switch (placeHolder) {\r\n case \"LeaveType\":\r\n this.ActiveLeaveTypes = [];\r\n this.ActiveLeaveTypes.push(value);\r\n this.filterLeaveTypeId = value.id;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.ActiveDepartments.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.ActiveDesignations.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n switch (_type) {\r\n case \"LeaveType\":\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n getLeaveTypeList() {\r\n this._leaveService.getAllLeaveTypeForSelect(this.CmpCode).subscribe((res) => {\r\n this.LeaveTypeList = res[\"data\"].table;\r\n this.ddlLeaveTypeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"leaveTypeId\", \"leaveTypeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getDepartmentList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllDesigationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.setNavigationText();\r\n this.getDailyReport();\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n let currentDate = new Date();\r\n this.filterDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate());\r\n\r\n this.setNavigationText();\r\n }\r\n\r\n // Close Opened Dropdowns when clicking on new dropdown\r\n closeDropdownList(element) {\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n\r\n getChart() {\r\n this.showchart = true;\r\n this.showlist = false;\r\n this.chartOptions = {\r\n chart : {\r\n plotBorderWidth: null,\r\n plotShadow: false\r\n },\r\n title : {\r\n text: 'Daily Report'\r\n },\r\n tooltip : {\r\n pointFormat: '{series.name}: {point.y}'\r\n },\r\n plotOptions : {\r\n pie: {\r\n allowPointSelect: true,\r\n cursor: 'pointer',\r\n dataLabels: {\r\n enabled: true,\r\n format: '{point.name}: {point.y}',\r\n }\r\n }\r\n },\r\n series : [{\r\n type: 'pie',\r\n name: 'Number of Employees on this Leave',\r\n data: this.chartData\r\n }]\r\n };\r\n }\r\n\r\n getDailyRepo() {\r\n this.showchart = false;\r\n this.showlist = true;\r\n this.getDailyReport();\r\n }\r\n\r\n compressArray(original: any[]) {\r\n let compressed = [];\r\n // make a copy of the input array\r\n let copy = original.slice(0);\r\n\r\n // first loop goes over every element\r\n for (let i = 0; i < original.length; i++) {\r\n let myCount = 0;\r\n // loop over every element in the copy and see if it's the same\r\n for (let w = 0; w < copy.length; w++) {\r\n if (original[i] == copy[w]) {\r\n // increase amount of times duplicate is found\r\n myCount++;\r\n // sets item to undefined\r\n delete copy[w];\r\n }\r\n }\r\n\r\n if (myCount > 0) {\r\n let a = [];\r\n a.push(original[i]);\r\n a.push(myCount);\r\n a.push(\"#eee\");\r\n compressed.push(a);\r\n }\r\n }\r\n\r\n return compressed;\r\n }\r\n\r\n // Get Report\r\n getDailyReport() {\r\n if (this.showchart == true) {\r\n this.showlist = false;\r\n this.showchart = true;\r\n }\r\n\r\n this.userLoader = true;\r\n let parms = {\r\n Date: this.getCSharpFormattedDate(this.filterDate),\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getDailyReport(parms).subscribe((res) => {\r\n this.reportList = res[\"data\"];\r\n this.catogries = [];\r\n for (let value of this.reportList) {\r\n this.catogries.push(value.leaveTypeName);\r\n }\r\n this.chartData = this.compressArray(this.catogries);\r\n console.clear();\r\n console.log(this.chartData);\r\n this.userLoader = false;\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n // Navigation\r\n setNavigationText() {\r\n let vm = this;\r\n vm.navigationText = \"\";\r\n\r\n let dateString = vm.filterDate.getDate() + \" \" + vm.monthNamesList[vm.filterDate.getMonth()] + \" \" + vm.filterDate.getFullYear() + \"\";\r\n vm.navigationText = dateString;\r\n }\r\n\r\n navigatePrevious(e) {\r\n let vm = this;\r\n let startDate = new Date(vm.filterDate);\r\n startDate.setDate(startDate.getDate() - 1);\r\n\r\n this.filterDate = startDate;\r\n vm.setNavigationText();\r\n vm.getDailyReport();\r\n }\r\n\r\n navigateNext(e) {\r\n let vm = this;\r\n let startDate = new Date(vm.filterDate);\r\n startDate.setDate(startDate.getDate() + 1);\r\n\r\n this.filterDate = startDate;\r\n vm.setNavigationText();\r\n vm.getDailyReport();\r\n }\r\n userImage(item) {\r\n // \r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n \r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n \r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n \r\n }\r\n export(): void {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'daily-report.xlsx'\r\n };\r\n // this.UpdateForExport();\r\n //this.getLocationList();\r\n (this.Grid.columns[0] as Column).visible = true;\r\n this.Grid.excelExport(excelExportProperties);\r\n }\r\n\r\n printList(printData) {\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n exportTableToCSV() {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'daily-report.csv'\r\n };\r\n (this.Grid.columns[0] as Column).visible = true;\r\n this.Grid.csvExport(excelExportProperties);\r\n setTimeout(() => {\r\n (this.Grid.columns[0] as Column).visible = false;\r\n }, 2000);\r\n\r\n}\r\n\r\n // Export\r\n table0:any=[];\r\n table1:any=[];\r\n mergetable:any=[];\r\n ExportExcel() {\r\n debugger\r\n this.userLoader = true;\r\n let parms = {\r\n Date: this.getCSharpFormattedDate(this.filterDate),\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getDailyReport_Excel(parms).subscribe((res) => {\r\n let exportData = res[\"data\"];\r\n this.table0=exportData.table1;\r\n this.table1=exportData.table2;\r\n this.mergetable= this.table1.concat(this.table0)\r\n \r\n this.userLoader = false;\r\n this._commonSer.exportAsExcelFile(this.mergetable, 'Daily Report');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n downloadChart(_type) {\r\n let vm = this;\r\n this.IsShowMenu = false;\r\n html2canvas(document.querySelector(\"#dvChart\")).then(canvas => {\r\n let contentType = \"image/png\";\r\n let fileName = \"Daily_Report\";\r\n if (_type == 1) {\r\n contentType = \"image/png\";\r\n } else if (_type == 2) {\r\n contentType = \"image/jpeg\";\r\n } else if (_type == 3) {\r\n contentType = \"application/pdf\";\r\n }\r\n\r\n /// document.body.appendChild(canvas);\r\n this.capturedImage = canvas.toDataURL(\"image/jpeg\", 1.0);\r\n //console.log(\"canvas.toDataURL() -->\" + this.capturedImage);\r\n // this will contain something like (note the ellipses for brevity), console.log cuts it off \r\n // \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAa0AAAB3CAYAAACwhB/KAAAXr0lEQVR4Xu2dCdiNZf7HP/ZQkpQtaUxDjYYoTSYlURMhGlmKa...\"\r\n\r\n canvas.toBlob(function (blobData) {\r\n console.clear();\r\n console.log(blobData);\r\n // just pass blob to something expecting a blob\r\n // somfunc(blob);\r\n\r\n // Same as canvas.toDataURL(), just longer way to do it.\r\n // let reader = new FileReader();\r\n // debugger;\r\n // reader.readAsDataURL(blob);\r\n // reader.onloadend = function () {\r\n // let base64data = reader.result;\r\n // //console.log(\"Base64--> \" + base64data);\r\n\r\n // const blobData = vm.convertBase64ToBlobData(base64data.toString(), 'image/png', 512);\r\n\r\n // if (window.navigator && window.navigator.msSaveOrOpenBlob) { //IE\r\n // window.navigator.msSaveOrOpenBlob(blobData, fileName);\r\n // } else { // chrome\r\n // const blob = new Blob([blobData], { type: contentType });\r\n // const url = window.URL.createObjectURL(blob);\r\n // // window.open(url);\r\n // const link = document.createElement('a');\r\n // link.href = url;\r\n // link.download = fileName;\r\n // link.click();\r\n // }\r\n // };\r\n\r\n if (_type == 3) {\r\n vm.userLoader = true;\r\n // let pdf = new jsPDF();\r\n // pdf.addImage(vm.capturedImage, 'JPEG', 0, 0);\r\n // pdf.save(\"download.pdf\");\r\n\r\n let reader = new FileReader();\r\n reader.readAsDataURL(blobData);\r\n reader.onloadend = function () {\r\n let base64data = reader.result;\r\n let params = {\r\n base64Data: base64data,\r\n fileName: 'Daily Report'\r\n };\r\n // vm._leaveService.getReportPDFFromBase64(params).subscribe((res) => {\r\n // vm.userLoader = false;\r\n // let url = URL.createObjectURL(res);\r\n // let a = document.createElement(\"a\");\r\n // a.href = url;\r\n // a.download = \"Daily Report.pdf\";\r\n // a.click();\r\n // }, error => {\r\n // vm.userLoader = false;\r\n // console.log(error);\r\n // });\r\n\r\n try {\r\n vm._leaveService.getReportPDFFromBase64(params)\r\n .subscribe((res) => {\r\n vm.userLoader = false;\r\n let url = URL.createObjectURL(res);\r\n let a = document.createElement(\"a\");\r\n a.href = url;\r\n a.download = \"Daily Report.pdf\";\r\n a.click();\r\n });\r\n } catch (ex) {\r\n vm.userLoader = false;\r\n console.log(ex);\r\n }\r\n };\r\n } else {\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) { //IE\r\n window.navigator.msSaveOrOpenBlob(blobData, fileName);\r\n } else { // chrome\r\n const blob = new Blob([blobData], { type: contentType });\r\n const url = window.URL.createObjectURL(blob);\r\n // window.open(url);\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.download = fileName;\r\n link.click();\r\n }\r\n }\r\n });\r\n this.IsShowMenu = true;\r\n });\r\n }\r\n\r\n // convertBase64ToBlobData(base64Data: string, contentType: string = 'image/png', sliceSize = 512) {\r\n // const byteCharacters = atob(base64Data);\r\n // const byteArrays = [];\r\n\r\n // for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n // const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n\r\n // const byteNumbers = new Array(slice.length);\r\n // for (let i = 0; i < slice.length; i++) {\r\n // byteNumbers[i] = slice.charCodeAt(i);\r\n // }\r\n\r\n // const byteArray = new Uint8Array(byteNumbers);\r\n\r\n // byteArrays.push(byteArray);\r\n // }\r\n\r\n // const blob = new Blob(byteArrays, { type: contentType });\r\n // return blob;\r\n // }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Leave Balance Report

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n
      \r\n \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Day\r\n Hour\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChildren,ViewChild, QueryList } from '@angular/core';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { GridComponent ,Column, ExcelExportProperties, dataReady} from '@syncfusion/ej2-angular-grids';\r\nimport { ColumnModel, ResizeService,QueryCellInfoEventArgs } from '@syncfusion/ej2-angular-grids';\r\nimport { objectEach } from 'highcharts';\r\nimport { environment } from 'src/app/environment';\r\n\r\n@Component({\r\n selector: 'app-leave-balance-report',\r\n templateUrl: './leave-balance-report.component.html',\r\n styleUrls: ['./leave-balance-report.component.css']\r\n})\r\nexport class LeaveBalanceReportComponent implements OnInit {\r\n datePickerConfiq: Partial;\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n CmpCode:any;\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n filterDayHour: any;\r\n filterCurrentView: any;\r\n\r\n flterShowData = false;\r\n\r\n filterPeriod: number;\r\n\r\n filterStartDate: Date;\r\n filterEndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n\r\n filterType: number;\r\n\r\n // For Dropdownlist\r\n filterEmployeeId: any;\r\n EmployeeList: any[];\r\n ddlEmployeeList: any[];\r\n ActiveEmployees = [];\r\n\r\n filterLeaveTypeId: any;\r\n LeaveTypesList: any[];\r\n ddlLeaveTypeList: any[];\r\n ActiveLeaveTypes = [];\r\n\r\n filterDepartmentId: any;\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n ActiveDepartments = [];\r\n\r\n filterDesignationId: any;\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n ActiveDesignations = [];\r\n\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n\r\n filterUserStatus: number = null;\r\n\r\n reportList: any[];\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n filterSettings: any;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService) {this.CmpCode = this._authSer.getcompanyCode(); }\r\n // filterSettings:object\r\n // filter:object\r\n ngOnInit() {\r\n this.filterSettings = { type: \"CheckBox\" };\r\n // this.filter = { type: \"CheckBox\" };\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.reportList = [];\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n });\r\n\r\n this.filterDayHour = 1;\r\n this.filterCurrentView = 1;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n\r\n this.minDate = this.filterStartDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n\r\n this.maxDate = this.filterEndDate;\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n \r\n this.filterType = -1;\r\n this.checkValue=2\r\n\r\n this.getLeaveBalanceReport();\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n \r\n filterShow() {\r\n this.getLeaveTypeList();\r\n this.getEmployeeList();\r\n this.getDepartmentList();\r\n this.getAllDesigationList();\r\n this.getAllLocationList();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n public rowDB(args){\r\n // if(args.data[29][\"inActive\"] ==0){ \r\n // args.row.querySelector('tr').classList.add('background-yellow');\r\n // }\r\n }\r\n recieptIMg:any\r\n colCell:any=0\r\n customiseCell(args: any) {\r\n if(args.data[this.columnArray.length-2].inActive == 'Active'){\r\n debugger\r\n args.cell.style.backgroundColor=\"#fff\"\r\n }else{\r\n args.cell.style.backgroundColor=\"#eee\"\r\n }\r\n\r\n // if (args.column.field ==\"0.Employee Name\") {\r\n // debugger\r\n // args.cell.classList.add('below-0');\r\n // for(var i=0;i'+' '+args.data[0][\"Employee Name\"]\r\n // } \r\n \r\n var col=args.column.field\r\n var clName=col.split('.')\r\n const column = this.Grid.getColumnByField(args.column.field); \r\n column.headerText = clName[1]; \r\n if (args.data[this.columnArray.length-2]['inActive']=='InActive'||args.data['inActive']==0) { \r\n args.cell.classList.add('background-yellow');\r\n //args.cell.classList.add('below-30'); \r\n\r\n }\r\n\r\n\r\n if (args.column.field ==\"0.Employee Name\") {\r\n debugger\r\n args.cell.classList.add('below-0');\r\n for(var i=0;i'+' '+args.data[0][\"Employee Name\"]\r\n // args.cell.innerHTML = \" '+' '+args.data[0][\"Employee Name\"]\r\n }\r\n \r\n }\r\n \r\n \r\n // this.colCell=this.colCell+1\r\n \r\n \r\n } \r\n this.Grid.refreshHeader();\r\n\r\n \r\n}\r\n\r\n\r\n\r\nload() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n}\r\n\r\n\r\n\r\n\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployees = [];\r\n this.ActiveEmployees.push(value);\r\n this.filterEmployeeId = value.id;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.ActiveLeaveTypes.push(value);\r\n this.filterLeaveTypeId = value.id;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.ActiveDepartments.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.ActiveDesignations.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n switch (_type) {\r\n case \"Employee\":\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n getEmployeeList() {\r\n this._leaveService.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.EmployeeList = res['data'].table;\r\n this.ddlEmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getLeaveTypeList() {\r\n this._leaveService.getAllLeaveTypeForSelect(this.CmpCode).subscribe((res) => {\r\n this.LeaveTypesList = res[\"data\"].table;\r\n this.ddlLeaveTypeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"leaveTypeId\", \"leaveTypeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getDepartmentList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllDesigationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.getLeaveBalanceReport();\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n this.filterType = -1;\r\n }\r\n\r\n onChangeFilterPeriod(e) {\r\n let _period = e.srcElement.value;\r\n let currentDate = new Date();\r\n\r\n if (_period == 1) { // Yesterday\r\n currentDate.setDate(currentDate.getDate() - 1);\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 2) { // Today\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 3) { // Last Week\r\n let first = (currentDate.getDate() - currentDate.getDay()) - 7;\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 4) { // This Week\r\n let first = currentDate.getDate() - currentDate.getDay();\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 5) { // Last Month\r\n currentDate.setMonth(currentDate.getMonth() - 1);\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n } else if (_period == 6) { // This Month\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n }\r\n }\r\n // export(): void {\r\n // debugger\r\n // const excelExportProperties: ExcelExportProperties = {\r\n // fileName: 'daily-report.xlsx'\r\n // };\r\n // this.Grid.excelExport(excelExportProperties);\r\n // }\r\n\r\n printList(printData) {\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n// exportTableToCSV() {\r\n// debugger\r\n// const excelExportProperties: ExcelExportProperties = {\r\n// fileName: 'daily-report.csv'\r\n// };\r\n// this.Grid.csvExport(excelExportProperties);\r\n\r\n// }\r\n onChangeFilterType(e) {\r\n console.clear();\r\n console.log(e);\r\n console.log(this.filterType);\r\n }\r\n\r\n // Close Opened Dropdowns when clicking on new dropdown\r\n closeDropdownList(element) {\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n\r\n onDPStartDateChange(e) {\r\n this.filterStartDate = e;\r\n this.minDate = new Date(this.filterStartDate);\r\n this.minDate.setDate(this.minDate.getDate());\r\n }\r\n onDPEndDateChange(e) {\r\n this.filterEndDate = e;\r\n this.maxDate = new Date(this.filterEndDate);\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n }\r\n\r\n // Get Report\r\n \r\n columnArray:any=[]\r\n employeeName:any\r\n ejsGridData:any=[]\r\n newArray:any=[]\r\n public columns: ColumnModel[];\r\n columnArrayfor:any=[]\r\n unPaidArray:any=[]\r\n paidArray:any=[]\r\n newTotalArray:any=[]\r\n paidUnpaidLeave:any=[]\r\n paidLeave:any=[]\r\n onDutyList:any=[]\r\n newDutyList:any=[]\r\n myRequestsListLength:any\r\n getLeaveAllBalanceData:any=[]\r\n unpaidListCount:any\r\n paidListCount:any\r\n onDutyListCount:any\r\n getArr:any=[]\r\n newarr=[];\r\n \r\n collect(...a) {\r\n var ret = {};\r\n this.newarr=[]\r\n this.getArr=[]\r\n var len = arguments.length;\r\n for (var i = 0; i < len; i++) {\r\n for (var p in arguments[i]) {\r\n if (arguments[i].hasOwnProperty(p)) {\r\n ret[p] = arguments[i][p];\r\n }\r\n }\r\n \r\n }\r\n return ret\r\n}\r\ncheckValue:any\r\nsetFilterDayHour(value) {\r\n this.filterDayHour = value;\r\n if(value==1)\r\n {\r\n this.checkValue=2\r\n this.getLeaveBalanceReport();\r\n\r\n }\r\n else{\r\n this.checkValue=1\r\n this.getLeaveBalanceReportForLeave();\r\n\r\n }\r\n}\r\n\r\nnewArrayList:any\r\nuserid:any\r\nuserId:any\r\ngetLeaveBalanceReportForLeave() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveBalanceReport(parms).subscribe((res) => {\r\n debugger\r\n this.reportList = res[\"data\"];\r\n this.userLoader = false;\r\n // empCode: \"\"\r\n // employeeId: 20580\r\n // employeeName: \"Lovish Kalra \"\r\n // inActive: false\r\n // isdeleted: false\r\n // userId: 20580\r\n this.columnArray=[]\r\n this.ejsGridData=[]\r\n this.employeeName='Employee Name'\r\n this.getLeaveAllBalanceData=[]\r\n this.userid=\"inActive\"\r\n this.userId=\"userId\"\r\n this.getLeaveAllBalanceData = res['data'];\r\n this.myRequestsListLength = this.getLeaveAllBalanceData.length;\r\n this.columnArray.push(this.employeeName)\r\n this.paidArray=this.getLeaveAllBalanceData[0].paidLeavesList\r\n this.unPaidArray=this.getLeaveAllBalanceData[0].unpaidLeavesList\r\n this.paidListCount = this.getLeaveAllBalanceData[0].paidLeavesList.length;\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n this.onDutyListCount = this.getLeaveAllBalanceData[0].onDutyLeavesList.length;\r\n this.onDutyList=this.getLeaveAllBalanceData[0].onDutyLeavesList\r\n this.newDutyList=this.onDutyList.concat(this.unPaidArray)\r\n this.newTotalArray=this.paidArray.concat(this.newDutyList)\r\n var totalCount= this.paidListCount+this.unpaidListCount\r\n for(var i=0;i< this.newTotalArray.length;i++)\r\n {\r\n this.columnArray.push(this.newTotalArray[i].leaveTypeName)\r\n }\r\n this.columnArray.push(this.userid)\r\n this.columnArray.push(this.userId)\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n\r\n\r\n for(var i=0;i< this.getLeaveAllBalanceData.length;i++)\r\n {\r\n for(var j=0;j0 && j<=this.paidListCount){\r\n var data=this.getLeaveAllBalanceData[i].paidLeavesList[j-1].leaveCount\r\n }\r\n else if(j>this.paidListCount&&j<=totalCount) {\r\n var count=this.paidListCount+1\r\n var data=this.getLeaveAllBalanceData[i].unpaidLeavesList[j-count].leaveCount\r\n }\r\n else\r\n {\r\n\r\n var count=totalCount+1\r\n if(j==this.columnArray.length-2)\r\n {\r\n if(this.getLeaveAllBalanceData[i].inActive==true)\r\n {\r\n data='InActive'\r\n }\r\n else\r\n {\r\n data='Active'\r\n }\r\n }\r\n else if(j==this.columnArray.length-1)\r\n {\r\n if(this.getLeaveAllBalanceData[i].userId)\r\n {\r\n data=this.getLeaveAllBalanceData[i].userId\r\n }\r\n\r\n }\r\n else \r\n {\r\n if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n {\r\n var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n // if(j==this.columnArray.length-1)\r\n // {\r\n \r\n\r\n // if(this.getLeaveAllBalanceData[i].inActive==true)\r\n // {\r\n // data='InActive'\r\n // }\r\n // else\r\n // {\r\n // data='Active'\r\n // }\r\n // if(this.getLeaveAllBalanceData[i].userId)\r\n // {\r\n // data=this.getLeaveAllBalanceData[i].userId\r\n // }\r\n\r\n // }\r\n // else if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n\r\n // }\r\n \r\n }\r\n this.ejsGridData.push({[key]:data})\r\n }\r\n }\r\n \r\n\r\n \r\n var obj = {};\r\n this.newArray=[]\r\n\r\n for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n}\r\n\r\n\r\n getLeaveBalanceReport() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveBalanceReport(parms).subscribe((res) => {\r\n document.getElementById('saveClick').click()\r\n this.reportList = res[\"data\"];\r\n debugger;\r\n this.userLoader = false;\r\n // empCode: \"\"\r\n // employeeId: 20580\r\n // employeeName: \"Lovish Kalra \"\r\n // inActive: false\r\n // isdeleted: false\r\n // userId: 20580\r\n this.columnArray=[]\r\n this.ejsGridData=[]\r\n this.employeeName='Employee Name'\r\n this.getLeaveAllBalanceData=[]\r\n this.userid=\"inActive\"\r\n this.userId=\"userId\"\r\n this.getLeaveAllBalanceData = res['data'];\r\n this.myRequestsListLength = this.getLeaveAllBalanceData.length;\r\n this.columnArray.push(this.employeeName)\r\n this.paidArray=this.getLeaveAllBalanceData[0].paidLeavesList\r\n this.unPaidArray=this.getLeaveAllBalanceData[0].unpaidLeavesList\r\n this.paidListCount = this.getLeaveAllBalanceData[0].paidLeavesList.length;\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n this.onDutyListCount = this.getLeaveAllBalanceData[0].onDutyLeavesList.length;\r\n this.onDutyList=this.getLeaveAllBalanceData[0].onDutyLeavesList\r\n this.newDutyList=this.onDutyList.concat(this.unPaidArray)\r\n this.newTotalArray=this.paidArray.concat(this.newDutyList)\r\n var totalCount= this.paidListCount+this.unpaidListCount\r\n for(var i=0;i< this.newTotalArray.length;i++)\r\n {\r\n this.columnArray.push(this.newTotalArray[i].leaveTypeName)\r\n }\r\n this.columnArray.push(this.userid)\r\n this.columnArray.push(this.userId)\r\n\r\n \r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n\r\n \r\n for(var i=0;i< this.getLeaveAllBalanceData.length;i++)\r\n {\r\n for(var j=0;j0 && j<=this.paidListCount){\r\n var data=this.getLeaveAllBalanceData[i].paidLeavesList[j-1].leaveCount\r\n }\r\n else if(j>this.paidListCount&&j<=totalCount) {\r\n var count=this.paidListCount+1\r\n var data=this.getLeaveAllBalanceData[i].unpaidLeavesList[j-count].leaveCount\r\n }\r\n else {\r\n \r\n\r\n var count=totalCount+1\r\n if(j==this.columnArray.length-2)\r\n {\r\n if(this.getLeaveAllBalanceData[i].inActive==true)\r\n {\r\n data='InActive'\r\n }\r\n else\r\n {\r\n data='Active'\r\n }\r\n }\r\n else if(j==this.columnArray.length-1)\r\n {\r\n if(this.getLeaveAllBalanceData[i].userId)\r\n {\r\n data=this.getLeaveAllBalanceData[i].userId\r\n }\r\n \r\n }\r\n else \r\n {\r\n if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n {\r\n var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n \r\n }\r\n \r\n }\r\n \r\n \r\n \r\n // if(j==this.columnArray.length-1)\r\n // {\r\n \r\n \r\n // if(this.getLeaveAllBalanceData[i].inActive==true)\r\n // {\r\n // data='InActive'\r\n // }\r\n // else\r\n // {\r\n // data='Active'\r\n // }\r\n // if(this.getLeaveAllBalanceData[i].userId)\r\n // {\r\n // data=this.getLeaveAllBalanceData[i].userId\r\n // }\r\n \r\n // }\r\n // else if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n \r\n // }\r\n \r\n \r\n // var count=totalCount+1\r\n \r\n // if(j==this.columnArray.length-1)\r\n // {\r\n \r\n \r\n // if(this.getLeaveAllBalanceData[i].inActive==true)\r\n // {\r\n // data='InActive'\r\n // }\r\n // else\r\n // {\r\n // data='Active'\r\n // }\r\n // debugger;\r\n // if(this.getLeaveAllBalanceData[i].userId)\r\n // {\r\n // data=this.getLeaveAllBalanceData[i].userId\r\n // }\r\n \r\n // }\r\n // else if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n \r\n // }\r\n \r\n }\r\n this.ejsGridData.push({[key]:data})\r\n }\r\n }\r\n \r\n\r\n \r\n var obj = {};\r\n this.newArrayList=[]\r\n\r\n for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n actionComplete(args: any) {\r\n \r\n\r\n // for (const cols of this.Grid.columns) {\r\n // var data=this.columnArray.length-1\r\n \r\n // if ((cols as Column).field === data+'.inActive') {\r\n // debugger;\r\n \r\n // (cols as Column).visible = false;\r\n // this.Grid.refresh()\r\n\r\n // } \r\n \r\n // }\r\n \r\n }\r\n // Export\r\n ExportExcel() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n filterType: this.filterType,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveBalanceReport_Excel(parms).subscribe((res) => {\r\n let exportData = res[\"data\"];\r\n this.userLoader = false;\r\n this._commonSer.exportAsExcelFile(exportData, 'Lave Balance Report');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { UserReportComponent } from './user-report/user-report.component';\r\nimport { UserAvailabilityReportComponent } from './user-availability-report/user-availability-report.component';\r\nimport { DailyReportComponent } from './daily-report/daily-report.component';\r\nimport { LeaveTakenReportComponent } from './leave-taken-report/leave-taken-report.component';\r\nimport { LeaveBalanceReportComponent } from './leave-balance-report/leave-balance-report.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { TabsModule as MkTabsModule } from 'angular-admin-lte';\r\nimport { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';\r\nimport { TimepickerModule, BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { HighchartsChartModule } from 'highcharts-angular';\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\nimport { DatePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport { DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n ReactiveFormsModule,\r\n NgbModule,DropDownListModule,\r\n BoxModule, SelectModule,\r\n MkTabsModule, DatePickerModule,\r\n BoxModule,\r\n CoreModule,\r\n SelectModule,\r\n GridAllModule,\r\n PagerModule,\r\n HighchartsChartModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n AngularMultiSelectModule,\r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n\r\n ],\r\n declarations: [UserReportComponent, UserAvailabilityReportComponent, DailyReportComponent, LeaveTakenReportComponent, LeaveBalanceReportComponent]\r\n})\r\nexport class LeaveReportModule { }\r\n\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n

    Leave Taken Report

    \r\n
    \r\n\r\n
    \r\n \r\n    \r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n
      \r\n \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Day\r\n Hour\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChildren,ViewChild, QueryList, } from '@angular/core';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { GridComponent,ExcelExportProperties, Column } from \"@syncfusion/ej2-angular-grids\";\r\nimport { FilterSettingsModel, IFilter } from '@syncfusion/ej2-angular-grids';\r\nimport { environment } from 'src/app/environment';\r\n\r\n\r\n@Component({\r\n selector: 'app-leave-taken-report',\r\n templateUrl: './leave-taken-report.component.html',\r\n styleUrls: ['./leave-taken-report.component.css']\r\n})\r\nexport class LeaveTakenReportComponent implements OnInit {\r\n datePickerConfiq: Partial;\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n CmpCode:any;\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n filterDayHour: any;\r\n filterCurrentView: any;\r\n\r\n flterShowData = false;\r\n\r\n filterPeriod: number;\r\n\r\n filterStartDate: Date;\r\n filterEndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n\r\n filterType: number;\r\n\r\n // For Dropdownlist\r\n filterEmployeeId: any;\r\n EmployeeList: any[];\r\n ddlEmployeeList: any[];\r\n ActiveEmployees = [];\r\n\r\n filterLeaveTypeId: any;\r\n LeaveTypesList: any[];\r\n ddlLeaveTypeList: any[];\r\n ActiveLeaveTypes = [];\r\n\r\n filterDepartmentId: any;\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n ActiveDepartments = [];\r\n\r\n filterDesignationId: any;\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n ActiveDesignations = [];\r\n\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n\r\n filterUserStatus: number = null;\r\n\r\n reportList: any[];\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService) { this.CmpCode = this._authSer.getcompanyCode();}\r\n // public filterOptions: FilterSettingsModel;\r\npublic filter: IFilter;\r\n ngOnInit() {\r\n \r\n this.filterSettings = { type: \"CheckBox\" };\r\n // this.filter = { type: \"CheckBox\" };\r\n// this.filterOptions = {\r\n// type: 'Menu'\r\n// };\r\n// this.filter = {\r\n// type: 'CheckBox'\r\n// };\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.reportList = [];\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n });\r\n\r\n this.filterDayHour = 1;\r\n this.filterCurrentView = 1;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n\r\n this.minDate = this.filterStartDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n\r\n this.maxDate = this.filterEndDate;\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n\r\n this.filterType = -1;\r\n this.checkFilter=1\r\n this.getLeaveTakenReport();\r\n }\r\n \r\n public pageSettings = { pageCount: 3 };\r\n\r\n \r\n filterSettings:object\r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n checkFilter:any\r\n setFilterDayHour(value) {\r\n this.filterDayHour = value;\r\n if(value===1)\r\n {\r\n this.checkFilter=1\r\n this.getLeaveTakenReport();\r\n\r\n }\r\n else\r\n {\r\n this.checkFilter=2\r\n\r\n this.getLeaveTakenReportFor();\r\n\r\n }\r\n }\r\n \r\n\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n filterShow() {\r\n this.getLeaveTypeList();\r\n this.getEmployeeList();\r\n this.getDepartmentList();\r\n this.getAllDesigationList();\r\n this.getAllLocationList();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployees = [];\r\n this.ActiveEmployees.push(value);\r\n this.filterEmployeeId = value.id;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.ActiveLeaveTypes.push(value);\r\n this.filterLeaveTypeId = value.id;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.ActiveDepartments.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.ActiveDesignations.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n switch (_type) {\r\n case \"Employee\":\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n getEmployeeList() {\r\n this._leaveService.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.EmployeeList = res['data'].table;\r\n this.ddlEmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getLeaveTypeList() {\r\n this._leaveService.getAllLeaveTypeForSelect(this.CmpCode).subscribe((res) => {\r\n this.LeaveTypesList = res[\"data\"].table;\r\n this.ddlLeaveTypeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"leaveTypeId\", \"leaveTypeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getDepartmentList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllDesigationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.getLeaveTakenReport();\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n this.filterType = -1;\r\n }\r\n\r\n onChangeFilterPeriod(e) {\r\n let _period = e.srcElement.value;\r\n let currentDate = new Date();\r\n\r\n if (_period == 1) { // Yesterday\r\n currentDate.setDate(currentDate.getDate() - 1);\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 2) { // Today\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 3) { // Last Week\r\n let first = (currentDate.getDate() - currentDate.getDay()) - 7;\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 4) { // This Week\r\n let first = currentDate.getDate() - currentDate.getDay();\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 5) { // Last Month\r\n currentDate.setMonth(currentDate.getMonth() - 1);\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n } else if (_period == 6) { // This Month\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n }\r\n }\r\n\r\n onChangeFilterType(e) {\r\n console.clear();\r\n console.log(e);\r\n console.log(this.filterType);\r\n }\r\n\r\n // Close Opened Dropdowns when clicking on new dropdown\r\n closeDropdownList(element) {\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n\r\n onDPStartDateChange(e) {\r\n this.filterStartDate = e;\r\n this.minDate = new Date(this.filterStartDate);\r\n this.minDate.setDate(this.minDate.getDate());\r\n }\r\n onDPEndDateChange(e) {\r\n this.filterEndDate = e;\r\n this.maxDate = new Date(this.filterEndDate);\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n }\r\n Load()\r\n {\r\n\r\n }\r\n\r\n // Get Report\r\n employeeName:any\r\n getLeaveAllBalanceData:any=[]\r\n myRequestsListLength:any\r\n columnArray:any=[]\r\n paidArray:any=[]\r\n unPaidArray:any=[]\r\n paidListCount:any=[]\r\n unpaidListCount:any=[]\r\n onDutyListCount:any=[]\r\n onDutyList:any=[]\r\n newDutyList:any=[]\r\n newTotalArray:any=[]\r\n ejsGridData:any=[]\r\n newArrayList:any=[]\r\n userId:any\r\n inActive:any\r\n getLeaveTakenReport() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveTakenReport(parms).subscribe((res) => {\r\n document.getElementById('saveClick').click()\r\n this.columnArray=[]\r\n this.ejsGridData=[]\r\n this.userId='userid'\r\n this.reportList = res[\"data\"];\r\n this.employeeName='Employee Name'\r\n this.inActive=\"inActive\"\r\n \r\n this.getLeaveAllBalanceData=[]\r\n this.getLeaveAllBalanceData = res['data'];\r\n this.myRequestsListLength = this.getLeaveAllBalanceData.length;\r\n this.columnArray.push(this.employeeName)\r\n this.paidArray=this.getLeaveAllBalanceData[0].paidLeavesList\r\n this.unPaidArray=this.getLeaveAllBalanceData[0].unpaidLeavesList\r\n this.paidListCount = this.getLeaveAllBalanceData[0].paidLeavesList.length;\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n this.onDutyListCount = this.getLeaveAllBalanceData[0].onDutyLeavesList.length;\r\n this.onDutyList=this.getLeaveAllBalanceData[0].onDutyLeavesList\r\n this.newDutyList=this.onDutyList.concat(this.unPaidArray)\r\n this.newTotalArray=this.paidArray.concat(this.newDutyList)\r\n var totalCount= this.paidListCount+this.unpaidListCount\r\n for(var i=0;i< this.newTotalArray.length;i++)\r\n {\r\n this.columnArray.push(this.newTotalArray[i].leaveTypeName)\r\n }\r\n this.columnArray.push(this.inActive)\r\n this.columnArray.push(this.userId)\r\n /// this.columnArray.push(this.inActive)\r\n\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n\r\n \r\n for(var i=0;i< this.getLeaveAllBalanceData.length;i++)\r\n {\r\n for(var j=0;j0 && j<=this.paidListCount){\r\n var data=this.getLeaveAllBalanceData[i].paidLeavesList[j-1].leaveCount\r\n }\r\n else if(j>this.paidListCount&&j<=totalCount) {\r\n var count=this.paidListCount+1\r\n var data=this.getLeaveAllBalanceData[i].unpaidLeavesList[j-count].leaveCount\r\n }\r\n \r\n else {\r\n // var count=totalCount+1\r\n // if(j==this.columnArray.length)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].userId\r\n\r\n // }\r\n // else if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n\r\n // }\r\n var count=totalCount+1\r\n if(j==this.columnArray.length-2)\r\n {\r\n if(this.getLeaveAllBalanceData[i].inActive==true)\r\n {\r\n data='InActive'\r\n }\r\n else\r\n {\r\n data='Active'\r\n }\r\n }\r\n else if(j==this.columnArray.length-1)\r\n {\r\n if(this.getLeaveAllBalanceData[i].userId)\r\n {\r\n data=this.getLeaveAllBalanceData[i].userId\r\n }\r\n\r\n }\r\n else \r\n {\r\n if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n {\r\n var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n\r\n }\r\n \r\n }\r\n \r\n // var count=totalCount+1\r\n // if(j==this.columnArray.length-1)\r\n // {\r\n \r\n\r\n // if(this.getLeaveAllBalanceData[i].inActive==true)\r\n // {\r\n // data='InActive'\r\n // }\r\n // else\r\n // {\r\n // data='Active'\r\n // }\r\n // if(this.getLeaveAllBalanceData[i].userId)\r\n // {\r\n // data=this.getLeaveAllBalanceData[i].userId\r\n // }\r\n \r\n // }\r\n // else if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n // {\r\n // var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n \r\n // }\r\n }\r\n this.ejsGridData.push({[key]:data})\r\n }\r\n }\r\n \r\n\r\n \r\n var obj = {};\r\n this.newArrayList=[]\r\n\r\n for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n actionComplete(args: any) {\r\n \r\n\r\n // for (const cols of this.Grid.columns) {\r\n // var data=this.columnArray.length-1\r\n \r\n // if ((cols as Column).field === data+'.inActive') {\r\n // debugger;\r\n \r\n // (cols as Column).visible = false;\r\n // this.Grid.refresh()\r\n\r\n // } \r\n // else{\r\n // (cols as Column).visible = false;\r\n // }\r\n // }\r\n \r\n}\r\n newArray:any=[]\r\n userid:any\r\n getLeaveTakenReportFor() {\r\n debugger;\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveTakenReport(parms).subscribe((res) => {\r\n\r\n this.columnArray=[]\r\n this.ejsGridData=[]\r\n this.reportList = res[\"data\"];\r\n this.employeeName='Employee Name'\r\n this.userId='userid'\r\n this.inActive=\"inActive\"\r\n\r\n\r\n\r\n this.getLeaveAllBalanceData=[]\r\n this.getLeaveAllBalanceData = res['data'];\r\n this.myRequestsListLength = this.getLeaveAllBalanceData.length;\r\n this.columnArray.push(this.employeeName)\r\n this.paidArray=this.getLeaveAllBalanceData[0].paidLeavesList\r\n this.unPaidArray=this.getLeaveAllBalanceData[0].unpaidLeavesList\r\n this.paidListCount = this.getLeaveAllBalanceData[0].paidLeavesList.length;\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n this.onDutyListCount = this.getLeaveAllBalanceData[0].onDutyLeavesList.length;\r\n this.onDutyList=this.getLeaveAllBalanceData[0].onDutyLeavesList\r\n this.newDutyList=this.onDutyList.concat(this.unPaidArray)\r\n this.newTotalArray=this.paidArray.concat(this.newDutyList)\r\n var totalCount= this.paidListCount+this.unpaidListCount\r\n for(var i=0;i< this.newTotalArray.length;i++)\r\n {\r\n this.columnArray.push(this.newTotalArray[i].leaveTypeName)\r\n }\r\n this.columnArray.push(this.inActive)\r\n this.columnArray.push(this.userId)\r\n\r\n \r\n \r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length; \r\n\r\n \r\n for(var i=0;i< this.getLeaveAllBalanceData.length;i++)\r\n {\r\n for(var j=0;j0 && j<=this.paidListCount){\r\n var data=this.getLeaveAllBalanceData[i].paidLeavesList[j-1].leaveCount\r\n }\r\n else if(j>this.paidListCount&&j<=totalCount) {\r\n var count=this.paidListCount+1\r\n var data=this.getLeaveAllBalanceData[i].unpaidLeavesList[j-count].leaveCount\r\n }\r\n else\r\n {\r\n var count=totalCount+1\r\n if(j==this.columnArray.length-2)\r\n {\r\n if(this.getLeaveAllBalanceData[i].inActive==true)\r\n {\r\n data='InActive'\r\n }\r\n else\r\n {\r\n data='Active'\r\n }\r\n }\r\n else if(j==this.columnArray.length-1)\r\n {\r\n if(this.getLeaveAllBalanceData[i].userId)\r\n {\r\n data=this.getLeaveAllBalanceData[i].userId\r\n }\r\n\r\n }\r\n else \r\n {\r\n if(this.getLeaveAllBalanceData[i].onDutyLeavesList>0)\r\n {\r\n var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].leaveCount\r\n\r\n }\r\n \r\n }\r\n }\r\n this.ejsGridData.push({[key]:data})\r\n }\r\n }\r\n \r\n\r\n \r\n var obj = {};\r\n this.newArray=[]\r\n\r\n for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n recieptIMg:any\r\n colCell:any=0\r\n customiseCell(args: any) {\r\n var col=args.column.field\r\n var clName=col.split('.')\r\n const column = this.Grid.getColumnByField(args.column.field); \r\n column.headerText = clName[1]; \r\n if (args.data[this.columnArray.length-2]['inActive']=='InActive') { \r\n debugger;\r\n args.cell.classList.add('background-yellow');\r\n //args.cell.classList.add('below-30'); \r\n\r\n }\r\n \r\n if (args.column.field ==\"0.Employee Name\") {\r\n args.cell.classList.add('below-0');\r\n for(var i=0;i'+' '+args.data[0][\"Employee Name\"]\r\n // args.cell.innerHTML = \" '+' '+args.data[0][\"Employee Name\"]\r\n }\r\n \r\n }\r\n \r\n\r\n // this.colCell=this.colCell+1\r\n \r\n\r\n } \r\n this.Grid.refreshHeader();\r\n \r\n}\r\n collect(...a) {\r\n var ret = {};\r\n var len = arguments.length;\r\n for (var i = 0; i < len; i++) {\r\n for (var p in arguments[i]) {\r\n if (arguments[i].hasOwnProperty(p)) {\r\n ret[p] = arguments[i][p];\r\n }\r\n }\r\n \r\n }\r\n return ret\r\n }\r\n export(): void {\r\n // debugger\r\n // const excelExportProperties: ExcelExportProperties = {\r\n // fileName: 'daily-report.xlsx'\r\n // };\r\n // this.Grid.excelExport(excelExportProperties);\r\n }\r\n\r\n printList(printData) {\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n exportTableToCSV() {\r\n debugger\r\n // const excelExportProperties: ExcelExportProperties = {\r\n // fileName: 'daily-report.csv'\r\n // };\r\n // this.Grid.csvExport(excelExportProperties);\r\n\r\n}\r\n\r\n // Export\r\n ExportExcel() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n filterUnit: this.filterDayHour,\r\n filterType: this.filterType,\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveService.getLeaveTakenReport_Excel(parms).subscribe((res) => {\r\n let exportData = res[\"data\"];\r\n this.userLoader = false;\r\n this._commonSer.exportAsExcelFile(exportData, 'Lave Taken Report');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    User Availability Report

    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{ navigationText }}

    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.employeeName}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{ item.leaveTypeName }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChildren, ViewChild, QueryList, } from '@angular/core';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { UserService } from \"src/app/user/user.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { GridComponent, SaveEventArgs, Column, ExcelExportProperties } from '@syncfusion/ej2-angular-grids';\r\nimport { ColumnModel, ResizeService, QueryCellInfoEventArgs } from '@syncfusion/ej2-angular-grids';\r\nimport { environment } from 'src/app/environment';\r\nimport { data } from 'jquery';\r\nimport { Tooltip } from '@syncfusion/ej2-popups';\r\n\r\n\r\n@Component({\r\n selector: 'app-user-availability-report',\r\n templateUrl: './user-availability-report.component.html',\r\n styleUrls: ['./user-availability-report.component.css']\r\n})\r\nexport class UserAvailabilityReportComponent implements OnInit {\r\n\r\n datePickerConfiq: Partial;\r\n CmpCode: any;\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n navigationText: any;\r\n\r\n flterShowData = false;\r\n\r\n filterPeriod: number;\r\n\r\n filterStartDate: Date;\r\n filterEndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n\r\n // For User Dropdownlist\r\n filterDepartmentId: any;\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n ActiveDepartments = [];\r\n\r\n filterDesignationId: any;\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n ActiveDesignations = [];\r\n\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n\r\n datesList: any[];\r\n employeeDataList: any[];\r\n public columns: ColumnModel[];\r\n\r\n LeaveTypeList: any[];\r\n\r\n monthNamesList = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\r\n\r\n filterUserStatus: number = null;\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n }\r\n\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n ngOnInit() {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n });\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n\r\n this.datesList = [];\r\n this.employeeDataList = [];\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n\r\n this.minDate = this.filterStartDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n\r\n this.maxDate = this.filterEndDate;\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n\r\n this.setNavigationText();\r\n\r\n this.getUserAvailabilityReport();\r\n this.getAllLeaveTypes();\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n filterShow() {\r\n this.getDepartmentList();\r\n this.getAllDesigationList();\r\n this.getAllLocationList();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {\r\n this.flterShowData = false;\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any) {\r\n try {\r\n switch (placeHolder) {\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.ActiveDepartments.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.ActiveDesignations.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {\r\n try {\r\n\r\n switch (_type) {\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n getDepartmentList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllDesigationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n tooltip(args: QueryCellInfoEventArgs) {\r\n debugger\r\n const tooltip: Tooltip = new Tooltip({\r\n content: args.data[args.column.field]\r\n }, args.cell as HTMLTableCellElement);\r\n }\r\n\r\n getAllLocationList() {\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n processFilters() {\r\n this.flterShowData = false;\r\n this.setNavigationText();\r\n this.getUserAvailabilityReport();\r\n }\r\n\r\n resetFilters() {\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n this.filterPeriod = 6;\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n\r\n this.setNavigationText();\r\n }\r\n\r\n onChangeFilterPeriod(e) {\r\n let _period = e.srcElement.value;\r\n let currentDate = new Date();\r\n\r\n if (_period == 1) { // Yesterday\r\n currentDate.setDate(currentDate.getDate() - 1);\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 2) { // Today\r\n this.filterStartDate = currentDate;\r\n this.filterEndDate = currentDate;\r\n } else if (_period == 3) { // Last Week\r\n let first = (currentDate.getDate() - currentDate.getDay()) - 7;\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 4) { // This Week\r\n let first = currentDate.getDate() - currentDate.getDay();\r\n let last = first + 6;\r\n\r\n this.filterStartDate = new Date(currentDate.setDate(first));\r\n this.filterEndDate = new Date(currentDate.setDate(last));\r\n } else if (_period == 5) { // Last Month\r\n currentDate.setMonth(currentDate.getMonth() - 1);\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n } else if (_period == 6) { // This Month\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n }\r\n\r\n this.setNavigationText();\r\n }\r\n\r\n actionComplete(args: SaveEventArgs) {\r\n debugger;\r\n // if (args.type == \"actionComplete\") {\r\n // var date = new Date(this.filterStartDate)\r\n // var aa = new Date(date.getFullYear(), date.getMonth() + 1, 0);\r\n // var d = aa.getDate()\r\n // var monthNumber = aa.getDate() + 1 //29\r\n // var monthNumbers = aa.getDate() + 2 //30\r\n // var monthNumbert = aa.getDate() + 3 //31\r\n\r\n // if (d == 28) {\r\n // var number = monthNumber.toString()\r\n // var number1 = monthNumbers.toString()\r\n // var number2 = monthNumbert.toString()\r\n // this.Grid.getColumnByField(number).visible = false;\r\n // this.Grid.getColumnByField(number1).visible = false;\r\n // this.Grid.getColumnByField(number2).visible = false;\r\n // this.Grid.refreshColumns();\r\n\r\n // }\r\n\r\n // if (d == 29) {\r\n // var number = monthNumber.toString()\r\n // var number1 = monthNumbers.toString()\r\n // this.Grid.getColumnByField(number).visible = false;\r\n // this.Grid.getColumnByField(number1).visible = false;\r\n // this.Grid.refreshColumns();\r\n\r\n // }\r\n\r\n // if (d == 30) {\r\n // var number = monthNumber.toString()\r\n // this.Grid.getColumnByField(number).visible = false;\r\n // this.Grid.refreshColumns();\r\n\r\n\r\n // }\r\n // if(d == 31)\r\n // {\r\n // this.Grid.getColumnByField('29').visible = true;\r\n // this.Grid.getColumnByField('30').visible = true;\r\n // this.Grid.getColumnByField('31').visible = true;\r\n // this.Grid.refreshColumns();\r\n\r\n // }\r\n // }\r\n\r\n }\r\n\r\n // Close Opened Dropdowns when clicking on new dropdown\r\n closeDropdownList(element) {\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n\r\n // Get Report\r\n columnArray: any = []\r\n employeeName: any\r\n newTotalArray: any = []\r\n ejsGridData: any = []\r\n newArrayGrid: any = []\r\n public pageSettings = { pageCount: 3 };\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n userImag: any\r\n genders: any\r\n employeeId: any\r\n getUserAvailabilityReport() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getUserAvailabilityReport(parms).subscribe((res) => {\r\n debugger\r\n document.getElementById('saveClick').click()\r\n this.employeeDataList = res[\"data\"];\r\n this.datesList = res[\"datesList\"];\r\n console.log(this.employeeDataList, 'this.employee data list')\r\n console.log(this.datesList, 'this.employee data list')\r\n this.userLoader = false;\r\n this.ejsGridData = []\r\n this.columnArray = []\r\n this.employeeName = 'employeeName'\r\n this.userImag = \"userImage\"\r\n this.genders = \"genders\"\r\n this.employeeId = \"employeeId\"\r\n this.columnArray.push(this.employeeName)\r\n this.columnArray.push(this.userImag)\r\n this.columnArray.push(this.employeeId)\r\n this.columnArray.push(this.genders)\r\n\r\n\r\n\r\n for (var i = 0; i < this.datesList.length; i++) {\r\n var dat = this.datesList[i].dateString\r\n var chk = dat.split(' ')\r\n this.columnArray.push(chk[0])\r\n }\r\n\r\n for (var i = 0; i < this.employeeDataList.length; i++) {\r\n for (var j = 0; j < this.columnArray.length; j++) {\r\n var key = this.columnArray[j]\r\n if (j == 0) {\r\n var data = this.employeeDataList[i].employeeName\r\n if (data == \"Katy Watson \") {\r\n debugger\r\n }\r\n\r\n }\r\n else if (j == 1) {\r\n var data = this.employeeDataList[i].userImage\r\n }\r\n else if (j == 2) {\r\n var data = this.employeeDataList[i].empCode\r\n }\r\n else if (j == 3) {\r\n var data = this.employeeDataList[i].genders\r\n }\r\n else {\r\n var data = this.employeeDataList[i].dateList[j - 4].text\r\n }\r\n this.ejsGridData.push({ [key]: data })\r\n\r\n }\r\n\r\n }\r\n\r\n debugger;\r\n\r\n this.newArrayGrid = []\r\n for (var j = 0; j < this.ejsGridData.length; j++) {\r\n if (this.columnArray.length == 35) {\r\n var d = this.collect(this.ejsGridData[j + 0], this.ejsGridData[j + 1], this.ejsGridData[j + 2], this.ejsGridData[j + 3], this.ejsGridData[j + 4],\r\n this.ejsGridData[j + 5], this.ejsGridData[j + 6], this.ejsGridData[j + 7], this.ejsGridData[j + 8],\r\n this.ejsGridData[j + 9], this.ejsGridData[j + 10], this.ejsGridData[j + 11], this.ejsGridData[j + 12], this.ejsGridData[j + 13],\r\n this.ejsGridData[j + 14], this.ejsGridData[j + 15], this.ejsGridData[j + 16], this.ejsGridData[j + 17],\r\n this.ejsGridData[j + 18], this.ejsGridData[j + 19], this.ejsGridData[j + 20], this.ejsGridData[j + 21], this.ejsGridData[j + 22],\r\n this.ejsGridData[j + 23], this.ejsGridData[j + 24], this.ejsGridData[j + 25], this.ejsGridData[j + 26],\r\n this.ejsGridData[j + 28], this.ejsGridData[j + 29], this.ejsGridData[j + 30], this.ejsGridData[j + 31], this.ejsGridData[j + 32], this.ejsGridData[j + 33], this.ejsGridData[j + 34]\r\n )\r\n this.newArrayGrid.push(d)\r\n // break;\r\n j = j + 34\r\n }\r\n else if (this.columnArray.length == 34) {\r\n var d = this.collect(this.ejsGridData[j + 0], this.ejsGridData[j + 1], this.ejsGridData[j + 2], this.ejsGridData[j + 3], this.ejsGridData[j + 4],\r\n this.ejsGridData[j + 5], this.ejsGridData[j + 6], this.ejsGridData[j + 7], this.ejsGridData[j + 8],\r\n this.ejsGridData[j + 9], this.ejsGridData[j + 10], this.ejsGridData[j + 11], this.ejsGridData[j + 12], this.ejsGridData[j + 13],\r\n this.ejsGridData[j + 14], this.ejsGridData[j + 15], this.ejsGridData[j + 16], this.ejsGridData[j + 17],\r\n this.ejsGridData[j + 18], this.ejsGridData[j + 19], this.ejsGridData[j + 20], this.ejsGridData[j + 21], this.ejsGridData[j + 22],\r\n this.ejsGridData[j + 23], this.ejsGridData[j + 24], this.ejsGridData[j + 25], this.ejsGridData[j + 26],\r\n this.ejsGridData[j + 28], this.ejsGridData[j + 29], this.ejsGridData[j + 30], this.ejsGridData[j + 31], this.ejsGridData[j + 32], this.ejsGridData[j + 33]\r\n )\r\n this.newArrayGrid.push(d)\r\n // break;\r\n j = j + 33\r\n }\r\n else if (this.columnArray.length == 33) {\r\n var d = this.collect(this.ejsGridData[j + 0], this.ejsGridData[j + 1], this.ejsGridData[j + 2], this.ejsGridData[j + 3], this.ejsGridData[j + 4],\r\n this.ejsGridData[j + 5], this.ejsGridData[j + 6], this.ejsGridData[j + 7], this.ejsGridData[j + 8],\r\n this.ejsGridData[j + 9], this.ejsGridData[j + 10], this.ejsGridData[j + 11], this.ejsGridData[j + 12], this.ejsGridData[j + 13],\r\n this.ejsGridData[j + 14], this.ejsGridData[j + 15], this.ejsGridData[j + 16], this.ejsGridData[j + 17],\r\n this.ejsGridData[j + 18], this.ejsGridData[j + 19], this.ejsGridData[j + 20], this.ejsGridData[j + 21], this.ejsGridData[j + 22],\r\n this.ejsGridData[j + 23], this.ejsGridData[j + 24], this.ejsGridData[j + 25], this.ejsGridData[j + 26],\r\n this.ejsGridData[j + 28], this.ejsGridData[j + 29], this.ejsGridData[j + 30], this.ejsGridData[j + 31], this.ejsGridData[j + 32]\r\n )\r\n this.newArrayGrid.push(d)\r\n // break;\r\n j = j + 32\r\n }\r\n else if (this.columnArray.length == 32) {\r\n var d = this.collect(this.ejsGridData[j + 0], this.ejsGridData[j + 1], this.ejsGridData[j + 2], this.ejsGridData[j + 3], this.ejsGridData[j + 4],\r\n this.ejsGridData[j + 5], this.ejsGridData[j + 6], this.ejsGridData[j + 7], this.ejsGridData[j + 8],\r\n this.ejsGridData[j + 9], this.ejsGridData[j + 10], this.ejsGridData[j + 11], this.ejsGridData[j + 12], this.ejsGridData[j + 13],\r\n this.ejsGridData[j + 14], this.ejsGridData[j + 15], this.ejsGridData[j + 16], this.ejsGridData[j + 17],\r\n this.ejsGridData[j + 18], this.ejsGridData[j + 19], this.ejsGridData[j + 20], this.ejsGridData[j + 21], this.ejsGridData[j + 22],\r\n this.ejsGridData[j + 23], this.ejsGridData[j + 24], this.ejsGridData[j + 25], this.ejsGridData[j + 26],\r\n this.ejsGridData[j + 28], this.ejsGridData[j + 29], this.ejsGridData[j + 30], this.ejsGridData[j + 31]\r\n )\r\n this.newArrayGrid.push(d)\r\n // break;\r\n j = j + 31\r\n }\r\n }\r\n if (this.columnArray.length == 32) {\r\n let test = ['29', '30', '31']\r\n this.Grid.showColumns(test)\r\n }\r\n else if (this.columnArray.length == 31) {\r\n this.Grid.refreshColumns()\r\n let test = ['31']\r\n this.Grid.hideColumns(test);\r\n\r\n }\r\n else if (this.columnArray.length == 30) {\r\n this.Grid.refreshColumns()\r\n let test = ['30', '31']\r\n this.Grid.hideColumns(test);\r\n\r\n }\r\n else if (this.columnArray.length == 29) {\r\n this.Grid.refreshColumns()\r\n let test = ['29', '30', '31']\r\n this.Grid.hideColumns(test);\r\n\r\n }\r\n\r\n\r\n\r\n // setTimeout(() => {\r\n\r\n // this.newArrayGrid\r\n\r\n // }, 3000);\r\n\r\n // var obj = {};\r\n\r\n // for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n collect(...a) {\r\n var ret = {};\r\n var len = arguments.length;\r\n for (var i = 0; i < len; i++) {\r\n for (var p in arguments[i]) {\r\n if (arguments[i].hasOwnProperty(p)) {\r\n ret[p] = arguments[i][p];\r\n }\r\n }\r\n\r\n }\r\n return ret;\r\n }\r\n getAllLeaveTypes() {\r\n this.userLoader = true;\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n FilterStatus: null,\r\n FilterEmployees: null,\r\n FilterDepartments: null,\r\n FilterLocations: null,\r\n FilterDesignations: null,\r\n FilterRoles: null,\r\n FilterUnit: null,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getAllLeaveTypeData(parms).subscribe((res) => {\r\n this.LeaveTypeList = res[\"data\"].table;\r\n this.userLoader = false;\r\n });\r\n }\r\n\r\n export(): void {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'user-availability-report.xlsx'\r\n };\r\n // this.UpdateForExport();\r\n //this.getLocationList();\r\n this.Grid.excelExport(excelExportProperties);\r\n }\r\n\r\n printList(printData) {\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n exportTableToCSV() {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'user-availability-report.csv'\r\n };\r\n this.Grid.csvExport(excelExportProperties);\r\n\r\n }\r\n\r\n onDPStartDateChange(e) {\r\n this.filterStartDate = e;\r\n this.minDate = new Date(this.filterStartDate);\r\n this.minDate.setDate(this.minDate.getDate());\r\n }\r\n onDPEndDateChange(e) {\r\n this.filterEndDate = e;\r\n this.maxDate = new Date(this.filterEndDate);\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n\r\n this.validateDateRange();\r\n }\r\n\r\n validateDateRange() {\r\n if (this.filterStartDate != null && this.filterEndDate != null) {\r\n setTimeout(() => {\r\n let startDate = new Date(this.filterStartDate);\r\n let endDate = new Date(this.filterEndDate);\r\n let diffDays = this.datediff(startDate, endDate);\r\n\r\n if (diffDays > 30) {\r\n let currentDate = new Date();\r\n this.filterStartDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1);\r\n this.filterEndDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 0);\r\n }\r\n }, 300);\r\n }\r\n }\r\n\r\n // Navigation\r\n setNavigationText() {\r\n let vm = this;\r\n vm.navigationText = \"\";\r\n\r\n let startDateString = vm.filterStartDate.getDate() + \" \" + vm.monthNamesList[vm.filterStartDate.getMonth()] + \" \" + vm.filterStartDate.getFullYear() + \"\";\r\n let endDateString = vm.filterEndDate.getDate() + \" \" + vm.monthNamesList[vm.filterEndDate.getMonth()] + \" \" + vm.filterEndDate.getFullYear() + \"\";\r\n\r\n vm.navigationText = startDateString + \" - \" + endDateString;\r\n }\r\n\r\n datediff(first, second) {\r\n return Math.round((second - first) / (1000 * 60 * 60 * 24));\r\n }\r\n\r\n navigatePrevious(e) {\r\n let vm = this;\r\n let _period = vm.filterPeriod;\r\n vm.filterPeriod = 7;\r\n\r\n let startDate = new Date(vm.filterStartDate);\r\n let endDate = new Date(vm.filterEndDate);\r\n // endDate.setDate(endDate.getDate() + 1);\r\n // endDate.setSeconds(endDate.getSeconds() - 1);\r\n let diffDays = this.datediff(startDate, endDate);\r\n\r\n let tempStartDate = new Date(startDate.getFullYear(), startDate.getMonth(), 1);\r\n let tempEndDate = new Date(endDate.getFullYear(), endDate.getMonth() + 1, 0);\r\n let tempDiffDays = this.datediff(tempStartDate, tempEndDate);\r\n\r\n if (diffDays == tempDiffDays) {\r\n startDate.setMonth(startDate.getMonth() - 1);\r\n startDate = new Date(startDate.getFullYear(), startDate.getMonth(), 1);\r\n endDate = new Date(startDate.getFullYear(), startDate.getMonth() + 1, 0);\r\n } else {\r\n startDate.setDate(startDate.getDate() - (diffDays + 1));\r\n endDate.setDate(endDate.getDate() - (diffDays + 1));\r\n }\r\n\r\n this.filterStartDate = startDate;\r\n this.filterEndDate = endDate;\r\n\r\n vm.setNavigationText();\r\n vm.getUserAvailabilityReport();\r\n }\r\n\r\n navigateNext(e) {\r\n let vm = this;\r\n let _period = vm.filterPeriod;\r\n vm.filterPeriod = 7;\r\n\r\n let startDate = new Date(vm.filterStartDate);\r\n let endDate = new Date(vm.filterEndDate);\r\n // endDate.setDate(endDate.getDate() + 1);\r\n // endDate.setSeconds(endDate.getSeconds() - 1);\r\n let diffDays = this.datediff(startDate, endDate);\r\n\r\n let tempStartDate = new Date(startDate.getFullYear(), startDate.getMonth(), 1);\r\n let tempEndDate = new Date(endDate.getFullYear(), endDate.getMonth() + 1, 0);\r\n let tempDiffDays = this.datediff(tempStartDate, tempEndDate);\r\n\r\n if (diffDays == tempDiffDays) {\r\n startDate.setMonth(startDate.getMonth() + 1);\r\n startDate = new Date(startDate.getFullYear(), startDate.getMonth(), 1);\r\n endDate = new Date(startDate.getFullYear(), startDate.getMonth() + 1, 0);\r\n } else {\r\n startDate.setDate(startDate.getDate() + (diffDays + 1));\r\n endDate.setDate(endDate.getDate() + (diffDays + 1));\r\n }\r\n\r\n this.filterStartDate = startDate;\r\n this.filterEndDate = endDate;\r\n\r\n vm.setNavigationText();\r\n vm.getUserAvailabilityReport();\r\n }\r\n\r\n // Export\r\n ExportExcel() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getUserAvailabilityReport_Excel(parms).subscribe((res) => {\r\n let exportData = res[\"data\"];\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(exportData);\r\n this._commonSer.exportAsExcelFile(exportData, 'User Availability Report');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n ExportCSV() {\r\n this.userLoader = true;\r\n let parms = {\r\n Period: this.filterPeriod,\r\n StartDate: this.getCSharpFormattedDate(this.filterStartDate),\r\n EndDate: this.getCSharpFormattedDate(this.filterEndDate),\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n UserId: this.currentUserId,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getUserAvailabilityReport_Excel(parms).subscribe((res) => {\r\n let exportData = res[\"data\"];\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(exportData);\r\n this._commonSer.exportAsExcelAsCsvFile(exportData, 'User Availability Report');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n recieptIMg: any\r\n userImage(item) {\r\n debugger;\r\n // \r\n //if(data.e)\r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    User Report

    \r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
      \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n
    • \r\n CSV\r\n
    • \r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Day\r\n Hour\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ data.leaveTypeName }}\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
      \r\n
    • Download PNG image
    • \r\n
    • Download JPEG image
    • \r\n
    • Download PDF document
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Leave History

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{dateformat( data.createdDate)}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { UserService } from \"src/app/user/user.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport * as Highcharts from 'highcharts';\r\ndeclare let html2canvas: any;\r\nimport { GridComponent ,Column, ExcelExportProperties} from '@syncfusion/ej2-angular-grids';\r\nimport { ColumnModel, ResizeService, QueryCellInfoEventArgs } from '@syncfusion/ej2-angular-grids';\r\n\r\n\r\n@Component({\r\n selector: 'app-user-report',\r\n templateUrl: './user-report.component.html',\r\n styleUrls: ['./user-report.component.css']\r\n})\r\n\r\nexport class UserReportComponent implements OnInit {\r\n\r\n reportList: any[];\r\n emplyeeFields: any;\r\n userreport: any;\r\n getVal(): any[] {\r\n return this.catogries;\r\n }\r\n getMap(): any[] {\r\n return this.datagraph;\r\n }\r\n\r\n title = 'myHighchart';\r\n data = [{\r\n name: 'Balance',\r\n data: []\r\n }];\r\n\r\nhighcharts = Highcharts;\r\nchartOptions = { \r\nchart: {\r\n type: \"column\"\r\n},\r\n\r\ntitle: {\r\n text: \"User Report\"\r\n},\r\nxAxis:{\r\n categories:[]\r\n},\r\nyAxis: { \r\n title:{\r\n text:\"Leave Type\"\r\n } \r\n},\r\nseries: this.data\r\n};\r\n\r\n\r\n\r\n\r\n datePickerConfiq: Partial;\r\n\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n // For User Dropdownlist\r\n ddlEmployeeId: any;\r\n EmployeeList: any[];\r\n ddlEmployeeList: any[];\r\n ActiveEmployee = [];\r\n catogries=[];\r\n datagraph=[];\r\n\r\n filterDayHour: any;\r\n filterCurrentView: any;\r\n\r\n chartshow=false;\r\n listshow=true;\r\n \r\n\r\n selectedLeaveTypeId: any;\r\n leaveHistoryList: any[];\r\n leaveHistoryLength: any;\r\n leaveHistoryPage = 1;\r\n leaveHistoryPageSize = 10;\r\n\r\n vh_StartDate: Date;\r\n vh_EndDate: Date;\r\n minDate: any;\r\n maxDate: any;\r\n CmpCode:any;\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n constructor(\r\n private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private userService: UserService,\r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n }\r\n\r\n ngOnInit() {\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.emplyeeFields = { value: 'id', text: \"text\" };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.leaveHistoryList = [];\r\n this.filterDayHour = 1;\r\n this.filterCurrentView = 1;\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n });\r\n\r\n this.getAllEmployeList();\r\n\r\n let currentDate = new Date();\r\n this.vh_StartDate = new Date(currentDate.getFullYear() + \"-01-01\");\r\n this.vh_EndDate = currentDate;\r\n }\r\n\r\n\r\n \r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n \r\n getCSharpFormattedDate(val: any) {\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n setFilterDayHour(value) {\r\n this.filterDayHour = value;\r\n this.getUserReport();\r\n }\r\n\r\n getAllEmployeList() {\r\n this._leaveService.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.EmployeeList = res['data'].table;\r\n this.ddlEmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n\r\n const currentEmp = this.EmployeeList.find(x => x.userId == this.currentUserId);\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n const empValue = { 'id': currentEmp.employeeId, 'text': currentEmp.employeeCodeName };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n this.ddlEmployeeId = currentEmp.employeeId;\r\n this.getUserReport();\r\n }, 300);\r\n }\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n export(): void {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'user-report.xlsx'\r\n };\r\n // this.UpdateForExport();\r\n //this.getLocationList();\r\n this.Grid.excelExport(excelExportProperties);\r\n }\r\n\r\n printList(printData) {\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n exportTableToCSV() {\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'user-report.csv'\r\n };\r\n this.Grid.csvExport(excelExportProperties);\r\n\r\n}\r\n\r\n\r\n getChart() {\r\n this.chartshow = true;\r\n this.listshow = false;\r\n let data1 = [{\r\n name: 'Balance',\r\n data: this.datagraph\r\n }];\r\n this.chartOptions = {\r\n chart: {\r\n type: \"column\"\r\n },\r\n title: {\r\n text: \"User Report\"\r\n },\r\n xAxis: {\r\n categories: this.catogries\r\n },\r\n yAxis: {\r\n title: {\r\n text: \"Leave Type\"\r\n }\r\n },\r\n series: data1\r\n };\r\n }\r\n\r\n getUserRepo() {\r\n this.listshow = true;\r\n this.chartshow = false;\r\n this.getUserReport();\r\n }\r\n\r\n getUserReport() {\r\n debugger\r\n this.userLoader = true;\r\n this._leaveService.getUserReport(this.ddlEmployeeId, this.filterDayHour,this.CmpCode).subscribe((res) => {\r\n this.reportList = res[\"data\"];\r\n this.userLoader = false;\r\n\r\n this.datagraph = [];\r\n this.catogries = [];\r\n for (let value of this.reportList) {\r\n this.catogries.push(value.leaveTypeName);\r\n this.datagraph.push(value.balance);\r\n }\r\n if (this.chartshow == true) {\r\n this.listshow = false;\r\n this.chartshow =true;\r\n this.getChart();\r\n }\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n\r\n ddlSelection(value: any, placeHolder: any) {\r\n debugger\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n if(value.id == undefined){\r\n this.ddlEmployeeId = value.value;\r\n }\r\n else{\r\n this.ddlEmployeeId = value.id;\r\n }\r\n \r\n\r\n this.getUserReport();\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n this.userreport = this.ActiveEmployee[0].id\r\n }\r\n dateformat(datas:string){\r\n return this._authSer.Dateformat(datas);\r\n // if (this.DateFormat=='1')\r\n // {\r\n // return this.datePipe.transform(datas, 'MM/dd/yyyy')\r\n \r\n // }\r\n // if(this.DateFormat=='2')\r\n // {\r\n // return this.datePipe.transform(datas, 'dd/MM/yyyy')\r\n // }\r\n // if(this.DateFormat== '3')\r\n // {\r\n // return this.datePipe.transform(datas, 'yyyy/MM/dd')\r\n // }\r\n }\r\n\r\n datepickerStartDate($event1) {\r\n debugger\r\n this.vh_StartDate = $event1.value;\r\n this.minDate = this.vh_StartDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n this.getLeaveHistory(this.selectedLeaveTypeId);\r\n }\r\n\r\n datepickerEndDate($event1) {\r\n this.vh_EndDate = $event1.value;\r\n this.maxDate = this.vh_EndDate;\r\n this.maxDate.setDate(this.maxDate.getDate());\r\n\r\n this.getLeaveHistory(this.selectedLeaveTypeId);\r\n }\r\n\r\n getLeaveHistory(leaveTypeId) {\r\n this.selectedLeaveTypeId = leaveTypeId;\r\n if (this.vh_StartDate != null && this.vh_EndDate != null &&\r\n this.ddlEmployeeId > 0 && this.selectedLeaveTypeId > 0) {\r\n\r\n this.userLoader = true;\r\n let startDate = this.getCSharpFormattedDate(this.vh_StartDate);\r\n let endDate = this.getCSharpFormattedDate(this.vh_EndDate);\r\n let parms = {\r\n EmployeeId: this.ddlEmployeeId,\r\n LeaveTypeId: leaveTypeId,\r\n StartDate: startDate,\r\n EndDate: endDate,\r\n CmpCode:this.CmpCode\r\n };\r\n\r\n this._leaveService.getEmployeeLeaveHistory(parms).subscribe(res => {\r\n this.userLoader = false;\r\n this.leaveHistoryList = res['data'];\r\n this.leaveHistoryLength = res['data'].length;\r\n this.leaveHistoryPage = 1;\r\n this.leaveHistoryPageSize = 10;\r\n this._commonSer.OpenModalHandler('historyModal');\r\n });\r\n }\r\n }\r\n\r\n // Export\r\n ExportSelectedEmployeeHistory() {\r\n if (this.vh_StartDate != null && this.vh_EndDate != null) {\r\n this.userLoader = true;\r\n let startDate = this.getCSharpFormattedDate(this.vh_StartDate);\r\n let endDate = this.getCSharpFormattedDate(this.vh_EndDate);\r\n let parms = {\r\n EmployeeId: this.ddlEmployeeId,\r\n LeaveTypeId: this.selectedLeaveTypeId,\r\n StartDate: startDate,\r\n EndDate: endDate,\r\n CmpCode:this.CmpCode\r\n };\r\n\r\n let empNameCode = \"\";\r\n const currentEmp = this.EmployeeList.find(x => x.employeeId == this.ddlEmployeeId);\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n empNameCode = currentEmp.employeeCodeName;\r\n }\r\n\r\n this._leaveService.exportEmployeeLeaveHistory(parms).subscribe(res => {\r\n let exportData = res['data'];\r\n\r\n //const headers = [response.headerstring];//['Name', 'ShortDescription', 'Description', 'CustomerName', 'ProjectType', 'ProjectSource', 'Office', 'PlannedStartDate', 'ActualStartDate', 'PlannedEndDate', 'ActualEndDate', 'PaymentMode', 'ProjectManagerFirstName', 'ProjectManagerMiddleName', 'ProjectManagerLastName', 'SalesPersonFirstName', 'SalesPersonMiddleName', 'SalesPersonLastName', 'ContactPersonFirstName', 'ContactPersonMiddleName', 'ContactPersonLastName', 'WorkingDays', 'InActive', 'IsDeleted'];\r\n this._commonSer.exportAsExcelFile(exportData, 'LeaveTransaction_' + empNameCode);\r\n this.userLoader = false;\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n downloadChart(_type) {\r\n let vm = this;\r\n html2canvas(document.querySelector(\"#dvChart\")).then(canvas => {\r\n let contentType = \"image/png\";\r\n let fileName = \"User_Report\";\r\n if (_type == 1) {\r\n contentType = \"image/png\";\r\n } else if (_type == 2) {\r\n contentType = \"image/jpeg\";\r\n } else if (_type == 3) {\r\n contentType = \"application/pdf\";\r\n }\r\n //this.capturedImage = canvas.toDataURL(\"image/jpeg\", 1.0);\r\n\r\n canvas.toBlob(function (blobData) {\r\n if (_type == 3) {\r\n vm.userLoader = true;\r\n\r\n let reader = new FileReader();\r\n reader.readAsDataURL(blobData);\r\n reader.onloadend = function () {\r\n let base64data = reader.result;\r\n let params = {\r\n base64Data: base64data,\r\n fileName: 'User Report',\r\n \r\n \r\n };\r\n\r\n try {\r\n vm._leaveService.getReportPDFFromBase64(params)\r\n .subscribe((res) => {\r\n vm.userLoader = false;\r\n let url = URL.createObjectURL(res);\r\n let a = document.createElement(\"a\");\r\n a.href = url;\r\n a.download = \"User Report.pdf\";\r\n a.click();\r\n });\r\n } catch (ex) {\r\n vm.userLoader = false;\r\n console.log(ex);\r\n }\r\n };\r\n } else {\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) { //IE\r\n window.navigator.msSaveOrOpenBlob(blobData, fileName);\r\n } else { // chrome\r\n const blob = new Blob([blobData], { type: contentType });\r\n const url = window.URL.createObjectURL(blob);\r\n // window.open(url);\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.download = fileName;\r\n link.click();\r\n }\r\n }\r\n });\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { LeaveComponent } from './leave.component';\r\nimport { ApprovalComponent } from './approval/approval.component';\r\nimport { CompOffComponent } from './comp-off/comp-off.component';\r\nimport { HolidaysComponent } from './holidays/holidays.component';\r\nimport { LeaveTypeComponent } from './setting/leave-type/leave-type.component';\r\nimport { ClientholidayComponent } from './clientholiday/clientholiday.component';\r\nimport { GeneralsettingsComponent } from './setting/generalsettings/generalsettings.component';\r\nimport { AuthGuard } from '../../auth.guard';\r\nimport { CustomizePolicyComponent } from './setting/customize-policy/customize-policy.component';\r\nimport { CustomizeLeaveBalanceComponent } from './setting/customize-leave-balance/customize-leave-balance.component';\r\nimport { UpdateLeaveBalanceComponent } from './setting/customize-leave-balance/update-leave-balance/update-leave-balance.component';\r\nimport { ApprovalSettingComponent } from './setting/approval-setting/approval-setting.component';\r\nimport { ScheduleServicesComponent } from './setting/scheduleServices/scheduleServices.component';\r\nimport { UserReportComponent } from './leave-report/user-report/user-report.component';\r\nimport { UserAvailabilityReportComponent } from './leave-report/user-availability-report/user-availability-report.component';\r\nimport { DailyReportComponent } from './leave-report/daily-report/daily-report.component';\r\nimport { LeaveTakenReportComponent } from './leave-report/leave-taken-report/leave-taken-report.component';\r\nimport { LeaveBalanceReportComponent } from './leave-report/leave-balance-report/leave-balance-report.component';\r\n\r\n\r\nconst routes: Routes = [{\r\n path: '',\r\n component: LeaveComponent\r\n},\r\n{\r\n path: 'leave/approval',\r\n component: ApprovalComponent,\r\n data: {\r\n //title: 'Requests/Approvals',\r\n module: 'APPROVAL'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/approval/:userId',\r\n component: ApprovalComponent,\r\n data: {\r\n //title: 'Requests/Approvals',\r\n module: 'APPROVAL'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/comp-off',\r\n component: CompOffComponent,\r\n data: {\r\n //title: 'Compensatory Off Requests',\r\n module: 'COMPOFF'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/holidays',\r\n component: HolidaysComponent,\r\n data: {\r\n //title: 'Holidays',\r\n module: 'HOLIDAYS'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/clientholiday',\r\n component: ClientholidayComponent,\r\n data: {\r\n //title: 'Clientholiday',\r\n module: 'CLIENTHOLIDAY' \r\n }, //canActivate: [AuthGuard] \r\n},\r\n\r\n// {\r\n// path: 'leave/comp-off/approve',\r\n// component: CompOffApproveComponent,\r\n// data: {\r\n// title: 'Compensatory Off Requests Approval',\r\n// module: 'COMP-OFF-APPROVE'\r\n// }\r\n// },\r\n// {\r\n// path: 'leave/leave-approval',\r\n// component: LeaveApprovalComponent,\r\n// data: {\r\n// title: 'Leave Approval',\r\n// module: 'LEAVEAPPROVAL'\r\n// }\r\n// },\r\n{\r\n path: 'leave/setting/leave-type',\r\n component: LeaveTypeComponent,\r\n data: {\r\n //title: 'Custom Leave Type ',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n {\r\n path: 'leave/setting/generalsettings',\r\n component: GeneralsettingsComponent,\r\n data: {\r\n //title: 'General Settings',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n}\r\n,\r\n {\r\n path: 'leave/setting/customize-privacy',\r\n component: CustomizePolicyComponent,\r\n data: {\r\n //title: 'Customize Leave Policy',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/setting/customize-leave-balance',\r\n component: CustomizeLeaveBalanceComponent,\r\n data: {\r\n //title: 'Customize Leave Balance',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/setting/customize-leave-balance/update-balance',\r\n component: UpdateLeaveBalanceComponent,\r\n data: {\r\n //title: 'Customize Leave Balance',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/setting/approval-setting',\r\n component: ApprovalSettingComponent,\r\n data: {\r\n //title: 'Approval Settings',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n\r\n{\r\n path: 'leave/setting/scheduleServices',\r\n component: ScheduleServicesComponent,\r\n data: {\r\n //title: 'Approval Settings',\r\n module: 'SETTING'\r\n }, //canActivate: [AuthGuard]\r\n},\r\n\r\n{\r\n path: 'leave/report/user-report',\r\n component: UserReportComponent,\r\n data: {\r\n //title: 'User Report',\r\n module: 'LEAVEREPORT'\r\n }, canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/report/user-availability-report',\r\n component: UserAvailabilityReportComponent,\r\n data: {\r\n //title: 'User Availability Report',\r\n module: 'LEAVEREPORT'\r\n }, canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/report/daily-report',\r\n component: DailyReportComponent,\r\n data: {\r\n //title: 'Daily Report',\r\n module: 'LEAVEREPORT'\r\n }, canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/report/leave-taken-report',\r\n component: LeaveTakenReportComponent,\r\n data: {\r\n //title: 'Leave Taken Report',\r\n module: 'LEAVEREPORT'\r\n }, canActivate: [AuthGuard]\r\n},\r\n{\r\n path: 'leave/report/Leave-balance-report',\r\n component: LeaveBalanceReportComponent,\r\n data: {\r\n //title: 'Leave Balance Report',\r\n module: 'LEAVEREPORT'\r\n }, canActivate: [AuthGuard]\r\n},\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class LeaveRoutingModule { }\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Leave Dashboard

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n   {{financialYearText}}  \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n\r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {{ leavetype.leaveTypeName }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \"LeaveIcon\"\r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    Available
    \r\n
    {{leavetype.availableLeaves}}
    \r\n
    \r\n\r\n
    \r\n
    Booked
    \r\n
    {{leavetype.takenLeaves}}\r\n
    \r\n
    \r\n
    \r\n
    Used
    \r\n
    {{ leavetype.usedleave }}
    \r\n
    \r\n
    \r\n
    Planned
    \r\n
    {{ leavetype.planedleave }}
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n\r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {{dateformat(holidayList.HolidayStartDate)}}\r\n \r\n \r\n \r\n \r\n {{holidayList.day}}\r\n \r\n \r\n\r\n \r\n \r\n {{ holidayList.HolidayTitle }}\r\n \r\n \r\n \r\n \r\n {{ holidayList.holidaytype }}\r\n \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ country.employeeName}}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {{ dateformat(country.leaveStartDate) }} -\r\n {{ dateformat(country.leaveEndDate) }}\r\n \r\n \r\n\r\n \r\n \r\n {{ country.totalDays }} {{country.dayHoursTaken}}\r\n \r\n \r\n\r\n \r\n \r\n {{ dateformat(country.createdDate) }}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{leaveType}} Leave

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n {{todatlEmployeeList.employeeName}} - {{todatlEmployeeList.empCode}} - {{todatlEmployeeList.userId}}\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n Employee name is required *\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n\r\n
    \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n Leave type is required *\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n Duration dates are required *\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    0\">\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{dateformat(LeaveCalendarDatesList[i].LeaveDate)}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n Hrs\r\n
    \r\n Total \r\n \r\n \r\n {{ totalApplyingLeaves }}\r\n Day(s)\r\n Hour(s)\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
     
    \r\n
    \r\n
    \r\n Note:\r\n Weekends and Holidays will be counted as leave.\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n Applying for {{ totalApplyingLeaves }} leave\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n\r\n
    \r\n Please upload file\r\n
    \r\n
    \r\n Please upload JPG, PNG or PDF file formats.\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    As of {{currentDate | date}}\r\n Day(s)\r\n Hour(s)\r\n
    Available balance{{ decimalformat(showAvlLeave)}}
    Currently booked{{ decimalformat(totalApplyingLeaves)}}
    Balance after booked leave{{decimalformat(showBalLeave)}}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{leaveType}} Leave

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n {{todatlEmployeeList.employeeName}} - {{todatlEmployeeList.empCode}} - {{todatlEmployeeList.userId}}\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n Employee name is required *\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n Leave type is required *\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n Duration dates are required *\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    0\">\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{dateformat(LeaveCalendarDatesList[i].LeaveDate)}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n Hrs\r\n
    \r\n Total \r\n \r\n \r\n {{ totalApplyingLeaves }}\r\n Day(s)\r\n Hour(s)\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
     
    \r\n
    \r\n
    \r\n Note:\r\n Weekends and Holidays will be counted as leave.\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n Applying for {{ totalApplyingLeaves }} leave\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n\r\n
    \r\n Please upload file\r\n
    \r\n
    \r\n Please upload JPG, PNG or PDF file formats.\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    As of {{showLeaveTakenDay | date}}\r\n Day(s)\r\n Hour(s)\r\n
    Available balance{{decimalformat(ViewshowAvlLeave)}}
    Currently booked{{decimalformat(ViewtotalApplyingLeaves)}}
    Balance after booked leave{{decimalformat(ViewshowBalLeave)}}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Please authorize to push leave and holidays to Google Calendar

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Push to Google Calendar

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {{ calendarSyncAuthorized.googleSyncEmailId }}\r\n Revoke\r\n
    \r\n
    \r\n {{ currentGmailAccountId }}\r\n Revoke\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n * \r\n Upcoming leave and holidays will be automatically pushed to this Calendar\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Are you sure you want to delete this leave.

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Are you sure? You want to cancel this leave request?

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n This field is mandatory\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n QueryList,\r\n ViewChildren,\r\n Directive,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n\r\n} from \"@angular/core\";\r\nimport { LeaveService } from \"./leave.service\";\r\nimport { FormGroup, FormBuilder, Validators } from \"@angular/forms\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap/datepicker\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { DatePipe } from '@angular/common';\r\nimport * as moment from 'moment';\r\nimport { GridComponent } from \"@syncfusion/ej2-angular-grids\";\r\nimport { ExpenseHttpService } from \"src/app/services/expense/expense-http.service\";\r\nimport { ToasterService } from \"../expense/toaster/toaster.service\";\r\n\r\n\r\ninterface Country {\r\n empCode?: any;\r\n leaveTypeName: string;\r\n leaveStartDate: string;\r\n leaveEndDate: string;\r\n totalDays: any;\r\n status: string;\r\n createdDate: string;\r\n type: string;\r\n}\r\nclass LeaveTypeData {\r\n LeaveTypeId: number;\r\n LeaveTypeName: string;\r\n LType: number;\r\n TypeText: string;\r\n Unit: number;\r\n UnitText: string;\r\n IsDurationFullDay: boolean;\r\n IsDurationHalfDay: boolean;\r\n IsDurationQuarterDay: boolean;\r\n EnableFileUploadOption: boolean;\r\n OnAppliedLeavePeriodExceeds: number;\r\n OnweekendBetweenLeaveCountAfter: number;\r\n OnCanCountAsLeaveInWeekendBetweenLeave: number;\r\n}\r\nclass LeaveCalendarDates {\r\n LeaveTypeId: number;\r\n LeaveDate: string;\r\n DayType: string;\r\n Type: string;\r\n Time: string;\r\n Hours: string;\r\n IsWeekEnd: Boolean;\r\n}\r\n\r\nexport type SortColumn = keyof Country | \"\";\r\nexport type SortDirection = \"asc\" | \"desc\" | \"\";\r\nconst rotate: { [key: string]: SortDirection } = {\r\n asc: \"desc\",\r\n desc: \"\",\r\n \"\": \"asc\",\r\n};\r\nconst compare = (v1: string, v2: string) => (v1 < v2 ? -1 : v1 > v2 ? 1 : 0);\r\n\r\nexport interface SortEvent {\r\n column: SortColumn;\r\n direction: SortDirection;\r\n}\r\n\r\n@Directive({\r\n selector: \"th[sortable]\",\r\n host: {\r\n \"[class.asc]\": 'direction === \"asc\"',\r\n \"[class.desc]\": 'direction === \"desc\"',\r\n \"(click)\": \"rotate()\",\r\n },\r\n})\r\nexport class NgbdSortableHeaders {\r\n @Input() sortable: SortColumn = \"\";\r\n @Input() direction: SortDirection = \"\";\r\n @Output() sort = new EventEmitter();\r\n\r\n rotate() {\r\n this.direction = rotate[this.direction];\r\n this.sort.emit({ column: this.sortable, direction: this.direction });\r\n }\r\n}\r\n\r\n@Component({\r\n selector: \"app-leave\",\r\n templateUrl: \"./leave.component.html\",\r\n styleUrls: [\"./leave.component.css\"],\r\n})\r\nexport class LeaveComponent implements OnInit{\r\n\r\n datePickerConfiq: Partial;\r\n leaveApply: FormGroup;\r\n allLeaveTypeList: any;\r\n allHolidayList: any;\r\n currentUserId: any;\r\n submitted = false;\r\n submittedForFileUpload = false;\r\n leaveStartFrom: Date;\r\n userLoader: Boolean = false;\r\n collection: any[];\r\n public showSuccess: Boolean;\r\n public showMessage: string;\r\n page = 1;\r\n pageSize = 10;\r\n COUNTRIES: Country[] = [];\r\n parms;\r\n collectionSize: any;\r\n countries1 = this.COUNTRIES;\r\n startDateChange;\r\n minDate: Date;\r\n bsValue: Date = new Date();\r\n @ViewChildren(NgbdSortableHeaders) headers: QueryList;\r\n myDateValue;\r\n startDate: any;\r\n endDate: any;\r\n applyingLeaveDays: Number = 0;\r\n userAvalLeave: any;\r\n currentDate: Date;\r\n preYearDate: any;\r\n nextYearDate: any;\r\n employeName: any;\r\n employeCode: any;\r\n financialYearText: any;\r\n showAvlLeave: any;\r\n showBalLeave: any;\r\n todatlEmployeeList: any;\r\n applyLeaveSelectedUserId: any;\r\n applyLeaveSelectedUserLeaveBalance: any;\r\n currentUserName: any;\r\n currentUserCode: any;\r\n DateFormat:any\r\n value:any\r\n // For User Dropdownlist\r\n ddlEmployeeUserId: any;\r\n EmployeeList = [];\r\n ActiveEmployee = [];\r\n\r\n // For Financial Year\r\n currentFinancialYearId: any;\r\n prevFinancialYearId: any;\r\n nextFinancialYearId: any;\r\n\r\n LeaveTypeDetails: LeaveTypeData;\r\n DayTypeSelectList = [];\r\n TypeSelectList = [];\r\n totalApplyingLeaves: any;\r\n\r\n LeaveCalendarDatesList: LeaveCalendarDates[];\r\n\r\n fileToUpload: File = null;\r\n isRequiredFileUpload: Boolean = false;\r\n isFileUploaded: Boolean = false;\r\n isUploadedFileInvalidFormat: Boolean = false;\r\n\r\n showWeekendHolidayCountNote: Boolean = false;\r\n\r\n syncCalendarType: any;\r\n gapi: any;\r\n auth2: any;\r\n\r\n @ViewChild('googleAuthorize') googleAuthorizeElement: ElementRef;\r\n @ViewChild('loginRef2') loginElement2: ElementRef;\r\n\r\n\r\n\r\n calendarSyncAuthorized: any;\r\n currentGmailAccountId: String = \"\";\r\n intervalFunGmailAccountSubscription: Subscription;\r\n intervalFunGmailAccount: any;\r\n\r\n generalSettingsData: any;\r\n\r\n editMode = false;\r\n\r\n cancelLeaveReason: any = \"\";\r\n isCancelReasonMandatory: Boolean = false;\r\n isCancelReasonTextboxEmpty: Boolean = true;\r\nCmpCode:any;\r\n leaveId: any;\r\n setbypass: any;\r\n viewType;\r\n formUser: any;\r\n userExpireLeave: any;\r\n showLeaveTakenDay: any;\r\n globalArrayDatesList: any;\r\n ViewshowAvlLeave: any;\r\n ViewtotalApplyingLeaves: any;\r\n ViewshowBalLeave: any;\r\n\r\n constructor(\r\n private _leaveSer: LeaveService,private datePipe:\r\n DatePipe,\r\n private _fb: FormBuilder,\r\n private _authSer: AuthService,\r\n private toaster: ToasterService,\r\n private _commonSer: CommonService\r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.datePickerConfiq = Object.assign(\r\n {},\r\n {\r\n showWeekNumbers: true,\r\n }\r\n );\r\n }\r\n\r\n\r\n ngOnInit() {//Angular Lifecycle Hook\r\n debugger\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.DateFormat= this._authSer.getdateFormat();\r\n this.googleSDK();\r\n var dateCheck=new Date()\r\n\r\n this.currentDate = new Date();\r\n this.leaveApply = this._fb.group({\r\n leaveId: 0,\r\n UserId: [ , Validators.required,],\r\n LeaveTypeId: [, Validators.required],\r\n LeaveStartDate: [\"\", Validators.required],\r\n LeaveEndDate: [\"\", Validators.required],\r\n TotalDays: [\"\"],\r\n LeaveReason: [\"\"],\r\n CreatedBy: [\"\"],\r\n LeaveDatesList: [[]],\r\n FileUpload: [],\r\n cmpCode: \"\",\r\n TeamEmailId: \" \"\r\n\r\n });\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n this.ddlEmployeeUserId = res.userId;\r\n });\r\n var roleid=this._authSer.getRoleId()\r\n this.todatlEmployeeList=[]\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n this.ddlEmployeeUserId = res.userId;\r\n });\r\n this.getCurrentUserDetail();\r\n this.getEmployeesListForSelect();\r\n this.getCurrentFinancialYear();\r\n\r\n this.getAllLeaveType1();\r\n this.bindAllDashboardData();\r\n this.resetLeaveTypeData();\r\n this.syncCalendarType = \"2\";\r\n this.editMode = false;\r\n this.getGeneralSettingsData();\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n this._leaveSer.GetEmployeeLocation(this.CmpCode, this._authSer.getUserId()).subscribe(res =>{\r\n this.locationId = res.data.table[0]?.locationId;\r\n })\r\n }\r\n\r\n public employeeFields: Object = { text: 'text', value: 'id' };\r\n // public todatlemployeeFields: Object = { text: 'employeeName', value: 'empCode' };\r\n public todatlemployeeFields: Object = { text: 'employeeName', value: 'userId' };\r\n public AvlLeaveFields: Object = { text: 'leaveTypeName', value: 'leaveTypeId' };\r\n public text: string = \"Select an employee\";\r\n AvlLeavetext: string = \"Select leave type\"\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n public pageSettings = { pageCount: 3 };\r\n\r\n //--------DatePicker-------\r\n public today: Date = new Date();\r\n public currentYear: number = this.today.getFullYear();\r\n public currentMonth: number = this.today.getMonth();\r\n public currentDay: number = this.today.getDate();\r\n public dateValue: Object = new Date(new Date().setDate(14));\r\n public minCalDate: Object = new Date(this.currentYear, this.currentMonth, 1);\r\n public maxCalDate: Object = new Date(this.currentYear, this.currentMonth, 27);\r\n //-------------------------\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {// Created By K Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n getCurrentUserDetail() {// Created By K Get logged in user details\r\n\r\n this._leaveSer.getEmployeeDetails(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n //this.todatlEmployeeList = res['data'].table;\r\ndebugger\r\n if (res['data'].table != null && res['data'].table.length > 0) {\r\n this.currentUserName = res[\"data\"].table[0].employeeName;\r\n this.currentUserCode = res[\"data\"].table[0].empCode;\r\n }\r\n });\r\n }\r\n myTest: string;\r\n\r\ntoRoleid:any\r\n getEmployeesListForSelect() {// Created By K Get all employees list\r\n this.setbypass = 1708;\r\n\r\n this._leaveSer.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n debugger\r\n var roleid=this._authSer.getRoleId()\r\n this.todatlEmployeeList=[]\r\n if(roleid==\"1\" || roleid==\"2\" ||roleid==\"10\")\r\n {\r\n // this.todatlEmployeeList.push({userId:0,employeeCodeName:\"My Team\"})\r\n this.toRoleid=0\r\n\r\n }\r\n this.todatlEmployeeList = res['data'].table;\r\n\r\n if (res['data'].table != null && res['data'].table.length > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n\r\n // For Dashboard Emplyee Select List\r\n debugger;\r\n this.EmployeeList = this._commonSer.SetDDlDropdownfor(res[\"data\"].table, 'userId', 'employeeCodeName',this.toRoleid);\r\n // this.ddlSelection($event,'Employee');\r\n const currentEmp = this.todatlEmployeeList.find(x => x.userId == this.currentUserId);\r\n\r\n if(this.toRoleid==0)\r\n {\r\n if( res[\"data\"].table.length==1)\r\n {\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n const empValue = { 'id': currentEmp.userId, 'text': currentEmp.employeeCodeName };\r\n this.value=currentEmp.userId\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n this.leaveApply.patchValue({\r\n UserId: currentEmp.userId\r\n });\r\n this.setCurrentUserIdForApplyLeave(undefined);\r\n // this.bindAllDashboardData();\r\n }, 0);\r\n }\r\n }\r\n else{\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n const empValue = { 'id': 0, 'text': \"My Team\" };\r\n this.value=0\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n this.leaveApply.patchValue({\r\n UserId: currentEmp.userId\r\n });\r\n this.setCurrentUserIdForApplyLeave(undefined);\r\n // this.bindAllDashboardData();\r\n },0);\r\n }\r\n }\r\n\r\n }\r\n else{\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n const empValue = { 'id': currentEmp.userId, 'text': currentEmp.employeeCodeName };\r\n this.value=currentEmp.userId\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n this.leaveApply.patchValue({\r\n UserId: currentEmp.userId\r\n });\r\n this.setCurrentUserIdForApplyLeave(undefined);\r\n // this.bindAllDashboardData();\r\n }, 0);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n });\r\n }\r\n\r\n // DateFormat='MM/dd/yyyy';\r\n\r\n\r\n\r\n dateformat(datas:string){// Created By K Global Date format\r\n return this._authSer.Dateformat(datas);\r\n // if (this.DateFormat=='1')\r\n // {\r\n // return this.datePipe.transform(datas, 'MM/dd/yyyy')\r\n\r\n // }\r\n // if(this.DateFormat=='2')\r\n // {\r\n // return this.datePipe.transform(datas, 'dd/MM/yyyy')\r\n // }\r\n // if(this.DateFormat== '3')\r\n // {\r\n // return this.datePipe.transform(datas, 'yyyy/MM/dd')\r\n // }\r\n }\r\n\r\n locationId = 0\r\n ddlSelection(value: any, placeHolder: any) {// Created By K Global Controller for fields update\r\n this.setbypass = undefined\r\n debugger\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n if(value.value != undefined ){\r\n this.ddlEmployeeUserId = value.value;\r\n }\r\n else{\r\n this.ddlEmployeeUserId = value.id;\r\n }\r\n this._leaveSer.GetEmployeeLocation(this.CmpCode, this.ddlEmployeeUserId).subscribe(res =>{\r\n this.locationId = res.data.table[0]?.locationId;\r\n this.bindAllDashboardData();\r\n })\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n\r\n // Created By K Bind All data as per the Financial Year in one call\r\n bindAllDashboardData() {\r\n this.getAllHolidayList();\r\n if(this.setbypass != 1708){\r\n this.getAllLeave();\r\n }\r\n this.userAvaliableLeave();\r\n }\r\n\r\n // LeaveId:\r\n // UserId:\r\n // LeaveTypeId:\r\n // LeaveStartDate:\r\n // LeaveEndDate:\r\n // TotalDays:\r\n // LeaveReason:\r\n // CreatedBy:\r\n // LeaveDatesList:\r\n // FileUpload:\r\n // cmpCode:\r\n // TeamEmailId:\r\n\r\n disableSubmit: boolean = false;\r\n\r\n editLeave(data){// Created By K On Edit Leave\r\n debugger\r\n this.popUPCloseReset();\r\n this.leaveType=\"Edit\";\r\n // this.showLeaveTakenDay = new Date(data.leaveStartDate);\r\n //createdDate\r\n // this.getAllLeave();\r\n // this.Grid.refresh();\r\n this.getLeaveDetails(data.leaveId, data.statusId, this.CmpCode, this.leaveType);\r\n // debugger;\r\n // this.editMode = true;\r\n // this.leaveApply.enable();\r\n // this.viewID = data.leaveId\r\n // this.disableSubmit = false;\r\n // this.LeaveCalendarDatesList = data\r\n // let teamemail: HTMLInputElement = document.getElementsByClassName(\"emailtxt\")[0] as HTMLInputElement;\r\n // let startdate: HTMLInputElement = document.getElementsByName(\"startdate\")[0] as HTMLInputElement;\r\n // let enddate: HTMLInputElement = document.getElementsByName(\"enddate\")[0] as HTMLInputElement;\r\n\r\n // let startdateformated = this.dateformat(data.leaveStartDate)\r\n // let enddateformated = this.dateformat(data.leaveEndDate)\r\n // this.leaveApply.patchValue({\r\n // LeaveReason: data.leaveReason,\r\n // LeaveTypeId: data.leaveTypeId,\r\n // TeamEmailId: data.teamemailId,\r\n // leaveId: this.viewID,\r\n // UserId: data.userId,\r\n // LeaveStartDate: startdateformated,\r\n // LeaveEndDate: enddateformated\r\n\r\n // });\r\n\r\n\r\n // teamemail.setAttribute(\"value\", data.teamemailId)\r\n // startdate.setAttribute(\"value\", startdateformated )\r\n // enddate.setAttribute(\"value\", enddateformated)\r\n }\r\n\r\n viewdisable: boolean = false;\r\n viewID;\r\n leaveType:any\r\n viewLeave(data){// Created By K On View Leave\r\n debugger;\r\n this.popUPCloseReset();\r\n this.leaveType='View'\r\n this.showLeaveTakenDay = new Date(data.createdDate);\r\n // this.getLeaveDetails(data.leaveId, data.statusId, this.CmpCode, this.leaveType);\r\n\r\n this._leaveSer.getLeaveDetailsForEdit(data.leaveId, this.CmpCode)\r\n .subscribe((response) => {\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(response);\r\n if (response.success == true) {\r\n this.setLeaveFormData(response.data, 'View');\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.toaster.show(\"error\", this.showMessage )\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n }, (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"error\", this.showMessage )\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n\r\n // let fordate = this.dateformat(this.showLeaveTakenDay)\r\n let fordate = this.datePipe.transform(this.showLeaveTakenDay, \"yyyy-MM-dd\")\r\n this._leaveSer.getviewtimebalance(data.userId ,data.leaveTypeId, data.totalDays, this.CmpCode, fordate)\r\n .subscribe((response) => {\r\n this.userLoader = false;\r\n console.log(response);\r\n if (response.success == true) {\r\n\r\n this.ViewshowAvlLeave = response.data.table[0].totalBalance\r\n this.ViewtotalApplyingLeaves = response.data.table[0].taken\r\n this.ViewshowBalLeave = response.data.table[0].leftbalence\r\n } else {\r\n\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.toaster.show(\"error\", this.showMessage )\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n });\r\n\r\n\r\n // this.getAllLeave();\r\n // this.Grid.refresh();\r\n // alert(\"helo\")\r\n // this.viewType = false\r\n //this.disableSubmit = true;\r\n // this.viewID = data.LeaveId\r\n\r\n // let reasonleave: HTMLInputElement = document.getElementsByClassName(\"emailtxt\")[0] as HTMLInputElement;\r\n // let startdate: HTMLInputElement = document.getElementsByName(\"startdate\")[0] as HTMLInputElement;\r\n // let enddate: HTMLInputElement = document.getElementsByName(\"enddate\")[0] as HTMLInputElement;\r\n // let dateconvert =new Date(data.leaveStartDate);\r\n // let enddate22 = new Date(data.leaveEndDate);\r\n // this.leaveApply.patchValue({\r\n // LeaveReason: data.leaveReason,\r\n // LeaveTypeId: data.leaveTypeId,\r\n // TeamEmailId: data.teamemailId,\r\n // UserId: data.userId,\r\n // LeaveStartDate: dateconvert,\r\n // LeaveEndDate: enddate22\r\n\r\n\r\n // });\r\n // reasonleave.setAttribute(\"value\", data.teamemailId)\r\n // startdate.setAttribute(\"value\", dateconvert )\r\n // enddate.setAttribute(\"value\", enddate22)\r\n\r\n\r\n }\r\n Deleteleave(data) {// Created By K Initialize delete\r\n debugger;\r\n this.leaveId = data.leaveId;\r\n }\r\n\r\n LeaveDelete(){// Created By K Delete Leave\r\n try {\r\n let userId = this._authSer.getUserId();\r\n let param = {\r\n leaveId: this.leaveId,\r\n createdBy: userId,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveSer.DeleteLeave(param).subscribe((res) => {\r\n if (res.success === true) {\r\n this.toaster.show(\"success\", res.message);\r\n this.getAllLeave();\r\n this.Grid.refresh();\r\n } else {\r\n this.toaster.show(\"warning\", res.message);\r\n }\r\n });\r\n } catch (ex) { }\r\n\r\n }\r\n\r\n UpdateLeave(){// Created By K On Save Leave for edit\r\n debugger;\r\n if (this.editMode == true) {\r\n this.leaveApply.patchValue({\r\n LeaveDatesList: this.LeaveCalendarDatesList,\r\n LeaveStartDate: this.datePipe.transform(this.leaveApply.value.LeaveStartDate, \"MM-dd-yyyy\"),\r\n LeaveEndDate:this.datePipe.transform(this.leaveApply.value.LeaveEndDate, \"MM-dd-yyyy\"),\r\n })\r\n this._leaveSer.updateAppliedLeave(this.leaveApply.value).subscribe(\r\n (response) => {\r\n this.userLoader = false;\r\n this.submitted = false;\r\n this.submittedForFileUpload = false;\r\n this.showMessage = response.message;\r\n this.getAllLeave();\r\n this.Grid.refresh();\r\n console.log(response);\r\n if (response.success == true) {\r\n this.saveUploadedFiles(response.leaveId, this.leaveApply.value.UserId);\r\n\r\n this.showSuccess = true;\r\n this.showMessage = response.data;\r\n //this.getAllLeave();\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this.toaster.show(\"success\",this.showMessage);\r\n this.leaveApply.reset();\r\n this._commonSer.CloseModalHandler(\"applyLeaveEditMode\");\r\n this.userAvaliableLeave();\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.toaster.show(\"error\",this.showMessage);\r\n\r\n this._commonSer.OpenModalHandler(\"applyLeaveEditMode\");\r\n }\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"error\",this.showMessage);\r\n this._commonSer.OpenModalHandler(\"applyLeaveEditMode\");\r\n }\r\n );\r\n }\r\n\r\n }\r\n getCurrentFinancialYear() {// Created By K Get financial year details\r\n debugger\r\n this._leaveSer.getCurrentFinancialYear(this.CmpCode).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n });\r\n }\r\n\r\ngetFinancialYearDetailsback(evnt, financialYearId) {// Created By K Previous year handler\r\ndebugger\r\nthis.setbypass = 1700\r\n if(this.value == 0){\r\n // this.ddlEmployeeUserId = this._authSer.getUserId()\r\n }else{\r\n this.ddlEmployeeUserId = this.value\r\n }\r\n\r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => {\r\n\r\n\r\n this._leaveSer.getFinancialYearDetails(res.data.table1[0].prevId, cmp).subscribe((res) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n\r\n\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n elementAddLeave.style.pointerEvents = \"none\"\r\n elementTypeList.style.pointerEvents = \"none\"\r\n // elementHoliday.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n elementAddLeave.style.pointerEvents = \"auto\"\r\n elementTypeList.style.pointerEvents = \"auto\"\r\n // elementHoliday.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n\r\n\r\n this.bindAllDashboardData();\r\n\r\n });\r\n });\r\n }\r\n\r\n getFinancialYearDetailsForwrd(evnt, financialYearId) {// Created By K Next Year handler\r\n debugger\r\n this.setbypass = 1700\r\n if(this.value == 0){\r\n // this.ddlEmployeeUserId = this._authSer.getUserId()\r\n }else{\r\n this.ddlEmployeeUserId = this.value\r\n }\r\n let cmp = this._authSer.getcompanyCode()\r\n this._leaveSer.getFinancialYearDetails(financialYearId, cmp).subscribe((res: any) => {\r\n this.financialYearText = res[\"data\"].table[0].title;\r\n this.currentFinancialYearId = res[\"data\"].table[0].financialYearId;\r\n this.prevFinancialYearId = res[\"data\"].table1[0].prevId;\r\n this.nextFinancialYearId = res[\"data\"].table1[0].nextId;\r\n let today = new Date();\r\n let currentyear = today.getFullYear();\r\n let year = res[\"data\"].table[0].startYear;\r\n if(year != currentyear){\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n elementAddLeave.style.pointerEvents = \"none\"\r\n elementTypeList.style.pointerEvents = \"none\"\r\n // elementHoliday.style.pointerEvents = \"none\"\r\n // elementLeaves.style.pointerEvents = \"none\"\r\n }else{\r\n let elementAddLeave: HTMLElement = document.getElementsByClassName(\"LeaveTypeList\")[0] as HTMLElement;\r\n let elementTypeList: HTMLElement = document.getElementsByClassName(\"LeaveDisablesOnpre\")[0] as HTMLElement;\r\n // let elementHoliday: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n let elementLeaves: HTMLElement = document.getElementsByClassName(\"disableActionbutton11\")[0] as HTMLElement;\r\n\r\n elementAddLeave.style.pointerEvents = \"auto\"\r\n elementTypeList.style.pointerEvents = \"auto\"\r\n // elementHoliday.style.pointerEvents = \"auto\"\r\n // elementLeaves.style.pointerEvents = \"auto\"\r\n }\r\n this.bindAllDashboardData();\r\n\r\n });\r\n }\r\n\r\n\r\n datepickerStartDate($event1) {// Created By K Calculate leave dates on start date click\r\n this.startDate = $event1;\r\n this.minDate = this.startDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n this.calculateDays();\r\n }\r\n datepickerEndDate($event1) {// Created By K Calculate leave dates on end date click\r\n this.endDate = $event1;\r\n this.minDate = this.startDate;\r\n this.calculateDays();\r\n }\r\n calculateDays() {// Created By K leave dates calculation logic\r\n let vw = this;\r\n debugger;\r\n if (this.startdate != null && this.enddate != null) {\r\n let leaveStartDate = new Date(this.startdate);\r\n let leaveEndDate = new Date(this.enddate);\r\n this.applyingLeaveDays = 0;\r\n let days = Math.floor((Date.UTC(leaveEndDate.getFullYear(), leaveEndDate.getMonth(), leaveEndDate.getDate()) - Date.UTC(leaveStartDate.getFullYear(), leaveStartDate.getMonth(), leaveStartDate.getDate())) / (1000 * 60 * 60 * 24));\r\n if (days != undefined && days != null) {\r\n days = days + 1;\r\n if (days < 0) {\r\n days = 0;\r\n }\r\n this.applyingLeaveDays = days;\r\n this.leaveApply.controls.TotalDays.setValue(days) ;\r\n\r\n }\r\n\r\n if (leaveStartDate != null && leaveEndDate != null) {\r\n\r\n let weekday = new Array(7);\r\n weekday[0] = \"Sunday\";\r\n weekday[1] = \"Monday\";\r\n weekday[2] = \"Tuesday\";\r\n weekday[3] = \"Wednesday\";\r\n weekday[4] = \"Thursday\";\r\n weekday[5] = \"Friday\";\r\n weekday[6] = \"Saturday\";\r\n\r\n if (this.submitted == false) {\r\n debugger\r\n this.LeaveCalendarDatesList = [];\r\n let arrayDatesList = this.getDates(leaveStartDate, leaveEndDate);\r\n this.globalArrayDatesList = this.getDates(leaveStartDate, leaveEndDate);\r\n for (let i = 0; i < arrayDatesList.length; i++) {\r\n let _newDate = arrayDatesList[i];\r\n let _day = weekday[_newDate.getDay()];\r\n\r\n let newData = new LeaveCalendarDates();\r\n newData.LeaveDate = _newDate ;\r\n newData.DayType = \"1\";\r\n newData.Type = \"1\";\r\n newData.Time = \"09:30\";\r\n newData.Hours = \"9.00\";\r\n newData.IsWeekEnd = false;\r\n\r\n if (_day == \"Sunday\" || _day == \"Saturday\") {\r\n newData.DayType = \"4\";\r\n newData.IsWeekEnd = true;\r\n }\r\n\r\n vw.LeaveCalendarDatesList.push(newData);\r\n }\r\n\r\n this.calculateTotalLeaves();\r\n\r\n this.getDatesListFromAPI();\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n getDates(startDate, endDate) {// Created By K Get dates between two dates\r\n let dateArray = new Array();\r\n\r\n let tStartDate = new Date(startDate);\r\n let tEndDate = new Date(endDate);\r\n\r\n let sDate = new Date(tStartDate.getFullYear() + \"-\" + (tStartDate.getMonth() + 1) + \"-\" + tStartDate.getDate() + \" 00:00:00\");\r\n let eDate = new Date(tEndDate.getFullYear() + \"-\" + (tEndDate.getMonth() + 1) + \"-\" + tEndDate.getDate() + \" 00:00:00\");\r\n\r\n let currentDate = sDate;\r\n while (currentDate <= eDate) {\r\n dateArray.push(new Date(currentDate));\r\n currentDate.setDate(currentDate.getDate() + 1);\r\n }\r\n return dateArray;\r\n }\r\n\r\n\r\n getDatesListFromAPI() {// Created By K Get Dates List From API\r\n let tempLeaveCalendarDatesList = [];\r\n for (let i = 0; i < this.LeaveCalendarDatesList.length; i++) {\r\n let _newDate = this.LeaveCalendarDatesList[i].LeaveDate;\r\n if (_newDate != null) {\r\n let newDateData = {\r\n LeaveTypeId: this.LeaveCalendarDatesList[i].LeaveTypeId,\r\n LeaveDate: this.getCSharpFormattedDate(_newDate),\r\n DayType: this.LeaveCalendarDatesList[i].DayType,\r\n Type: this.LeaveCalendarDatesList[i].Type,\r\n Time: this.LeaveCalendarDatesList[i].Time,\r\n Hours: this.LeaveCalendarDatesList[i].Hours,\r\n IsWeekEnd: this.LeaveCalendarDatesList[i].IsWeekEnd,\r\n };\r\n tempLeaveCalendarDatesList.push(newDateData);\r\n }\r\n }\r\n let _startDate = this.startDate;\r\n let _endDate = this.endDate;\r\n\r\n if (_startDate == null || _endDate == null) {\r\n return;\r\n }\r\n\r\n let modelData = {\r\n LeaveTypeId: this.leaveApply.value.LeaveTypeId,\r\n LeaveStartDate: this.getCSharpFormattedDate(_startDate),\r\n LeaveEndDate: this.getCSharpFormattedDate(_endDate),\r\n LeaveDatesList: tempLeaveCalendarDatesList,\r\n UserId: this.leaveApply.value.UserId,\r\n CmpCode:this.CmpCode\r\n };\r\n this.userLoader = true;\r\n\r\n this._leaveSer.getLeaveDates(modelData).subscribe(\r\n (response) => {\r\n this.userLoader = false;\r\n console.log(response);\r\n if (response.success == true) {\r\n let _tempDatesList = response.data;\r\n this.showWeekendHolidayCountNote = response.showMessage;\r\n\r\n for (let i = 0; i < _tempDatesList.length; i++) {\r\n this.LeaveCalendarDatesList[i].DayType = _tempDatesList[i].dayType;\r\n }\r\n this.calculateTotalLeaves();\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n );\r\n }\r\n\r\n getAllLeave() {// Created By K Get All Leaves\r\n debugger;\r\n // if(this.setbypass == undefined){\r\n var currentID = this.ddlEmployeeUserId;\r\n // }else{\r\n // var currentID = this.value;\r\n // }\r\n //this.currentUserId;\r\n let _currentFinancialYearId = this.currentFinancialYearId;\r\n if (_currentFinancialYearId == undefined || _currentFinancialYearId == null) {\r\n _currentFinancialYearId = 0;\r\n }\r\n\r\n let parms = {\r\n UserId: currentID,\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n SortType: \"desc\",\r\n FieldName: \"CreatedDate\",\r\n Condition: \"\",\r\n FinancialYearId: _currentFinancialYearId,\r\n CmpCode:this.CmpCode,\r\n loginUserid:this._authSer.getUserId()\r\n };\r\n this.userLoader = true;\r\n this._leaveSer.getAllLeave(parms).subscribe((res) => {\r\n debugger;\r\n this.userLoader = false;\r\n this.COUNTRIES = res[\"data\"].table;\r\n this.collectionSize = this.COUNTRIES.length;\r\n });\r\n }\r\n getEmplyeDetails() {// Created By A Get All employees\r\n this._leaveSer.getEmployeeDetails(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n // this.todatlEmployeeList = res['data'].table;\r\n // this.employeName = res[\"data\"].table[0].employeeName;\r\n // this.employeCode = res[\"data\"].table[0].empCode;\r\n });\r\n }\r\n decimalformat(datas: string) {// Created By K Global Date format\r\n return this._authSer.DecimalFormat(datas);\r\n }\r\n userAvaliableLeave() {// Created By K Get user available leaves balance\r\n debugger;\r\n // this.userAvalLeave = [];\r\n // this.applyLeaveSelectedUserLeaveBalance = [];\r\n this.userLoader = true;\r\n let currentUserId = +this.ddlEmployeeUserId; //this.currentUserId;\r\n let _currentFinancialYearId = this.currentFinancialYearId;\r\n if (_currentFinancialYearId == undefined || _currentFinancialYearId == null) {\r\n _currentFinancialYearId = 0;\r\n }\r\n if (currentUserId > 0) {\r\n this._leaveSer.getAvailableLeaveBalance(currentUserId, _currentFinancialYearId,this.CmpCode).subscribe((res) => {\r\n console.log(res);\r\n this.userLoader = false;\r\n this.userAvalLeave = res[\"data\"].table;\r\n this.userExpireLeave = res[\"data\"].table1;\r\n this.applyLeaveSelectedUserLeaveBalance = res[\"data\"].table;\r\n });\r\n }\r\n }\r\n onSelectLeeaveType(event1) {// Created By K On Select Leave type\r\n debugger\r\n this.showAvlLeave = event1.value\r\n this.leaveApply.controls[\"LeaveTypeId\"].patchValue(event1.value);\r\n this.applyLeaveSelectedUserLeaveBalance.filter(res => {\r\n if (res.leaveTypeId == event1.value) {\r\n this.showAvlLeave = res.availableLeaves;\r\n }\r\n });\r\n this.setAvailableLeaveBalanceByLeaveType();\r\n //console.log(event1.target.value,event1);\r\n // if (this.leaveApply.value.LeaveTypeId != null) {\r\n this.getLeaveTypeDetails(this.leaveApply.value.LeaveTypeId);\r\n // }\r\n }\r\n\r\n\r\n\r\n setCurrentUserIdForApplyLeave(evt) {// Created By A get user leave balance\r\n debugger;\r\n this.applyLeaveSelectedUserId = evt.value;\r\n this._leaveSer.getAvailableLeaveBalance(this.applyLeaveSelectedUserId, 0,this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n this.applyLeaveSelectedUserLeaveBalance = res[\"data\"].table;\r\n this.setAvailableLeaveBalanceByLeaveType();\r\n });\r\n }\r\n\r\n setAvailableLeaveBalanceByLeaveType() {// Created By A Get leave type balance\r\n if (this.leaveApply.value.LeaveTypeId != null) {\r\n this.applyLeaveSelectedUserLeaveBalance.forEach(type => {\r\n if (type.leaveTypeId == this.leaveApply.value.LeaveTypeId) {\r\n if (this.leaveApply.value.TotalDays == null || this.leaveApply.value.TotalDays == undefined || this.leaveApply.controls[\"LeaveEndDate\"].value != \"\" ) {\r\n this.leaveApply.value.TotalDays = 0;\r\n\r\n }\r\n this.showAvlLeave = type.availableLeaves + this.leaveApply.value.TotalDays;\r\n }\r\n });\r\n // this.applyLeaveSelectedUserLeaveBalance.filter(res => {\r\n // if (res.leaveTypeId == this.leaveApply.value.LeaveTypeId) {\r\n // this.showAvlLeave = res.availableLeaves;\r\n // }\r\n // });\r\n }\r\n }\r\n\r\n popUPCloseReset() {// Created By K Reset and close modal\r\n this.leaveType=\"Apply\"\r\n this.leaveApply.enable();\r\n this.submitted = false;\r\n this.disableSubmit = false;\r\n this.submittedForFileUpload = false;\r\n this.leaveApply.reset();\r\n this.showAvlLeave = null;\r\n this.editMode = false;\r\n this.LeaveCalendarDatesList = [];\r\n this.resetLeaveTypeData();\r\n this.leaveApply.patchValue({\r\n UserId: this.currentUserId,\r\n });\r\n this.value\r\n\r\n const currentEmp = this.todatlEmployeeList.find(x => x.userId == this.currentUserId);\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n // setTimeout(() => {\r\n // this.leaveApply.patchValue({\r\n // UserId: currentEmp.userId\r\n // });\r\n // this.setCurrentUserIdForApplyLeave(undefined);\r\n // }, 300);\r\n }\r\n\r\n this.showWeekendHolidayCountNote = false;\r\n\r\n this.cancelLeaveReason = \"\";\r\n this.isCancelReasonTextboxEmpty = true;\r\n }\r\n selectLeaveID(selectId, avlLeave) {// Created By A On selct leave type\r\n debugger;\r\n this.popUPCloseReset();\r\n // this.leaveApply.reset();\r\n // this.LeaveCalendarDatesList = [];\r\n // this.resetLeaveTypeData();\r\n\r\n this.showAvlLeave = avlLeave;\r\n this.leaveApply.patchValue({\r\n LeaveTypeId: selectId,\r\n UserId: this.currentUserId,\r\n });\r\n\r\n this.getLeaveTypeDetails(selectId);\r\n\r\n debugger\r\n // this.setCalendarListDDLs()\r\n // if(this.DayTypeSelectList.length == 0){\r\n // this.DayTypeSelectList.push({ value: 1, text: \"Full Day\" },{ value: 2, text: \"Half Day\" },{ value: 3, text: \"Quarter Day\" })\r\n\r\n // }\r\n }\r\n getAllLeaveType1() {// Created By K Getting all leave type\r\n this._leaveSer.getAllLeavetype(this.CmpCode).subscribe((response) => {\r\n this.allLeaveTypeList = response.data.table;\r\n });\r\n }\r\n\r\n getAllHolidayList() {// Created By K Getting holidays list\r\n this.userLoader = true;\r\n let _currentFinancialYearId = this.currentFinancialYearId;\r\n if (_currentFinancialYearId == undefined || _currentFinancialYearId == null) {\r\n _currentFinancialYearId = 0;\r\n }\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n SortType: \"desc\",\r\n FieldName: \"CreatedDate\",\r\n Condition: \"\",\r\n FinancialYearId: _currentFinancialYearId,\r\n StartDate: null,\r\n EndDate: null,\r\n LocationIds: this.locationId,\r\n CmpCode:this.CmpCode\r\n };\r\n\r\n this._leaveSer.getAllHolidayListLeaveDashboard(parms).subscribe((response) => {\r\n this.userLoader = false;\r\n this.allHolidayList = JSON.parse(response[\"data\"]);\r\n });\r\n }\r\n get f() {\r\n return this.leaveApply.controls;\r\n }\r\n\r\n getCSharpFormattedDate(val: any) {// Created By A backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n getFormattedDate(val: any) {// Created By A date to string\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year + \"-\" + month + \"-\" + day + \" 00:00:00\");\r\n }\r\n convertCSharpDateToFormattedDate(val: any) {// Created By A backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n //return new Date(year + \"-\" + (month + 1) + \"-\" + day + \" 00:00:00\");\r\n return new Date(year, month, day);\r\n }\r\n\r\n onFileChange(files: FileList) { // Created By K On file recived\r\n debugger;\r\n this.isUploadedFileInvalidFormat = false;\r\n if (files.length > 0) {\r\n this.fileToUpload = files.item(0);\r\n this.isFileUploaded = true;\r\n this.validateFileFormat(files.item(0));\r\n } else {\r\n this.fileToUpload = null;\r\n this.isFileUploaded = false;\r\n }\r\n }\r\n\r\n validateFileFormat(_file) {// Created By K File format validation\r\n this.isUploadedFileInvalidFormat = false;\r\n let sFileName = _file.name;\r\n let _validFileExtensions = [\".jpg\", \".png\", \".pdf\"];\r\n if (sFileName.length > 0) {\r\n let blnValid = false;\r\n for (let j = 0; j < _validFileExtensions.length; j++) {\r\n let sCurExtension = _validFileExtensions[j];\r\n if (sFileName.substr(sFileName.length - sCurExtension.length, sCurExtension.length).toLowerCase() == sCurExtension.toLowerCase()) {\r\n blnValid = true;\r\n break;\r\n }\r\n }\r\n\r\n if (!blnValid) {\r\n this.isUploadedFileInvalidFormat = true;\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n\r\n startdate: any = new Date ;\r\n enddate: any = new Date ;\r\n selectEndDate(val){// Created By K On To Date Select\r\n this.leaveApply.controls.LeaveEndDate.setValue(val) ;\r\n this.enddate = val;\r\n this.calculateDays();\r\n\r\n console.log(this.enddate)\r\n\r\n }\r\n selectStartDate(val){// Created By K On From Date Select\r\n this.leaveApply.controls.LeaveStartDate.setValue(val);\r\n this.startdate = val;\r\n this.minDate = this.startdate;\r\n this.calculateDays();\r\n\r\n console.log(this.startdate)\r\n }\r\n\r\n\r\n\r\n selectLeaveType(val){// Created By A On Leave type select\r\n this.leaveApply.controls.LeaveTypeId.setValue(val)\r\n this.leaveApply.controls.cmpCode.setValue(this.CmpCode) ;\r\n }\r\n\r\n\r\n givenEmail\r\n setTeamEmail(val){ // Created By K Set Team email id\r\n this.givenEmail = val\r\n }\r\n\r\n // Apply Leave\r\n applyLeave() {// Created By K On Submit apply leave form\r\n debugger;\r\n if(this.leaveApply.controls[\"LeaveReason\"].value == null || this.leaveApply.controls[\"LeaveReason\"].value == \"\"){\r\n\r\n this.toaster.show(\"error\", \"Please Enter Reason for Leave\")\r\n return\r\n }\r\n if(this.leaveApply.controls[\"TeamEmailId\"].value != null ){\r\n if(this.leaveApply.controls[\"TeamEmailId\"].value != \"\"){\r\n const re = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n let val = re.test(String(this.leaveApply.controls[\"TeamEmailId\"].value).toLowerCase());\r\n if(!val){\r\n this.toaster.show(\"error\", \"Please Enter a Valid Email\")\r\n return\r\n }\r\n }\r\n }\r\n\r\n\r\n if(this.leaveApply.controls[\"UserId\"].value == null){\r\n this.toaster.show(\"error\", \"Please select the employee name\")\r\n return\r\n }else{\r\n if(this.leaveApply.controls[\"LeaveTypeId\"].value == null){\r\n this.toaster.show(\"error\", \"Please select the leave type\")\r\n return\r\n }else{\r\n if(this.leaveApply.controls[\"LeaveStartDate\"].value == null){\r\n this.toaster.show(\"error\", \"Please select the duration dates\")\r\n return\r\n }\r\n }\r\n\r\n }\r\n\r\n this.leaveApply.controls.CreatedBy.patchValue(this._authSer.getUserId());\r\n this.leaveApply.controls.cmpCode.patchValue(this._authSer.getcompanyCode());\r\n if(this.givenEmail == undefined){\r\n this.leaveApply.controls.TeamEmailId.patchValue(this.givenEmail);\r\n }\r\n this.leaveApply.controls.leaveId.patchValue(0);\r\n\r\n this.submitted = true;\r\n this.submittedForFileUpload = true;\r\n if (this.leaveApply.invalid) {\r\n this.submitted = false;\r\n return;\r\n }\r\n if ((this.isRequiredFileUpload == true && this.isFileUploaded == false) ||\r\n this.isUploadedFileInvalidFormat == true) {\r\n this.submitted = false;\r\n return;\r\n }\r\n\r\n let tempLeaveCalendarDatesList = [];\r\n debugger\r\n for (let i = 0; i < this.LeaveCalendarDatesList.length; i++) {\r\n let _newDate = this.LeaveCalendarDatesList[i].LeaveDate;\r\n // let _newDate = this.globalArrayDatesList[i]\r\n if (_newDate != null) {\r\n // this.LeaveCalendarDatesList[i].LeaveDate = this.getFormattedDate(_newDate) ;\r\n\r\n let newDateData = {\r\n LeaveTypeId: this.leaveApply.value.LeaveTypeId,\r\n LeaveDate: this.datePipe.transform(_newDate, \"MM-dd-yyyy\"),\r\n DayType: this.LeaveCalendarDatesList[i].DayType,\r\n Type: this.LeaveCalendarDatesList[i].Type,\r\n Time: this.LeaveCalendarDatesList[i].Time,\r\n Hours: this.LeaveCalendarDatesList[i].Hours,\r\n IsWeekEnd: this.LeaveCalendarDatesList[i].IsWeekEnd,\r\n };\r\n tempLeaveCalendarDatesList.push(newDateData);\r\n }\r\n }\r\n\r\n // let startDate = this.leaveApply.value.LeaveStartDate;\r\n // let endDate = this.leaveApply.value.LeaveEndDate;\r\n // var date1: any = new Date(startDate);\r\n // var date2: any = new Date(endDate);\r\n // var diffDays: any = (date2 - date1) / (1000 * 60 * 60 * 24);\r\n\r\n // let _startDate = this.leaveApply.value.LeaveStartDate;\r\n // let _endDate = this.leaveApply.value.LeaveEndDate;\r\n\r\n\r\n let _startDate = this.startdate;\r\n let _endDate = this.enddate;\r\n\r\n if (_startDate != null) {\r\n this.leaveApply.patchValue({\r\n LeaveStartDate: this.getCSharpFormattedDate(_startDate)\r\n });\r\n } else {\r\n this.submitted = false;\r\n return;\r\n }\r\n\r\n if (_endDate != null) {\r\n this.leaveApply.patchValue({\r\n LeaveEndDate: this.getCSharpFormattedDate(_endDate)\r\n });\r\n } else {\r\n this.submitted = false;\r\n return;\r\n }\r\n debugger\r\n if(tempLeaveCalendarDatesList[0].LeaveTypeId == null){\r\n this.toaster.show(\"error\", \"Requested leave have invalid duration please try after some time\")\r\n return\r\n }\r\n\r\n this.leaveApply.patchValue({\r\n // TotalDays: this.applyingLeaveDays,\r\n //LeaveDatesList: this.LeaveCalendarDatesList,\r\n LeaveDatesList: tempLeaveCalendarDatesList\r\n });\r\n console.log(this.leaveApply.value);\r\n // if (this.LeaveCalendarDatesList.length > 1) {\r\n // return;\r\n // }\r\n\r\n this.userLoader = true;\r\n\r\n // const formData = new FormData();\r\n // formData.append('UserId', this.leaveApply.value.UserId);\r\n // formData.append('LeaveTypeId', this.leaveApply.value.LeaveTypeId);\r\n // formData.append('LeaveStartDate', this.leaveApply.value.LeaveStartDate);\r\n // formData.append('LeaveEndDate', this.leaveApply.value.LeaveEndDate);\r\n // for (let i = 0; i < tempLeaveCalendarDatesList.length; i ++) {\r\n // formData.append('LeaveDatesList[]', tempLeaveCalendarDatesList[i]);\r\n // }\r\n // formData.append('TotalDays', this.leaveApply.value.TotalDays);\r\n // formData.append('LeaveReason', this.leaveApply.value.LeaveReason);\r\n // formData.append('CreatedBy', this.currentUserId);\r\n // formData.append('FileUpload', this.fileToUpload);\r\n\r\n // this.leaveApply.patchValue({\r\n // FileUpload: this.fileToUpload\r\n // });\r\n\r\n // New Leave Apply\r\n if (this.editMode == false) {\r\n this._leaveSer.applyLeave(this.leaveApply.value).subscribe(\r\n\r\n (response) => {\r\n this.userLoader = false;\r\n this.submitted = false;\r\n this.submittedForFileUpload = false;\r\n this.showMessage = response.message;\r\n console.log(response);\r\n if (response.success == true) {\r\n this.saveUploadedFiles(response.leaveId, this.leaveApply.value.UserId);\r\n this.leaveApply.reset();\r\n this.showSuccess = true;\r\n this.showMessage = response.data;\r\n this.getAllLeave();\r\n this.Grid.refresh();\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this._commonSer.CloseModalHandler(\"applyLeaveEditMode\");\r\n\r\n\r\n this.userAvaliableLeave();\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this.toaster.show(\"error\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"applyLeaveEditMode\");\r\n }\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"error\", this.showMessage )\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"applyLeaveEditMode\");\r\n }\r\n );\r\n }\r\n else { // Update Leave\r\n // this._leaveSer.updateAppliedLeave(this.leaveApply.value).subscribe(\r\n // (response) => {\r\n // this.userLoader = false;\r\n // this.submitted = false;\r\n // this.submittedForFileUpload = false;\r\n // this.showMessage = response.message;\r\n // this.getAllLeave();\r\n // console.log(response);\r\n // if (response.success == true) {\r\n // this.saveUploadedFiles(response.leaveId, this.leaveApply.value.UserId);\r\n // this.leaveApply.reset();\r\n // this.showSuccess = true;\r\n // this.showMessage = response.data;\r\n // //this.getAllLeave();\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n // this.userAvaliableLeave();\r\n // } else {\r\n // this.userLoader = false;\r\n // this.showSuccess = false;\r\n // this.showMessage = response.message;\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // }\r\n // },\r\n // (error) => {\r\n // this.userLoader = false;\r\n // this.showSuccess = false;\r\n // this.showMessage = \"Uh oh, Something went wrong !\";\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n // }\r\n // );\r\n }\r\n }\r\n saveUploadedFiles(leaveId, userId) { // Created By A Upload Document\r\n if (this.fileToUpload != null && this.fileToUpload != undefined) {\r\n const formData = new FormData();\r\n formData.append('FileUpload', this.fileToUpload);\r\n\r\n this._leaveSer.saveUploadedFiles(formData, leaveId, userId).subscribe((response) => {\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(response);\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {// Created By A Sorting Algorithm\r\n // resetting other headers\r\n this.headers.forEach((header) => {\r\n if (header.sortable !== column) {\r\n header.direction = \"\";\r\n }\r\n });\r\n\r\n // sorting countries\r\n if (direction === \"\" || column === \"\") {\r\n this.COUNTRIES = this.COUNTRIES;\r\n } else {\r\n this.COUNTRIES = [...this.COUNTRIES].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === \"asc\" ? res : -res;\r\n });\r\n }\r\n }\r\n\r\n get countries(): Country[] {\r\n return this.COUNTRIES.map((country, i) => ({\r\n id: i + 1,\r\n ...country,\r\n })).slice(\r\n (this.page - 1) * this.pageSize,\r\n (this.page - 1) * this.pageSize + this.pageSize\r\n );\r\n }\r\n\r\n resetLeaveTypeData() {// Created By A Rset values\r\n this.LeaveTypeDetails = new LeaveTypeData();\r\n\r\n // this.DayTypeSelectList = [];\r\n this.TypeSelectList = [];\r\n\r\n this.totalApplyingLeaves = null;\r\n this.showBalLeave = null;\r\n }\r\n\r\n getLeaveTypeDetails(leaveTypeId) {// Created By K Getting leave details with leave Id\r\n this.userLoader = true;\r\n // this.resetLeaveTypeData();\r\n this._leaveSer.getLeaveTypeById(leaveTypeId,this.CmpCode)\r\n .subscribe((resLeaveType) => {\r\n debugger\r\n this.userLoader = false;\r\n // this.LeaveTypeDetails = new LeaveTypeData();\r\n this.LeaveTypeDetails.LeaveTypeId = resLeaveType[\"data\"].leaveType[0].leaveTypeId;\r\n this.LeaveTypeDetails.LType = resLeaveType[\"data\"].leaveType[0].type;\r\n this.LeaveTypeDetails.TypeText = resLeaveType[\"data\"].leaveType[0].typeText;\r\n this.LeaveTypeDetails.Unit = resLeaveType[\"data\"].leaveType[0].unit;\r\n this.LeaveTypeDetails.UnitText = resLeaveType[\"data\"].leaveType[0].unitText;\r\n this.LeaveTypeDetails.IsDurationFullDay = resLeaveType[\"data\"].restrictions[0].isDurationFullDay;\r\n this.LeaveTypeDetails.IsDurationHalfDay = resLeaveType[\"data\"].restrictions[0].isDurationHalfDay;\r\n this.LeaveTypeDetails.IsDurationQuarterDay = resLeaveType[\"data\"].restrictions[0].isDurationQuarterDay;\r\n\r\n this.LeaveTypeDetails.EnableFileUploadOption = resLeaveType[\"data\"].restrictions[0].enableFileUploadOption;\r\n this.LeaveTypeDetails.OnAppliedLeavePeriodExceeds = resLeaveType[\"data\"].restrictions[0].onAppliedLeavePeriodExceeds;\r\n this.LeaveTypeDetails.OnweekendBetweenLeaveCountAfter = resLeaveType[\"data\"].restrictions[0].weekendBetweenLeaveCountAfter;\r\n this.LeaveTypeDetails.OnCanCountAsLeaveInWeekendBetweenLeave = resLeaveType[\"data\"].restrictions[0].canCountAsLeaveInWeekendBetweenLeave;\r\n this.isRequiredFileUpload = false;\r\n this.isFileUploaded = false;\r\n this.isUploadedFileInvalidFormat = false;\r\n\r\n // console.clear();\r\n // console.log(resLeaveType);\r\n this.setCalendarListDDLs();\r\n this.calculateTotalLeaves();\r\n });\r\n }\r\n\r\n setCalendarListDDLs() {// Created By K Set Leave Day Type\r\n debugger\r\n this.DayTypeSelectList = [];\r\n this.TypeSelectList = [];\r\n\r\n if (this.LeaveTypeDetails.IsDurationFullDay == true) {\r\n this.DayTypeSelectList.push({ value: 1, text: \"Full Day\" });\r\n }\r\n if (this.LeaveTypeDetails.IsDurationHalfDay == true) {\r\n this.DayTypeSelectList.push({ value: 2, text: \"Half Day\" });\r\n }\r\n if (this.LeaveTypeDetails.IsDurationQuarterDay == true) {\r\n this.DayTypeSelectList.push({ value: 3, text: \"Quarter Day\" });\r\n }\r\n }\r\n\r\n setDayTypeValue(e, i) {// Created By K On Leave Day Select\r\n let _value = e.srcElement.value;\r\n this.LeaveCalendarDatesList[i].DayType = _value;\r\n // if (_value == \"2\") {\r\n // this.TypeSelectList.push({ value: \"1\", text: \"1st Half\" });\r\n // this.TypeSelectList.push({ value: \"2\", text: \"2nd Half\" });\r\n // } else if (_value == \"3\") {\r\n // this.TypeSelectList.push({ value: \"6\", text: \"1st Quarter\" });\r\n // this.TypeSelectList.push({ value: \"7\", text: \"2nd Quarter\" });\r\n // this.TypeSelectList.push({ value: \"8\", text: \"3rd Quarter\" });\r\n // this.TypeSelectList.push({ value: \"9\", text: \"4th Quarter\" });\r\n // }\r\n\r\n if (_value == \"2\") {\r\n this.LeaveCalendarDatesList[i].Type = \"1\";\r\n } else if (_value == \"3\") {\r\n this.LeaveCalendarDatesList[i].Type = \"6\";\r\n }\r\n\r\n this.calculateTotalLeaves();\r\n }\r\n setTypeValue(e, i) {// Created By K On Choosing half or full days leaves\r\n let _value = e.srcElement.value;\r\n this.LeaveCalendarDatesList[i].Type = _value;\r\n }\r\n setHoursValue(e, i) {// Created By K On Hour vales update\r\n let _value = e.srcElement.value;\r\n this.LeaveCalendarDatesList[i].Hours = _value;\r\n this.calculateTotalLeaves();\r\n }\r\n calculateTotalLeaves() {// Created By A Calculating total leaves\r\n debugger\r\n this.totalApplyingLeaves = null;\r\n this.showBalLeave = null;\r\n this.applyingLeaveDays = 0;\r\n let totalLeaves = 0;\r\n if (this.LeaveTypeDetails.Unit == 1) {\r\n for (let i = 0; i < this.LeaveCalendarDatesList.length; i++) {\r\n if (this.LeaveCalendarDatesList[i].DayType == \"1\") {\r\n totalLeaves = totalLeaves + 1;\r\n } else if (this.LeaveCalendarDatesList[i].DayType == \"2\") {\r\n totalLeaves = totalLeaves + 0.5;\r\n } else if (this.LeaveCalendarDatesList[i].DayType == \"3\") {\r\n totalLeaves = totalLeaves + 0.25;\r\n }\r\n else if(this.LeaveCalendarDatesList[i].DayType == \"4\"){\r\n if(this.LeaveTypeDetails.OnCanCountAsLeaveInWeekendBetweenLeave){\r\n if(this.LeaveTypeDetails.OnweekendBetweenLeaveCountAfter < totalLeaves ){\r\n // let weekend = this.LeaveCalendarDatesList.filter( x => x.DayType == \"4\")\r\n totalLeaves += 1;\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.totalApplyingLeaves = totalLeaves.toString();\r\n this.applyingLeaveDays = totalLeaves;\r\n\r\n } else if (this.LeaveTypeDetails.Unit == 2) {\r\n for (let i = 0; i < this.LeaveCalendarDatesList.length; i++) {\r\n if (this.LeaveCalendarDatesList[i].Hours != null) {\r\n totalLeaves = totalLeaves + parseFloat(this.LeaveCalendarDatesList[i].Hours);\r\n }\r\n }\r\n\r\n this.totalApplyingLeaves = totalLeaves.toString();\r\n this.applyingLeaveDays = totalLeaves;\r\n }\r\n\r\n\r\n if (this.LeaveTypeDetails.EnableFileUploadOption == true) {\r\n if (this.LeaveTypeDetails.OnAppliedLeavePeriodExceeds < totalLeaves) {\r\n this.isRequiredFileUpload = true;\r\n }\r\n else\r\n {\r\n this.isRequiredFileUpload = false;\r\n }\r\n }\r\n\r\n this.showBalLeave = this.showAvlLeave - +this.totalApplyingLeaves;\r\n }\r\n\r\n\r\n // Calendar Sync\r\n //AIzaSyA2boFDCFdVRo-CyqKa2T_o3dD1NNWT9zo\r\n googleSDK() {// Created By A google calendar syncing SDK\r\n window['googleSDKLoaded'] = () => {\r\n window['gapi'].load('auth2', () => {\r\n this.auth2 = window['gapi'].auth2.init({\r\n client_id: environment.google_client_id,\r\n //api_key:'AIzaSyA2boFDCFdVRo-CyqKa2T_o3dD1NNWT9zo',\r\n cookie_policy: 'single_host_origin',\r\n //scope: 'profile email'\r\n scope: \"https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/calendar.events\"\r\n });\r\n this.funGoogleAuthorize();\r\n });\r\n };\r\n\r\n (function(d, s, id) {\r\n let js, fjs = d.getElementsByTagName(s)[0];\r\n if (d.getElementById(id)) {\r\n return;\r\n }\r\n js = d.createElement(s); js.id = id;\r\n js.src = \"https://apis.google.com/js/platform.js?onload=googleSDKLoaded\";\r\n fjs.parentNode.insertBefore(js, fjs);\r\n }(document, 'script', 'google-jssdk'));\r\n }\r\n CalendarSync() {// Created By A Syncing with google calendar\r\n this.userLoader = true;\r\n this.calendarSyncAuthorized = null;\r\n this._leaveSer.getUserCalendarSyncAuthorized(this.ddlEmployeeUserId).subscribe(\r\n (response) => {\r\n\r\n let calendarSyncAuthorized = response[\"data\"];\r\n if (calendarSyncAuthorized != null && calendarSyncAuthorized != undefined) {\r\n this.calendarSyncAuthorized = {};\r\n\r\n this.calendarSyncAuthorized.authorizedId = calendarSyncAuthorized.authorizedId;\r\n this.calendarSyncAuthorized.userId = calendarSyncAuthorized.userId;\r\n this.calendarSyncAuthorized.googleSyncEmailId = calendarSyncAuthorized.googleSyncEmailId;\r\n this.calendarSyncAuthorized.googleSyncAccessToken = calendarSyncAuthorized.googleSyncAccessToken;\r\n this.calendarSyncAuthorized.lastGoogleSyncDate = calendarSyncAuthorized.lastGoogleSyncDate;\r\n this.calendarSyncAuthorized.createdDate = calendarSyncAuthorized.createdDate;\r\n\r\n this.currentGmailAccountId = calendarSyncAuthorized.googleSyncEmailId;\r\n this.syncCalendarType = \"2\";\r\n\r\n this._commonSer.OpenModalHandler(\"googleSyncModel\");\r\n } else {\r\n // const source = interval(10000);\r\n // this.intervalFunGmailAccountSubscription = source.subscribe(val => this.setGoogleEmailData());\r\n this.intervalFunGmailAccount = setInterval(this.setGoogleEmailData, 10000);\r\n this._commonSer.OpenModalHandler(\"googleSyncAuthorizeModel\");\r\n }\r\n this.userLoader = false;\r\n\r\n setTimeout(() => {\r\n this.funGoogleAuthorize();\r\n }, 300);\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n );\r\n }\r\n setGoogleEmailData() {// Created By A Getting Email data\r\n debugger;\r\n if (localStorage.getItem(\"stGoogleSyncEmailId\") !== null) {\r\n let googleAuthorizedData = JSON.parse(localStorage.getItem(\"stGoogleSyncEmailId\"));\r\n if (googleAuthorizedData != null) {\r\n this.currentGmailAccountId = googleAuthorizedData.googleSyncEmailId;\r\n localStorage.setItem(\"stGoogleSyncEmailId\", null);\r\n //this.intervalFunGmailAccountSubscription.unsubscribe();\r\n clearInterval(this.intervalFunGmailAccount);\r\n }\r\n }\r\n }\r\n funGoogleAuthorize() {\r\n // Created By A This for Authorize the Google account to sync Leaves and Holidays\r\n let vm = this;\r\n vm.syncCalendarType = \"2\";\r\n\r\n if (this.googleAuthorizeElement != null && this.googleAuthorizeElement != undefined) {\r\n vm.auth2.attachClickHandler(this.googleAuthorizeElement.nativeElement, {},\r\n (googleUser) => {\r\n vm.userLoader = true;\r\n // this.calendarSyncAuthorized = null;\r\n let profile = googleUser.getBasicProfile();\r\n let gmailId = profile.$t;\r\n let accesToken = googleUser.getAuthResponse().access_token;\r\n console.clear();\r\n console.log(googleUser.getAuthResponse());\r\n\r\n vm.currentGmailAccountId = gmailId;\r\n\r\n let params = {\r\n UserId: vm.ddlEmployeeUserId,\r\n GoogleSyncEmailId: gmailId,\r\n GoogleSyncAccessToken: accesToken\r\n };\r\n vm._leaveSer.saveGoogleAuthorized(params).subscribe(\r\n (response) => {\r\n debugger;\r\n vm._commonSer.CloseModalHandler(\"googleSyncAuthorizeModel\");\r\n //this.CalendarSync();\r\n\r\n vm.calendarSyncAuthorized = {\r\n authorizedId: 0,\r\n userId: vm.ddlEmployeeUserId,\r\n googleSyncEmailId: gmailId,\r\n googleSyncAccessToken: accesToken\r\n //lastGoogleSyncDate: null,\r\n //createdDate: null\r\n };\r\n\r\n let googleAuthorizedData = {\r\n googleSyncEmailId: gmailId,\r\n googleSyncAccessToken: accesToken\r\n };\r\n localStorage.setItem(\"stGoogleSyncEmailId\", JSON.stringify(googleAuthorizedData));\r\n\r\n setTimeout(() => {\r\n // vm.calendarSyncAuthorized.authorizedId = 0;\r\n // vm.calendarSyncAuthorized.userId = vm.ddlEmployeeUserId;\r\n // vm.calendarSyncAuthorized.googleSyncEmailId = gmailId;\r\n // vm.calendarSyncAuthorized.googleSyncAccessToken = accesToken;\r\n // vm.calendarSyncAuthorized.lastGoogleSyncDate = null;\r\n // vm.calendarSyncAuthorized.createdDate = null;\r\n\r\n vm.syncCalendarType = \"2\";\r\n\r\n vm.userLoader = false;\r\n vm._commonSer.OpenModalHandler(\"googleSyncModel\");\r\n }, 300);\r\n },\r\n (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n );\r\n\r\n }, (error) => {\r\n //alert(JSON.stringify(error, undefined, 2));\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n }\r\n googleCalendarPush() {// Created By A\r\n this.userLoader = true;\r\n\r\n let _currentFinancialYearId = this.currentFinancialYearId;\r\n if (_currentFinancialYearId == undefined || _currentFinancialYearId == null) {\r\n _currentFinancialYearId = 0;\r\n }\r\n\r\n let params = {\r\n UserId: this.ddlEmployeeUserId,\r\n AccessToken: this.calendarSyncAuthorized.googleSyncAccessToken,\r\n SyncType: this.syncCalendarType != null ? this.syncCalendarType : \"2\",\r\n FinancialYearId: _currentFinancialYearId,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._leaveSer.syncGoogleCalendar(params).subscribe(\r\n (response) => {\r\n this.userLoader = false;\r\n this.showSuccess = true;\r\n //this.showMessage = \"Calendar sync is in progress..\";\r\n this.showMessage = \"Calendar sync completed successfully\";\r\n this._commonSer.CloseModalHandler(\"googleSyncModel\");\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n },\r\n (error) => {\r\n console.clear();\r\n console.log(error);\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.CloseModalHandler(\"googleSyncModel\");\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n );\r\n }\r\n RevokeGoogleAuthorized() {// Created By A Revoking Authorization to google calendars\r\n this.userLoader = true;\r\n this.calendarSyncAuthorized = null;\r\n this._leaveSer.revokeGoogleAuthorized(this.ddlEmployeeUserId).subscribe(\r\n (response) => {\r\n if (response[\"success\"] == true) {\r\n this.showSuccess = true;\r\n this.showMessage = response[\"data\"];\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response[\"message\"];\r\n }\r\n this.userLoader = false;\r\n this._commonSer.CloseModalHandler(\"googleSyncModel\");\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.CloseModalHandler(\"googleSyncModel\");\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n );\r\n }\r\n\r\n // General Settings Data\r\n getGeneralSettingsData() {// Created By K Getting Leaves genral tettings\r\n this._leaveSer.getGeneralSettings(this.CmpCode).subscribe((res) => {\r\n this.userLoader = false;\r\n this.generalSettingsData = res[\"data\"];\r\n this.isCancelReasonMandatory = false;\r\n\r\n if (this.generalSettingsData.leaveCancellationReasonMandatory == true) {\r\n this.isCancelReasonMandatory = true;\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n // Edit Leave\r\n getLeaveDetails(leaveId: number, statusId: number, cmpCode, formtype) {// Created By A\r\n debugger\r\n if (leaveId > 0 ) {\r\n let vm = this;\r\n vm.userLoader = true;\r\n vm._leaveSer.getLeaveDetailsForEdit(leaveId, cmpCode)\r\n .subscribe((response) => {\r\n vm.userLoader = false;\r\n console.clear();\r\n console.log(response);\r\n if (response.success == true) {\r\n vm.setLeaveFormData(response.data, formtype);\r\n } else {\r\n vm.showSuccess = false;\r\n vm.showMessage = response.message;\r\n this.toaster.show(\"error\", vm.showMessage )\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n }, (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"error\", vm.showMessage )\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n }\r\n\r\n // Set Form Data from DB\r\n setLeaveFormData(leaveDetails, type) {// Created By K\r\n debugger\r\n this.getLeaveTypeDetails(leaveDetails.leaveTypeId);\r\n // this.popUPCloseReset();\r\n this.submitted = true;\r\n this.submittedForFileUpload = true;\r\n\r\n this.leaveApply.patchValue({\r\n leaveId: leaveDetails.leaveId,\r\n UserId: leaveDetails.userId,\r\n LeaveTypeId: leaveDetails.leaveTypeId,\r\n LeaveDatesList: leaveDetails.leaveDatesList,\r\n LeaveStartDate : this.datePipe.transform(leaveDetails.leaveStartDate,'MM/dd/yyyy') ,\r\n LeaveEndDate : this.datePipe.transform(leaveDetails.leaveEndDate,'MM/dd/yyyy') ,\r\n cmpCode: this.CmpCode,\r\n TeamEmailId: leaveDetails.teamEmailId,\r\n TotalDays: leaveDetails.totalDays,\r\n LeaveReason: leaveDetails.leaveReason,\r\n CreatedBy: leaveDetails.createdBy,\r\n FileUpload: [],\r\n });\r\n\r\n if(type == 'Edit'){\r\n this.editMode = true;\r\n\r\n }\r\n else{\r\n this.editMode = false;\r\n\r\n // let viewtype: HTMLElement = document.getElementsByName(\"LeaveType22\")[0] as HTMLElement\r\n // viewtype.className = \"e-input-group e-control-wrapper e-ddl e-lib e-keyboard e-valid-input e-disabled\"\r\n\r\n }\r\n this.leaveType = type\r\n\r\n console.clear();\r\n console.log(leaveDetails);\r\n\r\n\r\n this.setAvailableLeaveBalanceByLeaveTypeEdit();\r\n\r\n setTimeout(() => {\r\n if (this.LeaveTypeDetails.EnableFileUploadOption == true) {\r\n if (this.LeaveTypeDetails.OnAppliedLeavePeriodExceeds < leaveDetails.totalDays) {\r\n this.isRequiredFileUpload = true;\r\n }\r\n }\r\n\r\n\r\n // if (leaveDetails.filePaths.length > 0) {\r\n // this.isFileUploaded = true;\r\n // this.isUploadedFileInvalidFormat = false;\r\n // }\r\n }, 1000);\r\n // this.setCalendarListDDLs()\r\n // debugger\r\n // if(this.DayTypeSelectList.length == 0){\r\n // this.DayTypeSelectList.push({ value: 1, text: \"Full Day\" },{ value: 2, text: \"Half Day\" },{ value: 3, text: \"Quarter Day\" })\r\n\r\n // }\r\n\r\n let weekday = new Array(7);\r\n weekday[0] = \"Sunday\";\r\n weekday[1] = \"Monday\";\r\n weekday[2] = \"Tuesday\";\r\n weekday[3] = \"Wednesday\";\r\n weekday[4] = \"Thursday\";\r\n weekday[5] = \"Friday\";\r\n weekday[6] = \"Saturday\";\r\n\r\n for (let i = 0; i < leaveDetails.leaveDatesList.length; i++) {\r\n let _newDateItem = leaveDetails.leaveDatesList[i];\r\n let newData = new LeaveCalendarDates();\r\n newData.LeaveDate = _newDateItem.leaveDate;\r\n newData.DayType = _newDateItem.dayType;\r\n newData.Type = _newDateItem.type;\r\n newData.Time = _newDateItem.time;\r\n newData.Hours = _newDateItem.hours;\r\n newData.IsWeekEnd = false;\r\n\r\n let _tempDay = this.convertCSharpDateToFormattedDate(_newDateItem.leaveDate).getDay();\r\n let _day = weekday[_tempDay];\r\n if (_day == \"Sunday\" || _day == \"Saturday\") {\r\n newData.IsWeekEnd = true;\r\n }\r\n\r\n this.LeaveCalendarDatesList.push(newData);\r\n }\r\n\r\n // this._commonSer.OpenModalHandler(\"applyLeaveMode\");\r\n this.submitted = false;\r\n this.submittedForFileUpload = false;\r\n }\r\n\r\n setAvailableLeaveBalanceByLeaveTypeEdit() {// Created By A Set Leave balance on edit\r\n debugger\r\n if (this.leaveApply.value.LeaveTypeId != null) {\r\n this.applyLeaveSelectedUserLeaveBalance.forEach(type => {\r\n if (type.leaveTypeId == this.leaveApply.value.LeaveTypeId) {\r\n this.showAvlLeave = type.availableLeaves + this.leaveApply.value.TotalDays;\r\n setTimeout(() => {\r\n this.calculateTotalLeaves();\r\n }, 300);\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n CancelLeaveRequest() {// Created By A On cancle Leave\r\n this.cancelLeaveReason = \"\";\r\n this.isCancelReasonTextboxEmpty = false;\r\n\r\n this._commonSer.OpenModalHandler(\"confirmCancelModel\");\r\n }\r\n ConfirmLeaveCancel() {// Created By A Initialize Confirmation modals\r\n debugger\r\n this.isCancelReasonTextboxEmpty = false;\r\n if (this.isCancelReasonMandatory && (this.cancelLeaveReason == null || this.cancelLeaveReason.trim().length == 0)) {\r\n this.isCancelReasonTextboxEmpty = true;\r\n return;\r\n }\r\n let currentUserID = this.currentUserId;\r\n this.parms = {\r\n LeaveId: this.leaveApply.value.leaveId,\r\n CancelReason: this.cancelLeaveReason,\r\n UserId: currentUserID,\r\n Cmpcode:this.CmpCode\r\n };\r\n this.userLoader = true;\r\n this.showSuccess = true;\r\n this._leaveSer.cancelLeaveRequest(this.parms).subscribe((response) => {\r\n this.userLoader = false;\r\n this.getAllLeave();\r\n if (response.success === true) {\r\n debugger;\r\n this.leaveApply.reset();\r\n this.showSuccess = true;\r\n this.showMessage = response.data;\r\n this.toaster.show('success',)\r\n this.toaster.show('warning',)\r\n if(this.showMessage==\"The requested leave is cancelled successfully.\")\r\n {\r\n this.toaster.show('success',this.showMessage)\r\n this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n this._commonSer.CloseModalHandler(\"applyLeaveEditMode\");\r\n }\r\n // this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n\r\n this.userAvaliableLeave();\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = response.message;\r\n this._commonSer.OpenModalHandler(\"applyLeaveEditMode\");\r\n this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n }\r\n },\r\n error => {\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n\r\n this._commonSer.OpenModalHandler(\"userMessageModel\");\r\n this._commonSer.CloseModalHandler(\"confirmCancelModel\");\r\n console.log(error);\r\n });\r\n }\r\n\r\n recieptIMg: any;\r\n userImage(item) {// Created By K Convert users images URL in standard format\r\n // \r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n\r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n\r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { LeaveRoutingModule } from './leave-routing.module';\r\nimport { LeaveComponent, NgbdSortableHeaders } from './leave.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { DynamicFormModule } from 'src/app/dynamic-form/dynamic-form.module';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { TabsModule as MkTabsModule } from 'angular-admin-lte';\r\nimport { InputTextRoutingModule } from 'src/app/+form/input-text/input-text-routing.module';\r\nimport { InputGroupModule, InputTextModule as mkInputTextModule } from 'angular-admin-lte';\r\nimport { InputTextModule } from \"./../../+form/input-text/input-text.module\";\r\nimport { BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\nimport { DatePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport { NgbdSortableHeader } from './sortable.directive';\r\n\r\nimport { TimepickerModule } from 'ngx-bootstrap/timepicker';\r\nimport { ApprovalModule } from \"./approval/approval.module\";\r\nimport { SettingModule } from \"./setting/setting.module\";\r\nimport { CompoffModule } from \"./comp-off/comp-off.module\";\r\nimport { HolidaysModule } from './holidays/holidays.module';\r\nimport { LeaveReportModule } from './leave-report/leave-report.module';\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n LeaveRoutingModule,\r\n BoxModule, SelectModule,\r\n DynamicFormModule,\r\n MkTabsModule,\r\n BoxModule,\r\n CoreModule,\r\n SelectModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n ApprovalModule,\r\n SettingModule,\r\n LeaveReportModule,\r\n CompoffModule,\r\n HolidaysModule,\r\n GridAllModule,\r\n PagerModule,\r\n DropDownListModule,\r\n DatePickerModule,\r\n \r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n ],\r\n declarations: [LeaveComponent, NgbdSortableHeader, NgbdSortableHeaders],\r\n exports:[NgbdSortableHeader]\r\n})\r\nexport class LeaveModule {\r\n}\r\n","import { Injectable, PipeTransform } from \"@angular/core\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map, pluck } from \"rxjs/operators\";\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { Observable, BehaviorSubject, Subject, of } from \"rxjs\";\r\nimport { LeaveTypeModel } from \"./leave-model/leave-type\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { param } from \"jquery\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class LeaveService {\r\n constructor(private http: HttpClient, private authService: AuthService) {}\r\n\r\n getAllLeavetype(CmpCode): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllLeaveTypesForSelect?&CmpCode=\"+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n GetEmployeeLocation(CmpCode, UserId): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Admin/GetEmployeeLocation?cmpcode=\"+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAvailableLeaveBalance(UserId, finanicialYearId,CmpCode){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveBalance?UserId=\" + UserId + \"&FinanicialYearId=\" + finanicialYearId +`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n .pipe(map((response ) => response))\r\n }\r\n \r\n getAllHolidayList(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Holiday/GetAllHoliday\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getAllHolidayListLeaveDashboard(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Holiday/GetAllHolidaydeshboard\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllLeave(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllMyAppliedLeaves\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getcmpLeaveTpeCode(cmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Admin/Getpreleavecustomcode?Cmpcode=\"+cmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n \r\n getAllCompLeave(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetAllCompOff\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n approveLeave(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/CompOffApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getAllRequestedCompOff(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllRequestedCompOff\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getEmployeeDetails(UserId,CmpCode){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetEmployeeDetailsByUserId?UserId=\" + UserId +`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getcompDate(date,CmpCode){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetCompOffExpiredDate?cmpcode=\" + CmpCode +`&selectdate=`+date;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getEmployeesListForSelect(UserId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + `/Admin/GetEmployeesListForSelect?CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getProjectsListForSelect(EmpId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetCompOffprojects?UserId=\" + EmpId+`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getFinancialYear() {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetFinancialYearList\";\r\n return this.http\r\n .get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getCurrentFinancialYear(cmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetCurrentFinancialYear?cmpCode=\"+ cmpCode;\r\n return this.http\r\n .get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getFinancialYearDetails(financialYearId, CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetFinancialYearDetails?FinancialYearId=\" + financialYearId+\"&cmpCode=\"+CmpCode;\r\n return this.http\r\n .get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n applyLeave(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/ApplyLeave\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n updateAppliedLeave(parms): Observable { \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n const URL = environment.apiUrl + \"/Leave/UpdateAppliedLeave\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n saveUploadedFiles(formData, leaveId, userId) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n try {\r\n const URL = environment.apiUrl + \"/Leave/UploadLeaveApplyFiles?LeaveId=\" + leaveId + \"&UserId=\" + userId;\r\n return this.http\r\n .post(URL, formData,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getLeaveDates(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveDates\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getLeaveDetailsForEdit(LeaveId, cmpCode): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveDetailsForEdit?LeaveId=\" + LeaveId+ \"&cmpCode=\"+ cmpCode ;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getviewtimebalance(user, LeaveId,type, cmpCode, rqsdate): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Leave/getviewtimebalance?employeeid=\"+user+\"&leavetypeid=\"+LeaveId+\"&takenleave=\"+type+\"&cmpcode=\"+cmpCode+\"&requestdate=\"+rqsdate;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n cancelLeaveRequest(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/CancelLeaveRequest\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n // End of Leaves\r\n\r\n applyCompLeave(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/ApplyCompOff\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n //Aquib --Leave Approval Services\r\n getAllRequestedLeaves(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllRequestedLeaves\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n //delete Leave\r\n DeleteLeave(formdata: any): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/DeleteLeave\"; \r\n return this.http\r\n .post(URL, formdata,{headers:headers})\r\n \r\n }\r\n getAllRequestedCompLeaves(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetAllRequestedCompOff\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getCompOffDetailsForEdit(CompOffId) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetCompOffDetailsForEdit?CompOffId=\" + CompOffId;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n cancelCompOffRequest(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/CancelCompOffRequest\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getLeaveDetails(LeaveId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveDetails?LeaveId=\" + LeaveId+`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getLeaveApprovalDetails(LeaveId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveApprovalDetails?LeaveId=\" + LeaveId +`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getProjectDetails(type,typeid,approvalid,CmpCode,approvalgroup) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Leave/Getapprovalprojects?type=\" + type +`&typeid=`+typeid +`&approvalid=`+approvalid+`&cmpcode=`+CmpCode+`&ApproverGroup=`+approvalgroup;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getCompOffDetails(CompOffId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetCompOffDetails?CompOffId=\" + CompOffId +`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getCompOffApprovalDetails(CompOffId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/GetCompOffApprovalDetails?CompOffId=\" + CompOffId +`&CmpCode=`+CmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n \r\n leaveApproval(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/LeaveApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n leaveApprovalAll(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"Leave/AllLevelApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n leaveBulkApproval(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/LeaveBulkApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getLeavesReport_Excel(parms) {\r\n //const URL = environment.apiUrl + \"/Leave/GetAllRequestedLeaveExcelExport\";\r\n //return this.http.get(URL).pipe(map((response: Response) => response));\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllLeaves_Export\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getCompOffReport_Excel(parms) {\r\n // const URL = environment.apiUrl + \"/CompensatoryOff/GetAllRequestedCompOffExcelExport\";\r\n // return this.http.get(URL).pipe(map((response: Response) => response));\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllCompOff_Export\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n importLeaves(formData, isAutoApprove) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/ImportLeaves?IsAutoApprove=\" + isAutoApprove;\r\n return this.http\r\n .post(URL, formData,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n importCompOffs(formData, isAutoApprove) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/ImportCompOffs?IsAutoApprove=\" + isAutoApprove;\r\n return this.http\r\n .post(URL, formData,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n compOffApproval(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/CompOffApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n compOffApprovalAll(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/AlllevelCompOffApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n compOffBulkApproval(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CompensatoryOff/CompOffBulkApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n // Leave and Compensatory Off related Services\r\n getAllMyLeavesCompOffRequests(parms) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllMyLeavesCompOffRequests\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getAllMyLeavesCompOffApprovals(parms) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllMyLeavesCompOffApprovals\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n leaveCompOffBulkApproval(parms): Observable {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/LeaveCompOffBulkApproval\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Comp Off end\r\n\r\n //-------------------------------------------------------------------------------------------------------------------\r\n //-------------------------------------------------------------------------------------------------------------------\r\n\r\n // Leave Type Services Start\r\n getAllLeaveTypeForSelect(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllLeaveTypesForSelect?CmpCode=\"+CmpCode+\"\";\r\n return this.http\r\n .get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllLeaveTypeData(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetAllLeaveTypes\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveLeaveType(parms: LeaveTypeModel): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/SaveLeaveType\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // postLeaveTypeImage(dataParms): Observable {\r\n // const URL = environment.apiUrl + \"/Leave/PostLeaveTypeImage\";\r\n // return this.http\r\n // .post(URL, dataParms)\r\n // .pipe(map((response: Response) => response));\r\n // }\r\n\r\n getLeaveTypeById(LeaveTypeId, cmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveTypeById?LeaveTypeId=\" + LeaveTypeId +\"&cmpCode=\"+ cmpCode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n deleteLeaveType(parms, LeaveTypeId) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/DeleteLeaveType/?Id=\" + LeaveTypeId;\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getLeaveTypeProrateAccural(LeaveTypeId){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/GetLeaveTypePolicyProrateAccural?LeaveTypeId=\" + LeaveTypeId;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n SaveProrateAccural(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/SaveProrateAccural\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateLeaveTypeStatus(LeaveTypeId, Status, cmpCode) {\r\n const headers = new HttpHeaders(); \r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/UpdateLeaveTypeStatus/?leaveTypeId=\" + LeaveTypeId + \"&status=\" + Status+ \"&CmpCode=\" +cmpCode;\r\n return this.http.post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n // Leave Type services call End\r\n\r\n //-------------------------------------------------------------------------------------------------------------------\r\n //-------------------------------------------------------------------------------------------------------------------\r\n\r\n // customize leave/policy start\r\n getEmployeeLeavePolicy(EmployeeId, LeaveTypeId, data, CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/EmployeeLeavePolicy/GetEmployeeLeavePolicy?EmployeeId=\" + EmployeeId + \"&LeaveTypeId=\"+ LeaveTypeId + \"&CmpCode=\"+ CmpCode;\r\n return this.http.post(URL, data,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveLeavePolicy(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/EmployeeLeavePolicy/SaveEmployeeLeavePolicy\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getEmployeeLeaveHistory(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/EmployeeLeavePolicy/GetEmployeeLeavesHistory\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllEpmloyeeLeavePolicy(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/EmployeeLeavePolicy/GetAllEmployeeLeavePolicy\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n exportEmployeeLeaveHistory(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/EmployeeLeavePolicy/ExportEmployeeLeavesHistory\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n // customize leave/policy end\r\n\r\n //-------------------------------------------------------------------------------------------------------------------\r\n //-------------------------------------------------------------------------------------------------------------------\r\n\r\n // Customize leave balance start\r\n\r\n getAllLeaveBalance(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveBalance/GetAllLeaveBalance\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n GetLeaveBalanceByEmployee(userId, parms,cmpcode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveBalance/GetLeaveBalanceByEmployee?EmployeeId=\" + userId+'&CmpCode='+cmpcode;\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateLeaveBalance(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveBalance/UpdateLeaveBalance\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllRolesList(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllRoles\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveLeaveTypeImage(parms) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Leave/PostLeaveTypeImage\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n // Customize leave balance End\r\n\r\n //-------------------------------------------------------------------------------------------------------------------\r\n //-------------------------------------------------------------------------------------------------------------------\r\n\r\n // General Settings\r\n getGeneralSettings(Cmpcode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/GeneralSettings/GetGeneralSettings?Cmpcode=\"+Cmpcode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n saveGeneralSettings(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/GeneralSettings/SaveGeneralSettings\";\r\n return this.http\r\n .post(URL, dataParams,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n // End of General Settings\r\n\r\n\r\n // User Report\r\n getUserReport(employeeId, filterUnit,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetUserReport?EmployeeId=\" + employeeId + \"&filterUnit=\" + filterUnit+\"&CmpCode=\"+CmpCode;\r\n return this.http.post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of User Report\r\n\r\n // User Availability Report\r\n getUserAvailabilityReport(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetUserAvailabilityReport\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getUserAvailabilityReport_Excel(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetUserAvailabilityReport_Excel\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of User Availability Report\r\n\r\n // Daily Report\r\n getDailyReport(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetDailyReport\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getDailyReport_Excel(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetDailyReport_Excel\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of Daily\r\n\r\n // Leave Balance Report\r\n getLeaveBalanceReport(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetLeaveBalanceReport\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getLeaveBalanceReport_Excel(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetLeaveBalanceReport_Excel\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of Leave Balance Report\r\n\r\n // Leave Taken Report\r\n getLeaveTakenReport(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetLeaveTakenReport\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getLeaveTakenReport_Excel(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/LeaveReports/GetLeaveTakenReport_Excel\";\r\n return this.http.post(URL, params,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of Leave Taken Report\r\n\r\n\r\n // Approval Settings\r\n getAllApprovalSettings(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/GetAllApprovalSettings\";\r\n return this.http\r\n .post(URL, dataParams,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n saveAttachmentFiles(formData) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/UploadAttachmentFiles\";\r\n return this.http\r\n .post(URL, formData,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n saveApprovalSettings(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/SaveApprovalSettings\";\r\n return this.http\r\n .post(URL, dataParams,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getApprovalSettingsDetails(approvalId,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/GetApprovalSettingsDetails?Id=\" + approvalId +\"&CmpCode=\"+CmpCode;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n updateApprovalSettingsStatus(approvalId, status,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/UpdateApprovalSettingStatus?approvalId=\" + approvalId + \"&status=\" + status +\"&CmpCode=\"+CmpCode;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n deleteApprovalSettings(parms, approvalId) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/ApprovalSettings/DeleteApprovalSettings/?Id=\" + approvalId;\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of Approval Settings\r\n\r\n // Get PDF from base64\r\n // getReportPDFFromBase64(params) {\r\n // const URL = environment.apiUrl + \"/LeaveReports/GetReportPDFFromBase64\";\r\n // return this.http.post(URL, params).pipe(map((response: Response) => response));\r\n // }\r\n getReportPDFFromBase64(params) {\r\n let token = this.authService.getToken();\r\n const URL = environment.apiUrl + \"/LeaveReports/GetReportPDFFromBase64\";\r\n const httpOptions = {\r\n responseType: 'blob' as 'json',\r\n Authorization:`bearer ${token}`\r\n };\r\n return this.http.post(URL, params, httpOptions);\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // End of PDF from base64\r\n\r\n // For Drop Down List\r\n getJobBandsForSelect() {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllJobBandsForSelect';\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getRolesForSelect(cmpcode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllRolesForSelect?Cmpcode='+cmpcode;\r\n return this.http.get(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getGroupListForSelect(parms) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllGroups\";\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n getEmailTemplatesForSelect(parms) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/EmailTemplate/GetEmailTemplatesForSelect';\r\n return this.http.post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n // End of Drop Down List\r\n\r\n\r\n //#region Calendar Sync\r\n\r\n getUserCalendarSyncAuthorized(_userId) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CalendarSync/GetUserCalendarSyncAuthorized?UserId=\" + _userId;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n saveGoogleAuthorized(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CalendarSync/SaveGoogleAuthorized\";\r\n return this.http\r\n .post(URL, dataParams,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n revokeGoogleAuthorized(_userId) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CalendarSync/RevokeGoogleAuthorized?UserId=\" + _userId;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n syncGoogleCalendar(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/CalendarSync/SyncWithGoogleCalendar\";\r\n return this.http\r\n .post(URL, dataParams,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n //#endregion\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n

    Approval Settings

    \r\n
    \r\n
    \r\n
      \r\n
    • Total : {{myapprovalsListLength}}
    • \r\n
    • Active : {{ActiveLength}}
    • \r\n
    • In- Active : {{InActiveLength}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getServiceText(item.serviceId) }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    \r\n Add Approval\r\n Edit Approval\r\n View Approval\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Name is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n
    \r\n Criteria\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n

    The workflow will be triggered when the following criteria\r\n requirements are satisfied.

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n 0\">\r\n \r\n
    \r\n
    This field is required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n\r\n \r\n \r\n \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    This field is required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n
    \r\n
    This field is required
    \r\n
    \r\n
    \r\n to\r\n
    \r\n\r\n\r\n
    \r\n \r\n \r\n\r\n
    \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n 0 && !viewMode\" (click)=\"removeCriteria(i)\">\r\n \r\n \r\n    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n Approvals\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n

    You can either configure approver levels or allow the system to\r\n auto approve/reject the record.

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n 0 && !viewMode\" (click)=\"removeApproval(i)\">\r\n \r\n \r\n    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    (OR)

    \r\n\r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n One-time follow-up after\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n day(s) from the approval trigger date.\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n Follow-up email sent at\r\n
    \r\n
    \r\n \r\n
    \r\n
     
    \r\n
    \r\n
    \r\n
     
    \r\n
    \r\n

    (Approval request time will be considered if follow-up time is not provided.)

    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
     
    \r\n
    \r\n Repeat this follow-up every\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n day(s) from the approval trigger date till the request is approved.\r\n
    \r\n
    \r\n\r\n
    \r\n
     
    \r\n
    \r\n Follow-up email sent at\r\n
    \r\n
    \r\n \r\n
    \r\n
     
    \r\n
    \r\n
    \r\n
     
    \r\n
    \r\n

    (Approval request time will be considered if follow-up time is not provided.)

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n Message\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n

    Configure suitable approval message to send out to approvers &\r\n other recipient.

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n 0\">\r\n
    \r\n
    \r\n System Options\r\n
    \r\n
    \r\n \r\n \r\n {{ To_SystemOptions_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Users\r\n
    \r\n
    \r\n \r\n \r\n {{ To_Users_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Roles\r\n
    \r\n
    \r\n \r\n \r\n {{ To_Roles_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Departments\r\n
    \r\n
    \r\n \r\n \r\n {{ To_Departments_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Groups\r\n
    \r\n
    \r\n \r\n \r\n {{ To_Groups_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Locations\r\n
    \r\n
    \r\n \r\n \r\n {{ To_Locations_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n 0\">\r\n
    \r\n
    \r\n System Options\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_SystemOptions_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Users\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_Users_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Roles\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_Roles_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Departments\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_Departments_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Groups\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_Groups_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Locations\r\n
    \r\n
    \r\n \r\n \r\n {{ CC_Locations_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n 0\">\r\n
    \r\n
    \r\n System Options\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_SystemOptions_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Users\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_Users_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Roles\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_Roles_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Departments\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_Departments_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Groups\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_Groups_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n 0\">\r\n
    \r\n
    \r\n Locations\r\n
    \r\n
    \r\n \r\n \r\n {{ BCC_Locations_Selected[i].text }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n Edit Template\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{predefinedTextSelected}}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n {{ saveMessage }}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { Component, OnInit, ViewChildren, QueryList, ViewChild } from '@angular/core';\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { LeaveService } from \"../../leave.service\";\r\n//import { CKEditorComponent } from '@ckeditor/ckeditor5-angular';\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { ExpenseHttpService } from 'src/app/services/expense/expense-http.service';\r\nimport { GridComponent } from '@syncfusion/ej2-angular-grids';\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\nimport { JobbandService } from \"src/app/+layout/jobband/jobband.service\";\r\n\r\n\r\n@Component({\r\n selector: 'app-approval-setting',\r\n templateUrl: './approval-setting.component.html',\r\n styleUrls: ['./approval-setting.component.css']\r\n})\r\nexport class ApprovalSettingComponent implements OnInit {\r\n\r\n //public Editor = CKEditorComponent;\r\n\r\n public showMessage: string;\r\n public showSuccess: Boolean;\r\n IsDelete: boolean;\r\n deleteId: any;\r\n\r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n viewMode: Boolean;\r\n editMode: Boolean;\r\n\r\n filterServiceId: any;\r\n filterSearchText: any;\r\n\r\n approvalsList: any[];\r\n myapprovalsListLength: any;\r\n InActiveLength: any;\r\n ActiveLength: any;\r\n myApprovalsPage = 1;\r\n myApprovalsPageSize = 10;\r\n myApprovalsListLength = 0;\r\n\r\n approvalSettingsData: any;\r\n\r\n isSetCriteriaForm: Boolean = false;\r\n isSetApprovalForm: Boolean = false;\r\n isConfigureEmailTemplate: Boolean = false;\r\n\r\n emailTemplatesList: any[];\r\n\r\n // For User Dropdownlist\r\n serviceList: any[];\r\n ddlServiceList: any[];\r\n\r\n RoleList: any[];\r\n ddlRoleList: any[];\r\n\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n\r\n EmployeeList: any[];\r\n ddlEmployeeList: any[];\r\n\r\n projectList: any[];\r\n ddlProjectList: any[];\r\n\r\n JobBandList: any[];\r\n ddlJobBandList: any[];\r\n\r\n LeaveTypeList: any[];\r\n ddlLeaveTypeList: any[];\r\n\r\n EmployeeTypeList: any[];\r\n CriteriaListfield = {id:\"id\", text:\"txt\" }\r\n CriteriaList = [\r\n {id:\"==\", txt: \"Equal\"},\r\n {id:\"===\", txt: \"Strictly Equal\"},\r\n {id:\"!=\", txt: \"Not Equal\"},\r\n {id:\"!==\", txt: \"Strictly Not Equal\"},\r\n {id:\">\", txt: \"Greater-than\"},\r\n {id:\"<\", txt: \"Less-than\"},\r\n {id:\">=\", txt: \"Greater-than Or Equal\"},\r\n {id:\"<=\", txt: \"Less-than Equal\"},\r\n ]\r\n\r\n EqualTofield1 = {id:\"name\", text:\"name\" }\r\n EqualTo1 = []\r\n\r\n EqualTofield2 = {id:\"designationName\", text:\"designationName\" }\r\n EqualTo2 = []\r\n\r\n EqualTofield3 = {id:\"departmentName\", text:\"departmentName\" } \r\n EqualTo3 = []\r\n\r\n EqualTofield4 = {id:\"locationName\", text:\"locationName\" }\r\n EqualTo4 = []\r\n\r\n EqualTofield5\r\n EqualTo5 = []\r\n\r\n EqualTofield6 \r\n EqualTo6 = []\r\n\r\n EqualTofield7\r\n EqualTo7 = []\r\n\r\n EqualTofield11 = {id:\"leaveTypeName\", text:\"leaveTypeName\" }\r\n EqualTo11 = []\r\n\r\n EqualTofield12 \r\n EqualTo12 = []\r\n\r\n EqualTofield13 \r\n EqualTo13 = []\r\n\r\n EqualTofield41 = {id:\"projectName\", text:\"projectName\" }\r\n EqualTo41 = []\r\n\r\n EqualTofield42 = {id:\"id\", text:\"txt\" }\r\n EqualTo42 = []\r\n\r\n EqualTofield44\r\n EqualTo44 = []\r\n\r\n EqualTofield32 = {id:\"projectName\", text:\"projectName\" }\r\n EqualTo32 = []\r\n\r\n EqualTofield33\r\n EqualTo33 = []\r\n\r\n EqualTofield21\r\n EqualTo21 = []\r\n\r\n EqualTofield23 = {id:\"name\", text:\"name\" }\r\n EqualTo23 = []\r\n\r\n EqualTofield24 = {id:\"designationName\", text:\"designationName\" }\r\n EqualTo24 = []\r\n\r\n EqualTofield25 = {id:\"departmentName\", text:\"departmentName\" }\r\n EqualTo25 = []\r\n\r\n EqualTofield26 = {id:\"locationName\", text:\"locationName\" }\r\n EqualTo26 = []\r\n\r\n EqualTofield27 = {id:\"bandName\", text:\"bandName\" }\r\n EqualTo27 = []\r\n\r\n EqualTofield28 = {id:\"id\", text:\"txt\" }\r\n EqualTo28 = []\r\n\r\n EqualTofield29 = {id:\"id\", text:\"txt\" }\r\n EqualTo29 = []\r\n\r\n EqualTofield30 = {id:\"firstname\", text:\"firstname\" }\r\n EqualTo30 = []\r\n\r\n // this.EqualTofield2 = undefined\r\n // this.EqualTo2 = undefined\r\n // this.EqualTofield3 = undefined\r\n // this.EqualTo3 = undefined\r\n // this.EqualTofield4 = undefined\r\n // this.EqualTo4= undefined\r\n // this.EqualTofield5= undefined\r\n // this.EqualTo5= undefined\r\n // this.EqualTofield6 = undefined\r\n // this.EqualTo6= undefined\r\n // this.EqualTofield7= undefined\r\n // this.EqualTo7= undefined\r\n // this.EqualTofield11 = undefined\r\n // this.EqualTo11= undefined\r\n // this.EqualTofield12 = undefined\r\n // this.EqualTo12= undefined\r\n // this.EqualTofield13 = undefined\r\n // this.EqualTo13= undefined\r\n // this.EqualTofield41= undefined\r\n // this.EqualTo41= undefined\r\n // this.EqualTofield42 = undefined\r\n // this.EqualTo4= undefined\r\n // this.EqualTofield44= undefined\r\n // this.EqualTo44= undefined\r\n // this.EqualTofield32 = undefined\r\n // this.EqualTo32= undefined\r\n // this.EqualTofield33= undefined\r\n // this.EqualTo33= undefined\r\n // this.EqualTofield21= undefined\r\n // this.EqualTo21= undefined\r\n // this.EqualTofield23= undefined\r\n // this.EqualTo23= undefined\r\n // this.EqualTofield24= undefined\r\n // this.EqualTo24= undefined\r\n // this.EqualTofield25 = undefined\r\n // this.EqualTo25= undefined\r\n // this.EqualTofield26= undefined\r\n // this.EqualTo26= undefined\r\n // this.EqualTofield27= undefined\r\n // this.EqualTo27= undefined\r\n // this.EqualTofield28= undefined\r\n // this.EqualTo28= undefined\r\n // this.EqualTofield29 = undefined\r\n // this.EqualTo29= undefined\r\n // this.EqualTofield30= undefined\r\n // this.EqualTo30= undefined\r\n\r\n ddlEmployeeTypeList: any[];\r\n\r\n GenderList: any[];\r\n ddlGenderList: any[];\r\n\r\n ReportingToList: any[];\r\n ddlReportingToList: any[];\r\n\r\n GroupList: any[];\r\n ddlGroupList: any[];\r\n\r\n criteriaTypeActiveDropdownsList: Boolean[];\r\n ApprovalsStepList: any[];\r\n ProductHeader:any[]=[{name:\"Reporting\",id:1},{name:\"Department Head of Login User\",id:2},{name:\"Approver based on Role\",id:3},{name:\"Department Head\",id:4},{name:\"Department Members\",id:5},\r\n {name:\"Project Managers\",id:6}]\r\n\r\n // Email\r\n emailToDDLActive: Boolean = false;\r\n emailCCDDLActive: Boolean = false;\r\n emailBCCDDLActive: Boolean = false;\r\n\r\n mailTemplateType: Number = 2;\r\n emailTemplateId: any;\r\n\r\n emailTemplateBody: '';\r\n emailTemplatesPredefinedTextList: any[];\r\n predefinedTextSelected: any;\r\n isEditModeEmailTemplate: Boolean = false;\r\n //editror config\r\n editorConfig = {\r\n editable: true,\r\n spellcheck: false,\r\n height: '10rem',\r\n minHeight: '5rem',\r\n placeholder: 'Email content',\r\n translate: 'no',\r\n \"toolbar\": [\r\n [\"bold\", \"italic\", \"underline\", \"strikeThrough\", \"superscript\", \"subscript\"]\r\n ]\r\n };\r\n\r\n // To\r\n To_SystemOptions: any[];\r\n To_Users: any[];\r\n To_Roles: any[];\r\n To_Departments: any[];\r\n To_Groups: any[];\r\n To_Locations: any[];\r\n\r\n To_SystemOptions_Selected: any[];\r\n To_Users_Selected: any[];\r\n To_Roles_Selected: any[];\r\n To_Departments_Selected: any[];\r\n To_Groups_Selected: any[];\r\n To_Locations_Selected: any[];\r\n\r\n // CC\r\n CC_SystemOptions: any[];\r\n CC_Users: any[];\r\n CC_Roles: any[];\r\n CC_Departments: any[];\r\n CC_Groups: any[];\r\n CC_Locations: any[];\r\n\r\n CC_SystemOptions_Selected: any[];\r\n CC_Users_Selected: any[];\r\n CC_Roles_Selected: any[];\r\n CC_Departments_Selected: any[];\r\n CC_Groups_Selected: any[];\r\n CC_Locations_Selected: any[];\r\n\r\n // BCC\r\n BCC_SystemOptions: any[];\r\n BCC_Users: any[];\r\n BCC_Roles: any[];\r\n BCC_Departments: any[];\r\n BCC_Groups: any[];\r\n BCC_Locations: any[];\r\n\r\n BCC_SystemOptions_Selected: any[];\r\n BCC_Users_Selected: any[];\r\n BCC_Roles_Selected: any[];\r\n BCC_Departments_Selected: any[];\r\n BCC_Groups_Selected: any[];\r\n BCC_Locations_Selected: any[];\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n\r\n //Permissions\r\n AddPermission: boolean;\r\n EditPermission: boolean;\r\n DeletePermission: boolean;\r\n ViewPermission: boolean;\r\n StatusPermission: boolean;\r\n\r\n saveMessage: any;\r\n CmpCode: any;\r\n public EmployeeFields: Object = { text: 'text', value: 'id' };\r\n isEditable: boolean;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService,\r\n private _jobbandSer: JobbandService,\r\n private toaster: ToasterService,\r\n private Http: ExpenseHttpService) { this.CmpCode = this._authSer.getcompanyCode(); }\r\n\r\n ngOnInit() {// Angular Lifecycle hook\r\n this.filterServiceId = null;\r\n this.filterSearchText = null;\r\n this.approvalsList = [];\r\n this.emailTemplatesList = [];\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n this.AddPermission = true; //res.permission.includes(Permission.ApprovalSettingsAdd);\r\n this.EditPermission = true; // res.permission.includes(Permission.ApprovalSettingsEdit);\r\n this.DeletePermission = true; // res.permission.includes(Permission.ApprovalSettingsDelete);\r\n this.ViewPermission = true; // res.permission.includes(Permission.ApprovalSettingsView);\r\n this.StatusPermission = true; // res.permission.includes(Permission.ApprovalSettingsStatus);\r\n });\r\n\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n this.bindServiceList();\r\n this.getApprovalsList();\r\n this.getEmailTemplatesList();\r\n this.bindAllDDLData();\r\n this.setPredefinedTexts();\r\n this.GetEmployees();\r\n }\r\n\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n public pageSettings = { pageCount: 3 };\r\n DateFormat: any;\r\n\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {// Created By G Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n\r\n numberOnly(event): boolean {// Created By G Numbers validation\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n currentstatus:any='total';\r\n active:any='total';\r\n getvalue(date){// Created By G Get All Records\r\n this.active=date;\r\n this.currentstatus=date;\r\n this.getApprovalsList();\r\n // this.getRoadblocks();\r\n\r\n }\r\n filtervalue(){// Created By G Filter Records\r\n if(this.currentstatus=='total')\r\n {\r\n\r\n }\r\n if(this.currentstatus=='active')\r\n {\r\n this.approvalsList = this.approvalsList.filter(user => user.isActive == true);\r\n }\r\n if(this.currentstatus=='inactive')\r\n {\r\n this.approvalsList = this.approvalsList.filter(user => user.isActive == false);\r\n \r\n }\r\n \r\n }\r\n\r\n getServiceText(_serviceId) {// Created By G On Select Form name\r\n switch (_serviceId) {\r\n case 1:\r\n return \"Leaves\";\r\n case 2:\r\n return \"Compensatory Off\";\r\n case 3:\r\n return \"Expense\";\r\n case 4:\r\n return \"Advance Payment\"\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\n // \r\n getApprovalsList() {// Created By G Get Approval Settings List\r\n this.userLoader = true;\r\n let parms = {\r\n ServiceId: this.filterServiceId != null && this.filterServiceId != \"null\" ? this.filterServiceId : 0,\r\n SearchText: this.filterSearchText,\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getAllApprovalSettings(parms).subscribe((res) => {\r\n this.approvalsList = res[\"data\"];\r\n this.myapprovalsListLength = res[\"data\"].length;\r\n this.InActiveLength = this.approvalsList.filter(user => user.isActive == false).length;\r\n this.ActiveLength = this.approvalsList.filter(user => user.isActive == true).length;\r\n this.userLoader = false;\r\n this.myApprovalsListLength = this.approvalsList.length;\r\n this.filtervalue();\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n onChangeFilterServiceId(e) {// Created By G Set Value\r\n this.filterServiceId = e.itemData.id\r\n //this.filterServiceId = e.srcElement.value;\r\n this.getApprovalsList();\r\n }\r\n\r\n //\r\n ChangeStatus(data) {// Created By G On Change Status\r\n data.isActive = !data.isActive;\r\n this._leaveService.updateApprovalSettingsStatus(data.approvalId, data.isActive, this.CmpCode).subscribe((res:any) => {\r\n this.toaster.show(\"success\", res.data);\r\n debugger;\r\n this.getApprovalsList();\r\n \r\n });\r\n }\r\n\r\n // Delete\r\n deleteApprovalSettings(approvalSetings) {// Created By G Initialize confirm modal\r\n try {\r\n if (approvalSetings.approvalId != '') {\r\n this.IsDelete = true;\r\n this.showSuccess = false;\r\n\r\n this.deleteId = approvalSetings.approvalId;\r\n this.openModel('confirmDeleteModel', 'Are you sure, you want to delete this record?');\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n openModel(ModalId, Message) {// Created By G Open Modals from code\r\n this._commonSer.OpenModalHandler(ModalId);\r\n this.showMessage = Message;\r\n }\r\n ConfirmDelete(approvalId) {// Created By G On Confirm Delete approval settings\r\n let parms = { CmpCode: this.CmpCode };\r\n try {\r\n this.userLoader = true;\r\n this._leaveService.deleteApprovalSettings(parms, approvalId).subscribe((res) => {\r\n this.userLoader = false;\r\n if (res['success'] == true) {\r\n this.showSuccess = true;\r\n this.showMessage = res['data'];\r\n this._commonSer.CloseModalHandler('confirmDeleteModel');\r\n this.toaster.show(\"success\", this.showMessage);\r\n // this._commonSer.OpenModalHandler('userMessageModel');\r\n this.getApprovalsList();\r\n } else {\r\n this.showSuccess = false;\r\n this.showMessage = res['message'];\r\n this._commonSer.CloseModalHandler('confirmDeleteModel');\r\n this.toaster.show(\"warning\", this.showMessage);\r\n\r\n // this._commonSer.OpenModalHandler('userMessageModel');\r\n }\r\n });\r\n } catch (ex) {\r\n console.log(ex);\r\n this.userLoader = false;\r\n this.getApprovalsList();\r\n }\r\n }\r\n\r\n // New Approval Settings\r\n resetForm() {// Created By G Reset Form\r\n let vm = this;\r\n vm.approvalSettingsData = {\r\n approvalId: 0,\r\n serviceId: 1,\r\n settingName: null,\r\n settingDescription: null,\r\n approvalType: 1,\r\n enableFollowUp: false,\r\n followUpType: null,\r\n followUpAfterDays: null,\r\n followUpTime: null,\r\n isActive: true,\r\n criteriaList: [],\r\n approvalList: [],\r\n approvalEmailTemplate: null,\r\n CmpCode: this.CmpCode\r\n };\r\n\r\n vm.isSetCriteriaForm = false;\r\n vm.isSetApprovalForm = false;\r\n vm.isConfigureEmailTemplate = false;\r\n vm.isEditModeEmailTemplate = false;\r\n\r\n vm.viewMode = false;\r\n vm.editMode = false;\r\n vm.criteriaTypeActiveDropdownsList = [];\r\n vm.ApprovalsStepList = [];\r\n vm.saveMessage = \"\";\r\n\r\n vm.predefinedTextSelected = null;\r\n }\r\n\r\n onChangeServiceId(_serviceId) {// Created By G On change service\r\n let vm = this;\r\n vm.isSetCriteriaForm = false;\r\n vm.approvalSettingsData.criteriaList = [];\r\n vm.criteriaTypeActiveDropdownsList = [];\r\n }\r\n\r\n // Criteria\r\n setCriteriaPanel() { // Created By G On change criteria\r\n let vm = this;\r\n vm.isSetCriteriaForm = true;\r\n vm.criteriaTypeActiveDropdownsList = [];\r\n vm.addCriteria(0);\r\n }\r\n removeCriteriaPanel() { // Created By G On remove criteria\r\n let vm = this;\r\n vm.isSetCriteriaForm = false;\r\n vm.criteriaTypeActiveDropdownsList = [];\r\n vm.approvalSettingsData.criteriaList = [];\r\n }\r\n arr = []\r\n\r\n setVal(i,e){// Created By G Set Value\r\n debugger\r\n this.approvalSettingsData.criteriaList[i].value = e\r\n }\r\n addCriteria(_position) {// Created By G On add criteria\r\n let vm = this;\r\n let _criteriaList = vm.approvalSettingsData.criteriaList;\r\n \r\n debugger\r\n let newCriteria = {\r\n condition: \"\",\r\n criteriaType: null,\r\n criteriaTypeText: null,\r\n whereCondition: \"\",\r\n criteriaSubType: null,\r\n criteriaSubTypeText: null,\r\n value: \"\",\r\n ddlList: [],\r\n };\r\n \r\n if (_criteriaList.length == 0 && _position == 0) {\r\n _criteriaList.push(newCriteria);\r\n } else {\r\n newCriteria.condition = \"AND\";\r\n _criteriaList.splice(_position, 0, newCriteria);\r\n }\r\n vm.approvalSettingsData.criteriaList = _criteriaList;\r\n vm.criteriaTypeActiveDropdownsList.push(false);\r\n }\r\n removeCriteria(_index) {// Created By G On remove criteria\r\n let vm = this;\r\n vm.approvalSettingsData.criteriaList.splice(_index, 1);\r\n vm.criteriaTypeActiveDropdownsList.splice(_index, 1);\r\n }\r\n openCriteriaTypeDDL(_index) {// Created By G Set criteria dropdown\r\n let vm = this;\r\n for (let i = 0; i < vm.criteriaTypeActiveDropdownsList.length; i++) {\r\n vm.criteriaTypeActiveDropdownsList[i] = false;\r\n }\r\n vm.criteriaTypeActiveDropdownsList[_index] = (vm.criteriaTypeActiveDropdownsList[_index] == true) ? false : true;\r\n if (vm.approvalSettingsData.criteriaList[_index].criteriaType == null) {\r\n if (vm.approvalSettingsData.serviceId == 1) {\r\n vm.approvalSettingsData.criteriaList[_index].criteriaType = 2;\r\n } else if (vm.approvalSettingsData.serviceId == 1) {\r\n vm.approvalSettingsData.criteriaList[_index].criteriaType = 4;\r\n }\r\n }\r\n }\r\n closeAllCriteriaTypeDDL() {// Created By G\r\n let vm = this;\r\n for (let i = 0; i < vm.criteriaTypeActiveDropdownsList.length; i++) {\r\n vm.criteriaTypeActiveDropdownsList[i] = false;\r\n }\r\n }\r\n isAmount: boolean = false;\r\n setSelectedCriteriaType(_value, _index) {// Created By G On Select criteria type\r\n let vm = this;\r\n\r\n vm.closeAllCriteriaTypeDDL();\r\n vm.approvalSettingsData.criteriaList[_index].value = null;\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = [];\r\n\r\n vm.approvalSettingsData.criteriaList[_index].criteriaType = vm.getCriteriaType(_value);\r\n vm.approvalSettingsData.criteriaList[_index].criteriaTypeText = vm.getCriteriaTypeText(vm.approvalSettingsData.criteriaList[_index].criteriaType);\r\n\r\n vm.approvalSettingsData.criteriaList[_index].criteriaSubType = _value;\r\n vm.approvalSettingsData.criteriaList[_index].criteriaSubTypeText = vm.getCriteriaSubTypeText(_value);\r\n // Amount\r\n vm.approvalSettingsData.criteriaList[_index].amount = vm.getCriteriaSubTypeText(_value);\r\n\r\n if (_value == 1 || _value == 23) { // Role\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlRoleList;\r\n } else if (_value == 2 || _value == 24) { // Designation\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlDesignationList;\r\n } else if (_value == 3 || _value == 25) { // Department\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlDepartmentList;\r\n } else if (_value == 4 || _value == 26) { // Location\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlLocationList;\r\n } else if (_value == 11 || _value == 21 || _value == 30 || _value == 41) { // Employee ID\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlEmployeeList;\r\n } else if (_value == 12) { // LeaveType\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlLeaveTypeList;\r\n } else if (_value == 27) { // Job Band\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlJobBandList;\r\n } else if (_value == 28) { // Employee Type\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlEmployeeTypeList;\r\n } else if (_value == 29) { // Gender\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlGenderList;\r\n } else if (_value == 32) { // project\r\n vm.approvalSettingsData.criteriaList[_index].ddlList = vm.ddlProjectList;\r\n }\r\n\r\n //Experience\r\n //Date of Joining\r\n\r\n this.criteriaChange(_value)\r\n }\r\n getCriteriaType(_value) {// Created By G\r\n if (_value > 0 && _value <= 10) { //System Options\r\n return 1;\r\n } else if (_value >= 11 && _value <= 20) { //Leaves\r\n return 2;\r\n } else if (_value >= 21 && _value <= 40) { //Employee\r\n return 3;\r\n } else if (_value >= 41 && _value <= 50) { //Compensatory Off\r\n return 4;\r\n }\r\n }\r\n getCriteriaTypeText(_value) {// Created By G\r\n switch (_value) {\r\n case 1:\r\n return \"System Options\";\r\n case 2:\r\n return \"Leaves\";\r\n case 3:\r\n return \"Employee\";\r\n case 4:\r\n return \"Compensatory Off\";\r\n }\r\n }\r\n getCriteriaSubTypeText(_value) {// Created By G\r\n switch (_value) {\r\n case 1:\r\n return \"Role\";\r\n case 2:\r\n return \"Designation\";\r\n case 3:\r\n return \"Department\";\r\n case 4:\r\n return \"Location\";\r\n case 11:\r\n return \"Leave Name\";\r\n case 12:\r\n return \"Leave Type\";\r\n case 13:\r\n return \"Units\";\r\n case 21:\r\n return \"Employee ID\";\r\n case 22:\r\n return \"Experience\";\r\n case 23:\r\n return \"Role\";\r\n case 24:\r\n return \"Designation\";\r\n case 25:\r\n return \"Department\";\r\n case 26:\r\n return \"Location\";\r\n case 27:\r\n return \"Job Band\";\r\n case 28:\r\n return \"Employee Type\";\r\n case 29:\r\n return \"Gender\";\r\n case 30:\r\n return \"Reporting To\";\r\n case 31:\r\n return \"Date of Joining\";\r\n case 32:\r\n return \"Project Name\";\r\n case 33:\r\n return \"Amount\";\r\n case 41:\r\n return \"Project Name\";\r\n case 42:\r\n return \"Units\";\r\n case 44:\r\n return \"Amount\";\r\n }\r\n\r\n }\r\n \r\n onChangeCriteriaWhereCondition(_value, _index) {// Created By G\r\n let vm = this;\r\n debugger\r\n vm.approvalSettingsData.criteriaList[_index].value = \"\";\r\n }\r\n\r\n\r\n \r\n setApprovalPanel() {// Created By G Approvals\r\n let vm = this;\r\n vm.isSetApprovalForm = true;\r\n vm.addApproval(0);\r\n }\r\n removeApprovalPanel() {// Created By G Remove approval\r\n let vm = this;\r\n vm.isSetApprovalForm = false;\r\n vm.approvalSettingsData.approvalList = [];\r\n vm.approvalSettingsData.approvalType = 1;\r\n }\r\n addApproval(_position) {// Created By G Add approval\r\n let vm = this;\r\n let _approvalList = vm.approvalSettingsData.approvalList;\r\n let newApproval = {\r\n approvalType: null,\r\n value: \"\",\r\n ddlValueList: [],\r\n };\r\n _approvalList.splice(_position, 0, newApproval);\r\n vm.approvalSettingsData.approvalList = _approvalList;\r\n }\r\n PageNumber:any=1\r\n NoOfRecords:any=1000000\r\n SortType = \"asc\";\r\n ColumnName = \"name\";\r\n roles:any=[]\r\n myRequestsListLength:any=[]\r\n designationDetails:any=[]\r\n departmentDetails:any=[]\r\n locationDetails :any=[]\r\n jobBandList:any=[]\r\n allLeaveTypeList:any=[]\r\n totalMyRequestList:any=[]\r\n checkDdl:boolean=true\r\n criteriaChange(val){// Created By G On Update Criteria\r\n debugger\r\n\r\n switch (val) {\r\n \r\n case 1:\r\n this.checkDdl=true\r\n // return \"Role\";\r\n ///fullquery = \"where name like '%\" + (this.SearchbyName).trim() + \"%'\" + \"and Cmpcode=\" + this.CmpCode;\r\n let filterModel = {\r\n \"PageNo\": this.PageNumber,\r\n \"NoOfRecords\": this.NoOfRecords,\r\n \"SortType\": this.SortType,\r\n \"FieldName\": this.ColumnName,\r\n \"Condition\": '',\r\n \"CmpCode\": this.CmpCode,\r\n };\r\n this._commonSer.CRG_PostAPI(\"Admin/GetAllRoles\", JSON.stringify(filterModel)).subscribe(result => {\r\n let response = JSON.parse(result[\"_body\"]);\r\n this.roles = response.data.table;\r\n this.EqualTo1=this.roles.filter(state => state.inActive === false)\r\n \r\n /// this.createPagination(response.data.table1[0].filterCount, this.PageNumber, this.NoOfRecords);\r\n // this.showLoader = false;\r\n });\r\n\r\n\r\n\r\n break\r\n case 2:\r\n this.checkDdl=true\r\n\r\n this.userLoader = true;\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\", //'asc',\r\n FieldName: \"CreatedDate\", //'EmployeeId',\r\n Condition: null, \r\n CmpCode:this.CmpCode,\r\n };\r\n \r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n debugger;\r\n this.userLoader = false;\r\n debugger;\r\n this.designationDetails = res.data == null ? [] : res.data.table;\r\n this.EqualTo2=this.designationDetails.filter(state => state.inActive === false)\r\n // this.LocationDetails.filter(state => state.inActive === true)\r\n \r\n \r\n });\r\n // return \"Designation\";\r\n\r\n \r\n\r\n break\r\n case 3:\r\n this.checkDdl=true\r\n\r\n this.userLoader = true;\r\n let parmsfor = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\",\r\n FieldName: \"CreatedDate\",\r\n Condition: null ,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.userLoader = false;\r\n this.departmentDetails = res.data == null ? [] : res.data.table;\r\n this.EqualTo3=this.departmentDetails.filter(state => state.inActive === false)\r\n \r\n \r\n });\r\n // return \"Department\";\r\n break\r\n case 4:\r\n this.checkDdl=true\r\n\r\n let parmsLoca = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\", //'asc',\r\n FieldName: \"CreatedDate\", //'EmployeeId',\r\n Condition:null,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._locationSer.getlocationlist(parmsLoca).subscribe((res) => {\r\n \r\n this.locationDetails = res.data.table;\r\n this.EqualTo4= this.locationDetails.filter(state => state.inActive === false)\r\n this.EqualTofield4 \r\n });\r\n // return \"Location\";\r\n break\r\n case 11:\r\n this.checkDdl=true\r\n\r\n let parmsleavefor = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n FilterStatus: null,\r\n FilterEmployees: null,\r\n FilterDepartments: null,\r\n FilterLocations: null,\r\n FilterDesignations: null,\r\n FilterRoles: null,\r\n FilterUnit: null,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._leaveService.getAllLeaveTypeData(parmsleavefor).subscribe((res) => {\r\n this.allLeaveTypeList = res[\"data\"].table;\r\n this.totalMyRequestList=this.allLeaveTypeList\r\n this.EqualTo11=this.allLeaveTypeList.filter(state => state.isActive === true)\r\n this.EqualTofield11 \r\n this.userLoader = false;\r\n });\r\n break\r\n // return \"Leave Name\";\r\n case 12:\r\n this.checkDdl=true\r\n\r\n\r\n this.EqualTofield12 = {id:\"id\", text:\"txt\" }\r\n this.EqualTo12 = [\r\n {id:\"Paid\", txt: \"Paid\"},\r\n {id:\"UnPaid\", txt: \"UnPaid\"}\r\n \r\n ]\r\n break\r\n // return \"Leave Type\";\r\n break\r\n case 13:\r\n this.checkDdl=true\r\n\r\n // return \"Units\";\r\n this.EqualTofield13 = {id:\"id\", text:\"txt\" }\r\n this.EqualTo13 = [\r\n {id:\"Day(s)\", txt: \"Day(s)\"},\r\n {id:\"Hour(s)\", txt: \"Hour(s)\"}\r\n \r\n ]\r\n break\r\n case 21:\r\n this.checkDdl=false\r\n // return \"Employee ID\";\r\n break\r\n \r\n case 23:\r\n this.checkDdl=true\r\n\r\n // return \"Role\";\r\n let filterModelfor = {\r\n \"PageNo\": this.PageNumber,\r\n \"NoOfRecords\": this.NoOfRecords,\r\n \"SortType\": this.SortType,\r\n \"FieldName\": this.ColumnName,\r\n \"Condition\": '',\r\n \"CmpCode\": this.CmpCode,\r\n };\r\n this._commonSer.CRG_PostAPI(\"Admin/GetAllRoles\", JSON.stringify(filterModelfor)).subscribe(result => {\r\n let response = JSON.parse(result[\"_body\"]);\r\n this.roles = response.data.table;\r\n this.EqualTo23=this.roles.filter(state => state.inActive === false)\r\n this.EqualTofield23 \r\n this.myRequestsListLength = this.roles.length;\r\n /// this.createPagination(response.data.table1[0].filterCount, this.PageNumber, this.NoOfRecords);\r\n // this.showLoader = false;\r\n });\r\n \r\n break\r\n case 24:\r\n this.checkDdl=true\r\n\r\n this.userLoader = true;\r\n let parmsf = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\",\r\n FieldName: \"CreatedDate\",\r\n Condition: null, \r\n CmpCode:this.CmpCode,\r\n };\r\n \r\n this._desigation.getDesignationList(parmsf).subscribe((res) => {\r\n debugger;\r\n this.userLoader = false;\r\n debugger;\r\n this.designationDetails = res.data == null ? [] : res.data.table;\r\n this.EqualTo24=this.designationDetails.filter(state => state.inActive === false)\r\n this.EqualTofield24 \r\n \r\n \r\n });\r\n // return \"Designation\";\r\n break\r\n case 25:\r\n this.checkDdl=true\r\n\r\n this.userLoader = true;\r\n let parmsdes = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\",\r\n FieldName: \"CreatedDate\",\r\n Condition: null ,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._depratmentSer.getDepartmentList(parmsdes).subscribe((res) => {\r\n this.userLoader = false;\r\n this.departmentDetails = res.data == null ? [] : res.data.table;\r\n this.EqualTo25=this.departmentDetails.filter(state => state.inActive === false)\r\n\r\n\r\n this.EqualTofield25 \r\n \r\n });\r\n // return \"Department\";\r\n break\r\n case 26:\r\n this.checkDdl=true\r\n\r\n let parmsLoc = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\", //'asc',\r\n FieldName: \"CreatedDate\", //'EmployeeId',\r\n Condition:null,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._locationSer.getlocationlist(parmsLoc).subscribe((res) => {\r\n \r\n this.locationDetails = res.data.table;\r\n \r\n this.EqualTo26=this.locationDetails.filter(state => state.inActive === false)\r\n this.EqualTofield26\r\n });\r\n // return \"Location\";\r\n break\r\n case 27:\r\n this.checkDdl=true\r\n\r\n this.userLoader = true;\r\n let parmsjob = {\r\n PageNo: 1,\r\n NoOfRecords: 10000,\r\n SortType: \"desc\", //'asc',\r\n FieldName: \"CreatedDate\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._jobbandSer.getJobBandList(parmsjob).subscribe((res) => {\r\n this.userLoader = false;\r\n this.jobBandList = res.data.table;\r\n this.EqualTo27=this.jobBandList.filter(state => state.inActive === false)\r\n this.EqualTofield27 \r\n });\r\n // return \"Job Band\";\r\n break\r\n case 28:\r\n this.checkDdl=true\r\n\r\n this.EqualTofield28\r\n this.EqualTo28 = [\r\n {id:\"Employee\", txt: \"Employee\"},\r\n {id:\"Vendor\", txt: \"Vendor\"},\r\n {id:\"Contact Person\", txt: \"Contact Person\"},\r\n\r\n {id:\"Sales Person\", txt: \"Sales Person\"}\r\n ]\r\n // return \"Employee Type\";\r\n break\r\n case 29:\r\n this.checkDdl=true\r\n\r\n // return \"Gender\";\r\n this.EqualTofield29\r\n this.EqualTo29 = [\r\n {id:\"Male\", txt: \"Male\"},\r\n {id:\"Female\", txt: \"Female\"}\r\n \r\n ]\r\n break\r\n case 30:\r\n this.checkDdl=true\r\n this.Http.getReportingTo(this.CmpCode).then((res) => {\r\n debugger\r\n this.userLoader = false;\r\n let reportingList = res.data.table;\r\n this.EqualTo30=reportingList\r\n this.EqualTofield30\r\n });\r\n\r\n // return \"Reporting To\";\r\n break\r\n case 31:\r\n this.checkDdl=true\r\n\r\n // return \"Date of Joining\";\r\n break\r\n case 32:\r\n this.checkDdl=true\r\n\r\n\r\n let paramprojectfor={\r\n CmpCode: \"1\",\r\n Condition: null,\r\n FieldName: \"ProjectName\",\r\n NoOfRecords: \"1000\",\r\n PageNo: 1,\r\n SortType: \"asc\",\r\n userId: 10098,\r\n userType: 1\r\n }\r\n \r\n \r\n this._commonSer.CRG_PostAPI(\"Project/GetProjects\", paramprojectfor).subscribe( (res: any) =>{\r\n if (res.status === 200) {\r\n const response = JSON.parse(res._body);\r\n if (response.data != null) {\r\n debugger;\r\n let ProjectList = response.data.table;\r\n this.EqualTo32=ProjectList.filter(state => state.inActive === false)\r\n this.EqualTofield32 \r\n }\r\n }\r\n }, err => {\r\n // this.Loader = false;\r\n this.userLoader = false;\r\n \r\n });\r\n\r\n // return \"Project Name\";\r\n\r\n\r\n break\r\n case 33:\r\n this.checkDdl=false\r\n \r\n // return \"Date of Joining\";\r\n break\r\n\r\n case 41:\r\n \r\n\r\nlet paramproject={\r\n CmpCode: \"1\",\r\n Condition: null,\r\n FieldName: \"ProjectName\",\r\n NoOfRecords: \"1000\",\r\n PageNo: 1,\r\n SortType: \"asc\",\r\n userId: 10098,\r\n userType: 1\r\n}\r\n\r\n\r\nthis._commonSer.CRG_PostAPI(\"Project/GetProjects\", paramproject).subscribe( (res: any) => {\r\n if (res.status === 200) {\r\n const response = JSON.parse(res._body);\r\n if (response.data != null) {\r\n debugger;\r\n let ProjectList = response.data.table;\r\n this.EqualTo41=ProjectList.filter(state => state.inActive === false)\r\n this.EqualTofield41 \r\n }\r\n }\r\n}, err => {\r\n // this.Loader = false;\r\n this.userLoader = false;\r\n\r\n});\r\n\r\n\r\n\r\n // return \"Project Name\";\r\n break\r\n case 42:\r\n this.checkDdl=true\r\n\r\n // return \"Units\";\r\n this.EqualTofield42 \r\n this.EqualTo42 = [\r\n {id:\"Day(s)\", txt: \"Day(s)\"},\r\n {id:\"Day(s)\", txt: \"Hour(s)\"}\r\n \r\n ]\r\n break\r\n \r\n }\r\n }\r\n removeApproval(_index) {// Created By G Remove approval\r\n let vm = this;\r\n vm.approvalSettingsData.approvalList.splice(_index, 1);\r\n }\r\n onChangeApprovalType(_value, _index) {// Created By G On change approval type\r\n debugger\r\n let vm = this;\r\n // vm.approvalSettingsData.approvalList[_index].value = null;\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = [];\r\n\r\n if (_value == 1) { // Reporting To\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlReportingToList;\r\n } else if (_value == 3) { // Approver based on Role\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlRoleList;\r\n } else if (_value == 4) { // Department Head\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlDepartmentList;\r\n } else if (_value == 5) { // Department Members\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlDepartmentList;\r\n } else if (_value == 7) { // Group\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlGroupList;\r\n } else if (_value == 8) { // Employee\r\n vm.approvalSettingsData.approvalList[_index].ddlValueList = vm.ddlEmployeeListData;\r\n } \r\n\r\n vm.setApprovalsStepList();\r\n }\r\n onChangeApprovalTypeValue(_value, _index) {// Created By G Set Value\r\n debugger\r\n let vm = this;\r\n vm.approvalSettingsData.approvalList[_index].value = _value;\r\n vm.setApprovalsStepList();\r\n }\r\n setApprovalsStepList() {// Created By G After changing approval type\r\n debugger\r\n let vm = this;\r\n vm.ApprovalsStepList = [];\r\n\r\n for (let i = 0; i < vm.approvalSettingsData.approvalList.length; i++) {\r\n let _approvalType = vm.approvalSettingsData.approvalList[i].approvalType;\r\n let _value = vm.approvalSettingsData.approvalList[i].value;\r\n\r\n if (_approvalType == 1) { // Reporting To\r\n if (_value != null && _value != \"\") {\r\n vm.ApprovalsStepList.push(_value + \" Level(s) of Reporting To\");\r\n }\r\n } else if (_approvalType == 2) { // Department Head of Login User\r\n vm.ApprovalsStepList.push(\"Department Head of Login User\");\r\n } else if (_approvalType == 3) { // Approver based on Role\r\n const currentItem = vm.ddlRoleList.find(x => x.id == _value);\r\n if (currentItem !== undefined && currentItem != null) {\r\n vm.ApprovalsStepList.push(currentItem.text);\r\n }\r\n } else if (_approvalType == 4) { // Department Head\r\n const currentItem = vm.ddlDepartmentList.find(x => x.id == _value);\r\n if (currentItem !== undefined && currentItem != null) {\r\n vm.ApprovalsStepList.push(currentItem.text + \" Department Head\");\r\n }\r\n } else if (_approvalType == 5) { // Department Members\r\n const currentItem = vm.ddlDepartmentList.find(x => x.id == _value);\r\n if (currentItem !== undefined && currentItem != null) {\r\n vm.ApprovalsStepList.push(currentItem.text + \" Department Members\");\r\n }\r\n } \r\n else if (_approvalType == 6) { // Department Members\r\n vm.ApprovalsStepList.push( \" Project Manager\");\r\n }\r\n \r\n else if (_approvalType == 7) { // Group\r\n const currentItem = vm.ddlGroupList.find(x => x.id == _value);\r\n if (currentItem !== undefined && currentItem != null) {\r\n vm.ApprovalsStepList.push(\"Group - \" + currentItem.text);\r\n }\r\n }\r\n else if (_approvalType == 8) { // Employee\r\n const currentItem = vm.ddlEmployeeListData.find(x => x.id == _value);\r\n if (currentItem !== undefined && currentItem != null) {\r\n vm.ApprovalsStepList.push(currentItem.text + \" Employee\");\r\n }\r\n } \r\n else if (_approvalType == 9) { // Client\r\n vm.ApprovalsStepList.push( \" Client\");\r\n \r\n } \r\n else if (_approvalType == 10) { // Project Admins\r\n vm.ApprovalsStepList.push( \" Project Admins\");\r\n \r\n } \r\n else if (_approvalType == 11) { // Project Managers\r\n vm.ApprovalsStepList.push( \" Reporting Managers\");\r\n \r\n } \r\n else if (_approvalType == 12) { // Project Managers\r\n vm.ApprovalsStepList.push( \" Timesheet Approval\");\r\n \r\n } \r\n }\r\n }\r\n\r\n\r\n // Followup\r\n onChangeFollowup(e) {// Created By G Followup\r\n console.log(e);\r\n let vm = this;\r\n if (e.target.checked) {\r\n vm.approvalSettingsData.followUpType = 1;\r\n vm.approvalSettingsData.followUpAfterDays = 1;\r\n vm.approvalSettingsData.followUpTime = \"12:00 PM\";\r\n } else {\r\n vm.approvalSettingsData.followUpType = null;\r\n vm.approvalSettingsData.followUpAfterDays = null;\r\n vm.approvalSettingsData.followUpTime = null;\r\n }\r\n }\r\n\r\n removeEmailPanel(){// Created By G Set value\r\n this.isConfigureEmailTemplate=false;\r\n }\r\n \r\n setEmailTemplatePanel() {// Created By G Email Template\r\n let vm = this;\r\n let _approvalEmailTemplate = {\r\n from: 1,\r\n to: null,\r\n cc: null,\r\n bcc: null,\r\n subject: \"New Leave Request\",\r\n emailBody: null\r\n };\r\n vm.approvalSettingsData.approvalEmailTemplate = _approvalEmailTemplate;\r\n this.setEmailToDDLs();\r\n this.setEmailCCDDLs();\r\n this.setEmailBCCDDLs();\r\n vm.getDefaultTemplate();\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = false;\r\n\r\n vm.mailTemplateType = 2;\r\n vm.emailTemplateId = 1;\r\n\r\n vm.isConfigureEmailTemplate = true;\r\n vm.isEditModeEmailTemplate = false;\r\n\r\n vm.predefinedTextSelected = null;\r\n }\r\n getEmailTemplatesList() {// Created By G Get Email Template List\r\n let parms = {CmpCode:this.CmpCode};\r\n this._leaveService.getEmailTemplatesForSelect(parms).subscribe((res) => {\r\n this.emailTemplatesList = res[\"data\"];\r\n this.getDefaultTemplate();\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n getDefaultTemplate() {// Created By G Get Default template details\r\n if (this.emailTemplatesList.length > 0 && this.approvalSettingsData != null && this.approvalSettingsData != undefined) {\r\n this.emailTemplateId = this.emailTemplatesList[0].emailTemplateId;\r\n if (this.approvalSettingsData.approvalEmailTemplate != null &&\r\n this.approvalSettingsData.approvalEmailTemplate != undefined) {\r\n if (this.approvalSettingsData.approvalEmailTemplate.emailBody == null ||\r\n this.approvalSettingsData.approvalEmailTemplate.emailBody == \"\") {\r\n this.approvalSettingsData.approvalEmailTemplate.emailBody = this.emailTemplatesList[0].emailBody;\r\n this.emailTemplateBody = this.approvalSettingsData.approvalEmailTemplate.emailBody;\r\n }\r\n }\r\n }\r\n }\r\n setEmailToDDLs() {// Created By G Set Email to dropdown\r\n let vm = this;\r\n vm.To_SystemOptions = [];\r\n vm.To_Users = [];\r\n vm.To_Roles = [];\r\n vm.To_Departments = [];\r\n vm.To_Groups = [];\r\n vm.To_Locations = [];\r\n\r\n vm.To_SystemOptions_Selected = [];\r\n vm.To_Users_Selected = [];\r\n vm.To_Roles_Selected = [];\r\n vm.To_Departments_Selected = [];\r\n vm.To_Groups_Selected = [];\r\n vm.To_Locations_Selected = [];\r\n\r\n // System Options\r\n vm.To_SystemOptions.push({ id: 1, text: 'Department Head of Login User', isChecked: false });\r\n vm.To_SystemOptions.push({ id: 2, text: 'Team mailid of the person performing the action', isChecked: false });\r\n vm.To_SystemOptions.push({ id: 3, text: 'Reporting Manager of Employee Lookup', isChecked: false });\r\n vm.To_SystemOptions.push({ id: 4, text: 'Current Approver', isChecked: false });\r\n vm.To_SystemOptions.push({ id: 5, text: 'Reporting Manager of login user', isChecked: false });\r\n\r\n // Users\r\n for (let i = 0; i < this.ddlEmployeeList.length; i++) {\r\n let _item = this.ddlEmployeeList[i];\r\n vm.To_Users.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Roles\r\n for (let i = 0; i < this.ddlRoleList.length; i++) {\r\n let _item = this.ddlRoleList[i];\r\n vm.To_Roles.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Departments\r\n for (let i = 0; i < this.ddlDepartmentList.length; i++) {\r\n let _item = this.ddlDepartmentList[i];\r\n vm.To_Departments.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Groups\r\n for (let i = 0; i < this.ddlGroupList.length; i++) {\r\n let _item = this.ddlGroupList[i];\r\n vm.To_Groups.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Locations\r\n for (let i = 0; i < this.ddlLocationList.length; i++) {\r\n let _item = this.ddlLocationList[i];\r\n vm.To_Locations.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n\r\n // ------------ CC\r\n vm.CC_SystemOptions = [];\r\n vm.CC_Users = [];\r\n vm.CC_Roles = [];\r\n vm.CC_Departments = [];\r\n vm.CC_Groups = [];\r\n vm.CC_Locations = [];\r\n\r\n vm.CC_SystemOptions_Selected = [];\r\n vm.CC_Users_Selected = [];\r\n vm.CC_Roles_Selected = [];\r\n vm.CC_Departments_Selected = [];\r\n vm.CC_Groups_Selected = [];\r\n vm.CC_Locations_Selected = [];\r\n\r\n // ------------ BCC\r\n vm.BCC_SystemOptions = [];\r\n vm.BCC_Users = [];\r\n vm.BCC_Roles = [];\r\n vm.BCC_Departments = [];\r\n vm.BCC_Groups = [];\r\n vm.BCC_Locations = [];\r\n\r\n vm.BCC_SystemOptions_Selected = [];\r\n vm.BCC_Users_Selected = [];\r\n vm.BCC_Roles_Selected = [];\r\n vm.BCC_Departments_Selected = [];\r\n vm.BCC_Groups_Selected = [];\r\n vm.BCC_Locations_Selected = [];\r\n\r\n vm.setDefaultToDDL();\r\n\r\n for (let i = 0; i < vm.CC_SystemOptions.length; i++) {\r\n this.CC_SystemOptions[i].isChecked = false;\r\n }\r\n for (let i = 0; i < vm.BCC_SystemOptions.length; i++) {\r\n this.BCC_SystemOptions[i].isChecked = false;\r\n }\r\n }\r\n setDefaultToDDL() {// Created By G set default values\r\n for (let i = 0; i < this.To_SystemOptions.length; i++) {\r\n if (this.To_SystemOptions[i].id == 4) {\r\n this.To_SystemOptions[i].isChecked = true;\r\n }\r\n }\r\n this.onChangeEmailTo(null, 1);\r\n }\r\n clearToDDL() {// Created By G Clear To dropdown\r\n for (let i = 0; i < this.To_SystemOptions.length; i++) {\r\n this.To_SystemOptions[i].isChecked = false;\r\n }\r\n this.onChangeEmailTo(null, 1);\r\n }\r\n setEmailCCDDLs() {// Created By G Get CC Dropown list\r\n let vm = this;\r\n vm.CC_SystemOptions = [];\r\n vm.CC_Users = [];\r\n vm.CC_Roles = [];\r\n vm.CC_Departments = [];\r\n vm.CC_Groups = [];\r\n vm.CC_Locations = [];\r\n\r\n vm.CC_SystemOptions_Selected = [];\r\n vm.CC_Users_Selected = [];\r\n vm.CC_Roles_Selected = [];\r\n vm.CC_Departments_Selected = [];\r\n vm.CC_Groups_Selected = [];\r\n vm.CC_Locations_Selected = [];\r\n\r\n // System Options\r\n vm.CC_SystemOptions.push({ id: 1, text: 'Department Head of Login User', isChecked: false });\r\n vm.CC_SystemOptions.push({ id: 2, text: 'Team mailid of the person performing the action', isChecked: false });\r\n vm.CC_SystemOptions.push({ id: 3, text: 'Reporting Manager of Employee Lookup', isChecked: false });\r\n vm.CC_SystemOptions.push({ id: 4, text: 'Current Approver', isChecked: false });\r\n vm.CC_SystemOptions.push({ id: 5, text: 'Reporting Manager of login user', isChecked: false });\r\n\r\n // Users\r\n for (let i = 0; i < this.ddlEmployeeList.length; i++) {\r\n let _item = this.ddlEmployeeList[i];\r\n vm.CC_Users.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Roles\r\n for (let i = 0; i < this.ddlRoleList.length; i++) {\r\n let _item = this.ddlRoleList[i];\r\n vm.CC_Roles.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Departments\r\n for (let i = 0; i < this.ddlDepartmentList.length; i++) {\r\n let _item = this.ddlDepartmentList[i];\r\n vm.CC_Departments.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Groups\r\n for (let i = 0; i < this.ddlGroupList.length; i++) {\r\n let _item = this.ddlGroupList[i];\r\n vm.CC_Groups.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Locations\r\n for (let i = 0; i < this.ddlLocationList.length; i++) {\r\n let _item = this.ddlLocationList[i];\r\n vm.CC_Locations.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n }\r\n setEmailBCCDDLs() {// Created By G Set BCC Dropdown \r\n let vm = this;\r\n vm.BCC_SystemOptions = [];\r\n vm.BCC_Users = [];\r\n vm.BCC_Roles = [];\r\n vm.BCC_Departments = [];\r\n vm.BCC_Groups = [];\r\n vm.BCC_Locations = [];\r\n\r\n vm.BCC_SystemOptions_Selected = [];\r\n vm.BCC_Users_Selected = [];\r\n vm.BCC_Roles_Selected = [];\r\n vm.BCC_Departments_Selected = [];\r\n vm.BCC_Groups_Selected = [];\r\n vm.BCC_Locations_Selected = [];\r\n\r\n // System Options\r\n vm.BCC_SystemOptions.push({ id: 1, text: 'Department Head of Login User', isChecked: false });\r\n vm.BCC_SystemOptions.push({ id: 2, text: 'Team mailid of the person performing the action', isChecked: false });\r\n vm.BCC_SystemOptions.push({ id: 3, text: 'Reporting Manager of Employee Lookup', isChecked: false });\r\n vm.BCC_SystemOptions.push({ id: 4, text: 'Current Approver', isChecked: false });\r\n vm.BCC_SystemOptions.push({ id: 5, text: 'Reporting Manager of login user', isChecked: false });\r\n\r\n // Users\r\n for (let i = 0; i < this.ddlEmployeeList.length; i++) {\r\n let _item = this.ddlEmployeeList[i];\r\n vm.BCC_Users.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Roles\r\n for (let i = 0; i < this.ddlRoleList.length; i++) {\r\n let _item = this.ddlRoleList[i];\r\n vm.BCC_Roles.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Departments\r\n for (let i = 0; i < this.ddlDepartmentList.length; i++) {\r\n let _item = this.ddlDepartmentList[i];\r\n vm.BCC_Departments.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Groups\r\n for (let i = 0; i < this.ddlGroupList.length; i++) {\r\n let _item = this.ddlGroupList[i];\r\n vm.BCC_Groups.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n\r\n // Locations\r\n for (let i = 0; i < this.ddlLocationList.length; i++) {\r\n let _item = this.ddlLocationList[i];\r\n vm.BCC_Locations.push({ id: _item.id, text: _item.text, isChecked: false });\r\n }\r\n }\r\n\r\n // To\r\n openEmailToDDL() {// Created By G Set values\r\n let vm = this;\r\n vm.emailToDDLActive = true;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = false;\r\n }\r\n closeEmailToDDL() {// Created By G Set values\r\n let vm = this;\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = false;\r\n }\r\n onChangeEmailTo(e, _type) {// Created By G\r\n if (_type == 1) { // System Options\r\n this.To_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.To_SystemOptions.length; i++) {\r\n if (this.To_SystemOptions[i].isChecked) {\r\n this.To_SystemOptions_Selected.push(this.To_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.To_Users_Selected = [];\r\n for (let i = 0; i < this.To_Users.length; i++) {\r\n if (this.To_Users[i].isChecked) {\r\n this.To_Users_Selected.push(this.To_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.To_Roles_Selected = [];\r\n for (let i = 0; i < this.To_Roles.length; i++) {\r\n if (this.To_Roles[i].isChecked) {\r\n this.To_Roles_Selected.push(this.To_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.To_Departments_Selected = [];\r\n for (let i = 0; i < this.To_Departments.length; i++) {\r\n if (this.To_Departments[i].isChecked) {\r\n this.To_Departments_Selected.push(this.To_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.To_Groups_Selected = [];\r\n for (let i = 0; i < this.To_Groups.length; i++) {\r\n if (this.To_Groups[i].isChecked) {\r\n this.To_Groups_Selected.push(this.To_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Locations\r\n this.To_Locations_Selected = [];\r\n for (let i = 0; i < this.To_Locations.length; i++) {\r\n if (this.To_Locations[i].isChecked) {\r\n this.To_Locations_Selected.push(this.To_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n removeEmailTo(_type, item) {// Created By G On Remove email to\r\n if (this.viewMode) {\r\n return;\r\n }\r\n if (_type == 1) {\r\n this.To_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.To_SystemOptions.length; i++) {\r\n if (item.id == this.To_SystemOptions[i].id) {\r\n this.To_SystemOptions[i].isChecked = false;\r\n }\r\n\r\n if (this.To_SystemOptions[i].isChecked) {\r\n this.To_SystemOptions_Selected.push(this.To_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.To_Users_Selected = [];\r\n for (let i = 0; i < this.To_Users.length; i++) {\r\n if (item.id == this.To_Users[i].id) {\r\n this.To_Users[i].isChecked = false;\r\n }\r\n\r\n if (this.To_Users[i].isChecked) {\r\n this.To_Users_Selected.push(this.To_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.To_Roles_Selected = [];\r\n for (let i = 0; i < this.To_Roles.length; i++) {\r\n if (item.id == this.To_Roles[i].id) {\r\n this.To_Roles[i].isChecked = false;\r\n }\r\n\r\n if (this.To_Roles[i].isChecked) {\r\n this.To_Roles_Selected.push(this.To_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.To_Departments_Selected = [];\r\n for (let i = 0; i < this.To_Departments.length; i++) {\r\n if (item.id == this.To_Departments[i].id) {\r\n this.To_Departments[i].isChecked = false;\r\n }\r\n\r\n if (this.To_Departments[i].isChecked) {\r\n this.To_Departments_Selected.push(this.To_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.To_Groups_Selected = [];\r\n for (let i = 0; i < this.To_Groups.length; i++) {\r\n if (item.id == this.To_Groups[i].id) {\r\n this.To_Groups[i].isChecked = false;\r\n }\r\n\r\n if (this.To_Groups[i].isChecked) {\r\n this.To_Groups_Selected.push(this.To_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Groups\r\n this.To_Locations_Selected = [];\r\n for (let i = 0; i < this.To_Locations.length; i++) {\r\n if (item.id == this.To_Locations[i].id) {\r\n this.To_Locations[i].isChecked = false;\r\n }\r\n\r\n if (this.To_Locations[i].isChecked) {\r\n this.To_Locations_Selected.push(this.To_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n // CC--\r\n openEmailCCDDL() {// Created By G Set values\r\n let vm = this;\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = true;\r\n vm.emailBCCDDLActive = false;\r\n }\r\n closeEmailCCDDL() {// Created By G Set values\r\n let vm = this;\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = false;\r\n }\r\n onChangeEmailCC(e, _type) {// Created By G\r\n if (_type == 1) { // System Options\r\n this.CC_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.CC_SystemOptions.length; i++) {\r\n if (this.CC_SystemOptions[i].isChecked) {\r\n this.CC_SystemOptions_Selected.push(this.CC_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.CC_Users_Selected = [];\r\n for (let i = 0; i < this.CC_Users.length; i++) {\r\n if (this.CC_Users[i].isChecked) {\r\n this.CC_Users_Selected.push(this.CC_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.CC_Roles_Selected = [];\r\n for (let i = 0; i < this.CC_Roles.length; i++) {\r\n if (this.CC_Roles[i].isChecked) {\r\n this.CC_Roles_Selected.push(this.CC_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.CC_Departments_Selected = [];\r\n for (let i = 0; i < this.CC_Departments.length; i++) {\r\n if (this.CC_Departments[i].isChecked) {\r\n this.CC_Departments_Selected.push(this.CC_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.CC_Groups_Selected = [];\r\n for (let i = 0; i < this.CC_Groups.length; i++) {\r\n if (this.CC_Groups[i].isChecked) {\r\n this.CC_Groups_Selected.push(this.CC_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Locations\r\n this.CC_Locations_Selected = [];\r\n for (let i = 0; i < this.CC_Locations.length; i++) {\r\n if (this.CC_Locations[i].isChecked) {\r\n this.CC_Locations_Selected.push(this.CC_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n removeEmailCC(_type, item) {// Created By G\r\n if (this.viewMode) {\r\n return;\r\n }\r\n if (_type == 1) {\r\n this.CC_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.CC_SystemOptions.length; i++) {\r\n if (item.id == this.CC_SystemOptions[i].id) {\r\n this.CC_SystemOptions[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_SystemOptions[i].isChecked) {\r\n this.CC_SystemOptions_Selected.push(this.CC_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.CC_Users_Selected = [];\r\n for (let i = 0; i < this.CC_Users.length; i++) {\r\n if (item.id == this.CC_Users[i].id) {\r\n this.CC_Users[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_Users[i].isChecked) {\r\n this.CC_Users_Selected.push(this.CC_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.CC_Roles_Selected = [];\r\n for (let i = 0; i < this.CC_Roles.length; i++) {\r\n if (item.id == this.CC_Roles[i].id) {\r\n this.CC_Roles[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_Roles[i].isChecked) {\r\n this.CC_Roles_Selected.push(this.CC_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.CC_Departments_Selected = [];\r\n for (let i = 0; i < this.CC_Departments.length; i++) {\r\n if (item.id == this.CC_Departments[i].id) {\r\n this.CC_Departments[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_Departments[i].isChecked) {\r\n this.CC_Departments_Selected.push(this.CC_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.CC_Groups_Selected = [];\r\n for (let i = 0; i < this.CC_Groups.length; i++) {\r\n if (item.id == this.CC_Groups[i].id) {\r\n this.CC_Groups[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_Groups[i].isChecked) {\r\n this.CC_Groups_Selected.push(this.CC_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Groups\r\n this.CC_Locations_Selected = [];\r\n for (let i = 0; i < this.CC_Locations.length; i++) {\r\n if (item.id == this.CC_Locations[i].id) {\r\n this.CC_Locations[i].isChecked = false;\r\n }\r\n\r\n if (this.CC_Locations[i].isChecked) {\r\n this.CC_Locations_Selected.push(this.CC_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n // BCC\r\n openEmailBCCDDL() {// Created By G Set Values\r\n let vm = this;\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = true;\r\n }\r\n closeEmailBCCDDL() {// Created By G Set Values\r\n let vm = this;\r\n vm.emailToDDLActive = false;\r\n vm.emailCCDDLActive = false;\r\n vm.emailBCCDDLActive = false;\r\n }\r\n onChangeEmailBCC(e, _type) {// Created By G\r\n if (_type == 1) { // System Options\r\n this.BCC_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.BCC_SystemOptions.length; i++) {\r\n if (this.BCC_SystemOptions[i].isChecked) {\r\n this.BCC_SystemOptions_Selected.push(this.BCC_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.BCC_Users_Selected = [];\r\n for (let i = 0; i < this.BCC_Users.length; i++) {\r\n if (this.BCC_Users[i].isChecked) {\r\n this.BCC_Users_Selected.push(this.BCC_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.BCC_Roles_Selected = [];\r\n for (let i = 0; i < this.BCC_Roles.length; i++) {\r\n if (this.BCC_Roles[i].isChecked) {\r\n this.BCC_Roles_Selected.push(this.BCC_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.BCC_Departments_Selected = [];\r\n for (let i = 0; i < this.BCC_Departments.length; i++) {\r\n if (this.BCC_Departments[i].isChecked) {\r\n this.BCC_Departments_Selected.push(this.BCC_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.BCC_Groups_Selected = [];\r\n for (let i = 0; i < this.BCC_Groups.length; i++) {\r\n if (this.BCC_Groups[i].isChecked) {\r\n this.BCC_Groups_Selected.push(this.BCC_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Locations\r\n this.BCC_Locations_Selected = [];\r\n for (let i = 0; i < this.BCC_Locations.length; i++) {\r\n if (this.BCC_Locations[i].isChecked) {\r\n this.BCC_Locations_Selected.push(this.BCC_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n removeEmailBCC(_type, item) {// Created By G On Remove email BCC\r\n if (this.viewMode) {\r\n return;\r\n }\r\n if (_type == 1) {\r\n this.BCC_SystemOptions_Selected = [];\r\n for (let i = 0; i < this.BCC_SystemOptions.length; i++) {\r\n if (item.id == this.BCC_SystemOptions[i].id) {\r\n this.BCC_SystemOptions[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_SystemOptions[i].isChecked) {\r\n this.BCC_SystemOptions_Selected.push(this.BCC_SystemOptions[i]);\r\n }\r\n }\r\n } else if (_type == 2) { // Users\r\n this.BCC_Users_Selected = [];\r\n for (let i = 0; i < this.BCC_Users.length; i++) {\r\n if (item.id == this.BCC_Users[i].id) {\r\n this.BCC_Users[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_Users[i].isChecked) {\r\n this.BCC_Users_Selected.push(this.BCC_Users[i]);\r\n }\r\n }\r\n } else if (_type == 3) { // Roles\r\n this.BCC_Roles_Selected = [];\r\n for (let i = 0; i < this.BCC_Roles.length; i++) {\r\n if (item.id == this.BCC_Roles[i].id) {\r\n this.BCC_Roles[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_Roles[i].isChecked) {\r\n this.BCC_Roles_Selected.push(this.BCC_Roles[i]);\r\n }\r\n }\r\n } else if (_type == 4) { // Departments\r\n this.BCC_Departments_Selected = [];\r\n for (let i = 0; i < this.BCC_Departments.length; i++) {\r\n if (item.id == this.BCC_Departments[i].id) {\r\n this.BCC_Departments[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_Departments[i].isChecked) {\r\n this.BCC_Departments_Selected.push(this.BCC_Departments[i]);\r\n }\r\n }\r\n } else if (_type == 5) { // Groups\r\n this.BCC_Groups_Selected = [];\r\n for (let i = 0; i < this.BCC_Groups.length; i++) {\r\n if (item.id == this.BCC_Groups[i].id) {\r\n this.BCC_Groups[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_Groups[i].isChecked) {\r\n this.BCC_Groups_Selected.push(this.BCC_Groups[i]);\r\n }\r\n }\r\n } else if (_type == 6) { // Groups\r\n this.BCC_Locations_Selected = [];\r\n for (let i = 0; i < this.BCC_Locations.length; i++) {\r\n if (item.id == this.BCC_Locations[i].id) {\r\n this.BCC_Locations[i].isChecked = false;\r\n }\r\n\r\n if (this.BCC_Locations[i].isChecked) {\r\n this.BCC_Locations_Selected.push(this.BCC_Locations[i]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n onChangeEmailTemplate() {// Created By G On change email template\r\n if (this.emailTemplatesList.length > 0) {\r\n const item = this.emailTemplatesList.find(x => x.emailTemplateId == this.emailTemplateId);\r\n if (item !== undefined && item != null) {\r\n this.approvalSettingsData.approvalEmailTemplate.subject = item.subject;\r\n this.approvalSettingsData.approvalEmailTemplate.emailBody = item.emailBody;\r\n this.emailTemplateBody = item.emailBody;\r\n }\r\n }\r\n }\r\n editEmailTemplate() {// Created By G Set Value\r\n let vm = this;\r\n vm.isEditModeEmailTemplate = true;\r\n }\r\n setPredefinedTexts() {// Created By G Set Predefined texts\r\n let vm = this;\r\n vm.predefinedTextSelected = null;\r\n vm.emailTemplatesPredefinedTextList = [];\r\n vm.emailTemplatesPredefinedTextList.push({ value: \"${EmployeeName}\", text: 'Employee Name' });\r\n vm.emailTemplatesPredefinedTextList.push({ value: \"${EmployeeId}\", text: 'Employee Id' });\r\n vm.emailTemplatesPredefinedTextList.push({ value: \"${ApproverName}\", text: 'Approver Name' });\r\n vm.emailTemplatesPredefinedTextList.push({ value: \"${Duration}\", text: 'Duration' });\r\n }\r\n insertPredefinedParameter() {// Created By G Set values\r\n let _value = this.predefinedTextSelected;\r\n if (_value != null && _value != \"\") {\r\n let htmlText = \" \" + _value + \" \";\r\n let textEditor = document.getElementById('txtEditor');\r\n if (textEditor != null) {\r\n textEditor.focus();\r\n if (!document.execCommand(\"InsertInputText\", false, '')) {\r\n document.execCommand(\"InsertHTML\", false, htmlText);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any) {// Created By G\r\n try {\r\n // switch (placeHolder) {\r\n // case \"Department\":\r\n // this.ActiveDepartments = [];\r\n // this.ActiveDepartments.push(value);\r\n // this.filterDepartmentId = value.id;\r\n // break;\r\n // case \"Desigation\":\r\n // this.ActiveDesignations = [];\r\n // this.ActiveDesignations.push(value);\r\n // this.filterDesignationId = value.id;\r\n // break;\r\n // case \"Location\":\r\n // this.ActiveLocations = [];\r\n // this.ActiveLocations.push(value);\r\n // this.filterLocationId = value.id;\r\n // break;\r\n // }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeDropdownValue(value, _type) {// Created By G\r\n try {\r\n // switch (_type) {\r\n // case \"Department\":\r\n // this.ActiveDepartments = [];\r\n // this.filterDepartmentId = null;\r\n // break;\r\n // case \"Desigation\":\r\n // this.ActiveDesignations = [];\r\n // this.filterDesignationId = null;\r\n // break;\r\n // case \"Location\":\r\n // this.ActiveLocations = [];\r\n // this.filterLocationId = null;\r\n // break;\r\n // }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n bindAllDDLData() {// Created By G Bind all dropdown lists\r\n let vm = this;\r\n vm.getRoleList();\r\n vm.getDesigationList();\r\n vm.getDepartmentList();\r\n vm.getLocationList();\r\n vm.getEmployeeList();\r\n vm.getLeaveTypeList();\r\n vm.getJobBandList();\r\n vm.getEmployeeTypeList();\r\n vm.getGenderList();\r\n\r\n vm.getReportingToList();\r\n vm.getGroupList();\r\n\r\n vm.getEmailTemplatesList();\r\n vm.GetProject();\r\n }\r\n\r\n bindServiceList() {// Created By G Set Service list values\r\n this.serviceList = [];\r\n this.serviceList.push({ text: \"Leaves\", value: \"1\" });\r\n this.serviceList.push({ text: \"Compensatory Request\", value: \"2\" });\r\n this.serviceList.push({ text: \"Expense\", value: \"3\" });\r\n this.serviceList.push({ text: \"Advance Payment\", value: \"4\" });\r\n\r\n this.ddlServiceList = this._commonSer.SetDDlDropdown(this.serviceList, \"value\", \"text\");\r\n }\r\n\r\n getRoleList() {// Created By G Get Roles list\r\n this._leaveService.getRolesForSelect(this.CmpCode).subscribe((res) => {\r\n this.RoleList = res[\"data\"].table;\r\n this.ddlRoleList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"roleId\", \"name\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n GetProject() {// Created By G Get all projects\r\n this.Http.GetProject(0, this.CmpCode).then((res) => {\r\n this.projectList = res.data.table;\r\n this.ddlProjectList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"projectId\", \"name\");\r\n });\r\n }\r\n\r\n getDepartmentList() {// Created By G Get all departments\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getDesigationList() {// Created By G Get all designations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getLocationList() {// Created By G Get all locations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getJobBandList() {// Created By G Get Job Band List\r\n this._leaveService.getJobBandsForSelect().subscribe((res) => {\r\n this.JobBandList = res[\"data\"].table;\r\n this.ddlJobBandList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"jobBandId\", \"bandName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getEmployeeList() {// Created By G Get all Employees\r\n this._leaveService.getEmployeesListForSelect(this.currentUserId, this.CmpCode).subscribe((res) => {\r\n this.EmployeeList = res[\"data\"].table;\r\n this.ddlEmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"employeeId\", \"employeeCodeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n EmployeeListData: any = []\r\n ddlEmployeeListData: any = []\r\n GetEmployees() {// Created By G Get all employees list\r\n this.Http.GetEmployees(0, this.CmpCode).then((res) => {\r\n this.EmployeeListData = res.data.table;\r\n this.ddlEmployeeListData = this._commonSer.SetDDlDropdown(this.EmployeeListData, \"employeeId\", \"name\");\r\n })\r\n }\r\n\r\n getLeaveTypeList() {// Created By G get leave type lists\r\n this._leaveService.getAllLeaveTypeForSelect(this.CmpCode).subscribe((res) => {\r\n this.LeaveTypeList = res[\"data\"].table;\r\n this.ddlLeaveTypeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"leaveTypeId\", \"leaveTypeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getEmployeeTypeList() {// Created By G Set Employee type list\r\n this.EmployeeTypeList = [{ 'id': 1, 'text': 'Employee' }, { 'id': 2, 'text': 'Vendor' }, { 'id': 3, 'text': 'Contact Person' }, { 'id': 4, 'text': 'Sales Person' }];\r\n this.ddlEmployeeTypeList = this._commonSer.SetDDlDropdown(this.EmployeeTypeList, \"id\", \"text\");\r\n }\r\n\r\n getGenderList() {// Created By G Set Genders list\r\n this.GenderList = [{ 'id': 0, 'text': 'Male' }, { 'id': 1, 'text': 'Female' }];\r\n this.ddlGenderList = this._commonSer.SetDDlDropdown(this.GenderList, \"id\", \"text\");\r\n }\r\n\r\n getReportingToList() {// Created By G Set Reporting to list\r\n this.ReportingToList = [{ 'id': 1, 'text': 'Single Level' }, { 'id': 2, 'text': 'Two Levels' }, { 'id': 3, 'text': 'Three Levels' }, { 'id': 4, 'text': 'Four Levels' }, { 'id': 5, 'text': 'Five Levels' },\r\n { 'id': 6, 'text': 'Six Levels' }, { 'id': 7, 'text': 'Seven Levels' }, { 'id': 8, 'text': 'Eight Levels' }, { 'id': 9, 'text': 'Nine Levels' }, { 'id': 10, 'text': 'Ten Levels' }];\r\n this.ddlReportingToList = this._commonSer.SetDDlDropdown(this.ReportingToList, \"id\", \"text\");\r\n }\r\n\r\n getGroupList() {// Created By G Get groups list\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode: this.CmpCode\r\n };\r\n this._leaveService.getGroupListForSelect(parms).subscribe((res) => {\r\n this.GroupList = res[\"data\"].table;\r\n this.ddlGroupList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"groupId\", \"groupName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n \r\n saveApprovalSettings() {// Created By G Save approval Settings\r\n debugger\r\n let vm = this;\r\n vm.saveMessage = \"\";\r\n if (vm.isConfigureEmailTemplate == true) {\r\n // To\r\n if (vm.To_SystemOptions_Selected.length == 0 &&\r\n vm.To_Users_Selected.length == 0 &&\r\n vm.To_Roles_Selected.length == 0 &&\r\n vm.To_Departments_Selected.length == 0 &&\r\n vm.To_Groups_Selected.length == 0 &&\r\n vm.To_Locations_Selected.length == 0) {\r\n vm.saveMessage = \"Please select the Email To in message section\";\r\n return;\r\n } else {\r\n let toData = {\r\n SystemOptions: vm.To_SystemOptions_Selected,\r\n Users: vm.To_Users_Selected,\r\n Roles: vm.To_Roles_Selected,\r\n Departments: vm.To_Departments_Selected,\r\n Groups: vm.To_Groups_Selected,\r\n Locations: vm.To_Locations_Selected,\r\n };\r\n vm.approvalSettingsData.approvalEmailTemplate.to = JSON.stringify(toData);\r\n }\r\n\r\n // CC\r\n let ccData = {\r\n SystemOptions: vm.CC_SystemOptions_Selected,\r\n Users: vm.CC_Users_Selected,\r\n Roles: vm.CC_Roles_Selected,\r\n Departments: vm.CC_Departments_Selected,\r\n Groups: vm.CC_Groups_Selected,\r\n Locations: vm.CC_Locations_Selected,\r\n };\r\n vm.approvalSettingsData.approvalEmailTemplate.cC = JSON.stringify(ccData);\r\n\r\n // BCC\r\n let bccData = {\r\n SystemOptions: vm.BCC_SystemOptions_Selected,\r\n Users: vm.BCC_Users_Selected,\r\n Roles: vm.BCC_Roles_Selected,\r\n Departments: vm.BCC_Departments_Selected,\r\n Groups: vm.BCC_Groups_Selected,\r\n Locations: vm.BCC_Locations_Selected,\r\n };\r\n vm.approvalSettingsData.approvalEmailTemplate.bCC = JSON.stringify(bccData);\r\n vm.approvalSettingsData.CmpCode = this.CmpCode;\r\n }\r\n\r\n console.clear();\r\n console.log(vm.approvalSettingsData);\r\n\r\n if (true != true) {\r\n return;\r\n }\r\n\r\n vm._leaveService.saveApprovalSettings(vm.approvalSettingsData).subscribe((res) => {\r\n debugger\r\n if (res[\"success\"] === true) {\r\n vm.userLoader = false;\r\n vm.showSuccess = true;\r\n vm.showMessage = res[\"data\"];\r\n this.toaster.show(\"success\", vm.showMessage);\r\n //vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n vm._commonSer.CloseModalHandler(\"addApprovalpopup\");\r\n\r\n vm.resetForm();\r\n vm.getApprovalsList();\r\n } else {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = res[\"message\"];\r\n this.toaster.show(\"success\", vm.showMessage);\r\n //vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n }\r\n }, (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"warning\", vm.showMessage);\r\n\r\n // vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n\r\n \r\n editApprovalSettings(item) {// Created By G Initialize Edit Approval Settings\r\n let vm = this;\r\n vm.userLoader = true;\r\n vm._leaveService.getApprovalSettingsDetails(item.approvalId, this.CmpCode)\r\n .subscribe((resApprovalSettings) => {\r\n vm.userLoader = false;\r\n vm.editMode = true;\r\n vm.viewMode = false;\r\n \r\n vm.setApprovalFormData(resApprovalSettings, true, false);\r\n setTimeout(() => {\r\n vm.setApprovalFormData(resApprovalSettings, true, false);\r\n }, 500);\r\n \r\n \r\n }, (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n\r\n\r\n viewApprovalSettings(item) {// Created By G Initialize View Approval Settings\r\n let vm = this;\r\n vm.userLoader = true;\r\n vm._leaveService.getApprovalSettingsDetails(item.approvalId, this.CmpCode)\r\n .subscribe((resApprovalSettings) => {\r\n vm.userLoader = false;\r\n vm.editMode = false;\r\n vm.viewMode = true;\r\n vm.setApprovalFormData(resApprovalSettings, false, true);\r\n }, (error) => {\r\n vm.userLoader = false;\r\n vm.showSuccess = false;\r\n vm.showMessage = \"Uh oh, Something went wrong !\";\r\n vm._commonSer.OpenModalHandler(\"userMessageModel\");\r\n });\r\n }\r\n\r\n\r\n setApprovalFormData(resApprovalSettings, isEdit, isView) {// Created By G Set Form Data from DB\r\n this.isEditable = true\r\n debugger;\r\n let data = resApprovalSettings.data;\r\n this.resetForm();\r\n\r\n this.editMode = isEdit;\r\n this.viewMode = isView;\r\n\r\n this.approvalSettingsData.approvalId = data[\"approvalId\"];\r\n this.approvalSettingsData.serviceId = data[\"serviceId\"];\r\n this.approvalSettingsData.settingName = data[\"settingName\"];\r\n this.approvalSettingsData.settingDescription = data[\"settingDescription\"];\r\n this.approvalSettingsData.approvalType = data[\"approvalType\"];\r\n this.approvalSettingsData.enableFollowUp = data[\"enableFollowUp\"];\r\n this.approvalSettingsData.followUpType = data[\"followUpType\"];\r\n this.approvalSettingsData.followUpAfterDays = data[\"followUpAfterDays\"];\r\n this.approvalSettingsData.followUpTime = data[\"followUpTime\"];\r\n\r\n // Criteria\r\n let criteriaList = data[\"criteriaList\"];\r\n if (criteriaList.length > 0) {\r\n this.isSetCriteriaForm = true;\r\n this.criteriaTypeActiveDropdownsList = [];\r\n\r\n for (let i = 0; i < criteriaList.length; i++) {\r\n let item = criteriaList[i];\r\n debugger\r\n let newCriteria = {\r\n condition: item.condition,\r\n criteriaType: item.criteriaType,\r\n criteriaTypeText: \"\",\r\n whereCondition: item.whereCondition,\r\n criteriaSubType: item.criteriaSubType,\r\n criteriaSubTypeText: \"\",\r\n value: item.value,\r\n ddlList: [],\r\n };\r\n\r\n this.approvalSettingsData.criteriaList.push(newCriteria);\r\n this.criteriaTypeActiveDropdownsList.push(false);\r\n\r\n this.setSelectedCriteriaType(item.criteriaSubType, i);\r\n this.approvalSettingsData.criteriaList[i].value = item.value;\r\n }\r\n }\r\n\r\n // Approval\r\n let approvalList = data[\"approvalList\"];\r\n if (approvalList.length > 0) {\r\n this.isSetApprovalForm = true;\r\n\r\n for (let i = 0; i x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_SystemOptions[_index].isChecked = true;\r\n }\r\n }\r\n // Users\r\n for (let i = 0; i < emailTo.Users.length; i++) {\r\n let tempItem = emailTo.Users[i];\r\n const _index = this.To_Users.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_Users[_index].isChecked = true;\r\n }\r\n }\r\n // Roles\r\n for (let i = 0; i < emailTo.Roles.length; i++) {\r\n let tempItem = emailTo.Roles[i];\r\n const _index = this.To_Roles.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_Roles[_index].isChecked = true;\r\n }\r\n }\r\n // Departments\r\n for (let i = 0; i < emailTo.Departments.length; i++) {\r\n let tempItem = emailTo.Departments[i];\r\n const _index = this.To_Departments.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_Departments[_index].isChecked = true;\r\n }\r\n }\r\n // Groups\r\n for (let i = 0; i < emailTo.Groups.length; i++) {\r\n let tempItem = emailTo.Groups[i];\r\n const _index = this.To_Groups.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_Groups[_index].isChecked = true;\r\n }\r\n }\r\n // Locations\r\n for (let i = 0; i < emailTo.Locations.length; i++) {\r\n let tempItem = emailTo.Locations[i];\r\n const _index = this.To_Locations.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.To_Locations[_index].isChecked = true;\r\n }\r\n }\r\n\r\n this.onChangeEmailTo(null, 1);\r\n this.onChangeEmailTo(null, 2);\r\n this.onChangeEmailTo(null, 3);\r\n this.onChangeEmailTo(null, 4);\r\n this.onChangeEmailTo(null, 5);\r\n this.onChangeEmailTo(null, 6);\r\n }\r\n //Email CC\r\n if (approvalEmailTemplate.cc != null && approvalEmailTemplate.cc != undefined) {\r\n let emailCC = JSON.parse(approvalEmailTemplate.cc);\r\n\r\n // System Options\r\n for (let i = 0; i < emailCC.SystemOptions.length; i++) {\r\n let tempItem = emailCC.SystemOptions[i];\r\n const _index = this.CC_SystemOptions.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_SystemOptions[_index].isChecked = true;\r\n }\r\n }\r\n // Users\r\n for (let i = 0; i < emailCC.Users.length; i++) {\r\n let tempItem = emailCC.Users[i];\r\n const _index = this.CC_Users.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_Users[_index].isChecked = true;\r\n }\r\n }\r\n // Roles\r\n for (let i = 0; i < emailCC.Roles.length; i++) {\r\n let tempItem = emailCC.Roles[i];\r\n const _index = this.CC_Roles.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_Roles[_index].isChecked = true;\r\n }\r\n }\r\n // Departments\r\n for (let i = 0; i < emailCC.Departments.length; i++) {\r\n let tempItem = emailCC.Departments[i];\r\n const _index = this.CC_Departments.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_Departments[_index].isChecked = true;\r\n }\r\n }\r\n // Groups\r\n for (let i = 0; i < emailCC.Groups.length; i++) {\r\n let tempItem = emailCC.Groups[i];\r\n const _index = this.CC_Groups.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_Groups[_index].isChecked = true;\r\n }\r\n }\r\n // Locations\r\n for (let i = 0; i < emailCC.Locations.length; i++) {\r\n let tempItem = emailCC.Locations[i];\r\n const _index = this.CC_Locations.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.CC_Locations[_index].isChecked = true;\r\n }\r\n }\r\n\r\n this.onChangeEmailCC(null, 1);\r\n this.onChangeEmailCC(null, 2);\r\n this.onChangeEmailCC(null, 3);\r\n this.onChangeEmailCC(null, 4);\r\n this.onChangeEmailCC(null, 5);\r\n this.onChangeEmailCC(null, 6);\r\n }\r\n\r\n //Email BCC\r\n if (approvalEmailTemplate.bcc != null && approvalEmailTemplate.bcc != undefined) {\r\n let emailBCC = JSON.parse(approvalEmailTemplate.bcc);\r\n\r\n // System Options\r\n for (let i = 0; i < emailBCC.SystemOptions.length; i++) {\r\n let tempItem = emailBCC.SystemOptions[i];\r\n const _index = this.BCC_SystemOptions.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_SystemOptions[_index].isChecked = true;\r\n }\r\n }\r\n // Users\r\n for (let i = 0; i < emailBCC.Users.length; i++) {\r\n let tempItem = emailBCC.Users[i];\r\n const _index = this.BCC_Users.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_Users[_index].isChecked = true;\r\n }\r\n }\r\n // Roles\r\n for (let i = 0; i < emailBCC.Roles.length; i++) {\r\n let tempItem = emailBCC.Roles[i];\r\n const _index = this.BCC_Roles.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_Roles[_index].isChecked = true;\r\n }\r\n }\r\n // Departments\r\n for (let i = 0; i < emailBCC.Departments.length; i++) {\r\n let tempItem = emailBCC.Departments[i];\r\n const _index = this.BCC_Departments.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_Departments[_index].isChecked = true;\r\n }\r\n }\r\n // Groups\r\n for (let i = 0; i < emailBCC.Groups.length; i++) {\r\n let tempItem = emailBCC.Groups[i];\r\n const _index = this.BCC_Groups.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_Groups[_index].isChecked = true;\r\n }\r\n }\r\n // Locations\r\n for (let i = 0; i < emailBCC.Locations.length; i++) {\r\n let tempItem = emailBCC.Locations[i];\r\n const _index = this.BCC_Locations.findIndex(x => x.id == tempItem.id);\r\n if (_index !== undefined && _index != null && _index >= 0) {\r\n this.BCC_Locations[_index].isChecked = true;\r\n }\r\n }\r\n\r\n this.onChangeEmailBCC(null, 1);\r\n this.onChangeEmailBCC(null, 2);\r\n this.onChangeEmailBCC(null, 3);\r\n this.onChangeEmailBCC(null, 4);\r\n this.onChangeEmailBCC(null, 5);\r\n this.onChangeEmailBCC(null, 6);\r\n }\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n

    Customize Leave Balance

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n    \r\n
    \r\n \r\n
      \r\n
    • \r\n Excel\r\n
    • \r\n
    • \r\n Print\r\n
    • \r\n
    • \r\n CSV\r\n
    • \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    0\">\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, ViewChildren,ViewChild, QueryList } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { LeaveService } from '../../leave.service';\r\nimport { CommonService } from 'src/app/common.service';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { environment } from 'src/app/environment';\r\nimport { GridComponent ,Column, ExcelExportProperties} from '@syncfusion/ej2-angular-grids';\r\nimport { ColumnModel, ResizeService,QueryCellInfoEventArgs } from '@syncfusion/ej2-angular-grids';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-customize-leave-balance',\r\n templateUrl: './customize-leave-balance.component.html',\r\n styleUrls: ['./customize-leave-balance.component.css']\r\n})\r\nexport class CustomizeLeaveBalanceComponent implements OnInit {\r\n datePickerConfiq: Partial;\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n globalindex: number;\r\n \r\n\r\n load() {\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n \r\n userLoader: boolean;\r\n currentUserId: any;\r\n\r\n getLeaveAllBalanceData: any;\r\n\r\n paidListCount: any;\r\n unpaidListCount: any;\r\n onDutyListCount: any;\r\n\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n\r\n CustomizePermission: boolean;\r\n\r\n flterShowData = false;\r\n\r\n filterDate: Date;\r\n filterType: number;\r\n\r\n // For Dropdownlist\r\n filterEmployeeId: any;\r\n EmployeeList: any[];\r\n ddlEmployeeList: any[];\r\n ActiveEmployees = [];\r\n\r\n filterLeaveTypeId: any;\r\n LeaveTypesList: any[];\r\n ddlLeaveTypeList: any[];\r\n ActiveLeaveTypes = [];\r\n\r\n filterDepartmentId: any;\r\n DepartmentList: any[];\r\n ddlDepartmentList: any[];\r\n ActiveDepartments = [];\r\n\r\n filterDesignationId: any;\r\n DesignationList: any[];\r\n ddlDesignationList: any[];\r\n ActiveDesignations = [];\r\n\r\n filterLocationId: any;\r\n LocationList: any[];\r\n ddlLocationList: any[];\r\n ActiveLocations = [];\r\n ViewPermission:any\r\n filterUserStatus: number = null;\r\n CmpCode:any;\r\n AddPermission:any\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n LocalDataPermission:any\r\n DeletePermission:any\r\n EditPermission:any\r\n constructor(\r\n private _authSer: AuthService,\r\n private _leaveSer: LeaveService,\r\n private _commonSer: CommonService,\r\n private _fb: FormBuilder,\r\n private _depratmentSer: DepartmentService,\r\n private _desigation: DesignationService,\r\n private _locationSer: LocationService,\r\n \r\n ) { \r\n this.CmpCode = this._authSer.getcompanyCode();\r\n\r\n this._authSer.IsPermissions('Customize Leave Balance');\r\n this.LocalDataPermission = this._authSer.LocalDataPermission;\r\n if (this.LocalDataPermission === '' || this.LocalDataPermission === null || this.LocalDataPermission === undefined) {\r\n this.LocalDataPermission[0].addPermission = 0;\r\n this.LocalDataPermission[0].editPermission = 0;\r\n this.LocalDataPermission[0].viewpermission = 0;\r\n this.LocalDataPermission[0].deletePermission = 0;\r\n }\r\n this.ViewPermission = this.LocalDataPermission[0].viewpermission //this.CurrentUser.permission.includes(Permission.ProjectPhaseView);\r\n this.AddPermission = this.LocalDataPermission[0].addPermission; //this.CurrentUser.permission.includes(Permission.ProjectPhaseAdd);\r\n this.EditPermission = this.LocalDataPermission[0].editPermission //this.CurrentUser.permission.includes(Permission.ProjectPhaseEdit);\r\n this.DeletePermission = this.LocalDataPermission[0].deletePermission; //this.CurrentUser.permission.includes(Permission.ProjectPhaseDelete);\r\n // this.ArchivePermission = this.LocalDataPermission[0].addPermission; //this.CurrentUser.permission.includes(Permission.ProjectArchive); \r\n }\r\n filterSettings:object\r\n filter:object\r\n ngOnInit() {// Angular lifecycle hook\r\n this.filterSettings = { type: \"CheckBox\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.getLeaveAllBalanceData = [];\r\n this.paidListCount = 0;\r\n this.unpaidListCount = 0;\r\n this.onDutyListCount = 0;\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n // this.CustomizePermission = res.permission.includes(Permission.CustomizeLeaveBal);\r\n });\r\n\r\n let currentDate = new Date();\r\n this.filterDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate());\r\n\r\n this.filterType = -1;\r\n\r\n this.getAllLeaveBalance();\r\n \r\n }\r\n\r\n columnArray:any=[]\r\n employeeName:any\r\n ejsGridData:any=[]\r\n newArray:any=[]\r\n public columns: ColumnModel[];\r\n columnArrayfor:any=[]\r\n unPaidArray:any=[]\r\n paidArray:any=[]\r\n newTotalArray:any=[]\r\n paidUnpaidLeave:any=[]\r\n paidLeave:any=[]\r\n onDutyList:any=[]\r\n newDutyList:any=[]\r\n \r\n\r\n getAllLeaveBalance() {// Created By A Getting all leave balance list \r\n this.userLoader = true;\r\n let parms = {\r\n StartDate: this.getCSharpFormattedDate(this.filterDate),\r\n FilterLeaveType: this.filterLeaveTypeId !== undefined ? this.filterLeaveTypeId : null,\r\n FilterEmployee: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartment: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterDesignation: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterLocation: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterUserStatus: this.filterUserStatus !== undefined ? this.filterUserStatus : null,\r\n CmpCode:this.CmpCode,\r\n };\r\n\r\n this._leaveSer.getAllLeaveBalance(parms).subscribe(res => {\r\n this.userLoader = false;\r\n debugger\r\n // empCode: \"\"\r\n // employeeId: 20580\r\n // employeeName: \"Lovish Kalra \"\r\n // inActive: false\r\n // isdeleted: false\r\n // userId: 20580\r\n this.employeeName='Employee Name'\r\n this.getLeaveAllBalanceData = res['data'];\r\n this.myRequestsListLength = this.getLeaveAllBalanceData.length;\r\n this.columnArray.push(this.employeeName)\r\n this.paidArray=this.getLeaveAllBalanceData[0].paidLeavesList\r\n this.unPaidArray=this.getLeaveAllBalanceData[0].unpaidLeavesList\r\n this.paidListCount = this.getLeaveAllBalanceData[0].paidLeavesList.length;\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n this.onDutyListCount = this.getLeaveAllBalanceData[0].onDutyLeavesList.length;\r\n this.onDutyList=this.getLeaveAllBalanceData[0].onDutyLeavesList\r\n this.newDutyList=this.onDutyList.concat(this.unPaidArray)\r\n this.newTotalArray=this.paidArray.concat(this.newDutyList)\r\n var totalCount= this.paidListCount+this.unpaidListCount\r\n for(var i=0;i< this.newTotalArray.length;i++)\r\n {\r\n this.columnArray.push(this.newTotalArray[i].leaveTypeName)\r\n }\r\n \r\n // for(var i=0;i< this.getLeaveAllBalanceData[0].paidLeavesList.length;i++)\r\n // {\r\n // this.columnArray.push(this.getLeaveAllBalanceData[0].paidLeavesList[i].leaveTypeName)\r\n // }\r\n this.unpaidListCount = this.getLeaveAllBalanceData[0].unpaidLeavesList.length;\r\n\r\n let arra = []\r\n for(var i=0;i< this.getLeaveAllBalanceData.length;i++)\r\n {\r\n for(var j=0;j0 && j<=this.paidListCount){\r\n var data=this.getLeaveAllBalanceData[i].paidLeavesList[j-1].balance\r\n // var user=this.getLeaveAllBalanceData[i].userId\r\n }\r\n else if(j>this.paidListCount&&j<=totalCount) {\r\n var count=this.paidListCount+1\r\n var data=this.getLeaveAllBalanceData[i].unpaidLeavesList[j-count].balance\r\n \r\n \r\n \r\n \r\n }\r\n else{\r\n var count=totalCount+1\r\n var data=this.getLeaveAllBalanceData[i].onDutyLeavesList[j-count].balance\r\n // var user=this.getLeaveAllBalanceData[i].userId\r\n }\r\n \r\n this.ejsGridData.push({[key]:data})\r\n arra.push(this.getLeaveAllBalanceData[i].userId)\r\n }\r\n }\r\n \r\n\r\n // for(var j=0;j {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n \r\n\r\n\r\n\r\n export(): void {// Created By K Export Records as Excel\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'leave.xlsx'\r\n };\r\n // this.UpdateForExport();\r\n //this.getLocationList();\r\n this.Grid.excelExport(excelExportProperties);\r\n }\r\n\r\n printList(printData) {// Created By G Print Current View\r\n debugger\r\n let printContents = document.getElementById(printData).innerHTML;\r\n let originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n location.reload();\r\n }\r\n\r\n exportTableToCSV() {// Created By K Export Records to CSV\r\n debugger\r\n const excelExportProperties: ExcelExportProperties = {\r\n fileName: 'leave.csv'\r\n };\r\n this.Grid.csvExport(excelExportProperties);\r\n\r\n}\r\n collect(...a) {// Created By S\r\n var ret = {};\r\n var len = arguments.length;\r\n for (var i = 0; i < len; i++) {\r\n for (var p in arguments[i]) {\r\n if (arguments[i].hasOwnProperty(p)) {\r\n ret[p] = arguments[i][p];\r\n }\r\n }\r\n \r\n }\r\n return ret;\r\n }\r\n get countries() {\r\n return this.getLeaveAllBalanceData.map((country, i) => ({\r\n id: i + 1,\r\n ...country,\r\n })).slice(\r\n (this.myRequestsPage - 1) * this.myRequestsPageSize,\r\n (this.myRequestsPage - 1) * this.myRequestsPageSize + this.myRequestsPageSize\r\n );\r\n }\r\n recieptIMg:any\r\n colCell:any=0\r\n customiseCell(args: QueryCellInfoEventArgs) {// Created By S grid cells customization\r\n debugger\r\n var col=args.column.field\r\n var clName=col.split('.')\r\n // args.column.field=clName[1]\r\n const column = this.Grid.getColumnByField(args.column.field); // get the JSON object of the column corresponding to the field name\r\n column.headerText = clName[1]; // assign a new header text to the column\r\n\r\n // if (args.data[this.columnArray.length-2]['inActive']=='InActive'||args.data['inActive']==0) { \r\n // args.cell.classList.add('background-yellow');\r\n // //args.cell.classList.add('below-30'); \r\n\r\n // }\r\n \r\n \r\n if (args.column.field == \"0.Employee Name\") {\r\n // debugger\r\n args.cell.classList.add('below-0');\r\n for (var i = 0; i < this.getLeaveAllBalanceData.length; i++) {\r\n if (args.data[this.columnArray.length][\"userId\"] == this.getLeaveAllBalanceData[i].userId) {\r\n // debugger;\r\n // for(var k=0;k' + ' ' + args.data[0][\"Employee Name\"]\r\n // args.cell.innerHTML = \" '+' '+args.data[0][\"Employee Name\"]\r\n }\r\n\r\n }\r\n\r\n\r\n // this.colCell=this.colCell+1\r\n\r\n\r\n }\r\n debugger\r\n let num = this.Grid.getColumns(true);\r\n (this.Grid.columns[num.length-1] as Column).visible = false;\r\n this.Grid.refreshHeader(); \r\n \r\n}\r\n\r\n\r\n getCSharpFormattedDate(val: any) {// Created By A Get backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n filterShow() {// Created By A Initialize filters\r\n this.getLeaveTypeList();\r\n this.getEmployeeList();\r\n this.getDepartmentList();\r\n this.getAllDesigationList();\r\n this.getAllLocationList();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {// Created By A ste value\r\n this.flterShowData = false;\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any) {// Created By A Global Controller For fields update\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployees = [];\r\n this.ActiveEmployees.push(value);\r\n this.filterEmployeeId = value.id;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.ActiveLeaveTypes.push(value);\r\n this.filterLeaveTypeId = value.id;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.ActiveDepartments.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.ActiveDesignations.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.ActiveLocations.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n removeFilterDropdownValue(value, _type) {// Created By A Global Controller for fields update\r\n try {\r\n switch (_type) {\r\n case \"Employee\":\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n break;\r\n case 'LeaveType':\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n getEmployeeList() {// Created By A Getting all employees list\r\n this._leaveSer.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.EmployeeList = res['data'].table;\r\n this.ddlEmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getLeaveTypeList() {// Created By A Getting leave type list\r\n this._leaveSer.getAllLeaveTypeForSelect(this.CmpCode).subscribe((res) => {\r\n this.LeaveTypesList = res[\"data\"].table;\r\n this.ddlLeaveTypeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"leaveTypeId\", \"leaveTypeName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getDepartmentList() {// Created By A Getting all departments\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n this.DepartmentList = res[\"data\"].table;\r\n this.ddlDepartmentList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"departmentId\", \"departmentName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllDesigationList() {// Created By A Getting all designation\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n this.DesignationList = res[\"data\"].table;\r\n this.ddlDesignationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"designationId\", \"designationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n getAllLocationList() {// Created By A Getting all locations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n this.LocationList = res[\"data\"].table;\r\n this.ddlLocationList = this._commonSer.SetDDlDropdown(res[\"data\"].table, \"locationId\", \"locationName\");\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n processFilters() {// Created By A Get leave balance list for filters\r\n this.flterShowData = false;\r\n this.getAllLeaveBalance();\r\n }\r\n\r\n resetFilters() {// Created By A Reset Filters\r\n this.ActiveEmployees = [];\r\n this.filterEmployeeId = null;\r\n this.ActiveLeaveTypes = [];\r\n this.filterLeaveTypeId = null;\r\n this.ActiveDepartments = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesignations = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocations = [];\r\n this.filterLocationId = null;\r\n\r\n let currentDate = new Date();\r\n this.filterDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate());\r\n this.filterType = -1;\r\n }\r\n\r\n onChangeFilterType(e) {// Created By A \r\n // console.clear();\r\n // console.log(e);\r\n // console.log(this.filterType);\r\n }\r\n\r\n\r\n closeDropdownList(element) {// Created By A Close Opened Dropdowns when clicking on new dropdown\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n\r\n onDPDateChange(e) {// Created By A Set value\r\n this.filterDate = e;\r\n }\r\n \r\n \r\n userImage(item) {// Created By S Convert Users Image URL into standard format\r\n // \r\n if (item.userImage == '' || item.userImage == undefined || item.userImage == null) {\r\n // this.recieptIMg = `${environment.siteUrl}` + \"Uploads/Icon/UploadIcons.png\";\r\n if (item.genders == \"Female\") {\r\n this.recieptIMg = \"/assets/img/Logo/female.png\"\r\n\r\n }\r\n else {\r\n this.recieptIMg = \"/assets/img/Logo/male.png\"\r\n\r\n }\r\n }\r\n else {\r\n this.recieptIMg = `${environment.siteUrl}` + item.userImage;\r\n }\r\n return this.recieptIMg\r\n\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n

    Customize Leave Balance

    \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Leave TypeDateExisting BalanceNew BalanceReason
    \r\n \r\n \r\n \r\n \r\n {{ getLeaveBalcanceByEmplyeList[i].leaveTypeName }}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    {{ getLeaveBalcanceByEmplyeList[i].balance }}\r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { LeaveService } from '../../../leave.service';\r\nimport { CommonService } from 'src/app/common.service';\r\nimport { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';\r\nimport { ToasterService } from \"src/app/+layout/expense/toaster/toaster.service\";\r\n\r\n@Component({\r\n selector: 'app-update-leave-balance',\r\n templateUrl: './update-leave-balance.component.html',\r\n styleUrls: ['./update-leave-balance.component.css']\r\n})\r\nexport class UpdateLeaveBalanceComponent implements OnInit {\r\n currentUserId: any;\r\n bsValue = new Date();\r\n ddlEmployeeUserId: any;\r\n getLeaveBalcanceByEmplyeList: any;\r\n public LeaveTypeList: FormArray;\r\n EmployeeList = [];\r\n ActiveEmployee = [];\r\n todatlEmployeeList: any;\r\n employeName: any;\r\n employeCode: any;\r\n userLoader: boolean;\r\n updateLeaveBalanceForm: FormGroup;\r\n showSuccess: boolean;\r\n showMessage: any;\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n getFormDataBalnce = [];\r\n showLeaveTypeName: any;\r\n CmpCode:any;\r\n leaveNewList: any;\r\n constructor(\r\n private _authSer: AuthService,\r\n private _leaveSer: LeaveService,\r\n private _commonSer: CommonService,\r\n private _fb: FormBuilder,\r\n private toasterService:ToasterService\r\n ) { this.CmpCode = this._authSer.getcompanyCode();}\r\n\r\n ngOnInit() {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUserId = res.userId;\r\n // this.applyLeaveSelectedUserId = res.userId;\r\n \r\n this.ddlEmployeeUserId = res.userId;\r\n });\r\n\r\n this.updateLeaveBalanceForm = this._fb.group({\r\n EmployeeId: [],\r\n LeaveTypeList: new FormArray([]),\r\n CmpCode:this.CmpCode\r\n\r\n // LeaveTypeList:this._fb.group({\r\n // LeaveTypeId:[],\r\n // ExistingBalance:[],\r\n // NewBalance:[],\r\n // Reason:[],\r\n // Date:[]\r\n // })\r\n });\r\n\r\n this.getEmployeesListForSelect();\r\n\r\n setTimeout(() => {\r\n this.GetLeaveBalanceByEmployee();\r\n this.GetBalanceByForFOrmPop();\r\n }, 300);\r\n }\r\n\r\n addLeaveBalanceFormFun(): FormGroup {\r\n return this._fb.group({\r\n LeaveTypeId: [],\r\n ExistingBalance: [],\r\n NewBalance: [],\r\n Reason: [''],\r\n Date: [new Date()]\r\n });\r\n }\r\n\r\n addAddress(): void {\r\n this.LeaveTypeList = this.updateLeaveBalanceForm.get('LeaveTypeList') as FormArray;\r\n this.LeaveTypeList.push(this.addLeaveBalanceFormFun());\r\n }\r\n\r\n getEmployeesListForSelect () {\r\n this.userLoader = true;\r\n this._leaveSer.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n \r\n this.todatlEmployeeList = res['data'].table;\r\n if (res['data'].table != null && res['data'].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n // For Dashboard Emplyee Select List\r\n this.EmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n const selectedEmp = this.todatlEmployeeList.find(x => x.userId === this.currentUserId);\r\n if (selectedEmp !== undefined) {\r\n const empValue = { 'id': selectedEmp.employeeId, 'text': selectedEmp.employeeCodeName };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee');\r\n this.GetLeaveBalanceByEmployee();\r\n this.GetBalanceByForFOrmPop();\r\n }, 300);\r\n }\r\n });\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any, type?) {\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n this.ddlEmployeeUserId = value.id;\r\n // console.log(this.ActiveEmployee)\r\n\r\n // this.bindAllDashboardData();\r\n if(type != undefined){\r\n if(type == 'manualy'){\r\n this.GetLeaveBalanceByEmployee();\r\n }\r\n }\r\n \r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n\r\n GetLeaveBalanceByEmployee() {\r\n this.userLoader = true;\r\n let currentUserId = this.ddlEmployeeUserId; //this.currentUserId;\r\n\r\n let parms = {CmpCode:this.CmpCode};\r\n this._leaveSer.GetLeaveBalanceByEmployee(currentUserId, parms,this.CmpCode).subscribe(res => {\r\n this.userLoader = false;\r\n debugger;\r\n this.getLeaveBalcanceByEmplyeList = res['data'];\r\n\r\n this.myRequestsListLength = res['data'].length;\r\n this.updateLeaveBalanceForm.patchValue({\r\n EmployeeId: this.ddlEmployeeUserId,\r\n });\r\n\r\n setTimeout(() => {\r\n console.clear();\r\n console.log('s');\r\n this.getLeaveBalcanceByEmplyeList.filter((res, i) => {\r\n this.showLeaveTypeName = res.leaveTypeName;\r\n console.log(\"mydata\",this.updateLeaveBalanceForm);\r\n var date= new Date().toISOString().split('T')[0];\r\n this.updateLeaveBalanceForm['controls']['LeaveTypeList']['controls'][i]['controls'].LeaveTypeId.patchValue(res.leaveTypeId);\r\n this.updateLeaveBalanceForm['controls']['LeaveTypeList']['controls'][i]['controls'].ExistingBalance.patchValue(res.balance);\r\n //this.updateLeaveBalanceForm['controls']['LeaveTypeList']['controls'][i]['controls'].Date.patchValue(new Date());\r\n this.updateLeaveBalanceForm['controls']['LeaveTypeList']['controls'][i]['controls'].Date.patchValue(new Date());\r\n\r\n });\r\n console.log('e');\r\n }, 300);\r\n });\r\n }\r\n\r\n GetBalanceByForFOrmPop() {\r\n debugger\r\n this.userLoader = true;\r\n let currentUserId = this.ddlEmployeeUserId;\r\n let _currentFinancialYearId = 1;\r\nlet cmpcode=this.CmpCode\r\n let parms = {CmpCode:this.CmpCode};\r\n this._leaveSer.GetLeaveBalanceByEmployee(currentUserId, parms,cmpcode).subscribe(res => {\r\n this.userLoader = false;\r\n this.myRequestsListLength = res['data'].length;\r\n this.getLeaveBalcanceByEmplyeList.forEach(text => {\r\n const control = new FormControl(this.updateLeaveBalanceForm.value);\r\n (this.updateLeaveBalanceForm.get(\"LeaveTypeList\")).push(this.addLeaveBalanceFormFun());\r\n });\r\n });\r\n }\r\n\r\n get addressControls() {\r\n return this.updateLeaveBalanceForm.get('LeaveTypeList')['controls'];\r\n }\r\nleave:any=[]\r\nleavetype:any=[]\r\n updateLeaveBalance() {\r\n debugger;\r\n console.clear();\r\n //console.log(this.updateLeaveBalanceForm);\r\n console.log(this.updateLeaveBalanceForm.value);\r\n this.userLoader = true;\r\n this.leave=[]\r\n this.leave= this.updateLeaveBalanceForm.controls.LeaveTypeList\r\n\r\n for(var i=0;i {\r\n this.userLoader = false;\r\n debugger;\r\n if (res['success'] === true) {\r\n this.userLoader = false;\r\n this.showSuccess = true;\r\n this.showMessage = res['data'];\r\n this.updateLeaveBalanceForm.reset();\r\n this.GetLeaveBalanceByEmployee();\r\n this.toasterService.show('success',this.showMessage)\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = res['message'];\r\n this.toasterService.show('success',this.showMessage)\r\n\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n }, (error) => {\r\n debugger;\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toasterService.show('success',this.showMessage)\r\n\r\n //this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n });\r\n }\r\n\r\n bindAllDashboardData() {\r\n // this.getAllHolidayList();\r\n // this.getAllLeave();\r\n // this.GetLeaveBalanceByEmployee();\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n

    Customize Leave Policy

    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ listData.leaveTypeName }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ listData.typeText }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ listData.unitText }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ listData.balance }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Customize Leave Policy

    \r\n

    Leave History

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
      \r\n
    • Add Opening Balance
    • \r\n
    • Set Maximum Balance
    • \r\n
    • Prorate Accrual
    • \r\n
    • Deductible Holidays
    • \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{ dateformat(historyData.createdDate) }}\r\n \r\n \r\n \r\n \r\n \r\n {{ historyData.type }}\r\n \r\n \r\n
    \r\n Manual Correction\r\n \r\n   \r\n \r\n \r\n \r\n \r\n
    \r\n {{ historyData.type }}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n\r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Entitlement Calendar

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Prorate Accrual

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    FromToCount
    \r\n {{i + 1}}\r\n \r\n \r\n \r\n Invalid selection.\r\n
    \r\n
    From is required
    \r\n
    \r\n
    \r\n \r\n Invalid selection.\r\n
    \r\n
    To is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    Count is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    FromToCount
    \r\n {{i + 1}}\r\n \r\n \r\n \r\n Invalid selection.\r\n
    \r\n
    From is required
    \r\n
    \r\n
    \r\n \r\n Invalid selection.\r\n
    \r\n
    To is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    Count is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, HostListener, ViewChild } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { LeaveService } from '../../leave.service';\r\nimport { CommonService } from 'src/app/common.service';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { SSF } from 'xlsx/types';\r\nimport { BsDatepickerConfig } from 'ngx-bootstrap';\r\nimport { UserService } from 'src/app/user/user.service';\r\nimport { DepartmentService } from 'src/app/+layout/department/department.service';\r\nimport { LocationService } from 'src/app/+layout/location/location.service';\r\nimport { DesignationService } from 'src/app/+layout/designation/designation.service';\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { GridComponent } from '@syncfusion/ej2-angular-grids';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\n\r\n\r\nclass LeaveTypeData {\r\n IsAccural: Boolean;\r\n AccuralPeriod: number;\r\n AccuralDay: number;\r\n AccuralMonth: number;\r\n AccuralNoOfDays: number;\r\n AccuralDaysInPeriod: number;\r\n IsReset: Boolean;\r\n ResetPeriod: number;\r\n ResetDay: number;\r\n ResetMonth: number;\r\n CarryForwardType: number;\r\n CarryForwardPercentageUnit: number;\r\n EncashmentPercentageUnit: number;\r\n EntitlementCalendarList: any;\r\n ProrateAccuralFMList: any;\r\n ProrateAccuralLMList: any;\r\n}\r\n\r\n@Component({\r\n selector: 'app-customize-policy',\r\n templateUrl: './customize-policy.component.html',\r\n styleUrls: ['./customize-policy.component.css']\r\n})\r\nexport class CustomizePolicyComponent implements OnInit {\r\n datePickerConfiq: Partial;\r\n showHistory: Boolean = false;\r\n ddlEmployeeUserId: any;\r\n ddlEmployeeId: any;\r\n EmployeeList = [];\r\n ActiveEmployee = [];\r\n currentUserId: any;\r\n totalEmployeeList: any;\r\n employeName: any;\r\n employeCode: any;\r\n customizePolicyForm: FormGroup;\r\n userLoader: boolean;\r\n showMessage: any;\r\n showSuccess: boolean;\r\n avialableLIstBalance: any;\r\n userAvalLeave: any;\r\n applyLeaveSelectedUserLeaveBalance: any;\r\n minDate: any;\r\n startDate: any;\r\n endDate: any;\r\n selectLeaveHistory: any;\r\n selectedLeaveTypeID: any;\r\n myRequestsListLength: any;\r\n myRequestsListHistoryLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n myHistoryRequestsPage = 1;\r\n myHistoryRequestsPageSize = 10;\r\n flterShowData = false;\r\n statusSelectValue = true;\r\n // filter VAr\r\n DepartmentList: any[];\r\n ActiveDepartment: any[];\r\n LocationList: any[];\r\n todatlLocationList: any;\r\n ActiveLocation: any[];\r\n ActiveDesigation: any[];\r\n DesigationList: any[];\r\n ActiveRoles: any[];\r\n RolesList: any[];\r\n ddlRolesId: any;\r\n ddlDepartmentId: any;\r\n ddlLocationId: any;\r\n ddlDesigationId: any;\r\n DesigationCollection: any[];\r\n\r\n private isClickOutside = false;\r\n\r\n MonthList = [{ value: 1, name: \"Jan\" }, {value: 1, name: \"Feb\" }, { value: 2, name: \"Mar\"}, { value: 3, name: \"April\" }, { value:4, name: \"May\"}, { value: 5, name: \"Jun\" }, { value: 6, name: \"Jul\" }, { value: 7, name: \"Aug\" }, { value: 8, name: \"Sep\" }, { value: 9, name: \"Oct\" }, { value: 10, name: \"Nov\" }, { value: 11, name: \"Dec\" }];\r\n AccuralDayList = [];\r\n allDepartmentList: any;\r\n allLocationList: any;\r\n allDesigationList: any;\r\n allRolesList: any;\r\n\r\n\r\n // New DropdownLists\r\n ddlAccuralDaysList = [];\r\n ddlAccuralMonthsList = [];\r\n\r\n ddlResetDaysList = [];\r\n ddlResetMonthsList = [];\r\n\r\n\r\n // Entitlements More Options Related Data\r\n IsProrateAccuralEnable: false;\r\n IsOpeningBalanceEnable: false;\r\n IsMaximumBalanceEnable: false;\r\n IsDeductibleHolidaysEnable: false;\r\n\r\n // Prorate Accural model\r\n prorateAccuralType: string;\r\n prorateAccural: any;\r\n roundOffValueSelectList = [\r\n { value: 1, name: \"Nearest\" },\r\n { value: 2, name: \"Minimum\" },\r\n { value: 3, name: \"Maximum\" }\r\n ];\r\n roundOffTypeSelectList = [\r\n { value: 1, name: \"Day\" },\r\n { value: 2, name: \"Half Day\" },\r\n { value: 3, name: \"Quarter Day\" }\r\n ];\r\n prorateAccuralDayList = [];\r\n\r\n tempLeaveType: LeaveTypeData = new LeaveTypeData();\r\n\r\n vh_StartDate: Date;\r\n vh_EndDate: Date;\r\n\r\n CustomizePermission: boolean;\r\n ViewHistoryPermission: boolean;\r\n LeaveExport: boolean;\r\n CmpCode:any;\r\n ActiveEmployeefields: any;\r\n EmpValue: any;\r\n AccuralPerioddata: any;\r\n AccuralPeriodfield: any;\r\n ddlAccuralDaysListfield: any;\r\n ddlAccuralMonthsListfield: any;\r\n AccuralDaysInPeriod: any;\r\n AccuralDaysInPeriodfield: any;\r\n ResetPeriodfield: any;\r\n ResetPeriod: any;\r\n ddlResetDaysListfield: any;\r\n ddlResetMonthsListfield: any;\r\n CarryForwardTypefield: any;\r\n CarryForwardType: any;\r\n CarryForwardPercentagefield: any;\r\n CarryForwardPercentage: any;\r\n CarryForwardExpiresinfield: any;\r\n CarryForwardExpiresin: any;\r\n EncashmentPercentageUnitfield: any;\r\n EncashmentPercentageUnitdata: any;\r\n ProrateAccuralTypefield: any;\r\n ProrateAccuralTypedata: any;\r\n DeductibleHolidaysfield: any;\r\n DeductibleHolidaysdata: any;\r\n LocalDataPermission: any;\r\n constructor(\r\n private _authSer: AuthService,\r\n private _leaveSer: LeaveService,\r\n private _commonSer: CommonService,\r\n private toaster: ToasterService,\r\n private _fb: FormBuilder,private datePipe: DatePipe,\r\n private userService: UserService,\r\n private _depratmentSer: DepartmentService,\r\n private _locationSer: LocationService,\r\n private _desigation: DesignationService\r\n\r\n \r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.IsPermissions('Customize Leave Policy');\r\n this.LocalDataPermission = this._authSer.LocalDataPermission;\r\n if (this.LocalDataPermission === '' || this.LocalDataPermission === null || this.LocalDataPermission === undefined) {\r\n this.LocalDataPermission[0].addPermission = 0;\r\n this.LocalDataPermission[0].editPermission = 0;\r\n this.LocalDataPermission[0].viewpermission = 0;\r\n this.LocalDataPermission[0].deletePermission = 0;\r\n }\r\n try {\r\n this.ViewHistoryPermission = this.LocalDataPermission[0].viewpermission;//this.CurrentUser.permission.includes(Permission.ProjectView);\r\n this.LeaveExport = this.LocalDataPermission[0].viewpermission;//this.CurrentUser.permission.includes(Permission.ProjectAdd);\r\n this.CustomizePermission = this.LocalDataPermission[0].editPermission;// this.CurrentUser.permission.includes(Permission.ProjectEdit);\r\n this.ddlEmployeeUserId = this._authSer.getUserId();\r\n this.currentUserId = this._authSer.getUserId();\r\n this.ddlEmployeeId = 0;\r\n } catch (ex) {\r\n\r\n }\r\n this.datePickerConfiq = Object.assign(\r\n { },\r\n {\r\n showWeekNumbers: true,\r\n }\r\n );\r\n }\r\n\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n public item: number[] = [1, 2, 3, 4, 5];\r\n public pageSettings = { pageCount: 3 };\r\n DateFormat: any;\r\n\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n load() {// Created By S Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n EmPplaceholder\r\n ngOnInit() {// Angular Lifecycle hook\r\n this.EmPplaceholder=\"Select Employee\"\r\n this.ActiveEmployeefields = {text: 'text', value: 'id' }\r\n this.AccuralPerioddata = [\r\n { name: \"One Time\", value: 1 },\r\n { name: \"Yearly\", value: 2 },\r\n { name: \"Monthly\", value: 3 },\r\n { name: \"Half Yearly\", value: 4 },\r\n { name: \"Triannually\", value: 5 },\r\n { name: \"Quarterly\", value: 6 },\r\n { name: \"Bi-Monthly\", value: 7 },\r\n { name: \"Semi Monthly\", value: 8 },\r\n { name: \"Bi-Weekly\", value: 9 },\r\n { name: \"Weekly\", value: 10 },\r\n ]; \r\n this.AccuralPeriodfield = {value:\"value\", text: \"name\" }\r\n\r\n this.AccuralDaysInPeriod = [\r\n { name: \"Current Accrual\", value: 1 },\r\n { name: \"Next Accrual\", value: 2 },\r\n ];\r\n this.AccuralDaysInPeriodfield = {value:\"value\", text: \"name\" }\r\n\r\n this.ResetPeriod = [\r\n { name: \"One Time\", value: 1 },\r\n { name: \"Yearly\", value: 2 },\r\n { name: \"Monthly\", value: 3 },\r\n { name: \"Half Yearly\", value: 4 },\r\n { name: \"Triannually\", value: 5 },\r\n { name: \"Quarterly\", value: 6 },\r\n { name: \"Bi-Monthly\", value: 7 },\r\n { name: \"Semi Monthly\", value: 8 },\r\n { name: \"Bi-Weekly\", value: 9 },\r\n { name: \"Weekly\", value: 10 },\r\n ];\r\n this.ResetPeriodfield = {value:\"value\", text: \"name\" }\r\n\r\n this.CarryForwardType =[\r\n { name: \"Carry Forward\", value: 1 },\r\n { name: \"Carry Forward With Expiry\", value: 2 },\r\n { name: \"Carry Forward With Overall Limit\", value: 3 }\r\n ];\r\n this.CarryForwardTypefield = {value:\"value\", text: \"name\" }\r\n\r\n this.CarryForwardPercentage = [\r\n { name: \"Percentage\", value: 1 },\r\n { name: \"Unit(s)\", value: 2 },\r\n ];\r\n this.CarryForwardPercentagefield = {value:\"value\", text: \"name\" }\r\n\r\n this.CarryForwardExpiresin = [\r\n { name: \"Month(s)\", value: 1 },\r\n { name: \"Day(s)\", value: 2 },\r\n ];\r\n this.CarryForwardExpiresinfield = {value:\"value\", text: \"name\" }\r\n\r\n this.EncashmentPercentageUnitdata = [\r\n { name: \"Percentage\", value: 1 },\r\n { name: \"Unit(s)\", value: 2 },\r\n ];\r\n this.EncashmentPercentageUnitfield = {value:\"value\", text: \"name\" }\r\n\r\n this.ProrateAccuralTypedata = [\r\n { name: \"Start of Policy\", value: 1 },\r\n { name: \"Start and End of Policy\", value: 2 },\r\n { name: \"Do not Prorate\", value: 3 },\r\n ];\r\n this.ProrateAccuralTypefield = {value:\"value\", text: \"name\" }\r\n\r\n this.DeductibleHolidaysdata = [\r\n { name: \"All Holidays\", value: 1 },\r\n { name: \"Holidays on Workdays\", value: 2 },\r\n ];\r\n this.DeductibleHolidaysfield = {value:\"value\", text: \"name\" }\r\n\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.DateFormat= this._authSer.getdateFormat();\r\n \r\n // this._authSer.currentUser.subscribe((res) => {\r\n // this.currentUserId = res.userId;\r\n // this.CustomizePermission = res.permission.includes(Permission.CustomizePolicy);\r\n // this.ViewHistoryPermission = res.permission.includes(Permission.ViewHistory);\r\n // this.LeaveExport = res.permission.includes(Permission.LeaveHistoryExport);\r\n // this.ddlEmployeeUserId = res.userId;\r\n // this.ddlEmployeeId = 0;\r\n // });\r\n this.getEmployeesListForSelect();\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.customizePolicyForm = this._fb.group({\r\n EmployeeId: [],\r\n CmpCode: this.CmpCode,\r\n LeaveTypeId: [],\r\n EffectiveFrom: [ new Date()],\r\n IsAccural: [false],\r\n AccuralPeriod: [],\r\n AccuralDay: [],\r\n AccuralMonth: [],\r\n AccuralNoOfDays: [],\r\n AccuralDaysInPeriod: [],\r\n IsReset: [false],\r\n ResetPeriod: [],\r\n ResetDay: [],\r\n ResetMonth: [],\r\n CarryForwardType: [],\r\n CarryForwardValue: [],\r\n CarryForwardPercentageUnit: [],\r\n CarryForwardMaxLimit: [],\r\n CarryForwardExpiresIn: [],\r\n CarryForwardExpiresInType: [],\r\n CarryForwardOverallLimit: [],\r\n EncashmentValue: [],\r\n EncashmentPercentageUnit: [],\r\n EncashmentMaxLimit: [],\r\n IsProrateAccuralEnable: [false],\r\n ProrateAccuralType: [],\r\n IsOpeningBalanceEnable: [false],\r\n OpeningBalance: [],\r\n IsMaximumBalanceEnable: [false],\r\n MaximumBalance: [],\r\n IsDeductibleHolidaysEnable: [false],\r\n DeductibleHolidays: [],\r\n ProrateBy: [false],\r\n IsRoundOff: [false],\r\n RoundOffToValue: [],\r\n RoundOffToType: [],\r\n CreatedBy: [],\r\n CreatedDate: [],\r\n UpdatedBy: [],\r\n UpdatedDate: [],\r\n EntitlementCalendarList: [[]],\r\n ProrateAccuralFMList: [[]],\r\n ProrateAccuralLMList: [[]]\r\n });\r\n\r\n // this.getAvilabeLIstBalance()\r\n //this.bindAllDashboardData();\r\n\r\n this.setTempLeaveTypeData();\r\n this.initAccuralDDL();\r\n this.setDDLSelectLists();\r\n }\r\n\r\n dateformat(datas:string){// Created By K Global Date format\r\n return this._authSer.Dateformat(datas);\r\n\r\n}\r\n\r\n\r\n getFormattedDate(val: any) {// Created By A Date format\r\n if (val === null) {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year, month, day);\r\n }\r\n getCSharpFormattedDate(val: any) {// Created By A Backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n // hide side menu\r\n @HostListener(\"click\")\r\n clickInside() {// Created By A Set value\r\n this.isClickOutside = true;\r\n }\r\n\r\n @HostListener(\"document:click\")\r\n clickout() {// Created By A Set values\r\n if (!this.isClickOutside) {\r\n this.flterShowData = false;\r\n }\r\n this.isClickOutside = false;\r\n }\r\n // end hide menu\r\n\r\n numberOnly(event): boolean {// Created By A Numbers validations\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n\r\n }\r\n\r\n numberOnlyWithDecimal(event): boolean {// Created By A Numbers and decimals validations\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode != 46 && charCode > 31 \r\n && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n bindAllDashboardData() {// Created By A Bind data on dashboard\r\n // this.getAllHolidayList();\r\n // this.getAllLeave();\r\n this.userAvaliableLeave();\r\n }\r\n\r\n getNumberWithOrdinal(n) {// Created By K Set Ordinals for numbers\r\n let s = [\"th\", \"st\", \"nd\", \"rd\"], v = n % 100;\r\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\r\n }\r\n\r\n onShowHistory() {// Created By A On View history\r\n let currentDate = new Date();\r\n this.vh_StartDate = new Date(currentDate.getFullYear() + \"-01-01\");\r\n this.vh_EndDate = currentDate;\r\n\r\n this.startDate = this.vh_StartDate;\r\n this.endDate = this.vh_EndDate;\r\n\r\n this.showHistory = true;\r\n this.GetSelectEmployeeHistory();\r\n }\r\n\r\n backHistory() {// Created By A set value\r\n this.showHistory = false;\r\n }\r\n\r\n getAvilabeLIstBalance() {// Created By A Getting available balance list \r\n this.getEmployeesListForSelect();\r\n this._leaveSer.getAvailableLeaveBalance(this.ActiveEmployee[0].id, 1,this.CmpCode).subscribe(res => {\r\n this.avialableLIstBalance = res['data'].table;\r\n });\r\n }\r\n\r\n\r\n getDepartment() {// Created By A Getting all departments\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n // this.allDepartmentList = res['data'].table\r\n this.allDepartmentList = res[\"data\"].table;\r\n // if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n // this.employeName = res[\"data\"].table[0].employeeName;\r\n // this.employeCode = res[\"data\"].table[0].empCode;\r\n // }\r\n this.DepartmentList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"departmentId\",\r\n \"departmentName\"\r\n );\r\n // const selectedEmp = this.allDepartmentList.find(\r\n // (x) => x.userId.toString() === this.currentUserId.toString()\r\n // );\r\n // if (selectedEmp !== undefined) {\r\n // const empValue = {\r\n // id: selectedEmp.departmentId,\r\n // text: selectedEmp.departmentName,\r\n // };\r\n // setTimeout(() => {\r\n // this.departmentSelection(empValue, \"Department\", undefined, undefined);\r\n // }, 300);\r\n // }\r\n // this.DepartmentMultiList = [];\r\n // for (let i = 0; i < res.data.table.length; i++) {\r\n // this.DepartmentMultiList.push({\r\n // id: res.data.table.departmentId,\r\n // text: res.data.table.departmentName,\r\n // });\r\n // }\r\n });\r\n }\r\n departmentSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select department\r\n console.log(this.ActiveDepartment)\r\n try {\r\n switch (placeHolder) {\r\n case \"Department\":\r\n\r\n this.ActiveDepartment = [];\r\n this.ActiveDepartment.push(value);\r\n\r\n this.ddlDepartmentId = value.id;\r\n\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n\r\n\r\n getAllLocation() {// Created By A Getting all locations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n\r\n CmpCode:this.CmpCode,\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n // this.allLocationList = res['data'].table\r\n this.allLocationList = res[\"data\"].table;\r\n if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n this.LocationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"locationId\",\r\n \"locationName\"\r\n );\r\n const selectedEmp = this.allLocationList.find(\r\n (x) => x.userId.toString('utf8') === this.currentUserId.toString('utf8')\r\n );\r\n if (selectedEmp !== undefined) {\r\n const empValue = {\r\n id: selectedEmp.locationId,\r\n text: selectedEmp.locationName,\r\n };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, \"Location\", undefined, undefined);\r\n }, 300);\r\n }\r\n });\r\n }\r\n\r\n locationSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On Select location\r\n try {\r\n switch (placeHolder) {\r\n case \"Location\":\r\n this.ActiveLocation = [];\r\n this.ActiveLocation.push(value);\r\n this.ddlLocationId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n\r\n getAllDesigation() {// Created By A Getting all designations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n // this.allDesigationList = res['data'].table\r\n this.allDesigationList = res[\"data\"].table;\r\n if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n this.DesigationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"designationId\",\r\n \"designationName\"\r\n );\r\n const selectedEmp = this.allDesigationList.find(\r\n (x) => x.userId.toString() === this.currentUserId.toString('utf8')\r\n );\r\n if (selectedEmp !== undefined) {\r\n const empValue = {\r\n id: selectedEmp.designationId,\r\n text: selectedEmp.designationName,\r\n };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, \"Desigation\", undefined, undefined);\r\n }, 300);\r\n }\r\n });\r\n }\r\n\r\n desigationSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select designation\r\n try {\r\n switch (placeHolder) {\r\n case \"Desigation\":\r\n this.ActiveDesigation = [];\r\n this.ActiveDesigation.push(value);\r\n this.ddlDesigationId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n\r\n\r\n getAllRole() {// Created By A Getting all roles\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: \"asc\",\r\n FieldName: \"name\",\r\n Condition: \"\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._leaveSer.getAllRolesList(parms).subscribe((res) => {\r\n // this.allRolesList = res['data'].table\r\n this.allRolesList = res[\"data\"].table;\r\n // if (res['data'].table != null && res['data'].table.lenght > 0) {\r\n // this.employeName = res[\"data\"].table[0].employeeName;\r\n // this.employeCode = res[\"data\"].table[0].empCode;\r\n // }\r\n this.RolesList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"roleId\",\r\n \"name\"\r\n );\r\n const selectedEmp = this.allRolesList.find(\r\n (x) => x.userId.toString() === this.currentUserId.toString('utf8')\r\n );\r\n if (selectedEmp !== undefined) {\r\n const empValue = { id: selectedEmp.roleId, text: selectedEmp.name };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, \"Roles\", undefined, undefined);\r\n }, 300);\r\n }\r\n });\r\n }\r\n\r\n rolesSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select role\r\n try {\r\n switch (placeHolder) {\r\n case \"Roles\":\r\n this.ActiveRoles = [];\r\n this.ActiveRoles.push(value);\r\n this.ddlRolesId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n filterShow() {// Created By A Initialize filters modal\r\n // this.getAllEmployeList();\r\n this.getDepartment();\r\n this.getAllDesigation();\r\n this.getAllLocation();\r\n this.getAllRole();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {// Created By A\r\n this.flterShowData = false;\r\n }\r\n\r\n SideFilterFunc() {// Created By A On Search click\r\n this.flterShowData = false;\r\n this.userAvaliableLeave();\r\n }\r\n\r\n ResetFilter() { // Created By A Reset values\r\n this.statusSelectValue = true;\r\n this.ActiveDesigation = [];\r\n this.ddlDepartmentId = null;\r\n this.ddlDesigationId = null;\r\n this.ddlLocationId = null;\r\n this.ddlRolesId = null;\r\n // this.ddlEmployeeUserId = null\r\n this.ActiveDepartment = [];\r\n // this.ActiveEmployee =[]\r\n this.ActiveLocation = [];\r\n this.ActiveRoles = [];\r\n }\r\n\r\n // Side filter end\r\n\r\n userAvaliableLeave() {// Created By A Getting Users avalible leave details\r\n this.userLoader = true;\r\n if (this.ddlEmployeeId != 0) {\r\n let parms = {\r\n \"EmployeeId\": this.ddlEmployeeId,\r\n \"FilterStatus\": this.statusSelectValue,\r\n \"FilterEmployees\": null,\r\n \"FilterDepartments\": this.ddlDepartmentId || null,\r\n \"FilterLocations\": this.ddlLocationId || null,\r\n \"FilterDesignations\": this.ddlDesigationId || null,\r\n \"FilterRoles\": this.ddlRolesId || null,\r\n \"CmpCode\":this.CmpCode\r\n };\r\n\r\n this.userAvalLeave = [];\r\n this.myRequestsListLength = 0;\r\n this._leaveSer.getAllEpmloyeeLeavePolicy(parms).subscribe((res: any) => {\r\n this.userLoader = false;\r\n this.userAvalLeave = res[\"data\"];\r\n this.myRequestsListLength = this.userAvalLeave.length;\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n \r\n getEmployeesListForSelect () {// Created By A Getting all employees list\r\n debugger\r\n this.ddlEmployeeId = 0;\r\n this.totalEmployeeList = [];\r\n this.EmployeeList = [];\r\n this._leaveSer.getEmployeesListForSelect(this.currentUserId,this.CmpCode).subscribe((res) => {\r\n this.totalEmployeeList = res['data'].table;\r\n this.EmployeeList = this._commonSer.SetDDlDropdown(res[\"data\"].table, 'employeeId', 'employeeCodeName');\r\n this.EmpValue = this.currentUserId\r\n const currentEmp = this.totalEmployeeList.find(x => x.userId == this.currentUserId);\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n this.ddlEmployeeId = currentEmp.employeeId;\r\n const empValue = { 'id': currentEmp.employeeId, 'text': currentEmp.employeeCodeName };\r\n setTimeout(() => {\r\n this.ddlSelection(empValue, 'Employee', undefined, undefined);\r\n }, 300);\r\n }\r\n });\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select employees\r\n debugger\r\n try {\r\n switch (placeHolder) {\r\n case 'Employee':\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n if(value.id == undefined){\r\n this.ddlEmployeeId = value.value;\r\n }else{\r\n this.ddlEmployeeId = value.id;\r\n }\r\n \r\n \r\n this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {\r\n\r\n }\r\n }\r\n\r\n \r\n saveCustomizeLeave() {// Created By A On Save Customize Leave Policy\r\n this.userLoader = true;\r\n this.customizePolicyForm.patchValue({\r\n EmployeeId: this.ddlEmployeeId,\r\n LeaveTypeId: this.selectedLeaveTypeID,\r\n EntitlementCalendarList: this.tempLeaveType.EntitlementCalendarList\r\n });\r\n\r\n let effectiveFromDate = this.getCSharpFormattedDate(this.customizePolicyForm.value.EffectiveFrom);\r\n if (effectiveFromDate != null) {\r\n this.customizePolicyForm.patchValue({\r\n EffectiveFrom: effectiveFromDate\r\n });\r\n } else {\r\n this.customizePolicyForm.patchValue({\r\n EffectiveFrom: null\r\n });\r\n }\r\n\r\n this._leaveSer.saveLeavePolicy(this.customizePolicyForm.value).subscribe(res => {\r\n if (res['success'] === true) {\r\n this.userLoader = false;\r\n this.showSuccess = true;\r\n this.showMessage = res['data'];\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = res['message'];\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n }, (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n \r\n });\r\n }\r\n\r\n selectLeaveType(LeaveTypeId) {// Created By A Get Employe Leave policy details\r\n debugger;\r\n this.selectedLeaveTypeID = LeaveTypeId;\r\n let parms = {};\r\n this.userLoader = true;\r\n this.flterShowData = false;\r\n this._leaveSer.getEmployeeLeavePolicy(this.ddlEmployeeId, LeaveTypeId, parms, this.CmpCode).subscribe(res => {\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(res['data'][0]);\r\n this.customizePolicyForm.patchValue({\r\n EmployeeId: res['data'][0].employeeId,\r\n LeaveTypeId: res['data'][0].leaveTypeId,\r\n EffectiveFrom: this.getFormattedDate(res['data'][0].effectiveFrom),\r\n IsAccural: res['data'][0].isAccural,\r\n AccuralPeriod: res['data'][0].accuralPeriod,\r\n AccuralDay: res['data'][0].accuralDay,\r\n AccuralMonth: res['data'][0].accuralMonth,\r\n AccuralNoOfDays: res['data'][0].accuralNoOfDays,\r\n AccuralDaysInPeriod: res['data'][0].accuralDaysInPeriod,\r\n IsReset: res['data'][0].isReset,\r\n ResetPeriod: res['data'][0].resetPeriod,\r\n ResetDay: res['data'][0].resetDay,\r\n ResetMonth: res['data'][0].resetMonth,\r\n CarryForwardType: res['data'][0].carryForwardType,\r\n CarryForwardValue: res['data'][0].carryForwardValue,\r\n CarryForwardPercentageUnit: res['data'][0].carryForwardPercentageUnit,\r\n CarryForwardMaxLimit: res['data'][0].carryForwardMaxLimit,\r\n CarryForwardExpiresIn: res['data'][0].carryForwardExpiresIn,\r\n CarryForwardExpiresInType: res['data'][0].carryForwardExpiresInType,\r\n CarryForwardOverallLimit: res['data'][0].carryForwardOverallLimit,\r\n EncashmentValue: res['data'][0].encashmentValue,\r\n EncashmentPercentageUnit: res['data'][0].encashmentPercentageUnit,\r\n EncashmentMaxLimit: res['data'][0].encashmentMaxLimit,\r\n IsProrateAccuralEnable: res['data'][0].isProrateAccuralEnable,\r\n ProrateAccuralType: res['data'][0].prorateAccuralType,\r\n IsOpeningBalanceEnable: res['data'][0].isOpeningBalanceEnable,\r\n OpeningBalance: res['data'][0].openingBalance,\r\n IsMaximumBalanceEnable: res['data'][0].isMaximumBalanceEnable,\r\n MaximumBalance: res['data'][0].maximumBalance,\r\n IsDeductibleHolidaysEnable: res['data'][0].isDeductibleHolidaysEnable,\r\n DeductibleHolidays: res['data'][0].deductibleHolidays,\r\n ProrateBy: res['data'][0].prorateBy,\r\n IsRoundOff: res['data'][0].isRoundOff,\r\n RoundOffToValue: res['data'][0].roundOffToValue,\r\n RoundOffToType: res['data'][0].roundOffToType,\r\n // CreatedBy:[\"\"],\r\n // CreatedDate:res['data'][0].leaveTypeId,\r\n // UpdatedBy:\"\",\r\n // UpdatedDate:res['data'][0].leaveTypeId\r\n });\r\n\r\n this.tempLeaveType = new LeaveTypeData();\r\n this.tempLeaveType.IsAccural = res[\"data\"][0].isAccural;\r\n this.tempLeaveType.AccuralPeriod = res[\"data\"][0].accuralPeriod;\r\n this.tempLeaveType.AccuralDay = res[\"data\"][0].accuralDay;\r\n this.tempLeaveType.AccuralMonth = res[\"data\"][0].accuralMonth;\r\n this.tempLeaveType.AccuralNoOfDays = res[\"data\"][0].accuralNoOfDays;\r\n this.tempLeaveType.AccuralDaysInPeriod = res[\"data\"][0].accuralDaysInPeriod;\r\n this.tempLeaveType.IsReset = res[\"data\"][0].isReset;\r\n this.tempLeaveType.ResetPeriod = res[\"data\"][0].resetPeriod;\r\n this.tempLeaveType.ResetDay = res[\"data\"][0].resetDay;\r\n this.tempLeaveType.ResetMonth = res[\"data\"][0].resetMonth;\r\n this.tempLeaveType.CarryForwardType = res[\"data\"][0].carryForwardType;\r\n this.tempLeaveType.CarryForwardPercentageUnit = res[\"data\"][0].carryForwardPercentageUnit;\r\n this.tempLeaveType.EncashmentPercentageUnit = res[\"data\"][0].encashmentPercentageUnit;\r\n this.tempLeaveType.EntitlementCalendarList = [];\r\n this.tempLeaveType.ProrateAccuralFMList = [];\r\n this.tempLeaveType.ProrateAccuralLMList = [];\r\n\r\n this.IsProrateAccuralEnable = res[\"data\"][0].isProrateAccuralEnable;\r\n this.IsOpeningBalanceEnable = res[\"data\"][0].isOpeningBalanceEnable;\r\n this.IsMaximumBalanceEnable = res[\"data\"][0].isMaximumBalanceEnable;\r\n this.IsDeductibleHolidaysEnable = res[\"data\"][0].isDeductibleHolidaysEnable;\r\n if (res[\"data\"][0].entitlementCalendarList == null ||\r\n res[\"data\"][0].entitlementCalendarList == undefined ||\r\n res[\"data\"][0].entitlementCalendarList.length < 1) {\r\n this.createEntitlementCalendarData();\r\n } else {\r\n this.setEntitlementCalendarData(res[\"data\"][0].entitlementCalendarList);\r\n }\r\n\r\n this.prorateAccural = {};\r\n this.prorateAccural.leaveTypeId = res['data'][0].leaveTypeId;\r\n this.prorateAccural.employeeId = res['data'][0].employeeId;\r\n this.prorateAccural.prorateBy = res['data'][0].prorateBy;\r\n this.prorateAccural.isRoundOff = res['data'][0].isRoundOff;\r\n this.prorateAccural.roundOffToType = res['data'][0].roundOffToType;\r\n this.prorateAccural.roundOffToValue = res['data'][0].roundOffToValue;\r\n\r\n this.prorateAccuralType = res['data'][0].prorateAccuralType;\r\n\r\n this.prorateAccural.prorateAccuralFirstMonthList = res['data'][0].prorateAccuralFMList;\r\n this.duplicateFirstMonthRuleFrom = [];\r\n this.duplicateFirstMonthRuleTo = [];\r\n for (let i = 0; i < this.prorateAccural.prorateAccuralFirstMonthList.length; i++) {\r\n this.duplicateFirstMonthRuleFrom.push(\"true\");\r\n this.duplicateFirstMonthRuleTo.push(\"true\");\r\n }\r\n\r\n this.prorateAccural.prorateAccuralLastMonthList = res['data'][0].prorateAccuralLMList;\r\n this.duplicateLastMonthRuleFrom = [];\r\n this.duplicateLastMonthRuleTo = [];\r\n for (let i = 0; i < this.prorateAccural.prorateAccuralLastMonthList.length; i++) {\r\n this.duplicateLastMonthRuleFrom.push(\"true\");\r\n this.duplicateLastMonthRuleTo.push(\"true\");\r\n }\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n // this._commonSer.OpenModalHandler(\"customizeleave\");\r\n this.showHistory = false;\r\n }\r\n\r\n selectLeaveTypeViewHistory(LeaveTypeId) {// Created By A On Leave Type View History\r\n debugger;\r\n this.selectedLeaveTypeID = LeaveTypeId;\r\n let parms = {};\r\n this.userLoader = true;\r\n this.flterShowData = false;\r\n this._leaveSer.getEmployeeLeavePolicy(this.ddlEmployeeId, LeaveTypeId, parms, this.CmpCode).subscribe(res => {\r\n this.userLoader = false;\r\n console.clear();\r\n console.log(res['data'][0]);\r\n this.customizePolicyForm.patchValue({\r\n EmployeeId: res['data'][0].employeeId,\r\n LeaveTypeId: res['data'][0].leaveTypeId,\r\n EffectiveFrom: this.getFormattedDate(res['data'][0].effectiveFrom),\r\n IsAccural: res['data'][0].isAccural,\r\n AccuralPeriod: res['data'][0].accuralPeriod,\r\n AccuralDay: res['data'][0].accuralDay,\r\n AccuralMonth: res['data'][0].accuralMonth,\r\n AccuralNoOfDays: res['data'][0].accuralNoOfDays,\r\n AccuralDaysInPeriod: res['data'][0].accuralDaysInPeriod,\r\n IsReset: res['data'][0].isReset,\r\n ResetPeriod: res['data'][0].resetPeriod,\r\n ResetDay: res['data'][0].resetDay,\r\n ResetMonth: res['data'][0].resetMonth,\r\n CarryForwardType: res['data'][0].carryForwardType,\r\n CarryForwardValue: res['data'][0].carryForwardValue,\r\n CarryForwardPercentageUnit: res['data'][0].carryForwardPercentageUnit,\r\n CarryForwardMaxLimit: res['data'][0].carryForwardMaxLimit,\r\n CarryForwardExpiresIn: res['data'][0].carryForwardExpiresIn,\r\n CarryForwardExpiresInType: res['data'][0].carryForwardExpiresInType,\r\n CarryForwardOverallLimit: res['data'][0].carryForwardOverallLimit,\r\n EncashmentValue: res['data'][0].encashmentValue,\r\n EncashmentPercentageUnit: res['data'][0].encashmentPercentageUnit,\r\n EncashmentMaxLimit: res['data'][0].encashmentMaxLimit,\r\n IsProrateAccuralEnable: res['data'][0].isProrateAccuralEnable,\r\n ProrateAccuralType: res['data'][0].prorateAccuralType,\r\n IsOpeningBalanceEnable: res['data'][0].isOpeningBalanceEnable,\r\n OpeningBalance: res['data'][0].openingBalance,\r\n IsMaximumBalanceEnable: res['data'][0].isMaximumBalanceEnable,\r\n MaximumBalance: res['data'][0].maximumBalance,\r\n IsDeductibleHolidaysEnable: res['data'][0].isDeductibleHolidaysEnable,\r\n DeductibleHolidays: res['data'][0].deductibleHolidays,\r\n ProrateBy: res['data'][0].prorateBy,\r\n IsRoundOff: res['data'][0].isRoundOff,\r\n RoundOffToValue: res['data'][0].roundOffToValue,\r\n RoundOffToType: res['data'][0].roundOffToType,\r\n // CreatedBy:[\"\"],\r\n // CreatedDate:res['data'][0].leaveTypeId,\r\n // UpdatedBy:\"\",\r\n // UpdatedDate:res['data'][0].leaveTypeId\r\n });\r\n\r\n this.tempLeaveType = new LeaveTypeData();\r\n this.tempLeaveType.IsAccural = res[\"data\"][0].isAccural;\r\n this.tempLeaveType.AccuralPeriod = res[\"data\"][0].accuralPeriod;\r\n this.tempLeaveType.AccuralDay = res[\"data\"][0].accuralDay;\r\n this.tempLeaveType.AccuralMonth = res[\"data\"][0].accuralMonth;\r\n this.tempLeaveType.AccuralNoOfDays = res[\"data\"][0].accuralNoOfDays;\r\n this.tempLeaveType.AccuralDaysInPeriod = res[\"data\"][0].accuralDaysInPeriod;\r\n this.tempLeaveType.IsReset = res[\"data\"][0].isReset;\r\n this.tempLeaveType.ResetPeriod = res[\"data\"][0].resetPeriod;\r\n this.tempLeaveType.ResetDay = res[\"data\"][0].resetDay;\r\n this.tempLeaveType.ResetMonth = res[\"data\"][0].resetMonth;\r\n this.tempLeaveType.CarryForwardType = res[\"data\"][0].carryForwardType;\r\n this.tempLeaveType.CarryForwardPercentageUnit = res[\"data\"][0].carryForwardPercentageUnit;\r\n this.tempLeaveType.EncashmentPercentageUnit = res[\"data\"][0].encashmentPercentageUnit;\r\n this.tempLeaveType.EntitlementCalendarList = [];\r\n this.tempLeaveType.ProrateAccuralFMList = [];\r\n this.tempLeaveType.ProrateAccuralLMList = [];\r\n\r\n this.IsProrateAccuralEnable = res[\"data\"][0].isProrateAccuralEnable;\r\n this.IsOpeningBalanceEnable = res[\"data\"][0].isOpeningBalanceEnable;\r\n this.IsMaximumBalanceEnable = res[\"data\"][0].isMaximumBalanceEnable;\r\n this.IsDeductibleHolidaysEnable = res[\"data\"][0].isDeductibleHolidaysEnable;\r\n\r\n if (res[\"data\"][0].entitlementCalendarList == null ||\r\n res[\"data\"][0].entitlementCalendarList == undefined ||\r\n res[\"data\"][0].entitlementCalendarList.length < 1) {\r\n this.createEntitlementCalendarData();\r\n } else {\r\n this.setEntitlementCalendarData(res[\"data\"][0].entitlementCalendarList);\r\n }\r\n\r\n this.prorateAccural = {};\r\n this.prorateAccural.leaveTypeId = res['data'][0].leaveTypeId;\r\n this.prorateAccural.employeeId = res['data'][0].employeeId;\r\n this.prorateAccural.prorateBy = res['data'][0].prorateBy;\r\n this.prorateAccural.isRoundOff = res['data'][0].isRoundOff;\r\n this.prorateAccural.roundOffToType = res['data'][0].roundOffToType;\r\n this.prorateAccural.roundOffToValue = res['data'][0].roundOffToValue;\r\n\r\n this.prorateAccuralType = res['data'][0].prorateAccuralType;\r\n\r\n this.prorateAccural.prorateAccuralFirstMonthList = res['data'][0].prorateAccuralFMList;\r\n this.duplicateFirstMonthRuleFrom = [];\r\n this.duplicateFirstMonthRuleTo = [];\r\n for (let i = 0; i < this.prorateAccural.prorateAccuralFirstMonthList.length; i++) {\r\n this.duplicateFirstMonthRuleFrom.push(\"true\");\r\n this.duplicateFirstMonthRuleTo.push(\"true\");\r\n }\r\n\r\n this.prorateAccural.prorateAccuralLastMonthList = res['data'][0].prorateAccuralLMList;\r\n this.duplicateLastMonthRuleFrom = [];\r\n this.duplicateLastMonthRuleTo = [];\r\n for (let i = 0; i < this.prorateAccural.prorateAccuralLastMonthList.length; i++) {\r\n this.duplicateLastMonthRuleFrom.push(\"true\");\r\n this.duplicateLastMonthRuleTo.push(\"true\");\r\n }\r\n }, error => {\r\n this.userLoader = false;\r\n console.log(error);\r\n });\r\n this.showHistory = false;\r\n this.onShowHistory();\r\n }\r\n\r\n datepickerStartDate($event1) {// Created By K Set Start Date\r\n this.startDate = $event1;\r\n this.minDate = this.startDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n\r\n this.GetSelectEmployeeHistory();\r\n }\r\n\r\n datepickerEndDate($event1) {// Created By K Set End Date\r\n this.endDate = $event1;\r\n this.minDate = this.startDate;\r\n\r\n this.GetSelectEmployeeHistory();\r\n }\r\n\r\n GetSelectEmployeeHistory() {// Created By A Get Employee history details\r\n if (this.startDate != null && this.endDate != null) {\r\n this.userLoader = true;\r\n let startDate = this.getCSharpFormattedDate(this.startDate);\r\n let endDate = this.getCSharpFormattedDate(this.endDate);\r\n let parms = {\r\n EmployeeId: this.ddlEmployeeId,\r\n LeaveTypeId: this.selectedLeaveTypeID,\r\n StartDate: startDate,\r\n EndDate: endDate,\r\n CmpCode:this.CmpCode\r\n };\r\n\r\n this._leaveSer.getEmployeeLeaveHistory(parms).subscribe(res => {\r\n this.userLoader = false;\r\n this.selectLeaveHistory = res['data'];\r\n this.myRequestsListHistoryLength = res['data'].length;\r\n });\r\n }\r\n }\r\n\r\n \r\n setTempLeaveTypeData() {// Created By A Set values\r\n this.tempLeaveType = new LeaveTypeData();\r\n\r\n this.tempLeaveType.IsAccural = true;\r\n this.tempLeaveType.AccuralPeriod = 2;\r\n this.tempLeaveType.AccuralDay = 1;\r\n this.tempLeaveType.AccuralMonth = 1;\r\n this.tempLeaveType.AccuralNoOfDays = 0;\r\n this.tempLeaveType.AccuralDaysInPeriod = 1;\r\n this.tempLeaveType.IsReset = true;\r\n this.tempLeaveType.ResetPeriod = 2;\r\n this.tempLeaveType.ResetDay = 71;\r\n this.tempLeaveType.ResetMonth = 12;\r\n this.tempLeaveType.CarryForwardType = 1;\r\n this.tempLeaveType.CarryForwardPercentageUnit = 1;\r\n this.tempLeaveType.EncashmentPercentageUnit = 1;\r\n this.tempLeaveType.EntitlementCalendarList = [];\r\n this.tempLeaveType.ProrateAccuralFMList = [];\r\n this.tempLeaveType.ProrateAccuralLMList = [];\r\n\r\n this.setDDLSelectLists();\r\n this.createEntitlementCalendarData();\r\n }\r\n\r\n initAccuralDDL() {// Created By A Set accural dropdown list\r\n for (let i = 1; i <= 31; i++) {\r\n this.AccuralDayList.push(this.getNumberWithOrdinal(i));\r\n this.prorateAccuralDayList.push(this.getNumberWithOrdinal(i));\r\n }\r\n\r\n this.AccuralDayList.push(\"Last Day\");\r\n this.AccuralDayList.push(\"Policy Date\");\r\n this.AccuralDayList.push(\"Joining Date\");\r\n this.AccuralDayList.push(\"Birth Date\");\r\n }\r\n\r\n setDDLSelectLists() {// Created By A Set Values\r\n this.setAccuralDaySelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n this.setAccuralMonthSelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n this.setResetDaySelectList(this.tempLeaveType.ResetPeriod.toString());\r\n this.setResetMonthSelectList(this.tempLeaveType.ResetPeriod.toString());\r\n }\r\n\r\n // Accural\r\n onChangeIsAccural(e) {// Created By A Reset Values\r\n this.tempLeaveType.IsAccural = !this.tempLeaveType.IsAccural;\r\n this.customizePolicyForm.patchValue({\r\n AccuralPeriod: 2,\r\n AccuralDay: 1,\r\n AccuralMonth: 1,\r\n AccuralNoOfDays: 0,\r\n AccuralDaysInPeriod: 1\r\n });\r\n\r\n this.tempLeaveType.AccuralPeriod = 2;\r\n this.tempLeaveType.AccuralDay = 1;\r\n this.tempLeaveType.AccuralMonth = 1;\r\n this.tempLeaveType.AccuralNoOfDays = 0;\r\n this.tempLeaveType.AccuralDaysInPeriod = 1;\r\n\r\n this.setAccuralFieldsData(this.tempLeaveType.AccuralPeriod.toString());\r\n }\r\n\r\n setAccuralFieldsData(_type) {// Created By A Set values\r\n this.setAccuralDaySelectList(_type);\r\n this.setAccuralMonthSelectList(_type);\r\n\r\n let _accuralDay = 1, _accuralMonth = 1;\r\n switch (_type) {\r\n case \"1\" :\r\n _accuralDay = 72;\r\n _accuralMonth = 61;\r\n break;\r\n case \"2\" :\r\n case \"3\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 1;\r\n break;\r\n case \"4\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 21;\r\n break;\r\n case \"5\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 31;\r\n break;\r\n case \"6\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 41;\r\n break;\r\n case \"7\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 51;\r\n break;\r\n case \"8\" :\r\n _accuralDay = 41;\r\n _accuralMonth = 1;\r\n break;\r\n case \"9\" :\r\n _accuralDay = 61;\r\n _accuralMonth = 1;\r\n break;\r\n case \"10\" :\r\n _accuralDay = 61;\r\n _accuralMonth = 1;\r\n break;\r\n }\r\n\r\n this.customizePolicyForm.patchValue({\r\n AccuralDay: _accuralDay,\r\n AccuralMonth: _accuralMonth\r\n });\r\n }\r\n\r\n setAccuralDaySelectList(_type) {// Created By A Set values\r\n this.ddlAccuralDaysList = [];\r\n this.ddlAccuralDaysListfield = {value:\"id\", text: \"text\" };\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n case \"3\" :\r\n case \"4\" :\r\n case \"5\" :\r\n case \"6\" :\r\n case \"7\" :\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.ddlAccuralDaysList.push(newOption);\r\n }\r\n break;\r\n case \"8\" :\r\n for (let i = 1; i <= 15; i++) {\r\n let _text = \"\" + i + \" & \" + (i + 15) + \"\";\r\n if (i == 15) {\r\n _text = \"\" + i + \" & Last Day\";\r\n }\r\n let newOption = {\r\n id: i + 40,\r\n text: _text\r\n };\r\n this.ddlAccuralDaysList.push(newOption);\r\n }\r\n break;\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlAccuralDaysList.push({ id: 61, text: \"Sun\" });\r\n this.ddlAccuralDaysList.push({ id: 62, text: \"Mon\" });\r\n this.ddlAccuralDaysList.push({ id: 63, text: \"Tue\" });\r\n this.ddlAccuralDaysList.push({ id: 64, text: \"Wed\" });\r\n this.ddlAccuralDaysList.push({ id: 65, text: \"Thu\" });\r\n this.ddlAccuralDaysList.push({ id: 66, text: \"Fri\" });\r\n this.ddlAccuralDaysList.push({ id: 67, text: \"Sat\" });\r\n break;\r\n }\r\n if (_type != \"8\" && _type != \"9\" && _type != \"10\") {\r\n this.ddlAccuralDaysList.push({ id: 71, text: \"Last Day\" });\r\n this.ddlAccuralDaysList.push({ id: 72, text: \"Policy Date\" });\r\n this.ddlAccuralDaysList.push({ id: 73, text: \"Joining Date\" });\r\n this.ddlAccuralDaysList.push({ id: 74, text: \"Birth Date\" });\r\n }\r\n }\r\n\r\n setAccuralMonthSelectList(_type) {// Created By A Set Values\r\n this.ddlAccuralMonthsList = [];\r\n this.ddlAccuralMonthsListfield = {value:\"value\", text: \"name\" };\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 1, name: \"Jan\" },\r\n { value: 2, name: \"Feb\" },\r\n { value: 3, name: \"Mar\" },\r\n { value: 4, name: \"Apr\" },\r\n { value: 5, name: \"May\" },\r\n { value: 6, name: \"Jun\" },\r\n { value: 7, name: \"Jul\" },\r\n { value: 8, name: \"Aug\" },\r\n { value: 9, name: \"Sep\" },\r\n { value: 10, name: \"Oct\" },\r\n { value: 11, name: \"Nov\" },\r\n { value: 12, name: \"Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"3\" :\r\n case \"8\" :\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlAccuralMonthsList = [];\r\n break;\r\n case \"4\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 21, name: \"Jan & Jul\" },\r\n { value: 22, name: \"Feb & Aug\" },\r\n { value: 23, name: \"Mar & Sep\" },\r\n { value: 24, name: \"Apr & Oct\" },\r\n { value: 25, name: \"May & Nov\" },\r\n { value: 26, name: \"Jun & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"5\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 31, name: \"Jan & May & Sep\" },\r\n { value: 32, name: \"Feb & Jun & Oct\" },\r\n { value: 33, name: \"Mar & Jul & Nov\" },\r\n { value: 34, name: \"Apr & Aug & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"6\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 41, name: \"Jan & Apr & Jul & Oct\" },\r\n { value: 42, name: \"Feb & May & Aug & Nov\" },\r\n { value: 43, name: \"Mar & Jun & Sep & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"7\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 51, name: \"Jan & Mar & May & Jul & Sep & Nov\" },\r\n { value: 52, name: \"Feb & Apr & Jun & Aug & Oct & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n }\r\n }\r\n\r\n onChangeAccuralPeriod(e) {// Created By A On change Accural Period\r\n this.tempLeaveType.AccuralPeriod = e.value;\r\n let _type = this.tempLeaveType.AccuralPeriod.toString();\r\n\r\n this.setAccuralFieldsData(_type);\r\n }\r\n\r\n\r\n // Reset\r\n onChangeIsReset(e) {// Created By A Reset values\r\n this.tempLeaveType.IsReset = !this.tempLeaveType.IsReset;\r\n this.customizePolicyForm.patchValue({\r\n ResetPeriod: 2,\r\n ResetDay: 71,\r\n ResetMonth: 12,\r\n CarryForwardType: 1,\r\n CarryForwardValue: 0,\r\n CarryForwardPercentageUnit: 1,\r\n CarryForwardMaxLimit: null,\r\n EncashmentValue: 0,\r\n EncashmentPercentageUnit: 1,\r\n EncashmentMaxLimit: null\r\n });\r\n\r\n this.tempLeaveType.ResetPeriod = 2;\r\n this.tempLeaveType.ResetDay = 71;\r\n this.tempLeaveType.ResetMonth = 12;\r\n this.tempLeaveType.CarryForwardType = 1;\r\n this.tempLeaveType.CarryForwardPercentageUnit = 1;\r\n this.tempLeaveType.EncashmentPercentageUnit = 1;\r\n\r\n this.setResetFieldsData(this.tempLeaveType.ResetPeriod.toString());\r\n }\r\n\r\n setResetFieldsData(_type) {// Created By A Reset Values\r\n this.setResetDaySelectList(_type);\r\n this.setResetMonthSelectList(_type);\r\n\r\n let _resetDay = 71, _resetMonth = 12;\r\n switch (_type) {\r\n case \"1\" :\r\n _resetDay = 72;\r\n _resetMonth = 61;\r\n break;\r\n case \"2\" :\r\n case \"3\" :\r\n _resetDay = 71;\r\n _resetMonth = 12;\r\n break;\r\n case \"4\" :\r\n _resetDay = 71;\r\n _resetMonth = 26;\r\n break;\r\n case \"5\" :\r\n _resetDay = 71;\r\n _resetMonth = 34;\r\n break;\r\n case \"6\" :\r\n _resetDay = 71;\r\n _resetMonth = 43;\r\n break;\r\n case \"7\" :\r\n _resetDay = 71;\r\n _resetMonth = 52;\r\n break;\r\n case \"8\" :\r\n _resetDay = 55;\r\n _resetMonth = 12;\r\n break;\r\n case \"9\" :\r\n _resetDay = 61;\r\n _resetMonth = 12;\r\n break;\r\n case \"10\" :\r\n _resetDay = 61;\r\n _resetMonth = 12;\r\n break;\r\n }\r\n\r\n this.customizePolicyForm.patchValue({\r\n ResetDay: _resetDay,\r\n ResetMonth: _resetMonth\r\n });\r\n }\r\n\r\n setResetDaySelectList(_type) {// Created By A Reset values\r\n this.ddlResetDaysList = [];\r\n this.ddlResetDaysListfield = {value: \"id\", text: \"text\"};\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n case \"3\" :\r\n case \"4\" :\r\n case \"5\" :\r\n case \"6\" :\r\n case \"7\" :\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.ddlResetDaysList.push(newOption);\r\n }\r\n break;\r\n case \"8\" :\r\n for (let i = 1; i <= 15; i++) {\r\n let _text = \"\" + i + \" & \" + (i + 15) + \"\";\r\n if (i == 15) {\r\n _text = \"\" + i + \" & Last Day\";\r\n }\r\n let newOption = {\r\n id: i + 40,\r\n text: _text\r\n };\r\n this.ddlResetDaysList.push(newOption);\r\n }\r\n break;\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlResetDaysList.push({ id: 61, text: \"Sun\" });\r\n this.ddlResetDaysList.push({ id: 62, text: \"Mon\" });\r\n this.ddlResetDaysList.push({ id: 63, text: \"Tue\" });\r\n this.ddlResetDaysList.push({ id: 64, text: \"Wed\" });\r\n this.ddlResetDaysList.push({ id: 65, text: \"Thu\" });\r\n this.ddlResetDaysList.push({ id: 66, text: \"Fri\" });\r\n this.ddlResetDaysList.push({ id: 67, text: \"Sat\" });\r\n break;\r\n }\r\n if (_type != \"8\" && _type != \"9\" && _type != \"10\") {\r\n this.ddlResetDaysList.push({ id: 71, text: \"Last Day\" });\r\n this.ddlResetDaysList.push({ id: 72, text: \"Policy Date\" });\r\n this.ddlResetDaysList.push({ id: 73, text: \"Joining Date\" });\r\n this.ddlResetDaysList.push({ id: 74, text: \"Birth Date\" });\r\n }\r\n }\r\n\r\n setResetMonthSelectList(_type) {// Created By A Reset values\r\n this.ddlResetMonthsList = [];\r\n this.ddlResetMonthsListfield = {value:\"value\", text: \"name\"};\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n this.ddlResetMonthsList = [\r\n { value: 1, name: \"Jan\" },\r\n { value: 2, name: \"Feb\" },\r\n { value: 3, name: \"Mar\" },\r\n { value: 4, name: \"Apr\" },\r\n { value: 5, name: \"May\" },\r\n { value: 6, name: \"Jun\" },\r\n { value: 7, name: \"Jul\" },\r\n { value: 8, name: \"Aug\" },\r\n { value: 9, name: \"Sep\" },\r\n { value: 10, name: \"Oct\" },\r\n { value: 11, name: \"Nov\" },\r\n { value: 12, name: \"Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"3\" :\r\n case \"8\" :\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlResetMonthsList = [];\r\n break;\r\n case \"4\" :\r\n this.ddlResetMonthsList = [\r\n { value: 21, name: \"Jan & Jul\" },\r\n { value: 22, name: \"Feb & Aug\" },\r\n { value: 23, name: \"Mar & Sep\" },\r\n { value: 24, name: \"Apr & Oct\" },\r\n { value: 25, name: \"May & Nov\" },\r\n { value: 26, name: \"Jun & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"5\" :\r\n this.ddlResetMonthsList = [\r\n { value: 31, name: \"Jan & May & Sep\" },\r\n { value: 32, name: \"Feb & Jun & Oct\" },\r\n { value: 33, name: \"Mar & Jul & Nov\" },\r\n { value: 34, name: \"Apr & Aug & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"6\" :\r\n this.ddlResetMonthsList = [\r\n { value: 41, name: \"Jan & Apr & Jul & Oct\" },\r\n { value: 42, name: \"Feb & May & Aug & Nov\" },\r\n { value: 43, name: \"Mar & Jun & Sep & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"7\" :\r\n this.ddlResetMonthsList = [\r\n { value: 51, name: \"Jan & Mar & May & Jul & Sep & Nov\" },\r\n { value: 52, name: \"Feb & Apr & Jun & Aug & Oct & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n }\r\n }\r\n\r\n onChangeCarryForwardType(e) {// Created By A On change carry forward type\r\n this.tempLeaveType.CarryForwardType = e.value;\r\n\r\n this.customizePolicyForm.patchValue({\r\n CarryForwardExpiresIn: null,\r\n CarryForwardExpiresInType: null,\r\n CarryForwardOverallLimit: null\r\n });\r\n\r\n if (this.tempLeaveType.CarryForwardType == 2) {\r\n this.customizePolicyForm.patchValue({\r\n CarryForwardExpiresIn: null,\r\n CarryForwardExpiresInType: 1,\r\n CarryForwardOverallLimit: null\r\n });\r\n }\r\n }\r\n onChangeResetPeriod(e) {// Created By A Set value\r\n this.tempLeaveType.ResetPeriod = e.value;\r\n let _type = this.tempLeaveType.ResetPeriod.toString();\r\n\r\n this.setResetFieldsData(_type);\r\n }\r\n onChangeCarryForwardPercentageUnit(e) {// Created By A Set value\r\n this.tempLeaveType.CarryForwardPercentageUnit = e.value;\r\n }\r\n onChangeEncashmentPercentageUnit(e) {// Created By A Set value\r\n this.tempLeaveType.EncashmentPercentageUnit = e.value;\r\n }\r\n // End of Entitlement (Accural, Reset) Related\r\n\r\n // Entitlement Popup Related\r\n openEntitlementCalendarPopup() {// Created By A Open modal\r\n this._commonSer.OpenModalHandler('manageEntitlementCalendar');\r\n }\r\n createEntitlementCalendarData() {// Created By A Initialize entitlement calendar months\r\n let entitlementsList = [];\r\n for (let i = 1; i <= 12; i++) {\r\n let _month = \"\";\r\n switch (i) {\r\n case 1:\r\n _month = \"Jan\";\r\n break;\r\n case 2:\r\n _month = \"Feb\";\r\n break;\r\n case 3:\r\n _month = \"Mar\";\r\n break;\r\n case 4:\r\n _month = \"Apr\";\r\n break;\r\n case 5:\r\n _month = \"May\";\r\n break;\r\n case 6:\r\n _month = \"Jun\";\r\n break;\r\n case 7:\r\n _month = \"Jul\";\r\n break;\r\n case 8:\r\n _month = \"Aug\";\r\n break;\r\n case 9:\r\n _month = \"Sep\";\r\n break;\r\n case 10:\r\n _month = \"Oct\";\r\n break;\r\n case 11:\r\n _month = \"Nov\";\r\n break;\r\n case 12:\r\n _month = \"Dec\";\r\n break;\r\n }\r\n entitlementsList.push({ LeavePolicyEntitlementCalendarId: 0, LeaveTypeId: 0, Month: i, MonthText: _month, Count: 0 });\r\n }\r\n\r\n // this.leaveTypeForm.patchValue({\r\n // EntitlementCalendarList: entitlementsList\r\n // });\r\n this.tempLeaveType.EntitlementCalendarList = entitlementsList;\r\n }\r\n setEntitlementCalendarData(list) {// Created By A Initialize entitlement calendar data\r\n let entitlementsList = [];\r\n for (let i = 0; i < list.length; i++) {\r\n let _newItem = {\r\n EmployeeLeavePolicyEntitlementCalendarId: list[i].employeeLeavePolicyEntitlementCalendarId,\r\n EmployeeId: list[i].employeeId,\r\n LeaveTypeId: list[i].leaveTypeId,\r\n Month: list[i].month,\r\n MonthText: list[i].monthText,\r\n Count: list[i].count\r\n };\r\n entitlementsList.push(_newItem);\r\n }\r\n this.tempLeaveType.EntitlementCalendarList = entitlementsList;\r\n }\r\n\r\n onchangeAccuralNoOfDays(e) {// Created By A On change accural no of days\r\n let _value = e.target.value;\r\n for (let i = 0; i < this.tempLeaveType.EntitlementCalendarList.length; i++) {\r\n this.tempLeaveType.EntitlementCalendarList[i].Count = _value;\r\n }\r\n }\r\n // End of Entitlement Popup Related\r\n\r\n // Entitlement More Options\r\n\r\n setMoreOptionData(_type, isEnable) {// Created By A Global Controller for more options fields update\r\n switch (_type) {\r\n case \"OpeningBalance\" :\r\n this.IsOpeningBalanceEnable = isEnable;\r\n this.customizePolicyForm.patchValue({\r\n IsOpeningBalanceEnable: isEnable,\r\n OpeningBalance: 0\r\n });\r\n break;\r\n case \"MaximumBalance\" :\r\n this.IsMaximumBalanceEnable = isEnable;\r\n this.customizePolicyForm.patchValue({\r\n IsMaximumBalanceEnable: isEnable,\r\n MaximumBalance: 0\r\n });\r\n break;\r\n case \"ProrateAccural\" :\r\n this.IsProrateAccuralEnable = isEnable;\r\n this.customizePolicyForm.patchValue({\r\n IsProrateAccuralEnable: isEnable,\r\n ProrateAccuralType: 1\r\n });\r\n break;\r\n case \"DeductibleHolidays\" :\r\n this.IsDeductibleHolidaysEnable = isEnable;\r\n this.customizePolicyForm.patchValue({\r\n IsDeductibleHolidaysEnable: isEnable,\r\n DeductibleHolidays: 1\r\n });\r\n break;\r\n }\r\n }\r\n\r\n // End of Entitlement More Options\r\n\r\n // Prorate Accural Popup Related\r\n setprorateAccuralTypeValue(e) {// Created By A set type list\r\n let _value = e.value;\r\n if (_value.toString() == '0: 1') {\r\n this.prorateAccuralType = \"1\";\r\n } else if (_value.toString() == '1: 2') {\r\n this.prorateAccuralType = \"2\";\r\n } else if (_value.toString() == '2: 3') {\r\n this.prorateAccuralType = \"3\";\r\n }\r\n }\r\n\r\n setProrateAccuralDaySelectList() {// Created By A Set prorate accural days list\r\n this.prorateAccuralDayList = [];\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.prorateAccuralDayList.push(newOption);\r\n }\r\n }\r\n openProrateAccuralModal() {// Created By A Open Modal\r\n let vm = this;\r\n let leaveTypeId = this.customizePolicyForm.controls.LeaveTypeId.value;\r\n let employeeId = this.customizePolicyForm.controls.EmployeeId.value;\r\n\r\n vm.setProrateAccuralDaySelectList();\r\n vm._commonSer.OpenModalHandler(\"manageProrateAccuralModal\");\r\n }\r\n\r\n addFirstMonthRule() {// Created By A add first month rule\r\n let newRule = {\r\n employeeLeavePolicyPAFMId: 0,\r\n employeeId: this.prorateAccural.employeeId,\r\n leaveTypeId: this.prorateAccural.leaveTypeId,\r\n from: null,\r\n to: null,\r\n count: null\r\n };\r\n this.duplicateFirstMonthRuleFrom.push(\"true\");\r\n this.duplicateFirstMonthRuleTo.push(\"true\");\r\n this.prorateAccural.prorateAccuralFirstMonthList.push(newRule);\r\n }\r\n addLastMonthRule() {// Created By A Add Last month rule\r\n let newRule = {\r\n employeeLeavePolicyPALMId: 0,\r\n employeeId: this.prorateAccural.employeeId,\r\n leaveTypeId: this.prorateAccural.leaveTypeId,\r\n from: null,\r\n to: null,\r\n count: null\r\n };\r\n this.duplicateLastMonthRuleFrom.push(\"true\");\r\n this.duplicateLastMonthRuleTo.push(\"true\");\r\n this.prorateAccural.prorateAccuralLastMonthList.push(newRule);\r\n }\r\n\r\n duplicateFirstMonthRuleFrom = [];\r\n duplicateFirstMonthRuleTo = [];\r\n onFirstRuleFromSelected(e, i, _value) {// Created By A On select from --from rule\r\n let count1 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 1 || count2 > 0) {\r\n this.duplicateFirstMonthRuleFrom[i] = \"false\";\r\n } else {\r\n this.duplicateFirstMonthRuleFrom[i] = \"true\";\r\n }\r\n }\r\n\r\n onFirstRuleToSelected(e, i, _value) {// Created By A On select To --first rule\r\n let count1 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 0 || count2 > 1) {\r\n this.duplicateFirstMonthRuleTo[i] = \"false\";\r\n } else {\r\n this.duplicateFirstMonthRuleTo[i] = \"true\";\r\n }\r\n }\r\n\r\n duplicateLastMonthRuleFrom = [];\r\n duplicateLastMonthRuleTo = [];\r\n onLastRuleFromSelected(e, i, _value) {// Created By A Onselect from --last rule\r\n let count1 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.from == e.target.value).length;\r\n let count2 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.to == e.target.value).length;\r\n if (count1 > 1 || count2 > 0) {\r\n this.duplicateLastMonthRuleFrom[i] = \"false\";\r\n } else {\r\n this.duplicateLastMonthRuleFrom[i] = \"true\";\r\n }\r\n }\r\n onLastRuleToSelected(e, i, _value) {// Created By A On select to --last rule\r\n let count1 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 0 || count2 > 1) {\r\n this.duplicateLastMonthRuleTo[i] = \"false\";\r\n } else {\r\n this.duplicateLastMonthRuleTo[i] = \"true\";\r\n }\r\n }\r\n\r\n saveProrateAccural() {// Created By A Initialize Save Prorate Accural\r\n const vm = this;\r\n if (vm.duplicateFirstMonthRuleFrom.includes(\"false\") ||\r\n vm.duplicateFirstMonthRuleTo.includes(\"false\") ||\r\n vm.duplicateLastMonthRuleFrom.includes(\"false\") ||\r\n vm.duplicateLastMonthRuleTo.includes(\"false\")) {\r\n return;\r\n }\r\n\r\n this.customizePolicyForm.patchValue({\r\n ProrateBy: vm.prorateAccural.prorateBy,\r\n IsRoundOff: vm.prorateAccural.isRoundOff,\r\n RoundOffToValue: vm.prorateAccural.roundOffToValue,\r\n RoundOffToType: vm.prorateAccural.roundOffToType,\r\n ProrateAccuralFMList: vm.prorateAccural.prorateAccuralFirstMonthList,\r\n ProrateAccuralLMList: vm.prorateAccural.prorateAccuralLastMonthList\r\n });\r\n\r\n console.log(this.customizePolicyForm.value);\r\n vm._commonSer.CloseModalHandler('manageProrateAccuralModal');\r\n }\r\n // End of Prorate Accural Popup Related\r\n\r\n // Export\r\n ExportSelectedEmployeeHistory() { // Created By A Export Employee leaves history\r\n if (this.startDate != null && this.endDate != null) {\r\n this.userLoader = true;\r\n let startDate = this.getCSharpFormattedDate(this.startDate);\r\n let endDate = this.getCSharpFormattedDate(this.endDate);\r\n let parms = {\r\n EmployeeId: this.ddlEmployeeId,\r\n LeaveTypeId: this.selectedLeaveTypeID,\r\n StartDate: startDate,\r\n EndDate: endDate,\r\n CmpCode:this.CmpCode,\r\n };\r\n\r\n let empNameCode = \"\";\r\n const currentEmp = this.totalEmployeeList.find(x => x.employeeId == this.ddlEmployeeId);\r\n if (currentEmp !== undefined && currentEmp != null) {\r\n empNameCode = currentEmp.employeeCodeName;\r\n }\r\n\r\n this._leaveSer.exportEmployeeLeaveHistory(parms).subscribe(res => {\r\n let exportData = res['data'];\r\n\r\n //const headers = [response.headerstring];//['Name', 'ShortDescription', 'Description', 'CustomerName', 'ProjectType', 'ProjectSource', 'Office', 'PlannedStartDate', 'ActualStartDate', 'PlannedEndDate', 'ActualEndDate', 'PaymentMode', 'ProjectManagerFirstName', 'ProjectManagerMiddleName', 'ProjectManagerLastName', 'SalesPersonFirstName', 'SalesPersonMiddleName', 'SalesPersonLastName', 'ContactPersonFirstName', 'ContactPersonMiddleName', 'ContactPersonLastName', 'WorkingDays', 'InActive', 'IsDeleted'];\r\n this._commonSer.exportAsExcelFile(exportData, 'LeaveTransaction_' + empNameCode);\r\n this.userLoader = false;\r\n });\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n
    \r\n

    General Settings

    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Holidays/ Weekend Settings

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Compensatory Requests

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n 1 ✕  \r\n \r\n (i.e) 1 day(s) ✕ 1 = 1 day(s), 3 hour(s) ✕ 1 = 3.00 hour(s) \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n 1 ✕  \r\n \r\n (i.e) 1 day(s) ✕ 1 = 1 day(s), 3 hour(s) ✕ 1 = 3.00 hour(s) \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n  \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n       \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n \r\n \r\n
    \r\n\r\n
    \r\n Reminder email sent at\r\n
    \r\n
    \r\n \r\n
    \r\n
     
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n Reminder email sent at every \r\n
    \r\n
    \r\n \r\n  \r\n \r\n from the requested date till the compoff expiry date.\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n Email Template Name\r\n
    \r\n
    \r\n Comp off Expiry Date Reminder   Edit\r\n    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n  \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n  \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Permissions

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Payroll Report Settings

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n \r\n \r\n \r\n       \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    LOP Report Settings

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n   day(s)\r\n    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Export Settings

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Leave Cancellation

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport * as _ from 'lodash';\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-generalsettings',\r\n templateUrl: './generalsettings.component.html',\r\n styleUrls: ['./generalsettings.component.css']\r\n})\r\nexport class GeneralsettingsComponent implements OnInit {\r\n currentUser: any;\r\n userLoader = false;\r\n\r\n public showMessage: string;\r\n public showSuccess: Boolean;\r\n\r\n ViewPermission: boolean;\r\n EditPermission: boolean;\r\n\r\n generalSettingsData: any;\r\n\r\n tempapplicableForLeaveType: any;\r\n public applicableForLeaveType = [];\r\n\r\n applicableForList: any;\r\n compensatoryRequestList: any;\r\n dayMonthList: any;\r\n unitList: any;\r\n CompoffLimitDaysList: any;\r\n useravailabilityReportAccess: any;\r\n CmpCode:any;\r\n ReminderDaysList: any;\r\n constructor(\r\n private _leaveServ: LeaveService,\r\n private _authSer: AuthService,\r\n private commonService: CommonService,\r\n private toasterService:ToasterService\r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n }\r\n\r\n ngOnInit() {// Angular lifecycle hook\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.currentUser = res;\r\n this.ViewPermission = true; //this.currentUser.permission.includes(Permission.MoMView);\r\n this.EditPermission = true; //this.currentUser.permission.includes(Permission.MoMEdit);\r\n\r\n // Call after getting current userId\r\n this.setDefault();\r\n });\r\n }\r\n\r\n setDefault() {// Created By K Set Default values\r\n let vm = this;\r\n //vm.applicableForList = [{ 'id': 1, 'text': 'Every 1st Day of the month' }];\r\n vm.compensatoryRequestList = [{ 'id': 1, 'text': 'None' }, { 'id': 2, 'text': 'Manual' }, { 'id': 3, 'text': 'Automatic' }, { 'id': 4, 'text': 'Both' }];\r\n vm.dayMonthList = [{ 'id': 1, 'text': 'Day(s)' }, { 'id': 2, 'text': 'Month(s)' }];\r\n vm.CompoffLimitDaysList = [{ 'id': 1, 'text': 'Day(s)' }, { 'id': 2, 'text': 'Month(s)' }, { 'id': 3, 'text': 'Year(s)' }];\r\n vm.ReminderDaysList = [{ 'id': \"1\", 'text': 'Day(s)' }, { 'id': \"2\", 'text': 'Month(s)' }];\r\n vm.unitList = [{ 'id': 1, 'text': 'Day' }, { 'id': 2, 'text': 'Hour' }, { 'id': 3, 'text': 'Both' }];\r\n vm.useravailabilityReportAccess = [{ 'id': 1, 'text': 'All data to admin' }, { 'id': 2, 'text': 'Department data to department head' }, { 'id': 3, 'text': 'Department data to department member' }, { 'id': 4, 'text': 'All data to all users' }];\r\n vm.getLeaveTypes();\r\n vm.getGeneralSettings();\r\n }\r\n\r\n getLeaveTypes() {// Created By A Getting all leave type\r\n this.userLoader = true;\r\n this.applicableForList = [];\r\n this._leaveServ.getAllLeavetype(this.CmpCode).subscribe((res) => {\r\n let leaveTypeList = res[\"data\"].table;\r\n console.clear();\r\n console.log(leaveTypeList);\r\n this.userLoader = false;\r\n let templeaveTypeListForSelect = [];\r\n\r\n leaveTypeList.forEach(function (item) {\r\n if (item.unit === 1) {\r\n let _lType = { 'id': item.leaveTypeId, 'text': item.leaveTypeName };\r\n templeaveTypeListForSelect.push(_lType);\r\n }\r\n });\r\n this.applicableForList = templeaveTypeListForSelect;\r\n if (this.generalSettingsData != null && this.generalSettingsData != undefined) {\r\n this.bindNGSelectList('applicableFor', this.generalSettingsData.applicableFor);\r\n }\r\n });\r\n }\r\n\r\n\r\n getGeneralSettings() {// Created By A Getting leave general settings data\r\n const vm = this;\r\n vm.userLoader = true;\r\n this._leaveServ.getGeneralSettings(this.CmpCode).subscribe((res) => {\r\n vm.userLoader = false;\r\n vm.generalSettingsData = res[\"data\"];\r\n\r\n vm.bindNGSelectList('applicableFor', vm.generalSettingsData.applicableFor);\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n showEmailSchedule = false\r\n ScheduleEmail(val){// Created By A set value\r\n this.showEmailSchedule = val\r\n\r\n }\r\n\r\n // Save Settings\r\n saveGeneralSettings() {// Created By A On save leave general settings\r\n debugger\r\n const vm = this;\r\n vm.userLoader = true;\r\n vm.generalSettingsData.applicableFor = \"\";\r\n let tempapplicableFor = \"\";\r\n vm.applicableForLeaveType.forEach(function (id) {\r\n tempapplicableFor = tempapplicableFor + id + \",\";\r\n });\r\n if (tempapplicableFor.length > 1) {\r\n tempapplicableFor = tempapplicableFor.slice(0, -1);\r\n }\r\n vm.generalSettingsData.cmpCode=this.CmpCode\r\n vm.generalSettingsData.applicableFor = tempapplicableFor;\r\n vm.generalSettingsData.leaveRequestsUntiltheNext\r\n\r\n this._leaveServ.saveGeneralSettings(vm.generalSettingsData).subscribe((data: any) => {\r\n vm.userLoader = false;\r\n if (data && data.success == true) {\r\n vm.showMessage = data.data;\r\n vm.showSuccess = true;\r\n this.toasterService.show('success',this.showMessage)\r\n // vm.commonService.OpenModalHandler('userMessageModel');\r\n } else {\r\n console.log(data);\r\n }\r\n }, error => {\r\n vm.userLoader = false;\r\n });\r\n }\r\n\r\n selectDropdownValue(_type, value) {// Created By A On select applicable for\r\n switch (_type) {\r\n case 'applicableFor':\r\n if (this.applicableForLeaveType.includes(value.id.toString()) === false) {\r\n this.applicableForLeaveType.push(value.id.toString());\r\n }\r\n console.log(this.applicableForLeaveType);\r\n break;\r\n }\r\n }\r\n\r\n removedDropdownValue(_type, value) {// Created By A On clear applicable for\r\n let _index = -1;\r\n switch (_type) {\r\n case 'applicableFor':\r\n _index = this.applicableForLeaveType.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableForLeaveType.splice(_index, 1);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n bindNGSelectList(_type, _list) {// Created By A Binding applicable for\r\n const vm = this;\r\n switch (_type) {\r\n case 'applicableFor' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.applicableForList;\r\n let selectedData = [];\r\n this.applicableForLeaveType = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n vm.applicableForLeaveType = list;\r\n vm.generalSettingsData.applicableFor = selectedData;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n setUnitValue(e) {// Created By K On submit unit value\r\n let _value = e.srcElement.value;\r\n if (_value == 2) {\r\n this.generalSettingsData.durationAllowedFullDay = false;\r\n this.generalSettingsData.durationAllowedHalfDay = false;\r\n this.generalSettingsData.durationAllowedQuarterDay = false;\r\n } else {\r\n this.generalSettingsData.durationAllowedFullDay = true;\r\n this.generalSettingsData.durationAllowedHalfDay = true;\r\n this.generalSettingsData.durationAllowedQuarterDay = true;\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    Custom Leave Type

    \r\n
    \r\n
    \r\n
      \r\n
    • Total : {{myRequestsListLength}}
    • \r\n
    • Active : {{ActiveLength}}
    • \r\n\r\n
    • In- Active : {{InActiveLength}}
    • \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n    \r\n \r\n\r\n \r\n\r\n \r\n\r\n
    \r\n\r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n Day\r\n Hours\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ leaveType.leaveTypeName }}\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n
    \r\n \r\n
      \r\n
    • \r\n View\r\n
    • \r\n\r\n
    • Edit\r\n
    • \r\n\r\n
    • \r\n Delete\r\n
    • \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{HeaderActionMsg}} Leave Type

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n Leave Type Name is required\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n Type is required\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n Unit is required\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n \r\n\r\n
    \r\n Effective date is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n \r\n\r\n
    \r\n Validity To is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
      \r\n
    • \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n\r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
      \r\n
    • Add Opening Balance
    • \r\n
    • Set Maximum Balance
    • \r\n
    • Prorate Accrual
    • \r\n
    • Deductible Holidays
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
      \r\n
    • User Type\r\n
    • \r\n
    • User Engagement Type\r\n
    • \r\n
    • Job Band
    • \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n  \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n     \r\n\r\n \r\n \r\n     \r\n\r\n \r\n \r\n     \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n / \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n
    Employee NameStart DateEnd DateAction
    \r\n {{ field.employeeName }}\r\n \r\n {{ field.fromDate | date: \"MM-dd-yyyy\" }}\r\n \r\n {{ field.toDate | date: \"MM-dd-yyyy\" }}\r\n \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Entitlement Calendar\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n

    Prorate Accrual

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n       \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    FromToCount
    \r\n {{i + 1}}\r\n \r\n \r\n \r\n Invalid selection.\r\n
    \r\n
    From is required
    \r\n
    \r\n
    \r\n \r\n Invalid selection.\r\n
    \r\n
    To is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    Count is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    FromToCount
    \r\n {{i + 1}}\r\n \r\n \r\n \r\n Invalid selection.\r\n
    \r\n
    From is required
    \r\n
    \r\n
    \r\n \r\n Invalid selection.\r\n
    \r\n
    To is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    Count is required
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    {{showMessage}}

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Filters
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n HostListener,\r\n ElementRef,\r\n ViewChildren,\r\n QueryList,\r\n ViewChild\r\n} from \"@angular/core\";\r\n\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { BsDatepickerConfig } from \"ngx-bootstrap\";\r\nimport { LeaveTypeModel } from \"../../leave-model/leave-type\";\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { UserService } from \"src/app/user/user.service\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { connectableObservableDescriptor } from \"rxjs/internal/observable/ConnectableObservable\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { GridComponent } from \"@syncfusion/ej2-angular-grids\";\r\nimport { ToasterService } from \"src/app/+layout/expense/toaster/toaster.service\";\r\n\r\nclass LeaveTypeData {\r\n LeaveTypeId: number;\r\n LType: number;\r\n Unit: number;\r\n ImagePath: string;\r\n IsAccural: Boolean;\r\n AccuralPeriod: number;\r\n AccuralDay: number;\r\n AccuralMonth: number;\r\n AccuralNoOfDays: number;\r\n AccuralDaysInPeriod: number;\r\n IsReset: Boolean;\r\n ResetPeriod: number;\r\n ResetDay: number;\r\n ResetMonth: number;\r\n CarryForwardType: number;\r\n CarryForwardPercentageUnit: number;\r\n EncashmentPercentageUnit: number;\r\n CanCountAsLeaveInWeekendBetweenLeave: Boolean;\r\n CanCountAsHolidayInWeekendBetweenLeave: Boolean;\r\n EntitlementCalendarList: any;\r\n}\r\n\r\n@Component({\r\n selector: \"app-leave-type\",\r\n templateUrl: \"./leave-type.component.html\",\r\n styleUrls: [\"./leave-type.component.css\"],\r\n})\r\nexport class LeaveTypeComponent implements OnInit {\r\n public text: String;\r\n\r\n private wasInside = false;\r\n fieldEmpArray = []\r\n\r\n @Input() makeDifferent;\r\n\r\n // @HostListener('click')\r\n // clickInside() {\r\n // this.text = \"clicked inside\";\r\n // this.wasInside = true;\r\n // this.flterShowData = true\r\n // }\r\n\r\n // @HostListener('document:click')\r\n // clickout() {\r\n // if (!this.wasInside) {\r\n // this.text = \"clicked outside\";\r\n // this.flterShowData = false\r\n // }\r\n // this.wasInside = false;\r\n // }\r\n datePickerConfiq: Partial;\r\n allLeaveTypeList = [];\r\n userLoader: boolean;\r\n leaveTypeForm: FormGroup;\r\n showSuccess: any;\r\n showMessage: any;\r\n editMode = false;\r\n viewMode = false;\r\n NeweditMode = true;\r\n NewviewMode = true;\r\n flterShowData = false;\r\n // DropDown List Data of Leave Type For selection start\r\n dropdownList = [];\r\n selectedItems = [];\r\n dropdownSettings = {};\r\n\r\n effictiveYears = [\r\n { name: \"Day(s)\", value: 3 },\r\n { name: \"Month(s)\", value: 2 },\r\n { name: \"Year(s)\", value: 1 },\r\n \r\n ];\r\n effictiveYearsfield = {value:\"value\", text: \"name\" }\r\n\r\n ProrateAccuralTypedata = [\r\n { name: \"Start of Policy\", value: 1 },\r\n { name: \"Start and End of Policy\", value: 2 },\r\n { name: \"Do not Prorate\", value: 3 },\r\n ];\r\n ProrateAccuralTypefield = {value:\"value\", text: \"name\" }\r\n\r\n DeductibleHolidaysdata = [\r\n { name: \"All Holidays\", value: 1 },\r\n { name: \"Holidays on Workdays\", value: 2 },\r\n ];\r\n DeductibleHolidaysfield = {value:\"value\", text: \"name\" }\r\n\r\n EncashmentPercentageUnitdata = [\r\n { name: \"Percentage\", value: 1 },\r\n { name: \"Unit(s)\", value: 2 },\r\n ];\r\n EncashmentPercentageUnitfield = {value:\"value\", text: \"name\" }\r\n\r\n CarryForwardType = [\r\n { name: \"Carry Forward\", value: 1 },\r\n { name: \"Carry Forward With Expiry\", value: 2 },\r\n { name: \"Carry Forward With Overall Limit\", value: 3 }\r\n ];\r\n CarryForwardTypefield = {value:\"value\", text: \"name\" }\r\n\r\n CarryForwardPercentage = [\r\n { name: \"Percentage\", value: 1 },\r\n { name: \"Unit(s)\", value: 2 },\r\n ];\r\n CarryForwardPercentagefield = {value:\"value\", text: \"name\" }\r\n\r\n CarryForwardExpiresin = [\r\n { name: \"Month(s)\", value: 1 },\r\n { name: \"Day(s)\", value: 2 },\r\n ];\r\n CarryForwardExpiresinfield = {value:\"value\", text: \"name\" }\r\n\r\n AccuralDaysInPeriod = [\r\n { name: \"Current Accrual\", value: 1 },\r\n { name: \"Next Accrual\", value: 2 },\r\n ];\r\n AccuralDaysInPeriodfield = {value:\"value\", text: \"name\" }\r\n\r\n effictiveAfterfrom = [\r\n { name: \"Date of Joining\", value: 1 },\r\n { name: \"Date of Confirmation\", value: 2 }\r\n \r\n ];\r\n effictiveAfterfromfield = {value:\"value\", text: \"name\" }\r\n\r\n AccuralPeriod = [\r\n { name: \"One Time\", value: 1 },\r\n { name: \"Yearly\", value: 2 },\r\n { name: \"Monthly\", value: 3 },\r\n { name: \"Half Yearly\", value: 4 },\r\n { name: \"Triannually\", value: 5 },\r\n { name: \"Quarterly\", value: 6 },\r\n { name: \"Bi-Monthly\", value: 7 },\r\n { name: \"Semi Monthly\", value: 8 },\r\n { name: \"Bi-Weekly\", value: 9 },\r\n { name: \"Weekly\", value: 10 },\r\n ];\r\n AccuralPeriodfield = {value:\"value\", text: \"name\" }\r\n \r\n\r\n ResetPeriod = [\r\n { name: \"One Time\", value: 1 },\r\n { name: \"Yearly\", value: 2 },\r\n { name: \"Monthly\", value: 3 },\r\n { name: \"Half Yearly\", value: 4 },\r\n { name: \"Triannually\", value: 5 },\r\n { name: \"Quarterly\", value: 6 },\r\n { name: \"Bi-Monthly\", value: 7 },\r\n { name: \"Semi Monthly\", value: 8 },\r\n { name: \"Bi-Weekly\", value: 9 },\r\n { name: \"Weekly\", value: 10 },\r\n ];\r\n ResetPeriodfield = {value:\"value\", text: \"name\" }\r\n\r\n AllowUserstToView = [\r\n { name: \"Complete Leave Summary\", value: 1 },\r\n { name: \"Leave Taken Alone\", value: 2 },\r\n { name: \"Simple Leave Summary\", value: 3 },\r\n ];\r\n\r\n AllowUserstToViewfield = { value: \"value\", text: \"name\" }\r\n\r\n BalanceToBedisplayed = [\r\n { name: \"Current Balance\", value: 1 },\r\n { name: \"Accural Period Balance\", value: 2 },\r\n ];\r\n BalanceToBedisplayedfield = { value: \"value\", text: \"name\" }\r\n\r\n Week = [\r\n { name: \"Week\", value: 1 },\r\n { name: \"Month\", value: 2 },\r\n { name: \"Year\", value: 3 },\r\n { name: \"Accrual Period\", value: 4 },\r\n { name: \"Job Tenure\", value: 5 },\r\n ];\r\n Weekfield = { value: \"value\", text: \"name\" }\r\n\r\n minDate: any;\r\n startDate: any;\r\n endDate: any;\r\n public RoleItemList: any;\r\n AccuralDayList = [];\r\n itemList = [];\r\n // selectedItems = [];\r\n settings = {};\r\n MonthList = [\r\n { value: 1, name: \"Jan\" },\r\n { value: 2, name: \"Feb\" },\r\n { value: 3, name: \"Mar\" },\r\n { value: 4, name: \"April\" },\r\n { value: 5, name: \"May\" },\r\n { value: 6, name: \"Jun\" },\r\n { value: 7, name: \"Jul\" },\r\n { value: 8, name: \"Aug\" },\r\n { value: 9, name: \"Sep\" },\r\n { value: 10, name: \"Oct\" },\r\n { value: 11, name: \"Nov\" },\r\n { value: 12, name: \"Dec\" },\r\n // Extra values\r\n { value: 20, name: \"Policy Month\" },\r\n { value: 21, name: \"Joining Month\" },\r\n { value: 22, name: \"Birth Month\" }\r\n ];\r\n RoleCollection: any[];\r\n DepartmentCollection: any[];\r\n\r\n public RoleDeleteCollection: Array = [];\r\n\r\n public activeRoleList: Array = [];\r\n dayHrFilterValue: any;\r\n allEmployeeList: any;\r\n allDepartmentList: any;\r\n allLocationList: any;\r\n allDesigationList: any;\r\n departmentSelectValue = null;\r\n statusSelectValue = true;\r\n employeeSelectedValue = null;\r\n locationSelectedValue = null;\r\n desigationSelectedValue = null;\r\n roleSelectedValue = null;\r\n // DropDown List Data of Leave Type For selection end\r\n myRequestsListLength: any;\r\n myRequestsPage = 1;\r\n myRequestsPageSize = 10;\r\n submitted: Boolean = false;\r\n allRolesList: any;\r\n\r\n //radio buttons values\r\n canExceedLeaveBalance = false;\r\n\r\n // check Box var\r\n IsAccuralChange = false;\r\n isResetChange = false;\r\n isProPrateChange = false;\r\n isRequestAllowFor = false;\r\n isFuturesDate = false;\r\n isMinimumApplied = false;\r\n\r\n isMAximumConsectiveHoursAllow = false;\r\n isMinimumGapInDay = false;\r\n isMaximumAppliedLeaved = false;\r\n isEditMode = false;\r\n IsExceedLeaveChange = false;\r\n dontExceedLeaveChange = false;\r\n enableFileUploadOption = false;\r\n\r\n LeaveTypeUnit = 1;\r\n selectedType = null;\r\n selectedEfficetiveHours = null;\r\n selectEfficetiveFrom = null;\r\n selectedExceedLeaveAllow = true;\r\n todatlEmployeeList: any;\r\n employeName: any;\r\n employeCode: any;\r\n ActiveEmployee: any[];\r\n ddlEmployeeUserId: any;\r\n EmployeeList: any[];\r\n currentUserId: any;\r\n DepartmentList: any[];\r\n ActiveDepartment: any[];\r\n LocationList: any[];\r\n todatlLocationList: any;\r\n ActiveLocation: any[];\r\n ActiveDesigation: any[];\r\n DesigationList: any[];\r\n ActiveRoles: any[];\r\n RolesList: any[];\r\n ddlRolesId: any;\r\n ddlDepartmentId: any;\r\n ddlLocationId: any;\r\n ddlDesigationId: any;\r\n DesigationCollection: any[];\r\n LocationCollection: any[];\r\n EmployeeCollection: any[];\r\n appliedLeaveList: any;\r\n AppliedList: any[];\r\n AppliedLeaveCollection: any[];\r\n IsDelete: boolean;\r\n deleteId: any;\r\n\r\n // Applicable Add Field related Data\r\n EmployeeTypesList: any[];\r\n SourceOfHireList: any[];\r\n JobBandsList: any[];\r\n OnboardingStatusList: any[];\r\n\r\n IsEmployeeTypes: boolean = false;\r\n IsSourceOfHire: boolean = false;\r\n IsJobBands: boolean = false;\r\n IsOnboardingStatus: boolean = false;\r\n\r\n HeaderActionMsg = environment.AddButton_text;\r\n LeaveTypeCollection: any[];\r\n LeaveTypeList: any[];\r\n ActiveLeaveType: any[];\r\n getdepratmentValue: any[];\r\n\r\n // For Filters\r\n filterStatus: any;\r\n filterDepartmentId: any;\r\n filterDesignationId: any;\r\n filterLocationId: any;\r\n filterRoleId: any;\r\n filterEmployeeId: any;\r\n\r\n private isClickOutside = false;\r\n\r\n // Applicable DDL Lists\r\n public applicableDDLDepartmentList = [];\r\n public applicableDDLDesigationList = [];\r\n public applicableDDLLocationList = [];\r\n public applicableDDLRoleList = [];\r\n\r\n // Exception DDL Lists\r\n public exceptionDDLDepartmentList = [];\r\n public exceptionDDLDesigationList = [];\r\n public exceptionDDLLocationList = [];\r\n public exceptionDDLRoleList = [];\r\n\r\n // Multi select dropdowns temp data\r\n public applicableDepartmentList = [];\r\n public applicableDesigationList = [];\r\n public applicableLocationList = [];\r\n public applicableRoleList = [];\r\n\r\n public applicableEmployeeTypesList = [];\r\n public applicableSourceOfHireList = [];\r\n public applicableJobBandsList = [];\r\n public applicableOnboardingStatusList = [];\r\n\r\n public applicableEmployeeList = [];\r\n\r\n public exceptionDepartmentList = [];\r\n public exceptionDesigationList = [];\r\n public exceptionLocationList = [];\r\n public exceptionRoleList = [];\r\n\r\n public canAppliedOnlyOnList = [];\r\n public cannotTakenTogetherWithList = [];\r\n selectedFile: any;\r\n\r\n uploadedFile: File;\r\n uploadedFileByteData: any;\r\n\r\n // New DropdownLists\r\n ddlAccuralDaysList = [];\r\n ddlAccuralMonthsList = [];\r\n\r\n ddlResetDaysList = [];\r\n ddlResetMonthsList = [];\r\n\r\n\r\n // Entitlements More Options Related Data\r\n IsProrateAccuralEnable: false;\r\n IsOpeningBalanceEnable: false;\r\n IsMaximumBalanceEnable: false;\r\n IsDeductibleHolidaysEnable: false;\r\n\r\n // Prorate Accural model\r\n prorateAccuralType: string;\r\n prorateAccural: any;\r\n public filter: Object;\r\n public filterSettings: Object;\r\n public selectionSettings: Object;\r\n public height: string = '240px';\r\n public fields: Object = { text: 'text', value: 'value' };\r\n leavtypefields: Object = {text: 'text', value: 'val' };\r\n exceptioUserfields: Object = {text: 'text', value: 'id' }\r\n \r\n public item: number[] = [1, 2, 3, 4, 5];\r\n roundOffValueSelectList = [\r\n { value: 1, name: \"Nearest\" },\r\n { value: 2, name: \"Minimum\" },\r\n { value: 3, name: \"Maximum\" }\r\n ];\r\n roundOffTypeSelectList = [\r\n { value: 1, name: \"Day\" },\r\n { value: 2, name: \"Half Day\" },\r\n { value: 3, name: \"Quarter Day\" }\r\n ];\r\n prorateAccuralDayList = [];\r\n\r\n tempLeaveType: LeaveTypeData = new LeaveTypeData();\r\n\r\n isCompOffExists: Boolean = false;\r\n\r\n @ViewChildren(SelectComponent) selectElements: QueryList;\r\n //Permissions\r\n\r\n AddPermission: boolean;\r\n EditPermission: boolean;\r\n DeletePermission: boolean;\r\n ViewPermission: boolean;\r\n StatusPermission: boolean;\r\n//\r\nInActiveLength:any=[];\r\nActiveLength:any=[];\r\nCmpCode:any;\r\npublic data = [ { val: 1, text: 'Paid' },\r\n{ val: 2, text: 'Unpaid' }, { val: 3, text: 'On Duty' }, { val: 4, text: 'Restricted Holiday' },\r\n{ val: 5, text: 'Compensatory Off' }\r\n];\r\n// maps the appropriate column to fields property\r\npublic gamefields: Object = { text: 'Game', value: 'Id' };\r\n Typeleave: any;\r\n LocalDataPermission: any;\r\n CustomLeaveCode: any;\r\n customerno: any;\r\n leaveTyperequestCode: any;\r\n LeaveTypeenable: boolean = true;\r\n ddlAccuralDaysListfield: { value: string; text: string; };\r\n ddlAccuralMonthsListfield: { value: string; text: string; };\r\n ddlResetDaysListfield: {};\r\n ddlResetMonthsListfield: { value: string; text: string; };\r\n ValidityFrom: any;\r\n ValidityTo: any;\r\n canapplyon: any;\r\n CannotTakenTogether: any;\r\n\r\n constructor(\r\n private _LeaveServices: LeaveService,\r\n private _fb: FormBuilder,\r\n private toaster: ToasterService,\r\n private _commonSer: CommonService,\r\n private userService: UserService,\r\n private _depratmentSer: DepartmentService,\r\n private _locationSer: LocationService,\r\n private _desigation: DesignationService,\r\n private _authSer: AuthService\r\n ) {\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this.datePickerConfiq = Object.assign(\r\n {},\r\n {\r\n showWeekNumbers: true,\r\n }\r\n );\r\n this.RoleItemList = [];\r\n this.text = \"no clicks yet\";\r\n }\r\n\r\n ngOnInit() {// Angular lifecycle hook\r\n this.filterSettings = { type: \"Menu\" };\r\n this.filter = { type: \"CheckBox\" };\r\n // this.stTime = performance.now();\r\n this.selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n\r\n this.CmpCode = this._authSer.getcompanyCode();\r\n this._authSer.IsPermissions('Custome Leave Type');\r\n this.LocalDataPermission = this._authSer.LocalDataPermission;\r\n if (this.LocalDataPermission === '' || this.LocalDataPermission === null || this.LocalDataPermission === undefined) {\r\n this.LocalDataPermission[0].addPermission = 0;\r\n this.LocalDataPermission[0].editPermission = 0;\r\n this.LocalDataPermission[0].viewpermission = 0;\r\n this.LocalDataPermission[0].deletePermission = 0;\r\n }\r\n try {\r\n this.ViewPermission = this.LocalDataPermission[0].viewpermission;//this.CurrentUser.permission.includes(Permission.ProjectView);\r\n this.AddPermission = this.LocalDataPermission[0].addPermission;//this.CurrentUser.permission.includes(Permission.ProjectAdd);\r\n this.EditPermission = this.LocalDataPermission[0].editPermission;// this.CurrentUser.permission.includes(Permission.ProjectEdit);\r\n this.DeletePermission = this.LocalDataPermission[0].deletePermission;// this.CurrentUser.permission.includes(Permission.ProjectDelete);\r\n this.StatusPermission = this.LocalDataPermission[0].addPermission;\r\n } catch (ex) {\r\n\r\n }\r\n // this._authSer.currentUser.subscribe((res) => {\r\n // this.currentUserId = res.userId;\r\n // this.AddPermission = res.permission.includes(Permission.LeaveTypeAdd);\r\n // this.EditPermission = res.permission.includes(Permission.LeaveTypeEdit);\r\n // this.DeletePermission = res.permission.includes(Permission.LeaveTypeDelete);\r\n // this.ViewPermission = res.permission.includes(Permission.LeaveTypeView);\r\n // this.StatusPermission = res.permission.includes(Permission.LeaveTypeStatus);\r\n // // this.applyLeaveSelectedUserId = res.userId;\r\n // this.ddlEmployeeUserId = res.userId;\r\n // });\r\n this.dayHrFilterValue = 1;\r\n this.ValidityFrom = new Date();\r\n this.ValidityTo = new Date();\r\n // this.getAllLeaveTypeForSelect()\r\n this.leaveTypeForm = this._fb.group({\r\n LeaveTypeId: [0],\r\n LeaveTypeName: [\"\", Validators.required],\r\n LeaveTypeCode: [\"\", Validators.required],\r\n ColorCode: [\"\"],\r\n ImagePath: [\"assets/LeaveIcons/Icon_1.png\"],\r\n Type: [1, Validators.required],\r\n Unit: [1, Validators.required],\r\n Description: [\"\"],\r\n ValidityFrom: [\"\", Validators.required],\r\n ValidityTo: [\"\"],\r\n IsActive: [true],\r\n CreatedBy: [\"\"],\r\n CreatedDate: [\"\"],\r\n UpdatedBy: [\"\"],\r\n UpdatedDate: [\"\"],\r\n EffectiveAfter: [0],\r\n EffectiveAfterPeriod: [1], \r\n EffectiveAfterFrom: [1],\r\n IsAccural: [true],\r\n AccuralPeriod: [2],\r\n AccuralDay: [1],\r\n AccuralMonth: [1],\r\n AccuralNoOfDays: 0,\r\n AccuralDaysInPeriod: [1],\r\n IsReset: [true],\r\n ResetPeriod: [2],\r\n ResetDay: [71],\r\n ResetMonth: [12],\r\n CarryForwardType: [1],\r\n CarryForwardValue: [0],\r\n CarryForwardPercentageUnit: [1],\r\n CarryForwardMaxLimit: [],\r\n CarryForwardExpiresIn: [],\r\n CarryForwardExpiresInType: [],\r\n CarryForwardOverallLimit: [],\r\n EncashmentType: [],\r\n EncashmentValue: [0],\r\n EncashmentPercentageUnit: [1],\r\n EncashmentMaxLimit: [],\r\n\r\n IsProrateAccuralEnable: [false],\r\n ProrateAccuralType: [],\r\n IsOpeningBalanceEnable: [false],\r\n OpeningBalance: [],\r\n IsMaximumBalanceEnable: [false],\r\n MaximumBalance: [],\r\n IsDeductibleHolidaysEnable: [false],\r\n DeductibleHolidays: [],\r\n\r\n ApplicableGenderMale: [false],\r\n ApplicableGenderFemale: [false],\r\n ApplicableGenderOthers: [false],\r\n ApplicableMaritalStatusSingle: [false],\r\n ApplicableMaritalStatusMarried: [false],\r\n ApplicableDepartments: [[]],\r\n ApplicableDesignations: [[]],\r\n ApplicableLocations: [[]],\r\n ApplicableRoles: [[]],\r\n ApplicableEmployeeTypes: [[]],\r\n ApplicableSourceOfHire: [[]],\r\n ApplicableJobBands: [[]],\r\n ApplicableOnboardingStatus: [[]],\r\n ApplicableEmployees: [[]],\r\n ExceptionDepartments: [[]],\r\n ExceptionDesignations: [[]],\r\n ExceptionLocations: [[]],\r\n ExceptionRoles: [[]],\r\n customeleavesrno: \"0\",\r\n CmpCode: \"\",\r\n CanCountAsLeaveInWeekendBetweenLeave: [false],\r\n WeekendBetweenLeaveCountAfter: [],\r\n CanCountAsHolidayInWeekendBetweenLeave: [false],\r\n WeekendBetweenHolidayCountAfter: [],\r\n CanExceedLeaveBalance: [false],\r\n ExceedLeaveBalanceType: [\"1\"],\r\n IsDurationFullDay: [true],\r\n IsDurationHalfDay: [false],\r\n IsDurationQuarterDay: [false],\r\n ReportConfigAllowView: [],\r\n ReportConfigBalanceDisplay: [],\r\n AllowRequestsForPastDates: [false],\r\n AllowRequestsForPastDays: [],\r\n AllowRequestsForFutureDates: [false],\r\n AllowRequestsForNextDays: [],\r\n AllowRequestsDaysinAdvance: [],\r\n IsMinimumLimitPerApplication: [false],\r\n MinimumLimitPerApplication: [],\r\n IsMaximumLimitPerApplication: [false],\r\n MaximumLimitPerApplication: [],\r\n IsMaximumConsecutiveHoursAllowed: [false],\r\n MaximumConsecutiveHoursAllowed: [],\r\n IsMinimumGapBetweenTwoApplications: [false],\r\n MinimumGapBetweenTwoApplications: [],\r\n EnableFileUploadOption: [false],\r\n OnAppliedLeavePeriodExceeds: [],\r\n MaximumApplicationsAllowed: [],\r\n MaximumApplicationsAllowedType: [1],\r\n CanAppliedOnlyOn: [[]],\r\n CannotTakenTogetherWith: [[]],\r\n EntitlementCalendarList: [[]],\r\n LeaveTypeProrateAccural: []\r\n });\r\n\r\n this.setTempLeaveTypeData();\r\n\r\n this.initAccuralDDL();\r\n this.getAllLeaveTypeData();\r\n this.getDropDownListData();\r\n }\r\n\r\n\r\n \r\n public pageSettings = { pageCount: 3 };\r\n @ViewChild('overviewgrid') public Grid: GridComponent;\r\n \r\n load() {// Created By A Initialize grid properties\r\n const rowHeight: number = this.Grid.getRowHeight(); // height of the each row\r\n const gridHeight: any = this.Grid.height; // grid height\r\n const pageSize: number = this.Grid.pageSettings.pageSize; // initial page size\r\n const pageResize: any = (gridHeight - (pageSize * rowHeight)) / rowHeight; // new page size is obtained here\r\n this.Grid.pageSettings.pageSize = pageSize + Math.round(pageResize);\r\n }\r\n \r\n \r\n @HostListener(\"click\")\r\n clickInside() {// Created By A Set values\r\n this.isClickOutside = true;\r\n }\r\n\r\n resetLeaveTyeForm() {// Created By A Forms Initialization\r\n this.leaveTypeForm = this._fb.group({\r\n LeaveTypeId: [0],\r\n LeaveTypeName: [\"\", Validators.required],\r\n LeaveTypeCode: [\"\", Validators.required],\r\n ColorCode: [\"\"],\r\n ImagePath: [\"assets/LeaveIcons/Icon_1.png\"],\r\n Type: [1, Validators.required],\r\n Unit: [1, Validators.required],\r\n Description: [\"\"],\r\n ValidityFrom: [\"\", Validators.required],\r\n ValidityTo: [\"\"],\r\n IsActive: [true],\r\n CreatedBy: [\"\"],\r\n CmpCode: \"\",\r\n CreatedDate: [\"\"],\r\n UpdatedBy: [\"\"],\r\n UpdatedDate: [\"\"],\r\n EffectiveAfter: [0],\r\n EffectiveAfterPeriod: [1],\r\n EffectiveAfterFrom: [1],\r\n IsAccural: [true],\r\n AccuralPeriod: [2],\r\n AccuralDay: [1],\r\n AccuralMonth: [1],\r\n AccuralNoOfDays: [0],\r\n AccuralDaysInPeriod: [1],\r\n IsReset: [true],\r\n ResetPeriod: [2],\r\n ResetDay: [71],\r\n ResetMonth: [12],\r\n customeleavesrno: \"0\",\r\n CarryForwardType: [1],\r\n CarryForwardValue: [0],\r\n CarryForwardPercentageUnit: [1],\r\n CarryForwardMaxLimit: [],\r\n CarryForwardExpiresIn: [],\r\n CarryForwardExpiresInType: [],\r\n CarryForwardOverallLimit: [],\r\n EncashmentType: [],\r\n EncashmentValue: [0],\r\n EncashmentPercentageUnit: [1],\r\n EncashmentMaxLimit: [],\r\n\r\n IsProrateAccuralEnable: [false],\r\n ProrateAccuralType: [],\r\n IsOpeningBalanceEnable: [false],\r\n OpeningBalance: [],\r\n IsMaximumBalanceEnable: [false],\r\n MaximumBalance: [],\r\n IsDeductibleHolidaysEnable: [false],\r\n DeductibleHolidays: [],\r\n\r\n ApplicableGenderMale: [false],\r\n ApplicableGenderFemale: [false],\r\n ApplicableGenderOthers: [false],\r\n ApplicableMaritalStatusSingle: [false],\r\n ApplicableMaritalStatusMarried: [false],\r\n ApplicableDepartments: [[]],\r\n ApplicableDesignations: [[]],\r\n ApplicableLocations: [[]],\r\n ApplicableRoles: [[]],\r\n ApplicableEmployeeTypes: [[]],\r\n ApplicableSourceOfHire: [[]],\r\n ApplicableJobBands: [[]],\r\n ApplicableOnboardingStatus: [[]],\r\n ApplicableEmployees: [[]],\r\n ExceptionDepartments: [[]],\r\n ExceptionDesignations: [[]],\r\n ExceptionLocations: [[]],\r\n ExceptionRoles: [[]],\r\n\r\n CanCountAsLeaveInWeekendBetweenLeave: [false],\r\n WeekendBetweenLeaveCountAfter: [],\r\n CanCountAsHolidayInWeekendBetweenLeave: [false],\r\n WeekendBetweenHolidayCountAfter: [],\r\n CanExceedLeaveBalance: [false],\r\n ExceedLeaveBalanceType: [\"1\"],\r\n IsDurationFullDay: [true],\r\n IsDurationHalfDay: [false],\r\n IsDurationQuarterDay: [false],\r\n ReportConfigAllowView: [],\r\n ReportConfigBalanceDisplay: [],\r\n AllowRequestsForPastDates: [false],\r\n AllowRequestsForPastDays: [],\r\n AllowRequestsForFutureDates: [false],\r\n AllowRequestsForNextDays: [],\r\n AllowRequestsDaysinAdvance: [],\r\n IsMinimumLimitPerApplication: [false],\r\n MinimumLimitPerApplication: [],\r\n IsMaximumLimitPerApplication: [false],\r\n MaximumLimitPerApplication: [],\r\n IsMaximumConsecutiveHoursAllowed: [false],\r\n MaximumConsecutiveHoursAllowed: [],\r\n IsMinimumGapBetweenTwoApplications: [false],\r\n MinimumGapBetweenTwoApplications: [],\r\n EnableFileUploadOption: [false],\r\n OnAppliedLeavePeriodExceeds: [],\r\n MaximumApplicationsAllowed: [],\r\n MaximumApplicationsAllowedType: [1],\r\n CanAppliedOnlyOn: [[]],\r\n CannotTakenTogetherWith: [[]],\r\n EntitlementCalendarList: [[]],\r\n LeaveTypeProrateAccural: []\r\n });\r\n this.setTempLeaveTypeData();\r\n\r\n // Applicable DDL Lists\r\n this.applicableDDLDepartmentList = this.DepartmentList;\r\n this.applicableDDLDesigationList = this.DesigationList;\r\n this.applicableDDLLocationList = this.LocationList;\r\n this.applicableDDLRoleList = this.RoleItemList;\r\n\r\n // Exception DDL Lists\r\n this.exceptionDDLDepartmentList = this.DepartmentList;\r\n this.exceptionDDLDesigationList = this.DesigationList;\r\n this.exceptionDDLLocationList = this.LocationList;\r\n this.exceptionDDLRoleList = this.RoleItemList;\r\n\r\n console.log(\"Department\", this.applicableDDLDepartmentList);\r\n console.log(\"Desigation\", this.applicableDDLDesigationList);\r\n console.log(\"Location\", this.applicableDDLLocationList);\r\n console.log(\"Role\", this.applicableDDLRoleList);\r\n }\r\n\r\n setTempLeaveTypeData() {// Created By A Set values\r\n this.tempLeaveType = new LeaveTypeData();\r\n\r\n this.tempLeaveType.LeaveTypeId = 0;\r\n this.tempLeaveType.LType = 1;\r\n this.tempLeaveType.Unit = 1;\r\n this.tempLeaveType.ImagePath = \"assets/LeaveIcons/Icon_1.png\";\r\n this.tempLeaveType.IsAccural = true;\r\n this.tempLeaveType.AccuralPeriod = 2;\r\n this.tempLeaveType.AccuralDay = 1;\r\n this.tempLeaveType.AccuralMonth = 1;\r\n this.tempLeaveType.AccuralNoOfDays = 0;\r\n this.tempLeaveType.AccuralDaysInPeriod = 1;\r\n this.tempLeaveType.IsReset = true;\r\n this.tempLeaveType.ResetPeriod = 2;\r\n this.tempLeaveType.ResetDay = 71;\r\n this.tempLeaveType.ResetMonth = 12;\r\n this.tempLeaveType.CarryForwardType = 1;\r\n this.tempLeaveType.CarryForwardPercentageUnit = 1;\r\n this.tempLeaveType.EncashmentPercentageUnit = 1;\r\n this.tempLeaveType.EntitlementCalendarList = [];\r\n\r\n this.IsProrateAccuralEnable = false;\r\n this.IsOpeningBalanceEnable = false;\r\n this.IsMaximumBalanceEnable = false;\r\n this.IsDeductibleHolidaysEnable = false;\r\n\r\n this.prorateAccuralType = \"\";\r\n\r\n this.IsEmployeeTypes = false;\r\n this.IsSourceOfHire = false;\r\n this.IsJobBands = false;\r\n this.IsOnboardingStatus = false;\r\n\r\n this.applicableDepartmentList = [];\r\n this.applicableDesigationList = [];\r\n this.applicableLocationList = [];\r\n this.applicableRoleList = [];\r\n this.applicableEmployeeTypesList = [];\r\n this.applicableSourceOfHireList = [];\r\n this.applicableJobBandsList = [];\r\n this.applicableOnboardingStatusList = [];\r\n this.applicableEmployeeList = [];\r\n this.exceptionDepartmentList = [];\r\n this.exceptionDesigationList = [];\r\n this.exceptionLocationList = [];\r\n this.exceptionRoleList = [];\r\n this.canAppliedOnlyOnList = [];\r\n this.cannotTakenTogetherWithList = [];\r\n\r\n this.setDDLSelectLists();\r\n this.createEntitlementCalendarData();\r\n }\r\n\r\n setDDLSelectLists() {// Created By A Set values\r\n this.setAccuralDaySelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n this.setAccuralMonthSelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n this.setResetDaySelectList(this.tempLeaveType.ResetPeriod.toString());\r\n this.setResetMonthSelectList(this.tempLeaveType.ResetPeriod.toString());\r\n }\r\n\r\n getFormattedDate(val: any) {// Created By A Date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth();\r\n const day = date.getDate();\r\n return new Date(year, month, day);\r\n }\r\n getCSharpFormattedDate(val: any) {// Created By A Backend date format\r\n if (val === null || val === \"\") {\r\n return null;\r\n }\r\n const date = new Date(val);\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n return month + \"-\" + day + \"-\" + year;\r\n }\r\n\r\n @HostListener(\"document:click\")\r\n clickout() {// Created By A Set value\r\n if (!this.isClickOutside) {\r\n this.flterShowData = false;\r\n }\r\n this.isClickOutside = false;\r\n }\r\n\r\n initAccuralDDL() {// Created By A Initialize Accural dropdown values\r\n for (let i = 1; i <= 31; i++) {\r\n this.AccuralDayList.push(this.getNumberWithOrdinal(i));\r\n this.prorateAccuralDayList.push(this.getNumberWithOrdinal(i));\r\n }\r\n\r\n this.AccuralDayList.push(\"Last Day\");\r\n this.AccuralDayList.push(\"Policy Date\");\r\n this.AccuralDayList.push(\"Joining Date\");\r\n this.AccuralDayList.push(\"Birth Date\");\r\n }\r\n getNumberWithOrdinal(n) {// Created By K Get Numbers with Ordinals\r\n let s = [\"th\", \"st\", \"nd\", \"rd\"],\r\n v = n % 100;\r\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\r\n }\r\n\r\n openUserModal() {// Created By A Open modal\r\n // this.leaveTypeForm.reset();\r\n this.viewMode = false;\r\n this.editMode = false;\r\n this.NeweditMode = true;\r\n\r\n this.getDropDownListData();\r\n this.setTempLeaveTypeData();\r\n }\r\n OpenAddLeaveTypeForm() {// Created By A Initialize leave-type form\r\n this.leaveTypeForm.reset()\r\n this.resetLeaveTyeForm();\r\n this.submitted = false\r\n debugger\r\n this.editMode = false;\r\n this.viewMode = false;\r\n this.NeweditMode = true;\r\n this.IsAccuralChange = true;\r\n this.isResetChange = true;\r\n this.HeaderActionMsg = environment.AddModel_msg;\r\n this.uploadedFileByteData = null;\r\n this.LeaveTypeenable = true;\r\n this.getCmpLeaveTypecode();\r\n this.getDropDownListData();\r\n this.leaveTypeForm.controls[\"ValidityFrom\"].patchValue(this.ValidityFrom);\r\n this.leaveTypeForm.controls[\"ValidityTo\"].patchValue(this.ValidityTo);\r\n this.setAppliacble();\r\n // this.setTempLeaveTypeData();\r\n \r\n }\r\n\r\n setAppliacble(){// Created By A Set values\r\n debugger\r\n //applicable\r\n this.exceptionDDLDepartmentList = this.DepartmentList;\r\n this.exceptionDDLDesigationList = this.DesigationList;\r\n this.exceptionDDLLocationList = this.LocationList;\r\n this.exceptionDDLRoleList = this.RoleItemList;\r\n\r\n //exceptions\r\n this.applicableDDLDepartmentList = this.DepartmentList;\r\n this.applicableDDLDesigationList = this.DesigationList;\r\n this.applicableDDLLocationList = this.LocationList;\r\n this.applicableDDLRoleList = this.RoleItemList;\r\n }\r\n\r\n getDropDownListData() {// Created By A Get Dropdowns lists values\r\n this.getDepartment();\r\n this.getAllDesigation();\r\n this.getAllLocation();\r\n this.getAllRolesForSelect();\r\n this.getAllEmployeList();\r\n this.leaveAppliedOn();\r\n this.getAllLeaveTypeForSelect();\r\n\r\n this.getEmployeeTypesList();\r\n this.getSourceOfHireList();\r\n this.getOnboardingStatusList();\r\n this.getJobBandsList();\r\n }\r\ntotalMyRequestList:any=[]\r\n getAllLeaveTypeData() {// Created By A Get All Leave-types list\r\n debugger;\r\n this.userLoader = true;\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n FilterStatus: this.filterStatus !== undefined ? this.filterStatus : null,\r\n FilterEmployees: this.filterEmployeeId !== undefined ? this.filterEmployeeId : null,\r\n FilterDepartments: this.filterDepartmentId !== undefined ? this.filterDepartmentId : null,\r\n FilterLocations: this.filterLocationId !== undefined ? this.filterLocationId : null,\r\n FilterDesignations: this.filterDesignationId !== undefined ? this.filterDesignationId : null,\r\n FilterRoles: this.filterRoleId !== undefined ? this.filterRoleId : null,\r\n FilterUnit: this.dayHrFilterValue !== undefined ? this.dayHrFilterValue : null,\r\n CmpCode:this.CmpCode,\r\n };\r\n this.isCompOffExists = false;\r\n this._LeaveServices.getAllLeaveTypeData(parms).subscribe((res) => {\r\n this.allLeaveTypeList = res[\"data\"].table;\r\n this.totalMyRequestList=this.allLeaveTypeList\r\n this.userLoader = false;\r\n this.myRequestsListLength = this.allLeaveTypeList.length;\r\n this.InActiveLength = this.allLeaveTypeList.filter(user => user.isActive === false ).length;\r\n this.ActiveLength = this.allLeaveTypeList.filter(user => user.isActive === true).length;\r\n\r\n for (let i = 0; i < this.allLeaveTypeList.length; i++) {\r\n if (this.allLeaveTypeList[i].type == 5) {\r\n this.isCompOffExists = true;\r\n }\r\n }\r\n });\r\n }\r\n getAllLeaveTypeForSelect() {// Created By A Get Leave-type list for dropdown\r\n this.userLoader = true;\r\n\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n FilterStatus: null,\r\n FilterEmployees: null,\r\n FilterDepartments: null,\r\n FilterLocations: null,\r\n FilterDesignations: null,\r\n FilterRoles: null,\r\n FilterUnit: null,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._LeaveServices.getAllLeaveTypeData(parms).subscribe((res) => {\r\n this.userLoader = false;\r\n\r\n this.LeaveTypeList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"leaveTypeId\",\r\n \"leaveTypeName\"\r\n );\r\n });\r\n }\r\n\r\n numberOnly(event): boolean {// Created By S Numbers validation\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n\r\n }\r\n\r\n numberOnlyWithDecimal(event): boolean {// Created By S Numbers with decimal validation\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode != 46 && charCode > 31 \r\n && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n filterShow() { // Created By A get filters values\r\n this.getAllEmployeList();\r\n this.getDepartment();\r\n this.getAllDesigation();\r\n this.getAllLocation();\r\n this.getAllRole();\r\n this.flterShowData = !this.flterShowData;\r\n }\r\n closeFilter() {// Created By A Set value\r\n this.flterShowData = false;\r\n }\r\n\r\n getAllEmployeList() {// Created By A Getting all employees list\r\n debugger\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n SortType: \"desc\",\r\n FieldName: \"UpdatedDate\",\r\n Condition: \"\",\r\n CmpCode:this.CmpCode\r\n };\r\n this.userService.getUserList(parms).subscribe((res) => {\r\n // this.allEmployeeList =res['data'].table\r\n this.todatlEmployeeList = res[\"data\"].table;\r\n if (res[\"data\"].table != null && res[\"data\"].table.length > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n this.EmployeeList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"employeeId\",\r\n \"fullName\"\r\n );\r\n // const selectedEmp = this.todatlEmployeeList.find(\r\n // (x) => x.userId.toString() === this.currentUserId.toString()\r\n // );\r\n // if (selectedEmp !== undefined) {\r\n // const empValue = {\r\n // id: selectedEmp.employeeId,\r\n // text: selectedEmp.fullName,\r\n // };\r\n // setTimeout(() => {\r\n // this.ddlSelection(empValue, \"Employee\", undefined, undefined);\r\n // }, 300);\r\n // }\r\n });\r\n }\r\n\r\n ddlSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A Global Controller to update fields \r\n try {\r\n switch (placeHolder) {\r\n case \"Employee\":\r\n this.ActiveEmployee = [];\r\n this.ActiveEmployee.push(value);\r\n this.filterEmployeeId = value.id;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartment = [];\r\n this.ActiveDepartment.push(value);\r\n this.filterDepartmentId = value.id;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesigation = [];\r\n this.ActiveDesigation.push(value);\r\n this.filterDesignationId = value.id;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocation = [];\r\n this.ActiveLocation.push(value);\r\n this.filterLocationId = value.id;\r\n break;\r\n case \"Roles\":\r\n this.ActiveRoles = [];\r\n this.ActiveRoles.push(value);\r\n this.filterRoleId = value.id;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n removeFilterDropdownValue(_type, value) {// Created By A Global Controller to remove fields values \r\n try {\r\n switch (_type) {\r\n case \"Employee\":\r\n this.ActiveEmployee = [];\r\n this.filterEmployeeId = null;\r\n break;\r\n case \"Department\":\r\n this.ActiveDepartment = [];\r\n this.filterDepartmentId = null;\r\n break;\r\n case \"Desigation\":\r\n this.ActiveDesigation = [];\r\n this.filterDesignationId = null;\r\n break;\r\n case \"Location\":\r\n this.ActiveLocation = [];\r\n this.filterLocationId = null;\r\n break;\r\n case \"Roles\":\r\n this.ActiveRoles = [];\r\n this.filterRoleId = null;\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n public refreshEmployeeValue(value: any): void {// Created By A Employee dropdown data binding\r\n this.EmployeeCollection = [];\r\n value.forEach((element) => {\r\n this.EmployeeCollection.push({\r\n employeeId: element.id,\r\n });\r\n let empMap = this.EmployeeCollection.reduce((a, o) => (a.push(o.employeeId), a), []);\r\n let data = empMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployees: data\r\n });\r\n });\r\n // console.log(this.RoleCollection);\r\n }\r\n\r\n getDepartment() {// Created By A Getting all departments\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode\r\n };\r\n this._depratmentSer.getDepartmentList(parms).subscribe((res) => {\r\n // this.allDepartmentList = res['data'].table\r\n this.allDepartmentList = res[\"data\"].table;\r\n // if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n // this.employeName = res[\"data\"].table[0].employeeName;\r\n // this.employeCode = res[\"data\"].table[0].empCode;\r\n // }\r\n\r\n this.DepartmentList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"departmentId\",\r\n \"departmentName\"\r\n );\r\n // const selectedEmp = this.allDepartmentList.find(\r\n // (x) => x.userId.toString() === this.currentUserId.toString()\r\n // );\r\n // if (selectedEmp !== undefined) {\r\n // const empValue = {\r\n // id: selectedEmp.departmentId,\r\n // text: selectedEmp.departmentName,\r\n // };\r\n // setTimeout(() => {\r\n // this.departmentSelection(empValue, \"Department\", undefined, undefined);\r\n // }, 300);\r\n // }\r\n // this.DepartmentMultiList = [];\r\n // for (let i = 0; i < res.data.table.length; i++) {\r\n // this.DepartmentMultiList.push({\r\n // id: res.data.table.departmentId,\r\n // text: res.data.table.departmentName,\r\n // });\r\n // }\r\n });\r\n }\r\n departmentSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select Department\r\n console.log(this.ActiveDepartment)\r\n try {\r\n switch (placeHolder) {\r\n case \"Department\":\r\n\r\n this.ActiveDepartment = [];\r\n this.ActiveDepartment.push(value);\r\n\r\n this.ddlDepartmentId = value.id;\r\n\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n\r\n exceedChange(event) {// Created By A Set value\r\n this.selectedExceedLeaveAllow = event.target.value;\r\n console.log(event);\r\n }\r\n\r\n leaveAppliedOn() {// Created By A Set values\r\n // this._depratmentSer.getDepartmentList(parms).subscribe(() => {\r\n // this.allDepartmentList = res['data'].table\r\n let res = { table: [{ appliedid: 1, appliedName: 'Restricted Holiday' }, { appliedid: 2, appliedName: 'Work Anniversary' }, { appliedid: 3, appliedName: 'BirthDay' }, { appliedid: 4, appliedName: 'Date of Exit' }] };\r\n this.appliedLeaveList = res.table;\r\n // if (res.table != null && res.table.lenght > 0) {\r\n // this.employeName = res.table[0].employeeName;\r\n // this.employeCode = res.table[0].empCode;\r\n // }\r\n this.AppliedList = this._commonSer.SetDDlDropdown(\r\n res.table,\r\n \"appliedid\",\r\n \"appliedName\"\r\n );\r\n // });\r\n }\r\n selectedAppliedLeave(evt: any) {}\r\n\r\n public refreshAppliedLeaveValue(value: any): void {// Created By A\r\n this.AppliedLeaveCollection = [];\r\n value.forEach((element) => {\r\n this.AppliedLeaveCollection.push({\r\n appliedid: element.id,\r\n });\r\n });\r\n // console.log(this.RoleCollection);\r\n }\r\n\r\n exceedChangeNotAllow(event) {// Created By A Set value\r\n this.selectedExceedLeaveAllow = event.target.value;\r\n }\r\n\r\n getAllLocation() {// Created By A Getting all locations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._locationSer.getlocationlist(parms).subscribe((res) => {\r\n // this.allLocationList = res['data'].table\r\n this.allLocationList = res[\"data\"].table;\r\n if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n this.LocationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"locationId\",\r\n \"locationName\"\r\n );\r\n });\r\n }\r\n\r\n locationSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select location\r\n try {\r\n switch (placeHolder) {\r\n case \"Location\":\r\n this.ActiveLocation = [];\r\n this.ActiveLocation.push(value);\r\n this.ddlLocationId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n selectedLocation(evt: any) {}\r\n\r\n public refreshLocationValue(value: any): void {// Created By A Location data binding\r\n this.LocationCollection = [];\r\n value.forEach((element) => {\r\n this.LocationCollection.push({\r\n locationId: element.id,\r\n });\r\n let locationMap = this.LocationCollection.reduce((a, o) => (a.push(o.locationId), a), []);\r\n let data = locationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableLocations: data\r\n });\r\n });\r\n // console.log(this.RoleCollection);\r\n }\r\n\r\n getAllLeaveType() {// Created By A Set All Leave types\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 100000,\r\n FilterStatus: this.statusSelectValue,\r\n FilterEmployees: this.employeeSelectedValue,\r\n FilterDepartments: this.departmentSelectValue,\r\n FilterLocations: this.locationSelectedValue,\r\n FilterDesignations: this.desigationSelectedValue,\r\n FilterRoles: null,\r\n FilterUnit: this.dayHrFilterValue,\r\n CmpCode:this.CmpCode,\r\n };\r\n this._LeaveServices.getAllLeaveTypeData(parms).subscribe((res) => {\r\n this.allLeaveTypeList = res[\"data\"].table;\r\n // this.allLocationList = res[\"data\"].table;\r\n \r\n this.LeaveTypeList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"leaveTypeId\",\r\n \"leaveTypeName\"\r\n );\r\n });\r\n }\r\n\r\n leaveTypeSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On Select Leave Type\r\n try {\r\n switch (placeHolder) {\r\n case \"LeaveType\":\r\n this.ActiveLeaveType = [];\r\n this.ActiveLeaveType.push(value);\r\n this.ddlLocationId = value.id;\r\n // console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n selectedLeaveType(evt: any) {}\r\n\r\n public refreshLeaveType(value: any): void {// Created By A Binding leave type data\r\n this.LeaveTypeCollection = [];\r\n value.forEach((element) => {\r\n this.LeaveTypeCollection.push({\r\n locationId: element.id,\r\n });\r\n });\r\n // console.log(this.RoleCollection);\r\n }\r\n\r\n AddUserInExcept(ExceptionUser,fromDateExcept,toDateExcept){// Created By A Set value\r\n debugger\r\n let UserName = this.EmployeeList.filter( x => x.id ==ExceptionUser)\r\n this.fieldEmpArray.push({employeeId:ExceptionUser,employeeName:UserName[0].text, fromDate:fromDateExcept, toDate:toDateExcept, index:Math.random()})\r\n }\r\n RemoveUserInExcept(index){// Created By A Removing users\r\n debugger\r\n this.fieldEmpArray.splice(index,1)\r\n }\r\n exceptionUser\r\n onChangeExceptionUser(val){// Created By A Set value\r\n this.exceptionUser = val\r\n }\r\n \r\n\r\n getAllRole() {// Created By A Getting all Roles\r\n let parms = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: \"asc\",\r\n FieldName: \"name\",\r\n Condition: \"\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._LeaveServices.getAllRolesList(parms).subscribe((res) => {\r\n // this.allRolesList = res['data'].table\r\n this.allRolesList = res[\"data\"].table;\r\n // if (res['data'].table != null && res['data'].table.lenght > 0) {\r\n // this.employeName = res[\"data\"].table[0].employeeName;\r\n // this.employeCode = res[\"data\"].table[0].empCode;\r\n // }\r\n this.RolesList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"roleId\",\r\n \"name\"\r\n );\r\n });\r\n }\r\n\r\n rolesSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select Role\r\n try {\r\n switch (placeHolder) {\r\n case \"Roles\":\r\n this.ActiveRoles = [];\r\n this.ActiveRoles.push(value);\r\n this.ddlRolesId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n\r\n getAllDesigation() {// Created By A Getting all Desiganations\r\n let parms = {\r\n Condition: \"\",\r\n FieldName: \"CreatedDate\",\r\n NoOfRecords: 10000,\r\n PageNo: 1,\r\n SortType: \"desc\",\r\n CmpCode:this.CmpCode,\r\n };\r\n this._desigation.getDesignationList(parms).subscribe((res) => {\r\n // this.allDesigationList = res['data'].table\r\n this.allDesigationList = res[\"data\"].table;\r\n if (res[\"data\"].table != null && res[\"data\"].table.lenght > 0) {\r\n this.employeName = res[\"data\"].table[0].employeeName;\r\n this.employeCode = res[\"data\"].table[0].empCode;\r\n }\r\n this.DesigationList = this._commonSer.SetDDlDropdown(\r\n res[\"data\"].table,\r\n \"designationId\",\r\n \"designationName\"\r\n );\r\n });\r\n }\r\n\r\n desigationSelection(value: any, placeHolder: any, index: any, index2: any) {// Created By A On select designation\r\n try {\r\n switch (placeHolder) {\r\n case \"Desigation\":\r\n this.ActiveDesigation = [];\r\n this.ActiveDesigation.push(value);\r\n this.ddlDesigationId = value.id;\r\n console.log(this.ActiveEmployee);\r\n\r\n // this.bindAllDashboardData();\r\n break;\r\n }\r\n } catch (ex) {}\r\n }\r\n selectedDesigation(evt: any) {}\r\n\r\n public refreshDesigationValue(value: any): void {// Created By A Binding Designations\r\n this.DesigationCollection = [];\r\n value.forEach((element) => {\r\n this.DesigationCollection.push({\r\n designationId: element.id,\r\n });\r\n let designationMap = this.DesigationCollection.reduce((a, o) => (a.push(o.designationId), a), []);\r\n let data = designationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDesignations: data\r\n });\r\n });\r\n // console.log(this.DesigationCollection);\r\n }\r\n\r\n daysHoursFilter(value) {// Created By A Set values\r\n this.dayHrFilterValue = value;\r\n this.getAllLeaveTypeData();\r\n }\r\n\r\n SideFilterFunc() {// Created By A Set values\r\n this.flterShowData = false;\r\n this.getAllLeaveTypeData();\r\n //console.log(this.departmentSelectValue);\r\n }\r\n\r\n ResetFilter() {// Created By A Reset values\r\n this.statusSelectValue = true;\r\n this.ActiveEmployee = [];\r\n this.filterEmployeeId = null;\r\n this.ActiveDepartment = [];\r\n this.filterDepartmentId = null;\r\n this.ActiveDesigation = [];\r\n this.filterDesignationId = null;\r\n this.ActiveLocation = [];\r\n this.filterLocationId = null;\r\n this.ActiveRoles = [];\r\n this.filterRoleId = null;\r\n }\r\n\r\n get leaveTypeControl() {\r\n return this.leaveTypeForm.controls;\r\n }\r\n\r\n getEmployeeTypesList() {// Created By A Set Employees type dropdown values\r\n let _list = [{ text: 'Employee', id: 1 }, { text: 'Vendor', id: 2 }, { text: 'Contact Person', id: 3 }, { text: 'Sales Person', id: 4 }];\r\n this.EmployeeTypesList = this._commonSer.SetDDlDropdown(_list, \"id\", \"text\");\r\n }\r\n getSourceOfHireList() {// Created By A Set Engagmentmodel type dropdown values\r\n let _list = [ { id: '1', text: 'Billable' },\r\n { id: '2', text: 'Non billable' },\r\n { id: '3', text: 'Shared ' },\r\n { id: '4', text: 'Management' },\r\n { id: '5', text: 'Administration' }];\r\n this.SourceOfHireList = this._commonSer.SetDDlDropdown(_list, \"id\", \"text\");\r\n }\r\n getOnboardingStatusList() {// Created By A Set bording status dropdown values\r\n let _list = [{ 'id': 1, 'text': 'No Triggered' }, { 'id': 2, 'text': 'Triggered' }, { 'id': 3, 'text': 'In Progress' }, { 'id': 4, 'text': 'Completed' }];\r\n this.OnboardingStatusList = this._commonSer.SetDDlDropdown(_list, \"id\", \"text\");\r\n }\r\n getJobBandsList() {// Created By K Get All Job bands\r\n this.userService.getAllJobBandsForSelect(this.CmpCode).subscribe((response: any) => {\r\n if (response.success) {\r\n this.JobBandsList = this._commonSer.SetDDlDropdown(\r\n response[\"data\"].table,\r\n \"jobBandId\",\r\n \"bandName\"\r\n );\r\n }\r\n });\r\n }\r\n\r\n \r\n onFileChanged(event) {// Created By A Uploaded File\r\n this.uploadedFile = event.target.files[0];\r\n let reader = new FileReader();\r\n let vm = this;\r\n reader.onload = function() {\r\n let arrayBuffer = this.result;\r\n //console.log(arrayBuffer);\r\n vm.uploadedFileByteData = arrayBuffer;\r\n //vm.postLeaveTypeImage(21);\r\n };\r\n reader.readAsArrayBuffer(event.target.files[0]);\r\n }\r\n getCmpLeaveTypecode(){// Created By A Getting compony leave-type codes\r\n debugger\r\n this._LeaveServices.getcmpLeaveTpeCode(this.CmpCode).subscribe((res) => {\r\n this.leaveTypeForm.controls[\"LeaveTypeCode\"].patchValue(res['data'].table[0].leaveTypeCode);\r\n this.leaveTypeForm.controls[\"customeleavesrno\"].patchValue(res['data'].table[0].customeleavesrno);\r\n this.CustomLeaveCode = res['data'].table[0].leaveTypeCode;\r\n this.leaveTyperequestCode = res['data'].table[0].customLeaveCode;\r\n \r\n })\r\n }\r\n\r\n saveLeaveType() {// Created By A On Save Lave Type\r\n debugger\r\n this.submitted = true;\r\n if(this.leaveTypeForm.controls[\"IsMaximumBalanceEnable\"].value){\r\n if(this.leaveTypeForm.controls.MaximumBalance.value < this.leaveTypeForm.controls.OpeningBalance.value){\r\n this.toaster.show(\"warning\", \"Opening balance should be less then or equal to maximum balance\")\r\n return\r\n }\r\n }else {\r\n if(this.leaveTypeForm.controls[\"EncashmentValue\"].value && this.leaveTypeForm.controls[\"CarryForwardPercentageUnit\"].value == 1 ){\r\n let myval = 100 - this.leaveTypeForm.controls[\"CarryForwardValue\"].value; \r\n if(this.leaveTypeForm.controls[\"EncashmentValue\"].value > myval){\r\n this.toaster.show(\"warning\", \"Encashment percantage needs to be less then \"+myval)\r\n return\r\n } \r\n }\r\n }\r\n\r\n if (this.leaveTypeForm.controls.LeaveTypeName.valid === false ||\r\n this.leaveTypeForm.controls.LeaveTypeCode.valid === false ||\r\n this.leaveTypeForm.controls.Type.valid === false ||\r\n this.leaveTypeForm.controls.Unit.valid === false ||\r\n this.leaveTypeForm.controls.ValidityFrom.valid === false) {\r\n return;\r\n }\r\n let validityFromDate = this.getFormattedDate(this.leaveTypeForm.value.ValidityFrom);\r\n let validityToDate = this.getFormattedDate(this.leaveTypeForm.value.ValidityTo);\r\n\r\n if (validityFromDate != null) {\r\n this.leaveTypeForm.patchValue({\r\n ValidityFrom: this.getCSharpFormattedDate(validityFromDate)\r\n });\r\n } else {\r\n this.leaveTypeForm.patchValue({\r\n ValidityFrom: null\r\n });\r\n }\r\n if (validityToDate != null) {\r\n this.leaveTypeForm.patchValue({\r\n ValidityTo: this.getCSharpFormattedDate(validityToDate)\r\n });\r\n } else {\r\n this.leaveTypeForm.patchValue({\r\n ValidityTo: null\r\n });\r\n }\r\n // Check Validity Start Date Exists\r\n if (this.leaveTypeForm.controls.ValidityFrom == null) {\r\n return;\r\n }\r\n \r\n this.leaveTypeForm.patchValue({\r\n CmpCode: this._authSer.getcompanyCode(),\r\n CreatedBy: this._authSer.getUserId(),\r\n });\r\n \r\n \r\n this.leaveTypeForm.patchValue({\r\n EntitlementCalendarList: this.tempLeaveType.EntitlementCalendarList\r\n });\r\n\r\n // Get All Multi Select Dropdown values in arry format\r\n // Applicable Department\r\n let dept = []\r\n this.leaveTypeForm.value?.ApplicableDepartments.forEach(element => {\r\n dept.push(''+element.id)\r\n });\r\n let departmentMap = dept.reduce((a, o) => (a.push(o), a), []);\r\n let _departmentData = departmentMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDepartments: _departmentData\r\n });\r\n\r\n // Applicable Designation\r\n let deg = []\r\n this.leaveTypeForm.value?.ApplicableDesignations.forEach(element => {\r\n deg.push(''+element.id)\r\n });\r\n let designationMap = deg.reduce((a, o) => (a.push(o), a), []);\r\n let _designationData = designationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDesignations: _designationData\r\n });\r\n\r\n // Applicable Location\r\n let loc = []\r\n this.leaveTypeForm.value?.ApplicableLocations.forEach(element => {\r\n loc.push(''+element.id)\r\n });\r\n let locationMap = loc.reduce((a, o) => (a.push(o), a), []);\r\n let _locationData = locationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableLocations: _locationData\r\n });\r\n\r\n // Applicable Roles\r\n \r\n let role = []\r\n this.leaveTypeForm.value?.ApplicableRoles.forEach(element => {\r\n role.push(''+element.id)\r\n });\r\n let roleMap = role.reduce((a, o) => (a.push(o), a), []);\r\n let _roleData = roleMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableRoles: _roleData\r\n });\r\n\r\n // Applicable Employee Types\r\n debugger\r\n let emps = []\r\n this.leaveTypeForm.value?.ApplicableEmployees.forEach(element => {\r\n emps.push(''+element.id)\r\n });\r\n let employeeTyesMap = emps.reduce((a, o) => (a.push(o), a), []);\r\n let _employeeTypesData = employeeTyesMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployeeTypes: _employeeTypesData\r\n });\r\n\r\n // Applicable Source Of Hire\r\n let sohMap = this.applicableSourceOfHireList.reduce((a, o) => (a.push(o), a), []);\r\n let _sohData = sohMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableSourceOfHire: _sohData\r\n });\r\n\r\n // Applicable Job Bands\r\n let jbMap = this.applicableJobBandsList.reduce((a, o) => (a.push(o), a), []);\r\n let _jbData = jbMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableJobBands: _jbData\r\n });\r\n\r\n // Applicable Onboarding Status\r\n let osMap = this.applicableOnboardingStatusList.reduce((a, o) => (a.push(o), a), []);\r\n let _osData = osMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableOnboardingStatus: _osData\r\n });\r\n\r\n // Applicable Employees\r\n let empMap = emps.reduce((a, o) => (a.push(o), a), []);\r\n let _empData = empMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployees: _empData\r\n });\r\n\r\n // Exception Department\r\n let excepDepartmentMap = this.exceptionDepartmentList.reduce((a, o) => (a.push(o), a), []);\r\n let _excepDepartmentData = excepDepartmentMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ExceptionDepartments: _excepDepartmentData\r\n });\r\n\r\n // Exception Designation\r\n let excepDesignationMap = this.exceptionDesigationList.reduce((a, o) => (a.push(o), a), []);\r\n let _excepDesignationData = excepDesignationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ExceptionDesignations: _excepDesignationData\r\n });\r\n\r\n // Exception Location\r\n let excepLocationMap = this.exceptionLocationList.reduce((a, o) => (a.push(o), a), []);\r\n let _excepLocationData = excepLocationMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ExceptionLocations: _excepLocationData\r\n });\r\n\r\n // Exception Roles\r\n let excepRoleMap = this.exceptionRoleList.reduce((a, o) => (a.push(o), a), []);\r\n let _excepRoleData = excepRoleMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ExceptionRoles: _excepRoleData\r\n });\r\n\r\n\r\n // Can Applied Only On\r\n debugger;\r\n let canAppliedMap = this.canAppliedOnlyOnList.reduce((a, o) => (a.push(o), a), []);\r\n let _canAppliedData = canAppliedMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n CanAppliedOnlyOn: _canAppliedData\r\n });\r\n if(_canAppliedData == \"\"){\r\n this.leaveTypeForm.patchValue({\r\n CanAppliedOnlyOn: this.canapplyon\r\n });\r\n }\r\n\r\n // Cannot Taken Together With\r\n debugger\r\n let cannotTakenMap = this.cannotTakenTogetherWithList.reduce((a, o) => (a.push(o), a), []);\r\n let _cannotTakenData = cannotTakenMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n CannotTakenTogetherWith: _cannotTakenData\r\n });\r\n if(_cannotTakenData == \"\"){ \r\n this.leaveTypeForm.patchValue({\r\n CannotTakenTogetherWith: this.CannotTakenTogether \r\n });\r\n }\r\n\r\n console.clear();\r\n console.log(this.leaveTypeForm.value);\r\n // if (this.leaveTypeForm.invalid) {\r\n // return;\r\n // }\r\n // this.submitted = false;\r\n //return;\r\n this.userLoader = true;\r\n // if(this.leaveTypeForm.value.IsAccural==null && this.leaveTypeForm.value.CanExceedLeaveBalance==null && this.leaveTypeForm.value.AllowRequestsForPastDates==null && this.leaveTypeForm.value.AllowRequestsForFutureDates==null && this.leaveTypeForm.value.IsMinimumLimitPerApplication==null && this.leaveTypeForm.value.IsMaximumLimitPerApplication==null && this.leaveTypeForm.value.IsMaximumConsecutiveHoursAllowed==null && this.leaveTypeForm.value.IsMinimumGapBetweenTwoApplications==null && this.leaveTypeForm.value.MaximumApplicationsAllowed==null){\r\n this.leaveTypeForm.patchValue({\r\n IsActive: this.leaveTypeForm.value.IsActive != null ? this.leaveTypeForm.value.IsActive : true,\r\n IsAccural: this.leaveTypeForm.value.IsAccural != null ? this.leaveTypeForm.value.IsAccural : false,\r\n IsReset: this.leaveTypeForm.value.IsReset != null ? this.leaveTypeForm.value.IsReset : false,\r\n CanExceedLeaveBalance: this.leaveTypeForm.value.CanExceedLeaveBalance != null ? this.leaveTypeForm.value.CanExceedLeaveBalance : false,\r\n ApplicableGenderMale: this.leaveTypeForm.value.ApplicableGenderMale != null ? this.leaveTypeForm.value.ApplicableGenderMale : false,\r\n ApplicableGenderFemale: this.leaveTypeForm.value.ApplicableGenderFemale != null ? this.leaveTypeForm.value.ApplicableGenderFemale : false,\r\n ApplicableGenderOthers: this.leaveTypeForm.value.ApplicableGenderOthers != null ? this.leaveTypeForm.value.ApplicableGenderOthers : false,\r\n ApplicableMaritalStatusSingle: this.leaveTypeForm.value.ApplicableMaritalStatusSingle != null ? this.leaveTypeForm.value.ApplicableMaritalStatusSingle : false,\r\n ApplicableMaritalStatusMarried: this.leaveTypeForm.value.ApplicableMaritalStatusMarried != null ? this.leaveTypeForm.value.ApplicableMaritalStatusMarried : false,\r\n AllowRequestsForPastDates: this.leaveTypeForm.value.AllowRequestsForPastDates != null ? this.leaveTypeForm.value.AllowRequestsForPastDates : false,\r\n AllowRequestsForFutureDates: this.leaveTypeForm.value.AllowRequestsForFutureDates != null ? this.leaveTypeForm.value.AllowRequestsForFutureDates : false,\r\n IsMinimumLimitPerApplication: this.leaveTypeForm.value.IsMinimumLimitPerApplication != null ? this.leaveTypeForm.value.IsMinimumLimitPerApplication : false,\r\n IsMaximumLimitPerApplication: this.leaveTypeForm.value.IsMaximumLimitPerApplication != null ? this.leaveTypeForm.value.IsMaximumLimitPerApplication : false,\r\n IsMaximumConsecutiveHoursAllowed: this.leaveTypeForm.value.IsMaximumConsecutiveHoursAllowed != null ? this.leaveTypeForm.value.IsMaximumConsecutiveHoursAllowed : false,\r\n IsMinimumGapBetweenTwoApplications: this.leaveTypeForm.value.IsMinimumGapBetweenTwoApplications != null ? this.leaveTypeForm.value.IsMinimumGapBetweenTwoApplications : false,\r\n //MaximumApplicationsAllowed: this.leaveTypeForm.value.MaximumApplicationsAllowed != null ? this.leaveTypeForm.value.MaximumApplicationsAllowed : false,\r\n });\r\n // }\r\n //let departmentData = this.leaveTypeForm.value.ApplicableDepartments\r\n // let convertedArraytoString = departmentData.map(item=>item.id).join(',')\r\n // // let deparJoin = convertedArraytoString.toString().join('')\r\n // this.leaveTypeForm.patchValue({\r\n // ApplicableDepartments:convertedArraytoString\r\n // })\r\n if (this.leaveTypeForm.value.LeaveTypeId === 0) {\r\n this._LeaveServices.saveLeaveType(this.leaveTypeForm.value).subscribe(\r\n (res) => {\r\n if (res.success === true) {\r\n this.userLoader = false;\r\n this.showSuccess = true;\r\n this.submitted=false\r\n this.showMessage = res.data;\r\n \r\n this.resetLeaveTyeForm();\r\n // this.getAllLeaveTypeForSelect()\r\n this.getAllLeaveTypeData();\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = res.message;\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n console.log(this.leaveTypeForm.value);\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n );\r\n } else {\r\n this.userLoader = true;\r\n // this.leaveTypeForm.patchValue({\r\n // IsMaximumLimitPerApplication: false\r\n // });\r\n this._LeaveServices.saveLeaveType(this.leaveTypeForm.value).subscribe(\r\n (res) => {\r\n if (res.success === true) {\r\n this.userLoader = false;\r\n this.submitted=false\r\n this.showSuccess = true;\r\n this.showMessage = res.data;\r\n // this.leaveTypeForm.reset()\r\n // this.getAllLeaveTypeForSelect()\r\n this.getAllLeaveTypeData();\r\n this.toaster.show(\"success\",this.showMessage);\r\n this.leaveTypeForm.reset();\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n this._commonSer.CloseModalHandler(\"applyLeaveMode\");\r\n\r\n this.resetLeaveTyeForm();\r\n } else {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = res.message;\r\n this.toaster.show(\"success\",this.showMessage);\r\n // this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n console.log(this.leaveTypeForm.value);\r\n },\r\n (error) => {\r\n this.userLoader = false;\r\n this.showSuccess = false;\r\n this.showMessage = \"Uh oh, Something went wrong !\";\r\n this._commonSer.OpenModalHandler(\"leaveTypeMessageModel\");\r\n }\r\n );\r\n }\r\n }\r\n\r\n \r\n getAllRolesForSelect() {// Created By A Slelect Role\r\n this.userService.getAllRolesForSelect(this.CmpCode).subscribe(\r\n (res: any) => {\r\n this.RoleItemList = [];\r\n for (let i = 0; i < res.data.table.length; i++) {\r\n this.RoleItemList.push({\r\n id: res.data.table[i].roleId,\r\n text: res.data.table[i].name,\r\n });\r\n }\r\n },\r\n (err) => {}\r\n );\r\n }\r\n\r\n removedRole(evt: any) {// Created By A Remove Role\r\n if (this.editMode) {\r\n this.RoleDeleteCollection.push({\r\n roleId: evt.id,\r\n });\r\n console.log(this.RoleDeleteCollection);\r\n }\r\n }\r\n removedDepartmentException(evt: any) {// Created By A Remove department on exception\r\n if (this.editMode) {\r\n this.DepartmentCollection.push({\r\n departmentId: evt.id,\r\n });\r\n console.log(this.DepartmentCollection);\r\n }\r\n }\r\n selectedRoles(evt: any) {}\r\n selectedDepartment(evt: any) {// Created By A\r\n\r\n }\r\n\r\n selectedEmployee(evt: any) {}\r\n\r\n public refreshValue(value: any): void {// Created By A Binding Roles data\r\n this.RoleCollection = [];\r\n value.forEach((element) => {\r\n this.RoleCollection.push({\r\n roleId: element.id,\r\n });\r\n let roleMap = this.RoleCollection.reduce((a, o) => (a.push(o.roleId), a), []);\r\n let data = roleMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableRoles: data\r\n });\r\n });\r\n // console.log(this.RoleCollection);\r\n }\r\n\r\n public refreshDepartmentValue(value: any): void {// Created By A Binding Department data\r\n this.DepartmentCollection = [];\r\n value.forEach((element) => {\r\n this.DepartmentCollection.push({\r\n departmentId: element.id,\r\n });\r\n\r\n let departmentMap = this.DepartmentCollection.reduce((a, o) => (a.push(o.departmentId), a), []);\r\n let data = departmentMap.map(String);\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDepartments: data\r\n });\r\n });\r\n console.log(this.DepartmentCollection);\r\n }\r\n public refreshDepartmentValueException(value: any): void {// Created By A\r\n // this.DepartmentCollection = [];\r\n // value.forEach((element) => {\r\n // debugger;\r\n // this.DepartmentCollection.push({\r\n // departmentId: element.id,\r\n // });\r\n\r\n // let departmentMap = this.DepartmentCollection.reduce((a, o) => (a.push(o.departmentId), a), []);\r\n // let data = departmentMap.map(String);\r\n // this.leaveTypeForm.patchValue({\r\n // ExceptionDepartments: data\r\n // });\r\n // });\r\n // console.log(this.DepartmentCollection);\r\n }\r\n\r\n \r\n deleteLeaveType(leaveId) {// Created By A Initialize Delete Leave type\r\n try {\r\n if (leaveId.leaveTypeId != '') {\r\n this.IsDelete = true;\r\n this.showSuccess = false;\r\n\r\n this.deleteId = leaveId.leaveTypeId;\r\n this.openModel('userMessageModel', 'Are you sure, you want to delete this record?');\r\n }\r\n }\r\n catch (ex) {\r\n\r\n }\r\n }\r\n openModel(ModalId, Message) {// Created By S Open Modals From Code\r\n this._commonSer.OpenModalHandler(ModalId);\r\n this.showMessage = Message;\r\n }\r\n ConfdeleteDepartment(leveId) {// Created By A On Delete Leave-Type\r\n let parms ={}\r\n try {\r\n this.userLoader = true;\r\n this._LeaveServices\r\n .deleteLeaveType(parms,leveId)\r\n .subscribe((res) => {\r\n this.userLoader = false;\r\n if(res['success']==true){\r\n this.showSuccess = true;\r\n this.showMessage = res['data'];\r\n this.toaster.show(\"success\", this.showMessage);\r\n // this._commonSer.OpenModalHandler('leaveTypeMessageModel')\r\n this.getAllLeaveTypeData();\r\n } else{\r\n this.showSuccess = false;\r\n this.showMessage = res['message'];\r\n this.toaster.show(\"success\", this.showMessage);\r\n // this._commonSer.OpenModalHandler('leaveTypeMessageModel') \r\n }\r\n \r\n });\r\n }\r\n catch (ex) {\r\n this.userLoader = false;\r\n this.getAllLeaveTypeData();\r\n }\r\n }\r\n\r\n\r\n cloaseEditMode() {// Created By A Reset Modal Values\r\n this.leaveTypeForm.reset();\r\n this.resetLeaveTyeForm();\r\n\r\n // if(this.isEditMode==true){\r\n // this.leaveTypeForm.reset()\r\n // }\r\n }\r\n\r\n \r\n editLeaveType(leaveTypeId) {// Created By A On Edit Leave-Type\r\n debugger\r\n this.userLoader = true;\r\n this.uploadedFileByteData = null;\r\n this.HeaderActionMsg = environment.EdtiModel_msg;\r\n this.IsAccuralChange = false;\r\n this.getAllLeaveTypeForSelect();\r\n this._LeaveServices.getLeaveTypeById(leaveTypeId, this.CmpCode)\r\n .subscribe((resLeaveType) => {\r\n debugger;\r\n this.userLoader = false;\r\n this.editMode = true;\r\n this.NeweditMode = true;\r\n this.LeaveTypeenable = false;\r\n this.viewMode = false;\r\n this.IsAccuralChange = resLeaveType[\"data\"].entitlements[0].isAccural;\r\n this.isResetChange = resLeaveType[\"data\"].entitlements[0].isReset;\r\n this.Typeleave = resLeaveType[\"data\"].leaveType[0].type;\r\n this.isProPrateChange = true;\r\n this.RoleDeleteCollection = [];\r\n this.activeRoleList = [];\r\n this.setLeaveTypeFormData(resLeaveType);\r\n });\r\n }\r\n\r\n \r\n setLeaveTypeFormData(resLeaveType) {// Created By A Set Form Data from DB\r\n this.resetLeaveTyeForm();\r\n this.setTempLeaveTypeData();\r\n\r\n if (resLeaveType[\"data\"].leaveType[0].imagePath == null || resLeaveType[\"data\"].leaveType[0].imagePath == \"\") {\r\n resLeaveType[\"data\"].leaveType[0].imagePath = \"assets/LeaveIcons/Icon_1.png\";\r\n }\r\n\r\n //this.getdepratmentValue = [];\r\n //this.getdepratmentValue.push(resLeaveType[\"data\"].applicableExceptions[0].applicableDepartments);\r\n // var canapplyon = resLeaveType[\"data\"].restrictions[0].canAppliedOnlyOn.split(\",\");\r\n // let CannotTakenTogether = resLeaveType[\"data\"].restrictions[0].cannotTakenTogetherWith.split(\",\");\r\n // this.canapplyon = resLeaveType[\"data\"].restrictions[0].canAppliedOnlyOn.split(\",\");\r\n // this.CannotTakenTogether = resLeaveType[\"data\"].restrictions[0].cannotTakenTogetherWith.split(\",\");\r\n\r\n // let canapplyonList =[]\r\n // let CannotTakenTogetherList = []\r\n // this.AppliedList\r\n // this.LeaveTypeList\r\n // if(canapplyon != \"\"){\r\n // for(let i=0; i x.id == canapplyon[i])\r\n // canapplyonList.push(value[0].text);\r\n \r\n // }\r\n // }\r\n // if(CannotTakenTogether != \"\"){\r\n // for(let i=0; i x.id == CannotTakenTogether[i])\r\n // CannotTakenTogetherList.push(value[0].text);\r\n \r\n // }\r\n // }\r\n debugger\r\n this.leaveTypeForm.patchValue({\r\n LeaveTypeId: resLeaveType[\"data\"].leaveType[0].leaveTypeId,\r\n LeaveTypeName: resLeaveType[\"data\"].leaveType[0].leaveTypeName,\r\n LeaveTypeCode: resLeaveType[\"data\"].leaveType[0].leaveTypeCode,\r\n ColorCode: resLeaveType[\"data\"].leaveType[0].colorCode,\r\n ImagePath: resLeaveType[\"data\"].leaveType[0].imagePath,\r\n Type: resLeaveType[\"data\"].leaveType[0].type,\r\n Unit: resLeaveType[\"data\"].leaveType[0].unit,\r\n Description: resLeaveType[\"data\"].leaveType[0].description,\r\n //ValidityFrom: resLeaveType[\"data\"].leaveType[0].validityFrom,\r\n //ValidityTo: resLeaveType[\"data\"].leaveType[0].validityTo,\r\n ValidityFrom: this.getFormattedDate(resLeaveType[\"data\"].leaveType[0].validityFrom),\r\n ValidityTo: this.getFormattedDate(resLeaveType[\"data\"].leaveType[0].validityTo),\r\n IsActive: resLeaveType[\"data\"].leaveType[0].isActive,\r\n\r\n EffectiveAfter: resLeaveType[\"data\"].entitlements[0].effectiveAfter,\r\n EffectiveAfterPeriod: resLeaveType[\"data\"].entitlements[0].effectiveAfterPeriod,\r\n EffectiveAfterFrom: resLeaveType[\"data\"].entitlements[0].effectiveAfterFrom,\r\n\r\n IsAccural: resLeaveType[\"data\"].entitlements[0].isAccural,\r\n AccuralPeriod: resLeaveType[\"data\"].entitlements[0].accuralPeriod,\r\n AccuralDay: resLeaveType[\"data\"].entitlements[0].accuralDay,\r\n AccuralMonth: resLeaveType[\"data\"].entitlements[0].accuralMonth,\r\n AccuralNoOfDays: resLeaveType[\"data\"].entitlements[0].accuralNoOfDays,\r\n AccuralDaysInPeriod: resLeaveType[\"data\"].entitlements[0].accuralDaysInPeriod,\r\n\r\n IsReset: resLeaveType[\"data\"].entitlements[0].isReset,\r\n ResetPeriod: resLeaveType[\"data\"].entitlements[0].resetPeriod,\r\n ResetDay: resLeaveType[\"data\"].entitlements[0].resetDay,\r\n ResetMonth: resLeaveType[\"data\"].entitlements[0].resetMonth,\r\n\r\n CarryForwardType: resLeaveType[\"data\"].entitlements[0].carryForwardType,\r\n CarryForwardValue: resLeaveType[\"data\"].entitlements[0].carryForwardValue,\r\n CarryForwardPercentageUnit: resLeaveType[\"data\"].entitlements[0].carryForwardPercentageUnit,\r\n CarryForwardMaxLimit: resLeaveType[\"data\"].entitlements[0].carryForwardMaxLimit,\r\n CarryForwardExpiresIn: resLeaveType[\"data\"].entitlements[0].carryForwardExpiresIn,\r\n CarryForwardExpiresInType: resLeaveType[\"data\"].entitlements[0].carryForwardExpiresInType,\r\n CarryForwardOverallLimit: resLeaveType[\"data\"].entitlements[0].carryForwardOverallLimit,\r\n\r\n EncashmentType: resLeaveType[\"data\"].entitlements[0].encashmentType,\r\n EncashmentValue: resLeaveType[\"data\"].entitlements[0].encashmentValue,\r\n EncashmentPercentageUnit: resLeaveType[\"data\"].entitlements[0].encashmentPercentageUnit,\r\n EncashmentMaxLimit: resLeaveType[\"data\"].entitlements[0].encashmentMaxLimit,\r\n\r\n IsProrateAccuralEnable: resLeaveType[\"data\"].entitlements[0].isProrateAccuralEnable,\r\n ProrateAccuralType: resLeaveType[\"data\"].entitlements[0].prorateAccuralType,\r\n\r\n IsOpeningBalanceEnable: resLeaveType[\"data\"].entitlements[0].isOpeningBalanceEnable,\r\n OpeningBalance: resLeaveType[\"data\"].entitlements[0].openingBalance,\r\n\r\n IsMaximumBalanceEnable: resLeaveType[\"data\"].entitlements[0].isMaximumBalanceEnable,\r\n MaximumBalance: resLeaveType[\"data\"].entitlements[0].maximumBalance,\r\n\r\n IsDeductibleHolidaysEnable: resLeaveType[\"data\"].entitlements[0].isDeductibleHolidaysEnable,\r\n DeductibleHolidays: resLeaveType[\"data\"].entitlements[0].deductibleHolidays,\r\n\r\n ApplicableGenderMale: resLeaveType[\"data\"].applicableExceptions[0].applicableGenderMale,\r\n ApplicableGenderFemale: resLeaveType[\"data\"].applicableExceptions[0].applicableGenderFemale,\r\n ApplicableGenderOthers: resLeaveType[\"data\"].applicableExceptions[0].applicableGenderOthers,\r\n ApplicableMaritalStatusSingle: resLeaveType[\"data\"].applicableExceptions[0].applicableMaritalStatusSingle,\r\n ApplicableMaritalStatusMarried: resLeaveType[\"data\"].applicableExceptions[0].applicableMaritalStatusMarried,\r\n ApplicableDepartments: [],\r\n ApplicableDesignations: [],\r\n ApplicableLocations: [],\r\n ApplicableRoles: [],\r\n ApplicableEmployeeTypes: [],\r\n ApplicableSourceOfHire: [],\r\n ApplicableJobBands: [],\r\n ApplicableOnboardingStatus: [],\r\n ApplicableEmployees: [],\r\n ExceptionDepartments: [],\r\n ExceptionDesignations: [],\r\n ExceptionLocations: [],\r\n ExceptionRoles: [],\r\n\r\n CanCountAsLeaveInWeekendBetweenLeave: resLeaveType[\"data\"].restrictions[0].canCountAsLeaveInWeekendBetweenLeave,\r\n WeekendBetweenLeaveCountAfter: resLeaveType[\"data\"].restrictions[0].weekendBetweenLeaveCountAfter,\r\n CanCountAsHolidayInWeekendBetweenLeave: resLeaveType[\"data\"].restrictions[0].canCountAsHolidayInWeekendBetweenLeave,\r\n WeekendBetweenHolidayCountAfter: resLeaveType[\"data\"].restrictions[0].weekendBetweenHolidayCountAfter,\r\n\r\n CanExceedLeaveBalance: resLeaveType[\"data\"].restrictions[0].canExceedLeaveBalance,\r\n ExceedLeaveBalanceType: resLeaveType['data'].restrictions[0].exceedLeaveBalanceType+\"\",\r\n IsDurationFullDay: resLeaveType[\"data\"].restrictions[0].isDurationFullDay,\r\n IsDurationHalfDay: resLeaveType[\"data\"].restrictions[0].isDurationHalfDay,\r\n IsDurationQuarterDay: resLeaveType[\"data\"].restrictions[0].isDurationQuarterDay,\r\n ReportConfigAllowView: resLeaveType['data'].restrictions[0].reportConfigAllowView,\r\n ReportConfigBalanceDisplay: resLeaveType['data'].restrictions[0].reportConfigBalanceDisplay,\r\n AllowRequestsForPastDates: resLeaveType[\"data\"].restrictions[0].allowRequestsForPastDates,\r\n AllowRequestsForPastDays: resLeaveType['data'].restrictions[0].allowRequestsForPastDays,\r\n AllowRequestsForFutureDates: resLeaveType[\"data\"].restrictions[0].allowRequestsForFutureDates,\r\n AllowRequestsForNextDays: resLeaveType[\"data\"].restrictions[0].allowRequestsForNextDays,\r\n AllowRequestsDaysinAdvance: resLeaveType['data'].restrictions[0].allowRequestsDaysinAdvance,\r\n IsMinimumLimitPerApplication: resLeaveType[\"data\"].restrictions[0].isMinimumLimitPerApplication,\r\n MinimumLimitPerApplication: resLeaveType[\"data\"].restrictions[0].minimumLimitPerApplication,\r\n IsMaximumLimitPerApplication: resLeaveType[\"data\"].restrictions[0].minimumLimitPerApplication,\r\n MaximumLimitPerApplication: resLeaveType[\"data\"].restrictions[0].maximumLimitPerApplication,\r\n IsMaximumConsecutiveHoursAllowed: resLeaveType[\"data\"].restrictions[0].isMaximumConsecutiveHoursAllowed,\r\n MaximumConsecutiveHoursAllowed: resLeaveType[\"data\"].restrictions[0].maximumConsecutiveHoursAllowed,\r\n IsMinimumGapBetweenTwoApplications: resLeaveType[\"data\"].restrictions[0].isMinimumGapBetweenTwoApplications,\r\n MinimumGapBetweenTwoApplications: resLeaveType[\"data\"].restrictions[0].minimumGapBetweenTwoApplications,\r\n EnableFileUploadOption: resLeaveType[\"data\"].restrictions[0].enableFileUploadOption,\r\n OnAppliedLeavePeriodExceeds: resLeaveType[\"data\"].restrictions[0].onAppliedLeavePeriodExceeds,\r\n MaximumApplicationsAllowed: resLeaveType[\"data\"].restrictions[0].maximumApplicationsAllowed,\r\n MaximumApplicationsAllowedType: resLeaveType[\"data\"].restrictions[0].maximumApplicationsAllowedType,\r\n CanAppliedOnlyOn: resLeaveType[\"data\"].restrictions[0].canAppliedOnlyOn,\r\n CannotTakenTogetherWith: resLeaveType[\"data\"].restrictions[0].cannotTakenTogetherWith,\r\n EntitlementCalendarList: resLeaveType[\"data\"].entitlementCalendar,\r\n });\r\n\r\n this.tempLeaveType = new LeaveTypeData();\r\n this.tempLeaveType.LeaveTypeId = resLeaveType[\"data\"].leaveType[0].leaveTypeId;\r\n this.tempLeaveType.LType = resLeaveType[\"data\"].leaveType[0].type;\r\n this.tempLeaveType.Unit = resLeaveType[\"data\"].leaveType[0].unit;\r\n this.tempLeaveType.ImagePath = resLeaveType[\"data\"].leaveType[0].imagePath;\r\n this.tempLeaveType.IsAccural = resLeaveType[\"data\"].entitlements[0].isAccural;\r\n this.tempLeaveType.AccuralPeriod = resLeaveType[\"data\"].entitlements[0].accuralPeriod;\r\n this.tempLeaveType.AccuralDay = resLeaveType[\"data\"].entitlements[0].accuralDay;\r\n this.tempLeaveType.AccuralMonth = resLeaveType[\"data\"].entitlements[0].accuralMonth;\r\n this.tempLeaveType.AccuralNoOfDays = resLeaveType[\"data\"].entitlements[0].accuralNoOfDays;\r\n this.tempLeaveType.AccuralDaysInPeriod = resLeaveType[\"data\"].entitlements[0].accuralDaysInPeriod;\r\n this.tempLeaveType.IsReset = resLeaveType[\"data\"].entitlements[0].isReset;\r\n this.tempLeaveType.ResetPeriod = resLeaveType[\"data\"].entitlements[0].resetPeriod;\r\n this.tempLeaveType.ResetDay = resLeaveType[\"data\"].entitlements[0].resetDay;\r\n this.tempLeaveType.ResetMonth = resLeaveType[\"data\"].entitlements[0].resetMonth;\r\n this.tempLeaveType.CarryForwardType = resLeaveType[\"data\"].entitlements[0].carryForwardType;\r\n this.tempLeaveType.CarryForwardPercentageUnit = resLeaveType[\"data\"].entitlements[0].carryForwardPercentageUnit;\r\n this.tempLeaveType.EncashmentPercentageUnit = resLeaveType[\"data\"].entitlements[0].encashmentPercentageUnit;\r\n this.tempLeaveType.EntitlementCalendarList = [];\r\n\r\n this.IsProrateAccuralEnable = resLeaveType[\"data\"].entitlements[0].isProrateAccuralEnable;\r\n this.IsOpeningBalanceEnable = resLeaveType[\"data\"].entitlements[0].isOpeningBalanceEnable;\r\n this.IsMaximumBalanceEnable = resLeaveType[\"data\"].entitlements[0].isMaximumBalanceEnable;\r\n this.IsDeductibleHolidaysEnable = resLeaveType[\"data\"].entitlements[0].isDeductibleHolidaysEnable;\r\n\r\n this.prorateAccuralType = resLeaveType[\"data\"].entitlements[0].prorateAccuralType;\r\n\r\n if (resLeaveType[\"data\"].entitlementCalendar == null ||\r\n resLeaveType[\"data\"].entitlementCalendar == undefined ||\r\n resLeaveType[\"data\"].entitlementCalendar.length < 1) {\r\n this.createEntitlementCalendarData();\r\n } else {\r\n this.setEntitlementCalendarData(resLeaveType[\"data\"].entitlementCalendar);\r\n }\r\n\r\n this.canExceedLeaveBalance = resLeaveType[\"data\"].restrictions[0].canExceedLeaveBalance != null ? resLeaveType[\"data\"].restrictions[0].canExceedLeaveBalance : false;\r\n\r\n this.bindNGSelectList('applicableDepartments', resLeaveType[\"data\"].applicableExceptions[0].applicableDepartments);\r\n this.bindNGSelectList('applicableDesignations', resLeaveType[\"data\"].applicableExceptions[0].applicableDesignations);\r\n debugger\r\n this.bindNGSelectList('applicableLocations', resLeaveType[\"data\"].applicableExceptions[0].applicableLocations);\r\n this.bindNGSelectList('applicableRoles', resLeaveType[\"data\"].applicableExceptions[0].applicableRoles);\r\n\r\n this.bindNGSelectList('applicableEmployeeTypes', resLeaveType[\"data\"].applicableExceptions[0].applicableEmployeeTypes);\r\n this.bindNGSelectList('applicableSourceOfHire', resLeaveType[\"data\"].applicableExceptions[0].applicableSourceOfHire);\r\n this.bindNGSelectList('applicableJobBands', resLeaveType[\"data\"].applicableExceptions[0].applicableJobBands);\r\n this.bindNGSelectList('applicableOnboardingStatus', resLeaveType[\"data\"].applicableExceptions[0].applicableOnboardingStatus);\r\n\r\n this.bindNGSelectList('applicableEmployees', resLeaveType[\"data\"].applicableExceptions[0].applicableEmployees);\r\n\r\n this.bindNGSelectList('exceptionDepartments', resLeaveType[\"data\"].applicableExceptions[0].exceptionDepartments);\r\n this.bindNGSelectList('exceptionDesignations', resLeaveType[\"data\"].applicableExceptions[0].exceptionDesignations);\r\n this.bindNGSelectList('exceptionLocations', resLeaveType[\"data\"].applicableExceptions[0].exceptionLocations);\r\n this.bindNGSelectList('exceptionRoles', resLeaveType[\"data\"].applicableExceptions[0].exceptionRoles);\r\n debugger\r\n this.bindNGSelectList('canAppliedOnlyOn', resLeaveType[\"data\"].restrictions[0].canAppliedOnlyOn);\r\n this.bindNGSelectList('cannotTakenTogetherWith', resLeaveType[\"data\"].restrictions[0].cannotTakenTogetherWith);\r\n\r\n this.setAccuralDaySelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n this.setAccuralMonthSelectList(this.tempLeaveType.AccuralPeriod.toString());\r\n\r\n this.setResetDaySelectList(this.tempLeaveType.ResetPeriod.toString());\r\n this.setResetMonthSelectList(this.tempLeaveType.ResetPeriod.toString());\r\n\r\n // bind temp check box values\r\n this.isMinimumApplied = resLeaveType[\"data\"].restrictions[0].isMinimumLimitPerApplication;\r\n this.isMaximumAppliedLeaved = resLeaveType[\"data\"].restrictions[0].isMaximumLimitPerApplication;\r\n this.isMAximumConsectiveHoursAllow = resLeaveType[\"data\"].restrictions[0].isMaximumConsecutiveHoursAllowed;\r\n this.isMinimumGapInDay = resLeaveType[\"data\"].restrictions[0].isMinimumGapBetweenTwoApplications;\r\n this.enableFileUploadOption = resLeaveType[\"data\"].restrictions[0].enableFileUploadOption;\r\n }\r\n\r\n\r\n bindNGSelectList(_type, _list) { // Created By A Global Controller To Bind All Select List\r\n debugger;\r\n switch (_type) {\r\n case 'applicableDepartments' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.DepartmentList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDepartments: selectedData\r\n });\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableDepartmentList.push(list[j]);\r\n this.removeDDLItemOnLoad('applicableDepartment', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'applicableDesignations' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.DesigationList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableDesignations: selectedData\r\n });\r\n //this.applicableDesigationList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableDesigationList.push(list[j]);\r\n this.removeDDLItemOnLoad('applicableDesignation', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'applicableLocations' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.LocationList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableLocations: selectedData\r\n });\r\n //this.applicableLocationList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableLocationList.push(list[j]);\r\n this.removeDDLItemOnLoad('applicableLocation', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'applicableRoles' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.RoleItemList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableRoles: selectedData\r\n });\r\n //this.applicableRoleList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableRoleList.push(list[j]);\r\n this.removeDDLItemOnLoad('applicableRole', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n\r\n case 'applicableEmployeeTypes' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.EmployeeTypesList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployeeTypes: selectedData\r\n });\r\n //this.applicableEmployeeTypesList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableEmployeeTypesList.push(list[j]);\r\n }\r\n }\r\n if (this.applicableEmployeeTypesList.length > 0) {\r\n this.IsEmployeeTypes = true;\r\n }\r\n }\r\n break;\r\n case 'applicableSourceOfHire' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.SourceOfHireList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableSourceOfHire: selectedData\r\n });\r\n //this.applicableSourceOfHireList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableSourceOfHireList.push(list[j]);\r\n }\r\n }\r\n if (this.applicableSourceOfHireList.length > 0) {\r\n this.IsSourceOfHire = true;\r\n }\r\n }\r\n break;\r\n case 'applicableJobBands' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.JobBandsList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableJobBands: selectedData\r\n });\r\n //this.applicableJobBandsList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableJobBandsList.push(list[j]);\r\n }\r\n }\r\n if (this.applicableJobBandsList.length > 0) {\r\n this.IsJobBands = true;\r\n }\r\n }\r\n break;\r\n case 'applicableOnboardingStatus' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.OnboardingStatusList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableOnboardingStatus: selectedData\r\n });\r\n //this.applicableOnboardingStatusList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableOnboardingStatusList.push(list[j]);\r\n }\r\n }\r\n if (this.applicableOnboardingStatusList.length > 0) {\r\n this.IsOnboardingStatus = true;\r\n }\r\n }\r\n break;\r\n\r\n case 'applicableEmployees' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.EmployeeList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployees: selectedData\r\n });\r\n //this.applicableEmployeeList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.applicableEmployeeList.push(list[j]);\r\n }\r\n }\r\n }\r\n break;\r\n\r\n case 'exceptionDepartments' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.DepartmentList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ExceptionDepartments: selectedData\r\n });\r\n //this.exceptionDepartmentList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.exceptionDepartmentList.push(list[j]);\r\n this.removeDDLItemOnLoad('exceptionDepartment', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'exceptionDesignations' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.DesigationList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ExceptionDesignations: selectedData\r\n });\r\n //this.exceptionDesigationList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.exceptionDesigationList.push(list[j]);\r\n this.removeDDLItemOnLoad('exceptionDesignation', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'exceptionLocations' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.LocationList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ExceptionLocations: selectedData\r\n });\r\n //this.exceptionLocationList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.exceptionLocationList.push(list[j]);\r\n this.removeDDLItemOnLoad('exceptionLocation', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n case 'exceptionRoles' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.RoleItemList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n ExceptionRoles: selectedData\r\n });\r\n //this.exceptionRoleList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.exceptionRoleList.push(list[j]);\r\n this.removeDDLItemOnLoad('exceptionRole', parseInt(list[j]));\r\n }\r\n }\r\n }\r\n break;\r\n\r\n case 'canAppliedOnlyOn' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.AppliedList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n CanAppliedOnlyOn: selectedData\r\n });\r\n //this.canAppliedOnlyOnList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.canAppliedOnlyOnList.push(list[j]);\r\n }\r\n }\r\n }\r\n break;\r\n case 'cannotTakenTogetherWith' :\r\n if (_list !== null && _list !== undefined) {\r\n let list = _list.split(\",\");\r\n let tempSelectList = this.LeaveTypeList;\r\n let selectedData = [];\r\n list.forEach(function (id) {\r\n let item = tempSelectList.find(i => i.id == id);\r\n if (item !== undefined && item !== null) {\r\n selectedData.push(item);\r\n }\r\n });\r\n this.leaveTypeForm.patchValue({\r\n CannotTakenTogetherWith: selectedData\r\n });\r\n //this.cannotTakenTogetherWithList = list;\r\n for (let j = 0; j < list; j++) {\r\n if (list[j] !== \"\") {\r\n this.cannotTakenTogetherWithList.push(list[j]);\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n\r\n \r\n viewLeaveType(leaveTypeId) {// Created By A On View Leave-Type\r\n \r\n \r\n this.userLoader = true;\r\n this.uploadedFileByteData = null;\r\n this.HeaderActionMsg = environment.ViewModel_msg;\r\n this.IsAccuralChange = false;\r\n this.isResetChange = false;\r\n this.viewMode = true;\r\n this.editMode = false;\r\n this.NeweditMode = false;\r\n this.LeaveTypeenable = false;\r\n\r\n this._LeaveServices.getLeaveTypeById(leaveTypeId, this.CmpCode)\r\n .subscribe((resLeaveType) => {\r\n debugger;\r\n this.userLoader = false;\r\n this.IsAccuralChange = resLeaveType[\"data\"].entitlements[0].isAccural;\r\n this.isResetChange = resLeaveType[\"data\"].entitlements[0].isReset;\r\n this.isProPrateChange = true;\r\n this.RoleDeleteCollection = [];\r\n this.activeRoleList = [];\r\n this._commonSer.OpenModalHandler(\"newUserModal\");\r\n \r\n this.setLeaveTypeFormData(resLeaveType);\r\n });\r\n\r\n // this.editLeaveType(data)\r\n }\r\n\r\n datepickerStartDate($event1) {// Created By A Set values\r\n debugger\r\n this.startDate = $event1;\r\n this.minDate = this.startDate;\r\n this.minDate.setDate(this.minDate.getDate());\r\n }\r\n datepickerEndDate($event1) {// Created By A Set values\r\n this.endDate = $event1;\r\n this.minDate = this.startDate;\r\n }\r\n\r\n onItemSelect(item: any) {// Created By A\r\n console.log(item);\r\n console.log(this.selectedItems);\r\n }\r\n OnItemDeSelect(item: any) {// Created By A\r\n console.log(item);\r\n console.log(this.selectedItems);\r\n }\r\n onSelectAll(items: any) {// Created By A\r\n console.log(items);\r\n }\r\n onDeSelectAll(items: any) {// Created By A\r\n console.log(items);\r\n }\r\n\r\n\r\n selectDropdownValue(_type, value) {// Created By A New Multi Selection Dropdown List Data\r\n if (value.id != null && value.id != undefined) {\r\n switch (_type) {\r\n case 'applicableDepartment':\r\n this.applicableDepartmentList.push(value.id.toString());\r\n break;\r\n case 'applicableDesignation':\r\n this.applicableDesigationList.push(value.id.toString());\r\n break;\r\n case 'applicableLocation':\r\n this.applicableLocationList.push(value.id.toString());\r\n break;\r\n case 'applicableRole':\r\n this.applicableRoleList.push(value.id.toString());\r\n break;\r\n case 'applicableEmployeeTypes':\r\n this.applicableEmployeeTypesList.push(value.id.toString());\r\n break;\r\n case 'applicableSourceOfHire':\r\n this.applicableSourceOfHireList.push(value.id.toString());\r\n break;\r\n case 'applicableJobBands':\r\n this.applicableJobBandsList.push(value.id.toString());\r\n break;\r\n case 'applicableOnboardingStatus':\r\n this.applicableOnboardingStatusList.push(value.id.toString());\r\n break;\r\n case 'applicableEmployee':\r\n this.applicableEmployeeList.push(value.id.toString());\r\n break;\r\n case 'exceptionDepartment':\r\n this.exceptionDepartmentList.push(value.id.toString());\r\n break;\r\n case 'exceptionDesignation':\r\n this.exceptionDesigationList.push(value.id.toString());\r\n break;\r\n case 'exceptionLocation':\r\n this.exceptionLocationList.push(value.id.toString());\r\n break;\r\n case 'exceptionRole':\r\n this.exceptionRoleList.push(value.id.toString());\r\n break;\r\n case 'canAppliedOnlyOn':\r\n this.canAppliedOnlyOnList.push(value.id.toString());\r\n break;\r\n case 'leaveCannotbeTakenWith':\r\n this.cannotTakenTogetherWithList.push(value.id.toString());\r\n break;\r\n }\r\n\r\n this.removeDDLItem(_type, value);\r\n }\r\n }\r\n\r\n removedDropdownValue(_type, value) {// Created By A On Remove selected fields\r\n let _index = -1;\r\n switch (_type) {\r\n case 'applicableDepartment':\r\n _index = this.applicableDepartmentList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableDepartmentList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableDesignation':\r\n _index = this.applicableDesigationList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableDesigationList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableLocation':\r\n _index = this.applicableLocationList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableLocationList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableRole':\r\n _index = this.applicableRoleList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableRoleList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableEmployeeTypes':\r\n _index = this.applicableEmployeeTypesList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableEmployeeTypesList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableSourceOfHire':\r\n _index = this.applicableSourceOfHireList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableSourceOfHireList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableJobBands':\r\n _index = this.applicableJobBandsList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableJobBandsList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableOnboardingStatus':\r\n _index = this.applicableOnboardingStatusList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableOnboardingStatusList.splice(_index, 1);\r\n }\r\n break;\r\n case 'applicableEmployee':\r\n _index = this.applicableEmployeeList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.applicableEmployeeList.splice(_index, 1);\r\n }\r\n break;\r\n case 'exceptionDepartment':\r\n _index = this.exceptionDepartmentList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.exceptionDepartmentList.splice(_index, 1);\r\n }\r\n break;\r\n case 'exceptionDesignation':\r\n _index = this.exceptionDesigationList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.exceptionDesigationList.splice(_index, 1);\r\n }\r\n break;\r\n case 'exceptionLocation':\r\n _index = this.exceptionLocationList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.exceptionLocationList.splice(_index, 1);\r\n }\r\n break;\r\n case 'exceptionRole':\r\n _index = this.exceptionRoleList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.exceptionRoleList.splice(_index, 1);\r\n }\r\n break;\r\n case 'canAppliedOnlyOn':\r\n _index = this.canAppliedOnlyOnList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.canAppliedOnlyOnList.splice(_index, 1);\r\n }\r\n break;\r\n case 'leaveCannotbeTakenWith':\r\n _index = this.cannotTakenTogetherWithList.indexOf(value.id.toString());\r\n if (_index !== -1) {\r\n this.cannotTakenTogetherWithList.splice(_index, 1);\r\n }\r\n break;\r\n }\r\n this.addDDLItem(_type, value);\r\n }\r\n\r\n removeDDLItem(_type, value) {// Created By A Set Dropdown values\r\n debugger;\r\n if (value.id != null && value.id != undefined) {\r\n switch (_type) {\r\n case 'applicableDepartment':\r\n this.exceptionDDLDepartmentList = this.exceptionDDLDepartmentList.filter(s => s.id != value.id);\r\n break;\r\n case 'applicableDesignation':\r\n this.exceptionDDLDesigationList = this.exceptionDDLDesigationList.filter(s => s.id != value.id);\r\n break;\r\n case 'applicableLocation':\r\n this.exceptionDDLLocationList = this.exceptionDDLLocationList.filter(s => s.id != value.id);\r\n break;\r\n case 'applicableRole':\r\n this.exceptionDDLRoleList = this.exceptionDDLRoleList.filter(s => s.id != value.id);\r\n break;\r\n case 'exceptionDepartment':\r\n this.applicableDDLDepartmentList = this.applicableDDLDepartmentList.filter(s => s.id != value.id);\r\n break;\r\n case 'exceptionDesignation':\r\n this.applicableDDLDesigationList = this.applicableDDLDesigationList.filter(s => s.id != value.id);\r\n break;\r\n case 'exceptionLocation':\r\n this.applicableDDLLocationList = this.applicableDDLLocationList.filter(s => s.id != value.id);\r\n break;\r\n case 'exceptionRole':\r\n this.applicableDDLRoleList = this.applicableDDLRoleList.filter(s => s.id != value.id);\r\n break;\r\n }\r\n }\r\n }\r\n removeDDLItemOnLoad(_type, value) {// Created By A Set dropdown values\r\n debugger;\r\n if (value != null && value != undefined) {\r\n switch (_type) {\r\n case 'applicableDepartment':\r\n this.exceptionDDLDepartmentList = this.exceptionDDLDepartmentList.filter(s => s.id != value);\r\n break;\r\n case 'applicableDesignation':\r\n this.exceptionDDLDesigationList = this.exceptionDDLDesigationList.filter(s => s.id != value);\r\n break;\r\n case 'applicableLocation':\r\n this.exceptionDDLLocationList = this.exceptionDDLLocationList.filter(s => s.id != value);\r\n break;\r\n case 'applicableRole':\r\n this.exceptionDDLRoleList = this.exceptionDDLRoleList.filter(s => s.id != value);\r\n break;\r\n case 'exceptionDepartment':\r\n this.applicableDDLDepartmentList = this.applicableDDLDepartmentList.filter(s => s.id != value);\r\n break;\r\n case 'exceptionDesignation':\r\n this.applicableDDLDesigationList = this.applicableDDLDesigationList.filter(s => s.id != value);\r\n break;\r\n case 'exceptionLocation':\r\n this.applicableDDLLocationList = this.applicableDDLLocationList.filter(s => s.id != value);\r\n break;\r\n case 'exceptionRole':\r\n this.applicableDDLRoleList = this.applicableDDLRoleList.filter(s => s.id != value);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n addDDLItem(_type, value) {// Created By A Bind Dropdown values\r\n debugger;\r\n let vm = this;\r\n if (value.id != null && value.id != undefined) {\r\n let _filteredItems = null;\r\n switch (_type) {\r\n case 'applicableDepartment':\r\n _filteredItems = vm.DepartmentList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.exceptionDDLDepartmentList.push(_filteredItems[0]);\r\n vm.exceptionDDLDepartmentList = vm.exceptionDDLDepartmentList.slice(0);\r\n }\r\n break;\r\n case 'applicableDesignation':\r\n _filteredItems = vm.DesigationList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.exceptionDDLDesigationList.push(_filteredItems[0]);\r\n vm.exceptionDDLDesigationList = vm.exceptionDDLDesigationList.slice(0);\r\n }\r\n break;\r\n case 'applicableLocation':\r\n _filteredItems = vm.LocationList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.exceptionDDLLocationList.push(_filteredItems[0]);\r\n vm.exceptionDDLLocationList = vm.exceptionDDLLocationList.slice(0);\r\n }\r\n break;\r\n case 'applicableRole':\r\n _filteredItems = vm.RoleItemList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.exceptionDDLRoleList.push(_filteredItems[0]);\r\n vm.exceptionDDLRoleList = vm.exceptionDDLRoleList.slice(0);\r\n }\r\n break;\r\n case 'exceptionDepartment':\r\n _filteredItems = vm.DepartmentList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.applicableDDLDepartmentList.push(_filteredItems[0]);\r\n vm.applicableDDLDepartmentList = vm.applicableDDLDepartmentList.slice(0);\r\n }\r\n break;\r\n case 'exceptionDesignation':\r\n _filteredItems = vm.DesigationList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.applicableDDLDesigationList.push(_filteredItems[0]);\r\n vm.applicableDDLDesigationList = vm.applicableDDLDesigationList.slice(0);\r\n }\r\n break;\r\n case 'exceptionLocation':\r\n _filteredItems = vm.LocationList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.applicableDDLLocationList.push(_filteredItems[0]);\r\n vm.applicableDDLLocationList = vm.applicableDDLLocationList.slice(0);\r\n }\r\n break;\r\n case 'exceptionRole':\r\n _filteredItems = vm.RoleItemList.filter(s => s.id == value.id);\r\n if (_filteredItems != null && _filteredItems.length > 0) {\r\n vm.applicableDDLRoleList.push(_filteredItems[0]);\r\n vm.applicableDDLRoleList = vm.applicableDDLRoleList.slice(0);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n \r\n setprorateAccuralTypeValue(e) {// Created By A Prorate Accural Popup Related\r\n let _value = e.value;\r\n if (_value.toString() == '0: 1') {\r\n this.prorateAccuralType = \"1\";\r\n } else if (_value.toString() == '1: 2') {\r\n this.prorateAccuralType = \"2\";\r\n } else if (_value.toString() == '2: 3') {\r\n this.prorateAccuralType = \"3\";\r\n }\r\n }\r\n\r\n setProrateAccuralDaySelectList() {// Created By A Bind Prorate Accrual\r\n this.prorateAccuralDayList = [];\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.prorateAccuralDayList.push(newOption);\r\n }\r\n }\r\n openProrateAccuralModal() {// Created By A Initialize Prorate Accrual Modal\r\n let vm = this;\r\n let leaveTypeId = this.leaveTypeForm.controls.LeaveTypeId.value;\r\n vm.setProrateAccuralDaySelectList();\r\n\r\n if (vm.leaveTypeForm.value.LeaveTypeProrateAccural != null) {\r\n vm.prorateAccural = vm.leaveTypeForm.value.LeaveTypeProrateAccural;\r\n\r\n for (let i = 0; i < vm.prorateAccural.prorateAccuralFirstMonthList.length; i++) {\r\n vm.duplicateFirstMonthRuleFrom.push(\"true\");\r\n vm.duplicateFirstMonthRuleTo.push(\"true\");\r\n }\r\n for (let i = 0; i < vm.prorateAccural.prorateAccuralLastMonthList.length; i++) {\r\n vm.duplicateLastMonthRuleFrom.push(\"true\");\r\n vm.duplicateLastMonthRuleTo.push(\"true\");\r\n }\r\n vm._commonSer.OpenModalHandler(\"manageProrateAccuralModal\");\r\n } else {\r\n vm.userLoader = true;\r\n vm._LeaveServices.getLeaveTypeProrateAccural(leaveTypeId)\r\n .subscribe((resLeaveType) => {\r\n vm.userLoader = false;\r\n vm.prorateAccural = resLeaveType[\"data\"];\r\n for (let i = 0; i < vm.prorateAccural.prorateAccuralFirstMonthList.length; i++) {\r\n vm.duplicateFirstMonthRuleFrom.push(\"true\");\r\n vm.duplicateFirstMonthRuleTo.push(\"true\");\r\n }\r\n for (let i = 0; i < vm.prorateAccural.prorateAccuralLastMonthList.length; i++) {\r\n vm.duplicateLastMonthRuleFrom.push(\"true\");\r\n vm.duplicateLastMonthRuleTo.push(\"true\");\r\n }\r\n vm._commonSer.OpenModalHandler(\"manageProrateAccuralModal\");\r\n });\r\n }\r\n }\r\n\r\n addFirstMonthRule() {// Created By A On add month rule\r\n let newRule = {\r\n leavePolicyPAFMId: 0,\r\n leaveTypeId: this.prorateAccural.leaveTypeId,\r\n from: null,\r\n to: null,\r\n count: null\r\n };\r\n this.duplicateFirstMonthRuleFrom.push(\"true\");\r\n this.duplicateFirstMonthRuleTo.push(\"true\");\r\n this.prorateAccural.prorateAccuralFirstMonthList.push(newRule);\r\n }\r\n addLastMonthRule() {// Created By A On add month rule\r\n let newRule = {\r\n leavePolicyPALMId: 0,\r\n leaveTypeId: this.prorateAccural.leaveTypeId,\r\n from: null,\r\n to: null,\r\n count: null\r\n };\r\n this.duplicateLastMonthRuleFrom.push(\"true\");\r\n this.duplicateLastMonthRuleTo.push(\"true\");\r\n this.prorateAccural.prorateAccuralLastMonthList.push(newRule);\r\n }\r\n\r\n duplicateFirstMonthRuleFrom = [];\r\n duplicateFirstMonthRuleTo = [];\r\n onFirstRuleFromSelected(e, i, _value) {// Created By A On Select From --First Rule\r\n let count1 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 1 || count2 > 0) {\r\n this.duplicateFirstMonthRuleFrom[i] = \"false\";\r\n } else {\r\n this.duplicateFirstMonthRuleFrom[i] = \"true\";\r\n }\r\n }\r\n onFirstRuleToSelected(e, i, _value) {// Created By A On Select To -- First Rule\r\n let count1 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralFirstMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 0 || count2 > 1) {\r\n this.duplicateFirstMonthRuleTo[i] = \"false\";\r\n } else {\r\n this.duplicateFirstMonthRuleTo[i] = \"true\";\r\n }\r\n }\r\n\r\n duplicateLastMonthRuleFrom = [];\r\n duplicateLastMonthRuleTo = [];\r\n onLastRuleFromSelected(e, i, _value) {// Created By A On Select From --Last Rule\r\n let count1 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.from == e.target.value).length;\r\n let count2 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.to == e.target.value).length;\r\n if (count1 > 1 || count2 > 0) {\r\n this.duplicateLastMonthRuleFrom[i] = \"false\";\r\n } else {\r\n this.duplicateLastMonthRuleFrom[i] = \"true\";\r\n }\r\n }\r\n onLastRuleToSelected(e, i, _value) {// Created By A On Select To --Last Rule\r\n let count1 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.from == _value).length;\r\n let count2 = this.prorateAccural.prorateAccuralLastMonthList.filter(item => item.to == _value).length;\r\n if (count1 > 0 || count2 > 1) {\r\n this.duplicateLastMonthRuleTo[i] = \"false\";\r\n } else {\r\n this.duplicateLastMonthRuleTo[i] = \"true\";\r\n }\r\n }\r\n\r\n saveProrateAccural() {// Created By A On save Prorate Accrual\r\n const vm = this;\r\n if (vm.duplicateFirstMonthRuleFrom.includes(\"false\") ||\r\n vm.duplicateFirstMonthRuleTo.includes(\"false\") ||\r\n vm.duplicateLastMonthRuleFrom.includes(\"false\") ||\r\n vm.duplicateLastMonthRuleTo.includes(\"false\")) {\r\n return;\r\n }\r\n\r\n this.leaveTypeForm.patchValue({\r\n LeaveTypeProrateAccural: vm.prorateAccural\r\n });\r\n vm._commonSer.CloseModalHandler(\"manageProrateAccuralModal\");\r\n // vm.userLoader = true;\r\n // debugger;\r\n // vm._LeaveServices.SaveProrateAccural(vm.prorateAccural).subscribe((data: any) => {\r\n // vm.userLoader = false;\r\n // if (data && data.success === true) {\r\n // vm.showMessage = data.data;\r\n // vm.showSuccess = true;\r\n\r\n // vm._commonSer.OpenModalHandler('userMessageModel');\r\n // vm._commonSer.CloseModalHandler('manageProrateAccuralModal');\r\n // } else {\r\n // console.log(data);\r\n // }\r\n // }, error => {\r\n // vm.userLoader = false;\r\n // });\r\n }\r\n // End of Prorate Accural Popup Related\r\n\r\n onChangeLeaveType(e) {// Created By A Set Value\r\n this.tempLeaveType.LType = e.srcElement.value;\r\n this.leaveTypeForm.patchValue({\r\n Unit: 1\r\n });\r\n }\r\n onChangeUnit(e, _value) {// Created By A Set Value\r\n this.tempLeaveType.Unit = _value;\r\n this.leaveTypeForm.patchValue({\r\n CanCountAsLeaveInWeekendBetweenLeave: false,\r\n WeekendBetweenLeaveCountAfter: 0\r\n });\r\n }\r\n onImageSelect(_path) {// Created By A Set Value\r\n this.tempLeaveType.ImagePath = _path;\r\n this.leaveTypeForm.patchValue({\r\n ImagePath: _path\r\n });\r\n }\r\n\r\n // Entitlement (Accural, Reset) Related\r\n\r\n\r\n onChangeIsAccural(e) {// Created By A On Accural\r\n this.tempLeaveType.IsAccural = !this.tempLeaveType.IsAccural;\r\n\r\n // Reset Values\r\n this.leaveTypeForm.patchValue({\r\n AccuralPeriod: 2,\r\n AccuralDay: 1,\r\n AccuralMonth: 1,\r\n AccuralNoOfDays: 0,\r\n AccuralDaysInPeriod: 1\r\n });\r\n\r\n this.tempLeaveType.AccuralPeriod = 2;\r\n this.tempLeaveType.AccuralDay = 1;\r\n this.tempLeaveType.AccuralMonth = 1;\r\n this.tempLeaveType.AccuralNoOfDays = 0;\r\n this.tempLeaveType.AccuralDaysInPeriod = 1;\r\n\r\n this.setAccuralFieldsData(this.tempLeaveType.AccuralPeriod.toString());\r\n }\r\n\r\n setAccuralFieldsData(_type) {// Created By A Bind accural day\r\n this.setAccuralDaySelectList(_type);\r\n this.setAccuralMonthSelectList(_type);\r\n\r\n let _accuralDay = 1, _accuralMonth = 1;\r\n switch (_type) {\r\n case \"1\" :\r\n _accuralDay = 72;\r\n _accuralMonth = 61;\r\n break;\r\n case \"2\" :\r\n case \"3\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 1;\r\n break;\r\n case \"4\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 21;\r\n break;\r\n case \"5\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 31;\r\n break;\r\n case \"6\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 41;\r\n break;\r\n case \"7\" :\r\n _accuralDay = 1;\r\n _accuralMonth = 51;\r\n break;\r\n case \"8\" :\r\n _accuralDay = 41;\r\n _accuralMonth = 1;\r\n break;\r\n case \"9\" :\r\n _accuralDay = 61;\r\n _accuralMonth = 1;\r\n break;\r\n case \"10\" :\r\n _accuralDay = 61;\r\n _accuralMonth = 1;\r\n break;\r\n }\r\n\r\n this.leaveTypeForm.patchValue({\r\n AccuralDay: _accuralDay,\r\n AccuralMonth: _accuralMonth\r\n });\r\n }\r\n\r\n setAccuralDaySelectList(_type) {// Created By A Set accural day list\r\n this.ddlAccuralDaysList = [];\r\n this.ddlAccuralDaysListfield = {value:\"id\", text: \"text\" }\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n case \"3\" :\r\n case \"4\" :\r\n case \"5\" :\r\n case \"6\" :\r\n case \"7\" :\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.ddlAccuralDaysList.push(newOption);\r\n }\r\n break;\r\n case \"8\" :\r\n for (let i = 1; i <= 15; i++) {\r\n let _text = \"\" + i + \" & \" + (i + 15) + \"\";\r\n if (i == 15) {\r\n _text = \"\" + i + \" & Last Day\";\r\n }\r\n let newOption = {\r\n id: i + 40,\r\n text: _text\r\n };\r\n this.ddlAccuralDaysList.push(newOption);\r\n }\r\n break;\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlAccuralDaysList.push({ id: 61, text: \"Sun\" });\r\n this.ddlAccuralDaysList.push({ id: 62, text: \"Mon\" });\r\n this.ddlAccuralDaysList.push({ id: 63, text: \"Tue\" });\r\n this.ddlAccuralDaysList.push({ id: 64, text: \"Wed\" });\r\n this.ddlAccuralDaysList.push({ id: 65, text: \"Thu\" });\r\n this.ddlAccuralDaysList.push({ id: 66, text: \"Fri\" });\r\n this.ddlAccuralDaysList.push({ id: 67, text: \"Sat\" });\r\n break;\r\n }\r\n if (_type != \"8\" && _type != \"9\" && _type != \"10\") {\r\n this.ddlAccuralDaysList.push({ id: 71, text: \"Last Day\" });\r\n this.ddlAccuralDaysList.push({ id: 72, text: \"Policy Date\" });\r\n this.ddlAccuralDaysList.push({ id: 73, text: \"Joining Date\" });\r\n this.ddlAccuralDaysList.push({ id: 74, text: \"Birth Date\" });\r\n }\r\n }\r\n\r\n setAccuralMonthSelectList(_type) {// Created By A On Change accular month list\r\n this.ddlAccuralMonthsList = [];\r\n this.ddlAccuralMonthsListfield = {value:\"value\", text: \"name\" }\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 1, name: \"Jan\" },\r\n { value: 2, name: \"Feb\" },\r\n { value: 3, name: \"Mar\" },\r\n { value: 4, name: \"Apr\" },\r\n { value: 5, name: \"May\" },\r\n { value: 6, name: \"Jun\" },\r\n { value: 7, name: \"Jul\" },\r\n { value: 8, name: \"Aug\" },\r\n { value: 9, name: \"Sep\" },\r\n { value: 10, name: \"Oct\" },\r\n { value: 11, name: \"Nov\" },\r\n { value: 12, name: \"Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"3\" :\r\n case \"8\" :\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlAccuralMonthsList = [];\r\n break;\r\n case \"4\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 21, name: \"Jan & Jul\" },\r\n { value: 22, name: \"Feb & Aug\" },\r\n { value: 23, name: \"Mar & Sep\" },\r\n { value: 24, name: \"Apr & Oct\" },\r\n { value: 25, name: \"May & Nov\" },\r\n { value: 26, name: \"Jun & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"5\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 31, name: \"Jan & May & Sep\" },\r\n { value: 32, name: \"Feb & Jun & Oct\" },\r\n { value: 33, name: \"Mar & Jul & Nov\" },\r\n { value: 34, name: \"Apr & Aug & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"6\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 41, name: \"Jan & Apr & Jul & Oct\" },\r\n { value: 42, name: \"Feb & May & Aug & Nov\" },\r\n { value: 43, name: \"Mar & Jun & Sep & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"7\" :\r\n this.ddlAccuralMonthsList = [\r\n { value: 51, name: \"Jan & Mar & May & Jul & Sep & Nov\" },\r\n { value: 52, name: \"Feb & Apr & Jun & Aug & Oct & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n }\r\n }\r\n isCheck:boolean=true\r\n\r\n onChangeAccuralPeriod(e) {// Created By A On change accural period\r\n debugger\r\n if(e.value==1)\r\n {\r\n this.isCheck=false\r\n\r\n }\r\n else\r\n {\r\n this.isCheck=true\r\n }\r\n this.tempLeaveType.AccuralPeriod = e.value;\r\n let _type = this.tempLeaveType.AccuralPeriod.toString();\r\n\r\n this.setAccuralFieldsData(_type);\r\n }\r\n\r\n\r\n \r\n onChangeIsReset(e) {// Created By A on select reset \r\n debugger;\r\n this.tempLeaveType.IsReset = !this.tempLeaveType.IsReset;\r\n\r\n // Reset Values\r\n this.leaveTypeForm.patchValue({\r\n ResetPeriod: 2,\r\n ResetDay: 71,\r\n ResetMonth: 12,\r\n CarryForwardType: 1,\r\n CarryForwardValue: 0,\r\n CarryForwardPercentageUnit: 1,\r\n CarryForwardMaxLimit: null,\r\n EncashmentValue: 0,\r\n EncashmentPercentageUnit: 1,\r\n EncashmentMaxLimit: null\r\n });\r\n\r\n this.tempLeaveType.ResetPeriod = 2;\r\n this.tempLeaveType.ResetDay = 71;\r\n this.tempLeaveType.ResetMonth = 12;\r\n this.tempLeaveType.CarryForwardPercentageUnit = 1;\r\n this.tempLeaveType.EncashmentPercentageUnit = 1;\r\n\r\n this.setResetFieldsData(this.tempLeaveType.ResetPeriod.toString());\r\n }\r\n\r\n setResetFieldsData(_type) {// Created By A\r\n this.setResetDaySelectList(_type);\r\n this.setResetMonthSelectList(_type);\r\n\r\n let _resetDay = 71, _resetMonth = 12;\r\n switch (_type) {\r\n case \"1\" :\r\n _resetDay = 72;\r\n _resetMonth = 61;\r\n break;\r\n case \"2\" :\r\n case \"3\" :\r\n _resetDay = 71;\r\n _resetMonth = 12;\r\n break;\r\n case \"4\" :\r\n _resetDay = 71;\r\n _resetMonth = 26;\r\n break;\r\n case \"5\" :\r\n _resetDay = 71;\r\n _resetMonth = 34;\r\n break;\r\n case \"6\" :\r\n _resetDay = 71;\r\n _resetMonth = 43;\r\n break;\r\n case \"7\" :\r\n _resetDay = 71;\r\n _resetMonth = 52;\r\n break;\r\n case \"8\" :\r\n _resetDay = 55;\r\n _resetMonth = 12;\r\n break;\r\n case \"9\" :\r\n _resetDay = 61;\r\n _resetMonth = 12;\r\n break;\r\n case \"10\" :\r\n _resetDay = 61;\r\n _resetMonth = 12;\r\n break;\r\n }\r\n\r\n this.leaveTypeForm.patchValue({\r\n ResetDay: _resetDay,\r\n ResetMonth: _resetMonth\r\n });\r\n }\r\n\r\n setResetDaySelectList(_type) {// Created By A Set Reset Days List Values\r\n this.ddlResetDaysList = [];\r\n this.ddlResetDaysListfield = {value: \"id\", text: \"text\"};\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n case \"3\" :\r\n case \"4\" :\r\n case \"5\" :\r\n case \"6\" :\r\n case \"7\" :\r\n for (let i = 1; i <= 31; i++) {\r\n let _text = this.getNumberWithOrdinal(i);\r\n let newOption = {\r\n id: i,\r\n text: _text\r\n };\r\n this.ddlResetDaysList.push(newOption);\r\n }\r\n break;\r\n case \"8\" :\r\n for (let i = 1; i <= 15; i++) {\r\n let _text = \"\" + i + \" & \" + (i + 15) + \"\";\r\n if (i == 15) {\r\n _text = \"\" + i + \" & Last Day\";\r\n }\r\n let newOption = {\r\n id: i + 40,\r\n text: _text\r\n };\r\n this.ddlResetDaysList.push(newOption);\r\n }\r\n break;\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlResetDaysList.push({ id: 61, text: \"Sun\" });\r\n this.ddlResetDaysList.push({ id: 62, text: \"Mon\" });\r\n this.ddlResetDaysList.push({ id: 63, text: \"Tue\" });\r\n this.ddlResetDaysList.push({ id: 64, text: \"Wed\" });\r\n this.ddlResetDaysList.push({ id: 65, text: \"Thu\" });\r\n this.ddlResetDaysList.push({ id: 66, text: \"Fri\" });\r\n this.ddlResetDaysList.push({ id: 67, text: \"Sat\" });\r\n break;\r\n }\r\n if (_type != \"8\" && _type != \"9\" && _type != \"10\") {\r\n this.ddlResetDaysList.push({ id: 71, text: \"Last Day\" });\r\n this.ddlResetDaysList.push({ id: 72, text: \"Policy Date\" });\r\n this.ddlResetDaysList.push({ id: 73, text: \"Joining Date\" });\r\n this.ddlResetDaysList.push({ id: 74, text: \"Birth Date\" });\r\n }\r\n }\r\n\r\n setResetMonthSelectList(_type) {// Created By A Set Reset Months List Values\r\n this.ddlResetMonthsList = [];\r\n this.ddlResetMonthsListfield = {value:\"value\", text: \"name\"};\r\n switch (_type) {\r\n case \"1\" :\r\n case \"2\" :\r\n this.ddlResetMonthsList = [\r\n { value: 1, name: \"Jan\" },\r\n { value: 2, name: \"Feb\" },\r\n { value: 3, name: \"Mar\" },\r\n { value: 4, name: \"Apr\" },\r\n { value: 5, name: \"May\" },\r\n { value: 6, name: \"Jun\" },\r\n { value: 7, name: \"Jul\" },\r\n { value: 8, name: \"Aug\" },\r\n { value: 9, name: \"Sep\" },\r\n { value: 10, name: \"Oct\" },\r\n { value: 11, name: \"Nov\" },\r\n { value: 12, name: \"Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"3\" :\r\n case \"8\" :\r\n case \"9\" :\r\n case \"10\" :\r\n this.ddlResetMonthsList = [];\r\n break;\r\n case \"4\" :\r\n this.ddlResetMonthsList = [\r\n { value: 21, name: \"Jan & Jul\" },\r\n { value: 22, name: \"Feb & Aug\" },\r\n { value: 23, name: \"Mar & Sep\" },\r\n { value: 24, name: \"Apr & Oct\" },\r\n { value: 25, name: \"May & Nov\" },\r\n { value: 26, name: \"Jun & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"5\" :\r\n this.ddlResetMonthsList = [\r\n { value: 31, name: \"Jan & May & Sep\" },\r\n { value: 32, name: \"Feb & Jun & Oct\" },\r\n { value: 33, name: \"Mar & Jul & Nov\" },\r\n { value: 34, name: \"Apr & Aug & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"6\" :\r\n this.ddlResetMonthsList = [\r\n { value: 41, name: \"Jan & Apr & Jul & Oct\" },\r\n { value: 42, name: \"Feb & May & Aug & Nov\" },\r\n { value: 43, name: \"Mar & Jun & Sep & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n case \"7\" :\r\n this.ddlResetMonthsList = [\r\n { value: 51, name: \"Jan & Mar & May & Jul & Sep & Nov\" },\r\n { value: 52, name: \"Feb & Apr & Jun & Aug & Oct & Dec\" },\r\n // Extra values\r\n { value: 61, name: \"Policy Month\" },\r\n { value: 62, name: \"Joining Month\" },\r\n { value: 63, name: \"Birth Month\" }\r\n ];\r\n break;\r\n }\r\n }\r\n\r\n onChangeResetPeriod(e) {// Created By K Set Reset Period\r\n this.tempLeaveType.ResetPeriod = e.value;\r\n let _type = this.tempLeaveType.ResetPeriod.toString();\r\n\r\n this.setResetFieldsData(_type);\r\n }\r\n onChangeCarryForwardType(e) {// Created By K On Select Carry Forward\r\n this.tempLeaveType.CarryForwardType = e.value;\r\n\r\n this.leaveTypeForm.patchValue({\r\n CarryForwardExpiresIn: null,\r\n CarryForwardExpiresInType: null,\r\n CarryForwardOverallLimit: null\r\n });\r\n\r\n if (this.tempLeaveType.CarryForwardType == 2) {\r\n this.leaveTypeForm.patchValue({\r\n CarryForwardExpiresIn: null,\r\n CarryForwardExpiresInType: 1,\r\n CarryForwardOverallLimit: null\r\n });\r\n }\r\n }\r\n onChangeCarryForwardPercentageUnit(e) {// Created By K Set Value\r\n debugger\r\n this.tempLeaveType.CarryForwardPercentageUnit = e.value;\r\n }\r\n onChangeEncashmentPercentageUnit(e) {// Created By K Set value\r\n debugger\r\n this.tempLeaveType.EncashmentPercentageUnit = e.value;\r\n }\r\n // End of Entitlement (Accural, Reset) Related\r\n\r\n\r\n \r\n openEntitlementCalendarPopup() {// Created By A Entitlement Popup Related\r\n this._commonSer.OpenModalHandler('manageEntitlementCalendar');\r\n }\r\n createEntitlementCalendarData() {// Created By A Intialize Entitlement Calendar\r\n let entitlementsList = []; \r\n let _count = 0;\r\n let _leaveTypeId = 0;\r\n\r\n if (this.tempLeaveType.AccuralNoOfDays != null && this.tempLeaveType.AccuralNoOfDays > 0) {\r\n _count = this.tempLeaveType.AccuralNoOfDays;\r\n }\r\n if (this.tempLeaveType.LeaveTypeId != null && this.tempLeaveType.LeaveTypeId > 0) {\r\n _leaveTypeId = this.tempLeaveType.LeaveTypeId;\r\n }\r\n\r\n for (let i = 1; i <= 12; i++) {\r\n let _month = \"\";\r\n switch (i) {\r\n case 1:\r\n _month = \"Jan\";\r\n break;\r\n case 2:\r\n _month = \"Feb\";\r\n break;\r\n case 3:\r\n _month = \"Mar\";\r\n break;\r\n case 4:\r\n _month = \"Apr\";\r\n break;\r\n case 5:\r\n _month = \"May\";\r\n break;\r\n case 6:\r\n _month = \"Jun\";\r\n break;\r\n case 7:\r\n _month = \"Jul\";\r\n break;\r\n case 8:\r\n _month = \"Aug\";\r\n break;\r\n case 9:\r\n _month = \"Sep\";\r\n break;\r\n case 10:\r\n _month = \"Oct\";\r\n break;\r\n case 11:\r\n _month = \"Nov\";\r\n break;\r\n case 12:\r\n _month = \"Dec\";\r\n break;\r\n }\r\n entitlementsList.push({ LeavePolicyEntitlementCalendarId: 0, LeaveTypeId: _leaveTypeId, Month: i, MonthText: _month, Count: _count });\r\n }\r\n\r\n // this.leaveTypeForm.patchValue({\r\n // EntitlementCalendarList: entitlementsList\r\n // });\r\n this.tempLeaveType.EntitlementCalendarList = entitlementsList;\r\n }\r\n setEntitlementCalendarData(list) {// Created By A On Set Entitlement\r\n let entitlementsList = [];\r\n for (let i = 0; i < list.length; i++) {\r\n let _newItem = {\r\n LeavePolicyEntitlementCalendarId: list[i].leavePolicyEntitlementCalendarId,\r\n LeaveTypeId: list[i].leaveTypeId,\r\n Month: list[i].month,\r\n MonthText: list[i].monthText,\r\n Count: list[i].count\r\n };\r\n entitlementsList.push(_newItem);\r\n }\r\n this.tempLeaveType.EntitlementCalendarList = entitlementsList;\r\n }\r\n onchangeAccuralNoOfDays(e) {// Created By A On Chage Accural\r\n let _value = e.target.value;\r\n for (let i = 0; i < this.tempLeaveType.EntitlementCalendarList.length; i++) {\r\n this.tempLeaveType.EntitlementCalendarList[i].Count = _value;\r\n }\r\n }\r\n // End of Entitlement Popup Related\r\n\r\n\r\n\r\n setMoreOptionData(_type, isEnable) {// Created By A Entitlement More Options\r\n switch (_type) {\r\n case \"OpeningBalance\" :\r\n this.IsOpeningBalanceEnable = isEnable;\r\n this.leaveTypeForm.patchValue({\r\n IsOpeningBalanceEnable: isEnable,\r\n OpeningBalance: 0\r\n });\r\n break;\r\n case \"MaximumBalance\" :\r\n this.IsMaximumBalanceEnable = isEnable;\r\n this.leaveTypeForm.patchValue({\r\n IsMaximumBalanceEnable: isEnable,\r\n MaximumBalance: 0\r\n });\r\n break;\r\n case \"ProrateAccural\" :\r\n this.IsProrateAccuralEnable = isEnable;\r\n this.leaveTypeForm.patchValue({\r\n IsProrateAccuralEnable: isEnable,\r\n ProrateAccuralType: 1\r\n });\r\n this.prorateAccuralType = \"1\";\r\n break;\r\n case \"DeductibleHolidays\" :\r\n this.IsDeductibleHolidaysEnable = isEnable;\r\n this.leaveTypeForm.patchValue({\r\n IsDeductibleHolidaysEnable: isEnable,\r\n DeductibleHolidays: 1\r\n });\r\n break;\r\n }\r\n }\r\n // End of Entitlement More Options\r\n\r\n\r\n \r\n addApplicableField(_type, isEnable) {// Created By A Add Field in Applicable\r\n switch (_type) {\r\n case \"ApplicableEmployeeTypes\" :\r\n this.IsEmployeeTypes = isEnable;\r\n this.applicableEmployeeTypesList = [];\r\n this.leaveTypeForm.patchValue({\r\n ApplicableEmployeeTypes: []\r\n });\r\n break;\r\n case \"ApplicableSourceOfHire\" :\r\n this.IsSourceOfHire = isEnable;\r\n this.applicableSourceOfHireList = [];\r\n this.leaveTypeForm.patchValue({\r\n ApplicableSourceOfHire: []\r\n });\r\n break;\r\n case \"ApplicableJobBands\" :\r\n this.IsJobBands = isEnable;\r\n this.applicableJobBandsList = [];\r\n this.leaveTypeForm.patchValue({\r\n ApplicableJobBands: []\r\n });\r\n break;\r\n case \"ApplicableOnboardingStatus\" :\r\n this.IsOnboardingStatus = isEnable;\r\n this.applicableOnboardingStatusList = [];\r\n this.leaveTypeForm.patchValue({\r\n ApplicableOnboardingStatus: []\r\n });\r\n break;\r\n }\r\n }\r\n // End of Entitlement More Options\r\n\r\n ChangeStatus(data) {// Created By A On Change Status\r\n debugger;\r\n this.userLoader = true;\r\n data.isActive = !data.isActive;\r\n this._LeaveServices.updateLeaveTypeStatus(data.leaveTypeId, data.isActive, this.CmpCode).subscribe((res: any) => {\r\n \r\n if(res[\"success\"]){\r\n this.userLoader = false;\r\n this.toaster.show(\"success\", res[\"data\"])\r\n }\r\n else{\r\n this.userLoader = false;\r\n this.toaster.show(\"error\" , res.message)\r\n }\r\n \r\n this.getAllLeaveTypeData();\r\n });\r\n }\r\n\r\n \r\n closeDropdownList(element) { // Created By A Close Opened Dropdowns when clicking on new dropdown\r\n if (element.optionsOpened == true) {\r\n let elementsToclose = this.selectElements.filter(function (el: any) {\r\n return (el != element && el.optionsOpened == true);\r\n });\r\n elementsToclose.forEach(function (e: SelectComponent) {\r\n e.clickedOutside();\r\n });\r\n }\r\n }\r\n active:any=0\r\n getTotalLeave(val){// Created By A Filter Leave-Type List\r\n debugger;\r\n if(val==1)\r\n {\r\n this.active=1\r\n this.allLeaveTypeList=this.totalMyRequestList\r\n\r\n }\r\n else\r\n if(val==2)\r\n {\r\n this.active=2\r\n\r\n this.allLeaveTypeList=[]\r\n this.allLeaveTypeList= this.totalMyRequestList.filter(user => user.isActive === true );\r\n }\r\n else if(val==3)\r\n {\r\n this.active=3\r\n\r\n this.allLeaveTypeList=[]\r\n this.allLeaveTypeList= this.totalMyRequestList.filter(user => user.isActive === false );\r\n }\r\n \r\n\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Loading....

    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n

    Schedule Services

    \r\n
    \r\n
    \r\n
      \r\n
    • Total : {{TotalListLength}}
    • \r\n
    • Active : {{ActiveLength}}
    • \r\n
    • In- Active : {{InActiveLength}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{add}} Schedule Service Time

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n  \r\n \r\n \r\n
    \r\n
    \r\n  \r\n \r\n\r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n  \r\n \r\n \r\n
    \r\n
    \r\n  \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n  \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n    \r\n
    \r\n
    \r\n \r\n    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit, ViewChildren, QueryList, ViewChild } from '@angular/core';\r\nimport { CommonService } from \"src/app/common.service\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\nimport { DepartmentService } from \"src/app/+layout/department/department.service\";\r\nimport { DesignationService } from \"src/app/+layout/designation/designation.service\";\r\nimport { LocationService } from \"src/app/+layout/location/location.service\";\r\nimport { SelectComponent } from \"ng2-select/ng2-select\";\r\nimport { LeaveService } from \"../../leave.service\";\r\nimport { Permission } from 'src/app/permission-keyword';\r\nimport { ExpenseHttpService } from 'src/app/services/expense/expense-http.service';\r\nimport { GridComponent } from '@syncfusion/ej2-angular-grids';\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-scheduleServices',\r\n templateUrl: './scheduleServices.component.html',\r\n styleUrls: ['./scheduleServices.component.css']\r\n})\r\nexport class ScheduleServicesComponent implements OnInit {\r\n seriveNames: any;\r\n cmpCode;\r\n UserId;\r\n ServiceList: any;\r\n add = \"Add\"\r\n EditPermission: boolean;\r\n DeletePermission: boolean;\r\n ViewPermission: boolean;\r\n StatusPermission: boolean;\r\n update: boolean;\r\n userLoader: boolean = false;\r\n TotalListLength = 0\r\n reportTimimgs\r\n ActiveLength = 0\r\n InActiveLength = 0\r\n save = true\r\n public form = FormGroup;\r\n active = \"total\"\r\n AddPermission = true\r\n formatString = \"HH:mm\"\r\n filterSettings = { type: \"Menu\" };\r\n public pageSettings = { pageCount: 3 };\r\n filter = { type: \"CheckBox\" };\r\n selectionSettings = { persistSelection: true, type: \"Multiple\", checkboxOnly: true };\r\n public serviceFields: Object = { text: 'serviceName', value: 'scheduleid' };\r\n timeFields = {text:\"text\", value: \"id\"}\r\n @ViewChild('overviewgrid')\r\n public gridInstance: GridComponent;\r\n daysField = {text:\"text\", value: \"id\"}\r\n DaysList = [\r\n {id:\"Sunday\", text: \"Sunday\"},\r\n {id:\"Monday\", text: \"Monday\"},\r\n {id:\"Tuesday\", text: \"Tuesday\"},\r\n {id:\"Wednesday\", text: \"Wednesday\"},\r\n {id:\"Thursday\", text: \"Thursday\"},\r\n {id:\"Friday\", text: \"Friday\"},\r\n {id:\"Saturday\", text: \"Saturday\"},\r\n \r\n]\r\nweekList = [\r\n {id:\"Current\", text: \"Current Week\"},\r\n {id:\"Previous\", text: \"Previous Week\"},\r\n\r\n]\r\n Timeformat = [\r\n {id:\"12:00 AM\", text: \"12:00 AM\"},{id:\"12:30 AM\", text: \"12:30 AM\"},\r\n {id:\"01:00 AM\", text: \"01:00 AM\"},{id:\"01:30 AM\", text: \"01:30 AM\"},\r\n {id:\"02:00 AM\", text: \"02:00 AM\"},{id:\"02:30 AM\", text: \"02:30 AM\"},\r\n {id:\"03:00 AM\", text: \"03:00 AM\"},{id:\"03:30 AM\", text: \"03:30 AM\"},\r\n {id:\"04:00 AM\", text: \"04:00 AM\"},{id:\"04:30 AM\", text: \"04:30 AM\"},\r\n {id:\"05:00 AM\", text: \"05:00 AM\"},{id:\"05:30 AM\", text: \"05:30 AM\"},\r\n {id:\"06:00 AM\", text: \"06:00 AM\"},{id:\"06:30 AM\", text: \"06:30 AM\"},\r\n {id:\"07:00 AM\", text: \"07:00 AM\"},{id:\"07:30 AM\", text: \"07:30 AM\"},\r\n {id:\"08:00 AM\", text: \"08:00 AM\"},{id:\"08:30 AM\", text: \"08:30 AM\"},\r\n {id:\"09:00 AM\", text: \"09:00 AM\"},{id:\"09:30 AM\", text: \"09:30 AM\"},\r\n {id:\"10:00 AM\", text: \"10:00 AM\"},{id:\"10:30 AM\", text: \"10:30 AM\"},\r\n {id:\"11:00 AM\", text: \"11:00 AM\"},{id:\"11:30 AM\", text: \"11:30 AM\"},\r\n {id:\"12:00 PM\", text: \"12:00 PM\"},{id:\"12:30 PM\", text: \"12:30 PM\"},\r\n {id:\"01:00 PM\", text: \"01:00 PM\"},{id:\"01:30 PM\", text: \"01:30 PM\"},\r\n {id:\"02:00 PM\", text: \"02:00 PM\"},{id:\"02:30 PM\", text: \"02:30 PM\"},\r\n {id:\"03:00 PM\", text: \"03:00 PM\"},{id:\"03:30 PM\", text: \"03:30 PM\"},\r\n {id:\"04:00 PM\", text: \"04:00 PM\"},{id:\"04:30 PM\", text: \"04:30 PM\"},\r\n {id:\"05:00 PM\", text: \"05:00 PM\"},{id:\"05:30 PM\", text: \"05:30 PM\"},\r\n {id:\"06:00 PM\", text: \"06:00 PM\"},{id:\"06:30 PM\", text: \"06:30 PM\"},\r\n {id:\"07:00 PM\", text: \"07:00 PM\"},{id:\"07:30 PM\", text: \"07:30 PM\"},\r\n {id:\"08:00 PM\", text: \"08:00 PM\"},{id:\"08:30 PM\", text: \"08:30 PM\"},\r\n {id:\"09:00 PM\", text: \"09:00 PM\"},{id:\"09:30 PM\", text: \"09:30 PM\"},\r\n {id:\"10:00 PM\", text: \"10:00 PM\"},{id:\"10:30 PM\", text: \"10:30 PM\"},\r\n {id:\"11:00 PM\", text: \"11:00 PM\"},{id:\"11:30 PM\", text: \"11:30 PM\"},\r\n\r\n \r\n ]\r\n\r\n Timeformat24 = [\r\n {id:\"00:00\", text: \"00:00\"},{id:\"00:30\", text: \"00:30\"},\r\n {id:\"01:00\", text: \"01:00\"},{id:\"01:30\", text: \"01:30\"},\r\n {id:\"02:00\", text: \"02:00\"},{id:\"02:30\", text: \"02:30\"},\r\n {id:\"03:00\", text: \"03:00\"},{id:\"03:30\", text: \"03:30\"},\r\n {id:\"04:00\", text: \"04:00\"},{id:\"04:30\", text: \"04:30\"},\r\n {id:\"05:00\", text: \"05:00\"},{id:\"05:30\", text: \"05:30\"},\r\n {id:\"06:00\", text: \"06:00\"},{id:\"06:30\", text: \"06:30\"},\r\n {id:\"07:00\", text: \"07:00\"},{id:\"07:30\", text: \"07:30\"},\r\n {id:\"08:00\", text: \"08:00\"},{id:\"08:30\", text: \"08:30\"},\r\n {id:\"09:00\", text: \"09:00\"},{id:\"09:30\", text: \"09:30\"},\r\n {id:\"10:00\", text: \"10:00\"},{id:\"10:30\", text: \"10:30\"},\r\n {id:\"11:00\", text: \"11:00\"},{id:\"11:30\", text: \"11:30\"},\r\n {id:\"12:00\", text: \"12:00\"},{id:\"12:30\", text: \"12:30\"},\r\n {id:\"13:00\", text: \"13:00\"},{id:\"13:30\", text: \"13:30\"},\r\n {id:\"14:00\", text: \"14:00\"},{id:\"14:30\", text: \"14:30\"},\r\n {id:\"15:00\", text: \"15:00\"},{id:\"15:30\", text: \"15:30\"},\r\n {id:\"16:00\", text: \"16:00\"},{id:\"16:30\", text: \"16:30\"},\r\n {id:\"17:00\", text: \"17:00\"},{id:\"17:30\", text: \"17:30\"},\r\n {id:\"18:00\", text: \"18:00\"},{id:\"18:30\", text: \"18:30\"},\r\n {id:\"19:00\", text: \"19:00\"},{id:\"19:30\", text: \"19:30\"},\r\n {id:\"20:00\", text: \"20:00\"},{id:\"20:30\", text: \"20:30\"},\r\n {id:\"21:00\", text: \"21:00\"},{id:\"21:30\", text: \"21:30\"},\r\n {id:\"22:00\", text: \"22:00\"},{id:\"22:30\", text: \"22:30\"},\r\n {id:\"23:00\", text: \"23:00\"},{id:\"23:30\", text: \"23:30\"},\r\n\r\n ]\r\n scheduleServiceForm:FormGroup\r\n saveEdit: boolean = false;\r\n timeFormat: any;\r\n totalServiceList: any;\r\n\r\n constructor(private _leaveService: LeaveService,\r\n private _commonSer: CommonService,\r\n private _authSer: AuthService,\r\n private _depratmentSer: DepartmentService,\r\n private toaster: ToasterService,\r\n private Formbild: FormBuilder,\r\n\r\n private Http: ExpenseHttpService){\r\n\r\n \r\n\r\n }\r\n \r\n\r\nngOnInit(){// Angular Lifecycle hook\r\n debugger\r\n this.userLoader = false;\r\n this.cmpCode = this._authSer.getcompanyCode()\r\n this.UserId = this._authSer.getUserId();\r\n this.getAllSeviceList();\r\n this.timeFormat = this._authSer.gettimeformat()\r\n this.scheduleServiceForm = this.Formbild.group({\r\n id : [0],\r\n scheduleid: [1, Validators.required],\r\n scheduletime: [\"\" , Validators.required],\r\n isactive : [1, Validators.required],\r\n scheduleDay : [\"Monday\"],\r\n scheduleWeek : ['Current'],\r\n cmpcode :[0],\r\n type : [1],\r\n userid: [0]\r\n })\r\n\r\n this._authSer.currentUser.subscribe((res) => {\r\n this.AddPermission = true; //res.permission.includes(Permission.ApprovalSettingsAdd);\r\n this.EditPermission = true; // res.permission.includes(Permission.ApprovalSettingsEdit);\r\n this.DeletePermission = true; // res.permission.includes(Permission.ApprovalSettingsDelete);\r\n this.ViewPermission = true; // res.permission.includes(Permission.ApprovalSettingsView);\r\n this.StatusPermission = true; // res.permission.includes(Permission.ApprovalSettingsStatus);\r\n });\r\n try {\r\n this.Http.getScheduleServices().then( res =>{\r\n if(res.success){\r\n this.seriveNames = res.data.table;\r\n }else{\r\n console.log(res.success)\r\n }\r\n \r\n });\r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n \r\n }\r\n resetForm(){// Created By K reset Forms\r\n this.scheduleServiceForm.reset()\r\n this.save = true\r\n this.update = false\r\n this.saveEdit = true\r\n this.add = \"Add\"\r\n }\r\n\r\n Total(){// Created By K Getting all schedule services\r\n this.active = \"total\"\r\n this.ServiceList = this.totalServiceList\r\n }\r\n\r\n Active(){// Created By K Filter Schedule services\r\n this.active = \"active\"\r\n this.ServiceList = this.totalServiceList\r\n let data = this.ServiceList.filter( x => x.isactive == true || x.isactive == 1)\r\n this.ServiceList = data\r\n }\r\n\r\n Inactive(){// Created By K Filter Schedule services\r\n this.active = \"inactive\"\r\n this.ServiceList = this.totalServiceList\r\n let data = this.ServiceList.filter( x => x.isactive == false || x.isactive == 0)\r\n this.ServiceList = data\r\n }\r\n\r\n dateformat(datas:string){// Created By K Global Date Format\r\n return this._authSer.Dateformat(datas);\r\n }\r\n getAllSeviceList(){ // Created By K Getting all Schedule services list \r\n debugger\r\n try {\r\n this.Http.getScheduleServiceList( 0, this.cmpCode).then((res) => {\r\n if(res.success){\r\n this.ServiceList = res.data.table\r\n this.totalServiceList = res.data.table\r\n this.TotalListLength = this.ServiceList.length\r\n this.ActiveLength = this.ServiceList.filter( x => x.isactive == true || x.isactive == 1).length\r\n this.InActiveLength = this.ServiceList.filter( x => x.isactive == false || x.isactive == 0).length\r\n }else{\r\n console.log(res.success)\r\n }\r\n }) \r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n }\r\n \r\n\r\n viewService(data){// Created By K Initialize View Schedule Service\r\n debugger\r\n this.update = false\r\n this.save = false\r\n this.add = \"View\"\r\n this.saveEdit = false\r\n this.scheduleServiceForm.patchValue({scheduletime : data.scheduletime})\r\n this.scheduleServiceForm.patchValue({id : data.id})\r\n this.scheduleServiceForm.patchValue({scheduleid : data.scheduleid})\r\n this.scheduleServiceForm.patchValue({isactive: data.isactive})\r\n this.scheduleServiceForm.patchValue({scheduleDay: data.scheduleDay})\r\n this.scheduleServiceForm.patchValue({type: 2})\r\n\r\n }\r\n deleteservice(data){// Created By K Delete Schedule Service\r\n let formdata = {\r\n id : data.id,\r\n cmpcode :this.cmpCode,\r\n type : 3,\r\n userid: this.UserId\r\n }\r\n try {\r\n this.Http.SaveScheduleService(formdata).then( res => {\r\n if(res.success){\r\n this.toaster.show(\"success\",res.data)\r\n this.getAllSeviceList();\r\n this.gridInstance.refresh()\r\n }else{\r\n this.toaster.show(\"error\",res.data)\r\n }\r\n \r\n })\r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n }\r\n editservice(data){// Created By K Intialize Edit Schedule Service\r\n debugger\r\n this.update = true\r\n this.save = false\r\n this.add = \"Edit\"\r\n this.saveEdit = true\r\n this.scheduleServiceForm.patchValue({scheduletime : data.scheduletime})\r\n this.scheduleServiceForm.patchValue({id : data.id})\r\n this.scheduleServiceForm.patchValue({scheduleid : data.scheduleid})\r\n this.scheduleServiceForm.patchValue({isactive: data.isactive})\r\n this.scheduleServiceForm.patchValue({scheduleDay: data.scheduleDay})\r\n this.scheduleServiceForm.patchValue({scheduleWeek: data.scheduleweek})\r\n this.scheduleServiceForm.patchValue({type: 2})\r\n }\r\n SaveEditservice(data ,txt, val){// Created By K On Update Schedule Service\r\n debugger\r\n let week = this.scheduleServiceForm?.controls?.scheduleWeek?.value\r\n if(txt == \"update\"){\r\n if(val == 0){\r\n val = true\r\n }else{\r\n val = false\r\n }\r\n let formdata = {\r\n id : data.id,\r\n scheduleid: data.scheduleid,\r\n scheduletime: data.scheduletime,\r\n scheduleDay: data.scheduleDay,\r\n isactive : val,\r\n cmpcode :this.cmpCode,\r\n type : 4,\r\n scheduleweek:week,\r\n userid: this.UserId\r\n }\r\n try {\r\n this.Http.SaveScheduleService(formdata).then( res => {\r\n if(res.success){\r\n this.toaster.show(\"success\",res.data)\r\n this.getAllSeviceList();\r\n this._commonSer.CloseModalHandler(\"addApprovalpopup\")\r\n this.gridInstance.refresh()\r\n }else{\r\n this.toaster.show(\"error\",res.data)\r\n }\r\n \r\n })\r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n }else{\r\n let formdata = {\r\n id : this.scheduleServiceForm.value.id,\r\n scheduleid: this.scheduleServiceForm.value.scheduleid,\r\n scheduletime: this.scheduleServiceForm.value.scheduletime,\r\n scheduleDay: this.scheduleServiceForm.value.scheduleDay,\r\n isactive : this.scheduleServiceForm.value.isactive,\r\n cmpcode :this.cmpCode,\r\n scheduleweek:week,\r\n type : this.scheduleServiceForm.value.type,\r\n userid: this.UserId\r\n }\r\n try {\r\n this.Http.SaveScheduleService(formdata).then( res => {\r\n if(res.success){\r\n this.toaster.show(\"success\",res.data)\r\n this.getAllSeviceList();\r\n this.gridInstance.refresh()\r\n this._commonSer.CloseModalHandler(\"addApprovalpopup\")\r\n }else{\r\n this.toaster.show(\"error\",res.data)\r\n }\r\n \r\n })\r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n }\r\n \r\n }\r\n\r\n SaveSchedule(){// Created By K On Saving Schedule Service\r\n debugger\r\n this.update = false\r\n this.scheduleServiceForm\r\n if(this.scheduleServiceForm.value.isactive == null){\r\n this.scheduleServiceForm.patchValue({isactive: false})\r\n }\r\n let formdata = {\r\n id : 0,\r\n scheduleid: this.scheduleServiceForm.value.scheduleid,\r\n scheduletime: this.scheduleServiceForm.value.scheduletime,\r\n isactive : this.scheduleServiceForm.value.isactive,\r\n scheduleDay: this.scheduleServiceForm.value.scheduleDay,\r\n cmpcode :this.cmpCode,\r\n scheduleweek:this.scheduleServiceForm.value.scheduleWeek,\r\n type : 1,\r\n userid: this.UserId\r\n }\r\n try {\r\n this.Http.SaveScheduleService(formdata).then( res => {\r\n if(res.success){\r\n this.toaster.show(\"success\",res.data)\r\n this.getAllSeviceList();\r\n this._commonSer.CloseModalHandler(\"addApprovalpopup\")\r\n }else{\r\n this.toaster.show(\"error\",res.data)\r\n }\r\n \r\n })\r\n } catch (error) {\r\n this.toaster.show(\"error\",\"Uh Oh, Something went wrong !\")\r\n }\r\n }\r\n \r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LeaveTypeComponent } from './leave-type/leave-type.component';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport { TimepickerModule, BsDatepickerModule } from 'ngx-bootstrap';\r\nimport { GeneralsettingsComponent } from './generalsettings/generalsettings.component';\r\nimport { CustomizePolicyComponent } from './customize-policy/customize-policy.component';\r\nimport { BoxModule } from 'angular-admin-lte';\r\nimport { SelectModule } from 'ng2-select';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { TabsModule as MkTabsModule } from 'angular-admin-lte';\r\nimport { CustomizeLeaveBalanceComponent } from './customize-leave-balance/customize-leave-balance.component';\r\nimport { UpdateLeaveBalanceComponent } from './customize-leave-balance/update-leave-balance/update-leave-balance.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';\r\nimport { ApprovalSettingComponent } from './approval-setting/approval-setting.component';\r\nimport { NgxEditorModule } from 'ngx-editor';\r\nimport { DatePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport { DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\nimport { ScheduleServicesComponent } from './scheduleServices/scheduleServices.component';\r\nimport { TimePickerModule } from '@syncfusion/ej2-angular-calendars';\r\n\r\nimport { GridAllModule, PagerModule } from '@syncfusion/ej2-angular-grids';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n BoxModule, SelectModule,\r\n MkTabsModule,\r\n BoxModule,\r\n CoreModule,\r\n TimePickerModule,\r\n SelectModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n GridAllModule,\r\n DatePickerModule,\r\n PagerModule,\r\n AngularMultiSelectModule,\r\n TimepickerModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n NgxEditorModule,\r\n DropDownListModule\r\n ],\r\n declarations: [LeaveTypeComponent,ScheduleServicesComponent ,GeneralsettingsComponent, CustomizePolicyComponent, CustomizeLeaveBalanceComponent, UpdateLeaveBalanceComponent, ApprovalSettingComponent]\r\n})\r\nexport class SettingModule { }\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"src/app/environment\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { AuthService } from \"src/app/services/auth.service\";\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LocationService {\r\n\r\nconstructor(private http: HttpClient,private authService: AuthService) {}\r\n\r\n\r\n getlocationlist(parm): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAlllocations\";\r\n return this.http\r\n .post(URL,parm,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n Createlocation(parms): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveLocation\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n\r\n\r\n getAllCountry(parms){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllCountry\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllState(parms){\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllStates\";\r\n return this.http\r\n .post(URL, parms,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getLocationDetails(LocationId,CmpCode): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetLocationById?Id=\" + LocationId+`&CmpCode=`+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getLocationByCountryId(CountryId,cmpcode): Observable {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetStateByCountry?id=\" + CountryId+\"&Cmpcode=\"+cmpcode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n deleteLocation(locId, cmp): Observable{\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteLocation?Id=\"+locId+\"&cmpcode=\"+cmp;\r\n return this.http\r\n .post(URL,{headers:headers})\r\n // .pipe(map((response: Response) => response));\r\n }\r\n // updatelocation(id: number) {\r\n // const URL = environment.apiUrl + \"/Admin/Updatelocation\";\r\n // // return this.http.put( + '/' + location.id, location);\r\n // }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { Routes, RouterModule } from \"@angular/router\";\r\nimport { AuthGuard } from \"./auth.guard\";\r\n\r\nconst routes: Routes = [\r\n {\r\n path: \"\",\r\n redirectTo: \"Login\",\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"expense\",\r\n data: {\r\n // title: \"Expense\"\r\n },\r\n children: [\r\n\r\n{\r\n path: \"projecthealthcard\",\r\n // {\r\n // path: \"hometest\",\r\n // loadChildren:\r\n // () => import('./+layout/expense/hometest/hometest.module').then(m => m.HometestModule),\r\n // data: {\r\n // title: \"Project Health Card\",\r\n // module: \"hometest\"\r\n // }\r\n // },\r\n loadChildren:\r\n () => import('./+layout/expense/projecthealthcard/projecthealthcard.module').then(m => m.ProjecthealthcardModule),\r\n data: {\r\n // title: \"Project Health Card\",\r\n module: \"Projecthealthcard\",\r\n customLayout:true\r\n }\r\n\r\n\r\n },\r\n {\r\n path: \"showfaq\",\r\n // {\r\n // path: \"hometest\",\r\n // loadChildren:\r\n // () => import('./+layout/expense/hometest/hometest.module').then(m => m.HometestModule),\r\n // data: {\r\n // title: \"Project Health Card\",\r\n // module: \"hometest\"\r\n // }\r\n // },\r\n loadChildren:\r\n () => import('./+layout/expense/showfaq/showfaq.module').then(m => m.ShowFaqModule),\r\n data: {\r\n //title: \"Show FAQ\",\r\n module: \"showfaq\",\r\n customLayout:true\r\n }\r\n\r\n\r\n },\r\n ]\r\n },\r\n\r\n {\r\n path: \"Login\",\r\n loadChildren: () => import('./+login/login.module').then(m => m.LoginModule),\r\n data: {\r\n customLayout: true\r\n }\r\n },\r\n {\r\n path: \"32568fire\",\r\n loadChildren: () => import('./missfire/missfire.module').then(m => m.missfireModule),\r\n data: {\r\n customLayout: true\r\n }\r\n },\r\n {\r\n path: \"inviteuserlogin/:responseId\",\r\n loadChildren:\r\n () => import('./+layout/expense/inviteuserlogin/inviteuserlogin.module').then(m => m.InviteuserloginModule),\r\n data: {\r\n //title: \"Inviteuser Login\",\r\n module: \"inviteuserlogin\",\r\n customLayout: true\r\n }\r\n },\r\n {\r\n path: \"paSystem\",\r\n data: {\r\n //title: \"PASystem\"\r\n },\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: \"Masters\",\r\n data: {\r\n // title: \"Masters\"\r\n },\r\n // canActivate: [AuthGuard],\r\n // canActivateChild: [AuthGuard],\r\n children: [\r\n {\r\n path: \"countrymaster\",\r\n loadChildren: () => import('./+layout/country/country.module').then(m => m.CountryModule),\r\n data: {\r\n //title: \"Country\",\r\n module: \"COUNTRY\"\r\n }\r\n },\r\n // {\r\n // path: 'currencymaster',\r\n // loadChildren: './currency/currency.module#CurrencyModule',\r\n // data: {\r\n // title: 'Currency',\r\n // module: 'CURRENCY'\r\n // }\r\n // },\r\n {\r\n path: \"contactAddress\",\r\n loadChildren: () => import('./+layout/CAddress/CAddress.module').then(m => m.CAddressModule),\r\n data: {\r\n //title: \"Customer Profiles\",\r\n module: \"CONTACTPERSON\"\r\n }\r\n },\r\n {\r\n path: \"AccountCustodianProfiles\",\r\n loadChildren: () => import('./+layout/Sales/Sales.module').then(m => m.SalesModule),\r\n data: {\r\n //title: \"Account Custodian Profiles\",\r\n module: \"SALES\"\r\n }\r\n },\r\n {\r\n path: \"zipcode\",\r\n loadChildren: () => import('./+layout/zipcode/zipcode.module').then(m => m.zipModule),\r\n data: {\r\n //title: \"Zipcode\",\r\n module: \"ZIPCODE\"\r\n }\r\n },\r\n {\r\n path: \"businessType\",\r\n loadChildren:\r\n () => import('./+layout/bussinessType/bussinessType.module').then(m => m.bussinessTypeModule),\r\n data: {\r\n //title: \"Business Type\",\r\n module: \"BUSINESS\"\r\n }\r\n },\r\n {\r\n path: \"roadblockMaster\",\r\n loadChildren:\r\n () => import('./+layout/roadblockMaster/roadblockMaster.module').then(m => m.RoadbloackMasterModule),\r\n data: {\r\n //title: \"RoadblockMaster\",\r\n module: \"RoadblockMaster\"\r\n }\r\n },\r\n {\r\n path: \"location\",\r\n loadChildren: () => import('./+layout/location/location.module').then(m => m.locationModule),\r\n data: {\r\n //title: \"Location\",\r\n module: \"LOCATION\"\r\n }\r\n },\r\n {\r\n path: \"department\",\r\n loadChildren:\r\n () => import('./+layout/department/department.module').then(m => m.departmentModule),\r\n data: {\r\n //title: \"Department\",\r\n module: \"DEPARTMENT\",\r\n disableLayout: true\r\n }\r\n },\r\n {\r\n path: \"designation\",\r\n loadChildren:\r\n () => import('./+layout/designation/designation.module').then(m => m.designationModule),\r\n data: {\r\n //title: \"Designation\",\r\n module: \"DESIGNATION\",\r\n disableLayout: true\r\n }\r\n },\r\n {\r\n path: \"vendor\",\r\n loadChildren:\r\n () => import('./+layout/Vendor/Vendor.module').then(m => m.vendorModule),\r\n data: {\r\n //title: \"Designation\",\r\n module: \"Vendor\",\r\n disableLayout: true\r\n }\r\n },\r\n {\r\n path: \"jobband\",\r\n loadChildren: () => import('./+layout/jobband/jobband.module').then(m => m.jobbandModule),\r\n data: {\r\n //title: \"Job Band\",\r\n module: \"JOBBAND\"\r\n }\r\n },\r\n {\r\n path: \"group\",\r\n loadChildren: () => import('./+layout/group/group.module').then(m => m.groupModule),\r\n data: {\r\n //title: \"Job Band\",\r\n module: \"GROUP\"\r\n }\r\n },\r\n {\r\n path: \"announcements\",\r\n loadChildren:\r\n () => import('./+layout/announcements/announcements.module').then(m => m.AnnouncementsModule),\r\n data: {\r\n //title: \"announcements\",\r\n module: \"announcements\"\r\n }\r\n },\r\n {\r\n path: \"quicklink\",\r\n loadChildren:\r\n () => import('./+layout/quicklink/quicklink.module').then(m => m.QuickLinkModule),\r\n data: {\r\n //title: \"quicklink\",\r\n module: \"quicklink\"\r\n }\r\n },\r\n {\r\n path: \"emailtemplate\",\r\n loadChildren:\r\n () => import('./+layout/email-template/email-template.module').then(m => m.emailTemplateModule),\r\n data: {\r\n //title: \"Email Templates\",\r\n module: \"emailtemplate\"\r\n }\r\n },\r\n {\r\n path: \"emailtemplate/:id\",\r\n loadChildren:\r\n () => import('./+layout/email-template/email-template.module').then(m => m.emailTemplateModule),\r\n data: {\r\n //title: \"Email Templates\",\r\n module: \"emailtemplate\"\r\n }\r\n },\r\n {\r\n path: \"statemaster\",\r\n loadChildren: () => import('./+layout/state/state.module').then(m => m.StateModule),\r\n data: {\r\n //title: \"State\",\r\n module: \"STATE\"\r\n // disableLayout: true\r\n }\r\n },\r\n {\r\n path: \"customer\",\r\n loadChildren: () => import('./+layout/customer/customers.module').then(m => m.CustomersModule),\r\n data: {\r\n //title: \"Customer\",\r\n module: \"CUSTOMER\"\r\n }\r\n },\r\n {\r\n path: \"city\",\r\n loadChildren: () => import('./+layout/city/city.module').then(m => m.CityModule),\r\n data: {\r\n //title: \"City\",\r\n module: \"CITY\"\r\n }\r\n },\r\n // {\r\n // path: 'location',\r\n // loadChildren: './+layout/city/city.module#CityModule',\r\n // data: {\r\n // title: 'Location',\r\n // module: 'LOCATION'\r\n // }\r\n // },\r\n {\r\n path: \"levels\",\r\n loadChildren: () => import('./+layout/levels/levels.module').then(m => m.LevelsModule),\r\n data: {\r\n //title: \"Organization Structure Level\",\r\n module: \"LEVEL\"\r\n }\r\n },\r\n {\r\n path: \"levelElements\",\r\n loadChildren:\r\n () => import('./+layout/level-elements/level-elements.module').then(m => m.LevelElementsModule),\r\n data: {\r\n //title: \"Organization Structure Level Element\",\r\n module: \"LEVELELEMENT\"\r\n }\r\n },\r\n {\r\n path: \"permission\",\r\n loadChildren:\r\n () => import('./role-masters/permission/permission.module').then(m => m.PermissionModule),\r\n data: {\r\n //title: \"Permission\"\r\n }\r\n },\r\n {\r\n path: \"role\",\r\n loadChildren: () => import('./role-masters/role/role.module').then(m => m.RoleModule),\r\n data: {\r\n //title: \"Role\",\r\n module: \"ROLE\"\r\n }\r\n },\r\n {\r\n path: \"group\",\r\n loadChildren: () => import('./role-masters/group/group.module').then(m => m.GroupModule),\r\n data: {\r\n //title: \"Group\",\r\n module: \"GROUP\"\r\n }\r\n },\r\n\r\n {\r\n path: \"projecttimeline\",\r\n loadChildren: () => import('./+layout/projecttimeline/projecttimeline.module').then(m => m.ProjecttimelineModule),\r\n data: {\r\n //title: \"Project\",\r\n module: \"projecttimeline\"\r\n }\r\n },\r\n // {\r\n // path: 'languagemaster',\r\n // loadChildren: './languageMaster/languageMaster.module#LanguageMasterModule',\r\n // data: {\r\n // title: 'Language Master',\r\n // module: 'LANGUAGE'\r\n // }\r\n // },\r\n // {\r\n // path: 'keywordmaster',\r\n // loadChildren: './keywordMaster/keywordMaster.module#KeyWordMasterModule',\r\n // data: {\r\n // title: 'Keyword Master',\r\n // module: 'KEYWORD'\r\n // }\r\n // },\r\n {\r\n path: \"projects/:id\",\r\n loadChildren: () => import('./+layout/project/projects.module').then(m => m.ProjectsModule),\r\n data: {\r\n //title: \"Project\",\r\n module: \"PROJECT\"\r\n }\r\n },\r\n {\r\n path: \"projects\",\r\n loadChildren: () => import('./+layout/project/projects.module').then(m => m.ProjectsModule),\r\n data: {\r\n //title: \"Project\",\r\n module: \"PROJECT\"\r\n }\r\n },\r\n {\r\n path: \"kanban\",\r\n loadChildren:\r\n () => import('./+layout/kanban/kanban.module').then(m => m.KanbansModule),\r\n data: {\r\n //title: \"Project Kanban\",\r\n module: \"KANBAN\"\r\n }\r\n },\r\n {\r\n path: \"timesheetnew\",\r\n loadChildren:\r\n () => import('./+layout/timesheetnew/timesheetnew.module').then(m => m.TimesheetnewModule),\r\n data: {\r\n //title: \"Record Time\",\r\n module: \"timesheetnew\"\r\n }\r\n },\r\n //:employeeId\r\n\r\n\r\n {\r\n path: \"timesheetapprovals\",\r\n loadChildren:\r\n () => import('./+layout/timesheetapprovals/timesheetapprovals.module').then(m => m.TimesheetapprovalsModule),\r\n data: {\r\n //title: \"Time Approval\",\r\n module: \"timesheetapprovals\"\r\n }\r\n },\r\n {\r\n path: \"timesheetapprovals/:userId/:from/:to\",\r\n loadChildren:\r\n () => import('./+layout/timesheetapprovals/timesheetapprovals.module').then(m => m.TimesheetapprovalsModule),\r\n data: {\r\n //title: \"Time Approval\",\r\n module: \"timesheetapprovals\"\r\n }\r\n },\r\n {\r\n path: \"ganttchart/:projectId\",\r\n loadChildren:\r\n () => import('./+layout/ganttchart/ganttchart.module').then(m => m.GanttChartModule),\r\n data: {\r\n //title: \"Ganttchart\",\r\n module: \"GANTTCHART\"\r\n }\r\n },\r\n\r\n {\r\n path: \"ganttchart\",\r\n loadChildren:\r\n () => import('./+layout/ganttchart/ganttchart.module').then(m => m.GanttChartModule),\r\n data: {\r\n //title: \"Gantt Chart\",\r\n module: \"GANTTCHART\"\r\n }\r\n },\r\n {\r\n path: \"projectPhases\",\r\n loadChildren:\r\n () => import('./+layout/projectPhase/projectPhases.module').then(m => m.ProjectPhasesModule),\r\n data: {\r\n //title: \"Project Phase\",\r\n module: \"PROJECTPHASE\"\r\n }\r\n },\r\n {\r\n path: \"projectAssign\",\r\n loadChildren:\r\n () => import('./+layout/projectAssign/project-assign.module').then(m => m.ProjectAssignModule),\r\n data: {\r\n //title: \"Resource Assignment\",\r\n module: \"PROJECTASSIGN\"\r\n }\r\n },\r\n {\r\n path: \"projectAssignUpdated\",\r\n loadChildren:\r\n () => import('./+layout/projectAssignUpdated/projectAssignUpdated.module').then(m => m.projectAssignUpdatedModule),\r\n data: {\r\n //title: \"Resource Assignment\",\r\n module: \"PROJECTASSIGN\"\r\n }\r\n },\r\n // {\r\n // path: \"Gantt\",\r\n // loadChildren:\r\n // \"./+layout/project-gantt/project-gantt.module#ProjectGanttModule\",\r\n // data: {\r\n // title: \"Project Gantt\",\r\n // module: \"PROJECT\"\r\n // }\r\n // },\r\n // {\r\n // path: 'projectGantt',\r\n // loadChildren: () => import('./+layout/project-gantt-chart/project-gantt-chart.module').then(m => m.ProjectGanttChartModule),\r\n // data: {\r\n // title: 'Project Gantt',\r\n // module: 'PROJECT'\r\n // }\r\n // },\r\n {\r\n path: \"timesheets\",\r\n loadChildren:\r\n () => import('./+layout/timesheet/timesheets.module').then(m => m.TimesheetsModule),\r\n data: {\r\n //title: \"Timesheet\",\r\n module: \"TIMESHEET\"\r\n }\r\n },\r\n {\r\n path: \"checkin-report\",\r\n loadChildren:\r\n () => import('./+layout/checkin-report/checkin-report.module').then(m => m.CheckinReportModule),\r\n data: {\r\n //title: \"Timesheet\",\r\n module: \"TIMESHEET\"\r\n }\r\n },\r\n {\r\n path: \"timesheetApproval\",\r\n loadChildren:\r\n () => import('./+layout/timesheetApprove/timesheetApprove.module').then(m => m.TimesheetApproveModule),\r\n data: {\r\n //title: \"Timesheet Approval\",\r\n module: \"APPROVETIMESHEET\"\r\n }\r\n },\r\n\r\n\r\n\r\n {//:startDate/:endDate/:employeeId/:createdBy\",\r\n path: \"timesheetApproval/:startDate/:endDate/:employeeId\",\r\n loadChildren:\r\n () => import('./+layout/timesheetApprove/timesheetApprove.module').then(m => m.TimesheetApproveModule),\r\n data: {\r\n //title: \"Timesheet Approval\",\r\n module: \"APPROVETIMESHEET\"\r\n }\r\n },\r\n {\r\n path: \"timesheetReport\",\r\n loadChildren:\r\n () => import('./+layout/timesheet-report/timesheet-report.module').then(m => m.TimesheetReportModule),\r\n data: {\r\n //title: \"Timesheet Reports\",\r\n module: \"TIMESHEETREPORT\"\r\n }\r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: \"user\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./user/user.module').then(m => m.UserModule),\r\n data: {\r\n //title: \"User\",\r\n module: \"USER\"\r\n },\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"paSystem/Masters/mom\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./+layout/mom/mom.module').then(m => m.MomModule),\r\n data: {\r\n // title: \"Minutes of Meeting\",\r\n module: \"MEETINGMINUTES\"\r\n }\r\n },\r\n {\r\n path: \"paSystem/Masters/roadblock\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./+layout/roadblock/roadblock.module').then(m => m.RoadblockModule),\r\n data: {\r\n // title: \"Roadblocks\",\r\n module: \"ROADBLOCK\"\r\n }\r\n //canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"udf\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./udf/udf.module').then(m => m.UdfModule),\r\n data: {\r\n //title: \"UDF\",\r\n module: \"UDF\"\r\n },\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"home\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./home/home.module').then(m => m.HomeModule),\r\n data: {\r\n //title: \"Home\"\r\n },\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"UserLocations/:data\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./WorldMap/userLocation.module').then(m => m.WorldMapModule ),\r\n data: {\r\n //title: \"Home\"\r\n },\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"detail\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./frequestlyaskquestion/detail.module').then(m => m.DetailModule),\r\n data: {\r\n // title: \"detail\"\r\n },\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"leave\",\r\n pathMatch: \"full\",\r\n loadChildren: () => import('./+layout/leave/leave.module').then(m => m.LeaveModule),\r\n data: {\r\n // title: \"Leave Dashboard \",\r\n module: \"LEAVE\"\r\n }\r\n },\r\n // {\r\n // path: 'approval',\r\n // pathMatch: 'full',\r\n // loadChildren: './+layout/leave/approval/approval.module#LeaveApprovalModule',\r\n // data: {\r\n // title: 'Requests/Approvals',\r\n // module: 'REQUEST'\r\n // }, canActivate: [AuthGuard]\r\n // },\r\n // {\r\n // path: 'leave-approval',\r\n // pathMatch: 'full',\r\n // loadChildren: './+layout/leave/leave-approval/leave-approval.module#LeaveApprovalModule',\r\n // data: {\r\n // title: 'Leave Approval ',\r\n // module: 'LEAVEAPPROVAL'\r\n // }, canActivate: [AuthGuard]\r\n // },\r\n // {\r\n // path: 'approve',\r\n // pathMatch: 'full',\r\n // loadChildren: './+layout/leave/comp-off-approve/comp-off-approve.module#CompOffApproveModule',\r\n // data: {\r\n // title: 'Leave Dashboard COMPENSATORY OFF APPROVAL',\r\n // module: 'COMP-OFF-APPROVE'\r\n // }, canActivate: [AuthGuard]\r\n // },\r\n // {\r\n // path: 'setting',\r\n // pathMatch: 'full',\r\n // loadChildren: './+layout/leave/setting/setting.module#SettingModule',\r\n // data: {\r\n // title: 'Leave Type',\r\n // module: 'SETTING'\r\n // }, canActivate: [AuthGuard]\r\n // },\r\n {\r\n path: \"reset-password\",\r\n loadChildren: () => import('./reset-password/reset-password.module').then(m => m.ResetPasswordModule),\r\n data: {\r\n customLayout: true,\r\n //title: \"Reset Password\"\r\n },\r\n // canActivate: [AuthGuard]\r\n },\r\n {\r\n path: \"expense\",\r\n data: {\r\n // title: \"Expense\"\r\n },\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: \"category\",\r\n loadChildren:\r\n () => import('./+layout/expense/category/category.module').then(m => m.CategoryModule),\r\n data: {\r\n // title: \"category\",\r\n module: \"CATEGORY\"\r\n }\r\n },\r\n {\r\n path: \"subcategory\",\r\n loadChildren:\r\n () => import('./+layout/expense/sub-category/sub-category.module').then(m => m.SubCategoryModule),\r\n data: {\r\n //title: \"Sub Category\",\r\n module: \"SUBCATEGORY\"\r\n }\r\n },\r\n {\r\n path: \"pdfreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/pdfreport/pdfreport.module').then(m => m.pdfreportModule),\r\n data: {\r\n // title: \"pdfreport\",\r\n module: \"pdfreport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"progressreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/progressreport/progressreport.module').then(m => m.progressreportModule),\r\n data: {\r\n //title: \"Expense Report\",\r\n module: \"progressreport\"\r\n }\r\n },\r\n {\r\n path: \"shedule\",\r\n loadChildren:\r\n () => import('./+layout/expense/shedule/sheduleapp.module').then(m => m.SheduleAppModule),\r\n data: {\r\n // title: \"shedule\",\r\n module: \"Shedule\"\r\n }\r\n },\r\n {\r\n path: \"policyList\",\r\n loadChildren:\r\n () => import('./+layout/expense/policy-list/policy-list.module').then(m => m.PolicyListModule),\r\n data: {\r\n //title: \"Policy Configuration\",\r\n module: \"policyList\"\r\n }\r\n },\r\n {\r\n path: \"policy/:policyId\",\r\n loadChildren: () => import('./+layout/expense/policy/policy.module').then(m => m.PolicyModule),\r\n data: {\r\n // title: \"policy\",\r\n module: \"POLICY\"\r\n }\r\n },\r\n {\r\n path: \"rule\",\r\n loadChildren: () => import('./+layout/expense/addRule/rule.module').then(m => m.RuleModule),\r\n data: {\r\n // title: \"rule\",\r\n module: \"Rule\"\r\n }\r\n },\r\n\r\n {\r\n path: \"Inviteuser\",\r\n loadChildren:\r\n () => import('./+layout/expense/inviteuser/inviteuser.module').then(m => m.InviteuserModule),\r\n data: {\r\n //title: \"Invite User\",\r\n module: \"Inviteuser\"\r\n }\r\n },\r\n {\r\n path: \"Inviteuseredit/:userId/:typeId\",\r\n loadChildren:\r\n () => import('./+layout/expense/inviteuseredit/inviteuseredit.module').then(m => m.InviteusereditModule),\r\n data: {\r\n //title: \"Invite User\",\r\n module: \"Inviteuseredit\"\r\n }\r\n },\r\n {\r\n\r\n path: \"InviteUserList\",\r\n loadChildren:\r\n () => import('./+layout/expense/inviteUserList/inviteUserList.module').then(m => m.InviteUserListModule),\r\n data: {\r\n //title: \"User List\",\r\n module: \"InviteUserList\"\r\n }\r\n },\r\n {\r\n\r\n path: \"VenderRegisteration\",\r\n loadChildren:\r\n () => import('./+layout/expense/venderregistration/venderregistration.module').then(m => m.VenderRegistrationModule),\r\n data: {\r\n //title: \"User List\",\r\n module: \"VenderRegistration\"\r\n }\r\n },\r\n {\r\n path: \"Addexpense\",\r\n loadChildren:\r\n () => import('./+layout/expense/addexpense/addexpense.module').then(m => m.AddexpenseModule),\r\n data: {\r\n //title: \"Add Expense\",\r\n module: \"Addexpense\"\r\n }\r\n },\r\n {\r\n path: \"Addexpense/:expenseId\",\r\n loadChildren:\r\n () => import('./+layout/expense/addexpense/addexpense.module').then(m => m.AddexpenseModule),\r\n data: {\r\n //title: \"Add Expense\",\r\n module: \"Addexpense\"\r\n }\r\n },\r\n {\r\n path: \"Allexpense\",\r\n loadChildren:\r\n () => import('./+layout/expense/allexpense/allexpense.module').then(m => m.AllexpenseModule),\r\n data: {\r\n //title: \"Expense Details\",\r\n module: \"Allexpense\"\r\n }\r\n },\r\n {\r\n path: \"resourceallocation\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceallocation/resourceallocation.module').then(m => m.ResourceallocationModule),\r\n data: {\r\n //title: \"Resource Allocation\",\r\n module: \"Resourceallocation\"\r\n }\r\n },\r\n {\r\n path: \"employeePolicy\",\r\n loadChildren:\r\n () => import('./+layout/expense/employeePolicy/employeePolicy.module').then(m => m.EmployeePolicyModule),\r\n data: {\r\n //title: \"Employee Policy\",\r\n module: \"EmployeePolicy\"\r\n }\r\n },\r\n {\r\n path: \"Viewexpense/:categoryId\",\r\n loadChildren:\r\n () => import('./+layout/expense/viewexpense/viewexpense.module').then(m => m.ViewexpenseModule),\r\n data: {\r\n //title: \"Expense Details\",\r\n module: \"Viewexpense\"\r\n }\r\n },\r\n // {\r\n // path: \"Editexpense/:expenseId\",\r\n // loadChildren:\r\n // () => import('./+layout/expense/editexpense/editexpense.module').then(m => m.EditexpenseModule),\r\n // data: {\r\n // title: \"editexpense\",\r\n // module: \"Editexpense\"\r\n // }\r\n // },\r\n {\r\n path: \"approvalsetting\",\r\n loadChildren:\r\n () => import('./+layout/expense/approvalsetting/approvalsetting.module').then(m => m.ApprovalsettingModule),\r\n data: {\r\n //title: \"Approval Setting\",\r\n module: \"approvalsetting\"\r\n }\r\n },\r\n\r\n {\r\n path: \"Advancepayments\",\r\n loadChildren:\r\n () => import('./+layout/expense/advancepayments/advancepayments.module').then(m => m.AdvancepaymentsModule),\r\n data: {\r\n // title: \"Submit Expense\",\r\n module: \"Advancepayments\"\r\n }\r\n },\r\n {\r\n path: \"Advancepayments/:reportId\",\r\n loadChildren:\r\n () => import('./+layout/expense/advancepayments/advancepayments.module').then(m => m.AdvancepaymentsModule),\r\n data: {\r\n //title: \"Submit Expense\",\r\n module: \"Advancepayments\"\r\n }\r\n },\r\n {\r\n path: \"AddAdvancePayment\",\r\n loadChildren:\r\n () => import('./+layout/expense/all-advance-payment-listing/all-advance-payment-listing.module').then(m => m.AllAdvancePaymentListingModule),\r\n data: {\r\n //title: \"Add Advance Payment\",\r\n module: \"AddAdvancePayment\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"BulkCategory\",\r\n loadChildren:\r\n () => import('./+layout/expense/import-category/import-category.module').then(m => m.ImportCategoryModule),\r\n data: {\r\n // title: \"Category / SubCategory\",\r\n module: \"BULKCATEGORY\"\r\n }\r\n },\r\n {\r\n path: \"AdvancePaymentListig\",\r\n loadChildren:\r\n () => import('./+layout/expense/all-advance-payment-listing/all-advance-payment-listing.module').then(m => m.AllAdvancePaymentListingModule),\r\n data: {\r\n //title: \"AdvancePaymentListig\",\r\n module: \"AdvancePaymentListig\"\r\n }\r\n },\r\n {\r\n path: \"dropdownpayment\",\r\n loadChildren:\r\n () => import('./+layout/expense/add-advance-payment/add-advance-payment.module').then(m => m.AddAdvancePaymentModule),\r\n data: {\r\n //title: \"DropdownComponent\",\r\n module: \"dropdownpayment\"\r\n }\r\n },\r\n\r\n {\r\n path: \"approval\",\r\n loadChildren:\r\n () => import('./+layout/expense/approval/approval.module').then(m => m.ApprovalModule),\r\n data: {\r\n //title: \"Report Details\",\r\n module: \"approval\"\r\n }\r\n },\r\n {\r\n path: \"approval/:reportId\",\r\n loadChildren:\r\n () => import('./+layout/expense/approval/approval.module').then(m => m.ApprovalModule),\r\n data: {\r\n //title: \"approval\",\r\n module: \"approval\"\r\n }\r\n },\r\n\r\n {\r\n path: \"BulkApproval\",\r\n loadChildren:\r\n () => import('./+layout/expense/bulk-report/bulk-report.module').then(m => m.BulkReportModule),\r\n data: {\r\n //title: \"Bulk Approval\",\r\n module: \"BulkApproval\"\r\n }\r\n },\r\n\r\n {\r\n path: \"OutOfOfficer\",\r\n loadChildren:\r\n () => import('./+layout/expense/out-of-officer/out-of-officer.module').then(m => m.OutOfOfficerModule),\r\n data: {\r\n //title: \"Out Of Office\",\r\n module: \"outofofficer\"\r\n }\r\n },\r\n\r\n {\r\n path: \"ReportListing\",\r\n loadChildren:\r\n () => import('./+layout/expense/report-listing/report-listing.module').then(m => m.ReportListingModule),\r\n data: {\r\n //title: \"ReportListing\",\r\n module: \"ReportListing\"\r\n }\r\n },\r\n {\r\n path: \"Reports\",\r\n loadChildren: () => import('./+layout/expense/reports/reports.module').then(m => m.ReportsModule),\r\n data: {\r\n //title: \"Reports\",\r\n module: \"Reports\"\r\n }\r\n },\r\n {\r\n path: \"Reimbursement\",\r\n loadChildren: () => import('./+layout/expense/reimbursement/reimbursement.module').then(m => m.ReimbursementModule),\r\n data: {\r\n //title: \"Reimbursement\",\r\n module: \"Reimbursement\"\r\n }\r\n },\r\n {\r\n path: \"newreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/newreport/newreport.module').then(m => m.NewreportModule),\r\n data: {\r\n //title: \"New Report\",\r\n module: \"newreport\"\r\n }\r\n },\r\n {\r\n path: \"reporttitle\",\r\n loadChildren:\r\n () => import('./+layout/expense/reporttitle/reporttitle.module').then(m => m.ReporttitleModule),\r\n data: {\r\n //title: \"reporttitle\",\r\n module: \"reporttitle\"\r\n }\r\n },\r\n {\r\n path: \"mailalert\",\r\n loadChildren:\r\n () => import('./+layout/expense/mailalert/mailalert.module').then(m => m.MailalertModule),\r\n data: {\r\n //title: \"mailalert\",\r\n module: \"mailalert\"\r\n }\r\n },\r\n\r\n {\r\n path: \"empsubstitutedetails\",\r\n loadChildren:\r\n () => import('./+layout/expense/empsubstitutedetails/empsubstitutedetails.module').then(m => m.EmpsubstitutedetailsModule),\r\n data: {\r\n //title: \"empsubstitutedetails\",\r\n module: \"empsubstitutedetails\"\r\n }\r\n },\r\n\r\n // {\r\n // path: \"inviteuserlogin/:responseId\",\r\n // loadChildren:\r\n // () => import('./+layout/expense/inviteuserlogin/inviteuserlogin.module').then(m => m.InviteuserloginModule),\r\n // data: {\r\n // title: \"inviteuserlogin\",\r\n // module: \"inviteuserlogin\"\r\n // }\r\n // },\r\n {\r\n path: \"myapprovals\",\r\n loadChildren:\r\n () => import('./+layout/expense/myapprovals/myapprovals.module').then(m => m.MyapprovalsModule),\r\n data: {\r\n //title: \"Expense Approval\",\r\n module: \"myapprovals\"\r\n }\r\n },\r\n {\r\n path: \"newcustomapproval\",\r\n loadChildren:\r\n () => import('./+layout/expense/newcustomapproval/newcustomapproval.module').then(m => m.NewcustomapprovalModule),\r\n data: {\r\n //title: \"newcustomapproval\",\r\n module: \"newcustomapproval\"\r\n }\r\n },\r\n {\r\n path: \"expensereport\",\r\n loadChildren:\r\n () => import('./+layout/expense/expensereport/expensereport.module').then(m => m.ExpensereportModule),\r\n data: {\r\n //title: \"Expense Report\",\r\n module: \"expensereport\"\r\n }\r\n },\r\n {\r\n path: \"resourceallocation\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceallocation/resourceallocation.module').then(m => m.ResourceallocationModule),\r\n data: {\r\n //title: \"Resource Allocation\",\r\n module: \"resourceallocation\"\r\n }\r\n },\r\n {\r\n path: \"unsubmitted\",\r\n loadChildren:\r\n () => import('./+layout/expense/unsubmitted/unsubmitted.module').then(m => m.UnsubmittedModule),\r\n data: {\r\n //title: \"Unsubmitted Expenses Report\",\r\n module: \"unsubmitted\"\r\n }\r\n },\r\n {\r\n path: \"excategory\",\r\n loadChildren:\r\n () => import('./+layout/expense/excategory/excategory.module').then(m => m.ExcategoryModule),\r\n data: {\r\n //title: \"Ex-Category\",\r\n module: \"excategory\"\r\n }\r\n },\r\n {\r\n path: \"exuser\",\r\n loadChildren: () => import('./+layout/expense/exuser/exuser.module').then(m => m.ExuserModule),\r\n data: {\r\n //title: \"Expenses by User\",\r\n module: \"exuser\"\r\n }\r\n },\r\n {\r\n path: \"exmileage\",\r\n loadChildren:\r\n () => import('./+layout/expense/exmileage/exmileage.module').then(m => m.ExmileageModule),\r\n data: {\r\n //title: \"Ex-Mileage\",\r\n module: \"exmileage\"\r\n }\r\n },\r\n {\r\n path: \"policyviolations\",\r\n loadChildren:\r\n () => import('./+layout/expense/policyviolations/policyviolations.module').then(m => m.PolicyviolationsModule),\r\n data: {\r\n //title: \"Policy Violations\",\r\n module: \"policyviolations\"\r\n }\r\n },\r\n {\r\n path: \"excustomer\",\r\n loadChildren:\r\n () => import('./+layout/expense/excustomer/excustomer.module').then(m => m.ExcustomerModule),\r\n data: {\r\n //title: \"Ex-Customer\",\r\n module: \"excustomer\"\r\n }\r\n },\r\n {\r\n path: \"exproject\",\r\n loadChildren:\r\n () => import('./+layout/expense/exproject/exproject.module').then(m => m.ExprojectModule),\r\n data: {\r\n //title: \"Ex-Project\",\r\n module: \"exproject\"\r\n }\r\n },\r\n {\r\n path: \"changerequest\",\r\n loadChildren:\r\n () => import('./+layout/expense/changerequest/changerequest.module').then(m => m.ChangerequestModule),\r\n data: {\r\n //title: \"Change Request\",\r\n module: \"changerequest\"\r\n }\r\n },\r\n\r\n {\r\n path: \"resourcereport\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourcereport/resourcereport.module').then(m => m.ResourcereportModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"resourcereport\"\r\n }\r\n },\r\n {\r\n path: \"bugreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/bugreport/bugreport.module').then(m => m.BugreportModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"bugreport\"\r\n }\r\n },\r\n {\r\n path: \"contactsupportutilization\",\r\n loadChildren:\r\n () => import('./+layout/expense/contactsupportutilization/contactsupportutilization.module').then(m => m.ContactsupportutilizationModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"contactsupportutilization\"\r\n }\r\n },\r\n {\r\n path: \"projectfeedback\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectfeedback/projectfeedback.module').then(m => m.ProjectfeedbackModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"projectfeedback\"\r\n }\r\n },\r\n {\r\n path: \"resourceReleaseReport\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceReleaseReport/resourceReleaseReport.module').then(m => m.resourceReleaseReportModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"resourceReport1\"\r\n }\r\n },\r\n {\r\n path: \"TimeRecordStatus\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceReport2/resourceReport2.module').then(m => m.resourceReport2Module),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"TimeRecordStatus\"\r\n }\r\n },\r\n {\r\n path: \"projectconcern\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectconcern/projectconcern.module').then(m => m.ProjectconcernModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"projectconcern\"\r\n }\r\n },\r\n {\r\n path: \"usercompliancereport\",\r\n loadChildren:\r\n () => import('./+layout/expense/usercompliancereport/usercompliancereport.module').then(m => m.UsercompliancereportModule),\r\n data: {\r\n\r\n module: \"usercompliancereport\"\r\n }\r\n },\r\n {\r\n path: \"resourcereport/:projectId\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourcereport/resourcereport.module').then(m => m.ResourcereportModule),\r\n data: {\r\n //title: \"Resource Efficiency Report\",\r\n module: \"resourcereport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"overduetaskreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/overduetaskreport/overduetaskreport.module').then(m => m.OverduetaskreportModule),\r\n data: {\r\n //title: \"Over Due Task Report\",\r\n module: \"overduetaskreport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"plannedactualreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/plannedactualreport/plannedactualreport.module').then(m => m.PlannedactualreportModule),\r\n data: {\r\n //title: \"Planned Vs Actual Report\",\r\n module: \"plannedactualreport\"\r\n }\r\n },\r\n {\r\n path: \"plannedactualreport/:projectId\",\r\n loadChildren:\r\n () => import('./+layout/expense/plannedactualreport/plannedactualreport.module').then(m => m.PlannedactualreportModule),\r\n data: {\r\n //title: \"Planned Vs Actual Report\",\r\n module: \"plannedactualreport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"resourceworkreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceworkreport/resourceworkreport.module').then(m => m.ResourceworkreportModule),\r\n data: {\r\n //title: \"Resource Work Report\",\r\n module: \"resourceworkreport\"\r\n }\r\n },\r\n {\r\n path: \"resourceworkreport/:projectId\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceworkreport/resourceworkreport.module').then(m => m.ResourceworkreportModule),\r\n data: {\r\n //title: \"Resource Work Report\",\r\n module: \"resourceworkreport\"\r\n }\r\n },\r\n {\r\n path: \"clientvspo\",\r\n loadChildren:\r\n () => import('./+layout/expense/clientvspo/clientvspo.module').then(m => m.ClientvspoModule),\r\n data: {\r\n //title: \"Resource Work Report\",\r\n module: \"clientvspo\"\r\n }\r\n },\r\n {\r\n path: \"resourcesvspo\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourcesvspo/resourcesvspo.module').then(m => m.ResourcesvspoModule),\r\n data: {\r\n //title: \"Resource Work Report\",\r\n module: \"resourcesvspo\"\r\n }\r\n },\r\n {\r\n path: \"saleorderdetails\",\r\n loadChildren:\r\n () => import('./+layout/expense/saleorderdetails/saleorderdetails.module').then(m => m.SaleorderdetailsModule),\r\n data: {\r\n //title: \"Resource Work Report\",\r\n module: \"saleorderdetails\"\r\n }\r\n },\r\n {\r\n path: \"resourceutilizationreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceutilizationreport/resourceutilizationreport.module').then(m => m.ResourceutilizationreportModule),\r\n data: {\r\n //title: \"Resource Utilization Report\",\r\n module: \"resourceutilizationreport\"\r\n }\r\n },\r\n {\r\n path: \"resourceCapacityPlanner\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceCapacityPlanner/resourceCapacityPlanner.module').then(m => m.ResourceCapacityPlannerModule),\r\n data: {\r\n //title: \"Resource Capacity Planner\",\r\n module: \"resourceCapacityPlanner\"\r\n }\r\n },\r\n\r\n {\r\n path: \"resourceallocationreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/resourceallocationreport/resourceallocationreport.module').then(m => m.ResourceallocationreportModule),\r\n data: {\r\n //title: \"Resource Allocation Report\",\r\n module: \"resourceallocationreport\"\r\n }\r\n },\r\n {\r\n path: \"projectprofitabilityreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectprofitabilityreport/projectprofitabilityreport.module').then(m => m.ProjectprofitabilityreportModule),\r\n data: {\r\n //title: \"Project Profitability Report\",\r\n module: \"projectprofitabilityreport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"momactionreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/momactionreport/momactionreport.module').then(m => m.MomactionreportModule),\r\n data: {\r\n //title: \"MOM Action Report\",\r\n module: \"momactionreport\"\r\n }\r\n },\r\n\r\n {\r\n path: \"changerequestreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/changerequestreport/changerequestreport.module').then(m => m.ChangerequestreportModule),\r\n data: {\r\n //title: \"Change Request Report\",\r\n module: \"changerequestreport\"\r\n }\r\n },\r\n {\r\n path: \"projectleaveplannerreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectleaveplannerreport/projectleaveplannerreport.module').then(m => m.ProjectleaveplannerreportModule),\r\n data: {\r\n //title: \"Project Leave Planner Report\",\r\n module: \"projectleaveplannerreport\"\r\n }\r\n },\r\n {\r\n path: \"MonthlyLeavePlan\",\r\n loadChildren:\r\n () => import('./+layout/expense/MonthlyLeavePlan/MonthlyLeavePlan.module').then(m => m.MonthlyLeavePlanModule),\r\n data: {\r\n //title: \"Monthly Leave Plan Report\",\r\n module: \"MonthlyLeavePlan\"\r\n }\r\n },\r\n {\r\n path: \"roadblockchallengereport\",\r\n loadChildren:\r\n () => import('./+layout/expense/roadblockchallengesreport/roadblockchallengereport.module').then(m => m.RoadblockchallengereportModule),\r\n data: {\r\n //title: \"Roadblock Challenges Report\",\r\n module: \"roadblockchallengereport\"\r\n }\r\n },\r\n // {\r\n // path: \"hometest\",\r\n // loadChildren:\r\n // () => import('./+layout/expense/hometest/hometest.module').then(m => m.HometestModule),\r\n // data: {\r\n // //title: \"Project Health Card\",\r\n // module: \"hometest\"\r\n // }\r\n // },\r\n {\r\n path: \"ProjectHealthCard\",\r\n loadChildren:\r\n () => import('./+layout/expense/ProjectHealth/ProjectHealth.module').then(m => m.ProjectHealthModule),\r\n data: {\r\n //title: \"Project Health Card\",\r\n module: \"ProjectHealthCard\"\r\n }\r\n },\r\n {\r\n path: \"phaseproject\",\r\n loadChildren:\r\n () => import('./+layout/expense/phaseproject/phaseproject.module').then(m => m.PhaseprojectModule),\r\n data: {\r\n //title: \"phaseproject\",\r\n module: \"phaseproject\"\r\n }\r\n },\r\n {\r\n path: \"expensedasboard\",\r\n loadChildren:\r\n () => import('./+layout/expense/expensedasboard/expensedasboard.module').then(m => m.ExpensedasboardModule),\r\n data: {\r\n //title: \"Expense Dashboard\",\r\n module: \"expensedasboard\"\r\n }\r\n },\r\n {\r\n path: \"rights\",\r\n loadChildren: () => import('./+layout/expense/rights/rights.module').then(m => m.RightsModule),\r\n data: {\r\n //title: \"Rights\",\r\n module: \"rights\"\r\n }\r\n },\r\n {\r\n path: \"projectphasedetail\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectphasedetail/projectphasedetail.module').then(m => m.ProjectphasedetailModule),\r\n data: {\r\n //title: \"phase Detail\",\r\n module: \"projectphasedetail\"\r\n }\r\n },\r\n {\r\n path: \"AnalyticsReports\",\r\n loadChildren:\r\n () => import('./+layout/expense/AnalyticsReports/AnalyticsReports.module').then(m => m.AnalyticsReportsModule),\r\n data: {\r\n //title: \"AnalyticsReports\",\r\n module: \"AnalyticsReports\"\r\n }\r\n },\r\n {\r\n path: \"globalSettings\",\r\n loadChildren:\r\n () => import('./+layout/expense/orgsetting/orgsetting.module').then(m => m.OrgsettingModule),\r\n data: {\r\n //title: \"Orgsetting\",\r\n module: \"orgsetting\"\r\n }\r\n },\r\n {\r\n path: \"organisationchart\",\r\n loadChildren:\r\n () => import('./+layout/expense/organisationchart/organisationchart.module').then(m => m.organisationchartModule),\r\n data: {\r\n //title: \"Organisation Chart\",\r\n module: \"organisationchart\"\r\n }\r\n },\r\n {\r\n path: \"projectorganisationchart\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectorganisationchart/projectorganisationchart.module').then(m => m.projectorganisationchartModule),\r\n data: {\r\n //title: \"Project Organisation Chart\",\r\n module: \"projectorganisationchart\"\r\n }\r\n },\r\n {\r\n path: \"expensereports\",\r\n loadChildren:\r\n () => import('./+layout/expense/expensereports/expensereports.module').then(m => m.ExpensereportsModule),\r\n data: {\r\n //title: \"Expense Reports\",\r\n module: \"expensereports\"\r\n }\r\n },\r\n {\r\n path: \"leavereports\",\r\n loadChildren:\r\n () => import('./+layout/expense/leavereports/leavereports.module').then(m => m.LeavereportsModule),\r\n data: {\r\n //title: \"Leave Reports\",\r\n module: \"leavereports\"\r\n }\r\n },\r\n {\r\n path: \"projectreports\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectreports/projectreports.module').then(m => m.ProjectreportsModule),\r\n data: {\r\n //title: \"Project Reports\",\r\n module: \"projectreports\"\r\n }\r\n },\r\n {\r\n path: \"managementreports\",\r\n loadChildren:\r\n () => import('./+layout/expense/managementreports/managementreports.module').then(m => m.ManagementreportsModule),\r\n data: {\r\n //title: \"Management Reports\",\r\n module: \"managementreports\"\r\n }\r\n },\r\n {\r\n path: \"businessreports\",\r\n loadChildren:\r\n () => import('./+layout/expense/businessreports/businessreports.module').then(m => m.BusinessreportsModule),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"businessreports\"\r\n }\r\n },\r\n {\r\n path: \"organizationReports\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/organizationReports.module').then(m => m.organizationReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"businessreports\"\r\n }\r\n },\r\n {\r\n path: \"exitEmployeesList\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/exitEmployeesList/exitEmployeesList.module').then(m => m.ExitEmployeesListReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"exitEmployeesList\"\r\n }\r\n },\r\n {\r\n path: \"leavesDetails\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/LeavesDetails/leavesDetails.module').then(m => m.LeavesDetailsReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"leavesDetails\"\r\n }\r\n },\r\n {\r\n path: \"timeDetails\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/timeDetails/timeDetails.module').then(m => m.TimeDetailsReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"timeDetails\"\r\n }\r\n },\r\n {\r\n path: \"projectOff-Boarded\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/projectOff-Boarded/projectOff-Boarded.module').then(m => m.ProjectOffBoardedReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"projectOff-Boarded\"\r\n }\r\n },\r\n {\r\n path: \"projectsOn-Boarded\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/projectsOn-Boarded/projectsOn-Boarded.module').then(m => m.ProjectsOnBoardedReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"projectsOn-Boarded\"\r\n }\r\n },\r\n {\r\n path: \"usersOff-Boarded\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/usersOff-Boarded/usersOff-Boarded.module').then(m => m.UsersOffBoardedReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"usersOff-Boarded\"\r\n }\r\n },\r\n {\r\n path: \"usersOn-Boarded\",\r\n loadChildren:\r\n () => import('./+layout/expense/organizationReports/usersOn-Boarded/usersOn-Boarded.module').then(m => m.usersOnBoardedReports),\r\n data: {\r\n //title: \"Business Reports\",\r\n module: \"usersOn-Boarded\"\r\n }\r\n },\r\n {\r\n path: \"contactsupport\",\r\n loadChildren:\r\n () => import('./+layout/expense/contactsupport/contactsupport.module').then(m => m.ContactsupportModule),\r\n data: {\r\n //title: \"Contact Support\",\r\n module: \"contactsupport\"\r\n }\r\n },\r\n {\r\n path: \"integration\",\r\n loadChildren:\r\n () => import('./+layout/expense/integration/integration.module').then(m => m.IntegrationModule),\r\n data: {\r\n //title: \"Integration\",\r\n module: \"integration\"\r\n }\r\n },\r\n {\r\n path: \"settings\",\r\n loadChildren:\r\n () => import('./+layout/expense/settings/settings.module').then(m => m.SettingsModule),\r\n data: {\r\n //title: \"Settings\",\r\n module: \"settings\"\r\n }\r\n },\r\n {\r\n path: \"engagementmodel\",\r\n loadChildren:\r\n () => import('./+layout/engagementmodel/engagementmodel.module').then(m => m.EngagementmodelModule),\r\n data: {\r\n //title: \"Engagement Model\",\r\n module: \"engagementmodel\"\r\n }\r\n },\r\n {\r\n path: \"projectdocument\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectdocument/projectdocument.module').then(m => m.ProjectdocumentModule),\r\n data: {\r\n //title: \"Project Document\",\r\n module: \"projectdocument\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"workorderdetails\",\r\n loadChildren:\r\n () => import('./+layout/expense/workorderdetails/workorderdetails.module').then(m => m.WorkOrderDetailsModule),\r\n data: {\r\n //title: \"Project Document\",\r\n module: \"workorderdetails\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"workorderReport\",\r\n loadChildren:\r\n () => import('./+layout/expense/workorderReport/workorderReport.module').then(m => m.WorkOrderReportModule),\r\n data: {\r\n //title: \"workorderReport\",\r\n module: \"workorderReport\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"customreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/customreport/customreport.module').then(m => m.CustomReportModule),\r\n data: {\r\n //title: \"workorderReport\",\r\n module: \"customreport\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"pmssupport\",\r\n loadChildren:\r\n () => import('./+layout/expense/pmssupport/pmssupport.module').then(m => m.PmssupportModule),\r\n data: {\r\n //title: \"workorderReport\",\r\n module: \"pmssupport\"\r\n }\r\n },\r\n {\r\n path: \"monthlyreport\",\r\n loadChildren:\r\n () => import('./+layout/expense/monthlyreport/monthlyreport.module').then(m => m.MonthlyreportModule),\r\n data: {\r\n //title: \"monthlyreport\",\r\n module: \"monthlyreport\"\r\n }\r\n },\r\n {\r\n path: \"MonthlyNonWorkingReport\",\r\n loadChildren:\r\n () => import('./+layout/expense/monthlyNonWorkingreport/monthlyNonWorkingreport.module').then(m => m.MonthlyNonWorkingreportModule),\r\n data: {\r\n //title: \"MonthlyNonWorkingreport\",\r\n module: \"MonthlyNonWorkingreport\"\r\n }\r\n },\r\n {\r\n path: \"invoice/:id\",\r\n loadChildren:\r\n () => import('./+layout/expense/invoice/invoice.module').then(m => m.InvoiceModule),\r\n data: {\r\n //title: \"invoice\",\r\n module: \"invoice\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"invoiceReport/:id\",\r\n loadChildren:\r\n () => import('./+layout/expense/invoiceReport/invoiceReport.module').then(m => m.InvoiceReportModule),\r\n data: {\r\n //title: \"invoiceReport\",\r\n module: \"invoiceReport\"\r\n }\r\n },\r\n {\r\n path: \"TrainingRequirement\",\r\n loadChildren:\r\n () => import('./+layout/expense/TrainingRerquirement/TrainingRerquirement.module').then(m => m.TrainingRerquirementModule),\r\n data: {\r\n //title: \"TrainingRequirement\",\r\n module: \"TrainingRequirement\"\r\n }\r\n },\r\n {\r\n path: \"clientholiday\",\r\n loadChildren:\r\n () => import('./+layout/leave/clientholiday/clientholiday.module').then(m => m.ClientholidayModule),\r\n data: {\r\n //title: \"Client Holiday\",\r\n module: \"clientholiday\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"projectsummary\",\r\n loadChildren:\r\n () => import('./+layout/expense/projectsummary/projectsummary.module').then(m => m.ProjectsummaryModule),\r\n data: {\r\n //title: \"Project Summary\",\r\n module: \"projectsummary\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"timecorrection\",\r\n loadChildren:\r\n () => import('./+layout/expense/timecorrection/timecorrection.module').then(m => m.TimecorrectionModule),\r\n data: {\r\n //title: \"Project Summary\",\r\n module: \"timecorrection\"\r\n }\r\n }\r\n ,\r\n {\r\n path: \"timecorrectionapproval\",\r\n loadChildren:\r\n () => import('./+layout/expense/timecorrectionapproval/timecorrectionapproval.module').then(m => m.TimecorrectionapprovalModule),\r\n data: {\r\n //title: \"Project Summary\",\r\n module: \"timecorrection\"\r\n }\r\n } ,\r\n {\r\n path: \"entrygrid\",\r\n loadChildren:\r\n () => import('./+layout/expense/entrygrid/entrygrid.module').then(m => m.EntrygridModule),\r\n data: {\r\n //title: \"Project Summary\",\r\n module: \"entrygrid\"\r\n }\r\n }\r\n ,\r\n\r\n\r\n ]\r\n },\r\n { path: \"**\", redirectTo: \"errors/404\", pathMatch: \"full\" }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { useHash: true, relativeLinkResolution: 'legacy' })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule {}\r\n","
    \r\n\r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Version 1.0 |\r\n {{ currentYear }} © Powered by\r\n CRG Solutions Pvt. Ltd.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n","import { Component, OnInit, HostListener} from '@angular/core';\r\nimport { LayoutService } from 'angular-admin-lte';\r\nimport { NgxZendeskWebwidgetService } from 'ngx-zendesk-webwidget';\r\nimport { disableDebugTools } from \"@angular/platform-browser\";\r\nimport { ToasterService } from './+layout/expense/toaster/toaster.service';\r\nimport { AuthService } from './services/auth.service';\r\nimport { ExpenseHttpService } from './services/expense/expense-http.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { from, Subject} from 'rxjs';\r\n\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n})\r\nexport class AppComponent implements OnInit {\r\n public customLayout: boolean;\r\n currentYear: number;\r\n public async: any;\r\n message = '';\r\n messages: string[] = [];\r\n userActivity;\r\n userInactive: Subject = new Subject();\r\n usermose = [];\r\n\r\n dynamicCSSUrl: string;\r\n UserID: any;\r\n ThemeId: any;\r\nLogo:any;\r\n constructor( private layoutService: LayoutService, \r\n private toaster: ToasterService, \r\n // private _NgxZendeskWebwidgetService: NgxZendeskWebwidgetService,\r\n private authService: AuthService,\r\n private Http: ExpenseHttpService,\r\n public sanitizer: DomSanitizer) {\r\n // this._NgxZendeskWebwidgetService.setSettings({\r\n // webWidget: { launcher: { chatLabel: { '*': 'Support' } } }\r\n // });\r\n // this._NgxZendeskWebwidgetService.initZendesk();\r\n this.UserID = this.authService.getUserId();\r\n this.setTimeout();\r\n this.userInactive.subscribe(() => { \r\n this.toaster.show(\"warning\", \"You were In- Active for 20 Minutes\")\r\n setTimeout(() => {\r\n this.authService.logout();\r\n }, 3000);\r\n });\r\n }\r\n setTimeout() {\r\n this.userActivity = setTimeout(() => this.userInactive.next(undefined), 1200000); //Time for session time out 1200000\r\n } \r\n\r\n @HostListener('window:mousemove') refreshUserState() {\r\n clearTimeout(this.userActivity);\r\n this.setTimeout();\r\n }\r\n @HostListener('window:keydown') refreshUserState2() {\r\n clearTimeout(this.userActivity);\r\n this.setTimeout();\r\n }\r\n // setBaseUrl(){\r\n // debugger\r\n // let baseDOM = document.getElementsByTagName(\"base\")\r\n // let strURL = baseDOM[0].href.split(\"Customer\")\r\n // let cmp = this.authService.getCmpName()\r\n // if(cmp == undefined || cmp == null ){\r\n // baseDOM[0].href = strURL[0]+\"Customer\"\r\n // }else{\r\n // if(this.authService.getToken()){\r\n \r\n // baseDOM[0].href = strURL[0] + cmp \r\n // }else{\r\n // baseDOM[0].href = strURL[0]+\"Customer\"\r\n // }\r\n \r\n // }\r\n \r\n // }\r\n\r\n ngOnInit() {\r\n this.currentYear = (new Date()).getFullYear();\r\n this.layoutService.isCustomLayout.subscribe((value: boolean) => {\r\n this.customLayout = value;\r\n });\r\n this.ThemeId = this.authService.getThemeId();\r\n this.Logo = this.authService.getLogo();\r\n disableDebugTools();\r\n console.log = function (): void { };\r\n console.debug = function (): void { debugger ;};\r\n console.warn = function (): void { };\r\n console.info = function (): void { };\r\n // this.setBaseUrl();\r\n \r\n }\r\n}","import { CommonModule, DatePipe } from '@angular/common';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgModule } from '@angular/core';\r\nimport { HttpModule } from \"@angular/http\";\r\nimport { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';\r\nimport { LoadingPageModule, MaterialBarModule } from 'angular-loading-page';\r\nimport { LayoutModule } from 'angular-admin-lte';\r\nimport { NgxZendeskWebwidgetModule, NgxZendeskWebwidgetConfig } from 'ngx-zendesk-webwidget';\r\nimport { adminLteConf } from './admin-lte.conf';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { CoreModule } from './core/core.module';\r\nimport { AppComponent } from './app.component';\r\nimport { CommonService } from './common.service';\r\nimport { JwtInterceptorService } from './services/jwt-interceptor.service';\r\nimport { StarRatingComponent } from './core/star-rating/star-rating.component';\r\nimport { AuthGuard } from './auth.guard';\r\nimport { AuthService } from './services/auth.service';\r\nimport { LeaveModule } from \"./+layout/leave/leave.module\";\r\nimport { ToasterContainerComponent } from './+layout/expense/toaster/toaster-container.component';\r\nimport { ToasterComponent } from './+layout/expense/toaster/toaster.component';\r\nimport {DecimalPipe} from '@angular/common';\r\nimport { DropDownListAllModule } from '@syncfusion/ej2-angular-dropdowns';\r\nimport { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';\r\nimport { BarRatingModule } from 'ngx-bar-rating';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\n\r\n// export class ZendeskConfig extends NgxZendeskWebwidgetConfig {\r\n// timeOut = 2000;\r\n// lazyLoad = false;\r\n// accountUrl = 'crgroup.zendesk.com';\r\n// beforePageLoad(zE) {\r\n// zE.setLocale('en');\r\n// zE.hide();\r\n// }\r\n// }\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule, CommonModule, BrowserModule,\r\n HttpModule, HttpClientModule,\r\n CoreModule, LoadingPageModule, MaterialBarModule,\r\n AppRoutingModule,\r\n\t LeaveModule,\r\n NgxSkeletonLoaderModule,\r\n LayoutModule.forRoot(adminLteConf),\r\n // NgxZendeskWebwidgetModule.forRoot(ZendeskConfig),\r\n DropDownListAllModule,\r\n BrowserAnimationsModule,\r\n \r\n\r\n ],\r\n declarations: [\r\n AppComponent , ToasterContainerComponent, ToasterComponent,StarRatingComponent\r\n ],\r\n providers: [\r\n DatePipe,\r\n CommonService,\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptorService, multi: true },\r\n AuthService,\r\n AuthGuard,\r\n DecimalPipe\r\n ],\r\n bootstrap: [AppComponent],\r\n\r\n})\r\nexport class AppModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './services/auth.service';\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate {\r\n CurrentUser: any;\r\n constructor(private auth: AuthService, private myRoute: Router) {\r\n this.auth.getPermission();\r\n this.auth.currentUser.subscribe(x => this.CurrentUser = x);\r\n }\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n if (!this.auth.isLoggednIn()) {\r\n this.myRoute.navigate([\"Login\"], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n if (next.data && next.data['module']) {\r\n return true;\r\n // if (this.CurrentUser.permission.includes(next.data['module'] + '_URL_VISIBILITY')) {\r\n // return true;\r\n // } else {\r\n // this.myRoute.navigate(['home']);\r\n // return false;\r\n // }\r\n }\r\n return true;\r\n }\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | boolean {\r\n return this.canActivate(route, state);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Http, Response, Headers, RequestOptions } from '@angular/http';\r\nimport { environment } from '../environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport 'rxjs/add/operator/catch';\r\nimport 'rxjs/add/observable/throw';\r\nimport 'rxjs/add/operator/map';\r\nimport 'rxjs/add/operator/do';\r\nimport { Router } from '@angular/router';\r\nimport 'rxjs';\r\n\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport { AuthService } from './services/auth.service';\r\n\r\ndeclare var $: any;\r\n\r\nconst API_Url = environment.apiUrl;\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\nconst EXCEL_CSV_EXTENSION = '.csv';\r\n//Delete message \r\n\r\n@Injectable()\r\nexport class CommonService {\r\n TitleSelect2_ddl = [{ id: 'Mr', text: 'Mr.' }, { id: 'Ms', text: 'Ms' }, { id: 'Mrs', text: 'Mrs' }];\r\n GenderSelect2_ddl = [{ id: 'Male', text: 'Male' }, { id: 'Female', text: 'Female' }];\r\n\r\n constructor(private _http: Http, private _route: Router, private authService: AuthService) {\r\n }\r\n\r\n CRG_GetAPI(RoutesParms) {\r\n try {\r\n let URL = environment.apiUrl + '/' + RoutesParms;\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n return this._http.get(URL, opt).pipe(map((response: Response) => response.json()));\r\n\r\n }\r\n catch (ex) {\r\n let message = ex.message;\r\n }\r\n }\r\n\r\n CRG_PostAPI(RoutesParms, data?: any) {\r\n try {\r\n if (!data) {\r\n data = \"\";\r\n }\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n myHeaders.set('Content-type', 'application/json')\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n let URL = environment.apiUrl + '/' + RoutesParms;\r\n return this._http.post(URL, data, opt)\r\n .pipe(map((response: Response) => response))\r\n }\r\n catch (ex) {\r\n let message = ex.message;\r\n }\r\n }\r\n\r\n CRG_PostFileAPI(RoutesParms, data) {\r\n try {\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`);\r\n let URL = environment.apiUrl + '/' + RoutesParms;\r\n return this._http.post(URL, data, { headers: myHeaders })\r\n .pipe(map((response: Response) => response));\r\n } catch (ex) {\r\n let message = ex.message;\r\n }\r\n }\r\n\r\n CloseModalHandler = function (ModalId) {\r\n document.getElementsByTagName(\"BODY\")[0].removeAttribute('style');\r\n document.getElementsByTagName(\"BODY\")[0].removeAttribute('class');\r\n ($(\"#\" + ModalId)).modal('hide');\r\n };\r\n\r\n OpenModalHandler = function (ModalId) {\r\n ($(\"#\" + ModalId)).modal({ backdrop: 'static', keyboard: false });\r\n document.getElementsByTagName(\"BODY\")[0].removeAttribute('style');\r\n document.getElementsByTagName(\"BODY\")[0].removeAttribute('class');\r\n }\r\n\r\n //Excel expot function\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n private saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION);\r\n }\r\n\r\n public exportAsExcelAsCsvFile(json: any[], excelFileName: string): void {\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'csv', type: 'array' });\r\n this.saveAsExcelAsCsvFile(excelBuffer, excelFileName);\r\n }\r\n private saveAsExcelAsCsvFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: \"text/csv\" });\r\n FileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + EXCEL_CSV_EXTENSION);\r\n }\r\n\r\n\r\n requiredValidation = function (txtclass, e, parentElement = '') {\r\n var preventCheck = false;\r\n var Isvalid = true;\r\n var txtCount = 0;\r\n var ddlcount = 0;\r\n var validNumber = /^[0-9]*$/;\r\n var emailRegx = /^([\\w-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$/;\r\n var ISDCode = /^(\\+)([0-9]{1})|([0-9]{2})|([0-9]{2})$/;\r\n var Mobile = /^([0-9]*[\\.\\s\\-\\(\\)]|[0-9]+){5,15}$/;\r\n var Telephone = /^[+]?([0-9]*[\\.\\s\\-\\(\\)]|[0-9]+){5,15}$/;\r\n var website = /^(?:http(s)?:\\/\\/)?[\\w.-]+(?:\\.[\\w\\.-]+)+[\\w\\-\\._~:/?#[\\]@!\\$&'\\(\\)\\*\\+,;=.]+$/\r\n\r\n $(\".error\").each(function () {\r\n $(this).remove();\r\n });\r\n\r\n $(\".\" + txtclass, parentElement).each(function () {\r\n var o = $(this);\r\n var Type = o[\"0\"].localName;\r\n\r\n if (Isvalid) {\r\n if (Type == \"ng-select\") {\r\n if (o.attr(\"req\")) {\r\n if (o[0].outerHTML.includes('Billing Type')) {\r\n if (o[0].outerText === 'Billing Type') {\r\n o.after(\" \" + environment.requiredMsg + \" \").show(\"slow\");\r\n ddlcount++;\r\n }\r\n } else if (o[0].outerText.length === 0) {\r\n o.after(\" \" + environment.requiredMsg + \" \").show(\"slow\");\r\n ddlcount++;\r\n }\r\n }\r\n else {\r\n if (ddlcount > 0) {\r\n ddlcount--;\r\n }\r\n }\r\n } else if (Type === \"select\") {\r\n if (o.attr(\"req\") && $(\"option:selected\", o).index() <= 0 && (o[0].options.length > 1 && o[0].options[0].value === \"null\")) {\r\n o.after(\" \" + environment.requiredMsg + \" \").show(\"slow\");\r\n ddlcount++;\r\n }\r\n // else {\r\n // if (ddlcount > 0) {\r\n // ddlcount--;\r\n // }\r\n //}\r\n }\r\n else if (Type == \"input\") {\r\n\r\n //required for texbox\r\n if ((o.attr(\"req\")) == '1' && $.trim(o.val().toString()) == '') {\r\n o.after(\" \" + environment.requiredMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n }\r\n else if ((o.attr(\"countrycode\")) == 1 && $.trim(o.val().toString() != '')) {\r\n if ((!(ISDCode.test(o.val().toString())))) {\r\n o.after(\" \" + environment.countryCode + \"\").show(\"slow\");\r\n txtCount++;\r\n }\r\n }\r\n else if (o.attr(\"Num\") && (!(validNumber.test(o.val().toString())))) {\r\n // var message = o.attr(\"Number-allowed\");\r\n o.after(\"\" + environment.NumberMsg + \" \").show(\"slow\");\r\n txtCount++;\r\n }\r\n else if (o.attr(\"Mobile\") == 1 && $.trim(o.val()) != '') {\r\n if ((!(Mobile.test(o.val().toString())))) {\r\n o.after(\"\" + environment.MobileMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n //e.preventDefault();\r\n }\r\n }\r\n else if ((o.attr(\"Telephone\")) == 1 && $.trim(o.val()) != '') {\r\n if ((!(Telephone.test(o.val().toString())))) {\r\n o.after(\"\" + environment.TelephoneMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n //e.preventDefault();\r\n }\r\n }\r\n else if (((o.attr(\"Email\")) == '1' && $.trim(o.val().toString()) === '') && ((o.attr(\"Email\")) == '1' && !(emailRegx.test(o.val().toString())))) {\r\n o.after(\"\" + environment.EmailMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n // return Isvalid;\r\n }\r\n\r\n else if (o.attr(\"website\") == '1' && (!(website.test(o.val().toString()))) &&\r\n $.trim(o.val()) != ''\r\n ) {\r\n o.after(\"\" + environment.websiteMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n // return Isvalid;\r\n }\r\n\r\n else {\r\n if (txtCount > 0) {\r\n // txtCount--;\r\n }\r\n }\r\n }\r\n //validation on textarea\r\n else if (Type == 'textarea') {\r\n if ((o.attr(\"req\")) == '1' && $.trim(o.val().toString()) == '') {\r\n o.after(\" \" + environment.requiredMsg + \"\").show(\"slow\");\r\n txtCount++;\r\n }\r\n else {\r\n // txtCount--\r\n }\r\n }\r\n else {\r\n o.after().remove();\r\n }\r\n\r\n }\r\n });\r\n if (txtCount > 0 || ddlcount > 0) {\r\n Isvalid = false;\r\n }\r\n else {\r\n Isvalid = true;\r\n }\r\n\r\n\r\n return Isvalid;\r\n\r\n }\r\n getCountrycodes(){\r\n let codes = [\r\n // {\r\n // \"code\": \"+93\",\r\n // \"name\": \"Afghanistan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+355\",\r\n // \"name\": \"Albania\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+213\",\r\n // \"name\": \"Algeria\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 684\",\r\n // \"name\": \"American Samoa\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+376\",\r\n // \"name\": \"Andorra\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+244\",\r\n // \"name\": \"Angola\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 264\",\r\n // \"name\": \"Anguilla\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 268\",\r\n // \"name\": \"Antigua and Barbuda\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+54\",\r\n // \"name\": \"Argentina\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+374\",\r\n // \"name\": \"Armenia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+297\",\r\n // \"name\": \"Aruba\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+247\",\r\n // \"name\": \"Ascension\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+61\",\r\n // \"name\": \"Australia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+43\",\r\n // \"name\": \"Austria\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+994\",\r\n // \"name\": \"Azerbaijan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 242\",\r\n // \"name\": \"Bahamas\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+973\",\r\n // \"name\": \"Bahrain\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+880\",\r\n // \"name\": \"Bangladesh\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 246\",\r\n // \"name\": \"Barbados\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 268\",\r\n // \"name\": \"Barbuda\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+375\",\r\n // \"name\": \"Belarus\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+32\",\r\n // \"name\": \"Belgium\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+501\",\r\n // \"name\": \"Belize\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+229\",\r\n // \"name\": \"Benin\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 441\",\r\n // \"name\": \"Bermuda\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+975\",\r\n // \"name\": \"Bhutan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+591\",\r\n // \"name\": \"Bolivia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+387\",\r\n // \"name\": \"Bosnia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+267\",\r\n // \"name\": \"Botswana\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+55\",\r\n // \"name\": \"Brazil\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+246\",\r\n // \"name\": \"British Indian Ocean Territory\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 284\",\r\n // \"name\": \"British Virgin Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+673\",\r\n // \"name\": \"Brunei\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+359\",\r\n // \"name\": \"Bulgaria\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+226\",\r\n // \"name\": \"Burkina Faso\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+257\",\r\n // \"name\": \"Burundi\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+855\",\r\n // \"name\": \"Cambodia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+237\",\r\n // \"name\": \"Cameroon\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n {\r\n \"code\": \"+1 \",\r\n \"name\": \"Canada\",\r\n \"flag\": \"../../assets/img/Flags/ca.png\"\r\n },\r\n // {\r\n // \"code\": \"+238\",\r\n // \"name\": \"Cape Verde\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+ 345\",\r\n // \"name\": \"Cayman Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+236\",\r\n // \"name\": \"Central African Republic\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+235\",\r\n // \"name\": \"Chad\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+56\",\r\n // \"name\": \"Chile\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+86\",\r\n // \"name\": \"China\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+61\",\r\n // \"name\": \"Christmas Island\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+61\",\r\n // \"name\": \"Cocos-Keeling Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+57\",\r\n // \"name\": \"Colombia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+269\",\r\n // \"name\": \"Comoros\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+242\",\r\n // \"name\": \"Congo\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+243\",\r\n // \"name\": \"Congo\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+682\",\r\n // \"name\": \"Cook Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+506\",\r\n // \"name\": \"Costa Rica\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+385\",\r\n // \"name\": \"Croatia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+53\",\r\n // \"name\": \"Cuba\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+599\",\r\n // \"name\": \"Curacao\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+537\",\r\n // \"name\": \"Cyprus\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+420\",\r\n // \"name\": \"Czech Republic\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+45\",\r\n // \"name\": \"Denmark\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+246\",\r\n // \"name\": \"Diego Garcia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+253\",\r\n // \"name\": \"Djibouti\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 767\",\r\n // \"name\": \"Dominica\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 809\",\r\n // \"name\": \"Dominican Republic\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+670\",\r\n // \"name\": \"East Timor\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+56\",\r\n // \"name\": \"Easter Island\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+593\",\r\n // \"name\": \"Ecuador\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+20\",\r\n // \"name\": \"Egypt\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+503\",\r\n // \"name\": \"El Salvador\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+240\",\r\n // \"name\": \"Equatorial Guinea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+291\",\r\n // \"name\": \"Eritrea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+372\",\r\n // \"name\": \"Estonia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+251\",\r\n // \"name\": \"Ethiopia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+500\",\r\n // \"name\": \"Falkland Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+298\",\r\n // \"name\": \"Faroe Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+679\",\r\n // \"name\": \"Fiji\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+358\",\r\n // \"name\": \"Finland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+33\",\r\n // \"name\": \"France\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+596\",\r\n // \"name\": \"French Antilles\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+594\",\r\n // \"name\": \"French Guiana\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+689\",\r\n // \"name\": \"French Polynesia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+241\",\r\n // \"name\": \"Gabon\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+220\",\r\n // \"name\": \"Gambia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+995\",\r\n // \"name\": \"Georgia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+49\",\r\n // \"name\": \"Germany\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+233\",\r\n // \"name\": \"Ghana\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+350\",\r\n // \"name\": \"Gibraltar\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+30\",\r\n // \"name\": \"Greece\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+299\",\r\n // \"name\": \"Greenland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 473\",\r\n // \"name\": \"Grenada\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+590\",\r\n // \"name\": \"Guadeloupe\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 671\",\r\n // \"name\": \"Guam\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+502\",\r\n // \"name\": \"Guatemala\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+224\",\r\n // \"name\": \"Guinea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+245\",\r\n // \"name\": \"Guinea-Bissau\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+595\",\r\n // \"name\": \"Guyana\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+509\",\r\n // \"name\": \"Haiti\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+504\",\r\n // \"name\": \"Honduras\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+852\",\r\n // \"name\": \"Hong Kong SAR China\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+36\",\r\n // \"name\": \"Hungary\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+354\",\r\n // \"name\": \"Iceland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n {\r\n \"code\": \"+91\",\r\n \"name\": \"India\",\r\n \"flag\": \"../../assets/img/Flags/in.png\"\r\n },\r\n // {\r\n // \"code\": \"+62\",\r\n // \"name\": \"Indonesia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+98\",\r\n // \"name\": \"Iran\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+964\",\r\n // \"name\": \"Iraq\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+353\",\r\n // \"name\": \"Ireland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+972\",\r\n // \"name\": \"Israel\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+39\",\r\n // \"name\": \"Italy\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+225\",\r\n // \"name\": \"Ivory Coast\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 876\",\r\n // \"name\": \"Jamaica\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+81\",\r\n // \"name\": \"Japan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+962\",\r\n // \"name\": \"Jordan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+7 7\",\r\n // \"name\": \"Kazakhstan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+254\",\r\n // \"name\": \"Kenya\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+686\",\r\n // \"name\": \"Kiribati\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+965\",\r\n // \"name\": \"Kuwait\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+996\",\r\n // \"name\": \"Kyrgyzstan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+856\",\r\n // \"name\": \"Laos\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+371\",\r\n // \"name\": \"Latvia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+961\",\r\n // \"name\": \"Lebanon\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+266\",\r\n // \"name\": \"Lesotho\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+231\",\r\n // \"name\": \"Liberia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+218\",\r\n // \"name\": \"Libya\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+423\",\r\n // \"name\": \"Liechtenstein\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+370\",\r\n // \"name\": \"Lithuania\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+352\",\r\n // \"name\": \"Luxembourg\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+853\",\r\n // \"name\": \"Macau SAR China\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+389\",\r\n // \"name\": \"Macedonia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+261\",\r\n // \"name\": \"Madagascar\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+265\",\r\n // \"name\": \"Malawi\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+60\",\r\n // \"name\": \"Malaysia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+960\",\r\n // \"name\": \"Maldives\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+223\",\r\n // \"name\": \"Mali\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+356\",\r\n // \"name\": \"Malta\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+692\",\r\n // \"name\": \"Marshall Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+596\",\r\n // \"name\": \"Martinique\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+222\",\r\n // \"name\": \"Mauritania\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+230\",\r\n // \"name\": \"Mauritius\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+262\",\r\n // \"name\": \"Mayotte\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+52\",\r\n // \"name\": \"Mexico\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+691\",\r\n // \"name\": \"Micronesia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 808\",\r\n // \"name\": \"Midway Island\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+373\",\r\n // \"name\": \"Moldova\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+377\",\r\n // \"name\": \"Monaco\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+976\",\r\n // \"name\": \"Mongolia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+382\",\r\n // \"name\": \"Montenegro\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1664\",\r\n // \"name\": \"Montserrat\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+212\",\r\n // \"name\": \"Morocco\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+95\",\r\n // \"name\": \"Myanmar\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+264\",\r\n // \"name\": \"Namibia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+674\",\r\n // \"name\": \"Nauru\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+977\",\r\n // \"name\": \"Nepal\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+31\",\r\n // \"name\": \"Netherlands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+599\",\r\n // \"name\": \"Netherlands Antilles\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 869\",\r\n // \"name\": \"Nevis\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+687\",\r\n // \"name\": \"New Caledonia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+64\",\r\n // \"name\": \"New Zealand\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+505\",\r\n // \"name\": \"Nicaragua\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+227\",\r\n // \"name\": \"Niger\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+234\",\r\n // \"name\": \"Nigeria\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+683\",\r\n // \"name\": \"Niue\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+672\",\r\n // \"name\": \"Norfolk Island\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+850\",\r\n // \"name\": \"North Korea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 670\",\r\n // \"name\": \"Northern Mariana Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+47\",\r\n // \"name\": \"Norway\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+968\",\r\n // \"name\": \"Oman\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+92\",\r\n // \"name\": \"Pakistan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+680\",\r\n // \"name\": \"Palau\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+970\",\r\n // \"name\": \"Palestinian Territory\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+507\",\r\n // \"name\": \"Panama\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+675\",\r\n // \"name\": \"Papua New Guinea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+595\",\r\n // \"name\": \"Paraguay\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+51\",\r\n // \"name\": \"Peru\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+63\",\r\n // \"name\": \"Philippines\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+48\",\r\n // \"name\": \"Poland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+351\",\r\n // \"name\": \"Portugal\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 787\",\r\n // \"name\": \"Puerto Rico\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+974\",\r\n // \"name\": \"Qatar\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+262\",\r\n // \"name\": \"Reunion\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+40\",\r\n // \"name\": \"Romania\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+7\",\r\n // \"name\": \"Russia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+250\",\r\n // \"name\": \"Rwanda\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+685\",\r\n // \"name\": \"Samoa\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+378\",\r\n // \"name\": \"San Marino\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+966\",\r\n // \"name\": \"Saudi Arabia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+221\",\r\n // \"name\": \"Senegal\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+381\",\r\n // \"name\": \"Serbia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+248\",\r\n // \"name\": \"Seychelles\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+232\",\r\n // \"name\": \"Sierra Leone\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n {\r\n \"code\": \"+65\",\r\n \"name\": \"Singapore\",\r\n \"flag\": \"../../assets/img/Flags/sg.png\"\r\n },\r\n // {\r\n // \"code\": \"+421\",\r\n // \"name\": \"Slovakia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+386\",\r\n // \"name\": \"Slovenia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+677\",\r\n // \"name\": \"Solomon Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+27\",\r\n // \"name\": \"South Africa\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+500\",\r\n // \"name\": \"South Georgia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+82\",\r\n // \"name\": \"South Korea\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+34\",\r\n // \"name\": \"Spain\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+94\",\r\n // \"name\": \"Sri Lanka\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+249\",\r\n // \"name\": \"Sudan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+597\",\r\n // \"name\": \"Suriname\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+268\",\r\n // \"name\": \"Swaziland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+46\",\r\n // \"name\": \"Sweden\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+41\",\r\n // \"name\": \"Switzerland\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+963\",\r\n // \"name\": \"Syria\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+886\",\r\n // \"name\": \"Taiwan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+992\",\r\n // \"name\": \"Tajikistan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+255\",\r\n // \"name\": \"Tanzania\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+66\",\r\n // \"name\": \"Thailand\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+670\",\r\n // \"name\": \"Timor Leste\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+228\",\r\n // \"name\": \"Togo\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+690\",\r\n // \"name\": \"Tokelau\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+676\",\r\n // \"name\": \"Tonga\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 868\",\r\n // \"name\": \"Trinidad and Tobago\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+216\",\r\n // \"name\": \"Tunisia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+90\",\r\n // \"name\": \"Turkey\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+993\",\r\n // \"name\": \"Turkmenistan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 649\",\r\n // \"name\": \"Turks and Caicos Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+688\",\r\n // \"name\": \"Tuvalu\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 340\",\r\n // \"name\": \"U.S. Virgin Islands\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+256\",\r\n // \"name\": \"Uganda\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+380\",\r\n // \"name\": \"Ukraine\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+971\",\r\n // \"name\": \"United Arab Emirates\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+44\",\r\n // \"name\": \"United Kingdom\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n {\r\n \"code\": \"+1\",\r\n \"name\": \"United States\",\r\n \"flag\": \"../../assets/img/Flags/us.png\"\r\n },\r\n // {\r\n // \"code\": \"+598\",\r\n // \"name\": \"Uruguay\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+998\",\r\n // \"name\": \"Uzbekistan\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+678\",\r\n // \"name\": \"Vanuatu\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+58\",\r\n // \"name\": \"Venezuela\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+84\",\r\n // \"name\": \"Vietnam\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+1 808\",\r\n // \"name\": \"Wake Island\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+681\",\r\n // \"name\": \"Wallis and Futuna\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+967\",\r\n // \"name\": \"Yemen\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+260\",\r\n // \"name\": \"Zambia\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+255\",\r\n // \"name\": \"Zanzibar\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // },\r\n // {\r\n // \"code\": \"+263\",\r\n // \"name\": \"Zimbabwe\",\r\n // \"flag\": \"../../assets/img/Flags/af.png\"\r\n // }\r\n ];\r\n return codes\r\n }\r\n removeErrorMessage = function () {\r\n $(\".error\").each(function () {\r\n $(this).remove();\r\n });\r\n };\r\n\r\n //Create dropdown selection JSON \r\n public CreateDDLSelectionJSON(id, value) {\r\n try {\r\n let selectionJSON = [];\r\n selectionJSON.push({ id: id, text: value });\r\n return selectionJSON;\r\n }\r\n catch (ex) {\r\n\r\n }\r\n }\r\n\r\n //Create object in Id and textFormat\r\n public SetDDlDropdown(arraylist, IdKey, textkey) {\r\n let ddlobject = [];\r\n \r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey] });\r\n }\r\n return ddlobject;\r\n }\r\n\r\n public SetDDlDropdownProjectResource(arraylist, IdKey, textkey) {\r\n let ddlobject = [];\r\n \r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i].inActive?arraylist[i][textkey]+` (In-Active) `:arraylist[i][textkey] });\r\n }\r\n return ddlobject;\r\n }\r\n public SetDDlDropdownActive(arraylist, IdKey, textkey) {\r\n debugger\r\n let ddlobject = [];\r\n \r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], \r\n text: arraylist[i].inActive? ` `+arraylist[i][textkey]+``:arraylist[i][textkey] });\r\n }\r\n return ddlobject;\r\n }\r\n public SetDDlDropdownfor(arraylist, IdKey, textkey,roleid) {\r\n debugger;\r\n let ddlobject = [];\r\n if(roleid==0)\r\n {\r\n if(arraylist.length==1)\r\n {\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey] });\r\n }\r\n }\r\n else\r\n {\r\n ddlobject.push({id:0,text:\"My Team\"})\r\n\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey] });\r\n }\r\n }\r\n \r\n }\r\n else\r\n {\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey] });\r\n }\r\n\r\n }\r\n \r\n \r\n return ddlobject;\r\n }\r\n public SetDDlDropdown3values(arraylist, IdKey, textkey, valID) {\r\n let ddlobject = [];\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey], valId: arraylist[i][valID] });\r\n }\r\n return ddlobject;\r\n }\r\n\r\n public SetDDlDropdownProjectAssignValues(arraylist, IdKey, textkey, valID) {\r\n let ddlobject = [];\r\n debugger;\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i].inActive?arraylist[i][textkey]+` (In-Active) `:arraylist[i][textkey] , valId: arraylist[i][valID], userInactive:arraylist[i].inActive});\r\n }\r\n return ddlobject;\r\n }\r\n\r\n public Temp_SetDDlDropdown(arraylist, IdKey, textkey) {\r\n let ddlobject = [];\r\n ddlobject.push({ id: '', text: 'Select' });\r\n for (let i = 0; i < arraylist.length; i++) {\r\n ddlobject.push({ id: arraylist[i][IdKey], text: arraylist[i][textkey] });\r\n }\r\n return ddlobject;\r\n }\r\n getOrganizationStructure(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllOrgStructure`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getOrganizationStructureNewExport(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllOrgStructureNewExport`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n\r\n getBusinessTypeExport(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetBusinessTypeForExport?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getDesignationListExport(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetDesignationsForExport?cmpcode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n\r\n getVendorList(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/Getvendor?cmpcode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n\r\n getDepartmentsListExport(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetDepartmentsForExport?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n\r\n getSalesDetailexportexcel(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetSalesDetailexportexcel?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getContactPersonDetailexportexcel(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetContactPersonDetailexportexcel?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getCustomerexportdetail(cmpCode: any) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/Customerexportdetail?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n \r\n\r\n \r\n getJobBandListExport(cmpCode: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}Admin/GetJobBandForExport?CmpCode=`+cmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n \r\n organizationStructure_Post(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/CreateOrgStructure`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n organizationStructure_Delete(id: number) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`);\r\n return this._http.post(`${environment.apiUrl}/Admin/DeleteOrgStructure/` + id, '', { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n organizationStructure_Update(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/UpdateOrgStructure`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n organizationStructureCount() {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n \r\n return this._http.get(`${environment.apiUrl}/Admin/GetOrgStructureCount?cmpcode=`, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getOrgStructureElements(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllOrgStructureLevel`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getOrgStructureElementsNewExport(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllOrgStructureLevelNewExport`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n orgStructureElement_Post(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/CreateOrgStructureLevel`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n orgStructureElement_Update(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/UpdateOrgStructureLevel`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n orgStructureElement_Delete(id: number) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.post(`${environment.apiUrl}/Admin/DeleteOrgStructureLevel/` + id, '', { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n orgStructureElementsCount() {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http.get(`${environment.apiUrl}/Admin/GetOrgStructureLevelCount`, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n addNewLanguage(obj: object,CmpCode) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/AddNewLanguage/`+CmpCode, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getAllLanguages(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http.get(`${environment.apiUrl}/Admin/GetAllLanguages/`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getUserCost(type,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http.get(`${environment.apiUrl}/Admin/SubscriptionAmount?planType=`+type+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n addLanguageKeyword(obj: object,CmpCode) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/LanguageTranslation/`+CmpCode, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getAllAdminLanguagesList(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllAdminLanguagesList`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n GetAllAdminLanguagesListNewExport(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllAdminLanguagesListNewExport`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getLanguagesCount() {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}/Admin/GetLanguagesCount`, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n updateLanguage(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/UpdateLanguage`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n deleteLanguage(id: number) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.post(`${environment.apiUrl}/Admin/DeleteLanguage/` + id, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getAllKeywordList(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllKeywordList`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getAllKeywordNewExport(obj: object) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/GetAllKeywordNewExport`, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n getKeywordsCount(CmpCode) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.get(`${environment.apiUrl}/Admin/GetKeywordsCount/`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n updateKeywrod(obj: object,CmpCode) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n const PostData = JSON.stringify(obj);\r\n return this._http.post(`${environment.apiUrl}/Admin/UpdateKeyword/`+CmpCode, PostData, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n deleteKeyword(id: number) {\r\n const headers = new Headers();\r\n headers.append('Content-Type', 'application/json');\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http.post(`${environment.apiUrl}/Admin/DeleteKeyword/` + id, { headers: headers })\r\n .map((response: Response) => response.json()).toPromise()\r\n }\r\n\r\n setGanttProject(id: number, name: string, workingDays: string = '') {\r\n localStorage.setItem(\"GanttProject\", String(id) + \"_\" + name + \"_\" + workingDays);\r\n }\r\n\r\n getGanttProject() {\r\n return localStorage.getItem(\"GanttProject\");\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpModule } from '@angular/http';\r\n\r\nimport { BoxModule, TabsModule, DropdownModule } from 'angular-admin-lte';\r\n\r\nimport { HeaderInnerComponent } from './header-inner/header-inner.component';\r\nimport { SidebarLeftInnerComponent } from './sidebar-left-inner/sidebar-left-inner.component';\r\nimport { SidebarRightInnerComponent } from './sidebar-right-inner/sidebar-right-inner.component';\r\nimport { UploaderModule } from '@syncfusion/ej2-angular-inputs';\r\nimport { BarRatingModule } from 'ngx-bar-rating'\r\nimport { NgxPayPalModule } from 'ngx-paypal';\r\nimport {SelectModule} from 'ng2-select';\r\nimport { DropDownListAllModule,DropDownListModule } from '@syncfusion/ej2-angular-dropdowns';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n HttpModule,\r\n NgxPayPalModule,\r\n SelectModule,\r\n DropdownModule,\r\n BarRatingModule,\r\n TabsModule,\r\n BoxModule,\r\n UploaderModule,\r\n DropDownListModule\r\n ],\r\n declarations: [HeaderInnerComponent, SidebarLeftInnerComponent, SidebarRightInnerComponent],\r\n exports: [BoxModule, TabsModule, HeaderInnerComponent, SidebarLeftInnerComponent, SidebarRightInnerComponent]\r\n})\r\nexport class CoreModule { }\r\n","
    \r\n\r\n \r\n
    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    New Language

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Subscription Details
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    ItemUser CountCustomer Profile CountTotal/MonthlyTotal/Yearly
    {{detail.itemPlan}}\r\n \r\n \r\n \r\n \r\n \r\n ${{detail?.totalMonth}}${{(+CompanyDetail[0]?.totalYear)}}\r\n {{originalUsers}}\r\n \r\n {{originalcustomers}}\r\n ${{originalMonth}}${{(originalYear)}}
    Additional Users\r\n \r\n \r\n \r\n ${{(originalMonth - CompanyDetail[0]?.totalMonth) < 0?(originalMonth - CompanyDetail[0]?.totalMonth)*-1:(originalMonth - CompanyDetail[0]?.totalMonth)}}${{((originalMonth - CompanyDetail[0]?.totalMonth) < 0?(originalMonth - CompanyDetail[0]?.totalMonth)*-1:(originalMonth - CompanyDetail[0]?.totalMonth))*10}}
    Total\r\n \r\n \r\n \r\n ${{CompanyDetail[0]?.totalMonth}}${{(+CompanyDetail[0]?.totalYear)}}
    Discount$0.0$0.0
    Net Total${{CompanyDetail[0]?.totalMonth}}${{(+CompanyDetail[0]?.totalYear)}}
    Tax({{userAmount?.taxRate}})%${{+CompanyDetail[0]?.totalMonth*(userAmount?.taxRate/100)+(+CompanyDetail[0]?.totalMonth)}}${{(+CompanyDetail[0]?.totalYear)*(userAmount?.taxRate/100)+(+CompanyDetail[0]?.totalYear)}}
    Payable Amount${{+CompanyDetail[0]?.totalMonth*(userAmount?.taxRate/100)+(+CompanyDetail[0]?.totalMonth)}}${{(+CompanyDetail[0]?.totalYear)*(userAmount?.taxRate/100)+(+CompanyDetail[0]?.totalYear)}}
    Account StatusOverdue
    \r\n
    \r\n \r\n
    \r\n

    Pay Monthly

    \r\n

    Pay Yearly

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Onboarding Session
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Edit User Profile\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Profile Picture

    \r\n\r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n

    Set Default Picture

    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Themes

    \r\n

    Pick a theme and pattern to apply for the background.

    \r\n
      \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
    • \r\n\r\n\r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Add Skill Information\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n Years\r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n Months\r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Google Integration
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Microsoft Integration
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit,ElementRef,ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { ToasterService } from 'src/app/+layout/expense/toaster/toaster.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ExpenseHttpService } from 'src/app/services/expense/expense-http.service';\r\nimport { CommonService } from '../../common.service';\r\nimport { Language, LanguageTranslation } from '../../models/Language';\r\nimport { NgModule } from '@angular/core';\r\nimport { DynamicControlService } from 'src/app/dynamic-form/dynamic-control.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { environment } from '../../environment';\r\nimport { StarRatingColor } from '../star-rating/star-rating.component';\r\nimport {\r\n IPayPalConfig,\r\n ICreateOrderRequest\r\n} from 'ngx-paypal';\r\n\r\n@Component({\r\n selector: 'app-header-inner',\r\n templateUrl: './header-inner.component.html',\r\n styleUrls: ['./header-inner.component.css']\r\n})\r\nexport class HeaderInnerComponent implements OnInit {\r\n UpdateUserDataSubmitted = false;\r\n UpdateUserDataForm: FormGroup;\r\n noOfUnits: '';\r\n rating:number = 3;\r\n starCount:number = 5;\r\n starColor:StarRatingColor = StarRatingColor.accent;\r\n starColorP:StarRatingColor = StarRatingColor.primary;\r\n starColorW:StarRatingColor = StarRatingColor.warn;\r\n item: '';\r\n fields = {text:'val', value:'id'}\r\n NoOfCustomers: '';\r\n isItem: boolean = false;\r\n isNoOfUnits: boolean = false\r\n SkillLists = [{ 'id': 1, 'text': 'Angular' }, { 'id': 2, 'text': 'React Native' }, { 'id': 3, 'text': 'React' }, { 'id': 4, 'text': 'Django' }, { 'id': 5, 'text': 'Laravel' }];\r\n activeSkill = []\r\n public UserName: string = '';\r\n public UserName1: string = '';\r\n payPalConfig = {\r\n currency: 'USD',\r\n clientId: 'AauZ07HgQ4HxWH3ljJz0duYH03TTTNxZc9-nkVw42-8F4rvMhEpEcA6J0CpW4SiOfX0nOLBoQSAZ8Baf',\r\n createOrderOnClient: (data) => < ICreateOrderRequest > {\r\n intent: 'CAPTURE',\r\n application_context:{payment_method:{payer_selected:'PAYPAL'}},\r\n purchase_units: [{\r\n amount: {\r\n currency_code: 'USD',\r\n value: this.CompanyDetail[0]?.subcriptionType == '1' ?(((+this.CompanyDetail[0]?.totalMonth)*(this.userAmount?.taxRate/100)+(+this.CompanyDetail[0]?.totalMonth))+''):(((+this.CompanyDetail[0]?.totalYear)*0.18+(+this.CompanyDetail[0]?.totalYear))+''),\r\n breakdown: {\r\n item_total: {\r\n currency_code: 'USD',\r\n value: this.CompanyDetail[0]?.subcriptionType == '1' ?(((+this.CompanyDetail[0]?.totalMonth)*(this.userAmount?.taxRate/100)+(+this.CompanyDetail[0]?.totalMonth))+''):(((+this.CompanyDetail[0]?.totalYear)*0.18+(+this.CompanyDetail[0]?.totalYear))+'')\r\n }\r\n }\r\n },\r\n description:'1',\r\n items: [{\r\n name: this.CompanyDetail[0]?.itemPlan,\r\n quantity: '1',\r\n category: 'DIGITAL_GOODS',\r\n unit_amount: {\r\n currency_code: 'USD',\r\n value: this.CompanyDetail[0]?.subcriptionType == '1' ?(((+this.CompanyDetail[0]?.totalMonth)*(this.userAmount?.taxRate/100)+(+this.CompanyDetail[0]?.totalMonth))+''):(((+this.CompanyDetail[0]?.totalYear)*0.18+(+this.CompanyDetail[0]?.totalYear))+''),\r\n },\r\n }]\r\n }]\r\n },\r\n advanced: {\r\n commit: 'true'\r\n },\r\n style: {\r\n label: 'paypal',\r\n layout: 'horizontal'\r\n },\r\n onApprove: (data, actions) => {\r\n debugger\r\n console.log('onApprove - transaction was approved, but not authorized', data, actions);\r\n actions.order.get().then(details => {\r\n console.log('onApprove - you can get full order details inside onApprove: ', details);\r\n this.OnSubscription(details)\r\n });\r\n\r\n },\r\n onClientAuthorization: (data) => {\r\n debugger\r\n console.log('onClientAuthorization - you should probably inform your server about completed transaction at this point', data);\r\n\r\n },\r\n onCancel: (data, actions) => {\r\n debugger\r\n this.toaster.show('error', 'Transaction Cancelled')\r\n actions.order.get().then(details => {\r\n console.log('OnCancel', data, actions);\r\n this.OnSubscription(details)\r\n });\r\n\r\n },\r\n onError: err => {\r\n debugger\r\n this.toaster.show('error', 'Something Went Wrong')\r\n console.log('OnError', err);\r\n\r\n },\r\n onClick: (data, actions) => {\r\n console.log('onClick', data, actions);\r\n }\r\n};\r\n userAmount = {perUserAmount:1,taxRate:0,perClientUserAmount:1}\r\n originalUsers = 0\r\n originalcustomers = 0\r\n originalMonth = 0\r\n originalYear = 0\r\n AddedUsersChange(value){\r\n debugger\r\n value = value =='' || value == null?0:value\r\n this.CompanyDetail[0].noofUsers = (+value)+(+this.originalUsers)\r\n this.CompanyDetail[0].addedMonth = (+this.userAmount.perUserAmount)*(+value) // added\r\n this.CompanyDetail[0].addedYear = ((+this.userAmount.perUserAmount)*(+value)) // added\r\n this.CompanyDetail[0].totalMonth = ((+this.userAmount.perUserAmount)*(+value)+(+this.originalMonth))+((+this.userAmount.perClientUserAmount)*(this.CompanyDetail[0]?.addedCustomer == null?0:+this.CompanyDetail[0]?.addedCustomer))\r\n this.CompanyDetail[0].totalYear = ((+this.userAmount.perUserAmount*10)*(+value)+(+this.originalYear))+((+this.userAmount.perClientUserAmount*10)*(this.CompanyDetail[0]?.addedCustomer == null?0:+this.CompanyDetail[0]?.addedCustomer))\r\n\r\n }\r\n AddedUsersCustChange(value){\r\n debugger\r\n value = value =='' || value == null?0:value\r\n this.CompanyDetail[0].noofCustomer = (+value)+(+this.originalcustomers)\r\n this.CompanyDetail[0].addedMonth = (+this.userAmount.perUserAmount)*(+value) // added\r\n this.CompanyDetail[0].addedYear = ((+this.userAmount.perUserAmount)*(+value)+this.CompanyDetail[0].addedYear) // added\r\n this.CompanyDetail[0].totalMonth = ((+this.userAmount.perUserAmount)*(this.CompanyDetail[0].addedUsers == null?0:+this.CompanyDetail[0].addedUsers)+(+this.originalMonth))+((+this.userAmount.perClientUserAmount)*(+value))\r\n this.CompanyDetail[0].totalYear = ((+this.userAmount.perUserAmount*10)*(this.CompanyDetail[0].addedUsers == null?0:+this.CompanyDetail[0].addedUsers)+(+this.originalYear))+((+this.userAmount.perClientUserAmount*10)*(+value))\r\n }\r\n updateCustomers(val){\r\n debugger\r\n this.newserice.getUserCost(this.CompanyDetail[0].itemPlan,this.CmpCode).then((res) => {\r\n this.isNoOfUnits = false\r\n this.userAmount = res.data.table[0];\r\n switch (val.target.value) {\r\n case \"Basic Plan\":\r\n this.CompanyDetail[0].noofCustomer = 50\r\n this.CompanyDetail[0].addedCustomer = 50\r\n this.CompanyDetail[0].itemPlan = 'Basic Plan'\r\n this.CompanyDetail[0].noofUsers = 5\r\n this.CompanyDetail[0].addedUsers = 5\r\n this.CompanyDetail[0].totalMonth = '3'\r\n this.CompanyDetail[0].totalYear = '150'\r\n break;\r\n case \"Business Plan\":\r\n this.CompanyDetail[0].noofCustomer = 75\r\n this.CompanyDetail[0].addedCustomer = 75\r\n this.CompanyDetail[0].itemPlan = 'Business Plan'\r\n this.CompanyDetail[0].noofUsers = 10\r\n this.CompanyDetail[0].addedUsers = 10\r\n this.CompanyDetail[0].totalMonth = '5'\r\n this.CompanyDetail[0].totalYear = '500'\r\n break;\r\n case \"Enterprise Plan\":\r\n this.CompanyDetail[0].noofCustomer = 100\r\n this.CompanyDetail[0].addedCustomer = 100\r\n this.CompanyDetail[0].itemPlan = 'Enterprise Plan'\r\n this.CompanyDetail[0].noofUsers = 20\r\n this.CompanyDetail[0].addedUsers = 20\r\n this.CompanyDetail[0].totalMonth = '7'\r\n this.CompanyDetail[0].totalYear = '1400'\r\n break;\r\n\r\n case \"Customize Plan\":\r\n this.CompanyDetail[0].noofCustomer = 500\r\n this.CompanyDetail[0].itemPlan = 'Customize Plan'\r\n this.CompanyDetail[0].totalMonth = '20'\r\n this.CompanyDetail[0].noofUsers = 50\r\n this.CompanyDetail[0].totalYear = '2500'\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }, error => {\r\n console.log(error);\r\n })\r\n\r\n }\r\n\r\n public UserEmail: string = '';\r\n public UserFullName: string = '';\r\n public Experaince: any = [\r\n {id:\"0\", val:\"0\"},\r\n {id:\"1\", val:\"1\"},\r\n {id:\"2\", val:\"2\"},\r\n {id:\"3\", val:\"3\"},\r\n {id:\"4\", val:\"4\"},\r\n {id:\"5\", val:\"5\"},\r\n {id:\"6\", val:\"6\"},\r\n {id:\"7\", val:\"7\"},\r\n {id:\"8\", val:\"8\"},\r\n {id:\"9\", val:\"9\"},\r\n {id:\"10\", val:\"10\"},\r\n {id:\"11\", val:\"11\"},\r\n {id:\"12\", val:\"12\"},\r\n {id:\"13\", val:\"13\"},\r\n {id:\"14\", val:\"14\"},\r\n {id:\"15\", val:\"15\"},\r\n {id:\"16\", val:\"16\"},\r\n {id:\"17\", val:\"17\"},\r\n {id:\"18\", val:\"18\"},\r\n {id:\"19\", val:\"19\"},\r\n {id:\"20\", val:\"20\"},\r\n {id:\"21\", val:\"21\"},\r\n {id:\"22\", val:\"22\"},\r\n {id:\"23\", val:\"23\"},\r\n {id:\"24\", val:\"24\"},\r\n {id:\"25\", val:\"25\"},\r\n {id:\"26\", val:\"26\"},\r\n {id:\"27\", val:\"27\"},\r\n {id:\"28\", val:\"28\"},\r\n {id:\"29\", val:\"29\"},\r\n {id:\"30\", val:\"30\"},\r\n {id:\"30+\", val:\"30+\"},\r\n ];\r\n public ExperainceMonth:any = [\r\n {id:\"0\", val:\"0\"},\r\n {id:\"1\", val:\"1\"},\r\n {id:\"2\", val:\"2\"},\r\n {id:\"3\", val:\"3\"},\r\n {id:\"4\", val:\"4\"},\r\n {id:\"5\", val:\"5\"},\r\n {id:\"6\", val:\"6\"},\r\n {id:\"7\", val:\"7\"},\r\n {id:\"8\", val:\"8\"},\r\n {id:\"9\", val:\"9\"},\r\n {id:\"10\", val:\"10\"},\r\n {id:\"11\", val:\"11\"},\r\n {id:\"12\", val:\"12\"},];\r\n public ExperainceType:any = []\r\n public UserId: any;\r\n roleId: any;\r\n public language: Language = new Language();\r\n public languageArray: Array = [];\r\n public defaultLanguageName: string;\r\n CompanyDetail: any = [];\r\n secretKey = ''\r\n clientId = ''\r\n tenentId = ''\r\n scopes = ''\r\n secretKey1 = ''\r\n clientId1 = ''\r\n tenentId1 = ''\r\n scopes1 = ''\r\n view = false\r\n currentURLToken = ''\r\n googleIntegrated = false;\r\n microsoftIntegrated = false;\r\n googleIntegratedAdmin = false;\r\n microsoftIntegratedAdmin = false;\r\n Notifications: any = [];\r\n NotificationLength: any = 0\r\n Notify: any = [];\r\n myDate = new Date();\r\n currentDate: any;\r\n interval:any;\r\n Logo:any = '/Uploads/companyLogo/10098_f1b427a9-ecc4-41c7-b649-3982c066eec6_04-07-2022-11-34-16.jpeg';\r\n userImage:any = '/Uploads/ProfilePicture/10098_0e29f48e-944d-4867-b39d-b474dfc68b3f.jpeg';\r\n CmpCode:any;\r\n cmplogo:any;\r\n constructor(private dynamicCtrlSvc: DynamicControlService,\r\n private common: CommonService,\r\n private toaster: ToasterService,\r\n private formBuilder: FormBuilder,\r\n private authService: AuthService,\r\n public newserice: CommonService,\r\n private Http: ExpenseHttpService,\r\n private datePipe: DatePipe) {\r\n\r\n\r\n this.timeformat= this.authService.gettimeformat();\r\n\r\n setInterval(() => {\r\n if(this.timeformat==1)\r\n {\r\n this.now = new Date();\r\n let date= this.datePipe.transform(this.now,'EEE, MMM d, y HH:mm');\r\n this.now= date;\r\n }else{\r\n this.now = new Date();\r\n let date= this.datePipe.transform(this.now,'EEE, MMM d, y hh:mm a');\r\n this.now= date;\r\n }\r\n }, 10);\r\n\r\n this.CmpCode = this.authService.getcompanyCode();\r\n this.UserName = this.authService.getUsername();\r\n this.UserFullName = this.authService.getUserFullName();\r\n this.UserEmail = this.authService.getUseremail();\r\n this.UserName1 = this.UserName.substr(0, 1).toUpperCase();\r\n this.UserId = this.authService.getUserId();\r\n this.roleId = this.authService.getRoleId();\r\n this.Logo = this.authService.getLogo();\r\n this.currentDate = this.datePipe.transform(this.myDate, 'yyyy-MM-dd');\r\n this.cmplogo= `${environment.siteUrl}`+\"Uploads/companyLogo/CRG_logo_14-12-2020-14-29-17.png\";\r\n\r\n }\r\n @ViewChild(\"videoPlayer\", { static: false }) videoplayer: ElementRef;\r\n isPlay: boolean = false;\r\n toggleVideo() {\r\n this.videoplayer.nativeElement.play();\r\n }\r\n\r\n public path: Object = {\r\n saveUrl: 'https://ej2.syncfusion.com/services/api/uploadbox/Save',\r\n removeUrl: 'https://ej2.syncfusion.com/services/api/uploadbox/Remove'\r\n };\r\n now:any = new Date();\r\n timeformat:any;\r\n onRatingChanged(rating){\r\n console.log(rating);\r\n this.rating = rating;\r\n }\r\n clear(){\r\n this.clientId1 = ''\r\n this.secretKey1 = ''\r\n this.tenentId1 = ''\r\n this.scopes1 = ''\r\n }\r\n\r\n startGoogleSync(){\r\n let obj = {\r\n IsActive:true,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n UserId:this.authService.getUserId(),\r\n }\r\n this.Http.getGoogleTokenHeader(obj).then(res =>{\r\n if(res.success){\r\n this.currentURLToken = res.data\r\n setTimeout(() => {\r\n window.open(res.data,\"_blank\");\r\n }, 500);\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }\r\n\r\n startMicrosoftSyc(){\r\n let obj = {\r\n IsActive:true,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n UserId:this.authService.getUserId(),\r\n }\r\n this.Http.getMicrosoftTokenSync(obj).then(res =>{\r\n if(res.success){\r\n this.currentURLToken = res.data\r\n setTimeout(() => {\r\n window.open(res.data,\"_blank\");\r\n }, 500);\r\n // this.common.OpenModalHandler('exampleModal123')\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }\r\n\r\n saveGOOGLEIntegration(status){\r\n debugger\r\n let data = {\r\n IsActive:status==1?true:false,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n userid:this.authService.getUserId(),\r\n isAdmin:false,\r\n clientId:this.clientId, // gClient_Id\r\n secretKey:this.secretKey, // gSecret_Id\r\n apiKey:this.tenentId, // gApiKeydata.scopes == ''\r\n scopes:this.scopes // gScopes\r\n }\r\n if(data.clientId == '' || data.clientId == null){\r\n this.toaster.show('warning','Please Enter Client Id')\r\n return\r\n }\r\n if( data.secretKey == '' || data.secretKey == null){\r\n this.toaster.show('warning','Please Enter Secret Key')\r\n return\r\n }\r\n if(data.apiKey == '' || data.apiKey == null){\r\n this.toaster.show('warning','Please Enter API Key')\r\n return\r\n }\r\n if( data.scopes == '' || data.scopes == null){\r\n this.toaster.show('warning','Please Enter Scopes')\r\n return\r\n }\r\n this.Http.ConfiguringGoogle(data).then(res =>{\r\n if(res.success){\r\n this.toaster.show('success',res.data)\r\n this.closeModel('exampleModal1222')\r\n this.clear();\r\n let obj = {\r\n IsActive:status==1?true:false,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n UserId:this.authService.getUserId(),\r\n }\r\n // this.getMicrosoftKeys();\r\n // this.getGoogleKeys();\r\n this.Http.getGoogleTokenHeader(obj).then(res =>{\r\n if(res.success){\r\n this.currentURLToken = res.data\r\n setTimeout(() => {\r\n window.open(res.data,\"_blank\");\r\n }, 500);\r\n this.common.OpenModalHandler('exampleModal122')\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }else{\r\n this.toaster.show('error',res.data)\r\n }\r\n\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }\r\n\r\n pauseSync(type){\r\n let data = {\r\n IsActive:false,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n UserId:this.authService.getUserId(),\r\n serviceType:type\r\n }\r\n this.Http.PauseSync(data).then(res => {\r\n if(res.success){\r\n this.toaster.show('success',type+' Syncing paused.');\r\n // this.getMicrosoftKeys();\r\n // this.getGoogleKeys();\r\n window.location.reload();\r\n }else{\r\n this.toaster.show('error','Failed to pause '+type+' Sync.');\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Failed to pause '+type+' Sync.');\r\n })\r\n }\r\n\r\n saveMICROSOFTIntegration(status){\r\n let data = {\r\n IsActive:status==1?true:false,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n userid:this.authService.getUserId(),\r\n isAdmin:false,\r\n clientId:this.clientId1, //mClient_Id\r\n secretKey:this.secretKey1, //mSecret_Id\r\n tenantId:this.tenentId1, //mTenant_Id\r\n scopes:this.scopes1 //mScopes\r\n }\r\n if(data.clientId == '' || data.clientId == null){\r\n this.toaster.show('warning','Please Enter Client Id')\r\n return\r\n }\r\n if( data.secretKey == '' || data.secretKey == null){\r\n this.toaster.show('warning','Please Enter Secret Key')\r\n return\r\n }\r\n if(data.tenantId == ''){\r\n this.toaster.show('warning','Please Enter Tenant Id')\r\n return\r\n }\r\n if( data.scopes == '' || data.scopes == null){\r\n this.toaster.show('warning','Please Enter Scopes')\r\n return\r\n }\r\n this.Http.ConfiguringMicroSoft(data).then(res =>{\r\n if(res.success){\r\n this.toaster.show('success',res.data)\r\n this.closeModel('exampleModal1232')\r\n this.clear();\r\n let obj = {\r\n IsActive:status==1?true:false,\r\n Cmpcode:this.authService.getcompanyCode(),\r\n UserId:this.authService.getUserId(),\r\n }\r\n this.getMicrosoftKeys();\r\n this.getGoogleKeys();\r\n this.Http.getMicrosoftTokenHeader(obj).then(res =>{\r\n if(res.success){\r\n this.currentURLToken = res.data\r\n setTimeout(() => {\r\n window.open(res.data,\"_blank\");\r\n }, 500);\r\n this.common.OpenModalHandler('exampleModal123')\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }else{\r\n this.toaster.show('error',res.data)\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n }\r\n\r\n getGoogleKeys(){\r\n this.clear();\r\n this.Http.getConfiguringGoogleHeader(this.authService.getcompanyCode(), this.UserId ).then(res => {\r\n if(res.success){\r\n this.clientId = res.data.table[0]?.gClient_Id;\r\n this.secretKey = res.data.table[0]?.gSecret_Id;\r\n this.tenentId = res.data.table[0]?.gApiKey;\r\n this.scopes = res.data.table[0]?.gScopes;\r\n // this.googleIntegrated = res.data.table[0]?.gClient_Id?true:false;\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Failed to load Google integration');\r\n })\r\n\r\n\r\n\r\n }\r\n\r\n getMicrosoftKeys(){\r\n this.clear();\r\n this.Http.getConfiguringMicroSoftHeader(this.authService.getcompanyCode(), this.UserId).then(res => {\r\n if(res.success){\r\n this.clientId1 = res.data.table[0]?.mClient_Id;\r\n this.secretKey1 = res.data.table[0]?.mSecret_Id;\r\n this.tenentId1 = res.data.table[0]?.mTenant_Id;\r\n this.scopes1 = res.data.table[0]?.mScopes;\r\n // this.microsoftIntegrated = res.data.table[0]?.mClient_Id?true:false;\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Failed to load Microsoft integration');\r\n })\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.getuserImage();\r\n this.getloginnoti();\r\n this.getAllLanguages();\r\n this.GetcompanyDetail();\r\n // this.getMicrosoftKeys();\r\n // this.getGoogleKeys();\r\n this.Http.IsConfigurationsExist(this.authService.getcompanyCode()).then(res => {\r\n if(res.success){\r\n this.googleIntegratedAdmin = res.data.table[0].isGoogleConfigured\r\n this.microsoftIntegratedAdmin = res.data.table1[0].isMicrosoftConfigured\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n\r\n this.Http.IsConfigurationsEmployeeExist(this.authService.getcompanyCode(), this.UserId).then(res => {\r\n if(res.success){\r\n this.googleIntegrated = res.data.table[0].isGoogleConfigured\r\n this.microsoftIntegrated = res.data.table1[0].isMicrosoftConfigured\r\n }else{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n }\r\n }).catch(error =>{\r\n this.toaster.show('error','Uh Oh, Something Went Wrong')\r\n })\r\n\r\n if (this.interval) {\r\n clearInterval(this.interval);\r\n }\r\n\r\n this.interval=setInterval(() => {\r\n this.GetNotifications();\r\n }, 1200000);\r\n\r\n }\r\n setRedNotification(notificationId){\r\n\r\n this.Http.setRedNotification(notificationId,this.CmpCode).then((res: any) => {\r\n if (res.success === true) {\r\n let data = res.data.table\r\n }\r\n })\r\n }\r\n setRedAllNotification(){\r\n this.Http.setRedAllNotification(this.UserId,this.CmpCode).then((res: any) => {\r\n if (res.success === true) {\r\n this.Notify = res.data.table;\r\n // this.toaster.show(\"warning\", \"Notification Read Successfully\");\r\n this.Notify = [];\r\n this.Notifications = [];\r\n this.NotificationLength = '';\r\n\r\n }\r\n })\r\n }\r\n IsNotification(val, data) {\r\n this.Notify = data;\r\n this.Notify.sort(function (a, b) {\r\n return b.eventDate.localeCompare(a.eventDate);\r\n });\r\n }\r\n ddlSelection(value){\r\n debugger\r\n if(!this.ExperainceType.includes(value.text)){\r\n this.ExperainceType.push(value.text)\r\n }else{\r\n let index = this.ExperainceType.indexOf(value.text)\r\n this.ExperainceType.splice(index,0)\r\n }\r\n\r\n }\r\n getuserImage() {\r\n var userid = this.UserId\r\n this.Http.GetUserData(userid,this.CmpCode).then((res) => {\r\n this.userdatalist = res.data.table;\r\n if(this.userdatalist.length>0){\r\n this.userImage= res.data.table[0].userImage;\r\n if(this.userImage!=null || this.userImage!=undefined){\r\n this.userImage=`${environment.siteUrl}`+this.userImage;\r\n }\r\n else{\r\n this.userImage=`${environment.siteUrl}`+\"Uploads/ProfilePicture/DummyProfilePhoto.png\";\r\n }\r\n }\r\n else{\r\n this.userImage=`${environment.siteUrl}`+\"Uploads/ProfilePicture/DummyProfilePhoto.png\";\r\n }\r\n\r\n });\r\n }\r\n IsStatus(val: any,notificationId) {\r\n this.setRedNotification(notificationId);\r\n val.eventstatus = 1;\r\n let notificationLen = this.Notifications.filter((data) => data.eventstatus === 0)\r\n this.NotificationLength = notificationLen.length;\r\n this.Notifications = notificationLen;\r\n }\r\n\r\n GetNotifications() {\r\n\r\n if(this.roleId === null){\r\n this.roleId = 1;\r\n }\r\n let params = {\r\n UserId: this.UserId,\r\n date: this.currentDate,\r\n roleId: this.roleId,\r\n CmpCode:this.CmpCode\r\n }\r\n this.Http.GetNotifications(params).then((res: any) => {\r\n if (res.success === true) {\r\n let data = res.data.table\r\n for (let index = 0; index < data.length; index++) {\r\n const element = data[index];\r\n this.Notifications.push(element);\r\n this.toaster.show(\"success\", element.discription);\r\n\r\n }\r\n let notificationLen = this.Notifications.filter((data) => data.eventstatus === 0)\r\n this.NotificationLength = notificationLen.length;\r\n }\r\n })\r\n }\r\ngetloginnoti(){\r\n\r\n if(this.roleId === null){\r\n this.roleId = 1;\r\n }\r\n let params = {\r\n UserId: this.UserId,\r\n date: this.currentDate,\r\n roleId: this.roleId,\r\n CmpCode:this.CmpCode\r\n }\r\n this.Http.GetNotificationLogin(params).then((res: any) => {\r\n if (res.success === true) {\r\n let data = res.data.table\r\n for (let index = 0; index < data.length; index++) {\r\n const element = data[index];\r\n this.Notifications.push(element);\r\n // setTimeout(() => {this.toaster.show(\"success\", element.discription);},4000)\r\n\r\n }\r\n let notificationLen = this.Notifications.filter((data) => data.eventstatus === 0)\r\n this.NotificationLength = notificationLen.length;\r\n }\r\n });\r\n}\r\n\r\n urlExpense: any;\r\n UpdateUserData: any;\r\n file: any;\r\n onSelectFile(event) {\r\n if(event.file==undefined)\r\n {\r\n let IsCheckSize = event.target.files[0].size;\r\n if(IsCheckSize > 2097152){\r\n this.toaster.show(\"success\", 'Please Select a file smaller than 2MB');\r\n }else {\r\n if (event.target.files && event.target.files[0]) {\r\n this.file = event.target.files[0];\r\n this.UpdateUserData = this.file;\r\n //this.UpdateUserDataForm.get(\"reciptImage\").setValue(file);\r\n // const fileReader: FileReader = new FileReader();\r\n var reader = new FileReader();\r\n reader.readAsDataURL(event.target.files[0]); // read file as data url\r\n reader.onload = (event) => {\r\n debugger\r\n this.userImage = event.currentTarget;\r\n this.userImage = this.userImage.result;\r\n //console.log(this.userImage);\r\n };\r\n }\r\n };\r\n }\r\n\r\n }\r\n subscriptionPlan:any\r\n GetcompanyDetail() {\r\n this.Http.GetcompanyDetail(this.CmpCode).then((res) => {\r\n this.CompanyDetail = res.data.table;\r\n this.subscriptionPlan=this.CompanyDetail[0].itemPlan\r\n this.originalUsers = this.CompanyDetail[0].noofUsers\r\n this.originalcustomers = this.CompanyDetail[0].noofCustomer\r\n this.originalMonth = this.CompanyDetail[0].totalMonth\r\n this.originalYear = this.CompanyDetail[0].totalYear\r\n this.CompanyDetail[0].addedUsers = 0\r\n this.CompanyDetail[0].addedCustomer = 0\r\n this.newserice.getUserCost(this.CompanyDetail[0].itemPlan,this.CmpCode).then((res) => {\r\n this.userAmount = res.data.table[0];\r\n })\r\n }, error => {\r\n console.log(error);\r\n })\r\n\r\n }\r\n\r\n UpgradeUser() {\r\n this.GetcompanyDetail();\r\n this.isItem = !this.isItem;\r\n this.isNoOfUnits = false\r\n }\r\n\r\n ChangePlan() {\r\n this.GetcompanyDetail();\r\n this.isNoOfUnits = !this.isNoOfUnits;\r\n }\r\n\r\n OnSubscription(value) {\r\n let params = {\r\n companyId: this.CompanyDetail[0].companyId,\r\n itemPlan: this.CompanyDetail[0].itemPlan,\r\n noofUsers: this.CompanyDetail[0].noofUsers,\r\n noofCustomer: this.CompanyDetail[0].noofCustomer,\r\n totalMonth: this.CompanyDetail[0].totalMonth,\r\n subcriptionType: this.CompanyDetail[0].subcriptionType,\r\n totalYear: this.CompanyDetail[0].totalYear,\r\n CmpCode:this.CmpCode\r\n }\r\n this.Http.OnSubscription(params).then((res) => {\r\n if (res.success === true) {\r\n // this.toaster.show(\"success\", res.data);\r\n let obj = {\r\n Cmpcode: this.CmpCode,\r\n PaypalResponseJson:value\r\n }\r\n this.Http.OnPayDone(obj).then((res) => {\r\n if (res.success === true) {\r\n this.toaster.show(\"success\", res.data);\r\n this.resetForm();\r\n } else {\r\n this.toaster.show(\"warning\", res.data);\r\n }\r\n })\r\n this.resetForm();\r\n } else {\r\n this.toaster.show(\"warning\", res.data);\r\n }\r\n })\r\n }\r\n\r\n resetForm() {\r\n const target = \"#exampleModal51\";\r\n $(target).hide(\"slow\");\r\n }\r\n\r\n InitializeForm() {\r\n\r\n this.UpdateUserDataForm = this.formBuilder.group({\r\n salesPersonId: [\"\"],\r\n firstName: [''],\r\n themeId: [''],\r\n lastName: [''],\r\n homePhoneNo: [''],\r\n mobileNo: [''],\r\n reciptImage: [\"\"]\r\n\r\n\r\n });\r\n }\r\n signout() {\r\n this.authService.logout();\r\n }\r\n addNewLanguage() {\r\n if (this.language.displayName.toLowerCase() === 'english') {\r\n this.language.isDefault = true;\r\n } else {\r\n this.language.isDefault = false;\r\n }\r\n this.newserice.addNewLanguage(this.language,this.CmpCode).then((res) => {\r\n this.closeModel('AdminNewLanguage');\r\n }, error => {\r\n console.log(error);\r\n })\r\n }\r\n getAllLanguages() {\r\n this.newserice.getAllLanguages(this.CmpCode).then((res) => {\r\n this.languageArray = res.data.table;\r\n for (let i = 0; i < res.data.table.length; i++) {\r\n if (res.data.table[i].displayName.toLowerCase().trim() === 'english') {\r\n this.defaultLanguageName = res.data.table[i].displayName;\r\n }\r\n }\r\n }, error => {\r\n console.log(error);\r\n })\r\n }\r\n\r\n\r\n async SetDefaultImg(){\r\n debugger\r\n // let path = `${environment.siteUrl}`+\"Uploads/ProfilePicture/DummyProfilePhoto.png\";\r\n let path = \"../assets/img/Logo/dummy.png\";\r\n let response = await fetch(path);\r\n let data = await response.blob();\r\n let metadata = {\r\n type: 'image/png'\r\n };\r\n this.file = data;\r\n this.UpdateUserData = this.file;\r\n let file = new File([data], \"test.png\", metadata);\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file); // read file as data url\r\n reader.onload = (event) => {\r\n this.userImage = event.currentTarget;\r\n this.userImage = this.userImage.result;\r\n\r\n };\r\n\r\n\r\n }\r\n\r\n public Sid: any;\r\n userdatalist: any = [];\r\n getuserdata() {\r\n\r\n // this.Cid = obj.customerId;\r\n var userid = this.UserId\r\n // this.Sid = obj.customerCode;\r\n // let DocumentJSON = {\r\n // 'Customerid':0,\r\n // 'userid':0\r\n // }\r\n this.Http.GetUserData(userid,this.CmpCode).then((res) => {\r\n this.userdatalist = res.data.table;\r\n if(this.userdatalist.length>0){\r\n this.userImage= res.data.table[0].userImage;\r\n if(this.userImage!=null || this.userImage!=undefined){\r\n this.userImage=`${environment.siteUrl}`+ this.userImage;\r\n\r\n }\r\n else{\r\n this.userImage = '';\r\n // this.SetDefaultImg()\r\n }\r\n }\r\n else{\r\n // this.userImage=`${environment.siteUrl}`+\"Uploads/ProfilePicture/DummyProfilePhoto.png\";\r\n this.SetDefaultImg()\r\n }\r\n\r\n });\r\n }\r\n //ThemeIdolde:any\r\n userDatalistArray: any;\r\n UpdateUserDataSubmit() {\r\n this.UpdateUserDataSubmitted = true;\r\n // if (this.UpdateUserDataForm.invalid) {\r\n // return;\r\n // }\r\n let ThemeIdolde = this.authService.getThemeId();\r\n this.userDatalistArray = [];\r\n this.userdatalist.userid = this.UserId;\r\n let thmid=this.userdatalist[0].themeId;\r\n const params = {\r\n firstName: this.userdatalist[0].firstName,\r\n themeId: this.userdatalist[0].themeId,\r\n lastName: this.userdatalist[0].lastName,\r\n officePhoneNo: this.userdatalist[0].workPhone,\r\n homePhoneNo: this.userdatalist[0].homePhoneNo,\r\n mobileNo: this.userdatalist[0].mobileNo,\r\n language: this.userdatalist[0].language,\r\n userid: this.UserId,\r\n CmpCode:this.CmpCode\r\n }\r\n this.Http.UpdateUserData(params).then((res) => {\r\n if (res.success) {\r\n this.authService.setThemeId(thmid);\r\n if(thmid==ThemeIdolde){\r\n this.toaster.show(\"success\", \"User Profile Updated\", res.message);\r\n setInterval(() => {window.location.reload()}, 2000)\r\n }\r\n else{\r\n this.toaster.show(\"success\", \"Theme Updated\", res.message);\r\n setInterval(() => {window.location.reload()}, 2000)\r\n }\r\n const formData = new FormData();\r\n const fd = new FormData();\r\n //for (var i = 0; i < this.urlExpense.length; i++) {\r\n fd.append('userImage', this.file);\r\n //}\r\n fd.append('userId', this.UserId);\r\n fd.append('cmpCode', this.CmpCode);\r\n debugger\r\n this.Http.uploadempImage(fd).then((res) => {\r\n if (res.success) {\r\n setInterval(() => {window.location.reload()}, 3000)\r\n\r\n // this.toaster.show(\"success\", \"User image Updated.\", res.message);\r\n } error => {\r\n\r\n }\r\n\r\n });\r\n\r\n\r\n } error => {\r\n console.log(error);\r\n }\r\n });\r\n // }\r\n\r\n\r\n this.getuserdata();\r\n $(\"#uploadimage\").val('');\r\n var input = $(\"#uploadimage\");\r\n input.replaceWith(input.val('').clone(true));\r\n this.closeModel('exampleModal1');\r\n this.userImage = \"\";\r\n\r\n\r\n }\r\n\r\n closeModel(ModalId) {\r\n this.newserice.CloseModalHandler(ModalId);\r\n }\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter, ViewEncapsulation } from '@angular/core';\r\n// import { MatSnackBar } from '@angular/material';\r\n\r\n@Component({\r\n selector: 'mat-star-rating',\r\n templateUrl: './star-rating.component.html',\r\n styleUrls: ['./star-rating.component.css'],\r\n encapsulation: ViewEncapsulation.Emulated\r\n})\r\nexport class StarRatingComponent implements OnInit {\r\n\r\n @Input('rating') private rating: number = 3;\r\n @Input('starCount') private starCount: number = 5;\r\n @Input('color') private color: string = 'accent';\r\n @Output() private ratingUpdated = new EventEmitter();\r\n\r\n private snackBarDuration: number = 2000;\r\n private ratingArr = [];\r\n\r\n // constructor(private snackBar: MatSnackBar) {\r\n // }\r\n\r\n\r\n ngOnInit() {\r\n console.log(\"a \"+this.starCount)\r\n for (let index = 0; index < this.starCount; index++) {\r\n this.ratingArr.push(index);\r\n }\r\n }\r\n onClick(rating:number) {\r\n console.log(rating)\r\n // this.snackBar.open('You rated ' + rating + ' / ' + this.starCount, '', {\r\n // duration: this.snackBarDuration\r\n // });\r\n this.ratingUpdated.emit(rating);\r\n return false;\r\n }\r\n\r\n showIcon(index:number) {\r\n if (this.rating >= index + 1) {\r\n return 'star';\r\n } else {\r\n return 'star_border';\r\n }\r\n }\r\n\r\n}\r\nexport enum StarRatingColor {\r\n primary = \"primary\",\r\n accent = \"accent\",\r\n warn = \"warn\"\r\n}\r\n","import {\r\n ValidatorFn,\r\n FormArray,\r\n FormControl,\r\n AbstractControl\r\n} from \"@angular/forms\";\r\n\r\nexport class CustomValidators {\r\n public static minSelectedCheckboxes = (min = 1) => {\r\n const validator: ValidatorFn = (formArray: AbstractControl) => {\r\n if (formArray instanceof FormArray) {\r\n const totalSelected = formArray.controls\r\n .map(control => control.value)\r\n .reduce((prev, next) => (next ? prev + next : prev), 0);\r\n\r\n return totalSelected >= min ? null : { required: true };\r\n }\r\n throw new Error('formArray is not an instance of FormArray');\r\n };\r\n return validator;\r\n }\r\n public static integerValidator(control: FormControl) {\r\n const regex: RegExp = new RegExp(/^-?[0-9]*$/);\r\n if (regex.test(control.value)) {\r\n return null;\r\n }\r\n return {\r\n invalidInteger: true\r\n }\r\n }\r\n public static decimalValidator(control: FormControl) {\r\n if (+control.value >= 0 || +control.value <= 0) {\r\n return null;\r\n }\r\n return {\r\n invalidDecimal: true\r\n }\r\n }\r\n public static integerValuesValidator(control: FormControl) {\r\n const regex: RegExp = new RegExp(/^-?([0-9]*,*)*$/);\r\n if (regex.test(control.value)) {\r\n return null;\r\n }\r\n return {\r\n invalidInteger: true\r\n };\r\n }\r\n public static decimalValuesValidator(control: FormControl) {\r\n const regex: RegExp = new RegExp(/^(-?\\d+\\.\\d+,?)+$/);\r\n if (regex.test(control.value)) {\r\n return null;\r\n }\r\n return {\r\n invalidDecimal: true\r\n };\r\n }\r\n}\r\n","export class DynamicControlBase {\r\n value: T;\r\n key: string;\r\n label: string;\r\n required: boolean;\r\n minLength: number;\r\n maxLength: number;\r\n order: number;\r\n controlType: string;\r\n type: string;\r\n listDisplay: boolean;\r\n constructor(options: {\r\n value?: T,\r\n key?: string,\r\n label?: string,\r\n required?: boolean,\r\n minLength?: number,\r\n maxLength?: number,\r\n order?: number,\r\n controlType?: string,\r\n listDisplay?: boolean\r\n } = {}) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.required = !!options.required;\r\n this.minLength = options.minLength;\r\n this.maxLength = options.maxLength;\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.listDisplay = !!options.listDisplay;\r\n }\r\n}\r\n","import { DynamicControlBase } from \"./dynamic-control-base\";\r\n\r\nexport class DynamicControlCheckbox extends DynamicControlBase {\r\n controlType = \"checkbox\";\r\n type: string;\r\n options: string[];\r\n constructor(options: {} = {}) {\r\n super(options);\r\n this.type = options[\"type\"] || \"\";\r\n this.options = options[\"options\"] || [];\r\n }\r\n}\r\n","import { DynamicControlBase } from \"./dynamic-control-base\";\r\n\r\nexport class DynamicControlDropdown extends DynamicControlBase {\r\n controlType = 'dropdown';\r\n type: string;\r\n options: {id: string, text: string}[] = [];\r\n\r\n constructor(options: {} = {}) {\r\n super(options);\r\n this.type = options['type'] || '';\r\n this.options = options['options'] || [];\r\n }\r\n}\r\n","import { DynamicControlBase } from \"./dynamic-control-base\";\r\n\r\nexport class DynamicControlRadioButton extends DynamicControlBase {\r\n controlType = \"RadioButton\";\r\n type: string;\r\n options: string[];\r\n constructor(options: {} = {}) {\r\n super(options);\r\n this.type = options[\"type\"] || \"\";\r\n this.options = options[\"options\"] || [];\r\n }\r\n}\r\n","import { DynamicControlBase } from \"./dynamic-control-base\";\r\n\r\nexport class DynamicControlTextArea extends DynamicControlBase {\r\n controlType = \"textarea\";\r\n type: string;\r\n\r\n constructor(options: {} = {}) {\r\n super(options);\r\n this.type = options[\"type\"] || \"\";\r\n }\r\n}\r\n","import { DynamicControlBase } from \"./dynamic-control-base\";\r\n\r\nexport class DynamicControlTextbox extends DynamicControlBase{\r\n controlType = 'textbox';\r\n type: string;\r\n \r\n constructor(options: {} = {}) {\r\n super(options);\r\n this.type = options['type'] || '';\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { DynamicControlBase } from \"./controls/dynamic-control-base\";\r\nimport {\r\n FormControl,\r\n Validators,\r\n FormGroup,\r\n FormBuilder\r\n} from \"@angular/forms\";\r\nimport { DynamicControlTextbox } from \"./controls/dynamic-control-textbox\";\r\nimport { UdfService } from \"../udf/udf.service\";\r\nimport { DynamicControlDropdown } from \"./controls/dynamic-control-dropdown\";\r\nimport { SelectItem } from \"ng2-select\";\r\nimport { DynamicControlTextArea } from \"./controls/dynamic-control-textarea\";\r\nimport { DynamicControlCheckbox } from \"./controls/dynamic-control-checkbox\";\r\nimport { CustomValidators } from \"../core/validators/custom-validators\";\r\nimport { DynamicControlRadioButton } from \"./controls/dynamic-control-radio-button\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class DynamicControlService {\r\n getValues(moduleName: string, tablePKIds: any[]): any {\r\n const ids = tablePKIds.join(\",\");\r\n const params = {\r\n PageNo: 1,\r\n NoOfRecords: 100,\r\n SortType: \"asc\",\r\n FieldName: \"tableName\",\r\n Condition: `where tableName='${moduleName}' and tablePKId in (${ids ? ids : -1})`\r\n };\r\n return this.udfService.getUdfDataValuesAsync(params);\r\n }\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private udfService: UdfService\r\n ) { }\r\n\r\n toFormGroup(controls: DynamicControlBase[], dynamicValues: any) {\r\n const group: any = {};\r\n\r\n controls.forEach(control => {\r\n const validations = [];\r\n if (control.required) { // || control.minLength\r\n validations.push(Validators.required);\r\n }\r\n if (control.minLength > 0) {\r\n validations.push(Validators.minLength(control.minLength));\r\n }\r\n if (control.maxLength > 0) {\r\n validations.push(Validators.maxLength(control.maxLength));\r\n }\r\n if (control.type == \"Integer\") {\r\n validations.push(CustomValidators.integerValidator);\r\n } else if (control.type == \"Decimal\") {\r\n validations.push(CustomValidators.decimalValidator);\r\n }\r\n const value = dynamicValues\r\n .filter(v => v.attributeLabel === control.label)\r\n .map(v => v.fieldValue);\r\n\r\n if (control.controlType === \"dropdown\") {\r\n if (value && value.length) {\r\n control.value = value[0].split(\",\").map(item => {\r\n const selectItem = new SelectItem(item);\r\n return selectItem;\r\n });\r\n } else {\r\n control.value = [];\r\n }\r\n } else if (value && value.length) {\r\n control.value = value[0];\r\n }\r\n group[control.key] = new FormControl(\r\n control.value || \"\",\r\n Validators.compose(validations)\r\n );\r\n if (control.controlType === \"checkbox\") {\r\n const checkbox = control as DynamicControlCheckbox;\r\n let values = [];\r\n if (value && value.length) {\r\n values = value[0].split(\",\");\r\n }\r\n\r\n const checkboxOptions = checkbox.options.map((op, index) => {\r\n const checked = values && values.length && values.filter(v => v == op).length;\r\n const fc = new FormControl(checked);\r\n return fc;\r\n });\r\n control.value = values;\r\n if (control.required) {\r\n group[control.key] = this.formBuilder.array(\r\n checkboxOptions,\r\n CustomValidators.minSelectedCheckboxes(1)\r\n );\r\n } else {\r\n group[control.key] = this.formBuilder.array(checkboxOptions, []);\r\n }\r\n }\r\n if (control.controlType === \"RadioButton\") {\r\n if (value && value.length) {\r\n control.value = value[0];\r\n } else {\r\n control.value = \"\";\r\n }\r\n if (control.required) {\r\n group[control.key] = new FormControl(\r\n control.value,\r\n Validators.required\r\n );\r\n } else {\r\n group[control.key] = new FormControl(control.value, []);\r\n }\r\n }\r\n });\r\n return new FormGroup(group);\r\n }\r\n async getControls(moduleName: string) {\r\n const params = {\r\n PageNo: 1,\r\n NoOfRecords: 100,\r\n SortType: \"asc\",\r\n FieldName: \"tableName\",\r\n Condition: `where tableName='${moduleName}' and inactive=0`\r\n };\r\n let data = await this.udfService.getUdfDataAsync(params);\r\n let controls: DynamicControlBase[] = data.data.table.map(item => {\r\n if (item.controlType === \"Textbox\") {\r\n return new DynamicControlTextbox({\r\n key: item.attributeId,\r\n label: item.attributeLabel,\r\n required: item.isRequired,\r\n order: item.attributeOrder,\r\n minLength: item.minLength,\r\n maxLength: item.maxLength,\r\n type: item.dataType,\r\n listDisplay: item.listDisplay\r\n });\r\n } else if (item.controlType === \"Dropdown\") {\r\n let options = [];\r\n let dropdownOptions = [];\r\n if (item.options) {\r\n options = item.options.split(\",\");\r\n dropdownOptions = options.map(option => {\r\n const dropdownItem = { id: option, text: option };\r\n return dropdownItem;\r\n });\r\n }\r\n return new DynamicControlDropdown({\r\n key: item.attributeId,\r\n label: item.attributeLabel,\r\n options: dropdownOptions,\r\n required: item.isRequired,\r\n order: item.attributeOrder,\r\n listDisplay: item.listDisplay\r\n });\r\n } else if (item.controlType === \"Textarea\") {\r\n return new DynamicControlTextArea({\r\n key: item.attributeId,\r\n label: item.attributeLabel,\r\n required: item.isRequired,\r\n order: item.attributeOrder,\r\n minLength: item.minLength,\r\n maxLength: item.maxLength,\r\n type: item.dataType,\r\n listDisplay: item.listDisplay\r\n });\r\n } else if (item.controlType === \"Checkbox\") {\r\n let options = [];\r\n if (item.options) {\r\n options = item.options.split(\",\");\r\n }\r\n return new DynamicControlCheckbox({\r\n key: item.attributeId,\r\n label: item.attributeLabel,\r\n required: item.isRequired,\r\n order: item.attributeOrder,\r\n minLength: item.minLength,\r\n maxLength: item.maxLength,\r\n options: options,\r\n listDisplay: item.listDisplay\r\n });\r\n } else if (item.controlType === \"RadioButton\") {\r\n let options = [];\r\n if (item.options) {\r\n options = item.options.split(\",\");\r\n }\r\n return new DynamicControlRadioButton({\r\n key: item.attributeId,\r\n label: item.attributeLabel,\r\n required: item.isRequired,\r\n order: item.attributeOrder,\r\n minLength: item.minLength,\r\n maxLength: item.maxLength,\r\n options: options,\r\n listDisplay: item.listDisplay\r\n });\r\n }\r\n });\r\n return controls.sort((a, b) => a.order - b.order);\r\n }\r\n\r\n update(udfData: any): any {\r\n return this.udfService.updateMultipleUdfData(udfData);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicFormComponent } from './dynamic-form.component';\r\nimport { DynamicControlComponent } from './dynamic-control/dynamic-control.component';\r\nimport { DynamicControlService } from './dynamic-control.service';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { SelectModule } from 'ng2-select';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SelectModule\r\n ],\r\n declarations: [DynamicFormComponent, DynamicControlComponent],\r\n providers: [DynamicControlService],\r\n exports: [DynamicFormComponent]\r\n})\r\nexport class DynamicFormModule { }\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n\r\n // siteUrl: 'https://leaveapi.geterpnow.com',\r\n // apiUrl: 'https://leaveapi.geterpnow.com/api',\r\n // authUrl: 'https://leaveapi.geterpnow.com/oauth/token',\r\n\r\n // siteUrl: 'http://pasys.crgroup.com:81/pasystemIndia',\r\n\r\n // siteUrl: 'http://103.10.234.199/api/',\r\n // apiUrl: 'http://103.10.234.199/api/api/',\r\n // authUrl: 'http://103.10.234.199/api/oauth/token',\r\n\r\n siteUrl: 'https://demo.pm-studio.com/api/',\r\n apiUrl: 'https://demo.pm-studio.com/api/api/',\r\n authUrl: 'https://demo.pm-studio.com/api/oauth/token',\r\n DynamicBaseUrl: 'https://demo.pm-studio.com/', // Must Change\r\n\r\n //siteUrl: 'http://localhost:63000/',\r\n //apiUrl: 'http://localhost:63000/api/',\r\n //authUrl: 'http://localhost:63000/oauth/token', \r\n // apiUrl: 'http://localhost:63000/api/',\r\n //authUrl: 'http://localhost:63000/oauth/token',\r\n\r\n // Success and error alert in duplicate case\r\n reOpenMsg: 'Project successfully re-opened.',\r\n SuccessAlert: 'alert alert-success',\r\n ErrorAlert: 'alert alert-danger',\r\n LoginEmailError: 'Invalid User Name',\r\n LoingPasswordError: 'Password is incorrect',\r\n\r\n //Dynamic Add validation messages\r\n DynamicState: \"Please select all required field (country)\",\r\n DynamicCity: \"Please select all required field (country, State)\",\r\n DynamicZipCode: \"Please select all required field (country, State, ZipCode )\",\r\n\r\n //Validation Message\r\n requiredMsg: 'Required',\r\n NumberMsg: 'Only numbers are allowed',\r\n MobileMsg: \"Invalid mobile number\",\r\n TelephoneMsg: \"Invalid telephone number\",\r\n EmailMsg: \"Invalid Email\",\r\n countryCode: \"Invalid Code\",\r\n ConfirmMsg: \"Do you really want to add this value ?\",\r\n websiteMsg: \"Invalid URL\",\r\n TimeOutInterval: 4000,\r\n ImportInterval: 15000,\r\n alertTimeoutInertval: 7000,\r\n NotDeleteHierarchyTimeout: 10000,\r\n\r\n\r\n //Success, udpate and delete message\r\n deleteMsg: 'Are you sure, you want to delete this record?',\r\n assignRoleAllPermissionsMsg: 'Do you really want to assign all the permissions to this role?',\r\n unRoleAssignAllPermissionsMsg: 'Do you really want to unassign all the permissions from this role?',\r\n successMsg: 'Record Added Successfully',\r\n updateMsg: 'Record Updated Successfully.',\r\n deleteSuccessMsg: 'Record Deleted Successfully.',\r\n errorOccurredMsg: 'An error has occurred',\r\n\r\n //Model Messages\r\n AddModel_msg: 'Add',\r\n EdtiModel_msg: 'Edit',\r\n ViewModel_msg: 'View',\r\n\r\n //Button Text\r\n AddButton_text: \"Save\",\r\n UpdateButton_text: \"Update\",\r\n\r\n //minimum one item add\r\n MinOneAddress: 'Minimum one address is required',\r\n RequiredLocationHierarchy: 'Location hierarchy is required',\r\n PreSaveAddress: 'Please save edited address first',\r\n DuplicateRadio: 'To change the primary address, you need to edit the previous one',\r\n MinOnePrimary: 'Minimum one primary address is required',\r\n AlreadyPrimaryMsg: 'Do you really want to change the primary address ?',\r\n RevertChanges: 'Do you want to revert the changes ?',\r\n NotDeletePrimaryAddress: 'This is a primary record. Please mark another address as primary to delete this record.',\r\n Savepreviousvalue: 'You need to save the edited address before editing a new address. \\n Do you want to save the edited address?',\r\n\r\n //google auth keys\r\n google_client_id : \"383710839222-20113qh32339rm4g1jctenrime6gqvcv.apps.googleusercontent.com\"\r\n //old: 467170952999-rae30kmckqs7a4j4u7mk1dduu6p9a97b.apps.googleusercontent.com\r\n\r\n};\r\n\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class Language {\r\n languageId: number;\r\n name: string;\r\n displayName: string;\r\n icon: string;\r\n isDefault: boolean;\r\n inActive: boolean;\r\n updatedBy: string;\r\n attributes: any;\r\n}\r\nexport class LanguageTranslation {\r\n id:number;\r\n languageId: number;\r\n keyWord: string;\r\n value: string;\r\n attributes: any;\r\n}\r\nexport class Listing {\r\n pageNo: number = 1;\r\n noOfRecords: number = 10;\r\n sortType: string = 'asc';\r\n fieldName: string = 'displayName';\r\n condition: string;\r\n CmpCode:any;\r\n}","export const Permission = {\r\n CountryView: 'COUNTRY_VIEW',\r\n CountryAdd: 'COUNTRY_ADD',\r\n CountryEdit: 'COUNTRY_EDIT',\r\n CountryDelete: 'COUNTRY_DELETE',\r\n CountryChangeStatus: 'COUNTRY_CHANGE_STATUS',\r\n StateView: 'STATE_VIEW',\r\n StateAdd: 'STATE_ADD',\r\n StateEdit: 'STATE_EDIT',\r\n StateDelete: 'STATE_DELETE',\r\n StateChangeStatus: 'STATE_CHANGE_STATUS',\r\n CityView: 'CITY_VIEW',\r\n CityAdd: 'CITY_ADD',\r\n CityEdit: 'CITY_EDIT',\r\n CityDelete: 'CITY_DELETE',\r\n CityChangeStatus: 'CITY_CHANGE_STATUS',\r\n ZipView: 'ZIPCODE_VIEW',\r\n ZipAdd: 'ZIPCODE_ADD',\r\n ZipEdit: 'ZIPCODE_EDIT',\r\n ZipDelete: 'ZIPCODE_DELETE',\r\n ZipChangeStatus: 'ZIPCODE_CHANGE_STATUS',\r\n CURRENCYView: 'CURRENCY_VIEW',\r\n CURRENCYAdd: 'CURRENCY_ADD',\r\n CURRENCYEdit: 'CURRENCY_EDIT',\r\n CURRENCYDelete: 'CURRENCY_DELETE',\r\n CURRENCYChangeStatus: 'CURRENCY_CHANGE_STATUS',\r\n BusinessView: 'BUSINESS_VIEW',\r\n BusinessAdd: 'BUSINESS_ADD',\r\n BusinessEdit: 'BUSINESS_EDIT',\r\n BusinessDelete: 'BUSINESS_DELETE',\r\n BusinessChangeStatus: 'BUSINESS_CHANGE_STATUS',\r\n languageView: 'LANGUAGE_VIEW',\r\n LanguageAdd: 'LANGUAGE_ADD',\r\n LanguageEdit: 'LANGUAGE_EDIT',\r\n LanguageDelete: 'LANGUAGE_DELETE',\r\n LanguageChangeStatus: 'LANGUAGE_CHANGE_STATUS',\r\n KeywordView: 'KEYWORD_VIEW',\r\n KeywordAdd: 'KEYWORD_ADD',\r\n KeywordEdit: 'KEYWORD_EDIT',\r\n KeywordDelete: 'KEYWORD_DELETE',\r\n LevelView: 'LEVEL_VIEW',\r\n LevelAdd: 'LEVEL_ADD',\r\n LevelEdit: 'LEVEL_EDIT',\r\n LevelDelete: 'LEVEL_DELETE',\r\n LevelChangeStatus: 'LEVEL_CHANGE_STATUS',\r\n LevelElementView: 'LEVELELEMENT_VIEW',\r\n LevelElementAdd: 'LEVELELEMENT_ADD',\r\n LevelElementEdit: 'LEVELELEMENT_EDIT',\r\n LevelElementDelete: 'LEVELELEMENT_DELETE',\r\n LevelElementChangeStatus: 'LEVELELEMENT_CHANGE_STATUS',\r\n GroupView: 'GROUP_VIEW',\r\n GroupAdd: 'GROUP_ADD',\r\n GroupEdit: 'GROUP_EDIT',\r\n GroupDelete: 'GROUP_DELETE',\r\n GroupChangeStatus: 'GROUP_CHANGE_STATUS',\r\n RoleView: 'ROLE_VIEW',\r\n RoleAdd: 'ROLE_ADD',\r\n RoleEdit: 'ROLE_EDIT',\r\n RoleDelete: 'ROLE_DELETE',\r\n RoleChangeStatus: 'ROLE_CHANGE_STATUS',\r\n UdfView: 'UDF_VIEW',\r\n UdfAdd: 'UDF_ADD',\r\n UdfEdit: 'UDF_EDIT',\r\n UdfDelete: 'UDF_DELETE',\r\n UdfChangeStatus: 'UDF_CHANGE_STATUS',\r\n UserView: 'USER_VIEW',\r\n UserAdd: 'USER_ADD',\r\n UserEdit: 'USER_EDIT',\r\n UserDelete: 'USER_DELETE',\r\n UserChangeStatus: 'USER_CHANGE_STATUS',\r\n CustomerView: 'CUSTOMER_VIEW',\r\n CustomerAdd: 'CUSTOMER_ADD',\r\n CustomerEdit: 'CUSTOMER_EDIT',\r\n CustomerDelete: 'CUSTOMER_DELETE',\r\n CustomerChangeStatus: 'CUSTOMER_CHANGE_STATUS',\r\n CustomerViewAddress: 'CUSTOMER_VIEW_ADDRESS',\r\n CustomerAddAddress: 'CUSTOMER_ADD_ADDRESS',\r\n CustomerEditAddress: 'CUSTOMER_EDIT_ADDRESS',\r\n CustomerDeleteAddress: 'CUSTOMER_DELETE_ADDRESS',\r\n CustomerAssignContact: 'CUSTOMER_ASSIGN_CONTACTPERSON',\r\n CustomerViewContact: 'CUSTOMER_VIEW_CONTACTPERSON',\r\n ContactPersonView: 'CONTACTPERSON_VIEW',\r\n ContactPersonAdd: 'CONTACTPERSON_ADD',\r\n ContactPersonEdit: 'CONTACTPERSON_EDIT',\r\n ContactPersonDelete: 'CONTACTPERSON_DELETE',\r\n ContactPersonChangeStatus: 'CONTACTPERSON_CHANGE_STATUS',\r\n SalesView: 'SALES_VIEW',\r\n SalesAdd: 'SALES_ADD',\r\n SalesEdit: 'SALES_EDIT',\r\n SalesDelete: 'SALES_DELETE',\r\n SalesChangeStatus: 'SALES_CHANGE_STATUS',\r\n SalesAssignCustomer: 'SALES_ASSIGN_CUSTOMER',\r\n SalesViewCustomer: 'SALES_VIEW_CUSTOMER',\r\n ProjectView: 'PROJECT_VIEW',\r\n ProjectAdd: 'PROJECT_ADD',\r\n ProjectEdit: 'PROJECT_EDIT',\r\n ProjectDelete: 'PROJECT_DELETE',\r\n ProjectLock: 'PROJECT_LOCK',\r\n ProjectArchive: 'PROJECT_ARCHIVE',\r\n ProjectReOpen: 'PROJECT_REOPEN',\r\n ProjectClose: 'PROJECT_CLOSE',\r\n ProjectPhaseView: 'PROJECTPHASE_VIEW',\r\n ProjectPhaseAdd: 'PROJECTPHASE_ADD',\r\n ProjectPhaseEdit: 'PROJECTPHASE_EDIT',\r\n ProjectPhaseDelete: 'PROJECTPHASE_DELETE',\r\n ProjectPhaseLock: 'PROJECTPHASE_LOCK',\r\n ProjectSubPhaseAdd: 'PROJECTSUBPHASE_ADD',\r\n ProjectPhaseUpload: 'PROJECTPHASE_UPLOAD_CONTRACT',\r\n ProjectPhaseCopy: 'PROJECTPHASE_COPY_PROJECT',\r\n ProjectAssignView: 'PROJECTASSIGN_VIEW',\r\n ProjectAssignAdd: 'PROJECTASSIGN_ADD',\r\n ProjectAssignEdit: 'PROJECTASSIGN_EDIT',\r\n ProjectAssignDelete: 'PROJECTASSIGN_DELETE',\r\n ProjectAssignChangeStatus: 'PROJECTASSIGN_CHANGE_STATUS',\r\n ProjectAssignAssigne: 'PROJECTASSIGN_ASSIGNE',\r\n TimesheetAdd: 'TIMESHEET_ADD',\r\n TimesheetEdit: 'TIMESHEET_EDIT',\r\n TimesheetDelete: 'TIMESHEET_DELETE',\r\n TimesheetCopy: 'TIMESHEET_COPY_LASTWEEK',\r\n TimesheetDetailAdd: 'TIMESHEET_DETAIL_ADD',\r\n TimesheetDetailEdit: 'TIMESHEET_DETAIL_EDIT',\r\n TimesheetDetailDelete: 'TIMESHEET_DETAIL_DELETE',\r\n TimesheetApproveEdit: 'TIMESHEET_APPROVE_EDIT',\r\n EditPrimaryManager: 'EDIT_PRIMARY_MANAGER',\r\n\tPostApprovalRequest: 'POST_APPROVAL_REQUEST',\r\n\tRoadblockAdd: 'ROADBLOCK_ADD',\r\n RoadblockEdit: 'ROADBLOCK_EDIT',\r\n RoadblockDelete: 'ROADBLOCK_DELETE',\r\n RoadblockEditAllAction: 'ROADBLOCK_FULL',\r\n MoMAdd: 'MEETINGMINUTES_ADD',\r\n MoMEdit: 'MEETINGMINUTES_EDIT',\r\n MoMDelete: 'MEETINGMINUTES_DELETE',\r\n MoMView: 'MEETINGMINUTES_VIEW',\r\n MoMDownload: 'MEETINGMINUTES_DOWNLOAD',\r\n MoMEditAllAction: 'MEETINGMINUTES_EDIT_ALL_ACTION',\r\n\tMoMEmailSend: 'MEETINGMINUTES_SEND_EMAIL',\r\n\tMoMActionReminder: 'MEETINGMINUTES_ACTION_REMINDER',\r\n AnnAdd: 'ANNOUNCEMENTS_ADD',\r\n AnnUpdate: 'ANNOUNCEMENTS_UPDATE',\r\n AnnDelete: 'ANNOUNCEMENTS_DELETE',\r\n CatManage: 'CATEGORY_MANAGE',\r\n QlAdd: 'QUICKLINK_ADD',\r\n QlUpdate: 'QUICKLINK_UPDATE',\r\n QlDelete: 'QUICKLINK_DELETE',\r\n LeaveTypeAdd: 'LEAVETYPE_ADD',\r\n LeaveTypeEdit: 'LEAVETYPE_EDIT',\r\n LeaveTypeDelete: 'LEAVETYPE_DELETE',\r\n LeaveTypeView: 'LEAVETYPE_VIEW',\r\n LeaveTypeStatus: 'LEAVETYPE_STATUS_UPDATE',\r\n CustomizePolicy: 'CUSTOMIZE_POLICY',\r\n ViewHistory: 'CUSTOMIZE_POLICY_VIEW_HISTORY',\r\n LeaveHistoryExport: 'CUSTOMIZE_POLICY_VIEW_HISTORY_EXPORT',\r\n CustomizeLeaveBal: 'CUSTOMIZE_LEAVE_BALANCE',\r\n EmailTemplateAdd: 'EMAILTEMPLATE_ADD',\r\n EmailTemplateEdit: 'EMAILTEMPLATE_EDIT',\r\n EmailTemplateView: 'EMAILTEMPLATE_VIEW',\r\n EmailTemplateDelete: 'EMAILTEMPLATE_DELETE',\r\n EmailTemplateStatus: 'EMAILTEMPLATE_STATUS',\r\n ApprovalSettingsAdd: 'APPROVALSETTINGS_ADD',\r\n ApprovalSettingsEdit: 'APPROVALSETTINGS_EDIT',\r\n ApprovalSettingsView: 'APPROVALSETTINGS_VIEW',\r\n ApprovalSettingsDelete: 'APPROVALSETTINGS_DELETE',\r\n ApprovalSettingsStatus: 'APPROVALSETTINGS_STATUS'\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { HttpHeaders, HttpClient } from '@angular/common/http';\r\nimport { environment } from '../environment';\r\nimport { NgxZendeskWebwidgetService } from 'ngx-zendesk-webwidget';\r\nimport { DatePipe, DecimalPipe } from '@angular/common';\r\nimport { param } from 'jquery';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n public currentUserSubject: BehaviorSubject;\r\n public currentUser: Observable;\r\n IsPermissionData: any = [];\r\n LocalDataPermission: any;\r\n\r\n constructor(private myRoute: Router, private httpClient: HttpClient,\r\n // private _NgxZendeskWebwidgetService: NgxZendeskWebwidgetService,\r\n private datePipe: DatePipe,private decimalpipe: DecimalPipe) { \r\n this.DateFormat= this.getdateFormat();\r\n this.Decimalformat = this.getdecimalFormat();\r\n }\r\n\r\n public get currentUserValue(): any {\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n DateFormat:any\r\n Dateformat(datas:string){\r\n this.DateFormat= this.getdateFormat();\r\n if (this.DateFormat=='1')\r\n {\r\n return this.datePipe.transform(datas, 'MM/dd/yyyy') \r\n }\r\n if(this.DateFormat=='2')\r\n {\r\n return this.datePipe.transform(datas, 'dd/MM/yyyy')\r\n }\r\n if(this.DateFormat== '3')\r\n {\r\n return this.datePipe.transform(datas, 'yyyy/MM/dd')\r\n } \r\n }\r\n\r\n Decimalformat:any;\r\n DecimalFormat(datas:string) {\r\n this.Decimalformat = this.getdecimalFormat();\r\n if (this.Decimalformat=='0')\r\n {return this.decimalpipe.transform(datas, '1.0-0')}\r\n if (this.Decimalformat=='1')\r\n {return this.decimalpipe.transform(datas, '.1-1')}\r\n if (this.Decimalformat=='2')\r\n {return this.decimalpipe.transform(datas, '.2-2')}\r\n }\r\n\r\n CurrencySymbols(data: any){\r\n switch (data) {\r\n case 'USD':\r\n return \"assets/img/CURRENCY-SYMBOLS/USD.png\";\r\n break;\r\n case 'AUD':\r\n return \"assets/img/CURRENCY-SYMBOLS/AUD.png\";\r\n break;\r\n case 'BGN':\r\n return \"assets/img/CURRENCY-SYMBOLS/BGN.png\";\r\n break;\r\n case 'BRL':\r\n return \"assets/img/CURRENCY-SYMBOLS/BRL.png\";\r\n break;\r\n case 'CAD':\r\n return \"assets/img/CURRENCY-SYMBOLS/CAD.png\";\r\n break;\r\n case 'CHF':\r\n return \"assets/img/CURRENCY-SYMBOLS/CHF.png\";\r\n break;\r\n case 'CNY':\r\n return \"assets/img/CURRENCY-SYMBOLS/CNY.png\";\r\n break;\r\n case 'CZK':\r\n return \"assets/img/CURRENCY-SYMBOLS/CZK.png\";\r\n break;\r\n case 'DKK':\r\n return \"assets/img/CURRENCY-SYMBOLS/DKK.png\";\r\n break;\r\n case 'GBP':\r\n return \"assets/img/CURRENCY-SYMBOLS/GBP.png\";\r\n break;\r\n case 'HKD':\r\n return \"assets/img/CURRENCY-SYMBOLS/HKD.png\";\r\n break;\r\n case 'HRK':\r\n return \"assets/img/CURRENCY-SYMBOLS/HRK.png\";\r\n break;\r\n case 'HUF':\r\n return \"assets/img/CURRENCY-SYMBOLS/HUF.png\";\r\n break;\r\n case 'IDR':\r\n return \"assets/img/CURRENCY-SYMBOLS/IDR.png\";\r\n break;\r\n case 'ILS':\r\n return \"assets/img/CURRENCY-SYMBOLS/ILS.png\";\r\n break;\r\n case 'INR':\r\n return \"assets/img/CURRENCY-SYMBOLS/INR.png\";\r\n break;\r\n case 'ISK':\r\n return \"assets/img/CURRENCY-SYMBOLS/ISK.png\";\r\n break;\r\n case 'JPY':\r\n return \"assets/img/CURRENCY-SYMBOLS/JPY.png\";\r\n break;\r\n case 'KRW':\r\n return \"assets/img/CURRENCY-SYMBOLS/KRW.png\";\r\n break;\r\n case 'MXN':\r\n return \"assets/img/CURRENCY-SYMBOLS/MXN.png\";\r\n break;\r\n case 'MYR':\r\n return \"assets/img/CURRENCY-SYMBOLS/MYR.png\";\r\n break;\r\n case 'NOK':\r\n return \"assets/img/CURRENCY-SYMBOLS/NOK.png\";\r\n break;\r\n case 'NZD':\r\n return \"assets/img/CURRENCY-SYMBOLS/NZD.png\";\r\n break;\r\n case 'PHP':\r\n return \"assets/img/CURRENCY-SYMBOLS/PHP.png\";\r\n break;\r\n case 'PLN':\r\n return \"assets/img/CURRENCY-SYMBOLS/PLN.png\";\r\n break;\r\n case 'RON':\r\n return \"assets/img/CURRENCY-SYMBOLS/RON.png\";\r\n break;\r\n case 'RUB':\r\n return \"assets/img/CURRENCY-SYMBOLS/RUB.png\";\r\n break;\r\n case 'SEK':\r\n return \"assets/img/CURRENCY-SYMBOLS/SEK.png\";\r\n break;\r\n case 'SGD':\r\n return \"assets/img/CURRENCY-SYMBOLS/SGD.png\";\r\n break;\r\n case 'THB':\r\n return \"assets/img/CURRENCY-SYMBOLS/THB.png\";\r\n break;\r\n case 'TRY':\r\n return \"assets/img/CURRENCY-SYMBOLS/TRY.png\";\r\n break;\r\n case 'ZAR':\r\n return \"assets/img/CURRENCY-SYMBOLS/ZAR.png\";\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n IsPermissions(value){\r\n let localData = localStorage.getItem('IsPermissions');\r\n this.IsPermissionData = JSON.parse(localData);\r\n if(this.IsPermissionData){\r\n this.LocalDataPermission = this.IsPermissionData.filter(user => user.formName === value);\r\n }\r\n }\r\n\r\n setToken(token: string, expiry: string) {\r\n let up = localStorage.getItem(btoa('Permission'));\r\n up = up === null ? up : atob(up);\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(up));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n localStorage.setItem(btoa(\"LoggedInUser\"), btoa(token));\r\n localStorage.setItem(btoa(\"tokenExpiry\"), btoa(expiry));\r\n }\r\n isTokenAlive() {\r\n let expiry = localStorage.getItem(btoa(\"tokenExpiry\"));\r\n expiry = atob(expiry);\r\n let expiryTimes = new Date(expiry);\r\n if (Date.now() <= expiryTimes.getTime()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n getToken() {\r\n let lu = localStorage.getItem(btoa(\"LoggedInUser\"));\r\n lu = lu === null ? lu : atob(lu);\r\n\r\n if (lu) {\r\n if (this.isTokenAlive()) {\r\n // this._NgxZendeskWebwidgetService.identify({\r\n // name: this.getUserFullName(),\r\n // email: this.getUseremail()\r\n // });\r\n // this._NgxZendeskWebwidgetService.show();\r\n }\r\n }\r\n\r\n return this.isTokenAlive() ? lu : null;\r\n }\r\n\r\n isLoggednIn() {\r\n return this.getToken() !== null;\r\n }\r\n logout() {\r\n this.httpClient.post(`${environment.apiUrl}/accounts/logout`, null).subscribe(response => {\r\n localStorage.removeItem(btoa(\"LoggedInUser\"));\r\n localStorage.removeItem(btoa('tokenExpiry'));\r\n localStorage.removeItem(btoa(\"userName\"));\r\n localStorage.removeItem(btoa('userEmail'));\r\n localStorage.removeItem(btoa('userFullName'));\r\n localStorage.removeItem(btoa('Permission'));\r\n localStorage.removeItem(btoa('roleId'));\r\n // localStorage.removeItem(btoa('themeId'));\r\n localStorage.removeItem(btoa('currency'));\r\n localStorage.removeItem(btoa('logo'));\r\n localStorage.removeItem(btoa('noofCustomer'));\r\n localStorage.removeItem(btoa('noofUsers'));\r\n localStorage.removeItem(btoa('userImage'));\r\n localStorage.removeItem(btoa('companyCode'));\r\n localStorage.removeItem(btoa('projectcoderequired'));\r\n localStorage.removeItem(btoa('projectprefix'));\r\n localStorage.removeItem(btoa('projectstart'));\r\n localStorage.removeItem(btoa('customerrequired'));\r\n localStorage.removeItem(btoa('customerprefix'));\r\n localStorage.removeItem(btoa('customerstart'));\r\n localStorage.removeItem(btoa('employeerequired'));\r\n localStorage.removeItem(btoa('employeeprefix'));\r\n localStorage.removeItem(btoa('employeestart'));\r\n localStorage.removeItem(btoa('addressrequired'));\r\n localStorage.removeItem(btoa('addressprefix'));\r\n localStorage.removeItem(btoa('addressstart'));\r\n localStorage.removeItem(btoa('decimalFormat'));\r\n localStorage.removeItem(btoa('dateFormat'));\r\n localStorage.removeItem(btoa('starTime'));\r\n localStorage.removeItem(btoa('endTime'));\r\n localStorage.removeItem(btoa('checkintype'));\r\n localStorage.removeItem(btoa('checkintime'));\r\n localStorage.removeItem(btoa('locationId'));\r\n localStorage.removeItem(btoa('locationId'));\r\n\r\n localStorage.removeItem('istoggle');\r\n localStorage.removeItem('IsPermissions');\r\n \r\n\r\n \r\n // this._NgxZendeskWebwidgetService.hide();\r\n\r\n this.myRoute.navigate([\"Login\"]);\r\n // window.location.href = `${environment.PMSLoginUri}`;\r\n this.currentUserSubject.next(null);\r\n });\r\n }\r\n loginUser(username: string, password: string , cmp): Observable {\r\n const formData = new FormData();\r\n formData.append('username', username);\r\n formData.append('password', password);\r\n formData.append('ClientId', cmp);\r\n \r\n formData.append('grant_type', 'password');\r\n\r\n const userData = \"ClientId=\" + cmp + \"&password=\" + password + \"&grant_type=password\"+\"&username=\"+username;\r\n const reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n return this.httpClient.post(`${environment.authUrl}`, userData, { headers: reqHeader });\r\n }\r\n GetOTP(mobile, code): Observable {\r\n const reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n return this.httpClient.get(`${environment.apiUrl}` + 'Message/getjointop?mobileno=' + mobile+ \"&countrycode=\"+code, { headers: reqHeader });\r\n }\r\n\r\n getUserComponies(email,token): Observable {\r\n const reqHeader = new HttpHeaders();\r\n reqHeader.append('Authorization', `bearer ${token}`)\r\n return this.httpClient.get(`${environment.apiUrl}` + 'Accounts/Getusercompanyains?email=' + email, { headers: reqHeader });\r\n }\r\n LoginWarn(email): Observable {\r\n const reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n return this.httpClient.get(`${environment.apiUrl}` + \"Accounts/wrongattempt?email=\"+email , { headers: reqHeader });\r\n }\r\n // GetMobileNoStatus(mobile): Observable {\r\n // const reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n // return this.httpClient.get(`${environment.apiUrl}` + 'Message/getjointop?mobileno=' + mobile, { headers: reqHeader });\r\n // }\r\n getcheckinstatus(params): Observable {\r\n//debugger\r\n const formData = new FormData();\r\n \r\n\r\n const userData = \"Accounts/checkinstatus?userid=\" + params.userid + \"&CmpCode=\" + params.cmpcode + \"&dateon=\" + params.date;\r\n \r\n return this.httpClient.get(`${environment.apiUrl}`+ userData);\r\n }\r\n\r\n setcheckstatus(params): Observable {\r\n \r\n debugger;\r\n const userData = \"Accounts/checkinuser?userid=\" + params.userid + \"&CmpCode=\" + params.cmpcode + \"&dateon=\" + params.dateon+ '&lati='+ params.lati+'&longi='+ params.longi+'&status='+ params.status+'&header='+ params.browser+'&ipaddress='+params.ipaddress;\r\n return this.httpClient.get(`${environment.apiUrl}`+ userData);\r\n }\r\n \r\n\r\n settimeformat(timeformat: string) {\r\n localStorage.setItem(btoa(\"timeformat\"), btoa(timeformat));\r\n }\r\n\r\n setCheckin(checkintype: string) {\r\n localStorage.setItem(btoa(\"checkintype\"), btoa(checkintype));\r\n }\r\n\r\n setLastcheckinmints(checkintype: string) {\r\n localStorage.setItem(btoa(\"lastcheckinmints\"), btoa(checkintype));\r\n }\r\n setCheckininTime(checkintime: any) {\r\n localStorage.setItem(btoa(\"checkintime\"), btoa(checkintime));\r\n }\r\n setLocationId(locationId: any) {\r\n localStorage.setItem(btoa(\"locationId\"), btoa(locationId));\r\n }\r\n\r\n\r\n setNoOfAttepmts(number: any) {\r\n localStorage.setItem(btoa(\"setNoOfAttepmts\"), btoa(number));\r\n }\r\n \r\n setUsername(userName: string) {\r\n localStorage.setItem(btoa(\"userName\"), btoa(userName));\r\n }\r\n setUseremail(userEmail: string) {\r\n localStorage.setItem(btoa(\"userEmail\"), btoa(userEmail));\r\n }\r\n setUserFullName(setUserFullName: string) {\r\n localStorage.setItem(btoa(\"userFullName\"), btoa(setUserFullName));\r\n }\r\n setUserType(userType: string) {\r\n localStorage.setItem(btoa(\"userType\"), btoa(userType));\r\n }\r\n setUserId(userId: string) {\r\n localStorage.setItem(btoa(\"userId\"), btoa(userId));\r\n }\r\n setRoleId(roleId: any){\r\n localStorage.setItem(btoa(\"roleId\"), btoa(roleId));\r\n }\r\n setSubRoleId(SubroleId: any){\r\n localStorage.setItem(btoa(\"SubroleId\"), btoa(SubroleId));\r\n }\r\n setThemeId(themeId: any){\r\n localStorage.setItem(btoa(\"themeId\"), btoa(themeId));\r\n }\r\n setCurrency(currency: any){\r\n localStorage.setItem(btoa(\"currency\"), btoa(currency));\r\n }\r\n setFinancialYearStart(start: any){\r\n localStorage.setItem(btoa(\"FinancialYearStart\"), btoa(start));\r\n }\r\n setFinancialYearEnd(end: any){\r\n localStorage.setItem(btoa(\"FinancialYearEnd\"), btoa(end));\r\n }\r\n setLogo(logo: any){\r\n localStorage.setItem(btoa(\"logo\"), btoa(`${environment.siteUrl}` + logo));\r\n }\r\n setNoOfCustomer(noofCustomer: any){\r\n localStorage.setItem(btoa(\"noofCustomer\"), btoa(noofCustomer));\r\n }\r\n setNoOfUsers(noofUsers: any){\r\n localStorage.setItem(btoa(\"noofUsers\"), btoa(noofUsers));\r\n }\r\n setcmpName(cmpname: any){\r\n localStorage.setItem(btoa(\"cmpName\"), btoa(cmpname));\r\n }\r\n\r\n setUserImage(userImage: any){\r\n localStorage.setItem(btoa(\"userImage\"), btoa(`${environment.siteUrl}` + userImage));\r\n }\r\n setcompanyCode(companyCode: any){\r\n localStorage.setItem(btoa(\"companyCode\"), btoa(companyCode));\r\n }\r\n setprojectcoderequired(projectcoderequired: any){\r\n localStorage.setItem(btoa(\"projectcoderequired\"), btoa(projectcoderequired));\r\n } \r\n setprojectprefix(projectprefix: any){\r\n localStorage.setItem(btoa(\"projectprefix\"), btoa(projectprefix));\r\n }\r\n setprojectstart(projectstart: any){\r\n localStorage.setItem(btoa(\"projectstart\"), btoa(projectstart));\r\n }\r\n setcustomerrequired(customerrequired: any){\r\n localStorage.setItem(btoa(\"customerrequired\"), btoa(customerrequired));\r\n }\r\n setcustomerprefix(customerprefix: any){\r\n localStorage.setItem(btoa(\"customerprefix\"), btoa(customerprefix));\r\n }\r\n setcustomerstart(customerstart: any){\r\n localStorage.setItem(btoa(\"customerstart\"), btoa(customerstart));\r\n }\r\n setemployeerequired(employeerequired: any){\r\n localStorage.setItem(btoa(\"employeerequired\"), btoa(employeerequired));\r\n }\r\n setemployeeprefix(employeeprefix: any){\r\n localStorage.setItem(btoa(\"employeeprefix\"), btoa(employeeprefix));\r\n }\r\n setemployeestart(employeestart: any){\r\n localStorage.setItem(btoa(\"employeestart\"), btoa(employeestart));\r\n }\r\n setaddressrequired(addressrequired: any){\r\n localStorage.setItem(btoa(\"addressrequired\"), btoa(addressrequired));\r\n }\r\n setaddressprefix(addressprefix: any){\r\n localStorage.setItem(btoa(\"addressprefix\"), btoa(addressprefix));\r\n }\r\n setaddressstart(addressstart: any){\r\n localStorage.setItem(btoa(\"addressstart\"), btoa(addressstart));\r\n }\r\n setdecimalFormat(decimalFormat: any){\r\n localStorage.setItem(btoa(\"decimalFormat\"), btoa(decimalFormat));\r\n }\r\n setdateFormat(dateFormat: any){\r\n localStorage.setItem(btoa(\"dateFormat\"), btoa(dateFormat));\r\n }\r\n setStartTime(startTime: any){\r\n localStorage.setItem(btoa(\"startTime\"), btoa(startTime));\r\n }\r\n setEndTime(endTime: any){\r\n localStorage.setItem(btoa(\"endTime\"), btoa(endTime));\r\n }\r\n setSalePersonId(SalePersonId: any){\r\n localStorage.setItem(btoa(\"SalePersonId\"), btoa(SalePersonId));\r\n }\r\n settoggle(toggle: any){\r\n localStorage.setItem(\"istoggle\", toggle);\r\n }\r\n ImageRecord: any;\r\n setImageData(data) {\r\n this.ImageRecord = data\r\n }\r\n\r\n getImageData() {\r\n return this.ImageRecord\r\n }\r\n \r\n\r\n gettimeformat() { \r\n let un = localStorage.getItem(btoa(\"timeformat\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n\r\n\r\n getSalePersonId() { \r\n let un = localStorage.getItem(btoa(\"SalePersonId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n\r\n getNoOfAttepmts() { \r\n let un = localStorage.getItem(btoa(\"setNoOfAttepmts\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n\r\n getLastcheckinmints() { \r\n let un = localStorage.getItem(btoa(\"lastcheckinmints\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getCheckintype() { \r\n let un = localStorage.getItem(btoa(\"checkintype\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n\r\n getCheckinTime() { \r\n let un = localStorage.getItem(btoa(\"checkintime\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getLocationId() { \r\n let un = localStorage.getItem(btoa(\"locationId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n\r\n getFinancialYearStart(){\r\n let un = localStorage.getItem(btoa(\"FinancialYearStart\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n \r\n }\r\n getFinancialYearEnd(){\r\n let un = localStorage.getItem(btoa(\"FinancialYearEnd\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n \r\n }\r\n getLogo() { \r\n let un = localStorage.getItem(btoa(\"logo\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getNoOfCustomer() {\r\n let un = localStorage.getItem(btoa(\"noofCustomer\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getNoOfUsers() {\r\n let un = localStorage.getItem(btoa(\"noofUsers\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getUserImage() {\r\n let un = localStorage.getItem(btoa(\"userImage\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getCurrency() {\r\n let un = localStorage.getItem(btoa(\"currency\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getCmpName() {\r\n let un = localStorage.getItem(btoa(\"cmpName\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getThemeId() {\r\n let un = localStorage.getItem(btoa(\"themeId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getRoleId() {\r\n let un = localStorage.getItem(btoa(\"roleId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getSubRoleId() {\r\n let un = localStorage.getItem(btoa(\"SubroleId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getUserId() {\r\n let un = localStorage.getItem(btoa(\"userId\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getExpenseDashboard() {\r\n let un = localStorage.getItem(btoa(\"ExpenseDashboard\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getUsername() {\r\n let un = localStorage.getItem(btoa(\"userName\"));\r\n un = un === null ? un : atob(un);\r\n return un;\r\n }\r\n getUName() {\r\n let ut = localStorage.getItem(btoa(\"uName\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n setUName(uName: string) {\r\n localStorage.setItem(btoa(\"uName\"), btoa(uName));\r\n }\r\n getUseremail() {\r\n let ue = localStorage.getItem(btoa(\"userEmail\"));\r\n ue = ue === null ? ue : atob(ue);\r\n return ue;\r\n }\r\n getUserFullName() {\r\n let ufn = localStorage.getItem(btoa(\"userFullName\"));\r\n ufn = ufn === null ? ufn : atob(ufn);\r\n return ufn;\r\n }\r\n getUserType() {\r\n let ut = localStorage.getItem(btoa(\"userType\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getcompanyCode() {\r\n let ut = localStorage.getItem(btoa(\"companyCode\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getprojectcoderequired() {\r\n let ut = localStorage.getItem(btoa(\"projectcoderequired\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getprojectprefix() {\r\n let ut = localStorage.getItem(btoa(\"projectprefix\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getprojectstart() {\r\n let ut = localStorage.getItem(btoa(\"projectstart\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getcustomerrequired() {\r\n let ut = localStorage.getItem(btoa(\"customerrequired\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getcustomerprefix() {\r\n let ut = localStorage.getItem(btoa(\"customerprefix\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getcustomerstart() {\r\n let ut = localStorage.getItem(btoa(\"customerstart\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getemployeerequired() {\r\n let ut = localStorage.getItem(btoa(\"employeerequired\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getemployeeprefix() {\r\n let ut = localStorage.getItem(btoa(\"employeeprefix\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getemployeestart() {\r\n let ut = localStorage.getItem(btoa(\"employeestart\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getaddressrequired() {\r\n let ut = localStorage.getItem(btoa(\"addressrequired\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getaddressprefix() {\r\n let ut = localStorage.getItem(btoa(\"addressprefix\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getdecimalFormat() {\r\n let ut = localStorage.getItem(btoa(\"decimalFormat\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n \r\n getaddressstart() {\r\n let ut = localStorage.getItem(btoa(\"addressstart\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getdateFormat() {\r\n let ut = localStorage.getItem(btoa(\"dateFormat\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getStartTime() {\r\n let ut = localStorage.getItem(btoa(\"startTime\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getEndTime() {\r\n let ut = localStorage.getItem(btoa(\"endTime\"));\r\n ut = ut === null ? ut : atob(ut);\r\n return ut;\r\n }\r\n getPermission() {\r\n let up = localStorage.getItem(btoa('Permission'));\r\n up = up === null ? up : atob(up);\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(up));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n }\r\n setPermission(permissionObj: any) {\r\n localStorage.setItem(btoa('Permission'), btoa(permissionObj));\r\n }\r\n getForgotPasswordToken(email: string): Observable {\r\n var userData = \"email=\" + email;\r\n var reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n return this.httpClient.post(`${environment.apiUrl}/accounts/ForgotPassword`, userData, { headers: reqHeader });\r\n }\r\n getUserPermission(id: number, userType: string,CmpCode): Observable {\r\n const headers = new HttpHeaders();\r\n headers.append('Content-Type', 'application/json');\r\n let userData = { 'userId': id, 'userType': (userType === 'Client' ? 3 : 2),'CmpCode':CmpCode};\r\n return this.httpClient.post(`${environment.apiUrl}/admin/GetUserPermission`, userData, { headers: headers });\r\n }\r\n}\r\n","import { FilterPipe } from './search.filter';\r\nimport { NgModule } from '@angular/core';\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterPipe \r\n ],\r\n exports: [\r\n FilterPipe\r\n ]\r\n}) \r\nexport class CommonUtilModule {}","import { Injectable } from \"@angular/core\";\r\nimport { Http, Response, Headers, RequestOptions } from \"@angular/http\";\r\nimport { HttpHeaders, HttpClient } from '@angular/common/http';\r\nimport { environment } from \"src/app/environment\";\r\nimport { Observable, BehaviorSubject, Subject, of } from \"rxjs\";\r\nimport { AuthService } from \"../auth.service\";\r\ndeclare var $: any;\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class ExpenseHttpService {\r\n constructor(private _http: Http, private httpClient: HttpClient,\r\n private authService: AuthService) { }\r\n\r\n Getaddresscode(CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getaddresscode?Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n Getprecustomercode(CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getprecustomercode?Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getpreemployeecode(CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getpreemployeecode?Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetResourceAllocationWithTask(CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetResourceAllocationWithTask?employeeid=0&departmentid=0&designationid=0&overallstatus=0&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAssignHistory(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getassignhistory?userid=` + params.userid + `&projectid=` + params.projectid + `&Cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getInHandRequests(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetRequestpendinginhand?projectid=`+params.projetcId+\"&userid=\"+params.userId+\"&cmpcode=\"+params.cmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getTransferemployee(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetTransferemployee?employeeid=`+params.userId+ \"&cmpcode=\"+params.cmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n saveTransferemployee(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/Resourcefortransfer`, params, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetNotifications(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Message/getNotification?userId=` + params.UserId + `&roleId=` + params.roleId + `¬iDate=` + params.date + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetNotificationLogin(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Message/getNotificationLogin?userId=` + params.UserId + `&roleId=` + params.roleId + `¬iDate=` + params.date + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n setRedNotification(notificationId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Message/setRedNotification?notificationId=` + notificationId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n setRedAllNotification(userId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Message/setRedAllNotification?userid=` + userId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllCountryForSelect(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetAllCountryForSelect?CmpCode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetStateByCountry(countryId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetStateByCountry?id=` + countryId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCityByState(StateId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetCitiesByState?Id=` + StateId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetzipcodeBycity(CityId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetZipcodeByCity?id=` + CityId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetZoneByCountry(countryName, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/GetContryTimeZone?countryName=` + countryName + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getformassignment(UserId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getformassignment?userid=` + UserId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetLoginusers(UserId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetLoginusers?userid=` + UserId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetFininacialYear(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}/Admin/GetCurrentFinancialYear?cmpCode=${CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetChangeRequest(requestid, userId, CmpCode, projectid, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Analytics/GetExchangerequest?requestid=` +\r\n requestid + `&userId=` + userId + `&CmpCode=` + CmpCode + `&projectid=` + projectid + `&type=` + type, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetChangePhaseProject(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Project/GetPhasebyProject?projectId=` +\r\n projectId + `&CmpCode=` + CmpCode, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetUserCommercial(projectId, userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Project/Getusercommercial?projectid=` + projectId + `&userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetcompanyDetail(companyId: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetcompanyDetail?companyId=` + companyId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetFormpermission(roleId: any, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/GetFormpermission?roleId=` + roleId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllEmployeeForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllEmployeeForSelect`, formdata,{headers:headers}\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n // GetAllEmployeeForSelectWithLoginId(userid,cmpcode){\r\n // return this._http\r\n // .post(`${environment.apiUrl}project/assignmyteam?employeeid=`+userid+'&Cmpcode'+cmpcode)\r\n // .map((response: Response) => response.json())\r\n // .toPromise();\r\n // }\r\n GetAllEmployeeForSelectWithLoginId(userid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/assignmyteam?employeeid=` + userid + `&CmpCode=` + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetOwnerByTaskOrSubtask(projectId,id, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/GetOwnerByTaskOrSubtask?ProjectId=`+projectId+`&TaskOrSubTaskId=`+id+`&CmpCode=`+cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllEmployeeForSelectWithLoginIdforProject(userid, cmpcode, projectid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/assignmyteamforproject?employeeid=` + userid + `&CmpCode=` + cmpcode + `&projectid=` + projectid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllEmployeeForSelectWithLoginIdforProjectWithDate(userid, date, cmpcode, projectid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/assignmyteamforproject?employeeid=` + userid + `&date=`+date+`&CmpCode=` + cmpcode + `&projectid=` + projectid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getDateBelongsToUser(userid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getreportdate?userid=`+userid+`&cmpcode=`+cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getprojectuploaddocument(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getprojectuploaddocument?projectid=` + params.projectid + `&pdocumentId=` + params.pdocumentId + `&cmpcode=` + params.cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectByEmployeeForSelect(employeeId: any, formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllProjectByEmployeeForSelect/` + employeeId, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllProjectByEmployeeForSelectbyDate(employeeId: any, cmpcode: any, dateon: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GetAllprojectforassign?employeeid=` + employeeId + `&cmpcode=` + cmpcode + `&dateon=` + dateon, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllRecentProjectByEmployeeId(projecid:any,employeeId: any, cmpcode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Getrecenttimesheet?projectid=` + projecid + '&employeeid=' + employeeId + `&cmpcode=` + cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectPhaseForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllProjectPhaseForSelect`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectSubPhaseForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllProjectSubPhaseForSelect`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectTaskForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllProjectTaskForSelect`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectSubTaskForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetAllProjectSubTaskForSelect`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetTimesheetMeta(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/GetTimesheetMeta`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateMileStone(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/insMilestone`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createUploadprojectdocument(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Project/createUploadprojectdocument`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateRights(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/InsFormassignment`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n OnSubscription(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/Updatesubcription`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n OnPayDone(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/InsertPaypalResult`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetExchangeRequest(value: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/Exchangerequeststatus?requestid=` +\r\n value.id + `&clientstatus=` + value.clientstatus + `&servicestatus=` + value.changerequestcompletestatus + `&taskId=` + value.taskId + `&Cmpcode=` + value.CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllProjectToShow(projectid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Project/GetAllProjectForSelectoneproject?projectid=0` + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateOrgSetting(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/OrgUpdate`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n UpdateGeneralSetttings(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/Modifycompanydetail`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n AddChangeRequest(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/SaveExchangerequest`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n AddReimbursment(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Reimbursement/SaveReimbursement`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n AddNewCategory(formdata: any) {\r\n // Api calling without Headers/ Without token\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Category/CreateCategory`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n EditCategory(formdata: any) {\r\n // Api calling without Headers/ Without token\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Category/EditCategory`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n EditClientAmount(formdata: any) {\r\n // Api calling without Headers/ Without token\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/Editclientamount`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddSubNewCategory(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // Api calling without Headers/ Without token\r\n return this._http\r\n .post(`${environment.apiUrl}Category/CreateSubCategory`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetCategory(categoryId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Category/GetCategory?CategoryId=` +\r\n categoryId +\r\n `&CategoryName=category` + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetexpenseCategory(categoryId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Category/GetexpenseCategory?CategoryId=` +\r\n categoryId +\r\n `&CategoryName=category` + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCategoryCode(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Admin/Getcategorycode?cmpcode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetSubcategory(CategoryId, subCategoryId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Category/GetSubcategory?CategoryId=` +\r\n CategoryId + `&subCategoryId=` + subCategoryId + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetCurrency(categoryId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Category/GetCategory?CategoryId=` +\r\n categoryId +\r\n `&CategoryName=category` + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n//not done bearer\r\n importCatgory(formdata) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Category/ImportExcelCategory`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n//not done bearer\r\n ImportExcelFiles(formdata) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Excel/ImportExcelFiles`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n // Policy API's\r\n\r\n CreatePolicy(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createPolicy`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createPolicyCategory(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createPolicyCategory`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createPolicyMileage(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createPolicyMileage`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createPolicyDiem(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createPolicyDiem`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n DiemSetting(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/DiemSetting`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n // Rules Api's\r\n createRules(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createRules`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createRoleType(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createRoleType`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetRole(roleid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetRole?roleid=0` + `&CmpCode=` + CmpCode,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetRuleType(RuleTypeId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetRoleType?roleTypeid=` + RuleTypeId + `&CmpCode=` + CmpCode,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n createInviteUser(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createInviteUser`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddContactSupport(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/Addcontactsupport`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n // CRGContactSupport(formdata: any) {\r\n // const headers = new HttpHeaders();\r\n // headers.append('Content-Type', 'application/json');\r\n // return this._http\r\n // .post(`https://crg-support.com/api/ticket`, formdata, { headers: headers} )\r\n // .map((response: Response) => response.json())\r\n // .toPromise();\r\n // }\r\n CRGContactSupport(formdata: any): Observable {\r\n const headers = new HttpHeaders();\r\n headers.append('Content-Type', 'application/json');\r\n return this.httpClient.post(`https://crg-support.com/api/ticket`, formdata,{headers:headers});\r\n }\r\n\r\n CRGContacttest(user_id: string): Observable {\r\n const headers = new HttpHeaders();\r\n headers.append('Content-Type', 'application/json');\r\n let userData = { 'user_id': user_id };\r\n return this.httpClient.post(`https://crg-support.com/api/testing`, userData,{headers:headers});\r\n }\r\n\r\n sendEmailUser(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/sendForEmail`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n registerWithSuperTick(path,formdata){\r\n const headers = new HttpHeaders();\r\n headers.append('Content-Type', 'application/json');\r\n return this.httpClient.post(path, formdata,{headers:headers});\r\n }\r\n\r\n substituteUser(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Advancepayment/InsSubstitutedetail`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n SaveScheduleService(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/Createschduleservice`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n empSubstituteDetail(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Advancepayment/empsubsitutueDetail`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getEmpProjectList(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetEmployeeProject?EmployeeId=` + projectId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getScheduleServiceList(Id, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getschduleservicelist?id=`+ Id+`&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ProjectEditpermission(Id, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/ProjectEditpermission?ProjectId=`+ Id+`&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getInUser(Id, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/Getinviteuser?id=` + Id + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getProjectbyUserId(Id, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/ProjectAssignTeam?ProjectId=` + Id + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUserDetail(userid, CmpCode, typeId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/UsersDetail?userid=` + userid + `&CmpCode=` + CmpCode + `&userType=` + typeId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUserHistory(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Category/Getrejoiningdetail?userid=` + userid + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUserDetailExport(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetUsersDetailexportexcel?cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n RegisterUser(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Accounts/UserRegister`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ChangePassword(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Accounts/changepassword`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetDepartment(DepartmentId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetDepartment?DepartmentId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetEmployeByEmail(formdata, CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n\r\n .get(`${environment.apiUrl}Policy/GetEmployeByEmail?Email=` + formdata + `&Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPolicy(policyId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetPolicy?policyId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getExpenseReport(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getexpansedetail/` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getRoadBlockReport(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getroadblock/` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetPhasereport(projectId: any, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetPhasereport/${projectId}/${CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllProjectForSelect(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/GetAllProjectForSelect`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n // All reports Api Start\r\n getResourceAllocationReport(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexrptresourceallocation/` + CmpCode, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getResourceUtilizationReport(isDate: any, UserId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getresourceutilization?utDate=` + isDate + `&UserId=` + UserId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getResourceCapacityReport(from: any,to, UserId, CmpCode, Emp?, project?, dept? ) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getresourcepoolreport?fromDate=`+from+`&toDate=`+to+`&EmployeeId=`+Emp+`&userid=`\r\n +UserId+`&CmpCode=`+CmpCode+`&projectId=`+project+`&deptId=`+dept, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n getProjectLeavePlanReport(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectleaveplannerreport/` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getResourceEfficiencyReport() {\r\n\r\n }\r\n\r\n getOverDueReport(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getoverduetask`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getPlannedVsActualReport(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getplannedvsactual`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getResourceWorkDetailReport(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexrptresourceworkdetail`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectProfitDetailReport(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectprofitablity`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getMomDetailReport(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getmomreport`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n // All reports Api End\r\n getUnsubmittedExpanse(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getunsubmittedexpanse`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getCategoryExpanse(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getcategoryexpanse`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUserLocations(user, dates, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getcheckincheckoutlocation?userid=`+user+`&startdate=`+dates.start+`&enddate=`+dates.end+`&cmpcode=`+CmpCode ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getUserwiseExpanse(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getuserwiseexpanse`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getMilegeExpanse(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getmilegeexpanse`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getPolicyViolation(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getpolicyviolation`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getCustomerExpanse(CmpCode) {\r\n //not used this api\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getcustomerexpanse`, CmpCode)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectExpanse(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectexpanse/`+ CmpCode ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n AddExpense(formdata: any) {\r\n debugger;\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/createExpanse`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetCustomer(CustomerId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetCustomer?CustomerId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCustomerfornewreport(CmpCode,data) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetCustomer?CustomerId=0` + `&CmpCode=` + CmpCode+ '&projectid=' +data, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCustomerexp(CustomerId, CmpCode, projectId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetCustomer?CustomerId=` + CustomerId + `&CmpCode=` + CmpCode\r\n + `&projectid=` + projectId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCustomerFilter(CmpCode, userid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetCustomerdashboard?&CmpCode=` + CmpCode + `&userid=` + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetProjectFilter(userid, CmpCode, CustomerId) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetExProjectsdashboard?&userid=` + userid + `&CmpCode=` + CmpCode\r\n + `&customerid=` + CustomerId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPaymentmode(paymentModeId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetPaymentmode?paymentModeId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetProjectAdmin(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getallprojectadmin?cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetProjectManagers(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetAllMangerandadmin?CmpCode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddExpenseMileage(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/createExpanseMileage`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPurticularPolicy(policyId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetPolicy?policyId=` + policyId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPurticularCategories(policyId, CmpCode, locationId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetPolicyCategory?policyId=` + policyId + `&CmpCode=` + CmpCode\r\n + `&locationId=` + locationId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPurticularMileage(policyId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetPolocyMileage?policyId=` + policyId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPurticularDiem(policyId, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetPolicyDiem?policyId=` + policyId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetDiemSetting(policyId, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetDiemSetting?policyId=` + policyId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetisIncludedTax(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/isincludedtax?CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllExpense(expenseId, categoryId, userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllexpense?expenseId=` +\r\n expenseId +\r\n `&categoryId=` +\r\n categoryId + `&userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllExpenseNew(expenseId, categoryId, userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetFilterexpense?expenseId=` +\r\n expenseId +\r\n `&categoryId=` +\r\n categoryId + `&userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getlastexpenseUser(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/getlastexpenseUser?userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n createbulkexpense(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/createExpenseAddBulk`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateScheduleEmail(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/savescheduleemail`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n CreateScheduleEmailwsr(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/savescheduleemailwsr`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n StatusChangeReport(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http.get(`${environment.apiUrl}Project/Statuschangereport?projectid=` + params.projectid +\r\n `&reportid=` + params.reportid + `&cmpcode=` + params.cmpcode + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProject(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetProjectstatuswise?userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetcustomerProject(CustomerId, CmpCode, userid,date) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getcustomerproject/GetAllexpense?CustomerId=` + CustomerId\r\n + `&CmpCode=` + CmpCode + `&userid=` + userid + `&dateon=` + date, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetChangeReqProject(projectid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetRequestProjects?projectid=` + projectid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getchangerequestcode(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getchangerequestcode?Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllReportuserby(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetReportUserBy?userId=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetUnsubmitedReports(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetUnsubmitedReports?userId=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAdvanceDetailbyId(repid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/Getadvanceinfo?reportid=` + repid + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getreimbinfo(repid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Reimbursement/Getreimbinfo?reportid=` + repid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddReportExpense(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/createExpReport`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddExpenseApproval(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/expapprovereject `, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetReport(reportId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/getExReport?reportId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetReportuserby(userid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/getExReportuserby?userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n // Start Approval Api's\r\n\r\n GetReportsByID(reportId, Status, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetGetApproval?reportId=` + reportId + `&status=` + Status + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n DeleteReportById(reportId, CmpCode, userid) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/Deletebulkreport?reportid=` + reportId + `&cmpcode=` + CmpCode + `&userid=` + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n GetApprovalByID(reportId, Status, userid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetsubmitApproval?reportId=` + reportId + `&status=` + Status + `&userId=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetReportsDetailByID(createdBy, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetExpenseDetail?createdBy=` + createdBy + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getIPAddress() {\r\n return this._http\r\n .get(`https://jsonip.com`)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetExpenseDetailByID(createdBy, CmpCode, userid) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetExpenseprojectdetail?reportid=` + createdBy + `&CmpCode=` + CmpCode + `&userid=` + userid, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetLeaveDetailByID(createdBy, CmpCode, userid, expeseid) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/Getlevelapproval?reportid=` + createdBy + `&CmpCode=` + CmpCode + `&userId=` + userid + `&expenseId=` + expeseid, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getlabelapproved(advanceid, CmpCode, userid) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/getlabelapproved?advanceid=` + advanceid + `&cmpcode=` + CmpCode +\r\n `&userid=` + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Applyadvanceamount(reportid, applyAmount, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/Applyadvanceamount?reportid=` + reportid +\r\n `&applyAmount=` + applyAmount + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllReportsByidbyall(reportId, status, createdBy, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/ExGetAllsubmitedl?reportId=` +\r\n reportId +\r\n `&status=` +\r\n status +\r\n `&createdBy=` +\r\n createdBy +\r\n `&CmpCode=` +\r\n CmpCode, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n Getuseradvancedetail(userid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/Getuseradvancedetail?userid=` + userid + `&cmpcode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllReports(reportId, status, createdBy, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/ExGetAllApproval?reportId=` +\r\n reportId +\r\n `&status=` +\r\n status +\r\n `&createdBy=` +\r\n createdBy +\r\n `&CmpCode=` +\r\n CmpCode, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllReportsumited(reportId, status, createdBy, CmpCode, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetBeforapprovlreport?reportId=` +\r\n reportId +\r\n `&status=` +\r\n status +\r\n `&createdBy=` +\r\n createdBy +\r\n `&CmpCode=` +\r\n CmpCode +\r\n `&type=` +\r\n type, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n GetApproveAllReports(reportId, userId, CmpCode,from, to) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/myApprovel?reportId=` +\r\n reportId +\r\n `&userId=` +\r\n userId\r\n + `&CmpCode=` + CmpCode+`&fromdate=`+from+`&todate=`+to, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetResourceAllocation(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetResourceAllocation?employeeid=0&departmentid=0&designationid=0&overallstatus=0` + `&CmpCode=` + CmpCode + `&startDate=&endDate=`, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n resourceAllocation(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetResourceAllocation?employeeid=` +\r\n parms.employeeId +\r\n `&departmentid=` +\r\n parms.departmentId +\r\n `&designationid=` +\r\n parms.designationId +\r\n `&overallstatus=` +\r\n parms.overallStatus +\r\n `&cmpCode=` +\r\n parms.CmpCode +\r\n `&startDate=` +\r\n parms.startDate +\r\n `&endDate=` +\r\n parms.endDate\r\n + `&usertype=` +\r\n parms.usertype, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n allexpense(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllexpense?expenseId=` + parms.expenseId + `&categoryId=` +\r\n parms.categoryId +\r\n `&merchantName=` +\r\n parms.merchantName +\r\n `&status=` +\r\n parms.status +\r\n `&amount=` +\r\n parms.amount, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n reportListingFilter(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/reportfilterClick?reportTitle=` +\r\n parms.reportTitle +\r\n `&amount=` +\r\n parms.amount, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getadvancerefernce(CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/Getadvancerefernce?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetadvanceAvailabelamount(userId, CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/GetadvanceAvailabelamount?userid=` + userId + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n advancePaymentFilterList(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllAdvancePayment?empName=` +\r\n parms.empName +\r\n `&amount=` +\r\n parms.amount, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n reportfilter(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllReport?reportTitle=` +\r\n parms.reportTitle +\r\n `&amount=` +\r\n parms.amount, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n allBulkFilterCategory(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Category/GetCategoryfilter?CategoryName=` +\r\n parms.CategoryName, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n InviteUserFilter(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/UsersDetailFilter?userid=` + parms.userid +`&Name=` + parms.Name + `&Phone=` + parms.Phone + `&Email=` + parms.Email + `&Cmpcode=` + parms.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ChangeRequestFilter(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/GetExchangerequest?requestid=` + parms.requestid +`&requestedby=` + parms.requestedby + `&projectid=` + parms.projectid + `&clientstatus=` + parms.clientstatus, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n approvalfilterReport(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/myApproval?reportTitle=` +\r\n parms.reportTitle +\r\n `&amount=` +\r\n parms.amount, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ExGetAllSubmited(reportId, status, createdBy, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/ExGetAllSubmited?reportId=` + reportId + `&status=` + status + `&createdBy=` + createdBy + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createInsApprovalbulk(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Approval/createInsApprovalbulk`, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetUsers(createdBy, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Approval/spGetUsers?userId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n GetEmployees(createdBy, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetEmployee?EmployeeId=0&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetVendors(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getvendorformapping?cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetEmployeesByReportId(repid, userid, usertype, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getreportbyuser?rpeortid=` + repid + `&userid=` + userid + `&usertype=` + usertype + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetTaskData(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectTask/` + params.projectId + `/` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetCommercial(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getcommercial?projectid=` + params.projectId + `&CmpCode=` + params.CmpCode + `&userid=` + params.userid + `&roleid=` + params.roleid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetEmptaskdetail(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Emptaskdetail?fromdate=` + params.fromdate + `&todate=` + params.todate + `&CmpCode=` + params.CmpCode + `&empId=` + params.empId\r\n + `&taskId=` + params.taskId + `&subTaskId=` + params.subTaskId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Pushnewemployee(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Pushnewemployee?projectid=` + params.projectid + `&fromDate=` + params.fromdate + `&todate=` + params.todate +\r\n `&taskid=` + params.taskId + `&subtaskid=` + params.subTaskId + `&CmpCode=` + params.CmpCode + `&plannedEfforts=` + params.plannedEfforts, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetEmployeetimesheethours(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/GetEmployeetimesheethours?EmployeeId=` + params.EmployeeId + `&projectId=` + params.projectId +\r\n `&taskId=` + params.taskId + `&subtaskId=` + params.subtaskId + `&Cmpcode=` + params.Cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getpendinghours(projectid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getpendingtimesheethours?projectid=` + projectid + `&cmpcode=` +cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createQuestionaire(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/ProjectCloserFeedback`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n saveProjectCloserForm(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ProjectInformation/InsertProjectInformation`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n projectCloserFormFileUpload(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ProjectInformation/UploadFileProjectInformation`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n SendEmailReminder(projectid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/sendforapproval?projectid=`+projectid+`&cmpcode=`+cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n SendEmailReminderProjectAssign(projectid, cmpcode, user) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/sendforapprovalbyuser?projectid=`+projectid+`&cmpcode=`+cmpcode+`&userid=`+user , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetpendinTimesheets(projectid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Gettimeforprojectclosed?projectid=` + projectid + `&cmpcode=` +cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetpendinDataUserWise( userId, projectid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getuserpendingtask?projectid=`+projectid+`&cmpcode=`+cmpcode+`&userid=`+userId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetProjectPhaseEmployee(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/GetProjectPhaseEmployee`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n SaveRemarks(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/saveremarks`, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectAllData(projectID: any, CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetPhaseTask/` + projectID + `/` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getLoggedHours(id,projectID: any, CmpCode: any, taskType) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetLoggedHours?id=${id}&ProjectId=${projectID}&CmpCode=${CmpCode}&name=${taskType}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllEmployeesForSelect(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetAllEmployeesForSelect?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetMerchants(createdBy, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Approval/GetAllMerchent?expenseId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n createOutofOffice(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Approval/createOutofOffice`, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n createPhaseTask(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/createPhaseTask`, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n requestcorrection(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/Timecorrection`, formdata,{headers:headers} )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createComment(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/saveCommit`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getcorrectionlist(params: any) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n\r\n .get(`${environment.apiUrl}Timesheet/Gettimesheetcorrection?userid=` + params.userid + `&cmpcode=` + params.cmpcode +\r\n `&usertype=` + params.usertype + `&filterEnddate=` + params.filterEnddate + `&filterStartdate=`+ params.filterStartdate, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GettimecorrectionExcel(params: any) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimecorrectionExcel?userid=` + params.userid + `&cmpcode=` + params.cmpcode + `&usertype=1`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n Getemployeewiseexcel(params: any) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Getemployeewiseexcel?userid=` + params.userid + `&cmpcode=` + params.cmpcode + `&dateson=` + params.dates, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GettimecorrectionuserExcel(params: any) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimecorrectionuserExcel?userid=` + params.userid + `&cmpcode=` + params.cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n projectOptEmail(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n\r\n .get(`${environment.apiUrl}project/projectoptemail?projectid=` + params.projectid + `&isemail=` + params.isemail\r\n + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetcommentandRoadblock(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetcommentandRoadblock?phaseid=` + params.phaseId + `&subphasid=` + params.subPhaseId\r\n + `&TaskId=` + params.taskId + `&SubTaskId=` + params.subTaskId + `&Type=Roadblock` + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetcommentData(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetcommentandRoadblock?phaseid=` + params.phaseId + `&subphasid=` + params.subPhaseId\r\n + `&TaskId=` + params.taskId + `&SubTaskId=` + params.subTaskId + `&Type=comment` + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetTimesheetDataForSales(projectID: any, Cmpcode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimesheetsalepersionforEamil?projectid=`+projectID+`&Cmpcode=`+Cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetTimesheetDataForTeams(projectID: any, Cmpcode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimesheetteamforEamil?projectid=`+projectID+`&Cmpcode=`+Cmpcode , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetTimesheetDataForCustomersContacts(projectID: any, Cmpcode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimesheetCustomerContactsforEamil?projectid=`+projectID+`&Cmpcode=`+Cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetManagerandCustomer(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetManagerandCustomer?&projectid=` + params.projectid + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getschduledefaulttime(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getschduledefaulttime?projectId=`+params.projectId+`&Cmpcode=`+params.cmpCode+`&reportid=`+params.reportId+`&type=`+params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetEmailSchedule(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getemailschedule?Cmpcode=` + params.CmpCode + `&projectid=` + params.projectid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectWiseSummary(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getprojectwisesummary?projectid=` + params.projectid + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Gettimesheetfortask(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Gettimesheetfortask?taskid=` + params.taskid + `&Cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetIncludetaxAmount(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getincludetaxamount?Cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n projecttaskcopy(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/projecttaskcopy?taskid=` + params.taskid + `&Cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getuploadprojectdocument(userId: any, projectid: any, CmpCode: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getuploadprojectdocument?userid=` + userId + `&projectid=` + projectid + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectlist(params: any) {\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getengedproject?emodelId=` + params.emodelId + `&cmpcode=` + params.CmpCode, opt)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetDocumentList(params: any) {\r\n\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}project/GetengedDocument?emodelId=` + params.emodelId + `&cmpcode=` + params.CmpCode, opt)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n GetEngagementmode(params: any) {\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetEngagementmode?emodelId=` + params.emodelId + `&cmpcode=` + params.CmpCode, opt)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetResourcedepatment(params: any, cmp) {\r\n let opt: RequestOptions\r\n let myHeaders: Headers = new Headers\r\n let token = this.authService.getToken();\r\n myHeaders.set('Authorization', `bearer ${token}`)\r\n opt = new RequestOptions({\r\n headers: myHeaders\r\n });\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetResourcedepatment?userid=` + params + `&cmpcode=` + cmp, opt)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getallroadblocktype(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Roadblock/Getallroadblocktype?id=` + params.Id + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetprojectDocument(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetprojectDocument?pdocumentId=` + params.pdocumentId + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n GetProjectWorkorderwise(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectWorkorderwise?projectid=` + params.pdocumentId + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectResource(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectResource?projectid=` + params.pdocumentId + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateJobbandStatus(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Changejobbandstatus?jovbandid=` + params.jobBandId + `&status=` + params.isActive\r\n + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n UpdateEngagementModel(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/UpdateEngagementModel?emodelId=` + params.emodelId + `&isActive=` + params.isActive\r\n + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Updatectegorystatus(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Category/Updatectegorystatus?CategoryId=` + params.CategoryId +\r\n `&isactive=` + params.isActive + `&cmpcode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateDocumentStatus(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Changedocstatus?engageid=` + params.emodelId + `&documentid=` + params.PDocumentId\r\n + `&status=` + params.status + `&cmpcode=` + params.cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Updateroadblockstatus(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Roadblock/Updateroadblockstatus?id=` + params.RoadblockMasterId + `&cmpcode=` + params.CmpCode\r\n + `&Inactive=` + params.isActive, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createEngagement(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/createEngagement`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateRoadblockMaster(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Roadblock/CreateRoadblockMaster`, formdata ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateprojectDocument(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/CreateprojectDocument`, formdata ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateInvoice(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/CreateProjectInvoiceDetail`, formdata ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Updateinvoicecollection(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/Updateinvoicecollection`, formdata ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateProjectInvoiceDetail(param: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n // headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl} Project/CreateProjectInvoiceDetail`, param,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n DeleteFormID(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/DeleteFormID`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Deleteinvoiceorder(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/Deleteinvoiceorder`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n GetScheduleReportHistory(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getschedulereporthistory?reportname=` + params.reportname + `&Cmpcode=` + params.CmpCode+ `&projectid=`+params.projectid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n ScheduleReportRunNow(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Schedulereport/schedulereportrunNow?projectid=` + params.projectId + `&reportid=` + params.reportId\r\n + `&CmpCode=` + params.CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectCustomerContactsWsr(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectCustomerContactsWsr?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectProjectTeamWsr(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/ScheduleprojectteamWsr?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectSalesPersonWsr(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectSalesPersonWsr?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n\r\n GetProjectCustomerContacts(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectCustomerContacts?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectProjectTeam(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Scheduleprojectteam?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetProjectSalesPerson(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectSalesPerson?projectId=` + params.projectId + `&Cmpcode=` + params.CmpCode +\r\n `&reportid=` + params.reportid + `&type=` + params.type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n ViewDocument(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getdocument?id=` + params.id + `&CmpCode=` + params.CmpCode\r\n + `&phasTaskType=` + params.phasTaskType, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n UpdateExpense(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Approval/EditApprovalExpense`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAmountVald(categoryId, Amount, userId, CmpCode, locationId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAmountVald?categoryId=` +\r\n categoryId +\r\n `&Amount=` +\r\n Amount +\r\n `&userId=` +\r\n userId\r\n + `&CmpCode=` + CmpCode + `&locationId=` + locationId, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getmilagesrate(startDate, categoryId, CmpCode, milragelocation) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllMilagerate?startDate=` +\r\n startDate +\r\n `&categoryId=` +\r\n categoryId\r\n + `&CmpCode=` + CmpCode + `&milragelocation=` + milragelocation, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n createItemizebulk(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/createItemize`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getdefaultperdeim(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/Getdefaultperdeim?CmpCode=`+ CmpCode ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getCurrencyInINR(currencyName, currency, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetCurrencyRS?fromCurrency=` +\r\n currencyName +\r\n `&currecy=` +\r\n currency +\r\n `&CmpCode=` +\r\n CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ForwardForEmp(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Approval/ForwardForEmp`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createAdvncepayment(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Advancepayment/createAdvncepayment`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Tagadvanceinreport(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Advancepayment/Tagadvanceinreport`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Advanceapprove(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Advancepayment/Advanceapprove`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPaidThrough(formdata: any, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/GetPaidThrough?paidThroughId=0` + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n recallreport(reportid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Reimbursement/recallreport?reportid=` + reportid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetRemersedreports(userId: any, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Approval/GetRemersedreports?userid=` + userId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetAllAdvancePayment(advancePaymentId, CmpCode, userId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/GetAllAdvancePayment?advancePaymentId=` +\r\n advancePaymentId + `&CmpCode=` + CmpCode + `&userId=` + userId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n // End Approval Api's\r\n EditReport(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/EditExpenseReport`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n UpdateAllReportName(status, id, cmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/Getlastmappedexpense?status=`+status+`&rpeortid=`+id+`&CmpCode=`+cmpCode,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n DeleteExpense(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/DeleteFormID`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n DeleteCategory(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/DeleteFormID`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllReport(reportId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAllReport?reportId=` + reportId + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllReportbyCustomer(userid, customid, CmpCode, usertype) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/Getcustomerbyreport?userid=` + userid + `&customerid=` + customid + `&CmpCode=` + CmpCode + `&usertype=` + usertype, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n UpdateEmployeeStatus(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Admin/Updateemployeestatus?employeeid=` + params.employeeid + `&InActive=` + params.InActive, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n setDefaultPolicy(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/setDefaultPolicy`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetExpenseHistory(expHistoryId, CmpCode, userid, reportid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetExpenseHistory?expHistoryId=` +\r\n expHistoryId +\r\n `&CmpCode=` + CmpCode + `&userid=` + userid + `&reportid=` + reportid, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n // him code\r\n createPolicyEmployee(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/ExpenseEmployee`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetPurticularWarmExpenseEmp(policyId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Expanse/GetExpenseEmployee?policyId=` + policyId + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n createWarmPolicy(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Policy/createWarms`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n CreateTrainingRequest(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Category/Createtraning`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n UpdateTrainingRequest(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Category/UpdateTrainingRequest`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n createRejoingRequest(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Category/Createrejoining`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetDimeAmount(noofdays, categoryIdDime, subCategoryId, location, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetDimeAmount?noofdays=` +\r\n noofdays + `&categoryId=` + categoryIdDime + `&subcategoryid=` + subCategoryId +\r\n `&location=` + location + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAmountLimit(employeeid, date, CmpCode, reportId) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/GetAmountLimit?employeeid=` +\r\n employeeid + `&date=` + date + `&CmpCode=` + CmpCode + `&reportId=` + reportId, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n projectDashboard(CmpCode) {\r\n //not used\r\n\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Expanse/projectdashboard`, CmpCode\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getprojectdashboard(projectId, CmpCode, datepr) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Schedulereport/getprojectdashboard/` + projectId + `/` + CmpCode + `/` + datepr, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getprojectDashboardbyPid(projectId, CmpCode, datepr) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Admin/getprojectdashboard/` + projectId + `/` + CmpCode + `/` + datepr, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n getCmpCodebyProjectid(projectId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}/Schedulereport/Getcmpcodeproject?projectid=` + projectId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetSubmitFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Approval/GetSubmitFilter?fromDate=` +\r\n params.fromDate + `&toDate=` + params.toDate + `&projectId=` + params.projectId\r\n + `&reportId=` + params.reportId + `&userId=` + params.userId, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n myApprovel(reportId, userId, statusType, CmpCode, from, to) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/myApprovel?reportId=` +\r\n reportId + `&userId=` + userId + `&statusType=` + statusType + `&CmpCode=` + CmpCode+`&fromdate=`+from+`&todate=`+to, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n myApprovelsfilter( userId, statusType, CmpCode, from, to) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Expanse/myApprovels?userId=` + userId + `&statusType=` + statusType + `&CmpCode=` + CmpCode +`&fromdate=`+from+`&todate=`+to, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n advanceApprovalFilter( userId, statusType, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(\r\n `${environment.apiUrl}Advancepayment/GetadvanceApprovel?userId=` + userId + `&statusType=` + statusType + `&CmpCode=` + CmpCode, { headers: headers }\r\n\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetMyadvanceApprovel(advanceid, userId, statusType, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/GetMyadvanceApprovel?advanceid=` +\r\n advanceid + `&userId=` + userId + `&statusType=` + statusType + `&CmpCode=` + CmpCode, { headers: headers }\r\n )\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetSalesPersonsAll(CustomerId, userid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetSalesPersonsAll?CustomerId=` + CustomerId + `&userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n AddSalePerson(formdata: any) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/InsSalePersonCustomer`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetUserData(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetEmployeeDetailsByUserId?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n UpdateUserData(userdatalist) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/UpdateuserEmpDetail`, userdatalist,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n uploadempImage(userdatalist) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/uploadempImage`, userdatalist,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n homedashboard() {\r\n //not used\r\n return this._http\r\n .get(\r\n `/assets/projectdashboard22.json`\r\n )\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getprojectUserID(userId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/GetExProjects?userid=`+ userId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n genrateDalireport(projectId, CmpCode, date) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Dailyreport/GenrateDalireport?projectid=`+projectId+`&CmpCode=`+ CmpCode+`&dateon=`+date, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n getDateValidation(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetemployeeUnassignDate?ProjectId=`+projectId+`&CmpCode=`+ CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n genrateWeeklyreport(projectId, CmpCode, date) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}WeeklyReport/Genrateweeklyeport?projectid=`+projectId+`&CmpCode=`+ CmpCode+`&dateon=`+date, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n getContactAndBugsHistory(email,cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n // headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`https://crg-support.com/api/getalltickets?user=`+email+`&cmpCode=`+cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getPendingTimeHours(Id, projectId, CmpCode, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getpendingtimehours?id=`+Id+`&projectid=`+projectId+`&cmpcode=`+CmpCode+`&tpye=`+type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getmaxapprovaldate(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getmaxapprovaldate?projectid=`+projectId+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n Getmaxapprovaldateuserwise(projectId, CmpCode, userid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getmaxapprovaldateuserwise?projectid=`+projectId+`&cmpcode=`+CmpCode+`&userid=`+userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n deleteContactSupport(obj) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Category/Deletecontactsupport?id=`+obj.id +`&type=`+obj.type+`&deletedby=`+obj.deletedby+`&CmpCode=`+obj.cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n deleteVendor(obj) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/deletevendor?deletedby=`+obj.user+`&id=`+obj.delId+`&cmpcode=`+obj.cmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getTrainingListbyUserID(userId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Category/Gettraining?userid=`+ userId + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getProjectInvoiceDetail(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/ProjectInvoiceDetail?projectid=`+ projectId + `&cmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getProjectInvoiceFiltered(Customer,from, to, projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/ProjectInvoicereport?customerid=`+Customer+`&projectid=`+projectid+`&fromdate=`+from+`&todate=`+to+`&cmpcode=`+ CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getinvoiceheader(projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getinvoiceheader?projectid=`+ projectId + `&cmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n homedashboardsummary(userId, projectId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectsummary/` + projectId + `/` + CmpCode, { headers: headers })\r\n //.get(`${environment.apiUrl}Analytics/getexpense/`+userId)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getExpenseDeshboard(userId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexpense/` + userId + `/` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getExpenseFilterDeshboard(userId, CmpCode, fromdate, todate, projectId, customerID, employeeId, UserType) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexpense/` + userId + `/` + CmpCode + `/` + fromdate + `/` + todate + `/` + projectId + `/` + customerID + `/` + employeeId + `/` + UserType, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n // report filter api\r\n getExpenseDetFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getexpansedetail/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}/${params.useridselect}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getMomDetailReportFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getmomreport/${params.Userid}/${params.projectid}/${params.fromdate}/${params.todate}/${params.CmpCode}` , { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectProfitDetailFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectprofitablity/${params.Userid}/${params.projectid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getPlannedVsActualFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getplannedvsactual/${params.Userid}/${params.projectid}/${params.fromdate}/${params.todate}/${params.status}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getOverDueFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getoverduetask/${params.Userid}/${params.projectid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getResourceAllocationFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexrptresourceallocation/${params.Userid}/${params.customerid}/${params.projectid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getCustomerExpanseFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getcustomerexpanse/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getMilegeExpanseFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getmilegeexpanse/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getProjectLeavePlanFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getprojectleaveplannerreport/${params.Userid}/${params.projectid}/${params.customerid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getPolicyViolationFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getpolicyviolation/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getGetmontlyleave(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/Getmontlyleave?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&leavetype=0&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getExitEmployeesList(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/GetExitEmployeesList?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getTimeSheetDetailList(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/EmployeetimesheetdetailMonthlywise?projetid=${params.projectid}&cmpcode=${params.cmpcode}&fromdate=${params.fromdate}&todate=${params.todate}&userid=${params.userid}&customerid=${params.customerid}&recordTimeStatus=${params.recordTimeStatus}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n getUsersonBoarded(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/GetUsersonBoarded?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getUsersoffBoarded(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/GetUsersoffBoarded?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectoffBoarded(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/ProjectoffBoarded?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getProjectonBoarded(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}OrganizationReport/ProjectonBoarded?startdate=${params.fromdate}&departmentId=${params.departmentId}&designationId=${params.designationId}&enddate=${params.todate}&userid=${params.Userid}&cmpcode=${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getUserwiseExpanseFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getuserwiseexpanse/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}/${params.status}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n ExpenseRepHomepage(userId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getGetApprovelReport?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getRoadBlockReportFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getroadblock/${params.projectid}/${params.fromdate}/${params.todate}/${params.CmpCode}/${params.UserType}/${params.userId}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getResourceWorkFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/getexrptresourceworkdetail/${params.Userid}/${params.projectid}/${params.employeeid}/${params.fromdate}/${params.todate}/${params.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getClientVsPOFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/GetClientVsPo?EmployeeId=${params?.Userid}&fromDate=${params?.fromdate}&toDate=${params?.todate}&CmpCode=${params?.CmpCode}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getResourceVsPoFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/GetResourceVsPo?EmployeeId=${params?.Userid}&fromDate=${params?.fromdate}&toDate=${params?.todate}&CmpCode=${params?.CmpCode}&projectid=${params?.projectid}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getCategoryExpanseFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getcategoryexpanse/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}/${params.useridselect}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n approvalExpense(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Approval/createInsApprovalbulk`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n GetChangeRequestFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/GetExchangerequest?projectid=` + params.projectid + `&status=` + params.status + `&employeeId=` + params.employeeid + `&fromdate=` + params.fromdate + `&todate=` + params.todate + `&Cmpcode=` + params.cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUnsubmittedFilter(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getunsubmittedexpanse/${params.Userid}/${params.customerid}/${params.reportid}/${params.fromdate}/${params.todate}/${params.CmpCode}/${params.useridselect}`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllemployees(employeeid, CmpCode) {\r\n\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Approval/GetAllemployees?employeeid=` + employeeid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetAllemployeesfor(employeeid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Approval/GetAllemployee?employeeid=` + employeeid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n GetMileagecategory(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetMileagecategory?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n Getdimecategory(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/Getdimecategory?CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetcurrencyOt(base, symbols, end_at, CmpCode) {\r\n return this._http\r\n .get(`https://api.exchangeratesapi.io/latest?access_key=d65076a7a3f032587fb6b08d413e817f&base=` + base + `&symbols=` + symbols + `&end_at=` + end_at)\r\n // .get(`http://apilayer.net/api/live?access_key=44cba030eb58d4746260a9e8756e4da6¤cies=`+base+`&source=`+symbols+\r\n // `&format=1&dateformate=`+end_at)\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetChangerequestRPT(model) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/GetChangerequestRPT?requestedby=` + model.requestedby +\r\n `&projectid=` + model.projectid + `&clientstatus=` + model.clientstatus + `&fromDate=` + model.fromDate + `&toDate=` + model.toDate + `&Cmpcode=` + model.CmpCode + `&UserType=` + model.UserType + `&userId=` + model.userId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n GetReportuser(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Expanse/ExReportuserbyApp?userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n leaveCompOffBulkApproval(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Leave/LeaveCompOffBulkApproval`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n EventDecline(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/EventDecline`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n getKanbanData(value, cmpcode, userid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetPhaseTask/` + value + '/' + cmpcode + '/' + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n //\r\n PostKanbanData(parms) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/createPhaseTask`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n PostUpdateStringPredeseccor(parms) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/editPredecessorproject`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n PostMomData(parms) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}mom/UpdateMomactionstatus`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getShedularTimeSheetData(fromdate, todate, projectId, empId, cmpcode, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Gettimesheetnew?EmployeeId=` + empId + '&fromDate=' + fromdate + '&toDate=' + todate + '&CmpCode=' + cmpcode + '&projectId=' + projectId + '&type=' + type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n\r\n getShedularResoruceDate(fromdate, todate, projectId, empId, cmpcode, userid, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Gettimesheetresource?EmployeeId=` + empId + '&fromDate=' + fromdate + '&toDate=' + todate + '&CmpCode=' + cmpcode + '&projectId=' + projectId + '&userid=' + userid + '&type=' + type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n getShedularTimeSheetHoliday(fromdate, todate, empId, cmpcode, projectid) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GetProjectHolidaystimesheet?EmployeeId=` + empId + '&projectId=' + projectid + '&CmpCode=' + cmpcode + '&fromDate=' + fromdate + '&toDate=' + todate, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n getShedularTimeSheetMultiData(userid, projectId, fromdate, todate, empId, cmpcode, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Gettimesheetmulti?EmployeeId=` + empId + '&fromDate=' + fromdate + '&toDate=' + todate + '&CmpCode=' + cmpcode + '&projectId=' + projectId + '&userid=' + userid + '&type=' + type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n GettimesheetdatewiseforDetail(userid, projectId, fromdate, todate, empId, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Gettimesheetdatewise?EmployeeId=` + empId + '&fromDate=' + fromdate + '&toDate=' + todate + '&CmpCode=' + cmpcode + '&projectId=' + projectId + '&userid=' + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n forDetailForResource(userid, projectId, fromdate, todate, empId, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/Getpoolresource?EmployeeId=` + empId + '&fromDate=' + fromdate + '&toDate=' + todate + '&CmpCode=' + cmpcode + '&projectId=' + projectId + '&userid=' + userid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n Getorginzationchartlist(userid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getorgchart?projectid=` + userid + '&cmpcode=' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n Getorginzationteamlist(userid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/getorgcharprojectteam?projectid=` + userid + '&cmpcode=' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n\r\n }\r\n\r\n postApprovalData(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/TimesheetApprovemulti`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getResourceAllocationData(projectId, fromdate, todate, userid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}analytics/gettaskownersheet/` + fromdate + `/` + todate + '/' + projectId + '/' + userid + '/' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getPdfViewerData(projectId, cmpcode, ondate, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/Getpdfviwer?projectId=` + projectId + '&Cmpcode=' + cmpcode + '&onDate=' + ondate + '&type=' + type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n postTaskpercentageKanban(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/TimesheetPercentage/`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n postReportDetail(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}project/savereportdetail`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n projectBudgetDetail(userId, projectId, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/projectbudget?`+'projectid=' + projectId + '&cmpcode=' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n apigetReportDetail(cmpcode, type) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getpmsreport?Cmpcode=` + cmpcode + '&type=' + type, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n\r\n // mom/Getmomkanban?userid=10419&CmpCode=1\r\n getMomList(userid, cmpcode, projectId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // .pipe(map((response: Response) => response));\r\n return this._http\r\n .get(`${environment.apiUrl}mom/Getmomkanban?userid=` + userid + '&CmpCode=' + cmpcode+'&projectId='+projectId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n getHolidayList(cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // .pipe(map((response: Response) => response));\r\n return this._http\r\n .get(`${environment.apiUrl}Holiday/GetClientHolidayList?Cmpcode=` + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n saveClientHoliday(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Holiday/SaveclientHoliday`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n multiApproveTimecorrection(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/TimecorrectionApprovemulti`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n deleteClientHoliday(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Expanse/DeleteFormID`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getHolidayListMapping(Custid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // .pipe(map((response: Response) => response));\r\n return this._http\r\n .get(`${environment.apiUrl}Holiday/Getclientholidaymapping?customerid=` + Custid + '&Cmpcode=' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n\r\n }\r\n AddHoliday(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Holiday/Customerholidaymapping`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ConfiguringZohoPeople(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/ConfiguringZohoPeople`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getGoogleToken(cmpCode, user) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/GetTokens?Cmpcode=`+cmpCode+'&UserId='+user+'&IsActive=true', { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getMicrosoftToken(cmpCode, user) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/MicrosoftUserTokens?Cmpcode=`+cmpCode+'&UserId='+user+'&IsActive=true', { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n getGoogleTokenHeader(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/GoogleUserTokens?Cmpcode=`+params.Cmpcode+`&UserId=`+params.UserId+`&IsActive=`+params.IsActive, params, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getGoogleTokenSync(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/GetTokens?Cmpcode=`+params.Cmpcode+`&UserId=`+params.UserId+`&IsActive=`+params.IsActive, params, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getMicrosoftTokenHeader(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/GetMicroSoftTokens?Cmpcode=`+params.Cmpcode+`&UserId=`+params.UserId+`&IsActive=`+params.IsActive, params,{ headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getMicrosoftTokenSync(params) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/MicrosoftUserTokens?Cmpcode=`+params.Cmpcode+`&UserId=`+params.UserId+`&IsActive=`+params.IsActive, params,{ headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ConfiguringMicroSoft(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/ConfiguringMicroSoft`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n ConfiguringGoogle(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/ConfiguringGoogle`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getCategoryListbyReportid(reportid, cmpcode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n //http://localhost:63000/api/Advancepayment/Getreportcustomer?reportid=92&cmpcode=1\r\n // .pipe(map((response: Response) => response));\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/Getreportcustomer?reportid=` + reportid + '&Cmpcode=' + cmpcode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getFaqCategory(categoryId) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getfaqcategory?categoryid=` + categoryId, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n AddFaqDetail(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/addfaqdetail`, parms, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getFaqDetail(id, search) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getfaqdetail?id=` + id + '&search=' + search, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n getAccounts() {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/Getservice`, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n getHeaders() {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get('https://geolocation-db.com/json', { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n\r\n Employeecheckinreport(params: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/checkemployeereport?userid=` + params.employee + '&cmpcode=' + params.cmpcode + '&checkinDate=' + params.fromdate\r\n + '&checkoutDate=' + params.todate, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n getUserAttendance(userid,cmpcode,checkIn,checkout) {\r\n //Admin/Getuserattendeance?userid=&cmpcode=&checkintime=&checkouttime=\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getuserattendeance?userid=` + userid + '&cmpcode=' + cmpcode + '&checkintime=' + checkIn\r\n + '&checkouttime=' + checkout, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\n ModifyTimeCorrection(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Admin/timecorrectionapprovalreject`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n }\r\n\r\ngetProjectForCustomer(userid,cmpcode)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getcontactuserbyproject?contacttid=` + userid + '&cmpcode=' + cmpcode ,\r\n { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetProjectForSale(userid,cmpcode)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetSalespersonbyproject?salepersonid=` + userid + '&cmpcode=' + cmpcode ,\r\n { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetProjectForInviteUserList(userid,cmpcode)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getuserbyproject?userid=` + userid + '&cmpcode=' + cmpcode ,\r\n { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetCustomerForInviteUserList(userid,cmpcode)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getuserbycustomer?userid=` + userid + '&cmpcode=' + cmpcode ,\r\n { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetContactSupportList(params)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/CrreateFeedBackProduct`, params,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetScheduleServices(): any{\r\n const headers = new Headers()\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json')\r\n return this._http\r\n .get(`${environment.apiUrl}Accounts/Getschdeulereport`,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetContactSupportListconcern(params)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/CreateFeedBackProject`, params,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nAdminApproval(parms)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Leave/AllLevelApproval`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nAdminApprovalForCompoff(parms)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}CompensatoryOff/AlllevelCompOffApproval`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nCompoffApproval(parms)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}CompensatoryOff/CompOffApproval`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetApproveList(parms)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Leave/LeaveApproval`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetConfiguringZohoPeople(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getConfiguringZohoPeople?Cmpcode=`+parms, {body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetConfiguringMicroSoft(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getConfiguringMicroSoft?Cmpcode=`+parms,{body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetConfiguringMicroSoftHeader(cmp, user){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getConfiguringMicroSoftEmployees?Cmpcode=`+cmp+'&UserId='+user+'&IsActive=true',{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nSaveZohoIntegrationSettings(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/ZohoIntegrationSettings`,parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetZohoSettings(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getZohoIntegrationSettings?Cmpcode=`+parms,{body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetConfiguringGoogle(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getConfiguringGoogle?Cmpcode=`+parms,{body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetConfiguringGoogleHeader(cmp, user){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/getConfiguringGoogleEmployees?Cmpcode=`+cmp+'&UserId='+user+'&IsActive=true',{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nPauseSync(data){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}ConfigureKeys/Pause?IsActive=`+data.IsActive+`&Cmpcode=`+data.Cmpcode+`&UserId=`+data.UserId+`&serviceType=`+data.serviceType,{body:data,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nIsConfigurationsExist(cmp){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/IsConfigurationsExist?Cmpcode=`+cmp,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nIsConfigurationsEmployeeExist(cmp, user){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}ConfigureKeys/IsConfigurationsExistForEmployee?Cmpcode=`+cmp+`&UserId=`+user,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetconfigurationHistory(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/GetconfigurationHistory?cmpcode=`+parms+'&type=MicroSoft',{body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetIntegrationStatus(parms){\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/isexistsconfiguration?cmpcode=`+parms,{body:parms,headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetReportingTo(cmpcode)\r\n{\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n // debugger;\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getreportingtousers?Cmpcode=` + cmpcode ,\r\n { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetProjectFeedbackFilter(params) {\r\n debugger\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProductFeedbackrpt?fromdate=`+params.fromdate+'&todate=' + params.todate+'&userid=' + params.userid+'&cmpcode=' + params.cmpcode, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetresourcefreeondate(params) {\r\n debugger\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getresourcefreeondate?dateon=`+params.dateon+'&projectid=' + params.projectid+'&CmpCode=' + params.cmpcode+'&userid='+params.userid, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetProductFeedbackrpt(params) {\r\n debugger\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Analytics/Getresourcetimeprojectwise?formdate=`+params.fromdate+'&todate=' + params.todate+'&dateon=' + params.dateon+'&CmpCode=' + params.cmpcode+'&userid=' + params.userid, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetProjectConcernFilter(params) {\r\n debugger\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectFeedbackrpt?fromdate=`+params.fromdate+'&todate=' + params.todate+'&userid=' + params.userid+'&cmpcode=' + params.cmpcode+'&projectid=' + params.projectid, { headers: headers })\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\npostCommentData(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Timesheet/Savecomments`, parms,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetReportingDetail(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getmyreportingteam?userid=` + userid + `&CmpCode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\npostReportingDetail(formdata: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/Reportingmanagertransfer`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetTabSelection(userid, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Advancepayment/Getsubsitudestep?userid=` + userid + `&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\nLeaveGetPolicy(CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Policy/GetLeavePolicy?CmpCode=`+ CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\npostWorkOrder(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n //.post(`${environment.apiUrl}ProjectOrderDetail/CreateWorkOrderDetail`, parms,{headers:headers})\r\n .post(`${environment.apiUrl}Project/CreateWorkOrderDetail`, parms,{headers:headers})\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\npostWorkOrderImages(formdata: any) {\r\n debugger;\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n\r\n return this._http\r\n .post(`${environment.apiUrl}Project/uploadWorKOrder`, formdata,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\npostInvoiceImages(parms: any) {\r\n debugger;\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n return this._http\r\n //.post(`${environment.apiUrl}ProjectOrderDetail/CreateWorkOrderDetail`, parms,{headers:headers})\r\n .post(`${environment.apiUrl}project/uploadinvoiceOrder`, parms,{headers:headers})\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetWorkOrderDetail(projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetProjectWorkorderDetail?projectid=`+ projectid+`&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\nGetmonthwisetimesheetRPT(Customer,from, to, projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GetmonthwisetimesheetRPT?fromdate=`+from+`&todate=`+to+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngettimesheetNonWorkingRPT(Customer,from, to, projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Timesheet/GettimesheetNonWorkingRPT?fromdate=`+from+`&todate=`+to+`&cmpcode=`+CmpCode+`&projectid=`+projectid, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetWorkOrderFiltered(Customer,from, to, projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/GetProjectWorkorderreport?customerid=`+Customer+`&projectid=`+projectid+`&fromdate=`+from+`&todate=`+to+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetCustomerForWorkOrderDetail(projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getprojectcustomerwise?projectid=`+projectid+`&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetExtendworkorderdetail(pId, wId, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/GetExtendworkorderdetail?workorderid=`+wId+`&projectid=`+pId+`&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\nsaveExtendworkorderdetail(data) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .post(`${environment.apiUrl}Project/ProjectWorkOrderExtend`,data, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\ngetProjectsForWorkOrder(id,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getworkorderbreakup?workOrderNumber=`+id+`&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetProjectsForInvoice(wid,Iid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Getinvoicebreakup?workOrderNumber=`+wid+`&invoiceno=`+Iid+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetServiceListView(pid,Iid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}project/Invoiceservicedetail?projectid=`+pid+`&invoiceid=`+Iid+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetServiceListEdit(pid,Wid,Iid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getservicedetail?projectid=`+pid+`&workordernumber=`+Wid+`&invoiceid=`+Iid+`&cmpcode=`+CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n// Project/GetProjectWorkorderDetail?projectid=&cmpcode=\r\ngetWorkOrderHeader(projectid,CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Project/Getworkorderheader?projectid=`+ projectid+`&cmpcode=` + CmpCode, { headers: headers })\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetDeletWordOrderDetail(parms: any) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n //.post(`${environment.apiUrl}ProjectOrderDetail/CreateWorkOrderDetail`, parms,{headers:headers})\r\n .post(`${environment.apiUrl}Project/DeleteProjectWorkorder`, parms,{headers:headers})\r\n\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\ngetUserMapLocation(projectid,userid, stdate,enddate, CmpCode) {\r\n const headers = new Headers();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n return this._http\r\n .get(`${environment.apiUrl}Admin/Getcheckincheckoutlocationteam?projectid=`+projectid+`&userid=`+userid+`&startdate=`+stdate+`&enddate=`+enddate+`&cmpcode=`+CmpCode ,{headers:headers})\r\n .map((response: Response) => response.json())\r\n .toPromise();\r\n}\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { AuthService } from './auth.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class JwtInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private authService: AuthService) { }\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // add authorization header with jwt token if available\r\n let currentUser = {\r\n token: this.authService.getToken()\r\n }\r\n if (currentUser.token) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `bearer ${currentUser.token}`\r\n }\r\n });\r\n }\r\n return next.handle(request);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class UdfService {\r\n updateMultipleUdfData(params: any): any {\r\n const URL = environment.apiUrl + \"/Admin/UpdateAdHocAttributeValues\";\r\n return this.http.post(URL, params).toPromise();\r\n }\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n getUdfData(params) {\r\n const URL = environment.apiUrl + \"/Admin/GetAllAdHocAttributes\";\r\n return this.http\r\n .post(URL, params).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n \r\n getUdfDataExport(params) {\r\n const URL = environment.apiUrl + \"/Admin/GetAllAdHocAttributesForExport\";\r\n return this.http\r\n .post(URL, params).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n \r\n getUdfDataAsync(params): Promise {\r\n const URL = environment.apiUrl + \"/Admin/GetAllAdHocAttributes\";\r\n return this.http.post(URL, params).toPromise();\r\n }\r\n getUdfDataValuesAsync(params): Promise {\r\n const URL = environment.apiUrl + \"/Admin/GetAllAdHocAttributeValues\";\r\n return this.http.post(URL, params).toPromise();\r\n }\r\n\r\n getAllCount() {\r\n const URL = environment.apiUrl + \"/Admin/GetAdHocAttributesCount\";\r\n return this.http.get(URL).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateUdfData(udfData) {\r\n const URL = environment.apiUrl + \"/Admin/UpdateAdHocAttribute\";\r\n return this.http\r\n .post(URL, udfData).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n deleteUdf(params) {\r\n const URL = environment.apiUrl + \"/Admin/DeleteAdHocAttribute/\" + params;\r\n return this.http\r\n .post(URL, null).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllUdfForExport() {\r\n const URL = environment.apiUrl + \"/Admin/GetAllAdHocAttributesForExport\";\r\n return this.http.get(URL).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveUdfData(udfData) {\r\n const URL = environment.apiUrl + \"/Admin/CreateAdHocAttribute\";\r\n return this.http\r\n .post(URL, udfData).toPromise();\r\n // .pipe(map((response: Response) => response));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { HttpHeaders, HttpClient } from '@angular/common/http';\r\nimport { environment } from '../../environments/environment';\r\nimport { AuthService } from '../services/auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n\r\n constructor(private http: HttpClient, private authService: AuthService) {\r\n\r\n }\r\n\r\n /**\r\n * @name getUserList\r\n * @description\r\n * Fetch Users List\r\n */\r\n getUserList(params) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllEmployees';\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getTotalCount(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetEmployeeCount?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n createEmployee(dataParams) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/CreateEmployee';\r\n return this.http.post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getDepartmentList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllDepartmentsForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getDesignationList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllDesignationsForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getPayrollList() {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllPayrollState',\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'PayrollState'\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getManagerList(CmpCode) {\r\n \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllEmployeesForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getRateList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllRateList/'+CmpCode,\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'RateList'\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getPhysicalOfficeList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllPhysicalList/'+CmpCode,\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'PhysicalList'\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getCountryList(CmpCode) {\r\n\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllCountryForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getStateList(CountryId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetStateByCountry?id=' + CountryId +\"&Cmpcode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getCityList(StateId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetCitiesByState/' + StateId +\"/\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getZipCodeList(CityId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetZipcodeByCity/' + CityId +\"/\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n deleteUser(data) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n \r\n const URL = environment.apiUrl + '/Admin/DeleteEmployee';\r\n return this.http.post(URL, data, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n updateUserData(userData) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/UpdateEmployee';\r\n return this.http.post(URL, userData, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n saveUdfData(udfData,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/CreateAdHocAttribute/'+CmpCode;\r\n return this.http.post(URL, udfData, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n fetchManagerList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllEmployeesForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n fetchModuleList(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllModulesForSelect/'+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n fetchOrgStructure(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllOrgStructure',\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'orgSOrder',\r\n CmpCode:CmpCode\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n fetchOrgStructureElem(CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllOrgStructureLevel',\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'orgSOrder',\r\n CmpCode:CmpCode\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n addOrgStructure(data) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/CreateOrgStructureMapping';\r\n return this.http.post(URL, data, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n updateUserMapping(data,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/UpdateOrgStructureMapping/'+CmpCode;\r\n return this.http.post(URL, data, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getAllOrgStructure() {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllOrgStructureMapping',\r\n params = {\r\n PageNo: 1,\r\n NoOfRecords: 10,\r\n SortType: 'asc',\r\n FieldName: 'ModuleId'\r\n };\r\n return this.http.post(URL, params, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getOrgStructureMappingByUserId(UserId,CmpCode) {\r\n \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetOrgStructureMappingByUserId/' + UserId +\"/\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n deleteUserMapping(mapId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/DeleteUserMapping/' + mapId +\"/\"+CmpCode;\r\n return this.http.post(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getViewUserList(id,CmpCode) {\r\n \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetUserViewList/'+CmpCode+\"/\" + id;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getAllRolesForSelect(CmpCode) {\r\n\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllRolesForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n assignRolesToUser(data) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Accounts/AssignRolesToUser';\r\n return this.http.post(URL, data, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n getAllRolesByUserId(UserId,CmpCode) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Accounts/GetAllRolesByUserId?Id=' + UserId +\"&CmpCode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n unAssignRolesToUser(data) {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Accounts/UnAssignRolesToUser';\r\n return this.http.post(URL, data, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n }\r\n\r\n getAllJobBandsForSelect(CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllJobBandsForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n getAllLocationsForSelect(CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + '/Admin/GetAllLocationsForSelect?CmpCode='+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n createUserEmployee(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/CreateUserEmployee\";\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n getEmployeeDetailsByUserId(userId,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetEmployeeDetailsByUserId?UserId=\" + userId +\"CmpCode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Work Experience\r\n getAllEmployeeWorkExperience(employeeId,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllEmployeeWorkExperience?EmployeeId=\" + employeeId +\"CmpCode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n saveEmployeeWorkExperience(dataParams) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveEmployeeWorkExperience\";\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n deleteEmployeeWorkExperience(id,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteEmployeeWorkExperience/\" + id +\"/\"+CmpCode;\r\n return this.http\r\n .post(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Ecucation\r\n getAllEmployeeEducation(employeeId,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllEmployeeEducation?EmployeeId=\" + employeeId+\"CmpCode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n saveEmployeeEducation(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveEmployeeEducation/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n deleteEmployeeEducation(id,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteEmployeeEducation/\" + id +\"/\"+CmpCode;\r\n return this.http\r\n .post(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Dependents\r\n getAllEmployeeDependents(employeeId,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/GetAllEmployeeDependents?EmployeeId=\" + employeeId +\"CmpCode=\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n saveEmployeeDependents(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveEmployeeDependents/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n deleteEmployeeDependent(id,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/DeleteEmployeeDependent/\" + id +\"/\"+CmpCode;\r\n return this.http\r\n .post(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Department\r\n createDepartment(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/CreateDepartment/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Designation\r\n createDesignation(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/CreateDesignation/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n //Location\r\n saveLocation(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveLocation/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n // Job Band\r\n saveJobBand(dataParams,CmpCode) {\r\n try {\r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/SaveJobBand/\"+CmpCode;\r\n return this.http\r\n .post(URL, dataParams, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n validateEmployeeCode(empCode,CmpCode) {\r\n try {\r\n \r\n const headers = new HttpHeaders();\r\n let token = this.authService.getToken();\r\n headers.append('Authorization', `bearer ${token}`)\r\n headers.append('Content-Type', 'application/json');\r\n const URL = environment.apiUrl + \"/Admin/ValidateEmployeeCode?empCode=\" + empCode +\"/\"+CmpCode;\r\n return this.http.get(URL, { headers: headers })\r\n // .pipe(map((response: Response) => response));\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: true,\r\n\r\n //siteUrl: 'https://leaveapi.geterpnow.com/',\r\n //apiUrl: 'https://leaveapi.geterpnow.com/api',\r\n\r\n // siteUrl: 'http://103.10.234.199/api/',\r\n // apiUrl: 'http://103.10.234.199/api/api/',\r\n\r\n \r\n siteUrl: 'https://demo.pm-studio.com/api/',\r\n apiUrl: 'https://demo.pm-studio.com/api/api/',\r\n AnalyticKey: '9877769078@kunalMalhotra',\r\n // Success and error alert in duplicate case\r\n reOpenMsg: 'Project successfully re-opened.',\r\n SuccessAlert: 'alert alert-success',\r\n ErrorAlert: 'alert alert-danger',\r\n LoginEmailError: 'Invalid User Name',\r\n LoingPasswordError: 'Password is incorrect',\r\n\r\n //Dynamic Add validation messages\r\n DynamicCountry: \"Please enter country\",\r\n DynamicState: \"Please select all required field (country)\",\r\n DynamicCity: \"Please select all required field (country, State)\",\r\n DynamicZipCode: \"Please select all required field (country, State, ZipCode )\",\r\n\r\n //Validation Message\r\n requiredMsg: 'Required',\r\n NumberMsg: 'Only numbers are allowed',\r\n MobileMsg: \"Invalid mobile number\",\r\n TelephoneMsg: \"Invalid telephone number\",\r\n EmailMsg: \"Invalid Email\",\r\n countryCode: \"Invalid Code\",\r\n ConfirmMsg: \"Do you really want to add this value ?\",\r\n websiteMsg: \"Invalid URL\",\r\n TimeOutInterval: 4000,\r\n ImportInterval: 15000,\r\n alertTimeoutInertval: 7000,\r\n NotDeleteHierarchyTimeout: 10000,\r\n\r\n\r\n //Success, udpate and delete message\r\n deleteMsg: 'Are you sure, you want to delete this record?',\r\n assignRoleAllPermissionsMsg: 'Do you really want to assign all the permissions to this role?',\r\n unRoleAssignAllPermissionsMsg: 'Do you really want to unassign all the permissions from this role?',\r\n successMsg: 'Record Added Successfully',\r\n updateMsg: 'Record Updated Successfully',\r\n deleteSuccessMsg: 'Record Deleted Successfully.',\r\n errorOccurredMsg: 'An error has occurred',\r\n\r\n //Model Messages\r\n AddModel_msg: 'Add',\r\n EdtiModel_msg: 'Edit',\r\n ViewModel_msg: 'View',\r\n\r\n //Button Text\r\n AddButton_text: \"Save\",\r\n UpdateButton_text: \"Update\",\r\n\r\n //minimum one item add\r\n MinOneAddress: 'Minimum one address is required',\r\n RequiredLocationHierarchy: 'Location hierarchy is required',\r\n PreSaveAddress: 'Please save edited address first',\r\n DuplicateRadio: 'To change the primary address, you need to edit the previous one',\r\n MinOnePrimary: 'Minimum one primary address is required',\r\n AlreadyPrimaryMsg: 'Do you really want to change the primary address ?',\r\n RevertChanges: 'Do you want to revert the changes ?',\r\n NotDeletePrimaryAddress: 'This is a primary record. Please mark another address as primary to delete this record.',\r\n Savepreviousvalue: 'You need to save the edited address before editing a new address. \\n Do you want to save the edited address?'\r\n\r\n};\r\n\r\n","import { enableProdMode, } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n // enableProdMode();\r\n if (window) {\r\n window.console.log = function () { };\r\n window.console.error = function () { };\r\n window.console.warn = function () { };\r\n document.addEventListener('contextmenu', function (e) {\r\n e.preventDefault();\r\n });\r\n }\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}