Second Commit:

Version 1.5 [Partialy Optimized Version] [UI Fixes And Improvment]
Todo:
Optimized the Code
Add String Theolgy
This commit is contained in:
Diassdp
2025-02-12 23:32:22 +07:00
parent d96b96bf42
commit db9c19a17a
5 changed files with 50 additions and 4 deletions

View File

@ -231,6 +231,10 @@ class MainActivity : AppCompatActivity() {
val resultData = ResultData(journalID, bloodSugar, diastolicBP, systolicBP, BMI, date, task)
healthDataList.add(resultData)
}
val dateFormat = SimpleDateFormat("dd/MM/yyyy", Locale.getDefault())
healthDataList.sortByDescending { it.date.let { date -> dateFormat.parse(date) } }
mainAdapter.notifyDataSetChanged()
} else {
Log.d("error", task.exception?.message.toString())

View File

@ -6,19 +6,23 @@ import android.util.Log
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.database.FirebaseDatabase
import com.healthjournal.databinding.ActivityLoginBinding
import com.healthjournal.ui.dashboard.MainActivity
import com.healthjournal.ui.register.RegisterActivity
import com.healthjournal.ui.users.UsersInputActivity
class LoginActivity : AppCompatActivity() {
private lateinit var binding: ActivityLoginBinding
private lateinit var user: FirebaseAuth
private lateinit var database: FirebaseDatabase
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityLoginBinding.inflate(layoutInflater)
setContentView(binding.root)
user = FirebaseAuth.getInstance()
database = FirebaseDatabase.getInstance()
setuplistener()
}
@ -44,8 +48,7 @@ class LoginActivity : AppCompatActivity() {
user.signInWithEmailAndPassword(email, password).addOnCompleteListener(LoginActivity()){ task ->
if (task.isSuccessful) {
Toast.makeText(this, "Login Success", Toast.LENGTH_SHORT).show()
startActivity(Intent(this@LoginActivity, MainActivity::class.java))
finish()
checkUserdata()
}
else{
Toast.makeText(this, task.exception!!.message, Toast.LENGTH_SHORT).show()
@ -54,4 +57,28 @@ class LoginActivity : AppCompatActivity() {
}
}
}
private fun checkUserdata() {
val firebaseUser = user.currentUser
if (firebaseUser != null) {
val userID = firebaseUser.uid
val userRef = database.getReference("users").child(userID)
userRef.get().addOnCompleteListener { task ->
if (task.isSuccessful) {
if (task.result.exists() && task.result.childrenCount > 0) {
// User has data, proceed to MainActivity
startActivity(Intent(this@LoginActivity, MainActivity::class.java))
finish()
} else {
Toast.makeText(this, "No user data found. Please set up your profile.", Toast.LENGTH_LONG).show()
startActivity(Intent(this@LoginActivity, UsersInputActivity::class.java))
finish()
}
} else {
Toast.makeText(this, "Failed to retrieve user data.", Toast.LENGTH_SHORT).show()
}
}
}
}
}

View File

@ -70,6 +70,8 @@ class ProfileActivity : AppCompatActivity() {
userRef.get().addOnCompleteListener(this) {
if (it.isSuccessful) {
binding.edtName.setText(it.result.child("name").value.toString())
binding.tvMyname.text = it.result.child("name").value.toString()
binding.tvMyemail.text = it.result.child("email").value.toString()
binding.edtDate.setText(it.result.child("date").value.toString())
binding.edtInputHeight.setText(it.result.child("height").value.toString())
binding.edtInputWeight.setText(it.result.child("weight").value.toString())

View File

@ -23,7 +23,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="Please input your today data"
android:text="Tolong Masukan Laporan Hari Ini"
android:textStyle="bold"
android:textColor="@color/Primary_Dark"
app:layout_constraintEnd_toEndOf="parent"
@ -65,6 +65,8 @@
android:inputType="number"
android:textColor="@color/black"
android:textSize="12sp"
android:maxLength="3"
android:textAlignment="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tv_input_blood_pressure_SYS"
app:layout_constraintStart_toStartOf="@+id/tv_input_blood_pressure_SYS"
@ -106,6 +108,8 @@
android:inputType="number"
android:textColor="@color/black"
android:textSize="12sp"
android:maxLength="2"
android:textAlignment="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tv_input_blood_pressure_DIA"
app:layout_constraintStart_toStartOf="@+id/tv_input_blood_pressure_DIA"
@ -147,6 +151,8 @@
android:inputType="number"
android:textColor="@color/black"
android:textSize="12sp"
android:maxLength="3"
android:textAlignment="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tv_input_blood_sugar"
app:layout_constraintStart_toStartOf="@+id/tv_input_blood_sugar"
@ -188,6 +194,8 @@
android:inputType="number"
android:textColor="@color/black"
android:textSize="12sp"
android:maxLength="3"
android:textAlignment="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tv_input_weight"
app:layout_constraintStart_toStartOf="@+id/tv_input_weight"
@ -219,6 +227,7 @@
android:layout_height="20dp"
android:background="@color/white"
android:visibility="gone"
android:maxLength="3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
@ -253,13 +262,15 @@
<EditText
android:id="@+id/edt_input_note"
android:layout_width="200dp"
android:layout_height="155dp"
android:layout_height="165dp"
android:padding="10dp"
android:background="@drawable/bg_input_box"
android:gravity="start|top"
android:imeOptions="actionDone"
android:inputType="textMultiLine|textCapSentences"
android:maxLines="10"
android:minLines="4"
android:textSize="11sp"
android:overScrollMode="always"
android:scrollbars="vertical"
app:layout_constraintEnd_toEndOf="parent"

View File

@ -122,6 +122,7 @@
android:background="@drawable/bg_input_box"
android:textColor="@color/black"
android:textAlignment="center"
android:maxLength="3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@ -164,6 +165,7 @@
android:background="@drawable/bg_input_box"
android:textColor="@color/black"
android:textAlignment="center"
android:maxLength="3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"