SaveDataCommand.as 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.imt.intimamedia.commands.report
  2. {
  3. import com.adobe.cairngorm.control.CairngormEvent;
  4. import com.imt.flex.cairngormExtended.command.SuperCommand;
  5. import com.imt.intimamedia.business.ReportDelegate;
  6. import com.imt.intimamedia.events.report.SaveDataEvent;
  7. import com.imt.intimamedia.model.ApplicationModelLocator;
  8. import com.imt.intimamedia.views.common.ImtToaster;
  9. import com.imt.intimamedia.views.physician.report.ReportView;
  10. import com.imt.intimamedia.vo.ReturnObjectVo;
  11. import mx.collections.ArrayCollection;
  12. import mx.core.Application;
  13. import mx.resources.ResourceManager;
  14. import mx.rpc.events.FaultEvent;
  15. import mx.rpc.events.ResultEvent;
  16. /**
  17. * Commande de sauvegarde des donnees rapport
  18. */
  19. public class SaveDataCommand extends SuperCommand
  20. {
  21. public var dispatcher : ReportView;
  22. /**
  23. * Execution de la commande
  24. *
  25. * @param event Evénement de type CairngormEvent
  26. * @return void
  27. */
  28. override public function execute( event : CairngormEvent ) : void
  29. {
  30. super.execute( event );
  31. var delegate : ReportDelegate = new ReportDelegate( this );
  32. var saveDataEvent : SaveDataEvent = SaveDataEvent( event );
  33. delegate.saveData( saveDataEvent.reportDataVo, saveDataEvent.appointment, ApplicationModelLocator.getInstance().token );
  34. }
  35. /**
  36. * Résultat de la commande
  37. *
  38. * @param result Un objet
  39. * @return void
  40. */
  41. override public function result( result : Object ) : void
  42. {
  43. var resultEvent : ResultEvent = ResultEvent( result );
  44. var returnObjectVo : ReturnObjectVo = resultEvent.result as ReturnObjectVo;
  45. ApplicationModelLocator.getInstance().token = returnObjectVo.token;
  46. super.result( result );
  47. }
  48. /**
  49. * Résultat de la commande
  50. *
  51. * @param result Un objet
  52. * @return void
  53. */
  54. override public function fault( fault : Object ) : void
  55. {
  56. super.fault( fault );
  57. if (( fault as FaultEvent ).fault.faultString == ApplicationModelLocator.getInstance().ERROR_SESSION )
  58. {
  59. ApplicationModelLocator.displaySessionExpired( fault as FaultEvent );
  60. }
  61. else
  62. {
  63. var toastMessage : ImtToaster = new ImtToaster();
  64. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'error.title');
  65. toastMessage.message = ResourceManager.getInstance().getString('labels', 'report.error.saveData') + " (" + ResourceManager.getInstance().getString('errors', ( fault as FaultEvent ).fault.faultString) +")";
  66. toastMessage.level = ImtToaster.ERROR;
  67. ApplicationModelLocator.getInstance().toaster.toast( toastMessage );
  68. }
  69. }
  70. }
  71. }