Exemplo n.º 1
0
        /// <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);
        }
Exemplo n.º 2
0
        /// <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);
        }
Exemplo n.º 3
0
        /// <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);
        }
Exemplo n.º 4
0
        /// <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);
        }
Exemplo n.º 5
0
        /// <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);
        }