コード例 #1
0
        public static async Task SendPostMessageAsync(Models.ContactDetails contactDetails, string reqUrl)
        {
            var sender = new QueueClient(Connectionstring, QueueName);

            var messageModel = new
            {
                TitleMessage     = "New Contact Details record {" + contactDetails.ContactId + "} added at " + DateTime.UtcNow,
                CustomerGuid     = contactDetails.CustomerId,
                LastModifiedDate = contactDetails.LastModifiedDate,
                URL              = reqUrl + "/" + contactDetails.ContactId,
                IsNewCustomer    = false,
                TouchpointId     = contactDetails.LastModifiedTouchpointId,
                IsDigitalAccount = contactDetails.IsDigitalAccount ?? null
            };


            var msg = new Message(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(messageModel)))
            {
                ContentType = "application/json",
                MessageId   = contactDetails.CustomerId + " " + DateTime.UtcNow
            };

            //msg.ForcePersistence = true; Required when we save message to cosmos
            await sender.SendAsync(msg);
        }
コード例 #2
0
        public static async Task SendPatchMessageAsync(Models.ContactDetails contactDetails, Guid customerId, string reqUrl)
        {
            var sender       = new QueueClient(Connectionstring, QueueName);
            var messageModel = new
            {
                TitleMessage     = "Contact Details record modification for {" + customerId + "} at " + DateTime.UtcNow,
                CustomerGuid     = customerId,
                LastModifiedDate = contactDetails.LastModifiedDate,
                URL                = reqUrl,
                IsNewCustomer      = false,
                TouchpointId       = contactDetails.LastModifiedTouchpointId,
                FirstName          = contactDetails.FirstName,
                LastName           = contactDetails.LastName,
                ChangeEmailAddress = contactDetails.ChangeEmailAddress ?? null,
                IsDigitalAccount   = contactDetails.IsDigitalAccount ?? null,
                NewEmail           = contactDetails.NewEmail,
                CurrentEmail       = contactDetails.CurrentEmail,
                contactDetails.IdentityStoreId
            };

            var msg = new Message(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(messageModel)))
            {
                ContentType = "application/json",
                MessageId   = customerId + " " + DateTime.UtcNow
            };

            //msg.ForcePersistence = true; Required when we save message to cosmos
            await sender.SendAsync(msg);
        }
コード例 #3
0
        public static async Task SendPatchMessageAsync(Models.ContactDetails contactDetails, Guid customerId, string reqUrl)
        {
            var tokenProvider    = TokenProvider.CreateSharedAccessSignatureTokenProvider(KeyName, AccessKey);
            var messagingFactory = MessagingFactory.Create(BaseAddress, tokenProvider);
            var sender           = messagingFactory.CreateMessageSender(QueueName);
            var messageModel     = new
            {
                TitleMessage     = "Contact Details record modification for {" + customerId + "} at " + DateTime.UtcNow,
                CustomerGuid     = customerId,
                LastModifiedDate = contactDetails.LastModifiedDate,
                URL                = reqUrl,
                IsNewCustomer      = false,
                TouchpointId       = contactDetails.LastModifiedTouchpointId,
                FirstName          = contactDetails.FirstName,
                LastName           = contactDetails.LastName,
                ChangeEmailAddress = contactDetails.ChangeEmailAddress ?? null,
                IsDigitalAccount   = contactDetails.IsDigitalAccount ?? null,
                NewEmail           = contactDetails.NewEmail,
                CurrentEmail       = contactDetails.CurrentEmail,
                contactDetails.IdentityStoreId
            };

            var msg = new BrokeredMessage(new MemoryStream(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(messageModel))))
            {
                ContentType = "application/json",
                MessageId   = customerId + " " + DateTime.UtcNow
            };

            //msg.ForcePersistence = true; Required when we save message to cosmos
            await sender.SendAsync(msg);
        }
コード例 #4
0
 public ActionResult Index(ContactDetailsViewModel details)
 {
     // map back to Model
     Models.ContactDetails contact = new Models.ContactDetails();
     contact.CellPhone = new Models.Phone()
     {
         AreaCode = details.CellAreaCode,
         CountryCode = details.CellCountryCode,
         PhoneNumber = details.CellPhoneNumber
     };
     contact.Email = details.Email;
     contact.FirstName = details.FirstName;
     contact.HomeAddress = new Models.Address()
     {
         City = details.HomeCity,
         Country = details.HomeCountry,
         Line1 = details.HomeLine1,
         Line2 = details.HomeLine2,
         Line3 = details.HomeLine3,
         PostalCode = details.HomePostalCode,
         Province = details.HomeProvince
     };
     contact.HomePhone = new Models.Phone()
     {
         AreaCode = details.HomeAreaCode,
         CountryCode = details.HomeCountryCode,
         PhoneNumber = details.HomePhoneNumber
     };
     contact.LastName = details.LastName;
     return RedirectToAction("ViewDetails", "Management", details);
 }
