donggaosheng 4 days ago
parent
commit
a2a2894069

+ 1 - 6
app/src/main/java/core/ui/activity/BaseActivity.java

@@ -1,6 +1,5 @@
 package core.ui.activity;
 package core.ui.activity;
 
 
-import android.content.pm.ActivityInfo;
 import android.graphics.Color;
 import android.graphics.Color;
 import android.os.Bundle;
 import android.os.Bundle;
 import android.view.View;
 import android.view.View;
@@ -10,16 +9,12 @@ import androidx.appcompat.app.AppCompatActivity;
 import androidx.recyclerview.widget.RecyclerView;
 import androidx.recyclerview.widget.RecyclerView;
 import androidx.viewbinding.ViewBinding;
 import androidx.viewbinding.ViewBinding;
 
 
-import com.blankj.utilcode.util.LogUtils;
 import com.hikvision.dmb.display.InfoDisplayApi;
 import com.hikvision.dmb.display.InfoDisplayApi;
 
 
 import core.ui.common.AbsUIDelegate;
 import core.ui.common.AbsUIDelegate;
 import core.ui.common.UIDelegateImpl;
 import core.ui.common.UIDelegateImpl;
 import core.util.ScreenAdapter;
 import core.util.ScreenAdapter;
 import io.reactivex.rxjava3.disposables.Disposable;
 import io.reactivex.rxjava3.disposables.Disposable;
-import xn.xxp.room.RoomTool;
-import xn.xxp.room.bean.DeviceConfig;
-import xn.xxp.room.dao.DeviceConfigDao;
 
 
 public abstract class BaseActivity<VB extends ViewBinding> extends AppCompatActivity {
 public abstract class BaseActivity<VB extends ViewBinding> extends AppCompatActivity {
 
 
@@ -32,7 +27,7 @@ public abstract class BaseActivity<VB extends ViewBinding> extends AppCompatActi
             InfoDisplayApi.setScreenRotate(2);
             InfoDisplayApi.setScreenRotate(2);
         }
         }
         super.onCreate(savedInstanceState);
         super.onCreate(savedInstanceState);
-        //ScreenAdapter.INSTANCE.setCustomDensity(this);
+       // ScreenAdapter.INSTANCE.setCustomDensity(this);
         uiDelegate = AbsUIDelegate.Companion.create();
         uiDelegate = AbsUIDelegate.Companion.create();
         configImmersiveMode();
         configImmersiveMode();
         binding = createViewBinding();
         binding = createViewBinding();

+ 1 - 1
app/src/main/java/xn/xxp/home/sign/SafetyCheckFragment.kt

@@ -185,7 +185,7 @@ class SafetyCheckFragment :
             .logger(loggers(logcat(), fileLogger(requireActivity())))
             .logger(loggers(logcat(), fileLogger(requireActivity())))
             .build()
             .build()
          // 👇 加这一行:旋转预览视图,解决前置摄像头上下颠倒
          // 👇 加这一行:旋转预览视图,解决前置摄像头上下颠倒
-         //viewBinding.cameraView.rotation = 180f
+         viewBinding.cameraView.rotation = 180f
 
 
         // 开始检测
         // 开始检测
         viewBinding.startCheck.setOnClickListener {
         viewBinding.startCheck.setOnClickListener {

+ 55 - 4
app/src/main/java/xn/xxp/main/MainActivity.kt

@@ -423,8 +423,58 @@ class MainActivity :
     }
     }
 
 
     lateinit var labConfig: LabConfig
     lateinit var labConfig: LabConfig
