- changed 72 files
MIRTH-1243: Initial commit for channel groups.Channel groups are essentially to channels what code template libraries are to code templates. A channel may belong to only one group, with the intention that tags (especially with the planned improvements for tags) can and will be used in tandem with groups for mutually beneficial channel management/monitoring. Tags are many-to-many, while groups are one-to-many.In the common use case where you have multiple hospitals, but each one has its own ADT/ORU/etc. channels, you can organize your channels into groups by hospital/source, while still having "ADT" or "ORU" tags on whatever channels you want as appropriate. Similarly, someone searching for a channel can choose to drill in starting at the hospital level, or can "horizontally" search by filtering on the "ADT" tag across multiple hospitals at once. Or, both! Other planned improvements to tags/filtering will enhance this further.Both the dashboard and channels views now have an additional level of nodes in their respective tree tables (the channels view is a tree table now, whereas before it was just a regular table). Users can switch modes between "groups view" and "channels view" with a control button down at the bottom of the table. This mode is saved as a user preference, so if someone prefers to see the old channel-level view, he or she doesn't have to constantly switch back to it whenever the Administrator is launched.On the Channels view, groups can be added/removed/modified. When a group is selected, a settings pane pops up on the bottom of the split pane. You can set the group name/description and select which channels are part of the group. Or if you choose, the channel tree-table now supports drag-and-drop onto itself, so you can easily drag a channel from one group to another.When a channel group is exported, it creates a single XML file that contains all channels within the group (and in turn, all code template libraries within each respective channel, if you choose). You can still multi-select channels and export them as separate XML files if you want though. Channel groups can be imported as well, and the same conflict resolution is done as for channels.