예제 #1
0
 public AdminController(IUserDetailRepository userDetailRepository
                        , ILeaveRepository leaveRepository, ILeaveMasterRepository leaveMasterRepository)
 {
     _userDetailRepository  = userDetailRepository;
     _leaveRepository       = leaveRepository;
     _leaveMasterRepository = leaveMasterRepository;
 }
예제 #2
0
 public LeavesController(IUserRepository userRepository,
                         ILeaveRepository leaveRepository,
                         ILeaveEntitlementRepository leaveEntitlementRepository,
                         IEmployeeRepository employeeRepository,
                         ILeaveEntitlementUpdateRepository leaveEntitlementUpdateRepository,
                         ILeaveService leaveService,
                         EmailComposerService emailComposerService,
                         ILeaveTimePeriodRepository leaveTimePeriodRepository,
                         ITimeSheetRepository timeSheetRepository,
                         ITimeSheetLineItemRepository timeSheetLineItemRepository,
                         ITimeSheetActivityRepository timeSheetActivityRepository,
                         IProjectRepository projectRepository,
                         GridDataContext dataContext,
                         IUnitOfWork unitOfWork)
 {
     _userRepository             = userRepository;
     _leaveRepository            = leaveRepository;
     _leaveEntitlementRepository = leaveEntitlementRepository;
     _leaveService                = leaveService;
     _employeeRepository          = employeeRepository;
     _emailComposerService        = emailComposerService;
     _leaveTimePeriodRepository   = leaveTimePeriodRepository;
     _timeSheetRepository         = timeSheetRepository;
     _timeSheetLineItemRepository = timeSheetLineItemRepository;
     _timeSheetActivityRepository = timeSheetActivityRepository;
     _projectRepository           = projectRepository;
     _dataContext = dataContext;
     _unitOfWork  = unitOfWork;
 }
 public LeavesController(IMapper mapper, IUserRepository userRepo, ILeaveRepository leaveRepo, IHostEnvironment environment, ILogger logger, IConfiguration configuration)
 {
     Mapper        = mapper;
     UserRepo      = userRepo;
     LeaveRepo     = leaveRepo;
     Environment   = environment;
     Logger        = logger;
     Configuration = configuration;
 }
예제 #4
0
 /// <summary>
 /// 请假单服务实现的构造函数
 /// </summary>
 public LeaveService(IUnitOfWork unitOfWork,
                     ILeaveRepository leaveRepository,
                     ILeaveTypeRepository leaveTypeRepository,
                     IUserRepository userRepository)
 {
     _unitOfWork          = unitOfWork;
     _leaveRepository     = leaveRepository;
     _leaveTypeRepository = leaveTypeRepository;
     _userRepository      = userRepository;
 }
예제 #5
0
 public CalendarController(IHolidayRepository holidayRepository,
                           ITimeSheetRepository timeSheetRepository,
                           ITaskRepository taskRepository,
                           IAttendanceRepository attendanceRepository,
                           ILeaveRepository leaveRepository)
 {
     _holidayRepository    = holidayRepository;
     _timeSheetRepository  = timeSheetRepository;
     _taskRepository       = taskRepository;
     _attendanceRepository = attendanceRepository;
     _leaveRepository      = leaveRepository;
 }
 public TimeSheetReminderController(ILeaveRepository leaveRepository,
                                    IHolidayRepository holidayRepository,
                                    IUserRepository userRepository,
                                    EmailComposerService emailComposerService,
                                    ITimeSheetRepository timeSheetRepository)
 {
     _leaveRepository      = leaveRepository;
     _holidayRepository    = holidayRepository;
     _userRepository       = userRepository;
     _timeSheetRepository  = timeSheetRepository;
     _emailComposerService = emailComposerService;
 }
예제 #7
0
 public LeaveService(ILeaveTypeRepository leaveTypeRepository,
                     ILeaveEntitlmentRepository leaveEntitlmentRepository,
                     ILeavePeriodRepository leavePeriodRepository,
                     IEmployeeRepository employeeRepository,
                     ILeaveRepository leaveRepository,
                     ILeaveRequestRepository leaveRequestRepository)
 {
     _leaveTypeRepository       = leaveTypeRepository;
     _leaveEntitlmentRepository = leaveEntitlmentRepository;
     _leavePeriodRepository     = leavePeriodRepository;
     _employeeRepository        = employeeRepository;
     _leaveRepository           = leaveRepository;
     _leaveRequestRepository    = leaveRequestRepository;
 }
