中建365-优化

develop
wlh 1 year ago
parent 0913f3115c
commit ddb7b5f2ed

@ -9,6 +9,7 @@ def androidId = rootProject.ext.defaultSetting
def url = rootProject.ext.url
def imagePrefix =rootProject.ext.image_preifx
android {
compileSdkVersion androidId.compileSdk
buildToolsVersion androidId.buildToolsVersion
@ -105,8 +106,16 @@ repositories {
flatDir {
dirs 'libs'
}
project.afterEvaluate {
com.android.build.gradle.BaseExtension android = project.extensions.getByName("android")
android.getPackagingOptions().exclude("META-INF/*.kotlin_module")
}
}
dependencies {
implementation (name: 'ycbtsdk-release', ext: 'aar')
@ -121,5 +130,4 @@ dependencies {
kapt rely.GifDrawable
kapt rely.xutil
}

@ -152,6 +152,7 @@
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity
android:name="com.zj365.health.act.BindFamilyAct"
android:launchMode="singleTop"

@ -19,6 +19,7 @@ import com.xty.common.*
import com.xty.common.arouter.ARouterUrl
import com.xty.common.arouter.RouteManager
import com.xty.common.event.LoginOrRegisterEvent
import com.xty.common.event.RegisterSuccessEvent
import com.xty.common.event.WxLoginEvent
import com.xty.common.util.CommonToastUtils
import com.xty.network.model.WxInfoBean
@ -379,4 +380,9 @@ class LoginAct : BaseVmAct<LoginVm>() {
mViewModel.getWxLoginInfo(event.code)
}
@Subscribe(threadMode = ThreadMode.MAIN)
fun registerSuccess(event: RegisterSuccessEvent){
finish()
}
}

@ -23,6 +23,7 @@ import com.xty.common.TimeSelect
import com.xty.common.arouter.ARouterUrl
import com.xty.common.arouter.RouteManager
import com.xty.common.event.LoginOrRegisterEvent
import com.xty.common.event.RegisterSuccessEvent
import com.xty.common.util.CommonToastUtils
import com.xty.common.xqr_code.XQRCodeAct
@ -189,11 +190,8 @@ class RegisterAct : BaseVmAct<RegisterVm>() {
timer = null
}
mViewModel.login(binding.mAccount.text.toString().trim(),binding.mPsw.text.toString().trim())
runOnUiThread {
RxActivityTool.finishActivity(LoginAct::class.java)
}
EventBus.getDefault().post(RegisterSuccessEvent())
// RxActivityTool.finishActivity(LoginAct::class.java)
}
mViewModel.codeLive.observe(this) {
timeStart()

@ -914,8 +914,11 @@ class DynamicManagementFrag : BaseVmFrag<DynamicManagementVm>() , EasyPermission
binding.mHeader.tvLanuDate.text = bean.chinaDay
// setWeatherInfo(bean.weather)
binding.mHeader.mBMI.text = "BMI ${bean.bmiInfo.bmi}"
binding.mHeader.mBMIStatus.text = "${bean.bmiInfo.levelName}"
bean.bmiInfo?.let {
binding.mHeader.mBMI.text = "BMI ${it.bmi}"
binding.mHeader.mBMIStatus.text = "${it.levelName}"
}
binding.mHeader.tvWarningNum.text ="预警次数:${if (bean.warningCount == 0) "--" else bean.warningCount}"
binding.mHeader.tvMonitorNum.text ="监测次数:${if (bean.healthCount == 0) "--" else bean.healthCount}"

@ -589,13 +589,14 @@ class DynamicManagementVm : BaseVm() {
uricAcidData.time
} else {
"${
RxTimeTool.simpleDateFormat(
milliseconds2String(uricAcidData.time)
/* RxTimeTool.simpleDateFormat(
"yyyy-MM-dd HH",
RxTimeTool.string2Date(
"yyyy-MM-dd HH:mm:ss",
uricAcidData.time
)
)
)*/
}:00"
}
}