コード例 #5
0
        public ActionResult Index()
        {
            //populate contact model
            ContactDetails.Models.ContactDetails contact = new Models.ContactDetails();
            contact.CellPhone = new Models.Phone()
            {
                AreaCode = "011",
                CountryCode = "ZAR",
                PhoneNumber = "011"
            };
            contact.Email = "*****@*****.**";
            contact.FirstName = "ddd";
            contact.HomeAddress = new Models.Address()
            {
                City = "Houghton",
                Country = "ZA",
                Line1 = "44 west ave",
                Line2 = "test line 2",
                Line3 = "test line 3",
                PostalCode = "2222",
                Province = "GAUTENG"
            };
            contact.HomePhone = new Models.Phone()
            {
                AreaCode = "011",
                CountryCode = "+27",
                PhoneNumber = "8889999"
            };
            contact.LastName = "Aglioti";

            //populate viewmodel from model
            ContactDetailsViewModel vm = new ContactDetailsViewModel()
            {
                CellAreaCode = contact.CellPhone.AreaCode,
                CellCountryCode = contact.CellPhone.CountryCode,
                CellPhoneNumber = contact.CellPhone.PhoneNumber,

                HomeAreaCode = contact.HomePhone.AreaCode,
                HomeCountryCode = contact.HomePhone.CountryCode,
                HomePhoneNumber = contact.HomePhone.PhoneNumber,

                Email = contact.Email,
                FirstName = contact.FirstName,

                HomeCity = contact.HomeAddress.City,
                HomeCountry = contact.HomeAddress.Country,
                HomeLine1 = contact.HomeAddress.Line1,
                HomeLine2 = contact.HomeAddress.Line2,
                HomeLine3 = contact.HomeAddress.Line3,
                HomePostalCode = contact.HomeAddress.PostalCode,
                HomeProvince = contact.HomeAddress.Province,

                LastName = contact.LastName
            };

            return View(vm);
        }
 public void Setup()
 {
     _contact           = new Models.ContactDetails();
     _request           = new DefaultHttpRequest(new DefaultHttpContext());
     _log               = new Mock <ILogger>();
     _resourceHelper    = new Mock <IResourceHelper>();
     _httpRequestHelper = new Mock <IHttpRequestHelper>();
     _getContactByIdHttpTriggerService = new Mock <IGetContactDetailsByIdHttpTriggerService>();
     _httpResponseMessageHelper        = new HttpResponseMessageHelper();
     _function = new GetContactByIdHttpTrigger(_resourceHelper.Object, _httpRequestHelper.Object, _getContactByIdHttpTriggerService.Object, _httpResponseMessageHelper);
 }
        public async Task GetContactHttpTrigger_ReturnsStatusCodeOk_WhenContactExists()
        {
            _resourceHelper.DoesCustomerExist(Arg.Any <Guid>()).Returns(true);

            var contact = new Models.ContactDetails();

            _getContactHttpTriggerService.GetContactDetailsForCustomerAsync(Arg.Any <Guid>()).Returns(Task.FromResult <Models.ContactDetails>(contact).Result);

            // Act
            var result = await RunFunction(ValidCustomerId);

            // Assert
            Assert.IsInstanceOf <HttpResponseMessage>(result);
            Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
        }
コード例 #8
0
        public async Task GetContactHttpTrigger_ReturnsStatusCodeOk_WhenContactExists()
        {
            // Arrange
            _httpRequestHelper.Setup(x => x.GetDssTouchpointId(_request)).Returns("0000000001");
            _resourceHelper.Setup(x => x.DoesCustomerExist(It.IsAny <Guid>())).Returns(Task.FromResult(true));
            var contact = new Models.ContactDetails();

            _getContactHttpTriggerService.Setup(x => x.GetContactDetailsForCustomerAsync(It.IsAny <Guid>())).Returns(Task.FromResult <Models.ContactDetails>(contact));

            // Act
            var result = await RunFunction(ValidCustomerId);

            // Assert
            Assert.IsInstanceOf <HttpResponseMessage>(result);
            Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
        }
コード例 #9
0
 public void Setup()
 {
     _contactDetails = new Models.ContactDetails()
     {
         PreferredContactMethod = ReferenceData.PreferredContactMethod.Email, EmailAddress = "*****@*****.**"
     };
     _request                       = new DefaultHttpRequest(new DefaultHttpContext());
     _log                           = new Mock <ILogger>();
     _resourceHelper                = new Mock <IResourceHelper>();
     _httpRequestMessageHelper      = new Mock <IHttpRequestHelper>();
     _validate                      = new Validate();
     _postContactHttpTriggerService = new Mock <IPostContactDetailsHttpTriggerService>();
     _provider                      = new Mock <IDocumentDBProvider>();
     _httpResponseMessageHelper     = new HttpResponseMessageHelper();
     _function                      = new PostContactDetailsHttpTrigger.Function.PostContactByIdHttpTrigger(_resourceHelper.Object, _httpRequestMessageHelper.Object, _validate, _postContactHttpTriggerService.Object, _provider.Object, _httpResponseMessageHelper);
 }
