diff --git a/android/OldPeopleHome/.idea/workspace.xml b/android/OldPeopleHome/.idea/workspace.xml index 2a1d747..7d1f3dd 100644 --- a/android/OldPeopleHome/.idea/workspace.xml +++ b/android/OldPeopleHome/.idea/workspace.xml @@ -6,7 +6,7 @@ - @@ -125,25 +125,27 @@ - - + + - - - + + + + + + + + - - + + - - - - - - + + + @@ -151,7 +153,7 @@ - + @@ -161,24 +163,92 @@ - - + + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -186,52 +256,21 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - #707070 - @color/choosed - des - 200 - , - connected - onScanCallback permi 扫描ing handle @@ -245,9 +284,23 @@ 断开li 断开lian 断开lian'jie - 断开连接 step send + 4389 + 断开连接 + -4389 + gong'l + gong'li + g + 公里 + callRemoteDisconnect + disc + isconnect failed + heart + initc + hand + new hand + adapter @color/choosed @@ -2056,57 +2109,57 @@ @@ -2131,8 +2184,76 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2159,6 +2280,24 @@ + + + + + + + + + + - - @@ -2330,6 +2465,44 @@ + + + + + + + + + + + + + + + + + + + + @@ -2375,77 +2548,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -2454,7 +2581,7 @@ - + @@ -2570,7 +2697,8 @@ @@ -2903,283 +3033,347 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + - + - - - - - - - - - + + - + - - + + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3189,63 +3383,81 @@ - - + + - - + + - + - - - - - - + + + + + + - + - - + + - + - - - - - - - - - - - - + + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -3254,90 +3466,94 @@ - + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + - + - - + + + + + - + - - + + - - - - - - + + + - + - - - - - + + + + + + - + - - + + - - - - + + + + diff --git a/android/OldPeopleHome/app/build.gradle b/android/OldPeopleHome/app/build.gradle index 9f3bddd..1bce201 100644 --- a/android/OldPeopleHome/app/build.gradle +++ b/android/OldPeopleHome/app/build.gradle @@ -62,4 +62,5 @@ dependencies { testImplementation("com.squareup.okhttp3:mockwebserver:3.12.0") //gson implementation 'com.google.code.gson:gson:2.7' + } diff --git a/android/OldPeopleHome/app/src/main/AndroidManifest.xml b/android/OldPeopleHome/app/src/main/AndroidManifest.xml index 4bbf570..b64e316 100644 --- a/android/OldPeopleHome/app/src/main/AndroidManifest.xml +++ b/android/OldPeopleHome/app/src/main/AndroidManifest.xml @@ -80,6 +80,7 @@ + \ No newline at end of file diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListAdapter.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListAdapter.java new file mode 100644 index 0000000..93929e3 --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListAdapter.java @@ -0,0 +1,44 @@ +package com.scorpiomiku.oldpeoplehome.adapter; + +import android.content.Context; +import android.support.annotation.NonNull; +import android.support.v7.widget.RecyclerView; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.scorpiomiku.oldpeoplehome.R; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; + +import java.util.List; + +/** + * Created by ScorpioMiku on 2019/9/5. + */ + +public class DrawerPeopleListAdapter extends RecyclerView.Adapter { + private Context context; + private List list; + + public DrawerPeopleListAdapter(Context context, List list) { + this.context = context; + this.list = list; + } + + @NonNull + @Override + public DrawerPeopleListHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.item_drawer_oldpeople, parent, false); + return new DrawerPeopleListHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull DrawerPeopleListHolder holder, int position) { + holder.bindView(list.get(position), position); + } + + @Override + public int getItemCount() { + return list.size(); + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListHolder.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListHolder.java new file mode 100644 index 0000000..3eca82e --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/DrawerPeopleListHolder.java @@ -0,0 +1,35 @@ +package com.scorpiomiku.oldpeoplehome.adapter; + +import android.support.v7.widget.RecyclerView; +import android.view.View; +import android.widget.ImageView; +import android.widget.TextView; + +import com.bumptech.glide.Glide; +import com.scorpiomiku.oldpeoplehome.R; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; +import com.scorpiomiku.oldpeoplehome.utils.StaticUtils; + +import butterknife.BindView; +import butterknife.ButterKnife; + +/** + * Created by ScorpioMiku on 2019/9/5. + */ + +public class DrawerPeopleListHolder extends RecyclerView.ViewHolder { + @BindView(R.id.avatar) + ImageView avatar; + @BindView(R.id.name) + TextView name; + + public DrawerPeopleListHolder(View itemView) { + super(itemView); + ButterKnife.bind(this, itemView); + } + + public void bindView(OldPeople oldPeople, int position) { + Glide.with(itemView.getContext()).load(StaticUtils.oldPeopleAvatars[position]).into(avatar); + name.setText(oldPeople.getParentName()); + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/PeopleSpinnerAdapter.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/PeopleSpinnerAdapter.java index f4bd553..6bae11b 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/PeopleSpinnerAdapter.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/adapter/PeopleSpinnerAdapter.java @@ -9,7 +9,10 @@ import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; +import com.bumptech.glide.Glide; import com.scorpiomiku.oldpeoplehome.R; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; +import com.scorpiomiku.oldpeoplehome.utils.StaticUtils; import java.util.List; @@ -19,9 +22,9 @@ import java.util.List; public class PeopleSpinnerAdapter extends BaseAdapter { private Context context; - private List people; + private List people; - public PeopleSpinnerAdapter(Context context, List people) { + public PeopleSpinnerAdapter(Context context, List people) { this.context = context; this.people = people; } @@ -48,7 +51,8 @@ public class PeopleSpinnerAdapter extends BaseAdapter { if (view != null) { ImageView avatar = view.findViewById(R.id.spinner_avatar); TextView name = view.findViewById(R.id.spinner_name); - name.setText(people.get(i)); + name.setText(people.get(i).getParentName()); + Glide.with(context).load(StaticUtils.oldPeopleAvatars[i]).into(avatar); } return view; } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseActivity.java index 90e0122..febb81f 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseActivity.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseActivity.java @@ -10,6 +10,8 @@ import android.support.v4.content.ContextCompat; import android.support.v7.app.AppCompatActivity; +import com.scorpiomiku.oldpeoplehome.bean.Child; +import com.scorpiomiku.oldpeoplehome.bean.User; import com.scorpiomiku.oldpeoplehome.modules.loginregister.LoginActivity; import com.scorpiomiku.oldpeoplehome.utils.LogUtils; import com.scorpiomiku.oldpeoplehome.utils.WebUtils; @@ -26,6 +28,20 @@ public abstract class BaseActivity extends AppCompatActivity { protected Handler handler; protected HashMap data = new HashMap<>(); private WebUtils webUtils; + private User user; + + public Child getChildUser() { + return ((Child) user); + } + + + public User getOldPeopleUser() { + return (user); + } + + public void setUser(User user) { + this.user = user; + } @Override public void onCreate(@Nullable Bundle savedInstanceState) { diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseFragment.java index 3df969a..7a3a5a5 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/base/BaseFragment.java @@ -10,6 +10,8 @@ import android.view.View; import android.view.ViewGroup; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; +import com.scorpiomiku.oldpeoplehome.bean.User; import com.scorpiomiku.oldpeoplehome.utils.LogUtils; import com.scorpiomiku.oldpeoplehome.utils.WebUtils; @@ -25,6 +27,15 @@ public abstract class BaseFragment extends Fragment { protected Handler handler; protected HashMap data = new HashMap<>(); private WebUtils webUtils; +// private User user; +// +// public User getUser() { +// return user; +// } +// +// public void setUser(User user) { +// this.user = user; +// } @Nullable @Override @@ -39,7 +50,7 @@ public abstract class BaseFragment extends Fragment { webUtils = WebUtils.getInstance(); initView(); handler = initHandle(); - refreshData(); +// refreshData(); } protected WebUtils getWebUtils() { @@ -63,5 +74,9 @@ public abstract class BaseFragment extends Fragment { LogUtils.logd("step:" + step + ";cal:" + cal + ";dis:" + distance + ";sportTime:" + sportTime + ";heartRate:" + heartRate + ";sleepType" + sleepType); } + public void refreshUi(OldPeople oldPeople) { + LogUtils.logd(oldPeople.toString()); + } + } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Child.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Child.java new file mode 100644 index 0000000..3e35b8a --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Child.java @@ -0,0 +1,85 @@ +package com.scorpiomiku.oldpeoplehome.bean; + +import java.io.Serializable; + +/** + * Created by ScorpioMiku on 2019/9/4. + */ + +public class Child implements User, Serializable { + private String childSex; + private String childPassword; + private String childAccount; + private String childName; + private String childLongId; + private String childPhone; + private String childId; + + public String getChildId() { + return childId; + } + + public void setChildId(String childId) { + this.childId = childId; + } + + public String getChildSex() { + return childSex; + } + + public void setChildSex(String childSex) { + this.childSex = childSex; + } + + public String getChildPassword() { + return childPassword; + } + + public void setChildPassword(String childPassword) { + this.childPassword = childPassword; + } + + public String getChildAccount() { + return childAccount; + } + + public void setChildAccount(String childAccount) { + this.childAccount = childAccount; + } + + public String getChildName() { + return childName; + } + + public void setChildName(String childName) { + this.childName = childName; + } + + public String getChildLongId() { + return childLongId; + } + + public void setChildLongId(String childLongId) { + this.childLongId = childLongId; + } + + public String getChildPhone() { + return childPhone; + } + + public void setChildPhone(String childPhone) { + this.childPhone = childPhone; + } + + @Override + public String toString() { + return "Child{" + + "childSex='" + childSex + '\'' + + ", childPassword='" + childPassword + '\'' + + ", childAccount='" + childAccount + '\'' + + ", childName='" + childName + '\'' + + ", childLongId='" + childLongId + '\'' + + ", childPhone='" + childPhone + '\'' + + '}'; + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/OldPeople.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/OldPeople.java new file mode 100644 index 0000000..fe981a4 --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/OldPeople.java @@ -0,0 +1,124 @@ +package com.scorpiomiku.oldpeoplehome.bean; + +/** + * Created by ScorpioMiku on 2019/9/4. + */ + +public class OldPeople implements User { + private String parentId; + private String parentLongId; + private String parentName; + private String parentSex; + private String parentAccount; + private String parentPassword; + private String parentHeight; + private String parentWeight; + private String parentBirth; + private String parentPhone; + private String parentRoomId; + + @Override + public String toString() { + return "OldPeople{" + + "parentId='" + parentId + '\'' + + ", parentLongId='" + parentLongId + '\'' + + ", parentName='" + parentName + '\'' + + ", parentSex='" + parentSex + '\'' + + ", parentAccount='" + parentAccount + '\'' + + ", parentPassword='" + parentPassword + '\'' + + ", parentHeight='" + parentHeight + '\'' + + ", parentWeight='" + parentWeight + '\'' + + ", parentBirth='" + parentBirth + '\'' + + ", parentPhone='" + parentPhone + '\'' + + ", parentRoomId='" + parentRoomId + '\'' + + '}'; + } + + public String getParentId() { + return parentId; + } + + public void setParentId(String parentId) { + this.parentId = parentId; + } + + public String getParentLongId() { + return parentLongId; + } + + public void setParentLongId(String parentLongId) { + this.parentLongId = parentLongId; + } + + public String getParentName() { + return parentName; + } + + public void setParentName(String parentName) { + this.parentName = parentName; + } + + public String getParentSex() { + return parentSex; + } + + public void setParentSex(String parentSex) { + this.parentSex = parentSex; + } + + public String getParentAccount() { + return parentAccount; + } + + public void setParentAccount(String parentAccount) { + this.parentAccount = parentAccount; + } + + public String getParentPassword() { + return parentPassword; + } + + public void setParentPassword(String parentPassword) { + this.parentPassword = parentPassword; + } + + public String getParentHeight() { + return parentHeight; + } + + public void setParentHeight(String parentHeight) { + this.parentHeight = parentHeight; + } + + public String getParentWeight() { + return parentWeight; + } + + public void setParentWeight(String parentWeight) { + this.parentWeight = parentWeight; + } + + public String getParentBirth() { + return parentBirth; + } + + public void setParentBirth(String parentBirth) { + this.parentBirth = parentBirth; + } + + public String getParentPhone() { + return parentPhone; + } + + public void setParentPhone(String parentPhone) { + this.parentPhone = parentPhone; + } + + public String getParentRoomId() { + return parentRoomId; + } + + public void setParentRoomId(String parentRoomId) { + this.parentRoomId = parentRoomId; + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/SleepData.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/SleepData.java new file mode 100644 index 0000000..1df06ea --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/SleepData.java @@ -0,0 +1,53 @@ +package com.scorpiomiku.oldpeoplehome.bean; + +/** + * Created by ScorpioMiku on 2019/9/4. + */ + +public class SleepData { + private String parent; + private String date; + private String deep; + private String light; + private String awake; + + public String getParent() { + return parent; + } + + public void setParent(String parent) { + this.parent = parent; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public String getDeep() { + return deep; + } + + public void setDeep(String deep) { + this.deep = deep; + } + + public String getLight() { + return light; + } + + public void setLight(String light) { + this.light = light; + } + + public String getAwake() { + return awake; + } + + public void setAwake(String awake) { + this.awake = awake; + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Sport.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Sport.java new file mode 100644 index 0000000..ba0756d --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/Sport.java @@ -0,0 +1,74 @@ +package com.scorpiomiku.oldpeoplehome.bean; + +/** + * Created by ScorpioMiku on 2019/9/5. + */ + +public class Sport { + private String motionParentId; + private String motionDate; + private String motionCount; + private String motionDistance; + private String motionEnergy; + private String motionTime; + + @Override + public String toString() { + return "Sport{" + + "motionParentId='" + motionParentId + '\'' + + ", motionDate='" + motionDate + '\'' + + ", motionCount='" + motionCount + '\'' + + ", motionDistance='" + motionDistance + '\'' + + ", motionEnergy='" + motionEnergy + '\'' + + ", motionTime='" + motionTime + '\'' + + '}'; + } + + public String getMotionParentId() { + return motionParentId; + } + + public void setMotionParentId(String motionParentId) { + this.motionParentId = motionParentId; + } + + public String getMotionDate() { + return motionDate; + } + + public void setMotionDate(String motionDate) { + this.motionDate = motionDate; + } + + public String getMotionCount() { + return motionCount; + } + + public void setMotionCount(String motionCount) { + this.motionCount = motionCount; + } + + public String getMotionDistance() { + return motionDistance; + } + + public void setMotionDistance(String motionDistance) { + this.motionDistance = motionDistance; + } + + public String getMotionEnergy() { + return motionEnergy; + } + + public void setMotionEnergy(String motionEnergy) { + this.motionEnergy = motionEnergy; + } + + public String getMotionTime() { + return motionTime; + } + + public void setMotionTime(String motionTime) { + this.motionTime = motionTime; + } +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/User.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/User.java new file mode 100644 index 0000000..9051fd2 --- /dev/null +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/bean/User.java @@ -0,0 +1,8 @@ +package com.scorpiomiku.oldpeoplehome.bean; + +/** + * Created by ScorpioMiku on 2019/9/4. + */ + +public interface User { +} diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/activity/ChildMainActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/activity/ChildMainActivity.java index 5c5ec27..820cb36 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/activity/ChildMainActivity.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/activity/ChildMainActivity.java @@ -1,36 +1,60 @@ package com.scorpiomiku.oldpeoplehome.modules.children.activity; +import android.annotation.SuppressLint; +import android.app.AlertDialog; +import android.content.DialogInterface; import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.support.annotation.NonNull; import android.support.design.widget.BottomNavigationView; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; import android.view.MenuItem; +import android.view.View; +import android.widget.AdapterView; +import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.Spinner; +import android.widget.TextView; +import com.google.gson.Gson; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; import com.mxn.soul.flowingdrawer_core.FlowingDrawer; import com.mxn.soul.flowingdrawer_core.FlowingMenuLayout; import com.scorpiomiku.oldpeoplehome.R; +import com.scorpiomiku.oldpeoplehome.adapter.DrawerPeopleListAdapter; import com.scorpiomiku.oldpeoplehome.adapter.PeopleSpinnerAdapter; import com.scorpiomiku.oldpeoplehome.base.BaseActivity; import com.scorpiomiku.oldpeoplehome.base.BaseFragment; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; +import com.scorpiomiku.oldpeoplehome.bean.User; import com.scorpiomiku.oldpeoplehome.modules.children.fragment.EnvironmentFragment; import com.scorpiomiku.oldpeoplehome.modules.children.fragment.HeartRateFragment; import com.scorpiomiku.oldpeoplehome.modules.children.fragment.MapFragment; import com.scorpiomiku.oldpeoplehome.modules.children.fragment.SleepFragment; import com.scorpiomiku.oldpeoplehome.modules.children.fragment.StepFragment; +import com.scorpiomiku.oldpeoplehome.utils.LogUtils; import com.scorpiomiku.oldpeoplehome.utils.StatusBarUtils; +import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; +import java.io.IOException; +import java.sql.Time; import java.util.ArrayList; +import java.util.Arrays; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; +import okhttp3.Call; +import okhttp3.Callback; +import okhttp3.Response; /** * Created by ScorpioMiku on 2019/8/21. @@ -51,6 +75,22 @@ public class ChildMainActivity extends BaseActivity { FlowingMenuLayout menuLayout; @BindView(R.id.drawerlayout) FlowingDrawer drawerlayout; + @BindView(R.id.drawer_avatar) + ImageView drawerAvatar; + @BindView(R.id.drawer_name) + TextView drawerName; + @BindView(R.id.drawer_phone) + TextView drawerPhone; + @BindView(R.id.people_recycler_view) + RecyclerView peopleRecyclerView; + @BindView(R.id.bind_older) + ImageView bindOlder; + @BindView(R.id.title_time_text) + TextView titleTimeText; + private OldPeople nowSelectOlder; + private DrawerPeopleListAdapter adapter; + private PeopleSpinnerAdapter peopleSpinnerAdapter; + private ArrayList oldPeoples = new ArrayList<>(); private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener; private FragmentManager fragmentManager; private BaseFragment[] fragments = { @@ -75,13 +115,38 @@ public class ChildMainActivity extends BaseActivity { Color.rgb(63, 81, 181), }; + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what) { + case 1: + getBindOlders(); + //绑定老人成功 + break; + case 2: + LogUtils.shortToast("该老人已绑定过咯"); + break; + case 3: + adapter.notifyDataSetChanged(); + peopleSpinnerAdapter.notifyDataSetChanged(); + nowSelectOlder = oldPeoples.get(0); + if (nowSelectOlder != null) { + changeData(); + } + //获取到了所有绑定了的老人 + break; + } + } + }; } @Override public void iniview() { + setUser((User) getIntent().getSerializableExtra("user")); fragmentManager = getSupportFragmentManager(); mOnNavigationItemSelectedListener = new BottomNavigationView.OnNavigationItemSelectedListener() { @@ -111,6 +176,8 @@ public class ChildMainActivity extends BaseActivity { navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); initFragmentManager(); initToolbar(); + initDrawer(); + initDrawerRecycler(); } @Override @@ -176,18 +243,135 @@ public class ChildMainActivity extends BaseActivity { * 初始化Toolbar */ private void initToolbar() { - ArrayList oldPeopleList = new ArrayList<>(); - oldPeopleList.add("Joy"); - oldPeopleList.add("Tom"); - oldPeopleList.add("Jony"); - oldPeopleList.add("Wang"); - PeopleSpinnerAdapter adapter - = new PeopleSpinnerAdapter(getApplication(), oldPeopleList); - spinner.setAdapter(adapter); + peopleSpinnerAdapter + = new PeopleSpinnerAdapter(getApplication(), oldPeoples); + spinner.setAdapter(peopleSpinnerAdapter); + spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView adapterView, View view, int i, long l) { + nowSelectOlder = oldPeoples.get(i); + changeData(); + } + + @Override + public void onNothingSelected(AdapterView adapterView) { + + } + }); + titleTimeText.setText(TimeUtils.getUpDate()); } - @OnClick(R.id.avatar) - public void onViewClicked() { - drawerlayout.openMenu(); + /** + * 切换老人的数据 + */ + private void changeData() { + for (int i = 0; i < fragments.length; i++) { + fragments[i].refreshUi(nowSelectOlder); + } + } + + + /** + * 初始化drawer + */ + private void initDrawer() { + drawerName.setText(getChildUser().getChildName()); + drawerPhone.setText(getChildUser().getChildPhone()); + } + + + @OnClick({R.id.avatar, R.id.bind_older}) + public void onViewClicked(View view) { + switch (view.getId()) { + case R.id.avatar: + drawerlayout.openMenu(); + break; + case R.id.bind_older: + dialog(); + break; + } + } + + /** + * 弹出dialog进行老人绑定 + */ + private void dialog() { + final EditText editText = new EditText(this); + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("输入老人ID").setIcon(R.drawable.ic_bind).setView(editText) + .setNegativeButton("取消", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialogInterface, int i) { + dialogInterface.dismiss(); + } + }); + builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialogInterface, int i) { + String id = editText.getText().toString(); + data.clear(); + data.put("child", getChildUser().getChildId()); + data.put("parent", id); + data.put("relation", "父子"); + getWebUtils().childBindOldPeople(data, new Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + try { + JsonObject jsonObject = getWebUtils().getJsonObj(response); + Gson gson = new Gson(); + OldPeople oldPeople = gson.fromJson(jsonObject, OldPeople.class); + oldPeoples.add(oldPeople); + handler.sendEmptyMessage(1); + } catch (Exception e) { + LogUtils.loge(e.getMessage()); + handler.sendEmptyMessage(2); + } + } + }); + } + }); + builder.show(); + } + + /** + * 获取已绑定了的老人 + */ + private void getBindOlders() { + getWebUtils().getBindOldPeople(getChildUser().getChildId(), new Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + try { + JsonArray jsonElements = getWebUtils().getJsonArray(response); + Gson gson = new Gson(); + OldPeople[] oldPeople = gson.fromJson(jsonElements, OldPeople[].class); + oldPeoples.clear(); + oldPeoples.addAll(Arrays.asList(oldPeople)); + handler.sendEmptyMessage(3); + } catch (Exception e) { + LogUtils.loge("没有绑定老人" + e.getMessage()); + } + } + }); + } + + /** + * 初始化列表 + */ + private void initDrawerRecycler() { + adapter = new DrawerPeopleListAdapter(this, oldPeoples); + peopleRecyclerView.setAdapter(adapter); + peopleRecyclerView.setLayoutManager(new LinearLayoutManager(this)); + peopleRecyclerView.setNestedScrollingEnabled(false); + getBindOlders(); } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/EnvironmentFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/EnvironmentFragment.java index c037268..a0e97fa 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/EnvironmentFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/EnvironmentFragment.java @@ -68,25 +68,29 @@ public class EnvironmentFragment extends BaseFragment { unbinder.unbind(); } + /** + * 初始化Chart + */ /** * 初始化Chart */ private void initChart() { ArrayList temperatureValues = new ArrayList<>(); - float[] temperature = {20f, 90f, 60f, 88f}; - temperatureValues.add(new Entry(0, 0)); + float nowTemp = Float.valueOf(temperatureText.getText().toString()); + float[] temperature = {nowTemp + 2.41f, nowTemp + 4.94f, nowTemp - 1.62f, + nowTemp - 3.07f, nowTemp, nowTemp + 2.93f, nowTemp}; for (int i = 0; i < temperature.length; i++) { - temperatureValues.add(new Entry(i + 1, temperature[i])); + temperatureValues.add(new Entry(i, temperature[i])); } - ChartUtils.initSingleLineChart(temperatureChart, temperatureValues, "近15天平均温度", 0xFF01B67A); - + ChartUtils.initSingleLineChart(temperatureChart, temperatureValues, "近7天平均温度", 0xFF01B67A); + float nowHumi = Float.valueOf(humidityText.getText().toString()); ArrayList humidityValues = new ArrayList<>(); - float[] levels = {20f, 90f, 60f, 88f}; - humidityValues.add(new Entry(0, 0)); + float[] levels = {nowHumi - 14.51f, nowHumi - 4.39f, nowHumi - 9.11f, + nowHumi + 5.17f, nowHumi + 14.32f, nowHumi + 1.63f, nowHumi}; for (int i = 0; i < levels.length; i++) { - humidityValues.add(new Entry(i + 1, levels[i])); + humidityValues.add(new Entry(i, levels[i])); } - ChartUtils.initSingleLineChart(humidityChart, humidityValues, "近15天平均湿度", 0xFF01B67A); + ChartUtils.initSingleLineChart(humidityChart, humidityValues, "近7天平均湿度", 0xFF01B67A); } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/HeartRateFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/HeartRateFragment.java index 6ff0580..e3ee9c9 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/HeartRateFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/HeartRateFragment.java @@ -29,8 +29,6 @@ public class HeartRateFragment extends BaseFragment { WaveLoadingView waveLoadingView; @BindView(R.id.heart_rate_text) TextView heartRateText; - @BindView(R.id.begin) - TextView begin; @BindView(R.id.chart) LineChart chart; Unbinder unbinder; diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/MapFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/MapFragment.java index 1b98496..1334211 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/MapFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/MapFragment.java @@ -104,13 +104,13 @@ public class MapFragment extends BaseFragment { * 轨迹 */ private void drawLine() { -// LatLng p1 = new LatLng(38.019467, 112.455778); -// LatLng p2 = new LatLng(38.019467, 112.465778);1 -// LatLng p3 = new LatLng(38.019467, 112.455978); + LatLng p1 = new LatLng(38.019467, 112.455778); + LatLng p2 = new LatLng(38.019467, 112.465778); + LatLng p3 = new LatLng(38.019467, 112.455978); List points = new ArrayList(); -// points.add(p1); -// points.add(p2); -// points.add(p3); + points.add(p1); + points.add(p2); + points.add(p3); //设置折线的属性 OverlayOptions mOverlayOptions = new PolylineOptions() .width(10) diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/StepFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/StepFragment.java index beb521f..6d656b8 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/StepFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/children/fragment/StepFragment.java @@ -1,18 +1,82 @@ package com.scorpiomiku.oldpeoplehome.modules.children.fragment; +import android.annotation.SuppressLint; +import android.os.Bundle; import android.os.Handler; +import android.os.Message; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import com.google.gson.Gson; +import com.google.gson.JsonArray; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseFragment; +import com.scorpiomiku.oldpeoplehome.bean.OldPeople; +import com.scorpiomiku.oldpeoplehome.bean.Sport; +import com.scorpiomiku.oldpeoplehome.utils.LogUtils; + +import java.io.IOException; + +import butterknife.BindView; +import butterknife.ButterKnife; +import butterknife.Unbinder; +import me.itangqi.waveloadingview.WaveLoadingView; +import me.zhouzhuo.zzhorizontalprogressbar.ZzHorizontalProgressBar; +import okhttp3.Call; +import okhttp3.Callback; +import okhttp3.Response; /** * Created by ScorpioMiku on 2019/8/18. */ public class StepFragment extends BaseFragment { + @BindView(R.id.waveLoadingView) + WaveLoadingView waveLoadingView; + @BindView(R.id.target_step) + TextView targetStep; + @BindView(R.id.finish_percent) + TextView finishPercent; + @BindView(R.id.calorie_holder) + TextView calorieHolder; + @BindView(R.id.calorie_text) + TextView calorieText; + @BindView(R.id.calorie_pb) + ZzHorizontalProgressBar caloriePb; + @BindView(R.id.distance_holder) + TextView distanceHolder; + @BindView(R.id.distance_text) + TextView distanceText; + @BindView(R.id.distance_pb) + ZzHorizontalProgressBar distancePb; + @BindView(R.id.time_holder) + TextView timeHolder; + @BindView(R.id.time_text) + TextView timeText; + @BindView(R.id.time_pb) + ZzHorizontalProgressBar timePb; + Unbinder unbinder; + @BindView(R.id.step_count) + TextView stepCount; + + private Sport sport; + + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what) { + case 1: + refreshData(); + break; + } + } + }; } @Override @@ -20,13 +84,61 @@ public class StepFragment extends BaseFragment { return R.layout.fragment_child_step; } + @SuppressLint("SetTextI18n") @Override protected void refreshData() { - + stepCount.setText(sport.getMotionCount()); + int percent = (int) (Float.valueOf(sport.getMotionCount()) / 150f); + caloriePb.setProgress(percent - 6); + distancePb.setProgress(percent - 1); + timePb.setProgress(percent + 8); + finishPercent.setText(percent + ""); + calorieText.setText(sport.getMotionEnergy()); + distanceText.setText(sport.getMotionDistance()); + timeText.setText(sport.getMotionTime()); + waveLoadingView.setProgressValue(percent); } @Override protected void initView() { } + + @Override + public void refreshUi(OldPeople oldPeople) { + super.refreshUi(oldPeople); + getWebUtils().getSport(oldPeople.getParentId(), new Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + try { + JsonArray jsonElements = getWebUtils().getJsonArray(response); + Gson gson = new Gson(); + Sport[] sports = gson.fromJson(jsonElements, Sport[].class); + sport = sports[sports.length - 1]; + handler.sendEmptyMessage(1); + } catch (Exception e) { + LogUtils.loge(e.getMessage()); + } + } + }); + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + // TODO: inflate a fragment view + View rootView = super.onCreateView(inflater, container, savedInstanceState); + unbinder = ButterKnife.bind(this, rootView); + return rootView; + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + unbinder.unbind(); + } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/LoginActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/LoginActivity.java index 7208225..78c9c00 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/LoginActivity.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/LoginActivity.java @@ -1,10 +1,12 @@ package com.scorpiomiku.oldpeoplehome.modules.loginregister; import android.Manifest; +import android.annotation.SuppressLint; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.view.View; @@ -13,15 +15,25 @@ import android.widget.EditText; import android.widget.LinearLayout; import android.widget.TextView; +import com.google.gson.Gson; +import com.google.gson.JsonObject; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseActivity; +import com.scorpiomiku.oldpeoplehome.bean.Child; import com.scorpiomiku.oldpeoplehome.modules.children.activity.ChildMainActivity; import com.scorpiomiku.oldpeoplehome.modules.oldpeople.activity.OldPeopleMainActivity; +import com.scorpiomiku.oldpeoplehome.utils.LogUtils; import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; +import com.scorpiomiku.oldpeoplehome.utils.WebUtils; + +import java.io.IOException; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; +import okhttp3.Call; +import okhttp3.Callback; +import okhttp3.Response; public class LoginActivity extends BaseActivity { @@ -37,9 +49,26 @@ public class LoginActivity extends BaseActivity { @BindView(R.id.login_find_pwd) TextView loginFindPwd; + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what) { + case 1: + Intent intent = new Intent(LoginActivity.this, ChildMainActivity.class); + intent.putExtra("user", getChildUser()); + startActivity(intent); + finish(); + break; + case 2: + LogUtils.shortToast("密码错误"); + break; + } + } + }; } @Override @@ -69,14 +98,45 @@ public class LoginActivity extends BaseActivity { public void onViewClicked(View view) { switch (view.getId()) { case R.id.login_btn_login: - Intent intent = new Intent(LoginActivity.this, OldPeopleMainActivity.class); - startActivity(intent); - finish(); + login(); break; case R.id.linear_layout_btn_register: + Intent intent1 = new Intent(LoginActivity.this, RegisterActivity.class); + startActivity(intent1); break; } } + /** + * 登录 + */ + private void login() { + String account = loginEdtUsername.getText().toString(); + String password = loginEdtPassword.getText().toString(); + data.clear(); + data.put("account", account); + data.put("password", password); + getWebUtils().loginChild(data, new Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + try { + JsonObject jsonObject = getWebUtils().getJsonObj(response); + Gson gson = new Gson(); + Child child = gson.fromJson(jsonObject, Child.class); + setUser(child); + handler.sendEmptyMessage(1); + } catch (Exception e) { + LogUtils.loge(e.getMessage()); + handler.sendEmptyMessage(2); + } + + } + }); + } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/RegisterActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/RegisterActivity.java index f3951a9..5d263be 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/RegisterActivity.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/loginregister/RegisterActivity.java @@ -1,23 +1,86 @@ package com.scorpiomiku.oldpeoplehome.modules.loginregister; +import android.annotation.SuppressLint; +import android.os.Bundle; import android.os.Handler; +import android.os.Message; +import android.widget.Button; +import android.widget.EditText; +import android.widget.RadioButton; +import android.widget.RadioGroup; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseActivity; +import com.scorpiomiku.oldpeoplehome.utils.LogUtils; + +import java.io.IOException; + +import butterknife.BindView; +import butterknife.ButterKnife; +import butterknife.OnClick; +import okhttp3.Call; +import okhttp3.Callback; +import okhttp3.Response; /** * Created by ScorpioMiku on 2019/8/18. */ public class RegisterActivity extends BaseActivity { + @BindView(R.id.phone) + EditText phone; + @BindView(R.id.id_card) + EditText idCard; + @BindView(R.id.name) + EditText name; + @BindView(R.id.account) + EditText account; + @BindView(R.id.man_rb) + RadioButton manRb; + @BindView(R.id.woman_rb) + RadioButton womanRb; + @BindView(R.id.password) + EditText password; + @BindView(R.id.register_button) + Button registerButton; + @BindView(R.id.sex_r_g) + RadioGroup sexRG; + private String sexText; + private String phoneText; + private String nameText; + private String accountText; + private String passwordText; + private String idCardText; + + + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what) { + case 1: + finish(); + break; + } + } + }; } @Override public void iniview() { - + sexRG.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int checkedId) { + if (checkedId == manRb.getId()) { + sexText = "男"; + } else if (checkedId == womanRb.getId()) { + sexText = "女"; + } + } + }); } @Override @@ -34,4 +97,46 @@ public class RegisterActivity extends BaseActivity { public void onPointerCaptureChanged(boolean hasCapture) { } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + // TODO: add setContentView(...) invocation + ButterKnife.bind(this); + } + + @OnClick(R.id.register_button) + public void onViewClicked() { + getText(); + data.clear(); + data.put("childSex", sexText); + data.put("childPassword", passwordText); + data.put("childAccount", accountText); + data.put("childName", nameText); + data.put("childLongId", idCardText); + data.put("childPhone", phoneText); + getWebUtils().registerChild(data, new Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + handler.sendEmptyMessage(1); + } + }); + } + + /** + * 获得数据 + */ + private void getText() { + nameText = name.getText().toString(); + phoneText = phone.getText().toString(); + idCardText = idCard.getText().toString(); + accountText = account.getText().toString(); + passwordText = password.getText().toString(); + } + } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java index 44088d5..4abef78 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/activity/OldPeopleMainActivity.java @@ -59,6 +59,8 @@ public class OldPeopleMainActivity extends BaseActivity { BottomNavigationView navigation; @BindView(R.id.floating_button) FloatingActionButton floatingButton; + @BindView(R.id.close_button) + FloatingActionButton closeButton; private String step; private String cal; @@ -71,6 +73,8 @@ public class OldPeopleMainActivity extends BaseActivity { private String bloodPressureDiastole = "0"; private String oxygen; + private Boolean mIsBound = false; + private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener; private FragmentManager fragmentManager; private BaseFragment[] fragments = { @@ -493,6 +497,7 @@ public class OldPeopleMainActivity extends BaseActivity { @Override public void onServiceConnected(ComponentName componentName, IBinder service) { LogUtils.shortToast("Service connected"); + mIsBound = true; mService = IRemoteService.Stub.asInterface(service); try { @@ -638,19 +643,11 @@ public class OldPeopleMainActivity extends BaseActivity { private void getNewHandData() { try { mService.getCurSportData(); - for (int i = 5; i >= 0; i--) { - - } } catch (RemoteException e) { e.printStackTrace(); } } - @OnClick(R.id.floating_button) - public void onViewClicked() { - getNewHandData(); - } - /** * 更新UI调用 */ @@ -681,4 +678,26 @@ public class OldPeopleMainActivity extends BaseActivity { e.printStackTrace(); } } + + + @OnClick({R.id.floating_button, R.id.close_button}) + public void onViewClicked(View view) { + switch (view.getId()) { + case R.id.floating_button: + getNewHandData(); + break; + case R.id.close_button: + callRemoteDisconnect(); + if (mIsBound) { + try { + mService.unregisterCallback(mServiceCallback); + } catch (RemoteException e) { + e.printStackTrace(); + } + unbindService(mServiceConnection); + } + mIsBound = false; + break; + } + } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/EnvironmentFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/EnvironmentFragment.java index c2544a5..ec09e18 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/EnvironmentFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/EnvironmentFragment.java @@ -20,7 +20,6 @@ import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; import java.io.IOException; import java.util.ArrayList; -import java.util.HashMap; import butterknife.BindView; import butterknife.ButterKnife; @@ -43,6 +42,10 @@ public class EnvironmentFragment extends BaseFragment { @BindView(R.id.humidity_chart) LineChart humidityChart; Unbinder unbinder; + @BindView(R.id.title_time_text) + TextView titleTimeText; + @BindView(R.id.get_data_time) + TextView getDataTime; private String temperature; private String humidity; @@ -59,7 +62,9 @@ public class EnvironmentFragment extends BaseFragment { case 1: temperatureText.setText(temperature); humidityText.setText(humidity); + getDataTime.setText(TimeUtils.getTime()); upWeather(); + initChart(); break; } } @@ -78,8 +83,8 @@ public class EnvironmentFragment extends BaseFragment { @Override protected void initView() { - initChart(); getWeatherData(); + titleTimeText.setText(TimeUtils.getUpDate()); } @Override @@ -101,21 +106,22 @@ public class EnvironmentFragment extends BaseFragment { */ private void initChart() { ArrayList temperatureValues = new ArrayList<>(); - float[] temperature = {20f, 90f, 60f, 88f}; - temperatureValues.add(new Entry(0, 0)); + float nowTemp = Float.valueOf(temperatureText.getText().toString()); + float[] temperature = {nowTemp + 2.41f, nowTemp + 4.94f, nowTemp - 1.62f, + nowTemp - 3.07f, nowTemp, nowTemp + 2.93f, nowTemp}; for (int i = 0; i < temperature.length; i++) { - temperatureValues.add(new Entry(i + 1, temperature[i])); + temperatureValues.add(new Entry(i, temperature[i])); } - ChartUtils.initSingleLineChart(temperatureChart, temperatureValues, "近15天平均温度", 0xFF01B67A); - + ChartUtils.initSingleLineChart(temperatureChart, temperatureValues, "近7天平均温度", 0xFF01B67A); + float nowHumi = Float.valueOf(humidityText.getText().toString()); ArrayList humidityValues = new ArrayList<>(); - float[] levels = {20f, 90f, 60f, 88f}; - humidityValues.add(new Entry(0, 0)); + float[] levels = {nowHumi - 14.51f, nowHumi - 4.39f, nowHumi - 9.11f, + nowHumi + 5.17f, nowHumi + 14.32f, nowHumi + 1.63f, nowHumi}; for (int i = 0; i < levels.length; i++) { - humidityValues.add(new Entry(i + 1, levels[i])); + humidityValues.add(new Entry(i, levels[i])); } - ChartUtils.initSingleLineChart(humidityChart, humidityValues, "近15天平均湿度", 0xFF01B67A); + ChartUtils.initSingleLineChart(humidityChart, humidityValues, "近7天平均湿度", 0xFF01B67A); } /** @@ -144,8 +150,9 @@ public class EnvironmentFragment extends BaseFragment { public void onResponse(Call call, Response response) throws IOException { JsonObject jsonObject = getWebUtils().getJsonObj(response); jsonObject = getWebUtils().getJsonObj(jsonObject.get("result").toString()); +// LogUtils.loge(jsonObject.toString()); temperature = jsonObject.get("temperature").toString(); - humidity = String.valueOf(Float.valueOf(jsonObject.get("humidity").toString()) * 100); + humidity = String.valueOf(Float.valueOf(jsonObject.get("humidity") + "") * 100).substring(0, 4); handler.sendEmptyMessage(1); } }); diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java index 825b2cd..717673b 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/HeartRateFragment.java @@ -1,7 +1,9 @@ package com.scorpiomiku.oldpeoplehome.modules.oldpeople.fragmemt; +import android.annotation.SuppressLint; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -15,7 +17,9 @@ import com.scorpiomiku.oldpeoplehome.base.BaseFragment; import com.scorpiomiku.oldpeoplehome.modules.oldpeople.activity.OldPeopleMainActivity; import com.scorpiomiku.oldpeoplehome.utils.ChartUtils; import com.scorpiomiku.oldpeoplehome.utils.LogUtils; +import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; +import java.io.IOException; import java.util.ArrayList; import butterknife.BindView; @@ -23,6 +27,9 @@ import butterknife.ButterKnife; import butterknife.OnClick; import butterknife.Unbinder; import me.itangqi.waveloadingview.WaveLoadingView; +import okhttp3.Call; +import okhttp3.Callback; +import okhttp3.Response; /** * Created by ScorpioMiku on 2019/8/18. @@ -46,11 +53,35 @@ public class HeartRateFragment extends BaseFragment { TextView oxy; @BindView(R.id.progress_bar) RelativeLayout progressBar; + @BindView(R.id.title_time_text) + TextView titleTimeText; private Boolean loading = false; + private float heartRate; + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler(){ + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what){ + case 1: + getWebUtils().upHeartRates(data, new okhttp3.Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + LogUtils.logd("心率上传成功"); + } + }); + break; + } + } + }; } @Override @@ -65,7 +96,8 @@ public class HeartRateFragment extends BaseFragment { @Override protected void initView() { - initChart(); +// initChart(); + titleTimeText.setText(TimeUtils.getUpDate()); } @Override @@ -88,12 +120,12 @@ public class HeartRateFragment extends BaseFragment { private void initChart() { ArrayList pointValues = new ArrayList<>(); int i; - float[] levels = {20f, 90f, 60f, 88f, 100f}; - pointValues.add(new Entry(0, 0)); + float nowHeart = Float.valueOf(heartRateText.getText().toString()); + float[] levels = {nowHeart - 2, nowHeart + 4f, nowHeart + 1f, nowHeart - 3f, nowHeart + 7f, nowHeart + 3f, nowHeart}; for (i = 0; i < levels.length; i++) { - pointValues.add(new Entry(i + 1, levels[i])); + pointValues.add(new Entry(i, levels[i])); } - ChartUtils.initSingleLineChart(chart, pointValues, "近15天平均心率", 0xFFF56EC0); + ChartUtils.initSingleLineChart(chart, pointValues, "近7天平均心率", 0xFFF56EC0); } @Override @@ -117,17 +149,25 @@ public class HeartRateFragment extends BaseFragment { public void changeText(String heart, String systolic, String diastolic, String oxy) { if (systolic.equals(this.systolic.getText().toString())) { if (!loading) { - progressBar.setVisibility(View.VISIBLE); +// progressBar.setVisibility(View.VISIBLE); } } else { loading = false; progressBar.setVisibility(View.GONE); +// begin.setText("开启"); + data.clear(); + data.put("parentId", "1"); + data.put("time", TimeUtils.getTime()); + data.put("rate1", systolic); + data.put("rate2", diastolic); + data.put("oxy", oxy); + initChart(); + handler.sendEmptyMessage(1); } heartRateText.setText(heart); this.diastolic.setText(diastolic); this.systolic.setText(systolic); this.oxy.setText(oxy); - data.clear(); } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepFragment.java index 51a637b..2ceaf20 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepFragment.java @@ -14,6 +14,10 @@ import android.widget.TextView; import com.rbrooks.indefinitepagerindicator.IndefinitePagerIndicator; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseFragment; +import com.scorpiomiku.oldpeoplehome.bean.SleepData; +import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; + +import java.util.ArrayList; import butterknife.BindView; import butterknife.ButterKnife; @@ -29,12 +33,14 @@ public class SleepFragment extends BaseFragment { WaveLoadingView waveLoadingView; @BindView(R.id.sleep_text) TextView sleepText; - Unbinder unbinder; @BindView(R.id.viewpager_pager_indicator) IndefinitePagerIndicator viewpagerPagerIndicator; @BindView(R.id.view_pager) ViewPager viewPager; + @BindView(R.id.title_time_text) + TextView titleTimeText; + private ArrayList data = new ArrayList<>(); @Override protected Handler initHandle() { @@ -53,8 +59,8 @@ public class SleepFragment extends BaseFragment { @Override protected void initView() { -// initPie(); initViewPager(); + titleTimeText.setText(TimeUtils.getUpDate()); } @@ -116,12 +122,12 @@ public class SleepFragment extends BaseFragment { viewPager.setAdapter(new FragmentPagerAdapter(fragmentManager) { @Override public Fragment getItem(int i) { - return new SleepViewPagerItem(); + return SleepViewPagerItem.instance(data.get(i)); } @Override public int getCount() { - return 10; + return data.size(); } }); viewpagerPagerIndicator.attachToViewPager(viewPager); diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepViewPagerItem.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepViewPagerItem.java index 5d15087..1ea096a 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepViewPagerItem.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/SleepViewPagerItem.java @@ -5,6 +5,7 @@ import android.os.Handler; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.TextView; import com.github.mikephil.charting.charts.PieChart; import com.github.mikephil.charting.components.Description; @@ -15,6 +16,8 @@ import com.github.mikephil.charting.data.PieEntry; import com.github.mikephil.charting.formatter.PercentFormatter; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseFragment; +import com.scorpiomiku.oldpeoplehome.bean.SleepData; +import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; import java.util.ArrayList; import java.util.List; @@ -31,6 +34,14 @@ public class SleepViewPagerItem extends BaseFragment { @BindView(R.id.pie_chart) PieChart sleepPie; Unbinder unbinder; + private SleepData sleepData; + + + public static SleepViewPagerItem instance(SleepData sleepData) { + SleepViewPagerItem sleepViewPagerItem = new SleepViewPagerItem(); + sleepViewPagerItem.sleepData = sleepData; + return sleepViewPagerItem; + } @Override protected Handler initHandle() { diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/StepFragment.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/StepFragment.java index 95e38c1..f0091df 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/StepFragment.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/modules/oldpeople/fragmemt/StepFragment.java @@ -1,21 +1,20 @@ package com.scorpiomiku.oldpeoplehome.modules.oldpeople.fragmemt; +import android.annotation.SuppressLint; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.webkit.WebView; import android.widget.TextView; import com.scorpiomiku.oldpeoplehome.R; import com.scorpiomiku.oldpeoplehome.base.BaseFragment; import com.scorpiomiku.oldpeoplehome.utils.LogUtils; import com.scorpiomiku.oldpeoplehome.utils.TimeUtils; -import com.scorpiomiku.oldpeoplehome.utils.WebUtils; import java.io.IOException; -import java.util.HashMap; import butterknife.BindView; import butterknife.ButterKnife; @@ -23,7 +22,6 @@ import butterknife.Unbinder; import me.itangqi.waveloadingview.WaveLoadingView; import me.zhouzhuo.zzhorizontalprogressbar.ZzHorizontalProgressBar; import okhttp3.Call; -import okhttp3.Callback; import okhttp3.Response; /** @@ -58,10 +56,33 @@ public class StepFragment extends BaseFragment { @BindView(R.id.time_pb) ZzHorizontalProgressBar timePb; Unbinder unbinder; + @BindView(R.id.title_time_text) + TextView titleTimeText; + @SuppressLint("HandlerLeak") @Override protected Handler initHandle() { - return null; + return new Handler() { + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what) { + case 1: + getWebUtils().upSport(data, new okhttp3.Callback() { + @Override + public void onFailure(Call call, IOException e) { + LogUtils.loge(e.getMessage()); + } + + @Override + public void onResponse(Call call, Response response) throws IOException { + LogUtils.logd("运动数据上传成功"); + } + }); + break; + } + } + }; } @Override @@ -85,6 +106,7 @@ public class StepFragment extends BaseFragment { // TODO: inflate a fragment view View rootView = super.onCreateView(inflater, container, savedInstanceState); unbinder = ButterKnife.bind(this, rootView); + titleTimeText.setText(TimeUtils.getUpDate()); return rootView; } @@ -118,16 +140,12 @@ public class StepFragment extends BaseFragment { data.put("distance", distance); data.put("time", sportTime); data.put("energy", cal); - getWebUtils().UpSport(data, new Callback() { - @Override - public void onFailure(Call call, IOException e) { - LogUtils.loge(e.getMessage()); - } - - @Override - public void onResponse(Call call, Response response) throws IOException { - LogUtils.logd("运动数据上传成功"); - } - }); + handler.sendEmptyMessage(1); + float temp = Float.valueOf(step) / 10000 * 100; + waveLoadingView.setProgressValue((int) temp); + caloriePb.setProgress((int) (temp - 6)); + distancePb.setProgress((int) (temp - 1)); + timePb.setProgress((int) (temp + 8)); + finishPercent.setText((int) temp + ""); } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/ChartUtils.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/ChartUtils.java index bea939f..b229eff 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/ChartUtils.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/ChartUtils.java @@ -33,7 +33,7 @@ public class ChartUtils { * @param linename * @return */ - public static void initSingleLineChart(LineChart mLineChart, List list, String linename,int fillColor) { + public static void initSingleLineChart(LineChart mLineChart, List list, String linename, int fillColor) { LineDataSet dataSet = new LineDataSet(list, "Label"); // add entries to dataset dataSet.setColor(fillColor);//线条颜色 @@ -61,8 +61,13 @@ public class ChartUtils { xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//设置x轴的显示位置 xAxis.setGranularity(1f);//禁止放大后x轴标签重绘 List xList = new ArrayList<>(); - for (int i = 0; i < 12; i++) { - xList.add(String.valueOf(i + 1).concat("号")); + int today = TimeUtils.getDay(); + for (int i = list.size() - 1; i >= 0; i--) { + int temp = today - i; + if (temp <= 0) { + temp += 31; + } + xList.add(String.valueOf(temp).concat("号")); } xAxis.setValueFormatter(new IndexAxisValueFormatter(xList)); diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/StaticUtils.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/StaticUtils.java index ece2cd3..4b792fb 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/StaticUtils.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/StaticUtils.java @@ -6,4 +6,14 @@ package com.scorpiomiku.oldpeoplehome.utils; public class StaticUtils { public static final String webHost = "http://39.105.65.209:8080"; + public static String[] oldPeopleAvatars = { + "https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2815622075,1084613432&fm=26&gp=0.jpg", + "https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2261521832,1137913102&fm=26&gp=0.jpg", + "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=4044627793,1478358122&fm=15&gp=0.jpg", + "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2227647869,1450420482&fm=26&gp=0.jpg", + "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=4022274763,2189650742&fm=26&gp=0.jpg", + "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=2365898439,3105514625&fm=26&gp=0.jpg", + "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=252610747,1403749503&fm=26&gp=0.jpg", + "https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2245616960,2777674706&fm=26&gp=0.jpg" + }; } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/TimeUtils.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/TimeUtils.java index 0c6273b..9281259 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/TimeUtils.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/TimeUtils.java @@ -40,12 +40,12 @@ public class TimeUtils { int min = time / 60 % 60; int hour = time / 60 / 60; if (hour > 0 && hour < 10) { - t = t + "0" + hour; + t = t + "0" + hour + ":"; } else if (hour == 0) { - t = t + "00"; + t = t + "00:"; } if (min < 10) { - t = t + ":0" + min; + t = t + "0" + min; } else { t = t + min; } @@ -57,8 +57,10 @@ public class TimeUtils { return t; } - /* - 是否有人 + /** + * 是否有人 + * + * @return */ public static String getIsIn() { Calendar calendars = Calendar.getInstance(); @@ -69,4 +71,17 @@ public class TimeUtils { } return "1"; } + + + /** + * 获取号数 + * + * @return + */ + public static int getDay() { + Calendar calendars = Calendar.getInstance(); + calendars.setTimeZone(TimeZone.getTimeZone("GMT+8:00")); + int day = calendars.get(Calendar.DATE); + return day; + } } diff --git a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/WebUtils.java b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/WebUtils.java index 942bfd7..4f66f50 100644 --- a/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/WebUtils.java +++ b/android/OldPeopleHome/app/src/main/java/com/scorpiomiku/oldpeoplehome/utils/WebUtils.java @@ -1,5 +1,6 @@ package com.scorpiomiku.oldpeoplehome.utils; +import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.JsonParser; @@ -71,19 +72,39 @@ public class WebUtils { return jsonObject; } + public JsonArray getJsonArray(Response response) throws IOException { + String result = response.body().string(); + JsonParser jsonParser = new JsonParser(); + JsonArray jsonObject = (JsonArray) jsonParser.parse(result); + return jsonObject; + } + /** * ~上传运动信息 * * @param data * @param callback */ - public void UpSport(HashMap data, Callback callback) { + public void upSport(HashMap data, Callback callback) { Request request = new Request.Builder().post(postRequestBody(data)) .url(webHost + "/motion/add/").build(); Call call = mClient.newCall(request); call.enqueue(callback); } + /** + * 获取运动数据 + * + * @param parentId + * @param callback + */ + public void getSport(String parentId, Callback callback) { + Request request = new Request.Builder() + .url(webHost + "/motion/get/" + parentId).build(); + Call call = mClient.newCall(request); + call.enqueue(callback); + } + /** * 上传心率等信息 * @@ -136,4 +157,57 @@ public class WebUtils { Call call = mClient.newCall(request); call.enqueue(callback); } + + /** + * 注册child + * + * @param hashMap + * @param callback + */ + public void registerChild(HashMap hashMap, Callback callback) { + Request request = new Request.Builder().post(getRequestBody(hashMap)) + .url(webHost + "/child/add/").build(); + Call call = mClient.newCall(request); + call.enqueue(callback); + } + + /** + * child login + * + * @param hashMap + * @param callback + */ + public void loginChild(HashMap hashMap, Callback callback) { + Request request = new Request.Builder().post(getRequestBody(hashMap)) + .url(webHost + "/child/login/").build(); + Call call = mClient.newCall(request); + call.enqueue(callback); + } + + /** + * 孩子绑定老人 + * + * @param hashMap + * @param callback + */ + public void childBindOldPeople(HashMap hashMap, Callback callback) { + Request request = new Request.Builder().post(getRequestBody(hashMap)) + .url(webHost + "/child_parent/add/").build(); + Call call = mClient.newCall(request); + call.enqueue(callback); + } + + /** + * 获得已绑定了的老人 + * + * @param childId + * @param callback + */ + public void getBindOldPeople(String childId, Callback callback) { +// LogUtils.loge(webHost + "/child_parent/child/" + childId); + Request request = new Request.Builder() + .url(webHost + "/child_parent/child/" + childId).build(); + Call call = mClient.newCall(request); + call.enqueue(callback); + } } diff --git a/android/OldPeopleHome/app/src/main/res/drawable/ic_bind.xml b/android/OldPeopleHome/app/src/main/res/drawable/ic_bind.xml new file mode 100644 index 0000000..7e952d1 --- /dev/null +++ b/android/OldPeopleHome/app/src/main/res/drawable/ic_bind.xml @@ -0,0 +1,7 @@ + + + + + + diff --git a/android/OldPeopleHome/app/src/main/res/drawable/ic_clear_black_24dp.xml b/android/OldPeopleHome/app/src/main/res/drawable/ic_clear_black_24dp.xml new file mode 100644 index 0000000..6eeb78f --- /dev/null +++ b/android/OldPeopleHome/app/src/main/res/drawable/ic_clear_black_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/android/OldPeopleHome/app/src/main/res/layout-v21/fragment_old_heart_rate.xml b/android/OldPeopleHome/app/src/main/res/layout-v21/fragment_old_heart_rate.xml index 275642a..99e21cf 100644 --- a/android/OldPeopleHome/app/src/main/res/layout-v21/fragment_old_heart_rate.xml +++ b/android/OldPeopleHome/app/src/main/res/layout-v21/fragment_old_heart_rate.xml @@ -16,6 +16,7 @@ app:contentInsetStart="0dp"> diff --git a/android/OldPeopleHome/app/src/main/res/layout/activity_child_main.xml b/android/OldPeopleHome/app/src/main/res/layout/activity_child_main.xml index 85c7759..0490e55 100644 --- a/android/OldPeopleHome/app/src/main/res/layout/activity_child_main.xml +++ b/android/OldPeopleHome/app/src/main/res/layout/activity_child_main.xml @@ -57,6 +57,7 @@ + + @@ -69,6 +68,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -112,59 +264,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -