public override IController CreateController(RequestContext requestContext, string controllerName) { if (controllerName == "Home") { var fuse8Context = new Fuse8Context(); var credentials = new NetworkCredential( requestContext.HttpContext.Request.Form.Get("username"), requestContext.HttpContext.Request.Form.Get("password")); var smtpClient = new SmtpClient( requestContext.HttpContext.Request.Form.Get("smtp"), ToInt32(requestContext.HttpContext.Request.Form.Get("port"))); smtpClient.Credentials = credentials; smtpClient.EnableSsl = true; var mailSender = new MailSender(smtpClient); var orderRepository = new OrderRepository(fuse8Context.Orders.Include("OrderDetails.Product")); var reportExporter = new ReportExporter(); var reportSender = new ReportSender(mailSender); return(new HomeController(orderRepository, reportExporter, reportSender)); } return(base.CreateController(requestContext, controllerName)); }
public ViewControler() { restaurantManager = new RestaurantManager(); dishViewModel = new DishViewModel(restaurantManager); clientViewModel = new ClientViewModel(restaurantManager); restaurantManager.AddSampleData(); dishesNames = new List <string>(); Menu = new ObservableCollection <Dish>(); Card = new ObservableCollection <Dish>(); Clients = new ObservableCollection <Client>(); ActiveOrders = new ObservableCollection <Order>(); CompletedOrders = new ObservableCollection <Order>(); CurrentOrderDisplayDishes = new ObservableCollection <Dish>(); ActiveDelivery = new ObservableCollection <Order>(); CompletedDeliveries = new ObservableCollection <Order>(); CurrentDeliveryDisplayDishes = new ObservableCollection <Dish>(); reportSender = new ReportSender(restaurantManager, 15000); Task.Run(() => reportSender.SendReport()); reportReceiver = new ReportReceiver(startReportDate, endReportDate, reportIncome); reportReceiver.Subscribe(reportSender); addDish = new DelegateCommand(addDishToCard); clearCard = new DelegateCommand(Clear); addClient = new DelegateCommand(AddClient); createOrder = new DelegateCommand(CreateOrder); completeOrder = new DelegateCommand(CompleteOrder); completeDelivery = new DelegateCommand(CompleteDelivery); RefreshView(); }
public API(RestaurantManager restaurantManager) { socketConnections = new List <SocketConnectionController>(); this.restaurantManager = restaurantManager; this.reportSender = new ReportSender(restaurantManager, 30000); Task.Run(() => reportSender.SendReport()); this.advertSender = new AdvertSender(restaurantManager, 10000); Task.Run(() => advertSender.SendReport()); }
public void SendTest() { var mailSender = Mock.Of <IMailSender>(); var stream = new MemoryStream(); var sut = new ReportSender(mailSender); sut.Send(stream, "*****@*****.**", "*****@*****.**"); Mock.Get(mailSender).Verify(ms => ms.Send(It.Is <MailMessage>(mm => mm.From.Address == "*****@*****.**"))); Mock.Get(mailSender).Verify(ms => ms.Send(It.Is <MailMessage>(mm => mm.To.Any(ma => ma.Address == "*****@*****.**")))); Mock.Get(mailSender).Verify(ms => ms.Send(It.Is <MailMessage>(mm => mm.Attachments.Any(a => a.ContentStream == stream)))); }
public async Task <ActionResult <IEnumerable <Kisiler> > > GetReportByLocation(string location, string active) { var contactDetail = await _repository.GetReportByLocation(location); if (contactDetail == null) { _logger.LogError($".... with id: {location}, not found."); return(NotFound()); } ReportSender rp = new ReportSender(); rp.Sender(); return(Ok(contactDetail)); }
public async Task <ActionResult> SaveReport(FormCollection formCollection) { var pages = new List <Page>(); int pageId, questionId; int?questionType, lineId, answerId; // for complicated question string employeeId = null; foreach (var key in formCollection.AllKeys) { if (key == "EmployeeId") { employeeId = formCollection[key]; continue; } _testService.ParseAnswerName(key, out pageId, out questionId, out questionType, out lineId, out answerId); var page = pages.FirstOrDefault(p => p.Id == pageId); if (page == null) { var dbPage = await _testService.GetPageById(pageId); page = new Page { Id = dbPage.Id, Name = dbPage.Name, Order = dbPage.Order, Questions = new List <Question>() }; } else { var oldPage = page; pages.Remove(oldPage); } var question = page.Questions.FirstOrDefault(q => q.Id == questionId); if (question == null) { var dbQuestion = await _testService.GetQuestion(questionId); question = new Question { Id = dbQuestion.Id, QuestionName = dbQuestion.QuestionName, TypeAnswer = dbQuestion.TypeAnswer, PageId = dbQuestion.PageId, Answers = new List <Answer>() }; } else { var oldQuestion = question; page.Questions.Remove(oldQuestion); } foreach (var value in formCollection.GetValues(key)) { var answer = new Answer { Name = value, QuestionId = question.Id }; question.Answers.Add(answer); } page.Questions.Add(question); pages.Add(page); } Guid emplId; Employee employee; if (!Guid.TryParse(employeeId, out emplId) || (employee = await adminManager.GetEmployee(emplId)) == null) { return(View("ReportResult", false)); } var sender = new ReportSender(mailingService, adminManager, employee, pages); var result = await sender.SendMailsToRecieversAsync(); if (result.Succeeded) { await _reportManager.AddReport(emplId); } return(View("ReportResult", new ReportPassedViewModel { Passed = result.Succeeded, EmployeeId = emplId.ToString() })); }