From b49795b72f73aba8822f002ab66242c91cf053cd Mon Sep 17 00:00:00 2001 From: shixianjie Date: Mon, 30 Sep 2024 10:54:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E5=8F=8D=E9=A6=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/deploymentTargetDropDown.xml | 15 +------- app/src/main/AndroidManifest.xml | 1 + .../com/hjx/parent/HomeworkDetailActivity.java | 9 +++-- .../com/hjx/parent/HomeworkFeedbackActivity.java | 42 ++++++++++++++++++++++ .../com/hjx/parent/HomeworkSelectActivity.java | 12 +++++++ .../java/com/hjx/parent/StuHomeworkActivity.java | 7 ++++ .../hjx/parent/adapter/HomeworkListAdapter.java | 7 ++-- app/src/main/res/drawable/svg_ic_comment.xml | 4 +-- .../main/res/layout/activity_homework_feedback.xml | 11 +++--- .../main/java/com/prws/common/bean/Student.java | 4 ++- .../com/prws/common/bean/homework/HomeWork.java | 2 +- 11 files changed, 86 insertions(+), 28 deletions(-) create mode 100644 app/src/main/java/com/hjx/parent/HomeworkFeedbackActivity.java diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index bb0031e..0c0c338 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -3,20 +3,7 @@ - - - - - - - - - - - - - - + diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b7283b9..03848f7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -154,6 +154,7 @@ + { private HomeworkList mData; + private Student student; private Adapter mAdapter = new Adapter(); @Override public void initView(Bundle savedInstanceState) { binding.toolbar.setNavigationOnClickListener(v -> onBackPressed()); - String json = getIntent().getStringExtra("data"); - mData = new Gson().fromJson(json, HomeworkList.class); + mData = (HomeworkList) getIntent().getSerializableExtra("data"); + student = (Student) getIntent().getSerializableExtra("student"); binding.tvTitle.setText(mData.getName()); binding.recyclerView.setAdapter(mAdapter); getDetail(); binding.btnFeedback.setOnClickListener(v -> { + if (mAdapter.getData().size() == 0) return; Intent intent = new Intent(this, HomeworkSelectActivity.class); intent.putExtra("data", mData); + intent.putExtra("student", student); intent.putExtra("list", new ArrayList<>(mAdapter.getData())); startActivity(intent); }); diff --git a/app/src/main/java/com/hjx/parent/HomeworkFeedbackActivity.java b/app/src/main/java/com/hjx/parent/HomeworkFeedbackActivity.java new file mode 100644 index 0000000..05b79ad --- /dev/null +++ b/app/src/main/java/com/hjx/parent/HomeworkFeedbackActivity.java @@ -0,0 +1,42 @@ +package com.hjx.parent; + +import android.os.Bundle; + +import com.hjx.parent.databinding.ActivityHomeworkFeedbackBinding; +import com.hjx.parent.rx.BaseRxActivity; +import com.prws.common.bean.Student; +import com.prws.common.bean.homework.HomeWork; +import com.prws.common.bean.homework.HomeworkList; + +import java.text.DecimalFormat; +import java.util.ArrayList; + +public class HomeworkFeedbackActivity extends BaseRxActivity { + private Student student; + private HomeworkList mData; + private ArrayList mList; + + @SuppressWarnings("unchecked") + @Override + public void initView(Bundle savedInstanceState) { + binding.toolbar.setNavigationOnClickListener(v -> onBackPressed()); + student = (Student) getIntent().getSerializableExtra("student"); + mData = (HomeworkList) getIntent().getSerializableExtra("data"); + mList = (ArrayList) getIntent().getSerializableExtra("list"); + + binding.tvStuName.setText(student.stuName); + binding.tvGrade.setText(student.grade); + + int correctNo = 0; + for (HomeWork homeWork: mList) { + homeWork.homeworkId = mData.getId(); + if (!homeWork.check) correctNo ++; + } + binding.tvPercent.setText(new DecimalFormat("0%").format(1f * correctNo / mList.size())); + } + + @Override + protected ActivityHomeworkFeedbackBinding getViewBinding() { + return ActivityHomeworkFeedbackBinding.inflate(getLayoutInflater()); + } +} diff --git a/app/src/main/java/com/hjx/parent/HomeworkSelectActivity.java b/app/src/main/java/com/hjx/parent/HomeworkSelectActivity.java index 07e982c..2e3c23f 100644 --- a/app/src/main/java/com/hjx/parent/HomeworkSelectActivity.java +++ b/app/src/main/java/com/hjx/parent/HomeworkSelectActivity.java @@ -1,6 +1,7 @@ package com.hjx.parent; import android.annotation.SuppressLint; +import android.content.Intent; import android.content.res.ColorStateList; import android.os.Bundle; import android.view.View; @@ -17,6 +18,7 @@ import com.chad.library.adapter.base.BaseViewHolder; import com.hjx.parent.databinding.ActivityHomeworkSelectBinding; import com.hjx.parent.function.Function1; import com.hjx.parent.rx.BaseRxActivity; +import com.prws.common.bean.Student; import com.prws.common.bean.homework.HomeWork; import com.prws.common.bean.homework.HomeworkList; @@ -24,6 +26,7 @@ import java.util.ArrayList; public class HomeworkSelectActivity extends BaseRxActivity { + private Student student; private HomeworkList mData; private ArrayList mList; private Adapter mAdapter = new Adapter(); @@ -35,6 +38,7 @@ public class HomeworkSelectActivity extends BaseRxActivity onBackPressed()); + student = (Student) getIntent().getSerializableExtra("student"); mData = (HomeworkList) getIntent().getSerializableExtra("data"); mList = (ArrayList) getIntent().getSerializableExtra("list"); @@ -63,6 +67,14 @@ public class HomeworkSelectActivity extends BaseRxActivity { + Intent intent = new Intent(this, HomeworkFeedbackActivity.class); + intent.putExtra("data", mData); + intent.putExtra("list", mList); + intent.putExtra("student", student); + startActivity(intent); + }); } @Override diff --git a/app/src/main/java/com/hjx/parent/StuHomeworkActivity.java b/app/src/main/java/com/hjx/parent/StuHomeworkActivity.java index 16c83af..a79d7a4 100644 --- a/app/src/main/java/com/hjx/parent/StuHomeworkActivity.java +++ b/app/src/main/java/com/hjx/parent/StuHomeworkActivity.java @@ -1,6 +1,7 @@ package com.hjx.parent; import android.annotation.SuppressLint; +import android.content.Intent; import android.os.Bundle; import android.widget.LinearLayout; import android.widget.PopupWindow; @@ -74,6 +75,12 @@ public class StuHomeworkActivity extends BaseRxActivity { + Intent intent = new Intent(this, HomeworkDetailActivity.class); + intent.putExtra("data", data); + intent.putExtra("student", state.student); + startActivity(intent); + }; } @SuppressLint("CheckResult") diff --git a/app/src/main/java/com/hjx/parent/adapter/HomeworkListAdapter.java b/app/src/main/java/com/hjx/parent/adapter/HomeworkListAdapter.java index 6944d83..3b6ec66 100644 --- a/app/src/main/java/com/hjx/parent/adapter/HomeworkListAdapter.java +++ b/app/src/main/java/com/hjx/parent/adapter/HomeworkListAdapter.java @@ -18,6 +18,7 @@ import com.prws.common.bean.homework.HomeworkList; public class HomeworkListAdapter extends BaseQuickAdapter { public Function1 deleteCall; + public Function1 detailCall; public HomeworkListAdapter() { super(R.layout.item_homework_list); @@ -66,9 +67,9 @@ public class HomeworkListAdapter extends BaseQuickAdapter { - Intent intent = new Intent(mContext, HomeworkDetailActivity.class); - intent.putExtra("data", new Gson().toJson(homework)); - mContext.startActivity(intent); + if (detailCall != null) { + detailCall.invoke(homework); + } }); } } diff --git a/app/src/main/res/drawable/svg_ic_comment.xml b/app/src/main/res/drawable/svg_ic_comment.xml index 54dff37..96a9f33 100644 --- a/app/src/main/res/drawable/svg_ic_comment.xml +++ b/app/src/main/res/drawable/svg_ic_comment.xml @@ -1,6 +1,6 @@