public UpdateContactDataResponse UpdateContactForAPatient(UpdateContactDataRequest putUpdateContactRequest, string patientId) { //[Route("/{Context}/{Version}/{ContractNumber}/Contacts/{Id}", "PUT")] Uri contactUri = new Uri(string.Format("{0}/Contact/{1}/{2}/{3}/Contacts/{4}?UserId={5}", Url, Context, Version, ContractNumber, patientId, HeaderUserId)); HttpClient contactClient = GetHttpClient(contactUri); DataContractJsonSerializer contactJsonSer = new DataContractJsonSerializer(typeof(UpdateContactDataRequest)); MemoryStream contactMs = new MemoryStream(); contactJsonSer.WriteObject(contactMs, putUpdateContactRequest); contactMs.Position = 0; //use a Stream reader to construct the StringContent (Json) StreamReader contactSr = new StreamReader(contactMs); StringContent contactContent = new StringContent(contactSr.ReadToEnd(), System.Text.Encoding.UTF8, "application/json"); contactMs.Dispose(); //Post the data var contactResponse = contactClient.PutAsync(contactUri, contactContent); var contactResponseContent = contactResponse.Result.Content; string contactResponseString = contactResponseContent.ReadAsStringAsync().Result; UpdateContactDataResponse responseContact = null; using (var contactMsResponse = new MemoryStream(Encoding.Unicode.GetBytes(contactResponseString))) { var contactSerializer = new DataContractJsonSerializer(typeof(UpdateContactDataResponse)); responseContact = (UpdateContactDataResponse)contactSerializer.ReadObject(contactMsResponse); } return(responseContact); }
public UpdateContactDataResponse Put(UpdateContactDataRequest request) { UpdateContactDataResponse response = new UpdateContactDataResponse(); response.Version = request.Version; try { if (string.IsNullOrEmpty(request.UserId)) { throw new UnauthorizedAccessException("ContactDD:Put()::Unauthorized Access"); } response = Manager.UpdateContact(request); } catch (Exception ex) { CommonFormat.FormatExceptionResponse(response, base.Response, ex); string aseProcessID = ConfigurationManager.AppSettings.Get("ASEProcessID") ?? "0"; Helpers.LogException(int.Parse(aseProcessID), ex); } return(response); }
public UpdateContactDataResponse UpdateContact(UpdateContactDataRequest request) { UpdateContactDataResponse response = null; try { if (request == null) { throw new ArgumentNullException("request"); } CheckForRequiredFields(request.ContactData); IContactRepository repo = Factory.GetRepository(request, RepositoryType.Contact); if (repo == null) { throw new Exception("The repository should not be null"); } response = repo.Update(request) as UpdateContactDataResponse; } catch (Exception ex) { throw ex; } return(response); }
public void UpdateContact_Test() { //List<int> weekDays = new List<int>(); //List<string> timesOfday = new List<string>(); //List<LanguageData> language = new List<LanguageData>(); //List<CommModeData> modes = new List<CommModeData>(); //List<PhoneData> phones = new List<PhoneData>(); //List<EmailData> emails = new List<EmailData>(); //List<AddressData> addresses = new List<AddressData>(); // phones.Add(new PhoneData { Id = "52ebf4b6d433230b0cf8780e", IsText = false, Number = "1111111111", OptOut = false, PhonePreferred = true, TextPreferred = false, SubTypeId = "52e18c2ed433232028e9e3a6" }); // phones.Add(new PhoneData { Id = "-1", IsText = false, Number = "222222222", OptOut = false, PhonePreferred = true, TextPreferred = false, SubTypeId = "52e18c32d433232028e9e3a7" }); // emails.Add(new EmailData { Id = "52ebf4bad433230b0cf87810", Text = "*****@*****.**", SubTypeId = "52e18c2ed433232028e9e3a6", OptOut = false, Preferred = true }); //emails.Add(new EmailData { Id = "-1", Text = "*****@*****.**", SubTypeId = "52e18c32d433232028e9e3a7", OptOut = false, Preferred = true }); // addresses.Add(new AddressData { Id = "-52ebf4c0d433230b0cf87812", Line1 = "line1", Line2 = "line2", Line3 = "", City = "dallas", PostalCode = "", StateId = "52e195b8d433232028e9e3e4", SubTypeId = "52e18c2ed433232028e9e3a6", OptOut = false, Preferred = true }); //addresses.Add(new AddressData { Id = "-2", Line1 = "some lane", Line2 = "some block", Line3 = "some", City = "austin", PostalCode = "", StateId = "52e195b8d433232028e9e3e4", SubTypeId = "52e18c32d433232028e9e3a7", OptOut = false, Preferred = true }); //weekDays = new List<int>(); //weekDays.Add(6); //modes.Add(new CommModeData { ModeId = "52e17cc2d433232028e9e38f", OptOut = false, Preferred = false }); //modes.Add(new CommModeData { ModeId = "52e17ce6d433232028e9e390", OptOut = false, Preferred = false }); //timesOfday = new List<string>(); //timesOfday.Add("52e17de8d433232028e9e394"); //timesOfday.Add("52e17dedd433232028e9e395"); UpdateContactDataRequest updataReq = new UpdateContactDataRequest(); ContactData data = new ContactData(); updataReq.ContractNumber = "InHealth001"; updataReq.UserId = "DD_TestHarness"; updataReq.Version = 1; //List<CommModeData> modes = new List<CommModeData>(); //modes.Add(new CommModeData { ModeId = "52e17cc2d433232028e9e38f", OptOut = false, Preferred = false }); //modes.Add(new CommModeData { ModeId = "52e17ce6d433232028e9e390", OptOut = true, Preferred = false }); //modes.Add(new CommModeData { ModeId = "52e17d08d433232028e9e391", OptOut = false, Preferred = true }); //modes.Add(new CommModeData { ModeId = "52e17d10d433232028e9e392", OptOut = false, Preferred = false }); //request.Modes = modes; //List<AddressData> addresses = new List<AddressData>(); //addresses.Add(new AddressData { Id = "52f3f332d6a48506c47612a1", Line1 = "phytel", Line2 = "11511 luna road", Line3 = "suite 600", City = "Dallas", PostalCode = "75234", StateId = "52e195b8d433232028e9e3e4", Preferred = false, OptOut = false, SubTypeId = "52e18c45d433232028e9e3ab" }); //request.Addresses = addresses; List <PhoneData> phones = new List <PhoneData>(); //phones.Add(new PhoneData { Id = "52e7583dd43323149870c225", IsText = false, Number = "2142142147", OptOut = false, PhonePreferred = true, TextPreferred = false, SubTypeId = "52e18c2ed433232028e9e3a6" }); //phones.Add(new PhoneData { Id = "52e75847d43323149870c226", IsText = true, Number = "8178178179", OptOut = false, PhonePreferred = false, TextPreferred = true, SubTypeId = "52e18c38d433232028e9e3a8" }); phones.Add(new PhoneData { Id = "-7", TypeId = "52e18c32d433232028e9e3a7" }); //data.Phones = phones; // List<EmailData> emails = new List<EmailData>(); // emails.Add(new EmailData { Id = "52f3f3bfd6a48506c47612ab", OptOut = false, Preferred = true, SubTypeId = "52e18c32d433232028e9e3a7", Text = "*****@*****.**" }); //// emails.Add(new EmailData { Id = "52e75855d43323149870c229", OptOut = false, Preferred = false, SubTypeId = "52e18c41d433232028e9e3aa", Text = "*****@*****.**" }); // request.Emails = emails; //List<LanguageData> languages = new List<LanguageData>(); //languages.Add(new LanguageData { LookUpLanguageId = "52e199dfd433232028e9e3f3", Preferred = true }); //languages.Add(new LanguageData { LookUpLanguageId = "52e199d5d433232028e9e3f2", Preferred = false }); //languages.Add(new LanguageData { LookUpLanguageId = "52e199d1d433232028e9e3f1", Preferred = false }); //languages.Add(new LanguageData { LookUpLanguageId = "52e199cdd433232028e9e3f0", Preferred = false }); //request.Languages = languages; //List<string> times = new List<string>(); //times.Add("52e17de8d433232028e9e394"); //times.Add("52e17dedd433232028e9e395"); //request.TimesOfDaysId = times; //List<int> days = new List<int>(); //days.Add(1); //days.Add(2); //days.Add(3); //days.Add(4); //days.Add(0); //days.Add(5); //request.WeekDays = days; //request.pat = "52e26f5b072ef7191c11e0b6"; //updataReq.data = "52f6d709d6a4850aa439fa82"; //updataReq.data = "52e1817ad433232028e9e39d"; UpdateContactDataResponse response = manager.UpdateContact(updataReq); Assert.IsNotNull(response); }