public IHttpActionResult ReviewAllQuestions(SurveyComplete survey)
        {
            SurveyEmployee employee = new SurveyEmployee();

            var empSurveyObject = GetSurveyObject(survey.Survey_For);

            empSurveyObject.Survey_For = survey.Survey_For;

            var surveyForList = new Surveys().getSurveyForVerifyAllRaters(empSurveyObject);

            survey.Type = empSurveyObject.Type;

            survey.Period = empSurveyObject.Period;

            foreach (var surveyObject in surveyForList)
            {
                survey.Rater = surveyObject.Rater;

                survey.User = Generic.GetCurrentLogonUserName();

                var saveReviewQuestion = new SurveyUpdate().SurveyHRReviewAll(survey);
            }

            var adminFullName = ConfigurationManager.AppSettings["adminFullName"];

            var manager = new Surveys().getSurveyTeamEmployeeList().Where(c => c.Employee.ToLower() == survey.Survey_For.ToLower()).First().Manager_Name;

            employee.Employee = manager;

            var managerEmailAddress = new Surveys().getSurveyManager(employee).First().EmpEmail; // new ADUsers().GetEmailAddress(manager);

            var emailBody = GetEmailBodySurveyReview(adminFullName, survey.Survey_For, manager);

            var adUser = new ADUsers();

            //Testing - to be removed later
            //managerEmailAddress = new ADUsers().GetEmailAddress(new Surveys().getSurveyTeamEmployeeList().Where(c => c.AD_User_Name.ToLower() == survey.User.ToLower()).First().Employee);

            EmailSurveyReviewNotification(emailBody, managerEmailAddress);


            return(Ok());
        }
Пример #2
0
        public IHttpActionResult NotifyRatersByRater(string rater, string selectedSurveyFor)
        {
            var selectedSurveyForList = selectedSurveyFor.Split(',');

            var user = Generic.GetCurrentLogonUserName();

            foreach (var empObject in selectedSurveyForList)
            {
                try
                {
                    StringBuilder emailBody = new StringBuilder();

                    var redirectlink = ConfigurationManager.AppSettings["CompleteSurveyLink"];

                    var adminFullName = ConfigurationManager.AppSettings["adminFullName"];

                    SurveyEmployee employee = new SurveyEmployee();

                    employee.Employee = rater.ToLower();

                    var email = new Surveys().getSurveyManager(employee);

                    var emailAddress = !string.IsNullOrWhiteSpace(employee.Employee) ? email.First().EmpEmail : "";

                    //var emailAddress = GetEmailAddress(rater);

                    emailBody.Append("Dear " + rater);

                    emailBody.Append("\n\n");

                    emailBody.Append("You have been asked to complete a 360 degree performance survey for " + empObject + "\n\n");

                    emailBody.Append("Follow the link below to complete the questionnaire.\n\n");

                    emailBody.Append("Link to questionnaire\t " + redirectlink + "\n\n");

                    emailBody.Append("If you have any questions please come and chat to me. \n\n");

                    emailBody.Append("The deadline for completion of the 360-degree review process is Monday 16 January 2017. [Please note: The system will be closed after this date in order to run the reports.] \n\n");

                    emailBody.Append("Regards,\n");

                    //var employeeFulleName = new Surveys().getSurveyTeamEmployeeList().Where(c => c.AD_User_Name.ToLower() == user.ToLower()).First().Employee;

                    emailBody.Append(adminFullName + "\n\n");
                    try
                    {
                        EmailSurveyEmail(emailBody.ToString(), emailAddress);
                    }
                    catch (Exception ex)
                    {
                        throw new Exception(ex.Message);
                    }
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
            }

            return(Ok());
        }