public SurveyLiteDbContext(string connection) { Database = new LiteDatabase(connection); var total = Surveys.Count(); const int max = 8; if (total < max) { var newSurveys = Enumerable.Range(0, max - total).SelectMany(i => RandomEntitiesGenerator.SeedSurveys()); Surveys.InsertBulk(newSurveys); Surveys.InsertBulk(RandomEntitiesGenerator.PredefinedSurveys); } }
public IHttpActionResult GetNextQuestion(string id, int questionNumber, string direction) { try { var surveyObject = new SurveyRaterSurvey(); surveyObject.Type = "Annually"; surveyObject.Period = "2016"; surveyObject.Rater = new Surveys().getSurveyTeamEmployeeList().Where(c => c.AD_User_Name.ToLower() == Generic.GetCurrentLogonUserName().ToLower()).First().Employee; surveyObject.Ratee = id; var surveyList = new Surveys().getSurveyFor(surveyObject); surveyList = direction == "Next" ? surveyList.Where(c => c.Q_No == questionNumber + 1).Distinct().ToList() : surveyList.Where(c => c.Q_No == questionNumber - 1).Distinct().ToList(); // surveyList = surveyList.Where(c => c.Q_No == questionNumber + 1).Distinct().ToList(); var nextQuestionObject = new SurveyQuestionnaire(); if (surveyList.Count() > 0) { nextQuestionObject.Q_No = surveyList[0].Q_No; nextQuestionObject.Question = surveyList[0].Question; nextQuestionObject.Rating = surveyList[0].Rating; nextQuestionObject.Question_ID = surveyList[0].Question_ID; nextQuestionObject.Rater_Comment = surveyList[0].Rater_Comment; } return(Ok(nextQuestionObject)); } catch (Exception ex) { throw new Exception(ex.Message); } }
public ActionResult PrintRatingReportPerBusinessUnit(List <SurveyStatus> Survey_ForList, bool includeRaters, string businessUnit) { if (Survey_ForList.Count() == 0) { return(Redirect("PrintRatingReport")); } List <string> itemRow = new List <string>(); RatingReport reportObject = new RatingReport(); DataTable dt = new DataTable(); SurveyForList surveyReportPParameterObject = new SurveyForList(); surveyReportPParameterObject.Type = "Annually"; surveyReportPParameterObject.Period = "2016"; //var tempDirectoryPath = ConfigurationManager.AppSettings["BusinessUnitReportLocation"] + @"" + businessUnit; //var files = Directory.GetFiles(tempDirectoryPath, "*.xlsx"); //if (Directory.Exists(tempDirectoryPath)) //{ // foreach (var item in files) // { // System.IO.File.Delete(item); // } // Directory.Delete(tempDirectoryPath); //} foreach (var ratee in Survey_ForList) { surveyReportPParameterObject.Survey_For = ratee.Survey_For; List <SurveyStatus> list = new List <SurveyStatus>(); list.Add(new SurveyStatus() { Survey_For = ratee.Survey_For }); var raterList = new List <string>(); if (!string.IsNullOrWhiteSpace(ratee.Survey_For)) { dt = new DataTable(); var report = new Surveys().getSurveyForReport(surveyReportPParameterObject); if (report.Count() > 0) { ViewBag.ReportList = report; dt = reportObject.GetColumns(dt, report); reportObject.AddHeadings(dt, ratee.Survey_For, report.First().Period); reportObject.AddQuestionHeadings(dt, report); reportObject.AddQuestionAverallMinRating(dt, report); reportObject.AddQuestionAverallMaxRating(dt, report); reportObject.AddQuestionAverageRating(dt, report); dt.Rows.Add(new List <string>().ToArray()); //if (includeRaters) //{ itemRow.Add("INDIVIDUAL RATER SCORES AND COMMENTS"); dt.Rows.Add(itemRow.ToArray()); var raters = report.Select(c => c.Rater).AsQueryable().Distinct().ToList(); var questionsPerRater = report.Select(c => c.Rater_Comment).AsQueryable().Distinct().ToList(); //for (int i = 0; i < report.Select(c => c.Question_ID).AsQueryable().Distinct().ToList().Count; i++) // { foreach (var item in raters) { var record = report.Where(c => c.Rater == item).ToList(); reportObject.AddIndividualRaterComment(dt, record, includeRaters, item, report); reportObject.AddIndividualRating(dt, record, includeRaters, item, report); } // } //} } } if (!string.IsNullOrWhiteSpace(ratee.Survey_For) && dt.Rows.Count > 0) { GenerateRatingReportExcelFilePerBusinessUnit(dt, list, includeRaters, businessUnit); } } return(Redirect("PrintRatingReport")); }