public IResult GetAllOpenings() { var result = new Result { Operation = Operation.Read, Status = Status.Success }; try { var allOpenings = _openingRepository.GetAll(); var openingIds = allOpenings.Select(x => x.OpeningId).Distinct().ToList(); var approvalTransactions = _approvalRepository.GetAllApprovalTransactions(openingIds).ToList(); result.Body = allOpenings.Select(opening => { var approvalTransaction = approvalTransactions.FirstOrDefault(x => x.EntityId == opening.OpeningId); var openingViewModel = new OpeningViewModel(); MapPrimaryandSecondarySkills(openingViewModel, opening); if (approvalTransaction != null) { openingViewModel.IsApproved = approvalTransaction.IsApproved; openingViewModel.Status = approvalTransaction.ApprovalAction.ApprovalActionName; } return(openingViewModel.MapFromModel(opening)); }).ToList(); } catch (Exception e) { result.Message = e.Message; result.Status = Status.Fail; } return(result); }
public void AddOpening(Opening opening) { IOpeningRepository repo = RepoFactory.CreateOpeningRepository(); opening.JobId = GetOpeningID(repo.GetAll()); repo.AddOpening(opening); }
public void EditOpening(Opening opening, Opening editedOpening) { IOpeningRepository repo = RepoFactory.CreateOpeningRepository(); opening.JobId = GetOpeningID(repo.GetAll()); repo.EditOpening(editedOpening); }
public ListOpeningResponses ListOpenings() { IOpeningRepository repo = RepoFactory.CreateOpeningRepository(); ListOpeningResponses response = new ListOpeningResponses(); var openings = repo.GetAll(); if (openings.Count == 0) { response.Success = false; response.Message = "No openings found."; } else { response.Success = true; response.openings = openings; } return(response); }