| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- package com.imt.intimamedia.commands.patient
- {
- import com.adobe.cairngorm.control.CairngormEvent;
- import com.imt.flex.cairngormExtended.command.SuperCommand;
- import com.imt.intimamedia.business.PatientDelegate;
- import com.imt.intimamedia.events.patient.UpdatePatientEvent;
- import com.imt.intimamedia.helpers.AES;
- import com.imt.intimamedia.model.ApplicationModelLocator;
- import com.imt.intimamedia.views.common.ImtToaster;
- import com.imt.intimamedia.views.physician.patient.PatientFile;
- import com.imt.intimamedia.vo.ReturnObjectVo;
-
- import mx.controls.Alert;
- import mx.resources.ResourceManager;
- import mx.rpc.events.FaultEvent;
- import mx.rpc.events.ResultEvent;
-
- /**
- * Commande de mise à jour d'un patient
- */
- public class UpdatePatientCommand extends SuperCommand
- {
-
- public var _dispatcher : PatientFile;
-
- /**
- * Excecution de la commande
- *
- * @param event Evénement de type CairngormEvent
- * @return void
- */
- override public function execute( event : CairngormEvent ) : void
- {
- super.execute( event );
-
- var delegate : PatientDelegate = new PatientDelegate( this );
-
- var updatePatientEvent : UpdatePatientEvent = UpdatePatientEvent( event );
-
- if (updatePatientEvent.patient.firstName)
- updatePatientEvent.patient.firstName = AES.encrypt(updatePatientEvent.patient.firstName, ApplicationModelLocator.getInstance().aesKey, AES.BIT_KEY_256);
- if (updatePatientEvent.patient.lastName)
- updatePatientEvent.patient.lastName = AES.encrypt(updatePatientEvent.patient.lastName, ApplicationModelLocator.getInstance().aesKey, AES.BIT_KEY_256);
-
- delegate.updatePatient( updatePatientEvent.patient, ApplicationModelLocator.getInstance().token );
-
- if (updatePatientEvent.patient.firstName)
- updatePatientEvent.patient.firstName = AES.decrypt(updatePatientEvent.patient.firstName, ApplicationModelLocator.getInstance().aesKey, AES.BIT_KEY_256);
- if (updatePatientEvent.patient.lastName)
- updatePatientEvent.patient.lastName = AES.decrypt(updatePatientEvent.patient.lastName, ApplicationModelLocator.getInstance().aesKey, AES.BIT_KEY_256);
- }
-
- /**
- * Résultat de la commande
- *
- * @param result Un objet
- * @return void
- */
- override public function result( result : Object ) : void
- {
- var resultEvent : ResultEvent = ResultEvent( result );
-
- var returnObjectVo : ReturnObjectVo = resultEvent.result as ReturnObjectVo;
- ApplicationModelLocator.getInstance().token = returnObjectVo.token;
-
- _dispatcher = this.getDispatcher(this);
- _dispatcher.updatePatientComplete();
-
- super.result( result );
- }
-
- /**
- * Résultat de la commande
- *
- * @param result Un objet
- * @return void
- */
- override public function fault( fault : Object ) : void
- {
- super.fault( fault );
-
- if (( fault as FaultEvent ).fault.faultString == ApplicationModelLocator.getInstance().ERROR_SESSION )
- {
- ApplicationModelLocator.displaySessionExpired( fault as FaultEvent );
- }
- else
- {
- var toastMessage : ImtToaster = new ImtToaster();
- toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'error.title');
- toastMessage.message = ResourceManager.getInstance().getString('labels', 'error.updatePatient') + " (" + ResourceManager.getInstance().getString('errors', ( fault as FaultEvent ).fault.faultString) +")";
- toastMessage.level = ImtToaster.ERROR;
-
- ApplicationModelLocator.getInstance().toaster.toast( toastMessage );
- }
- }
- }
- }
|