Details
-
Type:
New Feature
-
Status: Closed
-
Priority:
Should
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: OpenMRS 1.9.0, 1.9 Road Map Sprint 4
-
Component/s: Roadmap
-
Labels:
-
Complexity:High
Description
See also: http://wiki.openmrs.org/display/projects/Multiple+providers+per+encounter
We need to be able to store multiple providers for an encounter instead of just one provider for an encounter.
- The encounter.provider_id column should be deleted.
- And a new table created:
encounter_provider * encounter_id fk to encounter.encounter_id * provider_id fk to provider.provider_id - See TRUNK-2044 * organization_role varchar(255) (not fk to role.role, but should be fk to org_role, if exists (TODO: find ticket for the org role work))
- Add:
* private Set<Provider> Encounter.providers * public Set<Provider> getProviders(); * public void setProviders(Set<Provider>); * public void addProvider(Provider);
- Deprecate these methods:
* Encounter.getProvider() should return the first in the set of providers * Encounter.setProvider(Person) should forward to addProvider(Provider) (if possible)
- The liquibase changeset should move data from encounter.provider column to a row in encounter_provider with an org_role of "Unknown".
- All relevant jsp pages need updated.
- The ORUR01Handler should be modified to handle multiple providers coming in through hl7 (upgrading HAPI to version that accepts hl7 v2.6 is probably required)
- Bonus points for modifying the formentry module so that an infopath form could specify multiple providers.
- Double bonus points for modifying htmlformentry to allow for multiple providers on an encounter.
Gliffy Diagrams
Attachments
Issue Links
- depends on
-
TRUNK-2044 Add Provider Object
-
- Closed
-
-
TRUNK-2250 Domain object, liquibase, and hibernate mapping for Provider
-
- Closed
-
-
TRUNK-2261 Liquibase script to migrate legacy Encounter.provider data to Encounter.providers
-
- Closed
-
-
TRUNK-2257 Domain object, liquibase, and hibernate mapping for EncounterRole
-
- Closed
-
-
TRUNK-2259 Management pages for EncounterRole
-
- Closed
-
-
TRUNK-2260 Add Encounter.providers property and deprecate old Encounter.provider property
-
- Closed
-
-
TRUNK-2263 patientEncounters portlet should display multiple providers
-
- Closed
-
-
TRUNK-2275 Domain object, liquibase changeset, and hibernate mapping for EncounterProvider
-
- Closed
-
-
TRUNK-2258 Service and DAO for EncounterRole
-
- Closed
-
-
TRUNK-2262 Edit Encounter page should support multiple providers
-
- Closed
-
-
TRUNK-2254 Bulk Import for providers
-
- Closed
-
-
TRUNK-2265 Service and DAO for ProviderAttributeType
-
- Closed
-
-
TRUNK-2266 Domain object, liquibase, and hibernate mapping for ProviderAttribute
-
- Closed
-
-
TRUNK-2267 Update Provider to include ProviderAttributes
-
- Closed
-
-
TRUNK-2268 Management pages for ProviderAttributeType
-
- Closed
-
-
TRUNK-2269 UI for ProviderAttribute
-
- Closed
-
-
TRUNK-2271 Add Provider-related methods to EncounterService
-
- Closed
-
-
TRUNK-2251 Service and DAO for Provider
-
- Closed
-
-
TRUNK-2253 Management pages for Provider
-
- Closed
-