public ActionResult FeedBackURL(QuestionerAnswers qa, string[] answer, int[] QuestionerID) { FeedbackQuestionDetail fqd = db.FeedbackQuestionDetails.Find(qa.FeedBackQuestionDetailID); fqd.Status = "Submitted"; db.Entry(fqd).State = EntityState.Modified; int i = 0; foreach (var qId in QuestionerID) { QuestionerAnswers qAns = db.QuestionerAnswers.Where(p => p.FeedBackQuestionDetailID == qa.FeedBackQuestionDetailID && p.EmployeeID == qa.EmployeeID && p.QuestionerID == qId).FirstOrDefault(); if (qAns == null) { QuestionerAnswers qAnswer = new QuestionerAnswers(); qAnswer.Answer = answer[i]; qAnswer.EmployeeID = qa.EmployeeID; qAnswer.FeedBackQuestionDetailID = qa.FeedBackQuestionDetailID; qAnswer.QuestionerID = qId; qAnswer.Status = "Submitted"; db.QuestionerAnswers.Add(qAnswer); } else { qAns.Answer = answer[i]; qAns.Status = "Submitted"; db.Entry(qAns).State = EntityState.Modified; } i++; } db.SaveChanges(); return(View("Submitted")); }
public ActionResult ResendURL(int Id) { FeedbackQuestionDetail feed = db.FeedbackQuestionDetails.Find(Id); Employee emp = db.Employees.Find(feed.PICID); if (!db.ListFeedbackSended.Any(s => s.FeddbackId == feed.FeedbackQuestionDetailID && s.PicId == feed.PICID)) { string emailContent = "Dear {0}, <BR/><BR/>This is your feedback URL, please click on this <a href=\"{1}\" title=\"your feedback\">link</a> to complete your answers.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string url = Request.Url.GetLeftPart(UriPartial.Authority) + "/Feedbacks/YourQuestionURL/" + feed.RandomURL; emailTransact.SentEmailFeedback(emp.Email, emp.Name, emailContent, url); db.ListFeedbackSended.Add(new ListFeedbackSended() { FeddbackId = feed.FeedbackQuestionDetailID, PicId = feed.PICID }); db.SaveChanges(); } return(RedirectToAction("Index")); }
public ViewResult FeedBackURL(int id, int empId) { FeedbackQuestionDetail fdq = db.FeedbackQuestionDetails.Find(id); List <Questioner> questList = new List <Questioner>(); QuestionerAnswersViewModel q = new QuestionerAnswersViewModel(); Questioner quest = new Questioner(); foreach (var question in fdq.QuestionerID.Split(';')) { if (!String.IsNullOrEmpty(question)) { quest = db.Questioners.Find(Convert.ToInt32(question)); questList.Add(quest); } } ViewBag.EmpName = db.Employees.Find(fdq.PICID).Name; q.Questioners = questList; return(View(q)); }
public ActionResult SaveDetailFeedback(int feedbackID, string questions, string pics) { Feedback feedback = db.Feedbacks.Find(feedbackID); foreach (var pic in pics.Split(';')) { Employee emp = db.Employees.Where(p => p.Name.Equals(pic)).FirstOrDefault(); FeedbackQuestionDetail fqd = new FeedbackQuestionDetail(); if (emp != null) { fqd.FeedbackID = feedbackID; fqd.QuestionerID = questions; fqd.PICID = emp.EmployeeID; fqd.LetterofCommandID = feedback.FieldWork.LetterOfCommandID; fqd.Status = "Unsubmitted"; db.FeedbackQuestionDetails.Add(fqd); db.SaveChanges(); FeedbackQuestionDetail feed = db.FeedbackQuestionDetails.Find(fqd.FeedbackQuestionDetailID); feed.FeedbackURL = Request.Url.GetLeftPart(UriPartial.Authority) + "/Feedbacks/FeedBackURL/" + feed.FeedbackQuestionDetailID + "?empId=" + emp.EmployeeID; feed.RandomURL = GetURL(); db.Entry(feed).State = EntityState.Modified; db.SaveChanges(); if (!db.ListFeedbackSended.Any(s => s.FeddbackId == feed.FeedbackQuestionDetailID && s.PicId == feed.PICID)) { string emailContent = "Dear {0}, <BR/><BR/>This is your feedback URL, please click on this <a href=\"{1}\" title=\"your feedback\">link</a> to complete your answers.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string url = Request.Url.GetLeftPart(UriPartial.Authority) + "/Feedbacks/YourQuestionURL/" + feed.RandomURL; emailTransact.SentEmailFeedback(emp.Email, emp.Name, emailContent, url); db.ListFeedbackSended.Add(new ListFeedbackSended() { FeddbackId = feed.FeedbackQuestionDetailID, PicId = feed.PICID }); db.SaveChanges(); } } } return(RedirectToAction("Index")); }
public RedirectResult YourQuestionURL(string id) { FeedbackQuestionDetail fqd = db.FeedbackQuestionDetails.Where(p => p.RandomURL.Equals(id)).FirstOrDefault(); return(Redirect(fqd.FeedbackURL)); }