예제 #8
0
 public LeaveRequestService(ILeaveRepository leaveRepository, ILeaveRequestViewModelFactory leaveRequestViewModelFactory,
                            IUsersRepository usersRepository, ICompanyRepository companyRepository,
                            ISessionStateService session, ILookupRepository lookupRepository,
                            IEmployeeOnBoardRepository employeeRepository,
                            IGradeRepository gradeRepository)
 {
     this.leaveRepository = leaveRepository;
     this.leaveRequestViewModelFactory = leaveRequestViewModelFactory;
     this.usersRepository    = usersRepository;
     this.session            = session;
     this.employeeRepository = employeeRepository;
     this.companyRepository  = companyRepository;
     this.gradeRepository    = gradeRepository;
     this.lookupRepository   = lookupRepository;
 }
예제 #9
0
        public ProjectsController(INotificationService notificationService,
                                  IProjectRepository projectRepository,
                                  IProjectActivityRepository projectActivityRepository,
                                  IProjectMemberRepository projectMemberRepository,
                                  IProjectBillingRepository projectBillingRepository,
                                  IProjectBillingCorrectionRepository projectBillingCorrectionRepository,
                                  ITaskRepository taskRepository,
                                  ITaskEffortRepository taskEffortRepository,
                                  IProjectTechnologyMapRepository projectTechnologyMapRepository,
                                  IProjectMileStoneRepository projectMileStoneRepository,
                                  IProjectDocumentRepository projectDocumentRepository,
                                  ILeaveRepository leaveRepository,
                                  ITimeSheetLineItemRepository timeSheetLineItemRepository,
                                  IUserRepository userRepository,
                                  IEmployeeRepository employeeRepository,
                                  ITimeSheetRepository timeSheetRepository,

                                  ITechnologyRepository technologyRepository,
                                  ICRMContactRepository crmContactRepository,
                                  IUnitOfWork unitOfWork)
        {
            _notificationService = notificationService;

            _projectRepository                  = projectRepository;
            _projectActivityRepository          = projectActivityRepository;
            _projectBillingRepository           = projectBillingRepository;
            _projectMemberRepository            = projectMemberRepository;
            _projectBillingCorrectionRepository = projectBillingCorrectionRepository;
            _taskRepository                 = taskRepository;
            _taskEffortRepository           = taskEffortRepository;
            _projectTechnologyMapRepository = projectTechnologyMapRepository;
            _projectMileStoneRepository     = projectMileStoneRepository;
            _leaveRepository                = leaveRepository;
            _timeSheetLineItemRepository    = timeSheetLineItemRepository;
            _projectDocumentRepository      = projectDocumentRepository;
            _userRepository                 = userRepository;
            _employeeRepository             = employeeRepository;
            _timeSheetRepository            = timeSheetRepository;
            _technologyRepository           = technologyRepository;
            _crmContactRepository           = crmContactRepository;
            _unitOfWork = unitOfWork;
        }
예제 #10
0
        public static async Task <string> RunOrchestrator(
            [OrchestrationTrigger] DurableOrchestrationContext context, [Inject] ILeaveRepository respository, ILogger log)
        {
            log.LogInformation("Executing workflow " + context.InstanceId);

            Leave leave = context.GetInput <Leave>();

            leave.WorkflowId = context.InstanceId;
            //leave.WorkflowId = context.InstanceId;
            ////updating workflowid
            //var res = await respository.UpdateLeave(leave, log);
            //await context.CallActivityAsync<string>("ApproveLeave", context.InstanceId);
            if (leave.LeaveStatus == LeaveStatus.Applied)
            {
                using (var cts = new CancellationTokenSource())
                {
                    var timeOut      = context.CurrentUtcDateTime.AddMinutes(5);
                    var timeOutTask  = context.CreateTimer(timeOut, cts.Token);
                    var approvalTask = context.WaitForExternalEvent <string>("ApproveLeaveEvent");


                    var result = await Task.WhenAny(approvalTask, timeOutTask);

                    if (result == approvalTask)
                    {
                        cts.Cancel();
                        return(approvalTask.Result);
                    }
                    else
                    {
                        leave.LeaveStatus = LeaveStatus.Approved;
                        var updateResult = await respository.UpdateLeave(leave, log);

                        return("Approved");
                    }
                }
            }
            else
            {
                return("Nothing to process");
            }
        }
예제 #11
0
 public LeaveService(ILeaveRepository leaveRepository,
                     IHolidayRepository holidayRepository,
                     ILeaveTimePeriodRepository leaveTimePeriodRepository,
                     ILeaveEntitlementRepository leaveEntitlementRepository,
                     ILeaveEntitlementUpdateRepository leaveEntitlementUpdateRepository,
                     ISettingsService settingsService,
                     IEmployeeRepository employeeRepository,
                     IUserRepository userRepository,
                     IUnitOfWork unitOfWork)
 {
     _leaveRepository                  = leaveRepository;
     _holidayRepository                = holidayRepository;
     _leaveEntitlementRepository       = leaveEntitlementRepository;
     _leaveEntitlementUpdateRepository = leaveEntitlementUpdateRepository;
     _leaveTimePeriodRepository        = leaveTimePeriodRepository;
     _employeeRepository               = employeeRepository;
     _userRepository  = userRepository;
     _settingsService = settingsService;
     _unitOfWork      = unitOfWork;
 }
