public async Task <Policy> SetContact(long id, PolicyContactDTO contact) { if (contact == null) { throw new BadRequestException(); } using (InsuranceDbContext context = ContextFactory.CreateContext()) { Policy policy = await FetchPolicy(context, id, true); policy.Contact = CreateContactFromDto(policy.Contact, contact); await context.SaveChangesAsync(); return(policy); } }
public async Task <PolicyDTO> UpdateContactDetails(long?policyId, BicycleQuote model) { AddressDTO address = new AddressDTO() { AddressLine1 = model.PolicyDetail.Contact.Address, PostCode = model.PolicyDetail.Contact.PostCode, Suburb = model.PolicyDetail.Contact.Suburb }; PolicyContactDTO dto = new PolicyContactDTO() { Address = address, DateOfBirth = model.PolicyDetail.Contact.DateOfBirth.ToDateTime(), EmailAddress = model.PolicyDetail.Contact.ContactEmail, FirstName = model.PolicyDetail.Contact.FirstName, LastName = model.PolicyDetail.Contact.LastName, PhoneNumber = model.PolicyDetail.Contact.ContactNumber }; return(await PolicyApi.SetContactWithHttpMessagesAsync(policyId.GetValueOrDefault(), dto, Jwt.CreateAuthorizationHeader(policyId)).Data()); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='id'> /// </param> /// <param name='contact'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <PolicyDTO> SetContactAsync(this IPolicies operations, long?id, PolicyContactDTO contact, CancellationToken cancellationToken = default(CancellationToken)) { HttpOperationResponse <PolicyDTO> result = await operations.SetContactWithHttpMessagesAsync(id, contact, null, cancellationToken).ConfigureAwait(false); return(result.Body); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='id'> /// </param> /// <param name='contact'> /// </param> public static PolicyDTO SetContact(this IPolicies operations, long?id, PolicyContactDTO contact) { return(Task.Factory.StartNew(s => ((IPolicies)s).SetContactAsync(id, contact), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }