From 7dca4b772c92ed8c1371d6dbcfd39908a36298b6 Mon Sep 17 00:00:00 2001 From: wlh <646507849@qq.com> Date: Wed, 13 Dec 2023 21:36:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=AD=E5=BB=BA365?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 27 ++--- .../com/zj365/dc/activity/MainActivity.kt | 12 +-- .../dc/activity/OneKeyBinderDeviceAct.kt | 5 +- .../java/com/zj365/dc/activity/WelcomeAct.kt | 10 +- .../dc/fragment/DynamicManagementFrag.kt | 6 +- .../com/zj365/dc/fragment/HealthHomeFrag.kt | 6 +- .../java/com/zj365/dc/fragment/MineFrag.kt | 31 +++++- app/src/main/java/com/zj365/dc/vm/HomeVm.kt | 7 +- .../com/zj365/dc/vm/OneKeyBinderDeviceVm.kt | 21 ++++ .../java/com/zj365/dc/weight/PrevDialog.kt | 4 +- app/src/main/res/layout/act_welcome.xml | 2 +- app/src/main/res/menu/bottom_nav_bar.xml | 4 +- base/src/main/assets/privacy.html | 66 ++++++------ .../main/java/com/xty/base/act/BaseListAct.kt | 1 + base/src/main/res/values/strings.xml | 2 +- .../src/main/java/com/xty/common/app/MyApp.kt | 4 +- common/src/main/res/layout/service_none.xml | 2 +- common/src/main/res/mipmap-xhdpi/ic_logo.jpg | Bin 22664 -> 0 bytes common/src/main/res/mipmap-xhdpi/ic_logo.png | Bin 0 -> 5356 bytes common/src/main/res/mipmap-xxhdpi/ic_logo.png | Bin 0 -> 10711 bytes common/src/main/res/values/strings.xml | 14 +-- config.gradle | 6 +- ...无创血糖趋势监测功能说明.html | 4 +- .../assets/血压校准流程和方法.html | 4 +- .../com/zj365/health/act/BloodTipWebAct.kt | 4 +- .../zj365/health/act/Health24HourReportAct.kt | 2 +- .../health/act/HealthEstimateActivity.kt | 2 +- .../com/zj365/health/act/HealthMainAct.kt | 2 +- .../com/zj365/health/act/HealthReportAct.kt | 2 +- .../health/act/HealthSkyHourReportAct.kt | 4 +- .../act/HealthWeekMonthHourReportAct.kt | 4 +- .../PsychologicalQuestionnaireAct.kt | 17 +++ .../psychological/PsychologicalResultAct.kt | 30 ++++++ .../psychological/PsychologicalTestMainAct.kt | 36 +++++++ .../PsychologicalRecommendAdapter.kt | 11 ++ .../PsychologicalTestMainAdapter.kt | 11 ++ .../zj365/health/fragment/FragWeekReport.kt | 2 +- .../com/zj365/health/fragment/UricAcidFrag.kt | 2 +- .../com/zj365/health/fragment/XinlvFrag.kt | 2 +- .../com/zj365/health/fragment/XueTangFrag.kt | 6 +- .../fragment/bloodlipid/BloodFatFrag.kt | 2 +- .../act_psychological_questionnaire.xml | 36 +++++++ .../res/layout/act_psychological_result.xml | 98 ++++++++++++++++++ .../layout/act_psychological_test_main.xml | 9 ++ health/src/main/res/layout/item_programme.xml | 2 +- .../res/layout/item_psychokogical_test.xml | 30 ++++++ .../layout/item_psychological_recommend.xml | 44 ++++++++ .../java/com/zj365/mime/act/AccountSafeAct.kt | 12 +-- .../java/com/zj365/mime/act/DevInfoAct.kt | 4 +- .../main/java/com/zj365/mime/act/ScoreAct.kt | 2 +- .../java/com/zj365/mime/act/SettingNewAct.kt | 12 +-- .../com/zj365/mime/adapter/VersionAdapter.kt | 2 +- .../mime/weight/InviteFriendShareDialog.kt | 2 +- mine/src/main/res/layout/act_about.xml | 4 +- mine/src/main/res/layout/act_feed_back.xml | 2 +- .../main/res/layout/act_feed_back_detail.xml | 2 +- .../res/layout/act_new_programme_detail.xml | 2 +- mine/src/main/res/layout/frag_new_prog.xml | 2 +- mine/src/main/res/layout/item_programme.xml | 2 +- .../res/layout/layout_invite_one_style.xml | 8 +- .../res/layout/layout_invite_two_style.xml | 8 +- .../main/java/com/xty/network/ApiInterface.kt | 6 ++ .../com/xty/network/model/MyOrganCodeBean.kt | 2 +- zj365.keystore | Bin 0 -> 2197 bytes 64 files changed, 518 insertions(+), 150 deletions(-) create mode 100644 app/src/main/java/com/zj365/dc/vm/OneKeyBinderDeviceVm.kt delete mode 100644 common/src/main/res/mipmap-xhdpi/ic_logo.jpg create mode 100644 common/src/main/res/mipmap-xhdpi/ic_logo.png create mode 100644 common/src/main/res/mipmap-xxhdpi/ic_logo.png create mode 100644 health/src/main/java/com/zj365/health/act/psychological/PsychologicalQuestionnaireAct.kt create mode 100644 health/src/main/java/com/zj365/health/act/psychological/PsychologicalResultAct.kt create mode 100644 health/src/main/java/com/zj365/health/act/psychological/PsychologicalTestMainAct.kt create mode 100644 health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalRecommendAdapter.kt create mode 100644 health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalTestMainAdapter.kt create mode 100644 health/src/main/res/layout/act_psychological_questionnaire.xml create mode 100644 health/src/main/res/layout/act_psychological_result.xml create mode 100644 health/src/main/res/layout/item_psychokogical_test.xml create mode 100644 health/src/main/res/layout/item_psychological_recommend.xml create mode 100644 zj365.keystore diff --git a/app/build.gradle b/app/build.gradle index 439d76b..95e54ef 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -32,23 +32,17 @@ android { //暂时填写默认值即可. JPUSH_CHANNEL : "developer-default", - OPPO_APPKEY : "OP-28e45f61f683472c9033a98c02818171", // OPPO平台注册的appkey - OPPO_APPID : "OP-30804697", // OPPO平台注册的appid - OPPO_APPSECRET: "OP-2ea09012e6a746dfbc503877916ba342",//OPPO平台注册的appsecret - XIAOMI_APPKEY : "MI-5992028541716",// 小米平台注册的appkey XIAOMI_APPID : "MI-2882303761520285716", // 小米平台注册的appid - VIVO_APPKEY:"8e9bb7cc764a56a6862e97ef99c03a61", - VIVO_APPID:"105558697", - HONOR_APPID:"220761795" + HONOR_APPID:"109849297" ] // 配置 APK 输出路径 applicationVariants.all { variant -> if (variant.buildType.name == "release") { def date = new Date().format("yyyyMMddHHmmss") variant.outputs.all { - outputFileName = "HealthUser-${variant.name}-${versionName}-${date}.apk" + outputFileName = "ZJ365-${variant.name}-${versionName}-${date}.apk" } } } @@ -59,13 +53,12 @@ android { } signingConfigs{ - /* release { - keyAlias 'healthUser' - keyPassword '123456' - storeFile file('./HealthUser.keyStore') - storeFile file('C:/Users/anyu-android/Desktop/user_keystore/HealthUser.keyStore') - storePassword '123456' - }*/ + release { + storeFile file('../zj365.keyStore') + keyAlias 'zj365' + keyPassword 'zj36566' + storePassword 'zj36566' + } } buildTypes { @@ -75,13 +68,13 @@ android { buildConfigField("Boolean","isRelease",String.valueOf(true)) minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' -// signingConfig signingConfigs.release + signingConfig signingConfigs.release } debug { buildConfigField("String", "url", "\"${url.debug_url}\"") buildConfigField("Boolean","isRelease",String.valueOf(false)) buildConfigField("String", "image_prefix","\"${imagePrefix.debug_url}\"") -// signingConfig signingConfigs.release + signingConfig signingConfigs.release } } compileOptions { diff --git a/app/src/main/java/com/zj365/dc/activity/MainActivity.kt b/app/src/main/java/com/zj365/dc/activity/MainActivity.kt index f120672..9cdf716 100644 --- a/app/src/main/java/com/zj365/dc/activity/MainActivity.kt +++ b/app/src/main/java/com/zj365/dc/activity/MainActivity.kt @@ -97,7 +97,7 @@ class MainActivity : BaseVmAct(), Consumer { private val listFragment by lazy { listOf( HealthHomeFrag(), - Fragment(), + // Fragment(), DynamicManagementFrag(), MessageFragment() /*TUIConversationFragment( @@ -183,28 +183,28 @@ class MainActivity : BaseVmAct(), Consumer { return@setOnNavigationItemSelectedListener true } - R.id.nav_server -> { + /* R.id.nav_server -> { binding.mVp2.setCurrentItem(1, false) return@setOnNavigationItemSelectedListener true - } + }*/ R.id.nav_dynamic_management -> { if (MMkvHelper.getLong(Const.USER_ID).toString() == "0"){ RouteManager.goAct(ARouterUrl.LOGIN_ACT) }else{ - binding.mVp2.setCurrentItem(2, false) + binding.mVp2.setCurrentItem(1, false) return@setOnNavigationItemSelectedListener true } } R.id.nav_message -> { - binding.mVp2.setCurrentItem(3, false) + binding.mVp2.setCurrentItem(2, false) return@setOnNavigationItemSelectedListener true } R.id.nav_mine -> { - binding.mVp2.setCurrentItem(4, false) + binding.mVp2.setCurrentItem(3, false) return@setOnNavigationItemSelectedListener true } diff --git a/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt b/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt index 8e2a7a4..1d3905f 100644 --- a/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt +++ b/app/src/main/java/com/zj365/dc/activity/OneKeyBinderDeviceAct.kt @@ -6,17 +6,16 @@ import com.alibaba.android.arouter.facade.annotation.Route import com.google.gson.Gson import com.tencent.qcloud.tuikit.tuichat.util.PermissionHelper import com.xty.base.act.BaseVmAct -import com.xty.base.vm.BaseVm import com.xty.common.LogUtils import com.xty.common.arouter.ARouterUrl -import com.xty.common.util.CommonToastUtils import com.xty.common.xqr_code.XQRCodeAct import com.xuexiang.xqrcode.XQRCode import com.zj365.dc.databinding.ActBinderDeviceOneKeyBinding import com.zj365.dc.model.ScanInfoBean +import com.zj365.dc.vm.OneKeyBinderDeviceVm @Route(path = ARouterUrl.DEVICE_ACTIVE) -class OneKeyBinderDeviceAct : BaseVmAct() { +class OneKeyBinderDeviceAct : BaseVmAct() { val binding by lazy { ActBinderDeviceOneKeyBinding.inflate(layoutInflater) } override fun liveObserver() { diff --git a/app/src/main/java/com/zj365/dc/activity/WelcomeAct.kt b/app/src/main/java/com/zj365/dc/activity/WelcomeAct.kt index 7467c21..0e1e7d5 100644 --- a/app/src/main/java/com/zj365/dc/activity/WelcomeAct.kt +++ b/app/src/main/java/com/zj365/dc/activity/WelcomeAct.kt @@ -40,7 +40,7 @@ class WelcomeAct : BaseVmAct() { val binding by lazy { ActWelcomeBinding.inflate(layoutInflater) } override fun setLayout() = binding.root - private var timeBack = 3 + private var timeBack = 1 private val timeLive by lazy { MutableLiveData() } private var job: Job? = null private val prevDialog by lazy { @@ -86,18 +86,18 @@ class WelcomeAct : BaseVmAct() { } forwardNextPage() } - binding.mJump.text = "跳过 $timeBack" + // binding.mJump.text = "跳过 $timeBack" timeLive.observe(this) { --timeBack if (timeBack <= 0) { forwardNextPage() } else { - binding.mJump.text = "跳过 $timeBack" + // binding.mJump.text = "跳过 $timeBack" startTimer() } } - if (MMkvHelper.contains(Const.WELCOME_BG)) { + /* if (MMkvHelper.contains(Const.WELCOME_BG)) { getBgImage(getImageUrl(MMkvHelper.getString(Const.WELCOME_BG))) } else if (MMkvHelper.contains(Const.WELCOME_IMG) && MMkvHelper.contains(Const.WELCOME_DESC)) {//欢迎语和logo都存在 @@ -115,7 +115,7 @@ class WelcomeAct : BaseVmAct() { binding.mLinInfo.visibility = View.VISIBLE } else {//上述都无信息,则展示默认欢迎界面 binding.mLinInfo.visibility = View.GONE - } + }*/ if (MMkvHelper.contains(Const.Watch_Device_Type)) { if (CommonUtils.isBlueTooth(MMkvHelper.getInt(Const.Watch_Device_Type))) { 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 411689e..35656c0 100644 --- a/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt +++ b/app/src/main/java/com/zj365/dc/fragment/DynamicManagementFrag.kt @@ -106,7 +106,7 @@ class DynamicManagementFrag : BaseVmFrag() { } } private val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } @@ -1018,8 +1018,8 @@ class DynamicManagementFrag : BaseVmFrag() { } Const.mainLiveData.value = settingBean - mViewModel.getWelcomeInfo(settingBean.user.id) - mViewModel.getWarningMsg()//获取预警消息 + // mViewModel.getWelcomeInfo(settingBean.user.id) + // mViewModel.getWarningMsg()//获取预警消息 requestByDeviceModel() // 激活过才能开启定是我任务 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 f5d8a8a..5fcd50f 100644 --- a/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt +++ b/app/src/main/java/com/zj365/dc/fragment/HealthHomeFrag.kt @@ -91,7 +91,7 @@ HealthHomeFrag : BaseVmFrag() { private val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } @@ -238,7 +238,7 @@ HealthHomeFrag : BaseVmFrag() { else ->{ contentData.jumpUrl?.let { - val appId = "wxd930ea5d5a258f4f" // 填移动应用(App)的 AppId,非小程序的 AppID + val appId = "wx032bacb749c0dcb0" // 填移动应用(App)的 AppId,非小程序的 AppID val api = WXAPIFactory.createWXAPI(ApplicationContext.context, appId) @@ -306,7 +306,7 @@ HealthHomeFrag : BaseVmFrag() { else ->{ contentData.jumpUrl?.let { - val appId = "wxd930ea5d5a258f4f" // 填移动应用(App)的 AppId,非小程序的 AppID + val appId = "wx032bacb749c0dcb0" // 填移动应用(App)的 AppId,非小程序的 AppID val api = WXAPIFactory.createWXAPI(ApplicationContext.context, appId) 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 cf05d98..9a65b7f 100644 --- a/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt +++ b/app/src/main/java/com/zj365/dc/fragment/MineFrag.kt @@ -1,5 +1,8 @@ package com.zj365.dc.fragment +import android.Manifest +import android.content.Intent +import android.net.Uri import android.os.Build import android.view.View import androidx.annotation.RequiresApi @@ -20,17 +23,19 @@ import com.zj365.dc.BuildConfig import com.zj365.dc.activity.MainActivity import com.zj365.dc.databinding.FragMineBinding import com.zj365.health.weight.DialogTip +import com.zj365.mime.act.DevInfoAct import com.zj365.mime.vm.SettingVm import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode +import pub.devrel.easypermissions.EasyPermissions /** ** 我的 */ -class MineFrag : BaseVmFrag() { +class MineFrag : BaseVmFrag(),EasyPermissions.PermissionCallbacks { private val binding by lazy { FragMineBinding.inflate(layoutInflater) } @@ -52,7 +57,7 @@ class MineFrag : BaseVmFrag() { var user: SettingBean.User? = null private val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } @@ -167,9 +172,18 @@ class MineFrag : BaseVmFrag() { binding.llUpGraded.setOnClickListener { mViewModel.getVersionNew(BuildConfig.VERSION_CODE) } - /*binding.mInfo.setOnClickListener { - RouteManager.goAct(ARouterUrl.BASE_INFO_CHANGE, bundle) - }*/ + + binding.llCustomerService.setOnClickListener { + if(EasyPermissions.hasPermissions(requireContext(), Manifest.permission.CALL_PHONE)){ + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) + + }else{ + EasyPermissions.requestPermissions(this,"申请打电话权限", + DevInfoAct.perssionCode, + Manifest.permission.CALL_PHONE); + + } + } } override fun onResume() { @@ -310,4 +324,11 @@ class MineFrag : BaseVmFrag() { binding.mImage.setImageResource(defaultIcon[0]) } + override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) + } + + override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { + } + } diff --git a/app/src/main/java/com/zj365/dc/vm/HomeVm.kt b/app/src/main/java/com/zj365/dc/vm/HomeVm.kt index 343481b..9f59873 100644 --- a/app/src/main/java/com/zj365/dc/vm/HomeVm.kt +++ b/app/src/main/java/com/zj365/dc/vm/HomeVm.kt @@ -28,7 +28,12 @@ class HomeVm: BaseVm() { startHttp(false) { withContext(Dispatchers.IO){ - var nowLine = async{apiInterface().getBanners(MMkvHelper.getLong(Const.USER_ID).toString(),location)} + val userId = if (MMkvHelper.getLong(Const.USER_ID).toString() == "0") { + "" + } else { + MMkvHelper.getLong(Const.USER_ID).toString() + } + var nowLine = async{apiInterface().getBanners(userId,location)} var showInfo = nowLine.await() // var value=apiInterface().getBanners(retrofits.getRequestBody(json.toString())) var dataMap = setMapValue(bannerLive.value,showInfo.data,location) diff --git a/app/src/main/java/com/zj365/dc/vm/OneKeyBinderDeviceVm.kt b/app/src/main/java/com/zj365/dc/vm/OneKeyBinderDeviceVm.kt new file mode 100644 index 0000000..85cfdf9 --- /dev/null +++ b/app/src/main/java/com/zj365/dc/vm/OneKeyBinderDeviceVm.kt @@ -0,0 +1,21 @@ +package com.zj365.dc.vm + +import androidx.lifecycle.MutableLiveData +import com.xty.base.vm.BaseVm +import com.xty.network.model.RespBody +import org.json.JSONObject + +class OneKeyBinderDeviceVm : BaseVm() { + + val bindResult by lazy { MutableLiveData>() } + + fun binderDevice(dataCode:String){ + + startHttp(true) { + val jsonObject =JSONObject() + jsonObject.put("dataCode",dataCode) + val body = apiInterface().binderDevice(retrofits.getRequestBody(jsonObject.toString())) + body.getCodeStatus(bindResult,nowData) + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/zj365/dc/weight/PrevDialog.kt b/app/src/main/java/com/zj365/dc/weight/PrevDialog.kt index 7b77487..3e3cc5d 100644 --- a/app/src/main/java/com/zj365/dc/weight/PrevDialog.kt +++ b/app/src/main/java/com/zj365/dc/weight/PrevDialog.kt @@ -70,7 +70,7 @@ class PrevDialog(context: Context, private var agree: () -> Unit, private var gi span.setSpan(object : ClickableSpan() { override fun onClick(widget: View) { val bundle = Bundle() - bundle.putString("title", "安瑜健康 APP 权限列表") + bundle.putString("title", "中健三六五健康 APP 权限列表") bundle.putString("url", "https://auprty.com/app/static/app/permission.html") RouteManager.goAct(ARouterUrl.AGREEMNT_READ_WEB_ACT, bundle) } @@ -118,7 +118,7 @@ class PrevDialog(context: Context, private var agree: () -> Unit, private var gi span.setSpan(object : ClickableSpan() { override fun onClick(widget: View) { val bundle = Bundle() - bundle.putString("title", "安瑜健康 APP 权限列表") + bundle.putString("title", "中健三六五健康 APP 权限列表") bundle.putString("url", "https://auprty.com/app/static/app/permission.html") RouteManager.goAct(ARouterUrl.AGREEMNT_READ_WEB_ACT, bundle) } diff --git a/app/src/main/res/layout/act_welcome.xml b/app/src/main/res/layout/act_welcome.xml index 43df330..66513ef 100644 --- a/app/src/main/res/layout/act_welcome.xml +++ b/app/src/main/res/layout/act_welcome.xml @@ -10,7 +10,6 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" - android:background="@color/white" tools:src="@mipmap/ic_welcome_main_bg" /> - + app:showAsAction="ifRoom" />--> -  “安瑜智慧健康手表”及“安瑜健康APP”向您提供的服务,其中: +  “中健三六五智慧健康手表”及“中健三六五健康APP”向您提供的服务,其中: - “我们”是指“安瑜健康APP”的运营方,即湖南安瑜健康科技有限公司(以下简称“我们”或者“安瑜”),注册地位于湖南省长沙市开福区双拥路9号长城万富汇金座15楼15006室。 + “我们”是指“中健三六五健康APP”的运营方,即湖南中健三六五健康科技有限公司(以下简称“我们”或者“中健三六五”),注册地位于湖南省长沙市开福区双拥路9号长城万富汇金座15楼15006室。 - “您”是指安瑜健康APP的注册用户。 + “您”是指中健三六五健康APP的注册用户。 - “我们的服务”是指我们通过“安瑜健康APP” 或我们发布的其它渠道(以下统称“我们的平台”)向您提供的互联网平台信息技术服务;我们的服务由我们和我们的关联公司或合作伙伴共同为您提供。 + “我们的服务”是指我们通过“中健三六五健康APP” 或我们发布的其它渠道(以下统称“我们的平台”)向您提供的互联网平台信息技术服务;我们的服务由我们和我们的关联公司或合作伙伴共同为您提供。 - 当您注册、登录您的安瑜健康 + 当您注册、登录您的中健三六五健康  APP账户使用我们的服务时,我们将收集您的手机号码/微信账号用于确认您的身份,在您登录账号时我们需要收集您的账号信息(头像和昵称)和个人基本资料(性别和出生日期),收集昵称和头像信息是为了在应用中显示,收集性别和出生日期信息是为了为您提供更好的健康管理意见。在您使用我们的服务时,我们也会根据服务内容的需要,向您收集必要的信息,并在收集时向您做出明确的提示。 @@ -1475,7 +1475,7 @@ letter-spacing:0.0000pt;text-transform:none;font-style:normal; font-size:10.5000pt;mso-font-kerning:0.0000pt;"> - 1.2安瑜健康设备管理 + 1.2中健三六五健康设备管理 - 1.2.1为了实现安瑜智慧健康手表的扫码绑定及建立蓝牙连接、设备管理、意见反馈、数据上传,我们需要您向我们授权开放手机相机、照片的使用权限功能。同时需要收集您的安瑜智慧健康手表的设备标识符、设备的MAC地址、设备号。 + 1.2.1为了实现中健三六五智慧健康手表的扫码绑定及建立蓝牙连接、设备管理、意见反馈、数据上传,我们需要您向我们授权开放手机相机、照片的使用权限功能。同时需要收集您的中健三六五智慧健康手表的设备标识符、设备的MAC地址、设备号。 - 1.2.2绑定安瑜智慧健康手表之后,为了提供更准确的健康分析报告,我们需要收集您或其他手表佩戴人的个人基本资料,包括头像、姓名、性别、电话、生日、身份证、身高、体重、家庭住址、病史。为了当您向我们提供非您本人的上述信息时,请确保您已经告知相关信息主体上述信息收集的目的并取得其同意。 + 1.2.2绑定中健三六五智慧健康手表之后,为了提供更准确的健康分析报告,我们需要收集您或其他手表佩戴人的个人基本资料,包括头像、姓名、性别、电话、生日、身份证、身高、体重、家庭住址、病史。为了当您向我们提供非您本人的上述信息时,请确保您已经告知相关信息主体上述信息收集的目的并取得其同意。 - 1.2.3为了记录、管理、备份您的健康状况,快速的了解您的健康信息,我们会在您绑定安瑜健康手表或其它设备后收集您的位置、步数、心率、血压、血氧、呼吸率、体温、睡眠信息、既往病史、电子化验单、用药,并通过加密通道同步存储至云服务器。健康信息属于个人敏感信息,收集此类信息的目的是实时向您提供健康动态提醒,对心脏潜在健康风险提供监测预警服务。 + 1.2.3为了记录、管理、备份您的健康状况,快速的了解您的健康信息,我们会在您绑定中健三六五健康手表或其它设备后收集您的位置、步数、心率、血压、血氧、呼吸率、体温、睡眠信息、既往病史、电子化验单、用药,并通过加密通道同步存储至云服务器。健康信息属于个人敏感信息,收集此类信息的目的是实时向您提供健康动态提醒,对心脏潜在健康风险提供监测预警服务。 -  App 使用第三方提供的服务时,如果您在该第三方也通过手机号码注册了账户,为了您使用服务的便利,我们可能会依据您的手机号码将您在该第三方的账户与您的安瑜健康APP账户相关联,并从该第三方平台获取您的公开信息,以方便您对相关服务的使用。该账户关联时,我们会对您的手机号码进行加密处理。与第三方账户的关联包括但不限于使用微信账号登录安瑜健康应用时,会获取微信账号的昵称和头像。 +  App 使用第三方提供的服务时,如果您在该第三方也通过手机号码注册了账户,为了您使用服务的便利,我们可能会依据您的手机号码将您在该第三方的账户与您的中健三六五健康APP账户相关联,并从该第三方平台获取您的公开信息,以方便您对相关服务的使用。该账户关联时,我们会对您的手机号码进行加密处理。与第三方账户的关联包括但不限于使用微信账号登录中健三六五健康应用时,会获取微信账号的昵称和头像。 - 我们仅在为提供安瑜健康 + 我们仅在为提供中健三六五健康  APP及服务之目的所必须的期间内保存您的个人信息。超出必要期限后,我们将对您的个人信息进行删除或匿名化处理,但法律法规另有规定的除外。 @@ -5896,7 +5896,7 @@ 账户信息 -  ――如果您希望访问或编辑您的账户中的头像、姓名、身高、体重。您可以通过访问安瑜健康APP->我的->我的设置->账户与安全->个人信息修改,进行查看。 +  ――如果您希望访问或编辑您的账户中的头像、姓名、身高、体重。您可以通过访问中健三六五健康APP->我的->我的设置->账户与安全->个人信息修改,进行查看。 -  ――如果您希望访问或编辑您个人信息中的头像、姓名、性别、身份证、出生日期、身高、体重、家庭住址、病史,紧急联系人信息中的姓名、联系方式、关系,其它信息中的设备信息、设备号、激活码,您可以通过访问安瑜健康APP->我的->设备绑定进行查看、修改。 +  ――如果您希望访问或编辑您个人信息中的头像、姓名、性别、身份证、出生日期、身高、体重、家庭住址、病史,紧急联系人信息中的姓名、联系方式、关系,其它信息中的设备信息、设备号、激活码,您可以通过访问中健三六五健康APP->我的->设备绑定进行查看、修改。 - 您随时可注销此前注册的账户,可通过访问安瑜健康 + 您随时可注销此前注册的账户,可通过访问中健三六五健康  APP->我的->我的设置一>账户与安全一>账号注销一>确定。 @@ -7112,7 +7112,7 @@ 我们的产品、 -  APP和服务主要面向成人。如果没有父母或监护人的同意,未成年人不得创建自己的用户账户,如您为未成年人,我们要求您请您的父母或监护人仔细阅读本政策,并在征得您的父母或监护人同意的前提下使用安瑜的服务或产品。对于经父母同意而收集到的未成年人个人信息的情况。我们只会在受到法律允许、父母或监护人明确同意或者保护未成年人利益所必要的情况下使用或公开披露此信息。尽管不同地区对未成年人的定义不同,但我们将不满 +  APP和服务主要面向成人。如果没有父母或监护人的同意,未成年人不得创建自己的用户账户,如您为未成年人,我们要求您请您的父母或监护人仔细阅读本政策,并在征得您的父母或监护人同意的前提下使用中健三六五的服务或产品。对于经父母同意而收集到的未成年人个人信息的情况。我们只会在受到法律允许、父母或监护人明确同意或者保护未成年人利益所必要的情况下使用或公开披露此信息。尽管不同地区对未成年人的定义不同,但我们将不满 18周岁的任何人均视为未成年人。如果我们发现自己在未事先获得可证实的父母同意的情况下收集了未成年人的个人信息,则会尽快删除相关数据。 @@ -7657,10 +7657,10 @@ letter-spacing:0.0000pt;text-transform:none;font-style:normal; font-size:10.5000pt;mso-font-kerning:0.0000pt;"> - 湖南安瑜健康科技有限公司及其关联公司(以下合称为 + 湖南中健三六五健康科技有限公司及其关联公司(以下合称为 -  “安瑜”、“我们”或“我们的”)充分尊重用户的隐私权,并对儿童给予特殊保护。《儿童个人信息保护规则》(以下简称“本规则”)和安瑜《隐私政策》旨在向监护人(以下简称“您”)和儿童(不满十四周岁的未成年人)说明我们如何收集、使用、披露、保护、存储及传输儿童的个人信息。请您仔细阅读本规则,尤其是本规则中的加粗的重要条款。如您有任何疑问,请告知我们。 +  “中健三六五”、“我们”或“我们的”)充分尊重用户的隐私权,并对儿童给予特殊保护。《儿童个人信息保护规则》(以下简称“本规则”)和中健三六五《隐私政策》旨在向监护人(以下简称“您”)和儿童(不满十四周岁的未成年人)说明我们如何收集、使用、披露、保护、存储及传输儿童的个人信息。请您仔细阅读本规则,尤其是本规则中的加粗的重要条款。如您有任何疑问,请告知我们。 - 本规则仅适用于我们在中华人民共和国境内面向儿童用户提供的产品或服务和我们能够识别出儿童用户的产品或服务。请您理解,如本规则未规定之处,参照适用安瑜《隐私政策》。在适用本规则的情况下,如本规则与安瑜健康《隐私政策》的条款规定存在不一致的,以本规则为准。 + 本规则仅适用于我们在中华人民共和国境内面向儿童用户提供的产品或服务和我们能够识别出儿童用户的产品或服务。请您理解,如本规则未规定之处,参照适用中健三六五《隐私政策》。在适用本规则的情况下,如本规则与中健三六五健康《隐私政策》的条款规定存在不一致的,以本规则为准。 - 请您在仔细阅读、充分理解安瑜《隐私政策》、具体产品 + 请您在仔细阅读、充分理解中健三六五《隐私政策》、具体产品 -  /服务的隐私声明(如有)和本规则后,选择是否允许您和您监护的儿童使用我们的产品或服务。如果您允许您监护的儿童使用我们的产品或服务,即表示您已知晓我们如何按照安瑜《隐私政策》、具体产品/服务的隐私声明(如有)和本规则的约定收集、使用、披露、保护、存储及传输您和您监护的儿童的信息。 +  /服务的隐私声明(如有)和本规则后,选择是否允许您和您监护的儿童使用我们的产品或服务。如果您允许您监护的儿童使用我们的产品或服务,即表示您已知晓我们如何按照中健三六五《隐私政策》、具体产品/服务的隐私声明(如有)和本规则的约定收集、使用、披露、保护、存储及传输您和您监护的儿童的信息。 - 1、安瑜如何收集和使用儿童的个人信息 + 1、中健三六五如何收集和使用儿童的个人信息 - 您和您监护的儿童在使用我们的产品或服务时,可能需要提供儿童个人信息。您和您监护的儿童并非必须向安瑜提供儿童个人信息,但一些情况下,如果您和您监护的儿童选择不提供,安瑜无法为您和您监护的儿童提供相关产品或服务,也无法回应或解决您和您监护的儿童所遇到的问题。安瑜仅会出于本规则所述目的收集和使用儿童个人信息。下文举例说明了我们可能收集和使用的儿童个人信息: + 您和您监护的儿童在使用我们的产品或服务时,可能需要提供儿童个人信息。您和您监护的儿童并非必须向中健三六五提供儿童个人信息,但一些情况下,如果您和您监护的儿童选择不提供,中健三六五无法为您和您监护的儿童提供相关产品或服务,也无法回应或解决您和您监护的儿童所遇到的问题。中健三六五仅会出于本规则所述目的收集和使用儿童个人信息。下文举例说明了我们可能收集和使用的儿童个人信息: -  1)注册帐号。当您为您监护的儿童创建安瑜帐号或儿童自己创建安瑜帐号时,我们需要您或儿童输入儿童用户的出生日期、安瑜帐号(手机号/邮件地址)、昵称、密码、性别、联系方式。为遵守法律法规的要求,安瑜可能采取措施来验证授权创建儿童帐号的用户是该儿童的家长(包括父母或其他监护人),我们会通过紧急联系人信息收集您的联系方式,并使用这些信息与您联系,验证您与您的孩子的监护关系。 +  1)注册帐号。当您为您监护的儿童创建中健三六五帐号或儿童自己创建中健三六五帐号时,我们需要您或儿童输入儿童用户的出生日期、中健三六五帐号(手机号/邮件地址)、昵称、密码、性别、联系方式。为遵守法律法规的要求,中健三六五可能采取措施来验证授权创建儿童帐号的用户是该儿童的家长(包括父母或其他监护人),我们会通过紧急联系人信息收集您的联系方式,并使用这些信息与您联系,验证您与您的孩子的监护关系。 -  2)其他。在您和您监护的儿童使用我们的产品或服务的过程中,我们还可能会收集和使用其他儿童个人信息,有关具体的处理目的、方式和范围,请查阅安瑜《隐私政策》和具体产品/服务的隐私声明(如有)。 +  2)其他。在您和您监护的儿童使用我们的产品或服务的过程中,我们还可能会收集和使用其他儿童个人信息,有关具体的处理目的、方式和范围,请查阅中健三六五《隐私政策》和具体产品/服务的隐私声明(如有)。 -  3)如我们需要超出上述收集范围收集您或您监护的儿童的个人信息,我们将再次告知您。请您注意,对于我们无法识别或不会判断收集和处理的个人信息是否属于儿童个人信息的情形,我们将按照安瑜《隐私政策》和具体产品/服务的隐私声明(如有)收集和处理用户的个人信息。 +  3)如我们需要超出上述收集范围收集您或您监护的儿童的个人信息,我们将再次告知您。请您注意,对于我们无法识别或不会判断收集和处理的个人信息是否属于儿童个人信息的情形,我们将按照中健三六五《隐私政策》和具体产品/服务的隐私声明(如有)收集和处理用户的个人信息。 - 2、安瑜如何委托处理、共享、转让、公开披露儿童个人信息 + 2、中健三六五如何委托处理、共享、转让、公开披露儿童个人信息 - 当我们委托其他公司代表安瑜处理儿童个人信息时,我们会对被委托方及委托行为等进行安全评估,与被委托方签署严格的保密协议或个人信息处理条款,明确双方责任、处理事项、处理期限、处理性质和目的等。要求被委托方履行以下义务:( + 当我们委托其他公司代表中健三六五处理儿童个人信息时,我们会对被委托方及委托行为等进行安全评估,与被委托方签署严格的保密协议或个人信息处理条款,明确双方责任、处理事项、处理期限、处理性质和目的等。要求被委托方履行以下义务:(  1)按照法律、行政法规的规定和我们的要求处理儿童个人信息;(2)协助我们回应您提出的申请;(3)采取措施保障信息安全,并在发生儿童个人信息泄露安全事件时,及时向我们反馈;(4)委托关系解除时及时删除儿童个人信息;(5)不得转委托;(6)其他依法应当履行的儿童个人信息保护义务。 @@ -8219,7 +8219,7 @@ letter-spacing:0.0000pt;text-transform:none;font-style:normal; font-size:10.5000pt;mso-font-kerning:0.0000pt;"> - 其他更多信息请查阅安瑜《隐私政策》 + 其他更多信息请查阅中健三六五《隐私政策》  “我们如何存储和保护您的个人信息”章节和具体产品/服务的隐私声明(如有)。 @@ -8358,7 +8358,7 @@ letter-spacing:0.0000pt;text-transform:none;font-style:normal; font-size:10.5000pt;mso-font-kerning:0.0000pt;"> - 其他更多信息请查阅安瑜《隐私政策》 + 其他更多信息请查阅中健三六五《隐私政策》  “我们如何存储和保护您的个人信息”章节。 @@ -8429,10 +8429,10 @@ letter-spacing:0.0000pt;text-transform:none;font-style:normal; font-size:10.5000pt;mso-font-kerning:0.0000pt;"> - 我们非常尊重您对个人信息的关注,并为您和您监护的儿童提供了访问、复制、更正、删除等数据主体权利。您和您监护的儿童可查阅安瑜《隐私政策》或具体产品 + 我们非常尊重您对个人信息的关注,并为您和您监护的儿童提供了访问、复制、更正、删除等数据主体权利。您和您监护的儿童可查阅中健三六五《隐私政策》或具体产品 -  /服务的隐私声明(如有)详细了解,也可以通过本规则“如何联系我们”章节提供的联系方式,来反馈和咨询相关信息。我们会在核实您或您监护的儿童反馈的问题后及时与你们联系。请您理解,在核实过程中,我们可能需要您或您监护的儿童提供安瑜帐号、身份证、联系方式等个人信息,以便在完成身份验证和问题核实后继续响应请求。 +  /服务的隐私声明(如有)详细了解,也可以通过本规则“如何联系我们”章节提供的联系方式,来反馈和咨询相关信息。我们会在核实您或您监护的儿童反馈的问题后及时与你们联系。请您理解,在核实过程中,我们可能需要您或您监护的儿童提供中健三六五帐号、身份证、联系方式等个人信息,以便在完成身份验证和问题核实后继续响应请求。 - 安瑜《隐私政策》是我们统一适用的一般性隐私条款,其中所规定的内容包括信息安全保障措施等均适用于全部用户。本儿童个人信息保护规则是专门针对儿童用户的产品和服务的隐私保护政策,包含对于儿童个人信息的特殊保护。 + 中健三六五《隐私政策》是我们统一适用的一般性隐私条款,其中所规定的内容包括信息安全保障措施等均适用于全部用户。本儿童个人信息保护规则是专门针对儿童用户的产品和服务的隐私保护政策,包含对于儿童个人信息的特殊保护。 - 湖南安瑜健康科技有限公司 + 湖南中健三六五健康科技有限公司 安瑜健康 + 中健三六五健康 检测到新版本请更新 下载完成 diff --git a/common/src/main/java/com/xty/common/app/MyApp.kt b/common/src/main/java/com/xty/common/app/MyApp.kt index e84fbb3..1dc8b4b 100644 --- a/common/src/main/java/com/xty/common/app/MyApp.kt +++ b/common/src/main/java/com/xty/common/app/MyApp.kt @@ -146,10 +146,10 @@ class MyApp : Application() { fun initUMengSdk(){ //设置LOG开关,默认为false UMConfigure.setLogEnabled(!BuildConfig.isRelease) - //友盟预初始化 + /* //友盟预初始化 UMConfigure.preInit(applicationContext, BuildConfig.umengKey, BuildConfig.umengChannelName) // 支持在子进程中统计自定义事件 - UMConfigure.setProcessEvent(true) + UMConfigure.setProcessEvent(true)*/ } /** diff --git a/common/src/main/res/layout/service_none.xml b/common/src/main/res/layout/service_none.xml index 2a5bf78..1791aa1 100644 --- a/common/src/main/res/layout/service_none.xml +++ b/common/src/main/res/layout/service_none.xml @@ -17,6 +17,6 @@ android:layout_centerVertical="true" android:layout_marginLeft="@dimen/dp_20" android:textColor="@color/col_455" - android:text="安瑜健康"/> + android:text="中健三六五健康"/> \ No newline at end of file diff --git a/common/src/main/res/mipmap-xhdpi/ic_logo.jpg b/common/src/main/res/mipmap-xhdpi/ic_logo.jpg deleted file mode 100644 index a44ec3dcae7ccb5a09ba36dd8c693a04ff58ac07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22664 zcmX6_bx>Ph6QwO$+zD>QEeWp0Ew~hy06~kjK#Lc5mjo?Zpg6_dEx5Nh1&S3bZXdt- z{&@3dGI`nL-o3l$>^YN2O?5@w*OaeOP*8A{mE^QhP+su;cVVJGzruINeg1sIa#b?? zfPz9!_}}$ngymcc1%)0(Sx#E_Q`S*CRu;AV&C?U|5J_8i)xLC?cqgfZsT}zBWr*rq z0yNSK#jaPRgqpKe=KlVqolF_*G3SDcbo#%RGl zEMj#tPwy^1PUw2Qd-v|@<3#<%&YbnPZ>?n$6XF-MIvUNW(t#g~tuHbtQQnS{ps*#V z+ejPbl7w4Hg`-%!)va*mNR?&%{E&3^G8vktfMP8QR=KG2xmc90z+_6%-%*n#Tnn1`c|^DTfpt|iiFYd zB6|Vf+u$S6G|)>H0sME$*o{Agvt}9Tv6gssN)d>UFOowJ6j59qwedrGH>zuC+v^_1 zoIkTJz2mZfIS~3B+b4;~8jHL-Y0gn40k9w9isdX6(!Ru(afB8xh8^YZ-hW|eXsEe9 z7FXr^?r@@9I6m2+1h?skdpyyKpJTei(J{|mu`*ZES=9$X_gj+WwxW&HV-r#&Da&6rIcYJZ4WP== z=7C|cyO&2G1Q=uu#D@NYW!LFw$>hht;!e$;FDF!F()erxWKf^ihmxf30tW>d-&k&u zgMa2H$u>M{MZzWFLG{O4~Kchz*@`=B$cp(*YdDXuqML#9{9FhPQDtKbDeGZ8X;E&BJqmLLf)!h$5$7@rrOWG_t;#>(*?;i6 zEL=3iWjw2%ciZ3I!I zzoy!%aA}N*r2afDRYcY_1U3ov%$`Rz?)Wo*sZ+fCs6xmSJhI3i*=h6acolNFl0 z@~tAoa*+c%KSA6Z^(oZ%MpIt`FUtMgLYJVgpBB|AkC+S^?Xh?;Bd^!T)<7?5{;t2D zQ~j)swyB{O(+C42e__s_Z6XLaJ`&Kg2*qo7#XUa$1+leH-`Xbg&o~n$RJ)zYfx{uHjGYtu#VY6y9BlM6Db*CW(-WZ7`|kcTC*^y zj8o7}X!rN%%M7Y5KRK8z1tT&eMP6VFdELLG+Ka<&X{1$1ueT%2>tzp^B_sdkFVqBg zbCSiBy?RSWt+4UpPce}*2054sieY%fN$>z=kvqJ7PDL)XmJA|3_HgoZdNpP<(wm#I z`pY$39vHP4W^7hyu!QNPn0uJF*g!rUAse`P=u}ckXauVP22CxZ*4Rgqj`z148##l20drfMsH-SaH-Tl!IMLW=9 zb8^-xoE$(Afv5*4gY=Bl4)c7yLzFntqE@Uy{K|>C}~?* z<`aoJnzy`T3}!G~MDaEP!3B*$rfa(bE!ixz$ys%HyCZn%9HJJ9G+lvKya>e&R&wiD zfs4y70&XhV>2i<~Hc*yv=X*Jndp}&8NLSW?tJ=q)ScJIEtc07p{$qU;e91sy5TJST zy^~5E2X``B!-05a9VKZwS)`*Hv!@@)U=C?d(tVLk?J%&UyW-4NrTP84K+UiTu%Nde z`5C60I%tYP8TFBE65F;H2b2PW4)~j>2SzXbJ9|wrRutctXu#8-sST{{f@j1v+ib5F z7kjQlVLKGf@FGF?6UV_5f;%_&-A+uRn#eiimUsObf6dG}?i;$XZT^0(5Sagosk zxo{CZ$yn=X04o|{&!%Q!uiv9VQz&j@09OP;XcQMMb&e~OOqGYr)DC2~NE~?fS&xL2 zleeWb+Tt+^QKz0o48Bu3(V!pHC+V)zrzn8xC+AM=8q**GQ-dj!lN1uLkLv(vtMFCL`oh=t z_fG(7uG%p@GUUN`VP-_vHl=68m}EG`Ps_{Vr56j3C(DXT5LoD>$wYhp=ul ziyD)R0`}oOv(0x+V~emouATu>1Q}=@IxuX(*j?q%b)6cG$OzLernibEEhgi0I43kT zxBDu1fK~%deL)UZN6)9bAL+;0IQKRvuRfR?zb^???hPy1bC(IZp=yS^0aaO@Ii^~q zh{EXK9g#P?Bzhb#te4)S#+4=NeeTCG@#9-NJ4Wuw2g8r>yKp-?$}I{RKPZ4>T+!3Q_8leG6?U$>Q#$WR)PSs9B{Y?yf>` zzzFwWN8=QnpROu>9wnXSsIBGKdj2wu%pXixSY@A=?7`L7qU*P2A%v*TV4I=0nIG!? z2Ae|Q&XO%%vR;C`?l(SYw@?a7>))B1b2E2>sEuTfGAu=VQD9`zVL})4nx03Yj}sQQ z{QtFkmA?g~%*--uLT$kCH7zNcK|j!=Wr9FqoYAGjsrt z92`e_8;+4z+DJYgH^79u#|cvyQ)0KmYl_{m#MWvN7_5BGvwI94Yw9UV$IDFQeVM9v zq+#BdUn-tH4A?Oo7KTep5K<#TFql~zDW|Q16t*H`zpfu%qcX1qqLuQ(ibB4ACe3&L zjPqb_R>g)I6rFZ%=FzpNY^~+lE03d0`Qc`9O<}3lmC#B8L+$2TEsw0b%`!#IVPqq^ zj#bu>R-%z|kk;StCiKKHJ87Oy0x$R1Bg03u;8L%8S!v*PeeG9FmAVgsqG+M)NU6Fo z%_wU>FF#s*Oj`V=e`5UkWN@B8p%de0a&f(7dcAfCk(FdDcHtrF$OSL5vCYj?My_04 z{7jxs6ppsx_<2@FOxG4El(B~wm|JX)vdR-94?+-3$1au``?WKpo{wA*J96TP&O z?7*Na?RX5HMfQ#wt&SC&9WNJfl?>)JOZQJvYRg}9A!ZBiJA$0NUkV{3;HmMI; zeNRGOcS?(otlD{*hR5YXk?xPdjVr$|+)H+!aRw!e4{SDIk|kn;sVhDO_d+ibZYFKh zq4FLArN>BC22279>cHR^R*pEV?=uh-&LjtKcwbjf@bJJIBA3v%;Kd1>g_!0gssliuN^n*RPSns@`8Oa4;e zNOj`vG;@vgktb3GnE^H&mAnmT@s1eooU62HeW{;tY5$-tB&bT)CI`PR;FA)Lf9&s# zMxoyfgwP!h?|qS)>uNTXX%&J#%*CK2?J>M^k@_Fmxwm(~+}twf0uzg=Gqv9!os@|t zD)w~4U{>r7fg;+<3}M={m~c7Q>5$@a=TA^C;`_=vu{vkOC|dvL8_n!*aXxk2rv@b8 zW@Oxt+@NxBueW)6%WMCqwh}sLU%A#4kh{R2rgPZXln(z1tN3Nz%I&8WzMjG{z{BNW=?6zAR?bMRx6nwIvb#3hlNB zT1l9>zC~7Ya|E{Ts)v@MCr@4Cv-Xk%Yya8!Kr#HV5|Weq_}xvjP$at^DN5u|Sle#J&5L4;zVPIm8US zGn0+YoAW3ULkW;_r_Qmnb@6A`MM6k{f_;bM%3B+oEgWoPa{&lrpI5F=#n}Mc*w5`E zlbQxYt}D+lLH5PylPsib8LskG%CFymm`F^42d0uE=7nzZcGx5^*tbbxkh$~wG-+K?#IX9-xO!N2AsQ5#q$UZO^gLons+E~#6OtXA{*8j{@jqsbB-jEwC&pu>pkwmCi` zp}YR5@l?RRrdyJ5)0A&LVI9}!G`oIVeuULExVDPNdN(Z6m=GZ$3>?Gwk{p5Fxo_(~ zH~8oi>Kbm!gY3|X0>J%BH%Y)u+VaR8VXxxKPZBkCSRK#!?b=k-8fn43)&j3dh5(a8 zAsWcZ_!*nyzadu|IV}FUHH^hr{`EnAS1L#^HpNxWz8DJ?F>V;ltjs!cN$0${M?~Of zmf6sn$8O8}6TbenBH>4pF}NkVBNTSDp{56H^;?iOCA|BYF9Jv$4jQsk`Y|9H=JB8t zGkKgk1>PewA$)2uc3<9tD)S z&|+4o9nQ8DCzeYK0@w1SiH2UD-^@fvmsQcd55~aFh_%u~@^62Ofs1V2Kh0MLy9TWwETFQO#&;(5LSAi8w+(Ue%C|%UYGnF>j{S%8Bic>XW>h8K)xYo? zk0k#r0y*QP(E7P5&%m0VGA#b${gW>k0V6r+raD8)I!px)MFR7#`3b9B4={Bn?%ZFqtj_2mmJ}-pAOFKOf zm^V9%_{mu+P4Ly{E514&?pp(YL29BpC5q62#45U>ky{z-DELFw2oYSrk|yzFKT*&? z>SLHI(geB5A@!>7Pz=L3LT%W1*S3il(tm=mw8Q(?6DW$`84KM>GqtHbRwV;7A=?P{ zxL`sWQ#-PXOUxb3PbJ%ZF$%80WF;%$U9O*^z(IoSli1eaVjJd$)}KH4Z(Gey9J8P- zf(+ZmL_Dw{S>BLjC@jPfXq=X=8gp|y`UpFOkJ%#Blr$`gqYwRt&k9d{GFbZzJ(0k}1E!>T?t!(-^yyJVYr&K8DA4nEk< zoc{JZYUxRAvdl2Oq0aADw;iTB+Wlmal(1M(sFqpFfFQKyV)n*qV~y zvA!)^5k`X&Nu6%5hr}7(g|ZOE!x=bZeq*a1EOop`c?LCm=eWI5ZNG&LR*q@8sOT#cTeZcSn(GbtE3qlYBg zJg;MhUEYpL?$2K;jB{_-{ovF@?F>VBeXv!|f3y1h5KgVu`r^h~tx>TK09>rc7W_`@ zcq@#-=2)2n2c%&G1nc>~?1wOafi`6GshL@N?!ZbS!j(?G)1mjTzuR*Bo7VrjXj(4< z;m|8*q@|u>FUln=A8ju7fXMgdfrV`C1|tar{?5OqVDCs^BBTwyd_>8z9=hM}b_vCH zR8TNOzcJqC43TR3fn|P*k)B2oTrb`_!q2hQ@cL*nui#O#AKT^~t+x##sx?n^hhlaC zBOo!6^r#ECwfMkgH!}Fx;5d%vaC6)E7VSKYQKHv2k1Jkqf>9B-c7T3Vt^JtRm*|za za;9n&T6FnTr{USFEX)nJe8@aV9T$)D-?B1LN8S3R3G(+@O{ZZ$@=T7!q6+STpS$sL z2PGek#oRp!Zf{O@Hm369L|BWZqI5}MbM>8tk4_PScUhm%jQfyr!vV2F2G8S>AYxY9f9o-?e=0Jo#=K&Z`aAqg z!SqvBcv1IM3<&G`#;x&Mps?lJ4QLu1ffPBVAJ_gO#n%LH)+Lf_bHgG5e^={~OBv>< z9VP}x>jRiIkcYL?0^3#rthz|yhOI=GwtK#Hd^IJ$tFN{(@EX*D{Wj}jv$AJaimL`u zDu;_~xKGZ0c{ut3cROSi)u8a7x$yonkOZ%RD#jpwNFP!RM!@@j^|dvWphRKmtdwG* z%AQO}Zk0HH6XO%U+|m-HE6VIS!G<-$u@;}|1quV< zU*Urgb+qT%8%!Qk(kunvJVyj;ycC!|w&9kdR#@>WXK@YZ7;mPIR+#2tq6S}{SeqNh zzoE4(cj%%IEHJj&Pa@)k@e=_ac;6FnCTk%lRXu8W@%??4HvhB~)$3K?uh9J5>U(T3 zMLOZZA7nmb-CGP(Z=&{cnP|Sl#V#A&5To(}8d`Vtb8Sz(mnkzBZS9X~k1XXG{tUEw zV-Fo5u=4z1Rk2wo+KPTEOltF!9ww;pWS*5yoc?L}>q9`BHQu3Fqv;Q&WCU@< zt~8@>0nC_QG?U|YeGIbiW%fOqKRh#~VnbkSO%p*>d&+|RuD2ffZwEos&WTVwp-(d!~&Zh`7Q(vIihM3m%ddP zEM(+8vuALnl;N!Q}(x)Aqh=ne3MPNTf3h6@%+ z-SpU3u6#0#Nd7~L_`MN5QQvk=of5V zdwA~R5-R@phJw?{-=fz&S?p8Xl^F&Yox;n-N`yI>&xbggs#BvT(XMg`TmE|6)iQcV zAwOjhhXL~kNNGE9WHyb#BD#gT&Wdf1N=#(FZguO+5oh{O9y3qZt(eH_o9TYdgG6qI z2S?g?)9#qmDSe+=1vg>S7KAkI39XcGx`76vX)5P93?-3`C9wM4&@|e?Y z|0`k&`a$_}0bg`q1-Si_i(nD=wh?B6?Sq^s+GrFJT)h2H2nmERm3CQR-203CrDAkM zCOVaM2bYGuAMSI%|6{rB8(kj!BX_yVDZ|f6+f*9^5dd5L$hP^CjGXqjg`AM2!|ezj z^b7wy=X`63l_D`QwLQ$p2};Bn&l@9y%kKV^{07an$YE!v;jL7gYYAE$eooDxv0}3s z^ZwcS`q_YyJZo2w8!0qm0NanS6K?kJsffzc&cW`kuV|`M>%(ahE?oj=+TYXnI;jg= za|Q2R#YVFK~NSR$jnaZh8}V5ASdVpgObmPo=S)2x^=f?!dJ_CGb)ohMLYg z-F8)B04uC4*wsDZ<|fr9>Uh;r0xfs(mcdQR2!Z4!Q#DX{$1A?*PDGn40&va}0k%-~ zrw_jjvx1qhbcB73KWL{l(69Q@;UA^OwjCezinU9YFVK<;$7m?Cy@o)LF zP#!R-(C2=I9XBdx@LfFp0Vm0VFCyS@KQwry#(vzI6LLjOJ#I4)i64JIwBDIk)Av5e z&Qhy_E91g*?wspcJ?^o7%(_n-2A9}5NN9fUz`2Yl-=Z(OrwSE|g z{eUE*9pSOc)#UA-4Sm@B`P$%}edTjo4b|B5Vl=eu`%v9Xo$nQ$;l~Rv0phZXg3W( zEcZ?CRhmDu-iO4Wau5q}a($$|ZgFj-GH352EEJIkf$6{ob;9Pxqrb3$LEVmu<$X6;DnP4OOO~ID4)=VzVq8h72mNezGfxM4$SZ z3Jl)jn&NxiMJJc8nx#e2iD9LT97@P|c^S22j+MMSV#E0D=En#~*w!TV8h}Niitye} zjGHQn>BRWa9%td6AcCE%hgP|IcC1!yX^=yz^0W*ANb`^{uW7zAHx~xC><9f+K}qFB z?%~vBUAvA7p&$F9hU%FAGAX=#G_ZpuUG^$}1nX3>y$AeTg@|P$E*AMsFf^_fwTrnW z5Ehj}Iy(3p&;Y*&yv0xAjLd)5JbHUCpW9es=Do!z`yYTLQ<&}jLl^LR|1usYer~@U zvW&Kaqpf~#u=H{Vzjq!Q(7M@xEYSy8N@d9z!wzkPZ4qDi|H;GnC{+G5LB4@ta-;7I zMGnFzx^9o|EN(iOes1Zelm?6$9-j&c`l2WX=P7*(+ef%D%5n~xVTzodW`;P&wRBwf zBe%7G@(Gu6z+R@&jYUfDPFbNCbrFAyTq4)wSUB5fCuBXN#;~%jK z1dDq_bruxKz~E6}? zqc_F@Ycfq!fxP=J-_8k_eRi41mu){IVwRsJQSUOy{M?zCluq7{4%`x!<&SyU$?jcgY=~UeJ_ohlO{;TX?zCfRJGs<96=7K8{qkw$B8POl za=tIdYOTKW*&y(LF92>qBa_3I4RZ4icIQJ_XbrixWops0Ub;ko&Z=?Ml|0d@z~y*M zO8z#RU!CXzKG%6dc0pmtO>czJHBl_sRdH@5*=*}Y7kHBK`5! zqh#1tlvK=SOKEJ>1aI~qKGFv%4isZdbS!B^FI{Z+eNEga1~Z(0y`vm%+3>1krdj;+ z2qyklKC8&EB-io+OfP+58Z?H@zIUV*wyDzj++f95u(8fh>V`1#(yWVY+1@zFbyWII z(TFx%@4mdq@G6a{RhhWhQuO93s(06+e`lGHZrlRsC_GAvKbXIt`YKFB)=3**`T*kt zp&S-#A~fyKp8#zSm=8FX)`$$4nOOCY!2<`6Q*tmj0rA;F%;@oZe;k0K{X45r)3g5ERuGl5baJ+ZM_L;Xn-o2U;0g>@l{t`;F8OnK1Yv8OL*8u z_!uj9YP0mmAx^YC*2Oj1ZUXU{q9ao4+5=tafYS!1Q+x0&6gI`dbkaKReC-_}#J|-o z+lIz-R%LY7$MyIpfR70#n&8clO;#tPN8m_L(dYkg!HvoZo&R&u^G>h(hhw$fwe{FP z{>ECI9Jo9;dYPUiuUMv29OUtP@1zpncma)ZN!UH7%ZnrFkJ`wrh({qN82{m)G5+(f zSKn#>K)H<3hHZ-ml9R*%=yI)`*HSsR&AhWXi4Cem<0OK7y&Ev zMP``!(!Up3$;Z+Df45)4UdL0lPFpTh5}CY~RxW`91%cT_V0|J67?qf}1?lC@W{bo1 zUL>ArE+X*3+&H*H^S-)rn;>SoKN(1bTQe=Rr8<4b)&N`^o`M>}TGYBOe{~-*ct`1_5lJeN3mvqAIkECA{Ye zJBY{3(;%Y|zFH(d=5I444*;Gu(he(Zz0%98E4QjeDUsainX5MW5~FzL90q#Ddv)os zisrqc;QxU%GZBC16t_u#+TydKZwJ7#91P9QRg;MKw1RPnbGS3O{RV9@li@$Qeh+A# z!+#SEFO_A|)8^&J8tG-O~=cI`F5p-n#SBb3ed~FB*yEiH|He1 z$#2Q38XJ3lqDbmSF2AtY{Q*^1(^DYk?~TLKQ_YMv+|RG>O6i<+f-2OHB(cFx<(_nW z%ACgGmILMuf|K};YpXA>=JdNOK78YthHNGD9afCfUiTD=Ue6w~XB;I?9E@LiM)Zab zwIk+xKwXx(fN0^es?s*z59dkIhAOhzx1smfWzLetIKw1hY(|EhaF8irwt7m*H1U|(F?$62=c0jn9cQ7R| zo$CFO>L_J`T`D{!R|OyK1#JFHZx;~8Ii?mzcRis^V3#Q&RLQ^cf6&7J8S~ z^X5Xp)!8(*2+Pt?3}utBF50)bx>kj~%x-ZyRVU^1VBc0LqsFRb=(p#-H51@xDyq=WlqewI4NzkdF?0!QREs3*PouRdBskYW+(Nf9xCSTlSRLv2*m@1vH^dH_fj zhmg3@tggwgS)5-Fe#O49(+I$bRT!$Hr3V06&IK008iu4^MC^1gJ0^_M;_jHu8>p_J z2ZT+Ys`bJ|L`z1Z@)pD#?4v{q;uzv=N+kKd6J9q&BO+Ul2*B;va!33hM!@yP$PRry zJlvaRKAts<^Rm%A#x+*KR)e>egknE`ZiE)FT3qb?{X+};FZvSkD4Bzdz`wVHKR>o$ zTzWm&dk`ymlT4P)uUZm17V zBrMR1O;YeY1-Q=R7Xxgn)~1mRMq1XOIqRg4^q26<7Z#uh>Mxt#3MN*v`?*m{OanzJ zH>E*&)=9c+h@(I+i0fbhxs`##LG{K&<@Fq=)nL7ec$V3oRN|B#g^Z5BM-6zrX3vhY z((rH!GaiP)+LA4U=YSb{&nT#PVAu_z)K-qUaJnkF=+#2iQ18|Ib4J3IO9?w%^LehQ zckQe7qBn7Ld1;C!_Mf8tXUYA;FWK2ECzdXq6cfdAov#AXqmw%Xr6ycE)cEJm_9_>< zE*38~p=tYa#d^I~Mkn*J{}RbkY~?i#GU3ByU`o$u!`&`ENLBvAl7ui0_oJlnG;ttz zw#12p3mtW@3_bsRc5oixNq7<>p-&==ZG0K=)bTxoM#+cz2dj*vWWgkkqh#>{USrq0 zn!;FN&uGA)|BsonVJJ&`j~DsGn7B_#9n_sj z|Ex;}>jcYAit^z+&9L9p5D6!Xs3HA%$F&R12gGE1Pw={B!0A9)Ka)=)WxN8dd*NDN zP44g1ueyG{&pt_+6UeGW{(s?Hz>rUY?E(bLWVu{rP;}{aFLXDEJ12Avp=sIxuoG=MR!kZ|tu1DRJ{5!P1EPNqVE2GOT@vr}o5KMBpPH zLg|e4i>|6~YDxg0Rn5qxHA`oPAcOt0OrVA6aN_lKPV@UbKEMbkHs4NlW%n8F;a^J} z>6AZrslG;{E2P&^@lgv@!LT-xa7T&Z8`ZI(Nr&5UA*^5TiXCI)51b4q46*?6w5XfV+}XA9t5N z&*YO4QCK6pmey!24!&BT*m$>l-^v-7yn8ijzJfBS5QH3qhz#He=q;FibT-)w%98Wp z@r(kv$Qm(ln82%O$iYVz&W6a3&MIxt9sSH8!9MsB0}STRPAoD+J+}4fybaK|CH$2# zbMM@nRA!eBE9&CcUVtC@Wujq7RH(X+I65pswqI@i%}n-yk&Q6I3a+Cz{LlGR)T zB%@sa!4z#JWDJCK2~;5Rlub~F!DCV)j>n)s-m@UY(cxocQ#$PAe5_4dx8Jm*_l_-O zd!=BoUCZ-I6dh#7_jWDO-*g?m z)hhJAVZ{jhXsfsjO*82u%N!R|qfzNgD&;q_YkRC^jzW0K;QIj!ZblEu>b~u&g`>yP zV`+hZvZVt?a=y$zU4D#jN_e{_1=c{IU4}AMWE{~QU-TaBjz{|Em>QuLBn8&UJ(+`> z)oX^oV`OaT(D{-)I0;$}%zP;B`L+Xzt!zE6;D+uy6%e9)0(dV<3}q41@z6Yxvu$<# z5y~O^Ug*pB&#GfGnuFKjM|WloobM-L?ErkkhH|dL3sxxLEeZDUr8vMu`JAaiejr4n zyc>3zYhnaho@X16DT=)LGbPx+dy4isg92=nwS+8-`om%Ud8P3x0SZ|bm4Icn`2|$iG-(X zMpfjMsq+Wfrm+r?)x%n7lWe7`?Y9hHI^T*~9J7ln#eOvnWJhHNzB|f=h0228XMfuA z4BaZ9O5y7~q+aUh-a=8gG7+W>@4LR{SO45ImUv-jRircQ?jK#P$jQjT!5>9~2A~mM zo^;Qyjl+n?cqcZwt4Zp*x2K3DHkf%SPjEZ{QlL?G2h)ShC9Vb<&=K)^cp5TwG}*;% z2$HLnk&}P2V%p)I=^Xb)BCopDK72!nN)nB-%mZESjw~=~SK6rj{cDq3vR9x3HRzRZ z@;OmktHaI>CI_&MXx755!Y7b_-4F`GsX(hXA?&~Ao|Vvt&PzwuEc!VK^X;dfYs419 z#6EnK>7|kz#3h3o6Siq6njbDP$g{E6Dl1eelq(5;VgS^hnyOrfFI~UrBlFdiO!}1S&f%xqg%I$}W)noB?|~-jv9qd@Qd00k z6!anZ_-|k`>Ta`Vm}{WO+$Uah0zq87==yu?SbX0H311hr&$)0Dd~yxv2>-{2%l7Ij zMX|~gas!=@y;EB!JsbL;`qy0Ga5qmxiM*X`Knh$dNATWZNhGDz!vfRD=j9}Q`(c&uM~WO~WDx4v#X#kU_YJHqbooWB1Qkzx zN(4EFf8ypVgf&Y4o;#+DALIMnLT8#Rua3wU1&>|@L$d&?X-hp$?ZB*>9MLwCd7Qf6 zwI4?aQLkx4zqO;pn~{mFA#D2Bdr%=WO#6XwHzeV}>brmA8_+QOsD_#%av_`Fqmkbb z_Hy}|2=9`sNTKv4qX0Uj?`InEMn|cSxH#P_t(hgbZ|_9|+RYFoE<$9VC$xo{?-zqE z+q)FUX-ASqArEtk!Ta{LDH zq4s@_2*di3F0Ij+Wo*PVUoc;uL9PBaJiCbe;K)IeYwjo^?*!Y&D*&O8o^P{{XkzgH zQ@}lF|HUWFg{LW`QI7mvmJoTsI^Ro#y~U*^JU|Ci%=p`QELMIU2h&3|BAZNMq|(Is z#L<#p!?ZA&wW4&8v$9Ty5x`d%eMkpW&nSfd!$`}xV@a%k_`UhW6*@}%mTVqC)se$v zH1k~r$=lz=y_u=$YR)7WZd-?c_pCheAzC+Glm4*jyXwIBIsR8?;lq+OzohyUFc!0) z2N>x#eI-7JrafySWr1H3*$fH5KR+OhFjV4qNK1Zv;u9>qRnGF{`BLRaPJY#jwwuC$6G7c2h z*oi|;1eW~{*-Zy0?gbbO*a!}jrTyS`P~Y4jp}R!w1G%jEy*2r#a{q9@cd~a=lY+eJ zxa2ASJFC&zD;lHnIBP&gwZn`*TnkDTq41PUsHzLZnsT2ui9v5hS~tPpVB9n_hSC8< zPrrNw=Wi_Bp6Vj#pEXvIA(L2>tLCcqZ^Fmlb|#*O&6g$~`-~PTz*mq6#IzzS!DzQ7 zA$V&Za3i`_wJ$C#P_nP)VSp6gNz9eLf3U6XniZNTA_Hfq^z2jRI71bDMfwa_-aOnUvu%0B^=k>l_@g(`%I zp^aaCe8_rnk__AUuzvd2Yh9hMB(M1Y?T+?ESq1zBP={UB1nQQ-EvfhP@Ibu73fXw4 zyThzS(}FK;LLcg8GdbWCFS@v3%aL?a`J844cS-$RurG;8JDCLOx`bfXFwl#>mxja= zJju+kDSq5CA0kOK2)|HnCfs|A^ zDNkG+PUbX5#B>4moJh1Y3 zHtNHEoi!qLFS*z|ITPXNbGLpYlv2kz#RYC=;U~e$1+Uk<_v!E61}Rtq8dFGmavvT< z2bDXjkikg6U#4&xA%@bt7)2mmVQ93&vm=0=6;?Q{ye9hW9luzqJY%}ZjV(;^w;pvy zzGh7Sv^A?>AXx;wy(z8mS?{HlY6$i0lz1hZSdBmDedM8U*6635FYjR|m%Z?cs;U+B zuW=(<&S0@)K|f*xsgOtc2_2W_>TU1>wgyiIF1bcoIOipG;IB*C!g1PAFUt*cLsD?u z=aVK`aYnk?_Jr%$YND6+;c!DNxJ{`>P3{-?9)RaeHBn^?lz#17ZDWT?soU;;+?Y$| z_-O2s`w>!R)i=Iz@1{ZrAgWrUDqN5Bi<52{uM+^jv7d0vT6k4uUIWR(SdZjP|8lT) z9LWevQN-Pij^62+orYd-UixKFJDk<~x@yxbyR9zUY5ev8vr3!lfPbj`+RDb~|BkGM zyKxaZx?oZQX9R>xl(#9q7NryFZWa>oGYDpUt z#|pivy^Pw-(37Xl<9yE5M-L6c%d6#dp2%Swa%-erm2Qz06fQ98WEtm4UD$$btTZ5t zHJ9By%lw`eDe`!FG`V{`r>CQXk_XIkF?Gvp;`Tq%RP4ccXM%ZUQmsj-kjQFi1^O{7 z`vcrxRe|^?MJ-rcNJoA%+)Hzl=4%0~fwD&)B-+s7VW`4BmbD)2Rl;Hh&Pw$s2-2B^4;; z@v)b8S0g-rj9w$@tg4vlq(TCt-)D&O!DSA#WuWN!ZQYW+fGhD@Js}D@uwT&iYL7k= zdKta-Z9VgqtR@521Vj%mhrQEz`#Al9e~s#N`^`CSqjV&B<5Ar2gTYMi3|NlJaL#dT zWPBU`2>c6ZTJq!GbV(?4^rDx~%P8pssTNlTCmHry_5t3XSK*v#U0%V`YU>zmSD)jN zZEY0|`|+~H83Hg0cpN=gXMInTvD>%b4rYZ>a}K#=I(;ea=h{$HBFl1uW!OWfm44HI z5E$Y(0ATgRFSvX$H~$d1bC+JIETOp)@3dNk%MzRQ`CpZWx~wG$aei*@a;-6`LY~c9 zpuSv0Z)EkkJXuoKDCBb`VTXwx-j#V_7P-#qG3)VBU@pzECQWnFyags%M+adJLWss$ z|Bb6$8ueMYpTnJG_V=$pIJ$qg*Ciz+^@e3pxa(f{+ZL4tZuD`(^k2eoxxg9cYo#VI z=A6AhVVsvVA&$13=cDE+$H4*DOpKR8_J?^b&i6)UUtbq2{yGYm`sk^=TO42#b)fP& z&&H_bA;Sb#3zz7$!!rRpM#1Q;Mf|qfX{rq~SmHwUeDEU3mSod;wD_44!B4@{(5A=i zib*mY&^9Q!h7tAym`8oS4sce~>BfMO%@^n9M+OQ2=hmj~ZTL(41+!r+eN(zqIgaIs z=1@L~$9+fru2*G0CVv*^Jk~SM$!88P%d_Ltt&*&05YlR4-c_}Su$h$Z}W=c6oktaWc?qdNRfq1U6EpEbAVD3^Y=U_rm?@%hmPQNrmni9aWFCy^q`eg(R@PU@_gzZ1BTevzNkMGxn^^SB|{5K6l_)5A!ho%1zOu{`Objo9xW54m_KS zi4Bp&t>c9|1qoQs9+`Bwh*mCCDjG^=%8O>UYAU5}xp62phm{(NHg(OHP+l{^lf}(b zA>l9l^C(>B;U9!_cR{y|C-_m|X8P{~vKfgNEy?#nR3T`6RR2;vfBn~S=Y^#B+!DPp$A6wB4HACMjxf9hOaLDw*8Hz8R(s$kuic|Jy-!>^Mj?o{=*PriTW z6%=nVcUobZtEgbTG$hy^^*yfl+9>TmC(#+qn-vde`b%VI&$N2RuJS#vgJMhOd2^=N!;ne|`xALQhX%(#-x50z! ze?#j?e+j>+$N~w6qM%SP{`bEC2t&DupmgbAy+-saQA*=bv@dN<2ao>p++TBh{uB#4xK2OmFlCP~Yzh2?~UjVlkNaziNLFE8;CYJ%?Jv9ol)ffdoR5WUuzf#j~;JVbQ;id zgjp3cj(J=zya}nju47uja17(2gxFA~=sHM@n0-xtiLrI^ONNB(`VHF@FPTw~7_!b- zpgH9Aa+%>1nRJZ=;c3*olY(N+_GE4u9D*&oo3#6xh=Ml~vlGFPXpJfBR_V603r7bzrhVrC{Z!Z9)9#+YUBCZt--xPX};RR)=-ikMkWm+i2a zQLVBhi5b@~>*)1D3S+Ss(k`43Gtxeg!eVAi?tcfwOg&#Fy>7e^=fw;M1@Hdpqa*qo zaESMV_d?oCQZi<6G1ILtRmDur9dB%ewSN8d*qjJRtfJ|;Rn15)U^c_*kXHy6Wn5+= z#mugm%(}qtKk_qx ziy0TN1d!=7nI}}t2m!OP^4aT)SIo==%$qJJ!5UTF8~GXM0+wL7n8|ggxtOUg zkD-`x11t{Y9Qcuoh>IB)uq498Os+fg#caMRZFg%g+h_<*>}tyQ3KugjV2sQyF9m2P z&v;`8c8i&iqGIOMe3?#)nP70etPCd_!V@TRm{2~K+yc{OZ@+fBvZ9=vgw=0F%p%Pc z>}5=J#ta=XOUC5C@rs!fLzx=Ow7JnZY(!@zg4i=IUs|4TjlkYPt$-~UU!9a=N!H}Q zcIE$1)a1YNqDDD)qw?I;)+|e1>T5~6UUI!?UIO(byK;JM4m(-cWFEkMV060r2ce=c zKf29?in631laoW4)caYj4=~FtnS;#L^?^>tj7TBMYrT=CF9PZ&hFjh#t zkD?zeoo6L-nxkDkiW*Srg=H~m%7nUUA7Bkg%PCNf01I6r~+1ekyeI4D@ zW9E>qYwSspK_bQljKb!lt(q^tGjDnd9U(iG#7wX@lQ|c&Sba+xw6j9J*?Nk4oE+@F zxUjL0(d!y}Qn-Loc(eJq=F62cra%d0y0CPB)ghmXVg{6{{UM2BroJYK2PQQrCK(1P z2iVU}Xx$SWI$7AFxL5qT>GMSENim!P2lYliI5$15FcPfdk}6_`TV;?!Vn&KFyLI7g z%|7dnYJU_tG?cxLpb|4KU8>0Xq@@T3j4za3sdueZGelJT(>nbEAx8ca|`Ea)~`Q$ocBIjAPWe7 zFiFU`fEnNq2H_vO_iHw~bjD=3rKTdqj@Ev-n8|gsi`ic4SF=pjnFFbbnGGf#5;Y~ZC zE6B4?Sj9~o+aGyaxPY19=5?EiO-bYr`whWqI~GX?F|#{h7KzvTYgQ0@9Z}Pf$9=_v zG-%ruTX495nE*8SeWmFcdogFC|+p5_62WjvV6TbdZ@&V zUnlcCeE1mr8@c7>47iAm%0FI9-q=R$9}b2`;Yc$dx5WZVHU0S2%N05FanP?aisnZFv3~w= zn?@}#GU~O82iZgpf5mo$x{z?)dG1`8RjW-6EwjC?9d6*^61L;@=0IIRfnKqtT)=Ds z`MjRLWGO73Sg%_k5;Bxy?00((h@Al(bLa^fI3#BOd+G$ZX4)jGaG`tpr#%PYt^-H; z-E@G6fE7vwYov+`nB5@1*Z;okLZW{Jr=`0W-aC36{@L8d#moXuh*^c#1D_pN2`eYm z!;*>hhWD_kvm3s$=>tAQ$U$96uXH3@hk8#om5h}HB)(sr^87y|I-N0Gz!C^)nl?`A z^S2}XhbMVNd|z4EtlYSmaREypC@CUuMy3}iWa4+7d?xKw0v9tbUhYTg3 zB20rw6MN7FOxJwl!~@DcfwEC>QkR!_;A%?Xb(19upVVW$-hpQ4=4JA=Nh*KYwSNqs zeQJZOFCKZHDo~Zmxhpl>1NX_ z$j-^^3zTHO_tyKoM>54g!-jZv)zrY{ruRUCG^xif0JxsCSw)@?x-$9_B^TriyYl&0 z;DJSRp{9tO_q(dFfT!WHk>maV432~}1rCe^VSVcjHN3(sS33EC2@Uv|n@}WU#LTPRu$TrxhcDgB1x7?Biri+_5 zBRL#S63E4T@LAX*wID^^G8C|~JRiSz91bV3==#5+LKYFQ%_|onQ>;aAt@6&aoI3-TXs(n=Dwg~j|iN>lnrLa^(!ADVjlU}SVOWlv&D zdv{77AIEuISy_=3I{GyQc3i$#(}V=0W+aNr7d(6(+;rrgZ6Co`cOQmT9~^{d52R+K z`P*$BaQBDJ@Wei6Qw{AJ9CEaLPJE0nh*@85Y{5_%TFe$0qOh!--<~w%uzvvd4Ua?* z`u8WhU^tX|R?bi`EdJXUboSVIhSe0t<$}_jT-^z5rG+eDQasp;w6m)#Eap~Nnz8Pr zb~NjrF74>ClLJHIqKEo>^fzkqnc?N;Q=)jH1utuFmmfap=@b8MIde9;9oh!{Eq}&A zpXKjD;qchK!5Ktlf!g<_>4pq!yL_=iz|?B=jNZU*8DxbGbassOYn?W{+|doAf&ibb zDuq9HMmhwZJJt?MYGT%O@0k(!+O|l3vS-ep3#GZrOuVG;(dUz)FuYih2ScGSywuVT zANCK5+srA>Gr0$_vGP5S4k^ierAiy({|NW%X6y;hp4ZPYrd{k0@f#sMjiP`{tF4UZ6$g z1GmD`iuX^RhJ(XrVIUZU%f^+#r^^b(zhCVMK+kY2Jfmy)jJO?I(BEoE-^=Abyz?Mj zw`mVNd7=~E?;8{s^fy|!dQU9(fB%`0Xx(U=A|VXtl$VGicW+%K%<#Cx@6r0J3iII8 zlWO7o>T+=%THZZzT5(kWXg(F)KF`DR)}=d@Y@LL30n^(^4flnm2OHYjVK_7b6%dB` zRb_B~Rf+f+Ehu%2j1Ue-*9(N^80mZY^FMq2;=gx|D}xu8%o3MX6@}uuhmWqjG2 zQh0PUy3ZxPYzUTrLCaOJx1F%g@t{7$OPSFO5nG;L+B0 z7#s=0&6OqMx&<{AP$mfCx@YkTTf<>-9a@0oPa=FTe@4sCr_{sO7tDZZs!XU?)Ky38+0b%AT(|vXM|9na`s(D~AWq!W z6_>IUK{Tv10wy{0pEWA2rj-Bkr84WAkHeWzP+TsotrU;c=k>t5A09 z_E1E0(ZA^PdD$LfS)4S&odu=FDZ5&>U49;$fJywws6-SO7A`K~k4lQN_P{Y14TZ$z zP**QJx4TJP{KIFW>;Jkh;-f;MB(KvGF!lHH=bQ4$mbfq53yZTo;x^U6iXSgf$A zW#!zVpMrD^48il=J>U)n#pR1T_eGaSTiT-QA8(HMr;sSg>o!R1aF77X-^&6fe@69m z5yCIfx-EVE;x-leK2f01-$-~!(7wNXa(%SEudd$~{d-CMxG{1^Gn2}q64k^VM0Bk$ zFqjw8&PZ&kV!XV{I_ArV=V# zE^*yM2aYOcOBy^IguAxyjh5F?8nL?N&uDpU<92a7e4o2t+aP|2>Z>U5fgps%&*~Z0VcZ9{_+K(h5LL$)3_O z2>15zM=3@4?fxU+8XbiquLu70$*VL6wdLq>xbls6#lP1bX@SKP>fry(oDARCxexrK zqj1rSZ@`_641K|n7=`owDUFby;}!RFVM6npV{Ncu?JMxv3FF1je?E3X z%=M4<`TD{+;=1r?SllP9BVb0~-#2>--1`2`=;trao@)AH^BJI01OZ@frB3GyE@FbP zo@RZ4(ahXZk0doN3^A>&g7-?M2Q9KYxgh(uzR43Eamz@LSeB|d?C1wE@A3U%Kn8Ye6i9R*nzZi`qudRbqZLRzf zvXRdI0cHWq^?H~D2#Jnap^6uy<|IvUAKi06{1-J%Y1?s96n7R(XN(=q0$3%*qZ-0A z1Xe0+70b3r#0si-babZk_vK4Ozt{wwCZXN5jEul%t1IA{3(g(ump%<~!8v+Pdo90` z#$+?$A_Xq$vGmRD$fz38}0#*x5X7kEL_ehl(g2qd7ON_%A%a{@`J*50lq}V;1D^su>SuIfi+?aN-s(FdIgp$I>^qqXT)`%sxY*ARO&%2hT8{ z=8A>gpSl_v%M%lGm5H?W2H=7>HbGaA59qcHL4eYNLbFyE*d<;x-fRFdql95XI1a}?1b~Lpa{Tx2-sh8b)XFo=lQ zIZ^_C(*x~Lv+{6H7i9PM+j>lyOwj9vQLh((`xH4&A^?;Y6j*64f)sLfPdvSide|;t z5D~EwmPvB;;6i4eQMVg{C`^T?_~zJ2e8L6N$Q?^Tsw_AnU@}rJvB#|LkA$qPF94$f zKlhO_BDh=-^mrhQnwW0hyyRHL1yuzFP@5lD*wc$vh6kC!Q2~QEo0K^1g9C87KLFmr zLEDcpQ$a#DiYzj2m2p@Q1jx(Dg?cRMphe_yjh3S8&EU9z$t-$89y{@ugF z&^g!--r-@M0hR&e^dIqhK|sDT?)2y22mpCGIZ){G zm5G{}J;OuLclIoVN6zxNG6O`XzsC!Z#hw0R4)I-gf!FJWvOJ$|c2tYBNWx{92HH*% zDqu2FxCIijMkmTYGa7=kp%9!M9fc8TqSR103`0DKF-jOsRx5-d@pqr&C@wd6r5`7^ z%MC@@IpE21Lv^lWQ_!L2;x9L^T*QyMlgG7g917y)V4vR@{uxkw_Z z0wyB~*(y7mmK+Yp5n3eSdM25|C6f{YCL{G&qR@*Q%trHbI2=cLQ4%f3dlt=*QUZn} zS!Fj!$rHJlaX5)*x8$o%32Tc)$_g0H(l@uuLbf8_crp%$qYG*tz9TI!q^fA)q=kUt zNW+xQk;DxBTf%*39FA#_b>)}D3JvqwwRz>DW9fDo(@wzjSo-GnT$F-e`WpY6!x`%! kp^~jBe>zxJOaQ?D52bcZXt8Uoga7~l07*qoM6N<$f*RlKf&c&j diff --git a/common/src/main/res/mipmap-xhdpi/ic_logo.png b/common/src/main/res/mipmap-xhdpi/ic_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3146e71a0db0517d6ad6d4477fbe870b670023ec GIT binary patch literal 5356 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

;wZoZ0MO*u=%99al6X3Fy#B(6xY%g}K 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 N83{%4DpBL${{u&hKrR3P literal 0 HcmV?d00001 diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml index c30f27d..130d80f 100644 --- a/common/src/main/res/values/strings.xml +++ b/common/src/main/res/values/strings.xml @@ -182,10 +182,10 @@ 参考值:0-2次 睡眠平均血氧 %1$s%% 参考值:≥95% - 您可以在安瑜指定合作机构或安瑜商城购买无创血糖趋势监测服务卡,刮开加密区即可获得血糖兑换码或扫描血糖卡中的二维码获取血糖兑换码。 - 您可以在安瑜指定合作机构或安瑜商城购买尿酸服务卡,刮开加密区即可获得尿酸兑换码或扫描尿酸服务卡中二维码获取尿酸兑换码 + 您可以在中健三六五指定合作机构或中健三六五商城购买无创血糖趋势监测服务卡,刮开加密区即可获得血糖兑换码或扫描血糖卡中的二维码获取血糖兑换码。 + 您可以在中健三六五指定合作机构或中健三六五商城购买尿酸服务卡,刮开加密区即可获得尿酸兑换码或扫描尿酸服务卡中二维码获取尿酸兑换码 - 欢迎来到中键365 + 欢迎来到中健365 同意《用户协议》和《隐私政策》 @@ -550,8 +550,8 @@ %1$s]]> %1$s]]> - 安瑜用户个人信息保护指引 - 非常感谢您使用安瑜APP,我们深知保护个人隐私的重要性,所以请您在使用前,仔细阅读并充分理解《用户协议》和《隐私政策》的内容。\n如果您同意《用户协议》和《隐私政策》,请点击“同意并使用”开始使用我们的产品和服务。\n谨记安瑜健康数据仅作为参考,不作为诊断依据。 + 中健三六五用户个人信息保护指引 + 非常感谢您使用中健三六五APP,我们深知保护个人隐私的重要性,所以请您在使用前,仔细阅读并充分理解《用户协议》和《隐私政策》的内容。\n如果您同意《用户协议》和《隐私政策》,请点击“同意并使用”开始使用我们的产品和服务。\n谨记中健三六五健康数据仅作为参考,不作为诊断依据。 同意并继续 放弃并退出 姓名不能以数字开始 @@ -582,7 +582,7 @@ 温馨提示:“疾病”分析,并不代表您就一定有疾病,在身体太过疲劳或熬夜、饮酒等因素影响下,也有可能提示您是“疾病”状态,这是在给您提前预警。请您及时调整生活习惯,注意休息,如有身体不适,请及时就医! - 温馨提示:\n\t1、通常情况血压越高越危险,达到中危就需要引起足够的重视。\n\t2、安瑜手表血压数据仅作为参考,不作为诊断、治疗依据。 + 温馨提示:\n\t1、通常情况血压越高越危险,达到中危就需要引起足够的重视。\n\t2、中健三六五手表血压数据仅作为参考,不作为诊断、治疗依据。 总佩戴:%1$s天\t|\t活跃: %2$s天\t|\t休眠: %3$s天 %1$s %2$s @@ -605,7 +605,7 @@ 课程名称 课前体能:%1$s 睡眠状况:%1$s - 安瑜健康 + 中健三六五健康 发送 新增运动方案 diff --git a/config.gradle b/config.gradle index 3403a64..bd500c7 100644 --- a/config.gradle +++ b/config.gradle @@ -12,12 +12,12 @@ ext { wx = [ - appid : "wxdfb4ca8985c049f8", - appSecret: "f00beeca6a5ed3f07455af9a153817a4" + appid : "wx032bacb749c0dcb0", + appSecret: "" ] umeng = [ - umengKey : "63a587d3ba6a5259c4d8b0cd", + umengKey : "", umengChannelName: "android友盟统计" ] diff --git a/health/src/main/assets/安瑜无创血糖趋势监测功能说明.html b/health/src/main/assets/安瑜无创血糖趋势监测功能说明.html index 2168126..ae59759 100644 --- a/health/src/main/assets/安瑜无创血糖趋势监测功能说明.html +++ b/health/src/main/assets/安瑜无创血糖趋势监测功能说明.html @@ -419,7 +419,7 @@ mso-footer-margin:49.6000pt; } div.Section0{page:Section0;}

޴н޴Ѫ5< mso-bidi-font-family:'Times New Roman';line-height:150%;font-size:14.0000pt; mso-font-kerning:1.0000pt;" >޴ѪƼʵѪԼн޴ѪƼʵѪԼ20% 4 ʱʹѪѹƸ1 ݣ¼òʱӦѪѹֵɲ󣬽롰褽 APP ѪѹУ׼ҳ¼ݣȷύ30 ӼѪѹУ׼IJ 4 ʱʹѪѹƸ1 ݣ¼òʱӦѪѹֵɲ󣬽롰н彡 APP ѪѹУ׼ҳ¼ݣȷύ30 ӼѪѹУ׼IJ

4 ʱʹѪѹƸ1 ݣ¼òʱӦѪѹֵɲ󣬽롰褽 APP ѪѹУ׼ҳ¼ݣȷύ30 ӼѪѹУ׼IJ 4 ʱʹѪѹƸ1 ݣ¼òʱӦѪѹֵɲ󣬽롰н彡 APP ѪѹУ׼ҳ¼ݣȷύ30 ӼѪѹУ׼IJ

\ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/act/BloodTipWebAct.kt b/health/src/main/java/com/zj365/health/act/BloodTipWebAct.kt index 3d4e5dc..c458b3c 100644 --- a/health/src/main/java/com/zj365/health/act/BloodTipWebAct.kt +++ b/health/src/main/java/com/zj365/health/act/BloodTipWebAct.kt @@ -22,7 +22,7 @@ class BloodTipWebAct:IBaseAct() {

(2)中午12-14点

(3)下午5-7点

(4)晚上 8-10点

-

在以上4个时间段内各测1组数据,把用血压计测量的时间和测得的血压数值记录好,进入安瑜健康APP血压页面——血压校准,填写相应测量时间和数值,并确定提交,30分钟后系统将完成血压校准。

+

在以上4个时间段内各测1组数据,把用血压计测量的时间和测得的血压数值记录好,进入中健三六五健康APP血压页面——血压校准,填写相应测量时间和数值,并确定提交,30分钟后系统将完成血压校准。

②、高血压用户血压校准流程:

在确保血压计和手表是同一个手臂,且手表有电的情况下,主要根据用户服用降血压药的时间进行校准血压测量:

(1)早上服用降血压药物用户

@@ -45,7 +45,7 @@ class BloodTipWebAct:IBaseAct() {

B. 第一次服降血压药后1-2小时内

C. 第二次服降血压药前1小时内 

D. 第二次服降血压药后1-2小时内 

-

在以上4个时间段内各测1组数据,把用血压计测量的时间和测得的血压数值记录好,进入安瑜健康APP血压页面——血压校准,填写相应测量时间和数值,确定校准,并确定提交,30分钟后将完成血压校准。

+

在以上4个时间段内各测1组数据,把用血压计测量的时间和测得的血压数值记录好,进入中健三六五健康APP血压页面——血压校准,填写相应测量时间和数值,确定校准,并确定提交,30分钟后将完成血压校准。

四、关于血压校准后仍觉得不理想的情况:

请将当前校准后仍旧不准的情况记录下来,采用在当天该时段不超过10分钟内进行血压计测量,再重新获取其它3组觉得不太满意的时间段的校准血压,以组成4组数据,再次进行校准;如果仍未达到满意效果,建议可以多次做模型校准,以获取更精准的模型。

""".trimIndent() diff --git a/health/src/main/java/com/zj365/health/act/Health24HourReportAct.kt b/health/src/main/java/com/zj365/health/act/Health24HourReportAct.kt index 44facbb..497f231 100644 --- a/health/src/main/java/com/zj365/health/act/Health24HourReportAct.kt +++ b/health/src/main/java/com/zj365/health/act/Health24HourReportAct.kt @@ -31,7 +31,7 @@ import org.greenrobot.eventbus.EventBus @Route(path = ARouterUrl.HEALTH_24HOUR_REPORT) class Health24HourReportAct : BaseVmAct() { val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看","去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看","去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/HealthEstimateActivity.kt b/health/src/main/java/com/zj365/health/act/HealthEstimateActivity.kt index a594d06..4f8acb5 100644 --- a/health/src/main/java/com/zj365/health/act/HealthEstimateActivity.kt +++ b/health/src/main/java/com/zj365/health/act/HealthEstimateActivity.kt @@ -29,7 +29,7 @@ class HealthEstimateActivity : BaseVmAct() { var userId = "" val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看","去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看","去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/HealthMainAct.kt b/health/src/main/java/com/zj365/health/act/HealthMainAct.kt index df761d1..9f32b76 100644 --- a/health/src/main/java/com/zj365/health/act/HealthMainAct.kt +++ b/health/src/main/java/com/zj365/health/act/HealthMainAct.kt @@ -43,7 +43,7 @@ class HealthMainAct : IBaseAct() { var id = "" var sex = "1" val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/HealthReportAct.kt b/health/src/main/java/com/zj365/health/act/HealthReportAct.kt index af207df..91bd6cb 100644 --- a/health/src/main/java/com/zj365/health/act/HealthReportAct.kt +++ b/health/src/main/java/com/zj365/health/act/HealthReportAct.kt @@ -30,7 +30,7 @@ class HealthReportAct : IBaseAct() { var isDemonstrate: Boolean = false //是否是演示模式 var isEstimate: Boolean = true //是否是评估 val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/HealthSkyHourReportAct.kt b/health/src/main/java/com/zj365/health/act/HealthSkyHourReportAct.kt index 3376b87..9701057 100644 --- a/health/src/main/java/com/zj365/health/act/HealthSkyHourReportAct.kt +++ b/health/src/main/java/com/zj365/health/act/HealthSkyHourReportAct.kt @@ -106,13 +106,13 @@ class HealthSkyHourReportAct : BaseVmAct() { private val mAdapterCount by lazy { ReportAnalysisAdapter() } private val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } private val shareDialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能分享", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能分享", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/HealthWeekMonthHourReportAct.kt b/health/src/main/java/com/zj365/health/act/HealthWeekMonthHourReportAct.kt index 2a70132..802145f 100644 --- a/health/src/main/java/com/zj365/health/act/HealthWeekMonthHourReportAct.kt +++ b/health/src/main/java/com/zj365/health/act/HealthWeekMonthHourReportAct.kt @@ -186,13 +186,13 @@ class HealthWeekMonthHourReportAct : BaseVmAct() { } private val dialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } private val shareDialogBind by lazy { - DialogTip(this, "需绑定安瑜健康手表,才能分享", "去绑定") { + DialogTip(this, "需绑定中健三六五健康手表,才能分享", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/act/psychological/PsychologicalQuestionnaireAct.kt b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalQuestionnaireAct.kt new file mode 100644 index 0000000..0552f55 --- /dev/null +++ b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalQuestionnaireAct.kt @@ -0,0 +1,17 @@ +package com.zj365.health.act.psychological + +import android.view.View +import com.xty.base.act.BaseVmAct +import com.xty.base.vm.BaseVm +import com.zj365.health.databinding.ActPsychologicalQuestionnaireBinding + +class PsychologicalQuestionnaireAct : BaseVmAct() { + + val binding by lazy { ActPsychologicalQuestionnaireBinding.inflate(layoutInflater) } + + override fun liveObserver() { + + } + + override fun setLayout() = binding.root +} \ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/act/psychological/PsychologicalResultAct.kt b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalResultAct.kt new file mode 100644 index 0000000..cb8c9d8 --- /dev/null +++ b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalResultAct.kt @@ -0,0 +1,30 @@ +package com.zj365.health.act.psychological + +import androidx.recyclerview.widget.LinearLayoutManager +import com.xty.base.act.BaseVmAct +import com.xty.base.vm.BaseVm +import com.zj365.health.adapter.psychological.PsychologicalRecommendAdapter +import com.zj365.health.databinding.ActPsychologicalResultBinding + +class PsychologicalResultAct: BaseVmAct() { + val binding by lazy { ActPsychologicalResultBinding.inflate(layoutInflater) } + + val mAdapter by lazy { PsychologicalRecommendAdapter() } + + override fun initView() { + super.initView() + statusBar(binding.title.mView) + binding.title.mTvTitle.text = "性格测试总结" + binding.title.mIvBack.setOnClickListener { + finish() + } + + binding.recycler.layoutManager = LinearLayoutManager(this) + binding.recycler.adapter = mAdapter + } + + override fun liveObserver() { + } + + override fun setLayout() = binding.root +} \ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/act/psychological/PsychologicalTestMainAct.kt b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalTestMainAct.kt new file mode 100644 index 0000000..f50b38f --- /dev/null +++ b/health/src/main/java/com/zj365/health/act/psychological/PsychologicalTestMainAct.kt @@ -0,0 +1,36 @@ +package com.zj365.health.act.psychological + +import androidx.recyclerview.widget.LinearLayoutManager +import com.xty.base.act.BaseVmAct +import com.xty.base.vm.BaseVm +import com.zj365.health.adapter.psychological.PsychologicalTestMainAdapter +import com.zj365.health.databinding.ActPsychologicalTestMainBinding + +class PsychologicalTestMainAct : BaseVmAct() { + val binding by lazy { ActPsychologicalTestMainBinding.inflate(layoutInflater) } + + val mAdapter by lazy { PsychologicalTestMainAdapter() } + + override fun initView() { + super.initView() + statusBar(binding.title.mView) + binding.title.mTvTitle.text = "心理测试" + binding.title.mIvBack.setOnClickListener { + finish() + } + + binding.recycler.layoutManager = LinearLayoutManager(this) + binding.recycler.adapter = mAdapter + mAdapter.setOnItemChildClickListener { adapter, view, position -> + + } + + } + + override fun liveObserver() { + } + + override fun setLayout() = binding.root + + +} \ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalRecommendAdapter.kt b/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalRecommendAdapter.kt new file mode 100644 index 0000000..6c16ec0 --- /dev/null +++ b/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalRecommendAdapter.kt @@ -0,0 +1,11 @@ +package com.zj365.health.adapter.psychological + +import com.chad.library.adapter.base.viewholder.BaseViewHolder +import com.xty.base.adapter.BaseAdapter +import com.zj365.health.R + +class PsychologicalRecommendAdapter : BaseAdapter(R.layout.item_psychological_recommend) { + override fun convert(holder: BaseViewHolder, item: Any) { + + } +} \ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalTestMainAdapter.kt b/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalTestMainAdapter.kt new file mode 100644 index 0000000..6ce5667 --- /dev/null +++ b/health/src/main/java/com/zj365/health/adapter/psychological/PsychologicalTestMainAdapter.kt @@ -0,0 +1,11 @@ +package com.zj365.health.adapter.psychological + +import com.chad.library.adapter.base.viewholder.BaseViewHolder +import com.xty.base.adapter.BaseAdapter +import com.zj365.health.R + +class PsychologicalTestMainAdapter : BaseAdapter(R.layout.item_psychokogical_test) { + override fun convert(holder: BaseViewHolder, item: Any) { + + } +} \ No newline at end of file diff --git a/health/src/main/java/com/zj365/health/fragment/FragWeekReport.kt b/health/src/main/java/com/zj365/health/fragment/FragWeekReport.kt index 7c9bcba..8118873 100644 --- a/health/src/main/java/com/zj365/health/fragment/FragWeekReport.kt +++ b/health/src/main/java/com/zj365/health/fragment/FragWeekReport.kt @@ -104,7 +104,7 @@ class FragWeekReport : BaseVmFrag() { lateinit var mWeekPickerView: OptionsPickerView private val infoAdapter by lazy { DayReportInfoAdapter() } val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/fragment/UricAcidFrag.kt b/health/src/main/java/com/zj365/health/fragment/UricAcidFrag.kt index 9f22430..260dd18 100644 --- a/health/src/main/java/com/zj365/health/fragment/UricAcidFrag.kt +++ b/health/src/main/java/com/zj365/health/fragment/UricAcidFrag.kt @@ -86,7 +86,7 @@ class UricAcidFrag : BaseVmFrag() { val fomartStr by lazy { arrayOf("HH:mm", "HH:mm", "MM-dd", "MM-dd", "yy-MM") } private val weekStr by lazy { resources.getStringArray(R.array.week_day) } val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/java/com/zj365/health/fragment/XinlvFrag.kt b/health/src/main/java/com/zj365/health/fragment/XinlvFrag.kt index 693840a..67ff9df 100644 --- a/health/src/main/java/com/zj365/health/fragment/XinlvFrag.kt +++ b/health/src/main/java/com/zj365/health/fragment/XinlvFrag.kt @@ -104,7 +104,7 @@ class XinlvFrag : BaseVmFrag() { } var tip = - "人的心率在非静息状态下会不断变化,属正常情况!同时,不同心率监测设备采集心率的方法和算法有所不同,同一时间通过不同心率监测装置出现心率数据偏差亦属正常现象。安瑜心率变异算法会将采集的心率整体变化趋势与不同状态下的正常心率模型对比,请您及时关注心率变化。" + "人的心率在非静息状态下会不断变化,属正常情况!同时,不同心率监测设备采集心率的方法和算法有所不同,同一时间通过不同心率监测装置出现心率数据偏差亦属正常现象。中健三六五心率变异算法会将采集的心率整体变化趋势与不同状态下的正常心率模型对比,请您及时关注心率变化。" val tipDialog by lazy { HealthDialog(requireContext(), true, tip) { } diff --git a/health/src/main/java/com/zj365/health/fragment/XueTangFrag.kt b/health/src/main/java/com/zj365/health/fragment/XueTangFrag.kt index 607e3cb..4457e2a 100644 --- a/health/src/main/java/com/zj365/health/fragment/XueTangFrag.kt +++ b/health/src/main/java/com/zj365/health/fragment/XueTangFrag.kt @@ -295,12 +295,12 @@ class XueTangFrag : BaseVmFrag() { } //重点提示 R.id.mTip -> { -// var webUrl = "file:///android_asset/安瑜无创血糖趋势监测功能说明.html" +// var webUrl = "file:///android_asset/中健三六五无创血糖趋势监测功能说明.html" // bundle.clear() -// bundle.putString("title", "安瑜无创血糖监测") +// bundle.putString("title", "中健三六五无创血糖监测") // bundle.putString("url", webUrl) // RouteManager.goAct(ARouterUrl.WEB_ACT, bundle) - tip = "安瑜无创血糖技术是通过人工智能算法,建立个人血糖模型,计算得出的用户1个小时内血糖平均值。" + + tip = "中健三六五无创血糖技术是通过人工智能算法,建立个人血糖模型,计算得出的用户1个小时内血糖平均值。" + "更多的是反应用户的整体血糖变化趋势,切勿当血糖仪使用。血糖异常用户在建模完成后请第一时间完成血糖模型校准。" tipDialog.setHintContent(tip) tipDialog.show() diff --git a/health/src/main/java/com/zj365/health/fragment/bloodlipid/BloodFatFrag.kt b/health/src/main/java/com/zj365/health/fragment/bloodlipid/BloodFatFrag.kt index cd6c562..c9a9b07 100644 --- a/health/src/main/java/com/zj365/health/fragment/bloodlipid/BloodFatFrag.kt +++ b/health/src/main/java/com/zj365/health/fragment/bloodlipid/BloodFatFrag.kt @@ -81,7 +81,7 @@ class BloodFatFrag : BaseVmFrag() { val fomartStr by lazy { arrayOf("HH:mm", "HH:mm", "MM-dd", "MM-dd", "yy-MM") } private val weekStr by lazy { resources.getStringArray(R.array.week_day) } val dialogBind by lazy { - DialogTip(requireContext(), "需绑定安瑜健康手表,才能查看", "去绑定") { + DialogTip(requireContext(), "需绑定中健三六五健康手表,才能查看", "去绑定") { RouteManager.goAct(ARouterUrl.DEVICE_CHOICE) } } diff --git a/health/src/main/res/layout/act_psychological_questionnaire.xml b/health/src/main/res/layout/act_psychological_questionnaire.xml new file mode 100644 index 0000000..dc145bb --- /dev/null +++ b/health/src/main/res/layout/act_psychological_questionnaire.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/health/src/main/res/layout/act_psychological_result.xml b/health/src/main/res/layout/act_psychological_result.xml new file mode 100644 index 0000000..03d0568 --- /dev/null +++ b/health/src/main/res/layout/act_psychological_result.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/health/src/main/res/layout/act_psychological_test_main.xml b/health/src/main/res/layout/act_psychological_test_main.xml index d829e29..0b1f094 100644 --- a/health/src/main/res/layout/act_psychological_test_main.xml +++ b/health/src/main/res/layout/act_psychological_test_main.xml @@ -2,6 +2,15 @@ + + + + \ No newline at end of file diff --git a/health/src/main/res/layout/item_programme.xml b/health/src/main/res/layout/item_programme.xml index 992f8e8..aec7f03 100644 --- a/health/src/main/res/layout/item_programme.xml +++ b/health/src/main/res/layout/item_programme.xml @@ -34,7 +34,7 @@ android:id="@+id/agencyName" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="安瑜健康" + android:text="中健三六五健康" android:textSize="@dimen/dp_11" app:layout_constraintBottom_toBottomOf="@+id/logo" app:layout_constraintStart_toEndOf="@+id/logo" diff --git a/health/src/main/res/layout/item_psychokogical_test.xml b/health/src/main/res/layout/item_psychokogical_test.xml new file mode 100644 index 0000000..5d8d242 --- /dev/null +++ b/health/src/main/res/layout/item_psychokogical_test.xml @@ -0,0 +1,30 @@ + + + + + + + + \ No newline at end of file diff --git a/health/src/main/res/layout/item_psychological_recommend.xml b/health/src/main/res/layout/item_psychological_recommend.xml new file mode 100644 index 0000000..0a3aa66 --- /dev/null +++ b/health/src/main/res/layout/item_psychological_recommend.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mine/src/main/java/com/zj365/mime/act/AccountSafeAct.kt b/mine/src/main/java/com/zj365/mime/act/AccountSafeAct.kt index cdb07b4..b882598 100644 --- a/mine/src/main/java/com/zj365/mime/act/AccountSafeAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/AccountSafeAct.kt @@ -42,16 +42,16 @@ class AccountSafeAct : BaseVmAct() { } private var destStr = """ - 一旦您注销安瑜健康账号后,您的安瑜健康APP将会被清除账号信息,请知悉并谨慎操作! - 注销安瑜健康账号前,请确保您的账号符合以下注销条件: + 一旦您注销中健三六五健康账号后,您的中健三六五健康APP将会被清除账号信息,请知悉并谨慎操作! + 注销中健三六五健康账号前,请确保您的账号符合以下注销条件: 1、账号处于安全状态 您的账号没有被盗、被封等风险(最近15天账号未在其他设备登录) 2、其他关联用户解绑 - 您的账号已经解除对其他安瑜手表佩戴用户的关注与绑定 - 3、安瑜手表解绑 - 您的账号已经解除对安瑜手表的绑定 + 您的账号已经解除对其他中健三六五手表佩戴用户的关注与绑定 + 3、中健三六五手表解绑 + 您的账号已经解除对中健三六五手表的绑定 4、账号不可找回 - 注销后,账号绑定的信息将被释放,账号无法登录安瑜健康APP + 注销后,账号绑定的信息将被释放,账号无法登录中健三六五健康APP """.trimIndent() private val destAccount by lazy { diff --git a/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt b/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt index 043ae70..a7e53c0 100644 --- a/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/DevInfoAct.kt @@ -99,7 +99,7 @@ class DevInfoAct : BaseVmAct(),EasyPermissions.PermissionCallbacks { override fun onClick(widget: View) { if(EasyPermissions.hasPermissions(this@DevInfoAct,Manifest.permission.CALL_PHONE)){ - startActivity(Intent(Intent.ACTION_CALL, Uri.parse("400 0063 365"))) + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) }else{ EasyPermissions.requestPermissions(this@DevInfoAct,"申请打电话权限",perssionCode,Manifest.permission.CALL_PHONE); @@ -172,7 +172,7 @@ class DevInfoAct : BaseVmAct(),EasyPermissions.PermissionCallbacks { } override fun onPermissionsGranted(requestCode: Int, perms: MutableList) { - startActivity(Intent(Intent.ACTION_CALL, Uri.parse("400 0063 365"))) + startActivity(Intent(Intent.ACTION_CALL, Uri.parse("tel:4000063365"))) } override fun onPermissionsDenied(requestCode: Int, perms: MutableList) { diff --git a/mine/src/main/java/com/zj365/mime/act/ScoreAct.kt b/mine/src/main/java/com/zj365/mime/act/ScoreAct.kt index 5c7ab4d..3249187 100644 --- a/mine/src/main/java/com/zj365/mime/act/ScoreAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/ScoreAct.kt @@ -23,7 +23,7 @@ class ScoreAct : IBaseAct() { // var tip = // "人的心率在非静息状态下会不断变化,属正常情况!同时,不同心率监测设备采集心率的方法和算法有所不同,同一时间通过不同心率监测装置出现心率数据偏差亦属正常现象。 -// 安瑜心率变异算法会将采集的心率整体变化趋势与不同状态下的正常心率模型对比,请您及时关注心率变化。" +// 中健三六五心率变异算法会将采集的心率整体变化趋势与不同状态下的正常心率模型对比,请您及时关注心率变化。" val tipDialog by lazy { WebViewDialog(this, "file:///android_asset/word_rule.html") { } diff --git a/mine/src/main/java/com/zj365/mime/act/SettingNewAct.kt b/mine/src/main/java/com/zj365/mime/act/SettingNewAct.kt index c190bc9..f444dad 100644 --- a/mine/src/main/java/com/zj365/mime/act/SettingNewAct.kt +++ b/mine/src/main/java/com/zj365/mime/act/SettingNewAct.kt @@ -34,16 +34,16 @@ class SettingNewAct: BaseVmAct() { var user: SettingBean.User? = null private var destStr = """ - 一旦您注销安瑜健康账号后,您的安瑜健康APP将会被清除账号信息,请知悉并谨慎操作! - 注销安瑜健康账号前,请确保您的账号符合以下注销条件: + 一旦您注销中健三六五健康账号后,您的中健三六五健康APP将会被清除账号信息,请知悉并谨慎操作! + 注销中健三六五健康账号前,请确保您的账号符合以下注销条件: 1、账号处于安全状态 您的账号没有被盗、被封等风险(最近15天账号未在其他设备登录) 2、其他关联用户解绑 - 您的账号已经解除对其他安瑜手表佩戴用户的关注与绑定 - 3、安瑜手表解绑 - 您的账号已经解除对安瑜手表的绑定 + 您的账号已经解除对其他中健三六五手表佩戴用户的关注与绑定 + 3、中健三六五手表解绑 + 您的账号已经解除对中健三六五手表的绑定 4、账号不可找回 - 注销后,账号绑定的信息将被释放,账号无法登录安瑜健康APP + 注销后,账号绑定的信息将被释放,账号无法登录中健三六五健康APP """.trimIndent() private val destAccount by lazy { diff --git a/mine/src/main/java/com/zj365/mime/adapter/VersionAdapter.kt b/mine/src/main/java/com/zj365/mime/adapter/VersionAdapter.kt index a89501f..e06717b 100644 --- a/mine/src/main/java/com/zj365/mime/adapter/VersionAdapter.kt +++ b/mine/src/main/java/com/zj365/mime/adapter/VersionAdapter.kt @@ -8,7 +8,7 @@ import com.xty.network.model.VersionBean class VersionAdapter: BaseAdapter(R.layout.item_version) { override fun convert(holder: BaseViewHolder, item: VersionBean) { - holder.setText(R.id.mVersionName,"安瑜健康 ${item.name} 版本") + holder.setText(R.id.mVersionName,"中健三六五健康 ${item.name} 版本") holder.setText(R.id.mTvTime,item.createTime) } } \ No newline at end of file diff --git a/mine/src/main/java/com/zj365/mime/weight/InviteFriendShareDialog.kt b/mine/src/main/java/com/zj365/mime/weight/InviteFriendShareDialog.kt index f6fc034..da70b0b 100644 --- a/mine/src/main/java/com/zj365/mime/weight/InviteFriendShareDialog.kt +++ b/mine/src/main/java/com/zj365/mime/weight/InviteFriendShareDialog.kt @@ -41,7 +41,7 @@ class InviteFriendShareDialog( if (isLink) { val subtitle = "${user.name}邀请您注册" val url = "${BuildConfig.url}shareApi/register/${user.phone}" - WxUtils.shareWebPageForCircle("安瑜健康,因爱而生", subtitle, context, url) + WxUtils.shareWebPageForCircle("中健三六五健康,因爱而生", subtitle, context, url) dismiss() } else { bitmap?.let { diff --git a/mine/src/main/res/layout/act_about.xml b/mine/src/main/res/layout/act_about.xml index 79db85a..f02640f 100644 --- a/mine/src/main/res/layout/act_about.xml +++ b/mine/src/main/res/layout/act_about.xml @@ -55,7 +55,7 @@ android:layout_marginBottom="@dimen/dp_45" android:layout_marginStart="@dimen/dp_20" android:layout_marginEnd="@dimen/dp_20" - android:text="技术支持:湖南安瑜健康科技有限公司" + android:text="技术支持:湖南中健三六五健康科技有限公司" android:textColor="@color/col_313" android:textSize="@dimen/sp_15" /> @@ -75,7 +75,7 @@ android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginTop="@dimen/dp_14" - android:text="湖南安瑜健康科技有限公司 版权所有" + android:text="湖南中健三六五健康科技有限公司 版权所有" android:textColor="@color/col_c7c" android:textSize="@dimen/sp_15" /> diff --git a/mine/src/main/res/layout/act_feed_back.xml b/mine/src/main/res/layout/act_feed_back.xml index 2fafeb6..76abea2 100644 --- a/mine/src/main/res/layout/act_feed_back.xml +++ b/mine/src/main/res/layout/act_feed_back.xml @@ -60,7 +60,7 @@ android:layout_marginRight="@dimen/dp_10" android:background="@drawable/shape_round_white" android:gravity="left" - android:hint="感谢您使用安瑜健康,使用过程中有任何意见或建议请反馈给我们。" + android:hint="感谢您使用中健三六五健康,使用过程中有任何意见或建议请反馈给我们。" android:maxLength="100" android:padding="@dimen/dp_10" android:textColor="@color/col_455" diff --git a/mine/src/main/res/layout/act_feed_back_detail.xml b/mine/src/main/res/layout/act_feed_back_detail.xml index 9598491..744b79c 100644 --- a/mine/src/main/res/layout/act_feed_back_detail.xml +++ b/mine/src/main/res/layout/act_feed_back_detail.xml @@ -48,7 +48,7 @@ android:layout_marginRight="@dimen/dp_10" android:background="@drawable/shape_round_white" android:gravity="left" - android:hint="感谢您使用安瑜健康,使用过程中有任何意见或建议请反馈给我们。" + android:hint="感谢您使用中健三六五健康,使用过程中有任何意见或建议请反馈给我们。" android:maxLength="100" android:padding="@dimen/dp_10" android:textColor="@color/col_455" diff --git a/mine/src/main/res/layout/act_new_programme_detail.xml b/mine/src/main/res/layout/act_new_programme_detail.xml index fc66b09..e06ea09 100644 --- a/mine/src/main/res/layout/act_new_programme_detail.xml +++ b/mine/src/main/res/layout/act_new_programme_detail.xml @@ -47,7 +47,7 @@ android:layout_marginRight="@dimen/dp_30" android:textColor="@color/col_888" android:textSize="@dimen/dp_14" - tools:text="安瑜健康" /> + tools:text="中健三六五健康" /> + tools:text="中健三六五健康" /> + /** + * 绑定设备 + */ + @POST("customer/user/bind") + suspend fun binderDevice(@Body rb: RequestBody) : RespBody + /** * 解绑机构 */ diff --git a/network/src/main/java/com/xty/network/model/MyOrganCodeBean.kt b/network/src/main/java/com/xty/network/model/MyOrganCodeBean.kt index 0dfc5c2..5c1ad8e 100644 --- a/network/src/main/java/com/xty/network/model/MyOrganCodeBean.kt +++ b/network/src/main/java/com/xty/network/model/MyOrganCodeBean.kt @@ -4,7 +4,7 @@ import java.io.Serializable data class MyOrganCodeBean( val authCode: String,//639194 - val name: String,//安瑜总部 + val name: String,//中健三六五总部 ) data class BindRespone( diff --git a/zj365.keystore b/zj365.keystore new file mode 100644 index 0000000000000000000000000000000000000000..b98f66fee5c1fdb77a40fa2b65d02195c5cfcd45 GIT binary patch literal 2197 zcmcJP`9IW)8pmh1&RB-QNNCeozsO)hwvrfx$?lRcmL$?4#xiO$&5`Az?31Bzj?>^K zdzL8M5gA)qvdzhMLL!W=bGzNw`3LR~&kyhCd0x-+dY0E`e`S9K1Oh=04E!I1-wM>m z>l_dbZ1F7x1cE~VDr_G>Ap}(rU>H~#A_fM-K`<(8F#zVK$>b*bmdntIj~Qo*ejk^l zJGVQPZa!(^)3X7c!;X8CDu{!|tQKqg)cZ%q z)W(gb?i1({AW^XksGyg;_BR@QaMb8_1il z26*^DpLl+XEPU~%UzKYi`BdP&u_MQ*tSqVK@tX-xUK5djw~}PxApV%vewR&V-Qc+Y z!J+O@mrrTjE^O!CJAP&2Q5#G-X`0>BnxdCb?!D5xBb?e?qiCWru2`~9*H_BJr;A&5 zc06QI)J{Shw#9xTQ)b*6sV1$`jF!phQ858rdC9rrV|aPY3dXth5klgh#$v&o$PYG0 zD+aILXnq9^M;2|E10`wo$ep?)a+2|&l2AwPa9WwR7Pg{4m|9OwQV_M*4Jn-+2*&;4 zy;GB0_yPF%Xsm3>-{0!(*;S+AZt8L@K`>J+hGAG)imW#NY)I(SmN{boVjfl9--Hrh zoTw$cB;CKM-IRABo|q9UnTiapYTo^G+OMa;W_rc>y-^|?k|I7qsjTpxr(M zhFDDJ@DJRCnX7WJA<8u+VQsQP*!Q2uVc{cY2FW=9C>iK9aWCO?1OLOH!Cv?@?>QM58f zn^89rI=m%{v&$#eUT==5iXbfCvBn6Ml1rq-RC36MV3W<4;r7XmwmDT- z0z>>j22mUZR&9!y(cbe!mWFyqsXz9vD=)b0WpZU{_2s$H{241FUJA4Jd9A448X1^$ zVk|$iz9CTqt}&d)%9j657uoJ&KRb=tdK{*$Ii!md3sM`hiG(shCPkCLnv*FM%<5Su4N7xk)(9B6q9Qe&^jehblBQR z@T-nzvRQt_xCl}O%^;Dm%OT2K^VW5u0wx`7#}FjcpuCf=Z*UX#unocuJHxxZ(Abfw zJV7=NE~0LJOK3OY-AVs9^bN~IcVR8Hv{bpNH;QsggLNApzYC+Yx(=WZ0zruY6>14k zA(~7m1Pp<|{2m&80gwm*W!ib#77`2=f`b4@O(8%40VTl@Xoye958y{b$o~VrgGjh0 z3K0G)O%VNEcYmnAr5KxdpYH0(S+5mtDbhPoV(jr=#e>o2DyW{`VmkK`e z_W=*|A4&y_fB-635JClmLCkmK9d~s5W*-$)Dj?djVxPLc^>HP6cl{bPb^6@4Y+*s? zCZk%B3^?I5r9J9p=6@z6yo1y}orll0tzFhSQciyVH5 zxW{}nx3;#Rbw2VM7POfvr)!{_kcLCN8#z>7HaVQ`5w38bWg=@<$>%vQm0PWTiS+D3 zBTq(9Mg5#y+t9w%AFYqkiIf07wNo(u_MTK|$X(q|hW5LR^u z9~FM-xKO*YuXIW0tZLeZDVwJjy~rN*V@fw}nsEK&n^Vs$Z9Mc9j#2qiwIpanm1K^M zr>%Y1_?)HbyQIi*phKWw5SXP1$OCc*$CN|CFffT@rpZ!lmzK4d^DrN={^#7NsFdZu zFY(|@4weW8d30y$!P&;#tPQp^$y%?ti+K(H@U*FTL`iX=1+$$&4h*Mejx_TZLMWjv zn6=??kfBrdUQEDR_tCATzJ7gU2_@SXu)V0yFPDPvH!3myb!2QPO9W#kvMYn5e@n zdJ`kw&ue-V-j|D?aloZfyPaeZo3oUP9__d5?S`zl5xYE$!l_Pc}MEM8@4p a^6IQd2E4