@ -56,7 +56,7 @@ class LoginVm() : BaseVm() {
}
saveToken(login.raw().headers)
val bodys = login.body() as RespBody
if (bodys != null){
MMkvHelper.put(Const.USER_ID, bodys.data.id)
val deviceType = bodys.data.deviceType
if (TextUtils.isEmpty(deviceType)) {
@ -64,6 +64,8 @@ class LoginVm() : BaseVm() {
} else {
MMkvHelper.put(Const.DEVICE_TYPE, bodys.data.deviceType)
}
}
bodys.getCodeStatus(mLogin, nowData, loading)
}
}
@ -82,8 +84,13 @@ class LoginVm() : BaseVm() {
}
startHttp {
val login = apiInterface().loginCode(account, code)
if (login.body()?.code == 500) {
login.body()?.msg?.let { CommonToastUtils.showToast(it) }
return@startHttp
}
saveToken(login.raw().headers)
val bodys = login.body() as RespBody
if(bodys != null){
MMkvHelper.put(Const.USER_ID, bodys.data.id)
val deviceType = bodys.data.deviceType
if (TextUtils.isEmpty(deviceType)) {
@ -91,6 +98,8 @@ class LoginVm() : BaseVm() {
} else {
MMkvHelper.put(Const.DEVICE_TYPE, bodys.data.deviceType)
}
}
bodys.getCodeStatus(mLogin, nowData, loading)
}
}

@ -36,7 +36,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dp_14"
android:text="BMI 24"
tools:text="BMI 24"
android:textColor="@color/col_313"
android:textSize="@dimen/sp_17"
android:textStyle="bold"
@ -59,7 +59,7 @@
android:paddingTop="@dimen/dp_2"
android:paddingRight="@dimen/dp_8"
android:paddingBottom="@dimen/dp_2"
android:text="正常"
tools:text="正常"
android:textColor="@color/col_D9BD"
android:textSize="@dimen/sp_14"
android:textStyle="bold"

@ -17,9 +17,14 @@ import com.tencent.smtt.sdk.WebViewClient
import com.xty.base.databinding.ActBaseTencentWebviewBinding
import com.xty.base.h5.CloudJSBridge
import com.xty.base.h5.IJsBridge
import com.xty.base.h5.WebUtils
import com.xty.base.utils.ContextUtils
import com.xty.base.vm.BaseVm
import com.xty.common.Const
import com.xty.common.LogUtils
import com.xty.common.MMkvHelper
import com.xty.common.arouter.ARouterUrl
import org.json.JSONObject
@Route(path = ARouterUrl.H5_ACT)
@ -41,6 +46,7 @@ import com.xty.common.arouter.ARouterUrl
override fun initView() {
super.initView()
initWebViewSettings()
ContextUtils.init(this)
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
@ -64,6 +70,20 @@ import com.xty.common.arouter.ARouterUrl
}
binding.webView.addJavascriptInterface(cloudJSBridge,"business")
val userId = if (MMkvHelper.getLong(Const.USER_ID).toString() == "0") {
""
} else { LogUtils.e("CloudJSBridge","str")
MMkvHelper.getLong(Const.USER_ID).toString()
}
/* val jsonObject = JSONObject()
jsonObject.put("statuHeight", WebUtils.getStatesBar())
jsonObject.put("token", MMkvHelper.getString(Const.Auth_Token))
jsonObject.put("userId", userId)
jsonObject.put("isAPP", 1)
LogUtils.e("CloudJSBridge",jsonObject.toString())
sendDataToJS("sendBaseInfo", jsonObject.toString())*/
}
override fun liveObserver() {
@ -195,7 +215,7 @@ import com.xty.common.arouter.ARouterUrl
java.lang.String.format(
"javascript:%s('%s')",
functionName,
R.attr.data
data
)
)
}

