65
71
import com.sun.lwuit.layouts.BoxLayout;
66
72
import com.sun.lwuit.plaf.Style;
68
public class PersonDashboardView extends AbstractView implements ActionListener {
69
private static final String CLASS_TAG = "PersonDashboardView";
74
public class PersonDashboardView
76
implements ActionListener
78
private static final String CLASS_TAG = "PersonDashboardView";
71
80
private NameBasedMIDlet namebasedMidlet;
73
private Form mainForm;
75
private Command backCommand;
77
private Patient patient;
79
private Program vsProgram;
81
private int previousScreen;
83
private Dialog confirmDialog;
85
public PersonDashboardView(DHISMIDlet dhisMIDlet) {
87
this.namebasedMidlet = (NameBasedMIDlet) dhisMIDlet;
90
public void prepareView() {
94
// clear previous data
97
Style labelStyle = new Style();
98
labelStyle.setBgColor(0xcccccc);
100
// show current programs
101
if (patient.getEnrollmentPrograms() != null) {
102
Label currentProgramlbl = new Label("Active Programs");
103
currentProgramlbl.setUnselectedStyle(labelStyle);
104
currentProgramlbl.setSelectedStyle(labelStyle);
105
mainForm.addComponent(currentProgramlbl);
106
this.preparePrograms();
109
// show completed programs
110
if (patient.getCompletedPrograms() != null) {
111
Label completedProgramlbl = new Label("Completed Programs");
112
completedProgramlbl.setUnselectedStyle(labelStyle);
113
completedProgramlbl.setSelectedStyle(labelStyle);
114
mainForm.addComponent(completedProgramlbl);
115
this.prepareCompletedPrograms();
118
Label lblDetail = new Label("Details");
119
lblDetail.setUnselectedStyle(labelStyle);
120
lblDetail.setSelectedStyle(labelStyle);
122
TextArea org = new TextArea();
123
if (patient.getOrganisationUnitName() == null) {
124
org.setText("Organisation Unit: empty");
126
org.setText("Organisation Unit: "
127
+ patient.getOrganisationUnitName());
129
org.setEditable(false);
130
org.setEnabled(false);
132
mainForm.addComponent(lblDetail);
133
mainForm.addComponent(org);
135
for (int i = 0; i < patient.getPatientAttValues().size(); i++) {
136
PatientAttribute patientAttribute = (PatientAttribute) patient
137
.getPatientAttValues().elementAt(i);
138
TextArea attributeTextare = new TextArea(patientAttribute.getName()
139
+ " :" + patientAttribute.getValue());
140
attributeTextare.setEditable(false);
141
attributeTextare.setEnabled(false);
142
mainForm.addComponent(attributeTextare);
145
// show enrollable programs
146
Label lblEnrollmentProgram = new Label("Enroll In Program");
147
lblEnrollmentProgram.setUnselectedStyle(labelStyle);
148
lblEnrollmentProgram.setSelectedStyle(labelStyle);
149
mainForm.addComponent(lblEnrollmentProgram);
150
this.prepareEnrollmentPrograms();
153
if (patient.getRelationships() != null) {
154
Label relationshiplbl = new Label("Relationships");
155
relationshiplbl.setUnselectedStyle(labelStyle);
156
relationshiplbl.setSelectedStyle(labelStyle);
157
mainForm.addComponent(relationshiplbl);
158
this.prepareRelationships();
161
// show enrollment relationship
162
Label lblEnrollmentRelationship = new Label("Add Relative");
163
lblEnrollmentRelationship.setUnselectedStyle(labelStyle);
164
lblEnrollmentRelationship.setSelectedStyle(labelStyle);
165
mainForm.addComponent(lblEnrollmentRelationship);
166
this.prepareEnrollmentRelationships();
172
public void showView() {
174
this.getMainForm().show();
177
public void actionPerformed(ActionEvent ae) {
178
if (ae.getCommand().getCommandName().equals(Text.BACK())) {
182
PatientRecordStore.savePatient(patient);
183
} catch (Exception e) {
184
LogMan.log("UI," + CLASS_TAG, e);
190
if (previousScreen == namebasedMidlet.HISTORY_PERSON_LIST_VIEW) {
193
modelList = PatientRecordStore.getCurrentPatients();
194
namebasedMidlet.getHistoryPersonListView().setModelList(
196
namebasedMidlet.getHistoryPersonListView().showView();
197
} catch (Exception e) {
198
LogMan.log("UI," + CLASS_TAG, e);
201
} else if (previousScreen == namebasedMidlet.VISIT_SCHEDULE_VIEW) {
202
namebasedMidlet.getVisitScheduleMenuView()
203
.setProgram(vsProgram);
204
namebasedMidlet.getVisitScheduleMenuView().showView();
207
.getFindBeneficiaryView()
210
namebasedMidlet.getFindBeneficiaryView()
212
namebasedMidlet.getFindBeneficiaryView().showView();
217
public int getPreviousScreen() {
218
return previousScreen;
221
public void setPreviousScreen(int previousScreen) {
222
this.previousScreen = previousScreen;
225
public Form getMainForm() {
226
if (mainForm == null) {
227
mainForm = new Form("Dashboard");
228
mainForm.setLayout(new BoxLayout(BoxLayout.Y_AXIS));
229
mainForm.setScrollableY(true);
230
mainForm.setTransitionOutAnimator(CommonTransitions.createSlide(
231
CommonTransitions.SLIDE_HORIZONTAL, true, 200));
233
mainForm.addCommand(this.getBackCommand());
234
mainForm.addCommandListener(this);
240
public void setMainForm(Form mainForm) {
241
this.mainForm = mainForm;
244
public Command getBackCommand() {
245
if (backCommand == null) {
246
backCommand = new Command(Text.BACK());
251
public void setBackCommand(Command backCommand) {
252
this.backCommand = backCommand;
255
public void preparePrograms() {
256
Vector programs = patient.getEnrollmentPrograms();
258
if (programs != null) {
259
for (int i = 0; i < programs.size(); i++) {
260
final ProgramInstance programInstance = (ProgramInstance) programs
263
if (programInstance.getProgramStageInstances().size() > 1) {
264
LinkButton programLink = new LinkButton(
265
programInstance.getName());
267
programLink.addActionListener(new ActionListener() {
268
public void actionPerformed(ActionEvent ae) {
269
namebasedMidlet.getProgramStageListView()
270
.setPatient(patient);
271
namebasedMidlet.getProgramStageListView()
272
.setProgramInstance(programInstance);
273
namebasedMidlet.getProgramStageListView()
278
mainForm.addComponent(programLink);
280
// show uncompleted program stage
281
for (int j = 0; j < programInstance
282
.getProgramStageInstances().size(); j++) {
283
final ProgramStage programStage = (ProgramStage) programInstance
284
.getProgramStageInstances().elementAt(j);
285
if (programStage.isCompleted() == false) {
286
String label = programStage.getName();
287
if (programStage.getDueDate() != null
288
&& !programStage.getDueDate().equals("")) {
289
label += " (" + programStage.getDueDate() + ")";
291
LinkButton programStageLink = new LinkButton("--"
294
.addActionListener(new ActionListener() {
295
public void actionPerformed(
297
if (programStage.getSections()
300
.getSectionListView()
301
.setPatient(patient);
303
.getSectionListView()
307
.getSectionListView()
311
.getTrackingDataEntryView()
312
.setPatient(patient);
314
.getTrackingDataEntryView()
318
.getTrackingDataEntryView()
323
.getTrackingDataEntryView()
328
mainForm.addComponent(programStageLink);
333
// show program has only one program stage which is repeatable
334
else if (programInstance.getProgramStageInstances().size() == 1) {
336
final ProgramStage programStageSingle = (ProgramStage) programInstance
337
.getProgramStageInstances().elementAt(0);
338
LinkButton programLink = new LinkButton(
339
programInstance.getName());
340
programLink.addActionListener(new ActionListener() {
341
public void actionPerformed(ActionEvent ae) {
342
namebasedMidlet.getTrackingDataEntryView()
343
.setPatient(patient);
344
namebasedMidlet.getTrackingDataEntryView()
345
.setProgramStage(programStageSingle);
346
namebasedMidlet.getTrackingDataEntryView()
347
.setTitle(programStageSingle.getName());
348
namebasedMidlet.getTrackingDataEntryView()
353
mainForm.addComponent(programLink);
354
final ProgramStage programStage = (ProgramStage) programInstance
355
.getProgramStageInstances().elementAt(0);
356
if (programStage.isRepeatable()) {
357
LinkButton programStageLink = new LinkButton("--"
358
+ programStage.getName());
360
.addActionListener(new ActionListener() {
361
public void actionPerformed(ActionEvent arg) {
363
.getTrackingDataEntryView()
364
.setPatient(patient);
366
.getTrackingDataEntryView()
367
.setProgramStage(programStage);
369
.getTrackingDataEntryView()
373
mainForm.addComponent(programStageLink);
383
public void prepareEnrollmentPrograms() {
384
Vector programs = null;
387
programs = ProgramRecordStore.getEnrollablePrograms(patient);
388
} catch (Exception e) {
389
LogMan.log("UI," + CLASS_TAG, e);
392
for (int i = 0; i < programs.size(); i++) {
393
final Program program = (Program) programs.elementAt(i);
395
if (program.getType() != 3) {
397
LinkButton enrollmentProgramLink = new LinkButton(
400
enrollmentProgramLink.addActionListener(new ActionListener() {
401
public void actionPerformed(ActionEvent arg) {
402
confirmDialog = new Dialog();
403
confirmDialog.setTitle("Confirmation");
404
Button yButton = new Button(Text.YES());
405
Button nButton = new Button(Text.NO());
406
Label label = new Label(
407
"Do you want to enroll in this program?");
409
yButton.addActionListener(new ActionListener() {
411
public void actionPerformed(ActionEvent ae) {
412
ConnectionManager.setUrl(namebasedMidlet
414
.getEnrollProgramUrl());
416
ConnectionManager.enrollProgram(
417
patient.getId(), program.getId(),
422
nButton.addActionListener(new ActionListener() {
424
public void actionPerformed(ActionEvent ae) {
425
confirmDialog = (Dialog) Display.getInstance()
427
confirmDialog.dispose();
428
confirmDialog = null;
433
confirmDialog.addComponent(label);
434
confirmDialog.addComponent(yButton);
435
confirmDialog.addComponent(nButton);
437
confirmDialog.show();
441
mainForm.addComponent(enrollmentProgramLink);
447
public void prepareRelationships() {
448
if (patient.getRelationships() != null) {
449
for (int i = 0; i < patient.getRelationships().size(); i++) {
450
final Relationship relationship = (Relationship) patient
451
.getRelationships().elementAt(i);
453
LinkButton relationshipLink = new LinkButton(
454
relationship.getbIsToA() + ": "
455
+ relationship.getPersonBName());
457
relationshipLink.addActionListener(new ActionListener() {
458
public void actionPerformed(ActionEvent arg) {
462
namebasedMidlet.getWaitingView().showView();
463
ConnectionManager.setUrl(namebasedMidlet
464
.getCurrentOrgUnit().getFindPatientUrl());
465
ConnectionManager.getPatientById(
466
relationship.getPersonBId() + "",
467
previousScreen, null);
471
mainForm.addComponent(relationshipLink);
476
public void prepareEnrollmentRelationships() {
477
Vector relTypes = null;
479
relTypes = RelationshipTypeRecordStore.loadAllRelationshipType();
480
} catch (Exception e) {
481
LogMan.log("UI," + CLASS_TAG, e);
484
if (relTypes == null || relTypes.size() > 0) {
485
for (int i = 0; i < relTypes.size(); i++) {
486
final RelationshipType relType = (RelationshipType) relTypes
489
final Relationship enrollmentRelationship = new Relationship();
490
enrollmentRelationship.setaIsToB(relType.getAIsToB());
491
enrollmentRelationship.setbIsToA(relType.getBIsToA());
492
enrollmentRelationship.setId(relType.getId());
493
enrollmentRelationship.setName(relType.getName());
495
LinkButton enrollmentRelationshipLink = new LinkButton(
496
enrollmentRelationship.getName());
497
enrollmentRelationshipLink
498
.addActionListener(new ActionListener() {
499
public void actionPerformed(ActionEvent ae) {
500
enrollmentRelationship.setPersonAId(patient
502
enrollmentRelationship.setPersonAName(patient
503
.getDisplayInListAttributeValues());
504
namebasedMidlet.getAddingRelationshipView()
505
.setEnrollmentRelationship(
506
enrollmentRelationship);
507
namebasedMidlet.getAddingRelationshipView()
509
namebasedMidlet.getAddingRelationshipView()
513
mainForm.addComponent(enrollmentRelationshipLink);
516
LinkButton relationshipLink = new LinkButton("Not Available");
517
mainForm.addComponent(relationshipLink);
521
public void prepareCompletedPrograms() {
522
Vector completedPrograms = patient.getCompletedPrograms();
523
for (int i = 0; i < completedPrograms.size(); i++) {
524
TextArea completedProgramNameTxt = new TextArea(
525
((ProgramInstance) completedPrograms.elementAt(i))
527
completedProgramNameTxt.setEditable(false);
528
completedProgramNameTxt.setEnabled(false);
529
mainForm.addComponent(completedProgramNameTxt);
533
public Patient getPatient() {
537
public void setPatient(Patient patient) {
538
this.patient = patient;
541
public Program getVSProgram() {
545
public void setVSProgram(Program vsProgram) {
546
this.vsProgram = vsProgram;
82
private Form mainForm;
84
private Command backCommand;
86
private Patient patient;
88
private Program vsProgram;
90
private int previousScreen;
92
private Dialog confirmDialog;
94
public PersonDashboardView( DHISMIDlet dhisMIDlet )
97
this.namebasedMidlet = (NameBasedMIDlet) dhisMIDlet;
100
public void prepareView()
105
// clear previous data
106
mainForm.removeAll();
108
Style labelStyle = new Style();
109
labelStyle.setBgColor( 0xcccccc );
111
// show current programs
112
if ( patient.getEnrollmentPrograms() != null )
114
Label currentProgramlbl = new Label( "Active Programs" );
115
currentProgramlbl.setUnselectedStyle( labelStyle );
116
currentProgramlbl.setSelectedStyle( labelStyle );
117
mainForm.addComponent( currentProgramlbl );
118
this.preparePrograms();
122
// show completed programs
123
if ( patient.getCompletedPrograms() != null )
125
Label completedProgramlbl = new Label( "Completed Programs" );
126
completedProgramlbl.setUnselectedStyle( labelStyle );
127
completedProgramlbl.setSelectedStyle( labelStyle );
128
mainForm.addComponent( completedProgramlbl );
129
this.prepareCompletedPrograms();
132
Label lblDetail = new Label( "Details" );
133
lblDetail.setUnselectedStyle( labelStyle );
134
lblDetail.setSelectedStyle( labelStyle );
136
TextArea org = new TextArea();
137
if ( patient.getOrganisationUnitName() == null )
139
org.setText( "Organisation Unit: empty" );
143
org.setText( "Organisation Unit: " + patient.getOrganisationUnitName() );
145
org.setEditable( false );
146
org.setEnabled( false );
148
mainForm.addComponent( lblDetail );
149
mainForm.addComponent( org );
151
for ( int i = 0; i < patient.getPatientAttValues().size(); i++ )
153
PatientAttribute patientAttribute = (PatientAttribute) patient.getPatientAttValues().elementAt( i );
154
TextArea attributeTextare = new TextArea( patientAttribute.getName() + " :" + patientAttribute.getValue() );
155
attributeTextare.setEditable( false );
156
attributeTextare.setEnabled( false );
157
mainForm.addComponent( attributeTextare );
160
// show enrollable programs
161
Label lblEnrollmentProgram = new Label( "Enroll In Program" );
162
lblEnrollmentProgram.setUnselectedStyle( labelStyle );
163
lblEnrollmentProgram.setSelectedStyle( labelStyle );
164
mainForm.addComponent( lblEnrollmentProgram );
165
this.prepareEnrollmentPrograms();
168
if ( patient.getRelationships() != null )
170
Label relationshiplbl = new Label( "Relationships" );
171
relationshiplbl.setUnselectedStyle( labelStyle );
172
relationshiplbl.setSelectedStyle( labelStyle );
173
mainForm.addComponent( relationshiplbl );
174
this.prepareRelationships();
177
// show enrollment relationship
178
Label lblEnrollmentRelationship = new Label( "Add Relative" );
179
lblEnrollmentRelationship.setUnselectedStyle( labelStyle );
180
lblEnrollmentRelationship.setSelectedStyle( labelStyle );
181
mainForm.addComponent( lblEnrollmentRelationship );
182
this.prepareEnrollmentRelationships();
185
this.prepareShortcutLinkToAddRelative();
187
catch ( Exception e )
196
public void showView()
199
this.getMainForm().show();
202
public void actionPerformed( ActionEvent ae )
204
if ( ae.getCommand().getCommandName().equals( Text.BACK() ) )
210
PatientRecordStore.savePatient( patient );
212
catch ( Exception e )
214
LogMan.log( "UI," + CLASS_TAG, e );
220
if ( previousScreen == namebasedMidlet.HISTORY_PERSON_LIST_VIEW )
225
modelList = PatientRecordStore.getCurrentPatients();
226
namebasedMidlet.getHistoryPersonListView().setModelList( modelList );
227
namebasedMidlet.getHistoryPersonListView().showView();
229
catch ( Exception e )
231
LogMan.log( "UI," + CLASS_TAG, e );
235
else if ( previousScreen == namebasedMidlet.VISIT_SCHEDULE_VIEW )
237
namebasedMidlet.getVisitScheduleMenuView().setProgram( vsProgram );
238
namebasedMidlet.getVisitScheduleMenuView().showView();
242
namebasedMidlet.getFindBeneficiaryView().getMainForm()
243
.removeComponent( namebasedMidlet.getFindBeneficiaryView().getNotification() );
244
namebasedMidlet.getFindBeneficiaryView().showView();
249
public int getPreviousScreen()
251
return previousScreen;
254
public void setPreviousScreen( int previousScreen )
256
this.previousScreen = previousScreen;
259
public Form getMainForm()
261
if ( mainForm == null )
263
mainForm = new Form( "Dashboard" );
264
mainForm.setLayout( new BoxLayout( BoxLayout.Y_AXIS ) );
265
mainForm.setScrollableY( true );
266
mainForm.setTransitionOutAnimator( CommonTransitions.createSlide( CommonTransitions.SLIDE_HORIZONTAL, true,
269
mainForm.addCommand( this.getBackCommand() );
270
mainForm.addCommandListener( this );
276
public void setMainForm( Form mainForm )
278
this.mainForm = mainForm;
281
public Command getBackCommand()
283
if ( backCommand == null )
285
backCommand = new Command( Text.BACK() );
290
public void setBackCommand( Command backCommand )
292
this.backCommand = backCommand;
295
public void preparePrograms()
297
Vector programs = patient.getEnrollmentPrograms();
299
if ( programs != null )
301
for ( int i = 0; i < programs.size(); i++ )
303
final ProgramInstance programInstance = (ProgramInstance) programs.elementAt( i );
305
if ( programInstance.getProgramStageInstances().size() > 1 )
307
LinkButton programLink = new LinkButton( programInstance.getName() );
309
programLink.addActionListener( new ActionListener()
311
public void actionPerformed( ActionEvent ae )
313
namebasedMidlet.getProgramStageListView().setPatient( patient );
314
namebasedMidlet.getProgramStageListView().setProgramInstance( programInstance );
315
namebasedMidlet.getProgramStageListView().showView();
319
mainForm.addComponent( programLink );
321
// show uncompleted program stage
322
for ( int j = 0; j < programInstance.getProgramStageInstances().size(); j++ )
324
final ProgramStage programStage = (ProgramStage) programInstance.getProgramStageInstances()
326
if ( programStage.isCompleted() == false )
328
String label = programStage.getName();
329
if ( programStage.getDueDate() != null && !programStage.getDueDate().equals( "" ) )
331
label += " (" + programStage.getDueDate() + ")";
333
LinkButton programStageLink = new LinkButton( "--" + label );
334
programStageLink.addActionListener( new ActionListener()
336
public void actionPerformed( ActionEvent arg )
338
if ( programStage.getSections().size() > 0 )
340
namebasedMidlet.getSectionListView().setPatient( patient );
341
namebasedMidlet.getSectionListView().setProgramStage( programStage );
342
namebasedMidlet.getSectionListView().showView();
346
namebasedMidlet.getTrackingDataEntryView().setPatient( patient );
347
namebasedMidlet.getTrackingDataEntryView().setProgramStage( programStage );
348
namebasedMidlet.getTrackingDataEntryView().setTitle( programStage.getName() );
349
namebasedMidlet.getTrackingDataEntryView().showView();
353
mainForm.addComponent( programStageLink );
358
// show program has only one program stage which is repeatable
359
else if ( programInstance.getProgramStageInstances().size() == 1 )
362
final ProgramStage programStageSingle = (ProgramStage) programInstance.getProgramStageInstances()
364
LinkButton programLink = new LinkButton( programInstance.getName() );
365
programLink.addActionListener( new ActionListener()
367
public void actionPerformed( ActionEvent ae )
369
namebasedMidlet.getTrackingDataEntryView().setPatient( patient );
370
namebasedMidlet.getTrackingDataEntryView().setProgramStage( programStageSingle );
371
namebasedMidlet.getTrackingDataEntryView().setTitle( programStageSingle.getName() );
372
namebasedMidlet.getTrackingDataEntryView().showView();
376
mainForm.addComponent( programLink );
377
final ProgramStage programStage = (ProgramStage) programInstance.getProgramStageInstances()
379
if ( programStage.isRepeatable() )
381
LinkButton programStageLink = new LinkButton( "--" + programStage.getName() );
382
programStageLink.addActionListener( new ActionListener()
384
public void actionPerformed( ActionEvent arg )
386
namebasedMidlet.getTrackingDataEntryView().setPatient( patient );
387
namebasedMidlet.getTrackingDataEntryView().setProgramStage( programStage );
388
namebasedMidlet.getTrackingDataEntryView().showView();
391
mainForm.addComponent( programStageLink );
401
public void prepareShortcutLinkToAddRelative()
402
throws RecordStoreFullException, RecordStoreNotFoundException, RecordStoreException, IOException
404
Vector programs = patient.getEnrollmentPrograms();
406
if ( programs != null )
408
for ( int i = 0; i < programs.size(); i++ )
410
final ProgramInstance programInstance = (ProgramInstance) programs.elementAt( i );
411
final Program program = ProgramRecordStore.getProgram( programInstance.getProgramId() );
412
final Program relativeProgram = ProgramRecordStore.getProgram( program.getRelatedProgramId() );
413
LinkButton shortcutLink = new LinkButton( program.getRelationshipText() );
414
shortcutLink.addActionListener( new ActionListener()
417
public void actionPerformed( ActionEvent ae )
419
namebasedMidlet.getWaitingView().showView();
422
RelativeRelationshipRecordStore.deleteAll();
423
RelativeRelationshipRecordStore.saveId( String.valueOf( patient.getId() ) );
425
if ( program.getType() != 3 )
427
ConnectionManager.setUrl( namebasedMidlet.getCurrentOrgUnit().getGetVariesInfoUrl() );
428
if(relativeProgram != null){
429
namebasedMidlet.getAddRelativeView().setProgram( relativeProgram );
430
namebasedMidlet.getAddRelativeView().prepareView();
431
namebasedMidlet.getAddRelativeView().showView();
434
namebasedMidlet.getAddRelativeView().setProgram( program );
435
namebasedMidlet.getAddRelativeView().prepareView();
436
namebasedMidlet.getAddRelativeView().showView();
443
catch ( Exception e )
451
mainForm.addComponent( shortcutLink );
463
public void prepareEnrollmentPrograms()
465
Vector programs = null;
469
programs = ProgramRecordStore.getEnrollablePrograms( patient );
471
catch ( Exception e )
473
LogMan.log( "UI," + CLASS_TAG, e );
476
for ( int i = 0; i < programs.size(); i++ )
478
final Program program = (Program) programs.elementAt( i );
480
if ( program.getType() != 3 )
483
LinkButton enrollmentProgramLink = new LinkButton( program.getName() );
485
enrollmentProgramLink.addActionListener( new ActionListener()
487
public void actionPerformed( ActionEvent arg )
489
confirmDialog = new Dialog();
490
confirmDialog.setTitle( "Confirmation" );
491
Button yButton = new Button( Text.YES() );
492
Button nButton = new Button( Text.NO() );
493
Label label = new Label( "Do you want to enroll in this program?" );
495
yButton.addActionListener( new ActionListener()
498
public void actionPerformed( ActionEvent ae )
500
ConnectionManager.setUrl( namebasedMidlet.getCurrentOrgUnit().getEnrollProgramUrl() );
502
ConnectionManager.enrollProgram( patient.getId(), program.getId(), program.getName() );
506
nButton.addActionListener( new ActionListener()
509
public void actionPerformed( ActionEvent ae )
511
confirmDialog = (Dialog) Display.getInstance().getCurrent();
512
confirmDialog.dispose();
513
confirmDialog = null;
518
confirmDialog.addComponent( label );
519
confirmDialog.addComponent( yButton );
520
confirmDialog.addComponent( nButton );
522
confirmDialog.show();
526
mainForm.addComponent( enrollmentProgramLink );
532
public void prepareRelationships()
534
if ( patient.getRelationships() != null )
536
for ( int i = 0; i < patient.getRelationships().size(); i++ )
538
final Relationship relationship = (Relationship) patient.getRelationships().elementAt( i );
540
LinkButton relationshipLink = new LinkButton( relationship.getbIsToA() + ": "
541
+ relationship.getPersonBName() );
543
relationshipLink.addActionListener( new ActionListener()
545
public void actionPerformed( ActionEvent arg )
550
namebasedMidlet.getWaitingView().showView();
551
ConnectionManager.setUrl( namebasedMidlet.getCurrentOrgUnit().getFindPatientUrl() );
552
ConnectionManager.getPatientById( relationship.getPersonBId() + "", previousScreen, null );
556
mainForm.addComponent( relationshipLink );
561
public void prepareEnrollmentRelationships()
563
Vector relTypes = null;
566
relTypes = RelationshipTypeRecordStore.loadAllRelationshipType();
569
catch ( Exception e )
571
LogMan.log( "UI," + CLASS_TAG, e );
574
if ( relTypes == null || relTypes.size() > 0 )
576
for ( int i = 0; i < relTypes.size(); i++ )
578
final RelationshipType relType = (RelationshipType) relTypes.elementAt( i );
579
final Relationship enrollmentRelationship = new Relationship();
580
enrollmentRelationship.setaIsToB( relType.getAIsToB() );
581
enrollmentRelationship.setbIsToA( relType.getBIsToA() );
582
enrollmentRelationship.setId( relType.getId() );
583
enrollmentRelationship.setName( relType.getName() );
585
LinkButton enrollmentRelationshipLink = new LinkButton( enrollmentRelationship.getName() );
586
enrollmentRelationshipLink.addActionListener( new ActionListener()
588
public void actionPerformed( ActionEvent ae )
590
enrollmentRelationship.setPersonAId( patient.getId() );
591
enrollmentRelationship.setPersonAName( patient.getDisplayInListAttributeValues() );
592
namebasedMidlet.getAddingRelationshipView().setEnrollmentRelationship( enrollmentRelationship );
593
namebasedMidlet.getAddingRelationshipView().resetIndexes();
594
namebasedMidlet.getAddingRelationshipView().showView();
597
mainForm.addComponent( enrollmentRelationshipLink );
602
LinkButton relationshipLink = new LinkButton( "Not Available" );
603
mainForm.addComponent( relationshipLink );
607
public void prepareCompletedPrograms()
609
Vector completedPrograms = patient.getCompletedPrograms();
610
for ( int i = 0; i < completedPrograms.size(); i++ )
612
TextArea completedProgramNameTxt = new TextArea(
613
((ProgramInstance) completedPrograms.elementAt( i )).getName() );
614
completedProgramNameTxt.setEditable( false );
615
completedProgramNameTxt.setEnabled( false );
616
mainForm.addComponent( completedProgramNameTxt );
620
public Patient getPatient()
625
public void setPatient( Patient patient )
627
this.patient = patient;
630
public Program getVSProgram()
635
public void setVSProgram( Program vsProgram )
637
this.vsProgram = vsProgram;