public void deletes_provider_location() { //verify precondition AssertExistsAndHasChildEntities(); //setup var request = new DeleteProviderOrgUnitRequest(); request.OrgUnitId = _locationId; request.ProviderId = _providerId; //act var response = HandleRequest<DeleteProviderOrgUnitResponse>(CreateHandler(), request); //assert AssertDeleted(); }
public static void Save(ProviderAdminDetailView parent, SubEntity providerOrgUnits, int providerId) { foreach (var record in providerOrgUnits.Records) { Validate(parent, record); //Update Record try { //Edits if (record.Action == RecordActions.Edited) { var request = new UpdateProviderOrgUnitRequest { Id = int.Parse(parent.GetFieldValue(record.Fields, _id), CultureInfo.InvariantCulture), IsPrimary = bool.Parse(parent.GetFieldValue(record.Fields, _isPrimary)), DisplayPhone = parent.GetFieldValue(record.Fields, _phone), DisplayFax = parent.GetFieldValue(record.Fields, _fax), IsAcceptingNewPatients = bool.Parse(parent.GetFieldValue(record.Fields, _isAcceptingNewPatients)), AllowAppointmentRequests = bool.Parse(parent.GetFieldValue(record.Fields, _allowAppointmentRequests)) }; parent.ProcessRequest<UpdateProviderOrgUnitResponse>(request); } //Adds if (record.Action == RecordActions.Added) { var request = new AddProviderOrgUnitRequest { ProviderId = providerId, OrgUnitId = int.Parse(parent.GetFieldValue(record.Fields, _orgUntiId)), IsPrimary = bool.Parse(parent.GetFieldValue(record.Fields, _isPrimary)), DisplayPhone = parent.GetFieldValue(record.Fields, _phone), DisplayFax = parent.GetFieldValue(record.Fields, _fax), IsAcceptingNewPatients = bool.Parse(parent.GetFieldValue(record.Fields, _isAcceptingNewPatients)), AllowAppointmentRequests = bool.Parse(parent.GetFieldValue(record.Fields, _allowAppointmentRequests)) }; parent.ProcessRequest<AddProviderOrgUnitResponse>(request); } //Deletes if (record.Action == RecordActions.Deleted) { var request = new DeleteProviderOrgUnitRequest() { ProviderId = providerId, OrgUnitId = int.Parse(parent.GetFieldValue(record.Fields, _orgUntiId)) }; parent.ProcessRequest<DeleteProviderOrgUnitResponse>(request); } } catch (Exception ex) { providerOrgUnits.ErrorMessage = ex.Message; throw; } //Update Subentities for Record foreach (var subentity in record.SubEntities) { if (subentity.EntityName == ProviderAdminDetailView._providerOrgUnitInsurancesSubEntity) SaveInsurances(parent, subentity, int.Parse(parent.GetFieldValue(record.Fields, _id))); else if (subentity.EntityName == ProviderAdminDetailView._providerOrgUnitServicesSubEntity) SaveServices(parent, subentity, int.Parse(parent.GetFieldValue(record.Fields, _id))); else if (subentity.EntityName == _hoursSubEntity) SaveHours(parent, subentity); } } providerOrgUnits = BuildLocationsSubEntity(parent, providerId); }