9. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 12/5/2017 12:06:34 PM Central Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

9.1 Files compared

# Location File Last Modified
1 IV-eHMP_CIF.zip\IMAG_Source\VISA\Java\AwivClientWebApp\main\src\java\gov\va\med\imaging\awiv\client\ui\widgets PatientSensitivityCheck.java Mon Dec 4 21:35:32 2017 UTC
2 IV-eHMP_CIF.zip\IMAG_Source\VISA\Java\AwivClientWebApp\main\src\java\gov\va\med\imaging\awiv\client\ui\widgets PatientSensitivityCheck.java Mon Dec 4 21:56:50 2017 UTC

9.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 352
Changed 2 4
Inserted 0 0
Removed 0 0

9.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

9.4 Active regular expressions

No regular expressions were active.

9.5 Comparison detail

  1   /**
  2    * 
  3     Package:  MAG - Vis tA Imaging
  4     WARNING:  Per VHA D irective 2 004-038, t his routin e should n ot be modi fied.
  5     Date Cre ated: Feb  7, 2012
  6     Site Nam e:  Washin gton OI Fi eld Office , Silver S pring, MD
  7       Developer:          
WERFEJ
  8     Descript ion: 
  9  
  10           ;;  +-------- ---------- ---------- ---------- ---------- ---------- ---------- +
  11           ;;  Property  of the US  Government .
  12           ;;  No permis sion to co py or redi stribute t his softwa re is give n.
  13           ;;  Use of un released v ersions of  this soft ware requi res the us er
  14           ;;   to execu te a writt en test ag reement wi th the Vis tA Imaging
  15           ;;   Developm ent Office  of the De partment o f Veterans  Affairs,
  16           ;;   telephon e (301) 73 4-0100.
  17           ;;
  18           ;;  The Food  and Drug A dministrat ion classi fies this  software a s
  19           ;;  a Class I I medical  device.  A s such, it  may not b e changed
  20           ;;  in any wa y.  Modifi cations to  this soft ware may r esult in a n
  21           ;;  adulterat ed medical  device un der 21CFR8 20, the us e of which
  22           ;;  is consid ered to be  a violati on of US F ederal Sta tutes.
  23           ;;  +-------- ---------- ---------- ---------- ---------- ---------- ---------- +
  24  
  25    */
  26   package go v.va.med.i maging.awi v.client.u i.widgets;
  27  
  28   import org .apache.lo gging.log4 j.LogManag er;
  29   import org .apache.lo gging.log4 j.Logger;
  30  
  31   import gov .va.med.im aging.awiv .business. AwivPatien tSensitivi ty;
  32   import gov .va.med.im aging.awiv .business. AwivUserIn formation;
  33   import gov .va.med.im aging.awiv .business. Patient;
  34   import gov .va.med.im aging.awiv .business. UUID;
  35   import gov .va.med.im aging.awiv .client.Aw ivHelper;
  36   import gov .va.med.im aging.awiv .client.da o.PatientL ookupServi ceDao;
  37   import gov .va.med.im aging.awiv .client.ev ents.Patie ntSensitiv ityCheckCo mpleteEven t;
  38   import gov .va.med.im aging.awiv .client.ui .widgets.d ialogs.Wai tDialog;
  39  
  40   import com .google.gw t.user.cli ent.rpc.As yncCallbac k;
  41   import com .smartgwt. client.uti l.BooleanC allback;
  42   import com .smartgwt. client.uti l.SC;
  43  
  44   /**
  45    * Utiliti es for che cking pati ent sensit ivity and  prompting  the user f or informa tion
  46    * 
  47    * @author         
WERFEJ
  48    *
  49    */
  50   public cla ss Patient Sensitivit yCheck
  51   {
  52           pr ivate stat ic Logger  logger = L ogManager. getLogger( "");
  53           
  54           /* *
  55            *  Retrieve  the sensit ivity for  the patien t and disp lay the ap propriate  warning
  56            *  
  57            *  @param aw ivUserInfo rmation
  58            *  @param pa tient
  59            *  @param pa tientSensi tivityChec kCompleteE vent
  60            * /
  61           pu blic stati c void che ckSensitiv ePatient(A wivUserInf ormation a wivUserInf ormation, 
  62                             Patien t patient,  final Pat ientSensit ivityCheck CompleteEv ent patien tSensitivi tyCheckCom pleteEvent )
  63           {
  64                    Stri ng transac tionId = U UID.uuid() ;
  65                    logg er.info("R etrieving  patient se nsitivity  for patien t '" + pat ient.getIc n() + "' f rom site ' " + awivUs erInformat ion.getPat ientLookup SiteNumber () + "', w ith transa ction Id ' " + transa ctionId +  "'.");
  66                    Wait Dialog.dis playWaitDi alog("Load ing Patien t Sensitiv ity Warnin g", "Loadi ng patient  sensitivi ty warning  message") ;
  67                    Pati entLookupS erviceDao. patientLoo kupService Dao.getPat ientSensit ivity(tran sactionId,  
  68                                      awivUser Informatio n.getPatie ntLookupSi teNumber() , patient. getIcn(), 
  69                                      new Asyn cCallback< AwivPatien tSensitivi ty>()
  70                    {
  71                             /* (no n-Javadoc)
  72                              * @se e com.goog le.gwt.use r.client.r pc.AsyncCa llback#onF ailure(jav a.lang.Thr owable)
  73                              */
  74                             @Overr ide
  75                             public  void onFa ilure(Thro wable arg0 )
  76                             {
  77                                      WaitDial og.hideWai tDialog();
  78                                      logger.e rror("Erro r loading  patient se nsitivity,  " + arg0. getMessage ());
  79                                      if(!Awiv ExceptionH andler.han dleService Exception( arg0))
  80                                      {
  81                                               AwivHelper .displayEr rorMessage ("Error lo ading pati ent sensit ivity", ar g0);
  82                                      }                                  
  83                             }
  84  
  85                             /* (no n-Javadoc)
  86                              * @se e com.goog le.gwt.use r.client.r pc.AsyncCa llback#onS uccess(jav a.lang.Obj ect)
  87                              */
  88                             @Overr ide
  89                             public  void onSu ccess(Awiv PatientSen sitivity a wivPatient Sensitivit y)
  90                             {
  91                                      WaitDial og.hideWai tDialog();
  92                                      displayP atientSens itivityWar ning(awivP atientSens itivity, p atientSens itivityChe ckComplete Event);          
  93                             }
  94                    });
  95           }
  96           
  97           /* *
  98            *  Display a  warning m essage for  the known  patient s ensitivity  informati on
  99            *  @param aw ivPatientS ensitivity
  100            *  @param pa tientSensi tivityChec kCompleteE vent
  101            * /
  102           pu blic stati c void dis playPatien tSensitivi tyWarning( AwivPatien tSensitivi ty awivPat ientSensit ivity, 
  103                             final  PatientSen sitivityCh eckComplet eEvent pat ientSensit ivityCheck CompleteEv ent)
  104           {
  105                    fina l int sens itivityCod e = awivPa tientSensi tivity.get Sensitivit yCode();
  106                    Stri ng warning Message =  awivPatien tSensitivi ty.getWarn ingMessage ();
  107                    swit ch(sensiti vityCode)
  108                    {
  109                             case 0 :
  110                                      // patie nt not rea lly sensit ive
  111                                      patientS ensitivity CheckCompl eteEvent.o nPatientSe nsitivityC heckComple te(true, s ensitivity Code);
  112                                      break;
  113                             case 1 :
  114                                      warningM essage = w arningMess age + "<br ><br>Acces s to this  patient ha s been log ged. Click  'OK' to c ontinue";
  115                                      SC.say(" Restricted  Patient R ecord !!!" , warningM essage,
  116                                                       ne w Sensitiv ePatientBo oleanCallb ack(awivPa tientSensi tivity, 
  117                                                                         patien tSensitivi tyCheckCom pleteEvent ));
  118                                      break;
  119                             case 2 :
  120                                      warningM essage = w arningMess age + "<br ><br>Click  'OK' to A ccess the  Patient. ( Access wil l be logge d)";
  121                                      SC.confi rm("Restri cted Patie nt Record  !!!", warn ingMessage
  122                                                       ne w Sensitiv ePatientBo oleanCallb ack(awivPa tientSensi tivity, 
  123                                                                         patien tSensitivi tyCheckCom pleteEvent ));
  124                                      break;
  125                             case 3 :
  126                             case 4 :
  127                                      warningM essage = w arningMess age + "<br ><br>Acces s to this  restricted  patient i s Not Allo wed.";
  128                                      SC.say(" Restricted  Patient R ecord !!!" , warningM essage,
  129                                                       ne w Sensitiv ePatientBo oleanCallb ack(awivPa tientSensi tivity, 
  130                                                                         patien tSensitivi tyCheckCom pleteEvent ));
  131                                      break;
  132                    }
  133           }
  134  
  135           st atic class  Sensitive PatientBoo leanCallba ck
  136           im plements B ooleanCall back
  137           {
  138                    priv ate final  AwivPatien tSensitivi ty awivPat ientSensit ivity;
  139                    priv ate final  PatientSen sitivityCh eckComplet eEvent pat ientSensit ivityCheck CompleteEv ent;
  140                    
  141                    publ ic Sensiti vePatientB ooleanCall back(AwivP atientSens itivity aw ivPatientS ensitivity ,
  142                                      PatientS ensitivity CheckCompl eteEvent p atientSens itivityChe ckComplete Event)
  143                    {
  144                             this.a wivPatient Sensitivit y = awivPa tientSensi tivity;
  145                             this.p atientSens itivityChe ckComplete Event = pa tientSensi tivityChec kCompleteE vent;
  146                    }
  147  
  148                    /* ( non-Javado c)
  149                     * @ see com.sm artgwt.cli ent.util.B ooleanCall back#execu te(java.la ng.Boolean )
  150                     */
  151                    @Ove rride
  152                    publ ic void ex ecute(Bool ean value)
  153                    {
  154                             int co de = awivP atientSens itivity.ge tSensitivi tyCode();
  155                             switch (code)
  156                             {
  157                                      case 1:
  158                                               // user di dn't need  to agree
  159                                               patientSen sitivityCh eckComplet eEvent.onP atientSens itivityChe ckComplete (true, cod e);
  160                                               break;
  161                                      case 2:
  162                                               if(value ! = null &&  value)
  163                                               {
  164                                                       pa tientSensi tivityChec kCompleteE vent.onPat ientSensit ivityCheck Complete(t rue, code) ;                                                 
  165                                               }
  166                                               else
  167                                               {
  168                                                       pa tientSensi tivityChec kCompleteE vent.onPat ientSensit ivityCheck Complete(f alse, code );
  169                                               }
  170                                               break;
  171                                      case 3:
  172                                      case 4:
  173                                               patientSen sitivityCh eckComplet eEvent.onP atientSens itivityChe ckComplete (false, co de);
  174                                               break;
  175                             }        
  176                    }
  177           }
  178   }