コード例 #1
0
        public ActionResult Delete(int id)
        {
            try
            {
                var viewModel = repository.EditGet(id);
                var res       = repository.DeleteVisitor(id);
                //mail notification

                TimeSpan     ts          = viewModel.EndTime - viewModel.StartTime;
                eAppointment appointment = new eAppointment();
                appointment.Subject  = "Visit Cancel Notification";
                appointment.Body     = "Your visit which has been scheduled on " + viewModel.visitDetails.StartTime.ToShortDateString() + " from " + viewModel.visitDetails.StartTime.ToShortTimeString() + " to " + viewModel.visitDetails.EndTime.ToShortTimeString() + " has been cancelled.";
                appointment.Location = "Canarys Automation";
                appointment.Duration = Convert.ToInt32(ts.TotalMinutes);
                DateTime dt       = viewModel.VisitingDate;
                TimeSpan timeSpan = new TimeSpan(viewModel.StartTime.Hour, viewModel.StartTime.Minute, viewModel.StartTime.Second);
                viewModel.VisitingDate = viewModel.VisitingDate.Add(timeSpan);
                appointment.Start      = Convert.ToDateTime(viewModel.VisitingDate);

                _context = new VisitorManagementContext();
                List <string> EmailIDs = new List <string>();

                if (viewModel.PrimaryParticipant != 0)
                {
                    string mailid = _context.User.Where(r => r.UserID == viewModel.PrimaryParticipant).FirstOrDefault().EmailAddress;
                    EmailIDs.Add(mailid);
                }
                if (viewModel.SecondaryParticipant != null && viewModel.SecondaryParticipant.Count > 0)
                {
                    for (int i = 0; viewModel.SecondaryParticipant.Count > i; i++)
                    {
                        string EmailAddres = _context.User.Where(r => r.UserID == viewModel.SecondaryParticipant[i]).FirstOrDefault().EmailAddress;
                        EmailIDs.Add(EmailAddres);
                    }
                }
                if (viewModel.VisitArrangement != null && viewModel.VisitArrangement.Where(r => r.IsSelected == true).Count() > 0)
                {
                    for (int i = 0; viewModel.VisitArrangement.Where(r => r.IsSelected == true).Count() > i; i++)
                    {
                        string mailid = _context.User.Where(r => r.UserID == viewModel.VisitArrangement.Where(l => l.IsSelected == true).ElementAt(i).DelegateContactID).FirstOrDefault().EmailAddress;
                        EmailIDs.Add(mailid);
                    }
                }
                EmailIDs.Add(viewModel.visit.EmailAddress);
                appointment.Email         = EmailIDs.ToArray();
                appointment.MeetingStatus = Microsoft.Office.Interop.Outlook.OlMeetingStatus.olMeeting;
                outLookEvents.OutLookEvent(appointment, true);
                return(Json(res));
            }
            catch (System.Exception)
            {
                //throw ex;
                return(Json(false));
            }
        }
コード例 #2
0
 public ActionResult Delete(int id)
 {
     _visitorRepository.DeleteVisitor(id);
     return(new OkResult());
 }