예제 #12
0
 public MaintenanceController(IUnitOfWork unitOfWork, ISettingRepository settingRepository, IPositionRepository positionRepository, IPaymentFrequencyRepository paymentFrequencyRepository,
                              IHolidayRepository holidayRepository, IDepartmentRepository departmentRepository, ILeaveRepository leaveRepository, ILoanRepository loanRepository,
                              IMachineRepository machineRepository, IWebService webService, IDeductionRepository deductionRepository,
                              IEmployeeMachineService emplyeeMachineService, IWorkScheduleRepository workScheduleRepository, IAdjustmentRepository adjustmentRepository,
                              ICompanyRepository companyRepository)
 {
     _unitOfWork                 = unitOfWork;
     _settingRepository          = settingRepository;
     _positionRepository         = positionRepository;
     _paymentFrequencyRepository = paymentFrequencyRepository;
     _departmentRepository       = departmentRepository;
     _holidayRepository          = holidayRepository;
     _leaveRepository            = leaveRepository;
     _loanRepository             = loanRepository;
     _machineRepository          = machineRepository;
     _webService                 = webService;
     _emplyeeMachineService      = emplyeeMachineService;
     _workScheduleRepository     = workScheduleRepository;
     _deductionRepository        = deductionRepository;
     _adjustmentRepository       = adjustmentRepository;
     _companyRepository          = companyRepository;
 }
예제 #13
0
 public EmployeeController(IUnitOfWork unitOfWork, IEmployeeRepository employeeRepository, IEmployeeInfoRepository employeeInfoRepository,
                           ISettingRepository settingRepository, IPositionRepository positionRepository, IEmployeeLoanRepository employeeLoanRepository,
                           IWebService webService, IDepartmentRepository departmentRepository, ILoanRepository loanRepository, IEmployeeInfoHistoryRepository employeeInfoHistoryRepository, IEmployeeLeaveRepository employeeLeaveRepository,
                           ILeaveRepository leaveRepository, IDeductionRepository deductionRepository, IEmployeeDeductionService employeeDeductionService,
                           IEmployeeWorkScheduleService employeeWorkScheduleService, IWorkScheduleRepository workScheduleRepository)
 {
     _unitOfWork                    = unitOfWork;
     _employeeRepository            = employeeRepository;
     _settingRepository             = settingRepository;
     _employeeInfoRepository        = employeeInfoRepository;
     _positionRepository            = positionRepository;
     _webService                    = webService;
     _employeeLoanRepository        = employeeLoanRepository;
     _departmentRepository          = departmentRepository;
     _loanRepository                = loanRepository;
     _employeeInfoHistoryRepository = employeeInfoHistoryRepository;
     _employeeLeaveRepository       = employeeLeaveRepository;
     _leaveRepository               = leaveRepository;
     _deductionRepository           = deductionRepository;
     _employeeDeductionService      = employeeDeductionService;
     _employeeWorkScheduleService   = employeeWorkScheduleService;
     _workScheduleRepository        = workScheduleRepository;
 }
예제 #14
0
        public LeavesController(ILeaveService leaveService,
                                ILeaveRepository leaveRepository,
                                ILeaveEntitlementRepository leaveEntitlementRepository,
                                ILeaveEntitlementUpdateRepository leaveEntitlementUpdateRepository,
                                ILeaveTypeRepository leaveTypeRepository,
                                IEmployeeRepository employeeRepository,
                                ILeaveTimePeriodRepository leaveTimePeriodRepository,
                                IUserRepository userRepository,
                                EmailComposerService emailComposerService,
                                IUnitOfWork unitOfWork)
        {
            _leaveService                     = leaveService;
            _leaveRepository                  = leaveRepository;
            _leaveEntitlementRepository       = leaveEntitlementRepository;
            _leaveEntitlementUpdateRepository = leaveEntitlementUpdateRepository;
            _leaveTypeRepository              = leaveTypeRepository;
            _employeeRepository               = employeeRepository;
            _leaveTimePeriodRepository        = leaveTimePeriodRepository;
            _userRepository                   = userRepository;

            _unitOfWork = unitOfWork;

            _emailComposerService = emailComposerService;
        }
