From 69a139a8651b0d864e8d16275c35b70b7e0138a3 Mon Sep 17 00:00:00 2001
From: wlh <646507849@qq.com>
Date: Fri, 5 Jan 2024 09:50:21 +0800
Subject: [PATCH] =?UTF-8?q?=E4=B8=AD=E5=BB=BA365-=E4=BA=8C=E6=9C=9F?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 4 +
.../java/com/zj365/dc/activity/LoginAct.kt | 2 +-
.../zj365/dc/activity/WatchFamilyHealthAct.kt | 43 ++++
.../zj365/dc/adapter/HomeTopLayoutAdapter.kt | 8 +-
.../dc/fragment/DynamicManagementFrag.kt | 243 ++----------------
.../com/zj365/dc/fragment/HealthHomeFrag.kt | 110 +-------
.../java/com/zj365/dc/fragment/MineFrag.kt | 30 +--
.../java/com/zj365/dc/fragment/ServerFrag.kt | 226 ----------------
.../res/layout/act_watch_family_health.xml | 17 ++
app/src/main/res/layout/frag_mine.xml | 3 +-
.../java/com/xty/common/arouter/ARouterUrl.kt | 1 +
.../com/xty/common/util/PermissionUtils.java | 198 ++++++++++++++
common/src/main/res/values/strings.xml | 7 +
config.gradle | 13 +-
.../act/familyhealth/FamilyHealthAct.kt | 9 +
.../familyhealth/FamilyHealthRealTimeAct.kt | 21 ++
.../main/res/layout/act_base_info_change.xml | 1 +
17 files changed, 355 insertions(+), 581 deletions(-)
create mode 100644 app/src/main/java/com/zj365/dc/activity/WatchFamilyHealthAct.kt
delete mode 100644 app/src/main/java/com/zj365/dc/fragment/ServerFrag.kt
create mode 100644 app/src/main/res/layout/act_watch_family_health.xml
create mode 100644 common/src/main/java/com/xty/common/util/PermissionUtils.java
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5d2c56f..d04148e 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -179,6 +179,10 @@
android:launchMode="singleTop"
android:screenOrientation="portrait" />
+
+
() {
val dialogBind by lazy {
- DialogTipNew(this,"温馨提示", "恭喜您成为中健三六五大家庭的医院,为了提供更好的信息服务,请完善您的基本信息。", "前往","取消",false,{
+ DialogTipNew(this,"温馨提示", "恭喜您成为中健三六五大家庭的一员,为了提供更好的信息服务,请完善您的基本信息。", "前往","取消",false,{
RouteManager.goAct(ARouterUrl.BASE_INFO_CHANGE)
EventBus.getDefault().post(LoginOrRegisterEvent())
finish()
diff --git a/app/src/main/java/com/zj365/dc/activity/WatchFamilyHealthAct.kt b/app/src/main/java/com/zj365/dc/activity/WatchFamilyHealthAct.kt
new file mode 100644
index 0000000..8f1630c
--- /dev/null
+++ b/app/src/main/java/com/zj365/dc/activity/WatchFamilyHealthAct.kt
@@ -0,0 +1,43 @@
+package com.zj365.dc.activity
+
+import android.os.Bundle
+import android.view.View
+import androidx.fragment.app.Fragment
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.xty.base.act.BaseVmAct
+import com.xty.base.vm.BaseVm
+import com.xty.common.arouter.ARouterUrl
+import com.zj365.dc.databinding.ActWatchFamilyHealthBinding
+import com.zj365.dc.fragment.DynamicManagementFrag
+
+@Route(path = ARouterUrl.WATCH_FAMILY_HEALTH)
+class WatchFamilyHealthAct : BaseVmAct() {
+
+ val binding by lazy { ActWatchFamilyHealthBinding.inflate(layoutInflater) }
+
+ var showIdInfo = ""
+ override fun liveObserver() {
+ }
+
+ override fun initView() {
+ super.initView()
+ statusBar(binding.title.mView)
+ binding.title.mTvTitle.text ="健康监测"
+ binding.title.mIvBack.setOnClickListener {
+ finish()
+ }
+
+ showIdInfo = intent.extras!!.getString("id","")
+
+ supportFragmentManager.beginTransaction().replace(binding.container.id, setArgumentFrag(DynamicManagementFrag(),showIdInfo)).commit()
+ }
+
+ private fun setArgumentFrag(frag: Fragment, id: String = ""): Fragment {
+ val bundle = Bundle()
+ bundle.putString("id", id)
+ frag.arguments = bundle
+ return frag
+ }
+
+ override fun setLayout() = binding.root
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/zj365/dc/adapter/HomeTopLayoutAdapter.kt b/app/src/main/java/com/zj365/dc/adapter/HomeTopLayoutAdapter.kt
index 9c874c2..9a83158 100644
--- a/app/src/main/java/com/zj365/dc/adapter/HomeTopLayoutAdapter.kt
+++ b/app/src/main/java/com/zj365/dc/adapter/HomeTopLayoutAdapter.kt
@@ -19,7 +19,13 @@ class HomeTopLayoutAdapter(var mContext: Context): BaseAdapter(R.id.root).layoutParams
- layoutParam.width = screenWidth /data.size
+ if (data.size < 4){
+ layoutParam.width = screenWidth /4
+
+ }else{
+ layoutParam.width = screenWidth /data.size
+
+ }
holder.getView(R.id.root).layoutParams = layoutParam
holder.getView(R.id.img_top).setImage(context,item.imageUrl)
diff --git a/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt b/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt
index 5d38b08..9cf0722 100644
--- a/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt
+++ b/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt
@@ -100,7 +100,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
private val dialogInfoUn by lazy {
DialogTip(requireContext(), "请完善基本信息") {
- RouteManager.goAct(ARouterUrl.INFO_SIMPLE)
+ RouteManager.goAct(ARouterUrl.BASE_INFO_CHANGE)
}
}
private val reqGpsPermissionDialog by lazy {
@@ -117,16 +117,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
}
}
- //重签名
- private val signDialog by lazy {
- AgainSignDialog(requireContext(), {
- RouteManager.goAct(ARouterUrl.LOGIN_ACT)
- requireActivity().finish()
- }) {
- RouteManager.goAct(ARouterUrl.AGAIN_SIGN)
- }
- }
-
//健康监测按钮数据集合
private var healthMonitoringList: MutableList =
mutableListOf()//(小于等于9)
@@ -167,12 +157,19 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
isShrinkage =
MMkvHelper.getBoolean(Const.Health_Monitoring_Shrinkage + MMkvHelper.getLong(Const.USER_ID))
- showIdInfo =if (MMkvHelper.getLong(Const.USER_ID).toString() == "0") {
- ""
- } else {
- MMkvHelper.getLong(Const.USER_ID).toString()
+ if(arguments?.containsKey("id") == true){
+ showIdInfo = arguments?.getString("id").toString()
+ }else{
+ showIdInfo =if (MMkvHelper.getLong(Const.USER_ID).toString() == "0") {
+ ""
+ } else {
+ MMkvHelper.getLong(Const.USER_ID).toString()
+ }
+
+
}
+
//点击事件
setOnClickListener()
@@ -244,21 +241,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
}
7 -> { //血糖
-// mHealthAdapter.xtangInfo?.apply {
-// if (model == 0) {
-// bundle.clear()
-// bundle.putBoolean("isOpen", false)
-// if (showIdInfo.isNullOrEmpty()) {//给自己开通
-// bundle.putString("id", CommonUtils.getMyUserId())
-// } else {//给他人开通
-// bundle.putString("id", showIdInfo)
-// }
-//
-// RouteManager.goAct(ARouterUrl.XT_OPEN, bundle)
-// } else {
-// goPage(index)
-// }
-// }
val deviceType = MMkvHelper.getString(Const.DEVICE_TYPE)
/*if (deviceType == "X1" || deviceType == "X2") {
goPage(5)
@@ -310,7 +292,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
override fun onResume() {
super.onResume()
- mViewModel.getWarningMsg()
+ // mViewModel.getWarningMsg()
}
//点击事件
@@ -344,51 +326,10 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
CommonToastUtils.showToast("敬请期待")
return@OnClickListener
- /*val btnStr = binding.mHeader.mWearManager.text
- if (btnStr == "佩戴管理") {
- if (MMkvHelper.getInt(Const.Watch_Device_Type) == Const.Companion.WatchDevice.LightA3.ordinal) {//4G手表
- RouteManager.goAct(ARouterUrl.WEAR_MANAGER)
- } else if (YCBBlueConnectHelper.getBlueStatus(false)) {//蓝牙手表并已经连接
- RouteManager.goAct(ARouterUrl.DEVICE_SETTING)
- } else {
- if (blueTooth()) {
- bundle.clear()
- bundle.putBoolean("isBind", true)
- bundle.putString("devMac", CommonUtils.getBlueToothMac())
- RouteManager.goAct(ARouterUrl.DEVICE_CONNECT, bundle)
- } else {
- dialogBind.show()
- }
- }
- } else {
- RouteManager.goAct(ARouterUrl.DEVICE_CHOICE)
- }*/
+
}
//评估
R.id.mCard -> {
-// if (isDemonstrate) {
-// bundle.clear()
-// bundle.putBoolean("isDemonstrate", isDemonstrate)
-//// RouteManager.goAct(ARouterUrl.HEALTH_24HOUR_REPORT, bundle)//新24小时
-// RouteManager.goAct(ARouterUrl.HEALTH_ESTIMATE, bundle)//新24小时
-// return@OnClickListener
-// }
-//// if (!canGoto24Healthresult) {
-//// showToast("数据不足或数据建模中,无法查看健康评估")
-//// return@OnClickListener
-//// }
-// CommonUtils.getMyUserInfo()?.apply {
-// bundle.clear()
-// bundle.putString("id", showIdInfo)
-// bundle.putString(
-// "openId",
-// if (openId.isNullOrEmpty()) "" else openId
-// )
-// bundle.putSerializable("reportBean", reportBean)
-//// RouteManager.goAct(ARouterUrl.HEALTH_24HOUR_REPORT, bundle)//新24小时
-// RouteManager.goAct(ARouterUrl.HEALTH_ESTIMATE, bundle)//新24小时
-//// RouteManager.goAct(ARouterUrl.HEALTH_STATUS, bundle)//旧版健康分析改24小时分析接口调用
-// }
bundle.clear()
bundle.putSerializable("index", ReportVm.ReportInfoType.Hour)
bundle.putString("id", showIdInfo)
@@ -448,7 +389,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
bundle.putBoolean("isDemonstrate", isDemonstrate)
bundle.putInt("pageType", 0)
bundle.putString("titleName", "日报")
-// RouteManager.goAct(ARouterUrl.HEALTH_REPORT, bundle)//老版(日周月年)报
RouteManager.goAct(ARouterUrl.HEALTH_SKY_HOUR_REPORT, bundle)
}
//周报
@@ -459,8 +399,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
bundle.putSerializable("index", ReportVm.ReportInfoType.Week)
bundle.putBoolean("isDemonstrate", isDemonstrate)
bundle.putString("titleName", "周报")
-// bundle.putInt("pageType", 1)
-// RouteManager.goAct(ARouterUrl.HEALTH_REPORT, bundle)//老版(日周月年)报
+
RouteManager.goAct(ARouterUrl.HEALTH_WEEK_MONTH_HOUR_REPORT, bundle)
}
//月报
@@ -471,8 +410,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
bundle.putSerializable("index", ReportVm.ReportInfoType.Month)
bundle.putBoolean("isDemonstrate", isDemonstrate)
bundle.putString("titleName", "月报")
-// bundle.putInt("pageType", 2)
-// RouteManager.goAct(ARouterUrl.HEALTH_REPORT, bundle)//老版(日周月年)报
RouteManager.goAct(ARouterUrl.HEALTH_WEEK_MONTH_HOUR_REPORT, bundle)
}
//年报
@@ -483,8 +420,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
bundle.putSerializable("index", ReportVm.ReportInfoType.Year)
bundle.putBoolean("isDemonstrate", isDemonstrate)
bundle.putString("titleName", "年报")
-// bundle.putInt("pageType", 3)
-// RouteManager.goAct(ARouterUrl.HEALTH_REPORT, bundle)//老版(日周月年)报
RouteManager.goAct(ARouterUrl.HEALTH_WEEK_MONTH_HOUR_REPORT, bundle)
}
//24小时健康评估
@@ -577,13 +512,13 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
private fun request() {
mViewModel.getAllInfo(showIdInfo, false)
- mViewModel.getMySetting()
+ // mViewModel.getMySetting()
mViewModel.getTips()
mViewModel.getRank(2)
if(MMkvHelper.contains(Const.LATITUDE) && MMkvHelper.contains(Const.LONGITUDE)){
mViewModel.getWeather()
}else{
- if (MMkvHelper.getLong(Const.USER_ID).toString() == "0"){
+ if (showIdInfo == ""){
}else{
if(EasyPermissions.hasPermissions(requireContext(), Manifest.permission.ACCESS_COARSE_LOCATION,
@@ -752,47 +687,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
}
}
- /**
- * 设置天气信息
- */
- private fun setWeatherInfo(weather: MainBean.Weather?) {
- if (null == weather) {
- binding.mHeader.tvWeather.visibility = View.GONE
- } else {
- weather.apply {
- if (weatherNo.isNullOrEmpty()) {
- binding.mHeader.tvWeather.visibility = View.GONE
- return
- }
-
- var icon = when (weatherNo) {
- "32" -> {//晴天
- "晴天"
- }
- "44" -> {//多云
- "多云"
- }
- "20" -> {//阴天
- "阴天"
- }
- "12" -> {//雨天
- "雨天"
- }
- "45" -> {//雷阵雨
- "雷阵雨"
- }
- "16" -> {//雪
- "雪"
- }
- else -> {
- "晴天"
- }
- }
- binding.mHeader.tvWeather.text = "${icon} ${weatherInfo}"
- }
- }
- }
-
/**
* 获取所有信息
*/
@@ -873,7 +767,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
dialogInfoUn.show()
}
isDemonstrate = bean.demonstrate == 1 //1 演示模式,0 普通模式
- (requireActivity() as MainActivity).isDemonstrate = isDemonstrate
+ // (requireActivity() as MainActivity).isDemonstrate = isDemonstrate
if (isDemonstrate) {
binding.mHeader.mWearInfo.visibility = View.INVISIBLE
} else {
@@ -881,7 +775,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
}
- if (showIdInfo.isNotEmpty()) { //自己
+ if (showIdInfo == CommonUtils.getMyUserId()) { //自己
Const.otherLiveData.value = bean
}
Const.battery = bean.power
@@ -890,7 +784,10 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
binding.mHeader.tvNowTime.text = bean.nowDay
binding.mHeader.tvLanuDate.text = bean.chinaDay
- // setWeatherInfo(bean.weather)
+
+ //设置用户头像
+ setUserImage(bean.user.id.toString(), bean.user.image, bean.user.sex.toString())
+ binding.mHeader.tvUserName.text = bean.user.name
bean.bmiInfo?.let {
binding.mHeader.mBMI.text = "BMI ${it.bmi}"
@@ -912,7 +809,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
} else if (Const.Companion.WatchDevice.LightA3.ordinal == bean.watchType) {//如果是4G设备,设置连接状态与电量信息
} else {*/
- if (showIdInfo.isEmpty()) { //自己
+ if (showIdInfo ==CommonUtils.getMyUserId()) { //自己
val localBlueMac = MMkvHelper.getString(Const.Blue_Tooth)
if (YCBBlueConnectHelper.getBleNowStatus() == YCBBlueConnectHelper.BLEConnectState.DisConnect) {//如果本地有蓝牙信息且属于未连接状态,则直接连接
LogUtils.d("startConnect::${localBlueMac}")
@@ -946,6 +843,8 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
} else {
MMkvHelper.put(Const.DEVICE_TYPE, deviceType)
}
+
+ requestByDeviceModel()
if (healthMonitoringListData.size > 9) {
for ((index, healthMonitoringListBean) in healthMonitoringListData.withIndex()) {
if (index < 9) {
@@ -997,16 +896,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
return@observe
}
- /*if (mFamilyAdapter.position != -1) {
- if (mFamilyAdapter.getItem(mFamilyAdapter.position).userJointId != it.data.user?.id) {
- if (mFamilyAdapter.position == 0 && it.data.user?.id.toString() == CommonUtils.getMyUserId()) {//如果是自己,啥也不做
-
- } else {
- LogUtils.e("当前用户与请求用户信息不一致,不作处理!")
- return@observe
- }
- }
- }*/
reportBean = it.data
@@ -1030,16 +919,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
healthResult,
if (it.data.star.isNullOrEmpty()) 0 else it.data.star.toInt()
)
-// if (healthResult == 3) {
-// binding.mCom.mHealthStatus.setCompoundDrawables(null, null, null, null)
-// } else {
-// var drawable = ContextCompat.getDrawable(
-// requireContext(),
-// UserInfoDefin.healthIcon[healthResult + 1]
-// )
-// drawable!!.setBounds(0, 0, drawable.minimumWidth, drawable.minimumHeight)
-// binding.mCom.mHealthStatus.setCompoundDrawables(drawable, null, null, null)
-// }
}
//个人设置信息获取
@@ -1067,9 +946,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
if (settingBean.user.avatarUrl.isEmpty()) "" else settingBean.user.avatarUrl
}*/
- //设置用户头像
- setUserImage(settingBean.user.id, settingBean.user.avatarUrl, settingBean.user.sex.toString())
- binding.mHeader.tvUserName.text = settingBean.user.name
+
if (settingBean.user.bluetooth.isNullOrEmpty()) { //没有mac地址表示未绑定
// binding.mContent.visibility = View.VISIBLE
@@ -1088,7 +965,7 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
val againTime = RxTimeTool.string2Milliseconds("2022-07-01 21:00:00")
val signTime = RxTimeTool.string2Milliseconds(signTime)
if (signTime < againTime) {
- signDialog.show()
+ //signDialog.show()
}
}
/* if (CommonUtils.isBlueTooth(MMkvHelper.getInt(Const.Watch_Device_Type))) {//如果是蓝牙设备
@@ -1176,12 +1053,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
setTips(list)
}
-// //步数信息
-// mViewModel.dkInfo.observe(this) {
-// mHealthAdapter.dkBean = it.data
-// mHealthAdapter.notifyDataSetChanged()
-// }
-
//步数上传
mViewModel.uploadStep.observe(this) {
//步数上传成功
@@ -1190,43 +1061,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
mViewModel.getAllInfo(showIdInfo, false)
}
- //我家人信息
- /* mViewModel.familyLive.observe(this) {
- it.data.add(0, FamilyBean().apply {
- this.fCall = "我"
- })
- var selectPosition = 0
- if (showIdInfo.isNotEmpty()) {
- it.data.forEachIndexed { index, familyBean ->
- if (showIdInfo == familyBean.userJointId.toString()) {
- selectPosition = index
- return@forEachIndexed
- }
- }
- //如果家人解绑了 则直接查自己的
- if (selectPosition == 0) {
- showIdInfo = ""
- }
- }
-
-// val content =
-// getString(R.string.family_num, "" + "${it.data.size - 1}")
-// binding.mGriddingList.tvFamilyContent.text = setStrSpan(
-// content,
-// 15,
-// getColor(R.color.col_25C),
-// Typeface.BOLD,
-// content.length - 3 - (it.data.size - 1).toString().length,
-// content.length - 3
-// )
- it.data.add(FamilyBean().apply {
- this.fCall = "家人"
- })
-
- mFamilyAdapter.position = selectPosition
- mFamilyAdapter.setNewInstance(it.data)
- }*/
-
//手表信息组装上传
mViewModel.allDataInfo.observe(this) {
if (null == it || it["data"] == null || it["data"] !is ArrayList<*>) {
@@ -1333,7 +1167,6 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
when (MMkvHelper.getInt(Const.Watch_Device_Type)) {//如果是4GA3设备,则隐藏心电板块
Const.Companion.WatchDevice.LightA3.ordinal -> {
getXtInfo(showIdInfo, false)//获取血糖信息
-// get24HourReportInfo(showIdInfo)//获取24小时日报
}
else -> {
@@ -1544,28 +1377,8 @@ class DynamicManagementFrag : BaseVmFrag() , EasyPermission
)
)
}
-
-// text =
-// setStrSpan(content, 13, getColor(com.xty.health.R.color.col_ff7), Typeface.BOLD, content.length - 3 - percent.length, content.length - 3)
}
-// /**
-// * 设置设备信息
-// */
-// private fun setBindDeviceInfo(deviceInfo: MainBean.DeviceTotal?) {
-// deviceInfo?.let {
-// binding.mChildView.tvXueyaNum.text = "已绑定" + it.sphygmomanometer + "台"
-// binding.mChildView.tvXuetangNum.text = "已绑定" + it.bloodGlucose + "台"
-// }
-// binding.mChildView.llXueya.setOnClickListener {
-// //已绑定血压列表
-// RouteManager.goAct(ARouterUrl.XUEYAJI_BIND_LIST, null)
-// }
-// binding.mChildView.llXuetang.setOnClickListener {
-// //已绑定血糖列表
-// RouteManager.goAct(ARouterUrl.XUETANGYI_BIND_LIST, null)
-// }
-// }
private fun initBlueToothStatu() {
diff --git a/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt b/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt
index 4712214..849e8e6 100644
--- a/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt
+++ b/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt
@@ -60,15 +60,6 @@ HealthHomeFrag : BaseVmFrag() {
val binding by lazy { FragHealthBinding.inflate(layoutInflater) }
- //重签名
- private val signDialog by lazy {
- AgainSignDialog(requireContext(), {
- RouteManager.goAct(ARouterUrl.LOGIN_ACT)
- requireActivity().finish()
- }) {
- RouteManager.goAct(ARouterUrl.AGAIN_SIGN)
- }
- }
private var canGoto24Healthresult: Boolean = true
private var isDemonstrate: Boolean = false
@@ -99,11 +90,6 @@ HealthHomeFrag : BaseVmFrag() {
RouteManager.goAct(ARouterUrl.DEVICE_CHOICE)
}
}
- private val dialogInfoUn by lazy {
- DialogTip(requireContext(), "请完善基本信息") {
- RouteManager.goAct(ARouterUrl.INFO_SIMPLE)
- }
- }
override fun setLayout(): View = binding.root
override fun initView() {
super.initView()
@@ -511,36 +497,6 @@ HealthHomeFrag : BaseVmFrag() {
}
- private var onClickListener = View.OnClickListener {
- when (it.id) {
- R.id.ll_health_records -> { //健康档案
- bundle.putString("id", showIdInfo)
- RouteManager.goAct(ARouterUrl.HEALTH_RECORD, bundle)
- }
-
- //防癌
- R.id.ll_cancer_screening -> {
-
-// onEventObject(requireContext(), UmengEventId.HealthRisk)
- bundle.clear()
- bundle.putString("id", showIdInfo)
- RouteManager.goAct(ARouterUrl.PRVENT_CANCER, bundle)
-// showToast("功能暂未开通,敬请期待")
- }
- //舌诊
- R.id.ll_ai_tongue_diagnosis -> {
- onEventObject(requireContext(), UmengEventId.HealthRisk)
- bundle.clear()
- bundle.putString("id", showIdInfo)
- RouteManager.goAct(ARouterUrl.TONGUE_MAIN_ACTIVITY, bundle)
-// showToast("功能暂未开通,敬请期待")
- }
- }
- }
-
-
-
-
// 刷新注册
private fun refresh() {
refresh.setRefresh(binding.mRefresh) {
@@ -591,7 +547,6 @@ HealthHomeFrag : BaseVmFrag() {
}else{
binding.mBannerCardTwo.visibility = View.VISIBLE
mMiddleBannerAdapter.setDatas(it[2])
- // mMiddleBannerAdapter.notifyDataSetChanged()
}
@@ -601,33 +556,6 @@ HealthHomeFrag : BaseVmFrag() {
mViewModel.scinceLive.observe(this) {
adapterSince.setNewInstance(it.data)
}
-
- //我家人信息
- mViewModel.familyLive.observe(this) {
- mFamilyAdapter.data.clear()
- it.data.add(0, FamilyBean().apply {
- this.fCall = "我"
- })
- var selectPosition = 0
- if (showIdInfo.isNotEmpty()) {
- it.data.forEachIndexed { index, familyBean ->
- if (showIdInfo == familyBean.userJointId.toString()) {
- selectPosition = index
- return@forEachIndexed
- }
- }
- //如果家人解绑了 则直接查自己的
- if (selectPosition == 0) {
- showIdInfo = ""
- }
- }
- it.data.add(FamilyBean().apply {
- this.fCall = "家人"
- })
- mFamilyAdapter.position = selectPosition
- mFamilyAdapter.setNewInstance(it.data)
- }
-
mViewModel.layoutLive.observe(this){
layoutTopAdapter.setNewInstance(it.data.top)
if(it.data.middle.size <= 6){
@@ -663,22 +591,8 @@ HealthHomeFrag : BaseVmFrag() {
binding.mCom.mRecycle.adapter = mFamilyAdapter
mFamilyAdapter.setOnItemClickListener { adapter, view, position ->
if (position == mFamilyAdapter.data.size - 1) { //第一期暂不做
- /* onEventObject(requireContext(), UmengEventId.Family)
- RouteManager.goAct(ARouterUrl.BIND_FAMILY)*/
- RouteManager.goAct(ARouterUrl.FAMILY_HEALTH_ACT)
- } else {
- var bean = adapter.getItem(position) as FamilyBean
- showIdInfo = if (bean.id == 0) {
- showFamily = null
- ""
- } else {
- showFamily = bean
- bean.userJointId.toString()
- }
- mFamilyAdapter.position = position
- mFamilyAdapter.notifyDataSetChanged()
- EventBus.getDefault().post(ChangeFamilyEvent(showIdInfo))
+ RouteManager.goAct(ARouterUrl.FAMILY_HEALTH_ACT)
}
}
@@ -700,28 +614,6 @@ HealthHomeFrag : BaseVmFrag() {
reqGpsPermissionDialog.show()
}
- //个人信息修改 主界面刷新
- @Subscribe(threadMode = ThreadMode.MAIN)
- fun refresh(event: MyInfoEvent) {
- if (dialogBind.isShowing) {
- dialogBind.dismiss()
- }
- request()
- }
-
-
- //家人信息改变 刷新
- @Subscribe(threadMode = ThreadMode.MAIN)
- fun familyChange(event: FamilyEvent) {
- // mViewModel.getMyFamilyList()
- }
-
-
-
- @Subscribe(threadMode = ThreadMode.MAIN)
- fun againSignEvent(event: AgainSignEvent) {
- signDialog.dismiss()
- }
@Subscribe(threadMode = ThreadMode.MAIN)
fun loginOrRegisterChange(event: LoginOrRegisterEvent){
showIdInfo =if (MMkvHelper.getLong(Const.USER_ID).toString() == "0") {
diff --git a/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt b/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt
index 5ee509a..b501979 100644
--- a/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt
+++ b/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt
@@ -6,6 +6,7 @@ import android.net.Uri
import android.os.Build
import android.view.View
import androidx.annotation.RequiresApi
+import cn.jpush.android.api.JPushInterface
import com.xty.base.dialog.AppUpdateDialog
import com.xty.base.fragment.BaseVmFrag
import com.xty.common.*
@@ -65,12 +66,6 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
var inviteCustodyBean: InviteCustodyBean? = null
- private val dialogBind by lazy {
- DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") {
- RouteManager.goAct(ARouterUrl.DEVICE_CHOICE)
- }
- }
-
val dialogInvite by lazy {
DialogTipNew(requireContext(), "监护邀请","", "确认","取消",false,{
inviteCustodyBean?.let {
@@ -185,13 +180,6 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
RouteManager.goAct(ARouterUrl.SUBMIT_REPORTMain, bundle)
}
}
- /*binding.llOrder.setOnClickListener {
- if(MMkvHelper.getLong(Const.USER_ID).toString() == "0"){
- RouteManager.goAct(ARouterUrl.LOGIN_ACT)
- }else {
- CommonToastUtils.showToast("敬请期待")
- }
- }*/
binding.mllMember.setOnClickListener {
if(MMkvHelper.getLong(Const.USER_ID).toString() == "0"){
@@ -250,9 +238,7 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
bundle.putBoolean("isDemonstrate", isDemonstrate)
bundle.putInt("pageType", 0)
bundle.putString("titleName", "日报")
-// RouteManager.goAct(ARouterUrl.HEALTH_REPORT, bundle)//老版(日周月年)报
RouteManager.goAct(ARouterUrl.HEALTH_SKY_HOUR_REPORT, bundle)
- // CommonToastUtils.showToast("敬请期待")
}
}
binding.llStartBs.setOnClickListener {
@@ -329,10 +315,6 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
RouteManager.goAct(ARouterUrl.LOGIN_ACT)
}else {
CommonToastUtils.showToast("敬请期待")
-
- /* bundle.clear()
- bundle.putString("id", user?.id)
- RouteManager.goAct(ARouterUrl.ORDER_LIST, bundle)*/
}
}
@@ -392,10 +374,8 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
private fun refresh() {
refresh.setRefresh(binding.mRefresh) {
mViewModel.getMySetting()
-// }
mViewModel.getAllInfo(showIdInfo,false)
-// mViewModel.getScore(1)
mViewModel.searchInviteInfo()
}
}
@@ -471,6 +451,14 @@ class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks {
mViewModel.settingLive.observe(this) {
if (null == it.data) return@observe
it.data.let { settingBean ->
+
+ if (BuildConfig.isRelease) {//设置极光推送别名
+ JPushInterface.setAlias(
+ requireContext(),
+ settingBean.user.id.toInt(),
+ "user_release_${settingBean.user.id}"
+ )
+ }
Const.mainLiveData.value = settingBean
// binding.mNoNetwork.root.visibility = View.GONE
}
diff --git a/app/src/main/java/com/zj365/dc/fragment/ServerFrag.kt b/app/src/main/java/com/zj365/dc/fragment/ServerFrag.kt
deleted file mode 100644
index 427d141..0000000
--- a/app/src/main/java/com/zj365/dc/fragment/ServerFrag.kt
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
-package com.zj365.dc.fragment
-
-import android.view.View
-import androidx.recyclerview.widget.*
-import com.tencent.qcloud.tuikit.tuiconversation.classicui.util.TUIConversationUtils
-import com.xty.base.fragment.BaseVmFrag
-import com.xty.common.*
-import com.xty.common.arouter.ARouterUrl
-import com.xty.common.arouter.RouteManager
-import com.xty.common.util.CommonUtils
-import com.xty.network.model.ExpertBean
-import com.xty.network.model.KeeperBean
-import com.xty.network.model.ScienceBean
-
-class ServerFrag : BaseVmFrag() {
- val binding by lazy { FragServerBinding.inflate(layoutInflater) }
- val adapterSince by lazy { ScienceAdapter() }
- val gjAdalter by lazy { GjAdapter() }
- val proAdalter by lazy { ProAdapter() }
-
- val sexIcon by lazy { arrayOf(R.mipmap.ic_male, R.mipmap.ic_female) }
- var clickOnline: KeeperBean? = null
- override fun setLayout(): View = binding.root
-
- override fun setViewModel() = ServerVm()
-
- override fun observer() {
- mViewModel.keeperLive.observe(this) {
- binding.mNoNetwork.root.visibility = View.GONE
- if (!it.data.isNullOrEmpty()) {
- val keeperBean = it.data[0]
- clickOnline = keeperBean
- binding.mDocName.text = keeperBean.realname
- binding.mDocName.tag = keeperBean.id
- binding.mPosition.text = keeperBean.positionName
- binding.mImageSex.setImageResource(sexIcon[keeperBean.getGenderValue()])
- binding.mTvLoc.text =
- "${if (keeperBean.organization.isNullOrEmpty()) "无" else keeperBean.organization} ${if (keeperBean.dictName.isNullOrEmpty()) "无" else keeperBean.dictName}"
- binding.mTitleGj.visibility = View.VISIBLE
-// binding.mViewGj.visibility = View.VISIBLE
- binding.mPhoto.tag =
- if (keeperBean.avatar.isNullOrEmpty()) "" else getImageUrl(keeperBean.avatar)
- binding.mPhoto.apply {
- setImageUser(requireContext(), getImageUrl(keeperBean.avatar))
- }
- binding.llgj.visibility = View.VISIBLE
- } else {
- binding.llgj.visibility = View.GONE
- binding.mTitleGj.visibility = View.GONE
-// binding.mViewGj.visibility = View.GONE
- }
-
- }
- mViewModel.keeperLiveList.observe(this) {
- binding.mNoNetwork.root.visibility = View.GONE
- var listAll = mutableListOf>()
- var step = (0 until it.data.size).step(2)
- for (i in step) {
- var list = mutableListOf()
- list.add(it.data[i])
- if (it.data.size > i + 1) {
- list.add(it.data[i + 1])
- }
- listAll.add(list)
- }
- gjAdalter.setNewInstance(it.data)
-
- }
- mViewModel.scinceLive.observe(this) {
- binding.mNoNetwork.root.visibility = View.GONE
- adapterSince.setNewInstance(it.data)
- }
-
- mViewModel.expertInfoList.observe(this) {
- var listAll = mutableListOf>()
- var step = (0 until it.data.records.size)
- for (i in step) {
- var list = mutableListOf()
- list.add(it.data.records[i])
- listAll.add(list)
- }
- proAdalter.setNewInstance(it.data.records)
- }
- }
-
- override fun initView() {
- super.initView()
- statusBar(binding.mStatusBar)
- initProAdapter()
- initGjAdapter()
- initAdapter()
- binding.mNoNetwork.mRefreshBtn.isSelected = true
- binding.mNoNetwork.mRefreshBtn.setOnClickListener {
- mViewModel.getExpertInfoList(1, 20)
- mViewModel.getKeeper()
- mViewModel.getKeeperList()
- mViewModel.getScinceList()
-
- }
- binding.mTvOnLine.setOnClickListener {
- clickOnline?.let {
- bundle.clear()
- bundle.putSerializable("bean", clickOnline)
- RouteManager.goAct(ARouterUrl.ONLINE_MAKE, bundle)
- }
-
- }
- binding.llNext.setOnClickListener {
- onEventObject(requireContext(), UmengEventId.OperGuide)
- RouteManager.goAct(ARouterUrl.GUIDE)
- }
- mViewModel.getExpertInfoList(1, 20)
- mViewModel.getKeeper()
- mViewModel.getKeeperList()
- mViewModel.getScinceList()
-
- binding.clGj.setOnClickListener {
- bundle.clear()
- CommonUtils.getMyUserInfo()?.let {
- val name = binding.mDocName.text?.toString()
- val toUserId = binding.mDocName.tag?.toString()
- val fromUserId = id?.toString()
- val chatImage = binding.mPhoto.tag?.toString()
- if (toUserId.isNullOrEmpty() || fromUserId.isNullOrEmpty()) {
- return@setOnClickListener
- }
-// bundle.putString("title",name)
-// bundle.putString("toUserId",toUserId)
-// bundle.putString("fromUserId", fromUserId)
-// bundle.putString("chatImage", chatImage)
-// RouteManager.goAct(ARouterUrl.CHAT_MSG,bundle)
- TUIConversationUtils.startAYSingleChatActivity("man_$toUserId", name, chatImage);
-
- }
-
- }
-
-
-
- refresh()
- }
-
- override fun onResume() {
- super.onResume()
- if (!checkNetworkAvailable(requireContext())) {
- binding.mNoNetwork.root.visibility = View.VISIBLE
- } else {
-// if (binding.mNoNetwork.root.visibility == View.VISIBLE) {
- LogUtils.e("yansu:4444444444444444444444")
- mViewModel.getExpertInfoList(1, 20)
- mViewModel.getKeeper()
- mViewModel.getKeeperList()
-// mViewModel.getScinceList()
-// }
- }
- }
-
- // 刷新注册
- private fun refresh() {
- refresh.setRefresh(binding.mRefresh) {
- mViewModel.getExpertInfoList(1, 20)
- mViewModel.getKeeper()
- mViewModel.getKeeperList()
- mViewModel.getScinceList()
- }
- }
-
- private fun initProAdapter() {
- binding.mRecycleprofession.layoutManager =
- LinearLayoutManager(requireContext(), RecyclerView.HORIZONTAL, false)
- binding.mRecycleprofession.adapter = proAdalter
-// val pageHelper = LinearSnapHelper()
-// pageHelper.attachToRecyclerView(binding.mRecycleprofession)
- gjAdalter.addChildClickViewIds(R.id.mImage, R.id.card1)
- gjAdalter.setOnItemChildClickListener { adapter, view, position ->
- when (view.id) {
- R.id.mImage -> {
- bundle.clear()
- val bean = adapter.getItem(position) as KeeperBean;
- bundle.putSerializable("url", bean.introUrl)
- bundle.putString("titleName", requireContext().getString(R.string.title_name))
- RouteManager.goAct(ARouterUrl.EXPERT_CHIEF, bundle)
- }
- R.id.card1 -> {
- bundle.clear()
- val bean = adapter.getItem(position) as KeeperBean;
- bundle.putSerializable("bean", bean)
- RouteManager.goAct(ARouterUrl.HOUSEKEEP_INFO, bundle)
- }
- }
- }
- proAdalter.setOnItemClickListener { adapter, view, position ->
- bundle.clear()
- val bean = adapter.getItem(position) as ExpertBean;
- bundle.putSerializable("url", bean.infoPhotoUrl)
- RouteManager.goAct(ARouterUrl.EXPERT_CHIEF, bundle)
-
- }
- }
-
- private fun initGjAdapter() {
- binding.mRecycle.layoutManager =
- LinearLayoutManager(requireContext(), RecyclerView.HORIZONTAL, false)
- binding.mRecycle.adapter = gjAdalter
-// val pageHelper = LinearSnapHelper()
-// pageHelper.attachToRecyclerView(binding.mRecycle)
-
- }
-
- private fun initAdapter() {
- binding.mRecycleNews.layoutManager = LinearLayoutManager(requireContext())
- binding.mRecycleNews.adapter = adapterSince
- adapterSince.setOnItemClickListener { adapter, view, position ->
- bundle.clear()
- var bean = adapter.getItem(position) as ScienceBean
- bundle.putSerializable("bean", bean)
- onEventObject(requireContext(), UmengEventId.HealthScience, "${bean.name}")
- RouteManager.goAct(ARouterUrl.SCIENCE_DETAIL, bundle)
-
- }
-
- }
-
-
-}*/
diff --git a/app/src/main/res/layout/act_watch_family_health.xml b/app/src/main/res/layout/act_watch_family_health.xml
new file mode 100644
index 0000000..9dce0c5
--- /dev/null
+++ b/app/src/main/res/layout/act_watch_family_health.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/frag_mine.xml b/app/src/main/res/layout/frag_mine.xml
index dbb4e12..5628452 100644
--- a/app/src/main/res/layout/frag_mine.xml
+++ b/app/src/main/res/layout/frag_mine.xml
@@ -20,7 +20,6 @@
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
- android:layout_marginTop="@dimen/dp_30"
app:srlAccentColor="@color/white">
{
+ if (listener != null) {
+ listener.onSuccess();
+ }
+ })
+ .onDenied(permissions12 -> {
+ if (AndPermission.hasAlwaysDeniedPermission(context, permissions12)) {
+ mSetting.showSetting(permissions12);
+ }
+ })
+ .start();
+ }
+
+
+ /**
+ * @param context 上下文
+ * @param listener 回调成功
+ * @param failedListener 回调失败
+ * @param permissions 多个权限
+ */
+ @SuppressLint("WrongConstant")
+ public static void requestPermission(final Context context, final PermissionSuccessListener listener, final PermissionFailedListener failedListener, String... permissions) {
+ final PermissionSetting mSetting = new PermissionSetting(context);
+ AndPermission.with(context)
+ .runtime()
+ .permission(permissions)
+ .rationale(new DefaultRationale())
+ .onGranted(permissions1 -> {
+ if (listener != null) {
+ listener.onSuccess();
+ }
+ })
+ .onDenied(permissions12 -> {
+ if (failedListener != null)
+ failedListener.onFailed();
+ if (AndPermission.hasAlwaysDeniedPermission(context, permissions12)) {
+ mSetting.showSetting(permissions12);
+ }
+ })
+ .start();
+ }
+
+ /**
+ * 跳转到权限设置
+ *
+ * @param activity
+ */
+ public static void toPermissionSetting(Activity activity) {
+ if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.LOLLIPOP_MR1) {
+ toSystemConfig(activity);
+ } else {
+ try {
+ toApplicationInfo(activity);
+ } catch (Exception e) {
+ e.printStackTrace();
+ toSystemConfig(activity);
+ }
+ }
+ }
+
+ /**
+ * 应用信息界面
+ *
+ * @param activity
+ */
+ public static void toApplicationInfo(Activity activity) {
+ Intent localIntent = new Intent();
+ localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ localIntent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
+ localIntent.setData(Uri.fromParts("package", activity.getPackageName(), null));
+ activity.startActivity(localIntent);
+ }
+
+ /**
+ * 系统设置界面
+ *
+ * @param activity
+ */
+ public static void toSystemConfig(Activity activity) {
+ try {
+ Intent intent = new Intent(Settings.ACTION_SETTINGS);
+ activity.startActivity(intent);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * @description:默认权限设置提示dialog
+ * @author: 张慧彪
+ * @time 18-7-26 下午2:15
+ **/
+ public final static class DefaultRationale implements Rationale> {
+
+ @Override
+ public void showRationale(Context context, List data, RequestExecutor executor) {
+ List permissionNames = Permission.transformText(context, data);
+ String message = context.getString(R.string.message_permission_rationale, TextUtils.join("\n", permissionNames));
+
+ new androidx.appcompat.app.AlertDialog.Builder(context)
+ .setTitle(R.string.title_dialog)
+ .setMessage(message)
+ .setPositiveButton(R.string.resume, (dialog, which) -> executor.execute())
+ .setNegativeButton(R.string.cancel, (dialog, which) -> executor.cancel())
+ .show();
+ }
+ }
+
+ /**
+ * @description:权限设置dialog
+ * @author: 张慧彪
+ * @time 18-7-26 下午2:14
+ **/
+ public final static class PermissionSetting {
+
+ private final Context mContext;
+
+ public PermissionSetting(Context context) {
+ this.mContext = context;
+ }
+
+ public void showSetting(final List permissions) {
+ List permissionNames = Permission.transformText(mContext, permissions);
+ String message = mContext.getString(R.string.message_permission_always_failed, TextUtils.join("\n", permissionNames));
+
+ new androidx.appcompat.app.AlertDialog.Builder(mContext)
+ .setCancelable(false)
+ .setTitle(R.string.title_dialog)
+ .setMessage(message)
+ .setPositiveButton(R.string.setting, (dialog, which) -> {
+ setPermission(mContext);
+ })
+ .setNegativeButton(R.string.no, (dialog, which) -> {
+ })
+ .show();
+ }
+
+ /**
+ * Set permissions.
+ */
+ private void setPermission(Context context) {
+ AndPermission.with(context)
+ .runtime()
+ .setting()
+ .start(REQUEST_CODE_SETTING);
+ }
+ }
+}
diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml
index a61daa0..a25f741 100644
--- a/common/src/main/res/values/strings.xml
+++ b/common/src/main/res/values/strings.xml
@@ -550,6 +550,13 @@
%1$s]]>
%1$s]]>
+ 提示
+ 允许以下权限以便程序继续执行:\n\n%1$s
+ 我们需要以下权限,请在设置中为我们开启:\n\n%1$s
+ 继续
+ 否
+
+
中健三六五用户个人信息保护指引
非常感谢您使用中健三六五APP,我们深知保护个人隐私的重要性,所以请您在使用前,仔细阅读并充分理解《用户协议》和《隐私政策》的内容。\n如果您同意《用户协议》和《隐私政策》,请点击“同意并使用”开始使用我们的产品和服务。\n谨记中健三六五健康数据仅作为参考,不作为诊断依据。
同意并继续
diff --git a/config.gradle b/config.gradle
index a30a264..dd6d4ec 100644
--- a/config.gradle
+++ b/config.gradle
@@ -25,17 +25,17 @@ ext {
url = [
//正式环境
- debug_url : "https://app.zhongjian365.com/app/",
+ /*debug_url : "https://app.zhongjian365.com/app/",
release_url: "https://app.zhongjian365.com/app/",
h5_debug_url : "https://built.zhongjian365.com/",
- h5_release_url : "https://built.zhongjian365.com/"
+ h5_release_url : "https://built.zhongjian365.com/"*/
//测试环境
- /* debug_url : "http://java01.zhongjian365.com/app/",
- release_url: "http://java01.zhongjian365.com/app/",*/
+ debug_url : "http://java01.zhongjian365.com/app/",
+ release_url: "http://java01.zhongjian365.com/app/",
- /* h5_debug_url : "http://testbuilt.zhongjian365.com/",
- h5_release_url : "http://testbuilt.zhongjian365.com/"*/
+ h5_debug_url : "http://testbuilt.zhongjian365.com/",
+ h5_release_url : "http://testbuilt.zhongjian365.com/"
]
@@ -169,6 +169,7 @@ ext {
stream : 'com.annimon:stream:1.2.1',
rxjave : 'io.reactivex.rxjava2:rxjava:2.2.8',
rxandroid : 'io.reactivex.rxjava2:rxandroid:2.1.1',
+ permission : 'com.yanzhenjie:permission:2.0.3',
//seekbar
seekbar : 'com.github.Jay-Goo:RangeSeekBar:v3.0.0'
diff --git a/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthAct.kt b/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthAct.kt
index d1e6f3b..6ff4538 100644
--- a/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthAct.kt
+++ b/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthAct.kt
@@ -93,6 +93,15 @@ class FamilyHealthAct : BaseListAct() {
R.id.user_avatar_recycler ->{
RouteManager.goAct(ARouterUrl.FAMILY_GUARDIAN_LIST_ACT)
}
+ R.id.tv_current_time ->{
+ RouteManager.goAct(ARouterUrl.FAMILY_HEALTH_REAL_TIME_ACT)
+
+ }
+ R.id.tv_watch ->{
+ bundle.clear()
+ bundle.putString("id",familyHealthBean.userId.toString())
+ RouteManager.goAct(ARouterUrl.WATCH_FAMILY_HEALTH,bundle)
+ }
}
}
}
diff --git a/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthRealTimeAct.kt b/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthRealTimeAct.kt
index 9046763..cb0d845 100644
--- a/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthRealTimeAct.kt
+++ b/health/src/main/java/com/zj365/health/act/familyhealth/FamilyHealthRealTimeAct.kt
@@ -6,6 +6,11 @@ import androidx.recyclerview.widget.DividerItemDecoration
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.alibaba.android.arouter.facade.annotation.Route
+import com.amap.api.maps.AMap
+import com.amap.api.maps.CameraUpdateFactory
+import com.amap.api.maps.UiSettings
+import com.amap.api.maps.model.CameraPosition
+import com.amap.api.maps.model.LatLng
import com.xty.base.act.BaseVmAct
import com.xty.base.vm.BaseVm
import com.xty.common.arouter.ARouterUrl
@@ -22,6 +27,10 @@ class FamilyHealthRealTimeAct : BaseVmAct() {
val binding by lazy { ActFamilyHealthRealTimeBinding.inflate(layoutInflater) }
val mAdapter by lazy { FamilyHealthRealTimeAdapter() }
+
+ private var aMap: AMap? = null
+
+ private var latLng = LatLng(28.206548, 112.893712) //坐标
override fun liveObserver() {
}
@@ -34,6 +43,18 @@ class FamilyHealthRealTimeAct : BaseVmAct() {
finish()
}
initAdapter()
+
+ aMap = binding.mapView.map
+ aMap?.let {
+ val uiSettings: UiSettings = it.uiSettings
+ uiSettings.setLogoBottomMargin(-50) //隐藏logo
+ uiSettings.isZoomControlsEnabled=false
+
+ var cameraUpdate = CameraUpdateFactory.newCameraPosition(
+ CameraPosition(latLng, 15f, 0f, 0f)
+ )
+ it.moveCamera(cameraUpdate)
+ }
}
fun initAdapter(){
diff --git a/mine/src/main/res/layout/act_base_info_change.xml b/mine/src/main/res/layout/act_base_info_change.xml
index 0bfcef0..7773d96 100644
--- a/mine/src/main/res/layout/act_base_info_change.xml
+++ b/mine/src/main/res/layout/act_base_info_change.xml
@@ -654,6 +654,7 @@