コード例 #1
0
ファイル: TrainerFeedback.cs プロジェクト: mkiran1992/Proseed
        public CustomTrainerFeedbackModel GetTrainerFeedbackListForTrainer(int batchId, string traineeId)
        {
            var customTrainerFeedback = new CustomTrainerFeedbackModel();

            var feedbackList = db.TrainersFeedback.Where(f => f.BatchID == batchId && f.TraineeID.ToString() == traineeId).OrderByDescending(d => d.DateCreated).ToList();
            int traineeIntId = Convert.ToInt32(traineeId);
            var user         = db.Tranner.FirstOrDefault(us => us.Id == traineeIntId);

            var inducteeBatchId = _Inductee.Get(user.Email).BatchID;
            var traineesBatch   = db.Batch.Where(B => B.Id == inducteeBatchId).Select(B => B).FirstOrDefault();

            customTrainerFeedback.BatchID        = traineesBatch.Id;
            customTrainerFeedback.BatchName      = traineesBatch.Name;
            customTrainerFeedback.BatchStartDate = traineesBatch.BatchDates.OrderBy(p => p.BatchDate).Select(p => p.BatchDate).FirstOrDefault();
            customTrainerFeedback.BatchEndDate   = traineesBatch.BatchDates.OrderBy(p => p.BatchDate).Select(p => p.BatchDate).LastOrDefault();
            customTrainerFeedback.TrainerID      = traineesBatch.trainer.Id;
            customTrainerFeedback.TrainerName    = traineesBatch.trainer.Name;
            customTrainerFeedback.TrainerEmail   = traineesBatch.trainer.Email;

            var feedbackReponseList = new List <FeedbackResponse>();

            if (feedbackList.Any()) //if records exist
            {
                foreach (var feedback in feedbackList)
                {
                    var feedbackReponse = new FeedbackResponse();
                    feedbackReponse.ID            = feedback.ID;
                    feedbackReponse.Rating        = feedback.Rating;
                    feedbackReponse.WhatWentWell  = feedback.WhatWentWell;
                    feedbackReponse.DidnotGoWell  = feedback.DidnotGoWell;
                    feedbackReponse.CanBeImproved = feedback.CanBeImproved;
                    feedbackReponse.TraineeID     = feedback.TraineeID;
                    feedbackReponse.TraineeName   = db.Tranner.Find(feedback.TraineeID).Name;

                    feedbackReponseList.Add(feedbackReponse);
                }
            }
            customTrainerFeedback.FeedbackReponse = feedbackReponseList;

            return(customTrainerFeedback);
        }
コード例 #2
0
        public ActionResult TrainerFeedback(int id)
        {
            string currentUserId = Session["UserId"] == null ? string.Empty : Session["UserId"].ToString();
            var    userType      = Session["UserType"] == null?UserType.None.ToString() : Session["UserType"].ToString();

            var    trainerFeedbackList = new CustomTrainerFeedbackModel();
            string currentUserMailId   = Session["UserEmailId"] == null ? string.Empty : Session["UserEmailId"].ToString();
            var    batchId             = _Inductee.FindByEmail(currentUserMailId);

            if (userType == UserType.Trainer.ToString())
            {
                trainerFeedbackList = TrainerFeedbackRepo.GetTrainerFeedbackList(id);
            }
            else if (userType == UserType.Trainee.ToString())
            {
                trainerFeedbackList = TrainerFeedbackRepo.GetTrainerFeedbackListForTrainer(batchId.BatchID, currentUserId);
            }

            TempData["CurrentBatchID"] = id;
            return(View("TrainerFeedback", trainerFeedbackList));
        }
コード例 #3
0
ファイル: TrainerFeedback.cs プロジェクト: mkiran1992/Proseed
        public CustomTrainerFeedbackModel GetTrainerFeedbackList(int batchId)
        {
            var customTrainerFeedback = new CustomTrainerFeedbackModel();
            var feedbackList          = db.TrainersFeedback.Where(f => f.BatchID == batchId).OrderByDescending(d => d.DateCreated);
            var batchDetail           = db.Batch.Find(batchId);
            var traineeList           = db.Tranner.ToList();

            customTrainerFeedback.BatchID        = batchDetail.Id;
            customTrainerFeedback.BatchName      = batchDetail.Name;
            customTrainerFeedback.BatchStartDate = batchDetail.BatchDates.OrderBy(p => p.BatchDate).Select(p => p.BatchDate).FirstOrDefault();
            customTrainerFeedback.BatchEndDate   = batchDetail.BatchDates.OrderBy(p => p.BatchDate).Select(p => p.BatchDate).LastOrDefault();
            customTrainerFeedback.TrainerID      = batchDetail.trainer.Id;
            customTrainerFeedback.TrainerName    = batchDetail.trainer.Name;
            customTrainerFeedback.TrainerEmail   = batchDetail.trainer.Email;

            var feedbackReponseList = new List <FeedbackResponse>();

            if (feedbackList.Count() > 0) //if records exist
            {
                foreach (var feedback in feedbackList)
                {
                    var feedbackReponse = new FeedbackResponse();
                    feedbackReponse.ID            = feedback.ID;
                    feedbackReponse.Rating        = feedback.Rating;
                    feedbackReponse.WhatWentWell  = feedback.WhatWentWell;
                    feedbackReponse.DidnotGoWell  = feedback.DidnotGoWell;
                    feedbackReponse.CanBeImproved = feedback.CanBeImproved;
                    feedbackReponse.TraineeID     = feedback.TraineeID;
                    feedbackReponse.TraineeName   = traineeList.Find(tr => tr.Id == feedback.TraineeID).Name;

                    feedbackReponseList.Add(feedbackReponse);
                }
            }
            customTrainerFeedback.FeedbackReponse = feedbackReponseList;

            return(customTrainerFeedback);
        }