Dashboard > CMS Help and Advice > Plugins > 07. Example plugin walkthrough - GP appointment booking
07. Example plugin walkthrough - GP appointment booking Log In View a printable version of the current page.

Added by John Latham , last edited by John Latham on Aug 27, 2009  (view change)
Labels: 
(None)

Contents

Introduction

The GP Appointment Booking plugin allows members of the public to book and cancel GP appointments using Digital Interactive TV.

As a Starter Kit plugin, the functionality is presented in the context of a Starter Kit microsite, in the theme (colours, logos etc) of the microsite.

The plugin is essentially a "presentation proxy" for the EMIS Access application, a third party API which links to EMIS systems used by around 5000 GP surgeries nationwide.

The following sequence of figures shows screenshots from the TV service, and the XML generated by the plugin for each screen.

Model-View-Controller pattern

The GP plugin uses a MVC Model 2 design paradigm to separate control, business, and presentation logic. This is implemented in J2EE using the Struts and Spring MVC frameworks. Form action targets are specified using logical action references, serviced by action classes which handle workflow concerns and delegate presentation (i.e. XML generation) to JSPs. This approach has proven invaluable in this reasonably complex plugin. There are many ways to achieve the same thing with different technologies.

For more on MVC:

http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/web-tier/web-tier5.html

For an approach to MVC in .NET:

http://builder.com.com/5100-6387-1044951.html

Workflow diagram

The following diagram describes the logical sequence of screens in the GP plugin.

Workflow diagram

(click thumbnail to enlarge)

Screenshots and XML

Login screen

Screenshot XML
(click thumbnail to enlarge)

Your appointments (none booked)

Screenshot XML
(click thumbnail to enlarge)

Your appointments (1 booked)

Screenshot XML
(click thumbnail to enlarge)

Your appointments (2 booked)

Screenshot XML
(click thumbnail to enlarge)

Select date (1 of 2)

Screenshot XML
(click thumbnail to enlarge)

Select date (2 of 2)

Screenshot XML
(click thumbnail to enlarge)

Select surgery

Screenshot XML
(click thumbnail to enlarge)

Select time

Screenshot XML
(click thumbnail to enlarge)

Confirm booking

Screenshot XML
(click thumbnail to enlarge)

Select cancellation

Screenshot XML
(click thumbnail to enlarge)

Confirm cancellation

Screenshot XML
(click thumbnail to enlarge)

How to sign up

Screenshot XML
(click thumbnail to enlarge)

Data protection (1 of 3)

Screenshot XML
(click thumbnail to enlarge)

Data protection (2 of 3)

Screenshot XML
(click thumbnail to enlarge)

Data protection (3 of 3)

Screenshot XML
(click thumbnail to enlarge)

Registration step 1

Screenshot XML
(click thumbnail to enlarge)

Registration step 2

Screenshot XML
(click thumbnail to enlarge)

Registration step 3

Screenshot XML
(click thumbnail to enlarge)

Registration step 4

Screenshot XML
(click thumbnail to enlarge)

Registration step 5

Screenshot XML
(click thumbnail to enlarge)

Registration confirmation

Screenshot XML
(click thumbnail to enlarge)
Powered by Atlassian Confluence 2.7.3, the Enterprise Wiki. Bug/feature request - Atlassian news - Contact administrators