.
This commit is contained in:
@@ -3,6 +3,7 @@ package com.app.simplitend.caregiverdashboard.fragments;
|
||||
import static com.app.simplitend.apputils.NotificationService.CONTENT_TYPE_KEY;
|
||||
import static com.app.simplitend.articles.ArticleShowerActivity.ARTICLE_TITLE;
|
||||
import static com.app.simplitend.articles.ArticleShowerActivity.ARTICLE_URL_KEY;
|
||||
import static com.app.simplitend.caregiverdashboard.activities.EditProfileInfoActivity.IS_CAREGIVER;
|
||||
import static com.app.simplitend.cg_geofencing.CgGeoFencingActivity.GEOFENCE_DETAILS_KEY;
|
||||
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_ID;
|
||||
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_TOKEN;
|
||||
@@ -234,9 +235,15 @@ public class CgDashBoardFragment extends Fragment implements
|
||||
CaregiverDataCache.getCaregiverData(requireActivity(), (careGiverData1 -> {
|
||||
this.careGiverData = careGiverData1;
|
||||
|
||||
if (careGiverData == null){
|
||||
Toast.makeText(requireContext(), "Couldn't load notifications", Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
}
|
||||
|
||||
Intent intent = new Intent(requireActivity(), NotificationsActivity.class);
|
||||
intent.putExtra(USER_ID, careGiverData.caregiver_xid + "");
|
||||
intent.putExtra(USER_TOKEN, AppUtil.getCgToken(requireContext()));
|
||||
intent.putExtra(IS_CAREGIVER, true);
|
||||
startActivity(intent);
|
||||
}), true);
|
||||
});
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.app.simplitend.patient_dashboard;
|
||||
|
||||
import static com.app.simplitend.caregiverdashboard.activities.EditProfileInfoActivity.IS_CAREGIVER;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
@@ -26,6 +28,7 @@ import retrofit2.Response;
|
||||
import retrofit2.http.GET;
|
||||
import retrofit2.http.Header;
|
||||
import retrofit2.http.Query;
|
||||
import retrofit2.http.Url;
|
||||
|
||||
public class NotificationsActivity extends AppCompatActivity implements Callback<CallResponse<ArrayList<NotificationsActivity.Notification>>> {
|
||||
|
||||
@@ -39,6 +42,8 @@ public class NotificationsActivity extends AppCompatActivity implements Callback
|
||||
protected String token;
|
||||
public static final String USER_TOKEN = "user_token";
|
||||
|
||||
protected boolean isCaregiver;
|
||||
|
||||
private NotificationsAdapter notificationsAdapter;
|
||||
|
||||
@Override
|
||||
@@ -51,6 +56,7 @@ public class NotificationsActivity extends AppCompatActivity implements Callback
|
||||
|
||||
user_id = getIntent().getStringExtra(USER_ID);
|
||||
token = getIntent().getStringExtra(USER_TOKEN);
|
||||
isCaregiver = getIntent().getBooleanExtra(IS_CAREGIVER, false);
|
||||
|
||||
binding.notificationRv.setLayoutManager(new LinearLayoutManager(this));
|
||||
notificationsAdapter = new NotificationsAdapter();
|
||||
@@ -58,8 +64,13 @@ public class NotificationsActivity extends AppCompatActivity implements Callback
|
||||
|
||||
if (user_id != null){
|
||||
binding.progress.setVisibility(View.VISIBLE);
|
||||
apiService.getNotifications(user_id, user_id,
|
||||
"Bearer " + token).enqueue(this);
|
||||
if (isCaregiver){
|
||||
apiService.getNotifications("api/get-notifications?caregiverId=" + user_id,
|
||||
"Bearer " + token).enqueue(this);
|
||||
}else{
|
||||
apiService.getNotifications("api/get-notifications?patientId=" + user_id,
|
||||
"Bearer " + token).enqueue(this);
|
||||
}
|
||||
}else{
|
||||
binding.errorMsg.setText(R.string.couldn_t_load_notifications);
|
||||
binding.errorView.setVisibility(View.VISIBLE);
|
||||
@@ -136,6 +147,7 @@ public class NotificationsActivity extends AppCompatActivity implements Callback
|
||||
public NotificationViewholderBinding binding;
|
||||
public NotificationViewHolder(@NonNull NotificationViewholderBinding binding){
|
||||
super(binding.getRoot());
|
||||
this.binding = binding;
|
||||
}
|
||||
|
||||
public void setData(Notification notification){
|
||||
@@ -159,9 +171,8 @@ public class NotificationsActivity extends AppCompatActivity implements Callback
|
||||
|
||||
public interface NotificationsApiService{
|
||||
|
||||
@GET("api/get-notifications")
|
||||
Call<CallResponse<ArrayList<Notification>>> getNotifications(@Query("caregiverId") String c_id,
|
||||
@Query("patientId") String p_id,
|
||||
@GET
|
||||
Call<CallResponse<ArrayList<Notification>>> getNotifications(@Url String url,
|
||||
@Header("Authorization") String token);
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,11 @@
|
||||
package com.app.simplitend.patient_dashboard.fragments;
|
||||
|
||||
import static com.app.simplitend.apputils.NotificationService.CONTENT_TYPE_KEY;
|
||||
import static com.app.simplitend.caregiverdashboard.activities.EditProfileInfoActivity.IS_CAREGIVER;
|
||||
import static com.app.simplitend.patient_dashboard.DirectionToHomeActivity.LAT_KEY;
|
||||
import static com.app.simplitend.patient_dashboard.DirectionToHomeActivity.LNG_KEY;
|
||||
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_ID;
|
||||
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_TOKEN;
|
||||
import static com.app.simplitend.patient_dashboard.fragments.CallsActivity.CALL_CONTACT_LIST_KEY;
|
||||
|
||||
import android.app.Activity;
|
||||
@@ -25,11 +28,13 @@ import androidx.navigation.Navigation;
|
||||
import com.app.simplitend.R;
|
||||
import com.app.simplitend.appblocking.FUAActivity;
|
||||
import com.app.simplitend.apputils.AppUtil;
|
||||
import com.app.simplitend.apputils.CaregiverDataCache;
|
||||
import com.app.simplitend.apputils.Constants;
|
||||
import com.app.simplitend.apputils.PatientDataCache;
|
||||
import com.app.simplitend.caregiverdashboard.mvvm.CaregiverMainViewModel;
|
||||
import com.app.simplitend.databinding.PatientDashboardFragmentBinding;
|
||||
import com.app.simplitend.patient_dashboard.DirectionToHomeActivity;
|
||||
import com.app.simplitend.patient_dashboard.NotificationsActivity;
|
||||
import com.app.simplitend.patient_dashboard.PatientMainViewModel;
|
||||
import com.app.simplitend.patientprofile.ProfileContracts;
|
||||
import com.app.simplitend.patientprofile.medreminder.mvvm.ReminderViewModel;
|
||||
@@ -250,6 +255,22 @@ public class PatientDashboardFragment extends Fragment implements ProfileContrac
|
||||
}
|
||||
});
|
||||
|
||||
binding.notifications.setOnClickListener(v -> {
|
||||
PatientDataCache.getPatientData(requireActivity(), (patientData1 -> {
|
||||
this.patientData = patientData1;
|
||||
|
||||
if (patientData == null){
|
||||
Toast.makeText(requireContext(), "Couldn't load notifications", Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
}
|
||||
|
||||
Intent intent = new Intent(requireActivity(), NotificationsActivity.class);
|
||||
intent.putExtra(USER_ID, patientData.patientId + "");
|
||||
intent.putExtra(USER_TOKEN, AppUtil.getPatientToken(requireContext()));
|
||||
intent.putExtra(IS_CAREGIVER, false);
|
||||
startActivity(intent);
|
||||
}), true);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/notifications"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:contentDescription="@string/notification"
|
||||
|
||||
Reference in New Issue
Block a user