@ -0,0 +1,85 @@
package com.xty.base.dialog
import android.content.DialogInterface
import android.os.Bundle
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.Window
import android.view.WindowManager
import androidx.fragment.app.DialogFragment
import androidx.lifecycle.ViewModelProvider
import com.xty.base.vm.BaseVm
import com.xty.common.ReflexUtils
abstract class BaseDialogFragment :DialogFragment(){
protected lateinit var mView: View
private var dismissListener: OnDismissListener? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
getStyle()?.let {
setStyle(STYLE_NORMAL, it)
}
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
dialog?.requestWindowFeature(Window.FEATURE_NO_TITLE)
mView = onCreateView()
initView()
initData()
initListener()
return mView
}
override fun onStart() {
super.onStart()
//设置 dialog 的宽高
dialog?.window?.let {
it.setBackgroundDrawable(null)
val lp: WindowManager.LayoutParams = it.attributes
lp.gravity = getGravity()
lp.width = getWidth()
lp.height = getHeight()
if (isBGTransparent()) {
lp.dimAmount = 0.0f
} else {
lp.dimAmount = 0.5f
}
it.attributes = lp
}
}
override fun onDismiss(dialog: DialogInterface) {
super.onDismiss(dialog)
dismissListener?.onDismiss()
}
fun setOnDismissListener(dismissListener: OnDismissListener) {
this.dismissListener = dismissListener
}
protected abstract fun onCreateView(): View
protected open fun getStyle(): Int? = null //弹框样式 动画
protected open fun getGravity(): Int = Gravity.BOTTOM //弹框位置
protected open fun isBGTransparent() = false //是否全透明背景
protected open fun getHeight(): Int = WindowManager.LayoutParams.WRAP_CONTENT //弹框最大高度
protected open fun getWidth(): Int = WindowManager.LayoutParams.MATCH_PARENT //弹框最大高度
protected abstract fun initView()
protected abstract fun initData()
protected abstract fun initListener()
interface OnDismissListener {
fun onDismiss()
}
}

@ -2,8 +2,8 @@ package com.xty.base.h5
import android.content.Context
import android.webkit.JavascriptInterface
import com.google.gson.Gson
import com.xty.base.act.BaseVmAct
import com.xty.base.act.IBaseAct
import com.xty.common.Const
import com.xty.common.LogUtils
import com.xty.common.MMkvHelper
@ -27,6 +27,8 @@ open class CloudJSBridge(val context: Context, val listener: IJsBridge) {
jsonObject.put("token", MMkvHelper.getString(Const.Auth_Token))
jsonObject.put("userId", userId)
jsonObject.put("isAPP", 1)
LogUtils.e("CloudJSBridge",jsonObject.toString())
listener.sendDataToJS("sendBaseInfo", jsonObject.toString())
}
}

@ -15,7 +15,7 @@
<com.ruffian.library.widget.RImageView
android:id="@+id/img_activies"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="@dimen/dp_500"
android:maxWidth="@dimen/dp_312"
android:scaleType="centerCrop"
android:maxHeight="@dimen/dp_500"

