/// <summary> /// Creates the updated training report view. /// </summary> /// <param name="trainingInfo">The training information.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">trainingInfo</exception> public ITrainingReportViewModel CreateUpdatedTrainingReportView(ITrainingReportViewModel trainingReportInfo, IList <ITrainingEvaluationRating> trainingEvaluationRatings, IList <ITrainingCalendar> trainingCalendars, string message) { if (trainingReportInfo == null) { throw new ArgumentNullException(nameof(trainingReportInfo)); } if (trainingEvaluationRatings == null) { throw new ArgumentNullException(nameof(trainingEvaluationRatings)); } if (trainingCalendars == null) { throw new ArgumentNullException(nameof(trainingCalendars)); } var traingCalendarDDL = GetDropDownList.TrainingCalendarListItems(trainingCalendars, trainingReportInfo.TrainingCalendarID); var traingRatingDDL = GetDropDownList.TrainingEvaluationListItems(trainingEvaluationRatings, trainingReportInfo.TrainerEvaluationRating); trainingReportInfo.TrainingEvaluationRatingDropDownlist = traingRatingDDL; trainingReportInfo.TrainingCalendarDropDownlist = traingCalendarDDL; trainingReportInfo.ProcessingMessage = message; return(trainingReportInfo); }
/// <summary> /// Processes the training report information. /// </summary> /// <param name="trainingInfo">The training information.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">trainingInfo</exception> public string ProcessTrainingReportInfo(ITrainingReportViewModel trainingInfo) { if (trainingInfo == null) { throw new ArgumentNullException(nameof(trainingInfo)); } var processingMessage = string.Empty; processingMessage = this.trainingRepository.SaveTrainingReportInfo(trainingInfo); return(processingMessage); }
/// <summary> /// Creates the training report. /// </summary> /// <param name="trainingReportViewModel">The training report view model.</param> /// <param name="companyCollection">The company collection.</param> /// <param name="employeeCollection">The employee collection.</param> /// <param name="trainingCollection">The training collection.</param> /// <param name="trainingRatingCollection">The training rating collection.</param> /// <param name="trainingCalendarCollection">The training calendar collection.</param> /// <param name="message">The message.</param> /// <returns></returns> public ITrainingReportViewModel CreateTrainingReport(ITrainingReportViewModel trainingReportViewModel, IList <ICompanyDetail> companyCollection, IList <IEmployee> employeeCollection, ITraining trainingInfo, IList <ITrainingEvaluationRating> trainingRatingCollection, IList <ITrainingCalendar> trainingCalendarCollection, string message) { //if (trainingId == null) throw new ArgumentNullException(nameof(trainingId)); var companyDDL = GetDropDownList.CompanyListItems(companyCollection, -1); var employeeDDL = GetDropDownList.EmployeeListitems(employeeCollection, -1); var evaluationDDL = GetDropDownList.TrainingEvaluationListItems(trainingRatingCollection, -1); var trainingcalendarDDL = GetDropDownList.TrainingCalendarListItems(trainingCalendarCollection, -1); trainingReportViewModel.CompanyDropDownlist = companyDDL; trainingReportViewModel.EmployeeDropDownlist = employeeDDL; trainingReportViewModel.Training = trainingInfo; trainingReportViewModel.TrainingEvaluationRatingDropDownlist = evaluationDDL; trainingReportViewModel.TrainingCalendarDropDownlist = trainingcalendarDDL; trainingReportViewModel.ProcessingMessage = message; return(trainingReportViewModel); }
/// <summary> /// Saves the training report information. /// </summary> /// <param name="trainingInfo">The training information.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">trainingInfo</exception> public string SaveTrainingReportInfo(ITrainingReportViewModel trainingReportInfo) { if (trainingReportInfo == null) { throw new ArgumentNullException(nameof(trainingReportInfo)); } var result = string.Empty; var newRecord = new TrainingReport { EmployeeId = trainingReportInfo.EmployeeID, CompanyId = trainingReportInfo.CompanyID, TrainingId = trainingReportInfo.TrainingId, TrainerName = trainingReportInfo.TrainerName, TrainingCalendarId = trainingReportInfo.TrainingCalendarID, TrainerEvaluationRating = trainingReportInfo.TrainerEvaluationRating, TrainerEvaluationComment = trainingReportInfo.TrainerEvaluationComment, TrainingEvaluationRating = trainingReportInfo.TrainingEvaluationRating, TrainingEvaluationComment = trainingReportInfo.TrainingEvaluationComment, DateCreated = DateTime.Now }; try { using ( var dbContext = (HRMSEntities)this.dbContextFactory.GetDbContext(ObjectContextType.HRMS)) { dbContext.TrainingReports.Add(newRecord); dbContext.SaveChanges(); } } catch (Exception e) { result = string.Format("Save TrainingReport info - {0}, {1}", e.Message, e.InnerException != null ? e.InnerException.Message : ""); } return(result); }
/// <summary> /// Creates the training report updated view. /// </summary> /// <param name="trainingInfo">The training information.</param> /// <param name="userId">The user identifier.</param> /// <param name="processingMessage">The processing message.</param> /// <returns></returns> /// <exception cref="ArgumentOutOfRangeException">userId</exception> /// <exception cref="ArgumentNullException"> /// loggedUserDetails /// or /// companyInfo /// </exception> public ITrainingReportViewModel CreateTrainingReportUpdatedView(ITrainingReportViewModel trainingReportInfo, string processingMessage) { //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)); } int employeeId = (int)this.serviceProvider.GetSessionValue(SessionKey.EmployeeId); var trainingRating = lookupRepository.GetEvaluationratings(); var companyInfo = this.companyRepository.GetCompanyById((int)this.serviceProvider.GetSessionValue(SessionKey.CompanyId)); if (companyInfo == null) { throw new ArgumentNullException(nameof(companyInfo)); } var trainingInfo = trainingRepository.GetTrainingById(trainingReportInfo.TrainingId); var employee = lookupRepository.GetEmployeeByCompanyId(companyInfo.CompanyId); var trainingCalendar = trainingRepository.GetTrainingCalendarByCompanyId(companyInfo.CompanyId); trainingReportInfo.Training = trainingInfo; var viewModel = this.trainingViewModelFactory.CreateUpdatedTrainingReportView(trainingReportInfo, trainingRating, trainingCalendar, processingMessage); return(viewModel); }