public IActionResult Update(RequestsUpdateVM VM)
        {
            if (VM.selectedRequests == null || VM.selectedRequests.Count == 0)
            {
                return(RedirectToAction(nameof(Index)));
            }

            requestsService.ProcessUpdate(VM);

            return(RedirectToAction(nameof(Index)));
        }
        public void ProcessUpdate(RequestsUpdateVM VM)
        {
            foreach (var requestId in VM.selectedRequests)
            {
                var updatedRequest = requestsAPIService.GetRequest(requestId);

                if (updatedRequest.Status != Model.DTO.RequestStatus.Pending)
                {
                    continue;
                }

                int UserId = updatedRequest.UserId;

                if (VM.Action == "Approve")
                {
                    if (updatedRequest.RequestType == Model.DTO.RequestType.TimeSheet)
                    {
                        ApproveTimeSheetRequest(updatedRequest, UserId);
                    }
                    else if (updatedRequest.RequestType == Model.DTO.RequestType.Vacation)
                    {
                        ApproveVacationRequest(updatedRequest, UserId);
                    }
                    else if (updatedRequest.RequestType == Model.DTO.RequestType.TimeConsumption)
                    {
                        ApproveTimeConsumptionRequest(updatedRequest, UserId);
                    }

                    updatedRequest.Status = Model.DTO.RequestStatus.Approved;
                }
                else if (VM.Action == "Decline")
                {
                    updatedRequest.Status = Model.DTO.RequestStatus.Declined;
                }
                var mappedEntry = mapper.Map <RequestInsertRequest>(updatedRequest);
                requestsAPIService.PutRequest(requestId, mappedEntry);
            }
        }