@ -1,5 +1,9 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
apply from : 'config.gradle'
def SUPPORT_VERSION = "26.1.0"
def MULTIDEX_VERSION = "1.0.2"
def GSON_VERSION = "2.8.6"
buildscript {
ext.kotlin_version = "1.7.10"
repositories {
@ -40,6 +44,29 @@ allprojects {
}
}
ConfigurationContainer container = project.configurations
container.all { Configuration conf ->
ResolutionStrategy rs = conf.resolutionStrategy
//
rs.eachDependency { details ->
def requested = details.requested
if (requested.group == "com.android.support") {
// com.android.support
if (requested.name.startsWith("multidex")) {
details.useVersion(MULTIDEX_VERSION)
} else {
details.useVersion(SUPPORT_VERSION)
}
} else if (requested.group == "com.google.code.gson") {
// Gson
details.useVersion(GSON_VERSION)
} else if (requested.group == "org.jetbrains.kotlin") {
// kotlin
details.useVersion(kotlin_version)
}
}
}
}
task clean(type: Delete) {

@ -0,0 +1,4 @@
package com.xty.common.event
class RegisterSuccessEvent {
}

@ -6,7 +6,7 @@ ext {
appId : "com.zj365.dc",
minSdk : 23,
targetSdk : 32,
versionCode : 2,
versionCode : 114,
versionName : "1.0.0"
]
@ -29,10 +29,10 @@ ext {
release_url: "https://auprty.com/app/"*/
//
debug_url : "http://java01.zhongjian365.com/app/",
release_url: "http://175.6.39.20:8181/app/",
release_url: "http://java01.zhongjian365.com/app/",
h5_debug_url : "http://testbuilt.zhongjian365.com/",
h5_release_url : "http://built.zhongjian365.com/"
h5_release_url : "http://testbuilt.zhongjian365.com/"
]

@ -6,7 +6,7 @@
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
org.gradle.jvmargs=-Xmx5120m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
@ -22,4 +22,3 @@ kotlin.code.style=official
kotlin.incremental=true
org.gradle.parallel=true
android.injected.testOnly=false
android.defaults.buildfeatures.buildconfig=true

@ -259,6 +259,16 @@
<activity android:name=".act.BloodCalibrationHistoryAct"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity android:name=".act.MedicalHistoryAct"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity android:name=".act.NSuanOpenAct"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity android:name=".act.NSuanHowOpenAct"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
</application>
</manifest>

@ -65,7 +65,12 @@ class HealthMainAct : IBaseAct() {
super.initView()
val deviceType = MMkvHelper.getString(Const.DEVICE_TYPE)
tabName = when (deviceType) {
tabName = arrayOf(
R.string.info_1, R.string.info_3, R.string.info_7,
R.string.info_4, R.string.info_6, R.string.info_2,
R.string.info_8, R.string.info_11/*, R.string.info_5,
R.string.info_10*/
) /*when (deviceType) {
"", "U32" -> {
arrayOf(
R.string.info_1, R.string.info_3, R.string.info_7,
@ -79,7 +84,7 @@ class HealthMainAct : IBaseAct() {
arrayOf(
R.string.info_1, R.string.info_3, R.string.info_7,
R.string.info_4, R.string.info_6, R.string.info_2,
R.string.info_8, R.string.info_11/*, R.string.info_10*/
R.string.info_8, R.string.info_11*//*, R.string.info_10*//*
)
}
@ -87,10 +92,10 @@ class HealthMainAct : IBaseAct() {
arrayOf(
R.string.info_1, R.string.info_3, R.string.info_7,
R.string.info_6, R.string.info_2, R.string.info_8,
R.string.info_11/*, R.string.info_10*/
R.string.info_11*//*, R.string.info_10*//*
)
}
}
}*/
statusBar(binding.title.mView)
initTitle()
@ -161,8 +166,8 @@ class HealthMainAct : IBaseAct() {
private fun initVp2() {
listFragment.clear()
when (MMkvHelper.getString(Const.DEVICE_TYPE)) {
"", "U32" -> {
/*when (MMkvHelper.getString(Const.DEVICE_TYPE)) {
"", "U32" -> {*/
listFragment.add(setArgumentFrag(XinlvFrag(), id))
listFragment.add(setArgumentFrag(XueyangFrag(), id))
listFragment.add(setArgumentFrag(BreathFrag(), id))
@ -173,7 +178,7 @@ class HealthMainAct : IBaseAct() {
listFragment.add(setArgumentFrag(UricAcidFrag(), id, sex))
// listFragment.add(setArgumentFrag(XdFrag(), id))
// listFragment.add(setArgumentFrag(BloodFatFrag(), id))
}
/* }
"A3" -> {
listFragment.add(setArgumentFrag(XinlvFrag(), id))
@ -197,7 +202,7 @@ class HealthMainAct : IBaseAct() {
listFragment.add(setArgumentFrag(UricAcidFrag(), id, sex))
// listFragment.add(setArgumentFrag(BloodFatFrag(), id))
}
}
}*/
binding.mVp2.adapter = VpAdapter(listFragment, this)
binding.mVp2.isUserInputEnabled = false

@ -3,7 +3,7 @@
<solid
android:color="@color/white"/>
<stroke
android:color="@color/col_25C"
android:color="@color/col_02c"
android:width="1dp"
/>
<corners

@ -63,7 +63,7 @@
android:gravity="center_vertical"
android:text="添加"
android:textStyle="bold"
android:textColor="@color/col_25C"
android:textColor="@color/col_02c"
android:textSize="@dimen/sp_16"
tools:ignore="HardcodedText,UseCompatTextViewDrawableXml" />
@ -94,7 +94,7 @@
android:textSize="@dimen/sp_16"
android:textStyle="bold"
android:text="@string/blood_align_history"
android:textColor="@color/col_02b" />
android:textColor="@color/col_02c" />
<!-- 保存上传 -->
<TextView

@ -135,7 +135,7 @@
android:layout_marginRight="20dp"
android:textSize="18sp"
android:gravity="center"
android:textColor="@color/col_25C"
android:textColor="@color/col_02c"
android:textStyle="bold"
android:background="@drawable/shape_bind_device_history"/>
<TextView

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -32,7 +32,7 @@ data class MainBean(
val uricAcidData: UricAcidData,//尿酸
val caloriesData: String,//卡路里
val bloodFatData: BloodFatData,//血脂
val bmiInfo: BMIInfoBean //bmi信息
val bmiInfo: BMIInfoBean? //bmi信息
) {
//血脂

Loading…
Cancel
Save