+//    override fun initData() {
+//        Tool.INSTANCE.openDoor(LabApp.userVo.userId,authType)
+//        labConfig = RoomTool.getInstance().labConfigDao().labConfig
+//        val laboratoryVo = LabApp.laboratory
+//        if (null == laboratoryVo || null == labConfig) {
+//            showToast("暂无实验室信息,即将重新获取")
+//            Tool.INSTANCE.reStartApp("暂无实验室信息,即将重新获取")
+//            return
+//        }
+//        binding.titleBar.setTitleInfoFromSp()
+//
+//        initLaboratoryInfo(laboratoryVo)
+//        // 开门按钮显示控制
+//        if ("1" == labConfig.isRelationGuard) {
+//            binding.openDoor.visibility = View.VISIBLE
+//            val drawable =
+//                ContextCompat.getDrawable(this, R.drawable.divider_transparent_main_right)
+//            binding.rightContent.dividerDrawable = drawable
+//        } else {
+//            binding.openDoor.visibility = View.GONE
+//            val drawable =
+//                ContextCompat.getDrawable(this, R.drawable.divider_transparent_main_right_v2)
+//            binding.rightContent.dividerDrawable = drawable
+//        }
+//        // 视频监控按钮显示控制
+//        if ("1" == LabApp.userVo.pageType) {
+//            binding.monitorGroup.visibility = View.VISIBLE
+//        } else {
+//            binding.monitorGroup.visibility = View.GONE
+//        }
+//
+//        if (LOAD_NET_WORKBENCH) {
+//            queryBanner()
+//        }
+//
+//        queryBulletinBoard()
+//        queryCheckMachineMsgList()
+//        queryNoticeMsgList()
+//    }
+
+
     override fun initData() {
     override fun initData() {
-        Tool.INSTANCE.openDoor(LabApp.userVo.userId,authType)
+        // 【改动1】登录态兜底:进程被杀重建 / 后端502导致 userVo 丢失
+        val userVo = LabApp.userVo
+        if (userVo == null) {
+            Tool.INSTANCE.reStartApp("登录信息已失效,即将重新初始化")
+            return
+        }
+
+        // 【改动2】原来第一行,用已判空的 userVo
+        Tool.INSTANCE.openDoor(userVo.userId, authType)
+
         labConfig = RoomTool.getInstance().labConfigDao().labConfig
         labConfig = RoomTool.getInstance().labConfigDao().labConfig
         val laboratoryVo = LabApp.laboratory
         val laboratoryVo = LabApp.laboratory
         if (null == laboratoryVo || null == labConfig) {
         if (null == laboratoryVo || null == labConfig) {
@@ -435,6 +485,7 @@ class MainActivity :
         binding.titleBar.setTitleInfoFromSp()
         binding.titleBar.setTitleInfoFromSp()
 
 
         initLaboratoryInfo(laboratoryVo)
         initLaboratoryInfo(laboratoryVo)
+
         // 开门按钮显示控制
         // 开门按钮显示控制
         if ("1" == labConfig.isRelationGuard) {
         if ("1" == labConfig.isRelationGuard) {
             binding.openDoor.visibility = View.VISIBLE
             binding.openDoor.visibility = View.VISIBLE
@@ -447,8 +498,9 @@ class MainActivity :
                 ContextCompat.getDrawable(this, R.drawable.divider_transparent_main_right_v2)
                 ContextCompat.getDrawable(this, R.drawable.divider_transparent_main_right_v2)
             binding.rightContent.dividerDrawable = drawable
             binding.rightContent.dividerDrawable = drawable
         }
         }
-        // 视频监控按钮显示控制
-        if ("1" == LabApp.userVo.pageType) {
+
+        // 【改动3】原来这里用的是 LabApp.userVo.pageType,改成已判空的 userVo
+        if ("1" == userVo.pageType) {
             binding.monitorGroup.visibility = View.VISIBLE
             binding.monitorGroup.visibility = View.VISIBLE
         } else {
         } else {
             binding.monitorGroup.visibility = View.GONE
             binding.monitorGroup.visibility = View.GONE
@@ -462,7 +514,6 @@ class MainActivity :
         queryCheckMachineMsgList()
         queryCheckMachineMsgList()
         queryNoticeMsgList()
         queryNoticeMsgList()
     }
     }
-
     private fun queryBanner() {
     private fun queryBanner() {
         val param = BannerImageReq().apply {
         val param = BannerImageReq().apply {
             imgCategory = "2"
             imgCategory = "2"