예제 #15
0
        public static async Task <HttpResponseMessage> ApplyLeave_StartWF(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestMessage req,
            [OrchestrationClient] DurableOrchestrationClient starter, [Inject] ILeaveRepository respository,
            ILogger log)
        {
            // Function input comes from the request content.

            var leavereq = await req.Content.ReadAsAsync <Leave>();

            leavereq.WorkflowId  = string.Empty;
            leavereq.LeaveID     = Guid.NewGuid();
            leavereq.LeaveStatus = LeaveStatus.Applied;
            var result = await respository.AddLeave(leavereq, log);

            if (result != -1)
            {
                string instanceId = await starter.StartNewAsync("OrchestrationFunction", leavereq);

                leavereq.WorkflowId = instanceId;
                var res = await respository.UpdateLeave(leavereq, log);



                log.LogInformation($"Started orchestration with ID = '{instanceId}'.");
                return(starter.CreateCheckStatusResponse(req, instanceId));
            }
            else
            {
                //await starter.TerminateAsync(instanceId, "Unable to add Leave to DB");
                return(new HttpResponseMessage
                {
                    StatusCode = System.Net.HttpStatusCode.BadRequest,
                    Content = new StringContent(@"{""errorMessage"":""Unable to save leave to Db""}")
                });
            }
        }
예제 #16
0
 public LeavesController(IMapper mapper, IUnitOfWork unitOfWork, ILeaveRepository repo)
 {
     _mapper     = mapper;
     _unitofwork = unitOfWork;
     _repo       = repo;
 }
예제 #17
0
 public OutgoingBookService(ILeaveRepository leaveRepository, ISoldierRepository soldierRepository)
 {
     _leaveRepository   = leaveRepository;
     _soldierRepository = soldierRepository;
 }
예제 #18
0
 public LeavesController(ILeaveRepository repo, IMapper mapper, IHttpContextAccessor httpContextAccessor)
 {
     _mapper          = mapper;
     _repo            = repo;
     _LoggedIn_UserID = Convert.ToInt32(httpContextAccessor.HttpContext.User.FindFirstValue(Enumm.ClaimType.NameIdentifier.ToString()));
 }
 public LeaveService(ILeaveRepository leaveRepository)
 {
     this.leaveRepository = leaveRepository;
 }
예제 #20
0
 public LeaveService(ILeaveRepository leaveRepository)
 {
     this.leaveRepository = leaveRepository;
 }
예제 #21
0
 // Inject IEmployeeRepository using Constructor Injection
 public LeaveController(ILeaveRepository employeeRepository, IHostingEnvironment hostingEnvironment)
 {
     _empRepo = employeeRepository;
     this.hostingEnvironment = hostingEnvironment;
 }
예제 #22
0
 public FormController(GridDataContext gridDataContext, IEmployeeRepository employeeRepository, ILeaveRepository leaveRepository)
 {
     _gridDataContext    = gridDataContext;
     _employeeRepository = employeeRepository;
     _leaveRepository    = leaveRepository;
 }
예제 #23
0
 public AcceptLeaveCommandHandler(ILeaveRepository leaveRepository)
 {
     _leaveRepository = leaveRepository;
 }
예제 #24
0
 public LeaveManager(ILeaveRepository leaveRepository, IMappingFactory <Leave, LeaveModel, LeaveModel> leaveMapper, IPermissionManager permissionManager)
 {
     _leaveRepository   = leaveRepository;
     _leaveMapper       = leaveMapper;
     _permissionManager = permissionManager;
 }
예제 #25
0
 public LeaveService(ILeaveRepository repo)
 {
     _repo = repo;
 }
예제 #26
0
 public LeaveService(ILeaveRepository leaveRepository, IUnitOfWork unitOfWork, ILogger <LeaveService> logger)
 {
     _leaveRepository = leaveRepository ?? throw new ArgumentNullException(nameof(leaveRepository));
     _unitOfWork      = unitOfWork ?? throw new ArgumentNullException(nameof(unitOfWork));
     _logger          = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 public LeaveTypesController(ILeaveRepository leaveType, IMapper mapper)
 {
     _leaveType = leaveType;
     _mapper    = mapper;
 }
예제 #28
0
 public LeaveDomainService(ICapPublisher eventPublisher, ILeaveRepository leaveRepository, LeaveFactory leaveFactory)
 {
     _eventPublisher  = eventPublisher ?? throw new ArgumentNullException(nameof(eventPublisher));
     _leaveRepository = leaveRepository ?? throw new ArgumentNullException(nameof(leaveRepository));
     _leaveFactory    = leaveFactory ?? throw new ArgumentNullException(nameof(leaveFactory));
 }
예제 #29
0
 public LeaveController(ILeaveRepository repo, DataContext context)
 {
     _repo    = repo;
     _context = context;
 }
 public LeaveOperations(ILeaveRepository LeaveRepository, IRuleOperations ruleOperations)
 {
     _leaveRepository = LeaveRepository;
 }
예제 #31
0
 public LeavesController(ILeaveRepository leaveRepository)
 {
     _leaveRepository = leaveRepository;
 }