4545import org .openimis .imisclaims .domain .entity .PaymentList ;
4646import org .openimis .imisclaims .domain .entity .Service ;
4747import org .openimis .imisclaims .domain .entity .SubServiceItem ;
48+ import org .openimis .imisclaims .network .exception .HttpException ;
4849import org .openimis .imisclaims .tools .Log ;
50+ import org .openimis .imisclaims .usecase .FetchClaimAdmin ;
4951import org .openimis .imisclaims .usecase .FetchClaimAdmins ;
5052import org .openimis .imisclaims .usecase .FetchControls ;
5153import org .openimis .imisclaims .usecase .FetchDiagnosesServicesItems ;
5658
5759import java .io .File ;
5860import java .io .FileOutputStream ;
61+ import java .net .HttpURLConnection ;
5962import java .util .ArrayList ;
6063import java .util .Calendar ;
6164import java .util .Date ;
@@ -553,7 +556,7 @@ public void validateClaimAdminCode(final String claimAdminCode) {
553556 if (c .getCount () == 0 ) {
554557 try {
555558 progressDialog .dismiss ();
556- doLoggedIn (() -> DownLoadDiagnosesServicesItems (claimAdminCode ));
559+ doLoggedIn (() -> CheckFosaValidity (claimAdminCode ));
557560 } catch (Exception e ) {
558561 e .printStackTrace ();
559562 }
@@ -564,6 +567,33 @@ public void validateClaimAdminCode(final String claimAdminCode) {
564567 }
565568 }
566569
570+ public void CheckFosaValidity (String claimAdminCode ){
571+ String progress_message = getResources ().getString (R .string .checkHfValidity );
572+ progressDialog = ProgressDialog .show (this , getResources ().getString (R .string .application ), progress_message );
573+ Thread thread = new Thread () {
574+ public void run () {
575+ try {
576+ new FetchClaimAdmin ().execute (claimAdminCode );
577+ runOnUiThread (() -> {
578+ progressDialog .dismiss ();
579+ DownLoadDiagnosesServicesItems (claimAdminCode );
580+ });
581+ } catch (HttpException e ){
582+ if (e .getCode () == HttpURLConnection .HTTP_NOT_FOUND ){
583+ runOnUiThread (() -> {
584+ progressDialog .dismiss ();
585+ Toast .makeText (MainActivity .this , getResources ().getString (R .string .InvalidHealthFacility ), Toast .LENGTH_LONG ).show ();
586+ ClaimAdminDialogBox ();
587+ });
588+ }
589+ } catch (Exception e ) {
590+ e .printStackTrace ();
591+ }
592+ }
593+ };
594+ thread .start ();
595+ }
596+
567597 public void DownLoadDiagnosesServicesItems (@ Nullable final String officerCode ) {
568598 if (global .isNetworkAvailable ()) {
569599 String progress_message = getResources ().getString (R .string .Diagnoses ) + ", " + getResources ().getString (R .string .Services ) + ", " + getResources ().getString (R .string .Items ) + "..." ;
0 commit comments