public ActionResult SendEmail(EmailViewModel vm) { try { OrdersTransfereeItineraryViewModel viewModel = BuildItineraryByOrderId(vm.id); viewModel.Id = vm.id; viewModel.IsPdf = true; var to = ParseAddress(vm.Email); if (to == null) { return(null); } Transferee ee = GetTransfereeByOrderId(vm.id); if (ee == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound, "Not found")); } viewModel.TransfereeName = ee.FullName; string filename = "Itinerary" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".pdf"; var pdf = new Rotativa.ViewAsPdf("~/Views/PDF/PDFItinerary.cshtml", viewModel); byte[] pdfBytes = pdf.BuildFile(ControllerContext); MemoryStream stream = new MemoryStream(pdfBytes); EmailHelper EH = new EmailHelper(); EH.SendEmail_FS(to, vm.Subject, vm.Message, SendGrid.MimeType.Html, filename, pdfBytes); viewModel.IsPdf = false; return(PartialView("~/views/orders/partials/_Itinerary.cshtml", viewModel)); } catch (Exception ex) { ModelState.Clear(); return(null); } }
public static TransfereeDto ToTransferee(Transferee transferee) { var originPhones = new List <PhoneDto>(); var destinationPhones = new List <PhoneDto>(); foreach (var item in transferee.TransfereePhone) { var phoneDto = Mapper.Map <PhoneDto>(item.Phone); if (item.Type?.ToLowerClean() == "origin") { phoneDto.LocationType = "Origin"; originPhones.Add(phoneDto); } else if (item.Type?.ToLowerClean() == "destination") { phoneDto.LocationType = "Destination"; destinationPhones.Add(phoneDto); } } var transfereeDto = transferee.ToDto(); transfereeDto.Emails = Mapper.Map <List <EmailDto> >(transferee.Email); transfereeDto.OriginPhones = originPhones; transfereeDto.DestinationPhones = destinationPhones; return(transfereeDto); }
public static ContactInfoDto ToContactInfoDto(Transferee transferee) { return(new ContactInfoDto { Email = transferee.Email.FirstOrDefault()?.Value, ContactNumber = ToContactNumberDto(transferee.TransfereePhone) }); }
public void Add(Transferee transferee) { var userManager = UserHelper.GetUserManager <Transferee>(_context); transferee.UserName = transferee.Email; var result = userManager.Create(transferee, TokenHelper.NewToken()); userManager.AddToRole(transferee.Id, UserRoles.Transferee); }
public void SetUp() { var config = new MapperConfiguration(c => c.AddProfile(new MappingProfile())); var _mapper = config.CreateMapper(); _context = new ApplicationDbContext(); _transferee = _context.Transferees.First(u => u.UserName.Equals("*****@*****.**")); _controller = new EmailController(new UnitOfWork(_context), _mapper); }
public void InsertMessage_ValidProperty_ShouldAddMessageAnd_2Notifications_If_Manager() { _controller.MockCurrentUserAndRole("9", _userName, UserRoles.ProgramManager); var orderId = "1"; Order order = new Order() { Id = orderId }; var consultant = new Consultant() { SeContactUid = 1 }; var tEmail = "*****@*****.**"; var transferee = new Transferee() { Id = "1", Email = tEmail }; _mockConsultantsRepository.Setup(c => c.GetConsultantBySeContactUid(1)).Returns(consultant); _mockTransfereesRepository.Setup(t => t.GetTransfereeByEmail(tEmail)).Returns(transferee); _mockRepository.Setup(o => o.GetOrderById(orderId)).Returns(order); order.Consultant = consultant; order.Transferee = transferee; var propId = "1"; HomeFindingProperty prop = new HomeFindingProperty() { Id = propId }; _mockHFPRepository.Setup(r => r.GetHomeFindingPropertyById(propId)).Returns(prop); Message mess = new Message() { HomeFindingPropertyId = propId }; MessageDto dto = new MessageDto() { HomeFindingPropertyId = propId, OrderId = orderId }; var result = _controller.UpsertPropertyMessage(dto); prop.Messages.Count.Should().Be(1); var rl = _controller.User.IsInRole(UserRoles.ProgramManager); rl.Should().BeTrue(); consultant.UserNotifications.Count().Should().Be(1); transferee.UserNotifications.Count().Should().Be(1); result.Should().BeOfType <System.Web.Http.Results.OkResult>(); }
public static Order CreateOrder(Consultant consultant = null, Manager manager = null, Transferee transferee = null, string TrackingId = null) { var order = OrderBuilder.New().First(); order.TrackingId = TrackingId; order.Consultant = consultant; order.ProgramManager = manager; order.Transferee = transferee; return(order); }
public void SetUp() { Context = new ApplicationDbContext(); Server = TestServer.Create <Startup>(); ApiKey = "SeApiTokenKeyTest"; transferee = Context.Transferees.First(u => u.UserName.Equals("*****@*****.**")); dsc = Context.Consultants.First(u => u.UserName.Equals("*****@*****.**")); pm = Context.Managers.First(u => u.UserName.Equals("*****@*****.**")); }
public void addTransfereeTest() { var transferee1 = new Transferee() { Id = "Transferee1", Email = "*****@*****.**", SeContactUid = 1 }; SetupRepositoryWithSource(new[] { transferee1 }); var result = _transfereesRepository.GetTransfereeByEmail("*****@*****.**"); result.Should().Equals(transferee1); }
public ActionResult ItineraryPartial(string id) { OrdersTransfereeItineraryViewModel viewModel = GetItineraryByOrderId(id); viewModel.Id = id; Transferee ee = GetTransfereeByOrderId(id); if (ee == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound, "Not found")); } viewModel.TransfereeName = ee.FullName; return(PartialView("~/views/orders/partials/_Itinerary.cshtml", viewModel)); }
public ActionResult GenerateItineraryPDF(string id) { OrdersTransfereeItineraryViewModel viewModel = GetItineraryByOrderId(id); viewModel.Id = id; viewModel.IsPdf = true; Transferee ee = GetTransfereeByOrderId(id); viewModel.TransfereeName = ee.FullName; return(new Rotativa.ViewAsPdf("~/Views/PDF/PDFItinerary.cshtml", viewModel) { FileName = "Itinerary.pdf", PageMargins = new Rotativa.Options.Margins(0, 0, 0, 0) }); }
public void SetUp() { var config = new MapperConfiguration(c => c.AddProfile(new MappingProfile())); var mapper = config.CreateMapper(); _context = new ApplicationDbContext(); _transferee = _context.Transferees.First(u => u.UserName.Equals("*****@*****.**")); _dsc = _context.Consultants.First(u => u.UserName.Equals("*****@*****.**")); _pm = _context.Managers.First(u => u.UserName.Equals("*****@*****.**")); var emailHelper = new EmailHelper(); var accountHelper = new AccountHelper(emailHelper); _controller = new OrdersController(new UnitOfWork(_context), mapper, accountHelper); }
private static async Task <BillToResponse> DetermineBillTo(string id, Transferee transferee, string regNumber) { dynamic billTo = null; string billToLabel = null; billTo = _accountEntities.FirstOrDefault(ae => ae.AccountingId.Equals(id)); if (billTo != null) { billToLabel = "ACCOUNT"; } else { billTo = _vendor.FirstOrDefault(v => v.Accounting_SI_Code.Equals(id)); if (billTo != null) { billToLabel = "VENDOR"; } } if (billTo == null && transferee != null) { //check to see if billto is transferee var NamesRecord = await WaterDbAccess.GetNames(id); if (NamesRecord != null && NamesRecord.FirstName.Equals(transferee.FirstName, StringComparison.CurrentCultureIgnoreCase) && NamesRecord.LastName.Equals(transferee.LastName, StringComparison.CurrentCultureIgnoreCase)) { billTo = transferee; billToLabel = "TRANSFEREE"; } else { Console.WriteLine($"{regNumber}, Cant find the billto for Storage"); Trace.Write($"{regNumber}, Cant find the billto for Storage"); } } var response = new BillToResponse { BilltoId = billTo?.Id, BilltoType = billToLabel }; return(response); }
public ActionResult EmailForm(string id) { Transferee ee = GetTransfereeByOrderId(id); if (ee == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound, "Not found")); } var viewModel = new EmailViewModel(); viewModel.id = id; viewModel.Email = ee.Email; viewModel.Name = ee.FullName; viewModel.Subject = "Your Dwellworks Itinerary"; viewModel.Message = "Please find attached your itinerary for the upcoming move"; return(PartialView("~/views/Mailers/Partials/Email.cshtml", viewModel)); }
public void SetUp() { var config = new MapperConfiguration(c => c.AddProfile(new MappingProfile())); var mapper = config.CreateMapper(); _context = new ApplicationDbContext(); _transferee = _context.Transferees.First(u => u.UserName.Equals("*****@*****.**")); _dsc = _context.Consultants.First(u => u.UserName.Equals("*****@*****.**")); _pm = _context.Managers.First(u => u.UserName.Equals("*****@*****.**")); _mockBotHelper = new Mock <IBotHelper>(); _mockBot = new Mock <IBot>(); _mockTextWriter = new Mock <TextWriter>(); _url = "http://test.com"; _mockBotHelper.Setup(b => b.GetBot(_url)).Returns(_mockBot.Object); _functions = new Functions(new UnitOfWork(_context), _mockBotHelper.Object); }
public void SetUp() { var config = new MapperConfiguration(c => c.AddProfile(new MappingProfile())); var mapper = config.CreateMapper(); _context = new ApplicationDbContext(); _transferee = _context.Transferees.SingleOrDefault(u => u.Email.Equals("*****@*****.**")); if (_transferee == null) { _transferee = new Transferee() { Email = "*****@*****.**", UserName = "******" }; _context.Transferees.Add(_transferee); _context.SaveChanges(); _context.Entry(_transferee).Reload(); } _pm = _context.Managers.First(u => u.UserName.Equals("*****@*****.**")); _dsc = _context.Consultants.SingleOrDefault(u => u.Email.Equals("*****@*****.**")); if (_dsc == null) { _dsc = new Consultant() { Email = "*****@*****.**", UserName = "******" }; _context.Consultants.Add(_dsc); _context.SaveChanges(); _context.Entry(_dsc).Reload(); } var queueStore = new QueueStore(); _mockBookMarkletHelper = new Mock <IBookMarkletHelper>(); _controller = new BookMarkletController(new UnitOfWork(_context), mapper, queueStore, _mockBookMarkletHelper.Object); }
public static TransfereeDto ToDto(this Transferee transferee) { return(Mapper.Map <TransfereeDto>(transferee)); }
private static async Task updateStorageJob(Move move, int jobId, List <ServiceOrder> serviceOrders, string regNumber, Transferee transferee, List <InsuranceClaims> legacyInsuranceClaims, int ssoId) { try { Console.WriteLine("Updating ST"); Trace.WriteLine($"{regNumber}, , Updating ST Expense record"); var vendorEntity = _vendor.FirstOrDefault(v => v.Accounting_SI_Code == move.StorageAgent.VendorNameId); var soId = serviceOrders.FirstOrDefault(so => so.ServiceId == 32 && so.SuperServiceOrderId == ssoId).Id; await JobsApi.UpdateStorageMilestone(_httpClient, soId, move, jobId, vendorEntity, regNumber, legacyInsuranceClaims); var storageRevId = await JobsApi.AddStorageRevRecord(_httpClient, soId, move, jobId, regNumber); dynamic billTo = null; var billToLabel = string.Empty; billTo = _accountEntities.FirstOrDefault(ae => ae.AccountingId.Equals(move.StorageAgent.HOW_SENT)); if (billTo != null) { billToLabel = "Account"; } else { billTo = _vendor.FirstOrDefault(ae => ae.Accounting_SI_Code.Equals(move.StorageAgent.HOW_SENT)); if (billTo != null) { billToLabel = "Vendor"; } } if (billTo == null) { //check to see if billto is transferee var NamesRecord = await WaterDbAccess.GetNames(move.StorageAgent.HOW_SENT); if (NamesRecord != null && NamesRecord.FirstName.Equals(transferee.FirstName, StringComparison.CurrentCultureIgnoreCase) && NamesRecord.LastName.Equals(transferee.LastName, StringComparison.CurrentCultureIgnoreCase)) { billTo = transferee; billToLabel = "Transferee"; } else { Console.WriteLine($"{regNumber}, , Cant find the billto for Storage so we are defaulting it"); Trace.WriteLine($"{regNumber}, , Cant find the billto for Storage so we are defaulting it"); } } if (!string.IsNullOrEmpty(move.StorageAgent.HOW_SENT) && billTo == null) { Trace.WriteLine($"{regNumber}, , Missing Storage BillTo {move.StorageAgent.HOW_SENT}"); } await JobsApi.updateStorageRevRecord(_httpClient, soId, storageRevId, move, jobId, regNumber, billTo, billToLabel, legacyInsuranceClaims); } catch (Exception ex) { Console.WriteLine("Error while updating ST"); Trace.WriteLine($"{regNumber}, , Error while updating ST"); Trace.WriteLine($"{regNumber}, , {ex.Message}"); } }