-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
d8dbe4f
commit cfc0142
Showing
9 changed files
with
262 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
23 changes: 23 additions & 0 deletions
23
app/src/main/java/com/example/posyandu/features/main/home/Bidan.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
package com.example.posyandu.features.main.home | ||
|
||
data class Bidan( | ||
val id: Int, | ||
val nama: String, | ||
val namaPosyandu: String, | ||
val alamatPosyandu: String, | ||
val jumlahRemaja: Int? = null, | ||
val jumlahKader: Int? = null, | ||
val jumlahRemajaBeresiko: Int? = null, | ||
var hariJadwalTerdekat1: String? = null, | ||
var tanggalJadwalTerdekat1: String? = null, | ||
var jenisAktivitasTerdekat1: String? = null, | ||
var iconJenis1: String? = null, | ||
var hariJadwalTerdekat2: String? = null, | ||
var tanggalJadwalTerdekat2: String? = null, | ||
var jenisAktivitasTerdekat2: String? = null, | ||
var iconJenis2: String? = null, | ||
var namaSender1: String? = null, | ||
var kontenChat1: String? = null, | ||
var namaSender2: String? = null, | ||
var kontenChat2: String? = null | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
75 changes: 75 additions & 0 deletions
75
app/src/main/java/com/example/posyandu/features/main/home/HomeRepository.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
package com.example.posyandu | ||
|
||
import com.example.posyandu.features.main.home.Kader | ||
import com.example.posyandu.features.main.home.Remaja | ||
import com.example.posyandu.features.main.home.Bidan | ||
|
||
class HomeRepository { | ||
fun getHomeDataBidan(): Bidan { | ||
return Bidan( | ||
1, | ||
"Cinta Laura Kiehl", | ||
"Posyandu Terpadu", | ||
"Jalan Sidosermo 1 no 24", | ||
25, | ||
1, | ||
5, | ||
"Senin", | ||
"22 Januari 2024", | ||
"Penyuluhan 'Pentingnya Menjaga Nutrisi'", | ||
"@drawable/history_edu_fill0_wght400_grad0_opsz24", | ||
"Selasa", | ||
"23 Januari 2024", | ||
"Posyandu bersama", | ||
"@drawable/monitor_heart_fill0_wght400_grad0_opsz24", | ||
"Amelia Apta", | ||
"Ohh ternyata begitu ya Bu, saya sendiri sebelumnya juga kurang memperhatikan hal...", | ||
"Leony Avellince", | ||
"Selamat siang Bu, perkenalkan saya Leony, umur 21 tahun. Saya memiliki berat badan..." | ||
) | ||
} | ||
|
||
fun getHomeDataKader(): Kader { | ||
return Kader( | ||
1, | ||
"Sandra Ashita", | ||
"Posyandu Terpadu", | ||
"Jalan Sidosermo 1 no 24", | ||
25, | ||
1, | ||
5, | ||
"Senin", | ||
"22 Januari 2024", | ||
"Penyuluhan 'Pentingnya Menjaga Nutrisi'", | ||
"@drawable/history_edu_fill0_wght400_grad0_opsz24", | ||
"Selasa", | ||
"23 Januari 2024", | ||
"Posyandu bersama", | ||
"@drawable/monitor_heart_fill0_wght400_grad0_opsz24", | ||
"Amelia Apta", | ||
"Ohh ternyata begitu ya Bu, saya sendiri sebelumnya juga kurang memperhatikan hal...", | ||
"Leony Avellince", | ||
"Selamat siang Bu, perkenalkan saya Leony, umur 21 tahun. Saya memiliki berat badan..." | ||
) | ||
} | ||
|
||
fun getHomeDataRemaja(): Remaja { | ||
return Remaja( | ||
1, | ||
"Billie Eilish", | ||
"Senin", | ||
"22 Januari 2024", | ||
"Penyuluhan 'Pentingnya Menjaga Nutrisi'", | ||
"@drawable/history_edu_fill0_wght400_grad0_opsz24", | ||
"Selasa", | ||
"23 Januari 2024", | ||
"Posyandu bersama", | ||
"@drawable/monitor_heart_fill0_wght400_grad0_opsz24", | ||
"Amelia Apta", | ||
"Ohh ternyata begitu ya Bu, saya sendiri sebelumnya juga kurang memperhatikan hal...", | ||
"Leony Avellince", | ||
"Selamat siang Bu, perkenalkan saya Leony, umur 21 tahun. Saya memiliki berat badan..." | ||
) | ||
} | ||
} | ||
|
48 changes: 48 additions & 0 deletions
48
app/src/main/java/com/example/posyandu/features/main/home/HomeViewModel.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
package com.example.posyandu.features.main.home | ||
|
||
import android.app.Application | ||
import androidx.lifecycle.AndroidViewModel | ||
import androidx.lifecycle.LiveData | ||
import androidx.lifecycle.MutableLiveData | ||
import com.example.posyandu.HomeRepository | ||
import com.example.posyandu.utils.UserManager | ||
import java.text.SimpleDateFormat | ||
import java.util.Locale | ||
|
||
|
||
class HomeViewModel(application: Application) : AndroidViewModel(application) { | ||
private val homeRepository = HomeRepository() | ||
|
||
private val _bidanData = MutableLiveData<Bidan>() | ||
private val _kaderData = MutableLiveData<Kader>() | ||
private val _remajaData = MutableLiveData<Remaja>() | ||
val bidanData: LiveData<Bidan> = _bidanData | ||
val kaderData: LiveData<Kader> = _kaderData | ||
val remajaData: LiveData<Remaja> = _remajaData | ||
|
||
val dateFormat = SimpleDateFormat("yyyy-MM-dd HH:mm:", Locale.getDefault()) | ||
|
||
|
||
|
||
fun refreshHomeData() { | ||
|
||
val userManager = UserManager.getInstance(getApplication()) | ||
val userRole = userManager.getRole() | ||
|
||
|
||
if (userRole == "admin") { | ||
val home = homeRepository.getHomeDataBidan() | ||
|
||
_bidanData.value = home | ||
} else if (userRole == "kader") { | ||
val home = homeRepository.getHomeDataKader() | ||
|
||
_kaderData.value = home | ||
} else { | ||
val home = homeRepository.getHomeDataRemaja() | ||
|
||
_remajaData.value = home | ||
} | ||
|
||
} | ||
} |
23 changes: 23 additions & 0 deletions
23
app/src/main/java/com/example/posyandu/features/main/home/Kader.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
package com.example.posyandu.features.main.home | ||
|
||
data class Kader( | ||
val id: Int, | ||
val nama: String, | ||
val namaPosyandu: String, | ||
val alamatPosyandu: String, | ||
val jumlahRemaja: Int? = null, | ||
val jumlahKader: Int? = null, | ||
val jumlahRemajaBeresiko: Int? = null, | ||
var hariJadwalTerdekat1: String? = null, | ||
var tanggalJadwalTerdekat1: String? = null, | ||
var jenisAktivitasTerdekat1: String? = null, | ||
var iconJenis1: String? = null, | ||
var hariJadwalTerdekat2: String? = null, | ||
var tanggalJadwalTerdekat2: String? = null, | ||
var jenisAktivitasTerdekat2: String? = null, | ||
var iconJenis2: String? = null, | ||
var namaSender1: String? = null, | ||
var kontenChat1: String? = null, | ||
var namaSender2: String? = null, | ||
var kontenChat2: String? = null | ||
) |
18 changes: 18 additions & 0 deletions
18
app/src/main/java/com/example/posyandu/features/main/home/Remaja.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
package com.example.posyandu.features.main.home | ||
|
||
data class Remaja( | ||
val id: Int, | ||
val nama: String, | ||
var hariJadwalTerdekat1: String? = null, | ||
var tanggalJadwalTerdekat1: String? = null, | ||
var jenisAktivitasTerdekat1: String? = null, | ||
var iconJenis1: String? = null, | ||
var hariJadwalTerdekat2: String? = null, | ||
var tanggalJadwalTerdekat2: String? = null, | ||
var jenisAktivitasTerdekat2: String? = null, | ||
var iconJenis2: String? = null, | ||
var namaSender1: String? = null, | ||
var kontenChat1: String? = null, | ||
var namaSender2: String? = null, | ||
var kontenChat2: String? = null | ||
) |
42 changes: 42 additions & 0 deletions
42
app/src/main/java/com/example/posyandu/utils/UserManager.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
package com.example.posyandu.utils | ||
|
||
import android.content.Context | ||
import com.example.posyandu.features.authentication.LoginActivity | ||
import com.example.posyandu.features.main.home.HomeViewModel | ||
|
||
class UserManager(private val context: Context) { | ||
|
||
companion object { | ||
private const val PREFERENCES_NAME = "UserPreferences" | ||
private const val KEY_TOKEN = "token" | ||
private const val KEY_ROLE = "role" | ||
|
||
@Volatile | ||
private var instance: UserManager? = null | ||
|
||
fun getInstance(context: LoginActivity): UserManager { | ||
return instance ?: synchronized(this) { | ||
instance ?: UserManager(context).also { instance = it } | ||
} | ||
} | ||
} | ||
|
||
fun saveUserDetails(token: String, role: String) { | ||
val sharedPreferences = context.getSharedPreferences(PREFERENCES_NAME, Context.MODE_PRIVATE) | ||
with(sharedPreferences.edit()) { | ||
putString(KEY_TOKEN, token) | ||
putString(KEY_ROLE, role) | ||
apply() | ||
} | ||
} | ||
|
||
fun getToken(): String? { | ||
val sharedPreferences = context.getSharedPreferences(PREFERENCES_NAME, Context.MODE_PRIVATE) | ||
return sharedPreferences.getString(KEY_TOKEN, null) | ||
} | ||
|
||
fun getRole(): String? { | ||
val sharedPreferences = context.getSharedPreferences(PREFERENCES_NAME, Context.MODE_PRIVATE) | ||
return sharedPreferences.getString(KEY_ROLE, null) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters