/// <summary> /// Gets the training analysis view. /// </summary> /// <param name="trainingNeedAnalysis">The training need analysis.</param> /// <param name="loggedUserId"></param> /// <param name="message">The message.</param> /// <returns></returns> /// <exception cref="System.ArgumentOutOfRangeException">loggedUserId</exception> /// <exception cref="System.ArgumentNullException"> /// trainingNeedAnalysis /// or /// loggedUserDetails /// </exception> public ITrainingNeedAnalysisView GetTrainingAnalysisView(ITrainingNeedAnalysisView trainingNeedAnalysis, string message) { if (trainingNeedAnalysis == null) { throw new ArgumentNullException(nameof(trainingNeedAnalysis)); } //Get The Curretly Logged In User Information var loggedUserDetails = usersRepository.GetUserById((int)this.serviceProvider.GetSessionValue(SessionKey.UserId)); if (loggedUserDetails == null) { throw new ArgumentNullException(nameof(loggedUserDetails)); } var companyId = (int)this.serviceProvider.GetSessionValue(SessionKey.CompanyId); var jobTitleCollection = lookupRepository.GetJobTitleCollectionByCompanyId(companyId); var trainingCollection = lookupRepository.GetTrainingByCompanyId(companyId); var frequencyCollection = this.lookupRepository.GetFrequencyOfDistribution(); var currencyCollection = this.lookupRepository.GetCurrency(); var methodOfDeliveryCollection = this.lookupRepository.GetMethodOfDelivery(); var viewModel = this.trainingViewModelFactory.CreateTrainingNeedAnalysisView(trainingNeedAnalysis, trainingCollection, jobTitleCollection, frequencyCollection, currencyCollection, methodOfDeliveryCollection, message); return(viewModel); }
/// <summary> /// Processes the edit training need analysis information. /// </summary> /// <param name="trainingNeedAnalysisInfo">The training need analysis information.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">trainingNeedAnalysisInfo</exception> public string ProcessEditTrainingNeedAnalysisInfo(ITrainingNeedAnalysisView trainingNeedAnalysisInfo) { if (trainingNeedAnalysisInfo == null) { throw new ArgumentNullException(nameof(trainingNeedAnalysisInfo)); } var result = string.Empty; result = this.trainingRepository.SaveEdtTrainingNeedAnalysis(trainingNeedAnalysisInfo); return(result); }
/// <summary> /// Saves the training need analysis. /// </summary> /// <param name="trainingAnalysisViewModel">The training analysis view model.</param> /// <returns></returns> /// <exception cref="System.ArgumentNullException">trainingAnalysisViewModel</exception> public string SaveTrainingNeedAnalysis(ITrainingNeedAnalysisView trainingAnalysisViewModel) { if (trainingAnalysisViewModel.Equals(null)) { throw new ArgumentNullException(nameof(trainingAnalysisViewModel)); } var result = string.Empty; var TrainingAnalysis = new TrainingNeedAnalysi { TrainingId = trainingAnalysisViewModel.TrainingID, CompanyId = trainingAnalysisViewModel.CompanyID, JobId = trainingAnalysisViewModel.JobID, TrainingDescription = trainingAnalysisViewModel.TrainingDescription, MethodOfDelivery = trainingAnalysisViewModel.MethodOfDelivery, TrainingProvider = trainingAnalysisViewModel.TrainingProvider, Cost = trainingAnalysisViewModel.Cost, Location = trainingAnalysisViewModel.Location, IsProviderApproved = false, ApprovedBudget = trainingAnalysisViewModel.ApprovedBudget, FrequecyOfDeliveryId = trainingAnalysisViewModel.FrequencyOfDeliveryID, TrainingDuration = trainingAnalysisViewModel.TrainingDuration, CertificateIssued = trainingAnalysisViewModel.CertificateIssued, DateCreated = DateTime.Now, IsActive = true, CurrencyId = trainingAnalysisViewModel.Currency, ApprovedBudgetCurrency = trainingAnalysisViewModel.ApprovedBudgetCurrency }; try { using ( var dbContext = (HRMSEntities)this.dbContextFactory.GetDbContext(ObjectContextType.HRMS)) { dbContext.TrainingNeedAnalysis.Add(TrainingAnalysis); dbContext.SaveChanges(); } } catch (Exception e) { result = string.Format("SaveTrainingAnalysis - {0} , {1}", e.Message, e.InnerException != null ? e.InnerException.Message : ""); } return(result); }
/// <summary> /// Creates the training need analysis view. /// </summary> /// <param name="trainingNeedAnalysus">The training need analysus.</param> /// <param name="companyCollection">The company collection.</param> /// <param name="training">The training.</param> /// <param name="jobCollection">The job collection.</param> /// <param name="frequencyOfDeliveryCollection">The frequency of delivery collection.</param> /// <param name="currencyCollection">The currency collection.</param> /// <param name="message">The message.</param> /// <returns></returns> public ITrainingNeedAnalysisView CreateTrainingNeedAnalysisView(ITrainingNeedAnalysisView trainingNeedAnalysus, IList <ITraining> training, IList <IJobTitle> jobCollection, IList <IFrequencyOfDeliveryModel> frequencyOfDeliveryCollection, IList <ICurrency> currencyCollection, IList <IMethodOfDelivery> methodOfDeliveryCollection, string message) { var TrainingDDL = GetDropDownList.TrainingListItems(training, trainingNeedAnalysus.TrainingID); var jobDDL = GetDropDownList.JobTitlesListItems(jobCollection, trainingNeedAnalysus.JobID); var FrequencyOfDeliveryDDL = GetDropDownList.FrequencyOfDeliveryListItems(frequencyOfDeliveryCollection, trainingNeedAnalysus.FrequencyOfDeliveryID); var CurrencyDDL = GetDropDownList.CurrencyListItems(currencyCollection, trainingNeedAnalysus.Currency); var methodOfDeliveryDDL = GetDropDownList.MethondOfDeliveryListItems(methodOfDeliveryCollection, trainingNeedAnalysus.MethodOfDelivery); trainingNeedAnalysus.JobDropDownList = jobDDL; trainingNeedAnalysus.TrainingDropDownList = TrainingDDL; trainingNeedAnalysus.CurrencyDropDownList = CurrencyDDL; trainingNeedAnalysus.FrequencyOfDeliveryDropDownList = FrequencyOfDeliveryDDL; trainingNeedAnalysus.MethodOfDeliveryDropDown = methodOfDeliveryDDL; trainingNeedAnalysus.ProcessingMessage = message; return(trainingNeedAnalysus); }
/// <summary> /// Saves the edt training need analysis. /// </summary> /// <param name="trainingAnalysisViewModel">The training analysis view model.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">trainingAnalysisViewModel</exception> public string SaveEdtTrainingNeedAnalysis(ITrainingNeedAnalysisView trainingAnalysisViewModel) { if (trainingAnalysisViewModel.Equals(null)) { throw new ArgumentNullException(nameof(trainingAnalysisViewModel)); } var result = string.Empty; try { using ( var dbContext = (HRMSEntities)this.dbContextFactory.GetDbContext(ObjectContextType.HRMS)) { var model = dbContext.TrainingNeedAnalysis.SingleOrDefault(p => p.TrainingNeedAnaylsisId.Equals(trainingAnalysisViewModel.TrainingNeedAnalysisID)); model.TrainingNeedAnaylsisId = trainingAnalysisViewModel.TrainingNeedAnalysisID; model.JobId = trainingAnalysisViewModel.JobID; model.CompanyId = trainingAnalysisViewModel.CompanyID; model.TrainingId = trainingAnalysisViewModel.TrainingID; model.TrainingDescription = trainingAnalysisViewModel.TrainingDescription; model.MethodOfDelivery = trainingAnalysisViewModel.MethodOfDelivery; model.TrainingProvider = trainingAnalysisViewModel.TrainingProvider; model.Cost = trainingAnalysisViewModel.Cost; model.CurrencyId = trainingAnalysisViewModel.Currency; model.Location = trainingAnalysisViewModel.Location; model.IsProviderApproved = trainingAnalysisViewModel.IsProviderApproved; model.ApprovedBudget = trainingAnalysisViewModel.ApprovedBudget; model.ApprovedBudgetCurrency = trainingAnalysisViewModel.ApprovedBudgetCurrency; model.FrequecyOfDeliveryId = trainingAnalysisViewModel.FrequencyOfDeliveryID; model.TrainingDuration = trainingAnalysisViewModel.TrainingDuration; model.CertificateIssued = trainingAnalysisViewModel.CertificateIssued; dbContext.SaveChanges(); } } catch (Exception e) { result = string.Format("SaveTrainingAnalysis - {0} , {1}", e.Message, e.InnerException != null ? e.InnerException.Message : ""); } return(result); }
/// <summary> /// </summary> /// <param name="trainingNeedAnalysisInfo"></param> /// <returns></returns> /// <exception cref="System.ArgumentNullException">trainingNeedAnalysisInfo</exception> public string ProcessTrainingNeedAnalysisInfo(ITrainingNeedAnalysisView trainingNeedAnalysisInfo) { if (trainingNeedAnalysisInfo == null) { throw new ArgumentNullException(nameof(trainingNeedAnalysisInfo)); } var result = string.Empty; var trainingCalendar = this.trainingRepository.GetTrainingAnalysisByCompanyIdandTrainingIdandJobId(trainingNeedAnalysisInfo.CompanyID, trainingNeedAnalysisInfo.TrainingID, trainingNeedAnalysisInfo.JobID); var IsDataExits = (trainingCalendar == null) ? false : true; if (IsDataExits) { result = Messages.TrainingAnalysisAlreadyExist; return(result); } result = this.trainingRepository.SaveTrainingNeedAnalysis(trainingNeedAnalysisInfo); return(result); }