コード例 #10
0
        public void Setup()
        {
            _contact = Substitute.For <Models.ContactDetails>();

            _request = new HttpRequestMessage()
            {
                Content    = new StringContent(string.Empty),
                RequestUri =
                    new Uri($"http://localhost:7071/api/Customers/7E467BDB-213F-407A-B86A-1954053D3C24/ContactDetails/1e1a555c-9633-4e12-ab28-09ed60d51cb")
            };

            _log                              = Substitute.For <ILogger>();
            _resourceHelper                   = Substitute.For <IResourceHelper>();
            _httpRequestMessageHelper         = Substitute.For <IHttpRequestMessageHelper>();
            _getContactByIdHttpTriggerService = Substitute.For <IGetContactDetailsByIdHttpTriggerService>();
            _httpRequestMessageHelper.GetTouchpointId(_request).Returns("0000000001");
        }
コード例 #11
0
 public void Setup()
 {
     _contactDetails = new Models.ContactDetails()
     {
         CustomerId = Guid.Parse(ValidCustomerId)
     };
     _contactDetailsPatch = new Models.ContactDetailsPatch();
     _request             = new DefaultHttpRequest(new DefaultHttpContext());
     _log                            = new Mock <ILogger>();
     _resourceHelper                 = new Mock <IResourceHelper>();
     _validate                       = new Validate();
     _httpRequestMessageHelper       = new Mock <IHttpRequestHelper>();
     _patchContactHttpTriggerService = new Mock <IPatchContactDetailsHttpTriggerService>();
     _provider                       = new Mock <IDocumentDBProvider>();
     _httpResponseMessageHelper      = new HttpResponseMessageHelper();
     _function                       = new PatchContactHttpTrigger(_resourceHelper.Object, _httpRequestMessageHelper.Object, _validate, _patchContactHttpTriggerService.Object, _provider.Object, _httpResponseMessageHelper);
 }
コード例 #12
0
        public void Setup()
        {
            _contactDetails = Substitute.For <Models.ContactDetails>();

            _request = new HttpRequestMessage()
            {
                Content    = new StringContent(string.Empty),
                RequestUri =
                    new Uri($"http://localhost:7071/api/Customers/7E467BDB-213F-407A-B86A-1954053D3C24/ContactDetails/")
            };

            _log                           = Substitute.For <ILogger>();
            _resourceHelper                = Substitute.For <IResourceHelper>();
            _httpRequestMessageHelper      = Substitute.For <IHttpRequestMessageHelper>();
            _validate                      = Substitute.For <IValidate>();
            _postContactHttpTriggerService = Substitute.For <IPostContactDetailsHttpTriggerService>();
            _httpRequestMessageHelper.GetTouchpointId(_request).Returns("0000000001");
            _httpRequestMessageHelper.GetApimURL(_request).Returns("http://localhost:7071/");
            _provider = Substitute.For <IDocumentDBProvider>();
        }
コード例 #13
0
        public JsonResult GetContactDetails(string contactid)
        {
            ContactDetails objcont = new Models.ContactDetails();

            //if (Request.QueryString["CompanyId"] != null)
            //{
            //    int CompidIddecrypt = Convert.ToInt32(CryptorEngine.Decrypt(cm.Code_Decrypt(Convert.ToString(Request.QueryString["CompanyId"]))));
            //    objcont.companyid = CompidIddecrypt;
            //}
            if (contactid != null)
            {
                int ConIddecrypt = Convert.ToInt32(CryptorEngine.Decrypt(cm.Code_Decrypt(contactid)));
                objcont.contactid = ConIddecrypt;
            }
            var Titlelist = context.SPgettitle().Select(xx => new SelectListItem {
                Value = xx.ToString(), Text = xx.ToString()
            }).ToList();

            ViewData["Titlelist"] = Titlelist;

            if (objcont.contactid != 0)
            {
                var contdata = context.SpGetContactDataforedit(objcont.contactid).FirstOrDefault();
                if (contdata != null)
                {
                    // objcont.contactid = contdata.contactid;
                    objcont.contactfullname    = contdata.contactfullname;
                    objcont.contactemail       = contdata.contactemail;
                    objcont.contactcellphone   = contdata.contactcellphone;
                    objcont.contactphone       = contdata.contactphone;
                    objcont.titlestandard      = contdata.titlestandard;
                    objcont.linkedinprofileurl = contdata.linkedinprofileurl;
                    objcont.combinednotes      = contdata.combinednotes;
                    objcont.companyid          = contdata.companyid;
                }
            }
            return(Json(new { data = objcont, Titlelist = Titlelist }, JsonRequestBehavior.AllowGet));
        }