- 注释掉全部 Compose UI 代码(ui/、theme/、NavController、MainActivity、InitActivity 等) - BorderExt、TextExt、ToastUtils、LoadingState 中的 Compose 逻辑全部注释 - LoadingState 保留 show()/hide() 空方法避免编译报错 - 注释 SensorScaleUtils、BaseViewModel、DeviceViewModel 中的 ToastUtils 调用 - BootReceiver、CrashHandler 中 MainActivity 替换为 HomeActivity - UserViewModel、PurchaseOrderActivity 删除残余 Compose import - build.gradle.kts 替换为非 Compose 的 activity-ktx 和 coil 依赖 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
174 lines
6.5 KiB
Kotlin
174 lines
6.5 KiB
Kotlin
//package com.sw.inbound.ui
|
|
//
|
|
//import androidx.compose.animation.core.tween
|
|
//import androidx.compose.animation.fadeIn
|
|
//import androidx.compose.animation.fadeOut
|
|
//import androidx.compose.foundation.Image
|
|
//import androidx.compose.foundation.layout.Box
|
|
//import androidx.compose.foundation.layout.PaddingValues
|
|
//import androidx.compose.foundation.layout.fillMaxSize
|
|
//import androidx.compose.foundation.layout.padding
|
|
//import androidx.compose.material3.Scaffold
|
|
//import androidx.compose.runtime.Composable
|
|
//import androidx.compose.runtime.getValue
|
|
//import androidx.compose.runtime.mutableStateOf
|
|
//import androidx.compose.runtime.remember
|
|
//import androidx.compose.runtime.setValue
|
|
//import androidx.compose.ui.Modifier
|
|
//import androidx.compose.ui.graphics.Color
|
|
//import androidx.compose.ui.layout.ContentScale
|
|
//import androidx.compose.ui.res.painterResource
|
|
//import androidx.navigation.NavHostController
|
|
//import androidx.navigation.compose.NavHost
|
|
//import androidx.navigation.compose.composable
|
|
//import androidx.navigation.compose.currentBackStackEntryAsState
|
|
//import androidx.navigation.compose.rememberNavController
|
|
//import com.sw.inbound.GlobalKey
|
|
//import com.sw.inbound.R
|
|
//import com.sw.inbound.ui.page.HomeScreen
|
|
//import com.sw.inbound.ui.page.PurchaseOrderScreen
|
|
//import com.sw.inbound.utils.SPUtil
|
|
//import com.sw.inbound.utils.ToastUtils
|
|
//
|
|
//@Composable
|
|
//fun AppScreen(
|
|
// onBackRequest: () -> Unit
|
|
//) {
|
|
// val navController = rememberNavController()
|
|
// val currentBackStackEntry by navController.currentBackStackEntryAsState()
|
|
// var canBack by remember { mutableStateOf(false) }
|
|
//
|
|
// // 拦截物理返回键
|
|
//// BackHandler(
|
|
//// onBack = {
|
|
//// val currentRoute = currentBackStackEntry?.destination?.route
|
|
//// Timber.d("BackHandler currentRouter = ${currentRoute}")
|
|
//// if (currentRoute == Screen.Home.route && !canBack) {
|
|
//// ToastUtils.showToast("再次点击退出")
|
|
//// canBack = true
|
|
//// } else if (currentRoute == Screen.Login.route) {
|
|
//// onBackRequest()
|
|
//// } else {
|
|
//// navController.popBackStack()
|
|
//// }
|
|
//// }
|
|
//// )
|
|
////
|
|
//// BackHandler(canBack) {
|
|
//// Timber.d("canBack = $canBack")
|
|
//// if (canBack) {
|
|
//// onBackRequest()
|
|
//// }
|
|
//// }
|
|
//
|
|
// Scaffold(
|
|
// modifier = Modifier
|
|
// .fillMaxSize()
|
|
// //.paint(painter = painterResource(R.mipmap.bg)),
|
|
// ,containerColor = Color.Transparent,
|
|
// content = { padding ->
|
|
// Box {
|
|
//// Image(
|
|
//// painter = painterResource(R.mipmap.bg),
|
|
//// contentDescription = null,
|
|
//// modifier = Modifier.fillMaxSize(),
|
|
//// contentScale = ContentScale.Crop
|
|
//// )
|
|
// Image(
|
|
// painter = painterResource(id = R.mipmap.bg),
|
|
// contentDescription = "背景图片",
|
|
// modifier = Modifier.fillMaxSize(),
|
|
// contentScale = ContentScale.Crop
|
|
// )
|
|
// NavHost(padding, navController, onBackRequest)
|
|
// }
|
|
// }
|
|
// )
|
|
// ToastUtils.ToastComposable()
|
|
// //GlobalLoading() // 全局Loading
|
|
//
|
|
//}
|
|
//
|
|
///**
|
|
// * 导航
|
|
// */
|
|
//@Composable
|
|
//private fun NavHost(
|
|
// padding: PaddingValues,
|
|
// navController: NavHostController,
|
|
// onBackRequest: () -> Unit = {}
|
|
//) {
|
|
// val spUtil = SPUtil.getInstance()
|
|
// val token = spUtil.get(GlobalKey.KEY_TOKEN, "")!!
|
|
// NavHost(
|
|
// modifier = Modifier
|
|
// .fillMaxSize()
|
|
// .padding(padding),
|
|
// navController = navController,
|
|
// //startDestination = if (token.isEmpty()) Screen.Login.route else Screen.Home.route
|
|
// startDestination = Screen.Home.route
|
|
// ) {
|
|
//// composable(Screen.Test.route) {
|
|
//// TestScreen(modifier = Modifier, navController)
|
|
//// }
|
|
// // 首页
|
|
// composable(Screen.Home.route) {
|
|
// HomeScreen(modifier = Modifier, navController, onBackRequest = onBackRequest)
|
|
// }
|
|
// // 登录
|
|
//// composable(Screen.Login.route) {
|
|
//// LoginScreen(modifier = Modifier, navController)
|
|
//// }
|
|
// // 采购单入库
|
|
// composable(
|
|
// Screen.PurchaseOrder.route,
|
|
// enterTransition = { fadeIn(animationSpec = tween(0)) }, // 无进入动画
|
|
// exitTransition = { fadeOut(animationSpec = tween(0)) } // 无退出动画
|
|
// ) {
|
|
// PurchaseOrderScreen(modifier = Modifier.fillMaxSize(), navController)
|
|
// }
|
|
//// // 自采单
|
|
//// composable(
|
|
//// Screen.SelfProcurement.route,
|
|
//// enterTransition = { fadeIn(animationSpec = tween(0)) }, // 无进入动画
|
|
//// exitTransition = { fadeOut(animationSpec = tween(0)) } // 无退出动画
|
|
//// ) {
|
|
//// SelfProcurementScreen(modifier = Modifier, navController)
|
|
//// }
|
|
//// // 收货
|
|
//// composable(
|
|
//// Screen.ReceiptProduct.route,
|
|
//// enterTransition = { fadeIn(animationSpec = tween(0)) }, // 无进入动画
|
|
//// exitTransition = { fadeOut(animationSpec = tween(0)) }, // 无退出动画
|
|
//// arguments = listOf(
|
|
//// navArgument(name = "id", builder = { type = NavType.IntType }),
|
|
//// navArgument(name = "supplierId", builder = { type = NavType.IntType })
|
|
//// )
|
|
//// ) { backStackEntry ->
|
|
//// val id = backStackEntry.arguments?.getString("id") ?: ""
|
|
//// val supplierId = backStackEntry.arguments?.getString("supplierId") ?: ""
|
|
//// ReceiptProductScreen(modifier = Modifier, navController, id, supplierId)
|
|
//// }
|
|
// }
|
|
//}
|
|
//
|
|
//sealed class Screen(val route: String) {
|
|
// data object Home : Screen("home")
|
|
//// data object Login : Screen("login")
|
|
//
|
|
// // 采购单入库
|
|
// data object PurchaseOrder : Screen("purchase_order")
|
|
//
|
|
// // 自采单入库
|
|
//// data object SelfProcurement : Screen("self_procurement")
|
|
//
|
|
// // 收货
|
|
//// data object ReceiptProduct : Screen("receipt_product?id={id}&supplierId={supplierId}") {
|
|
//// fun createRoute(id: Int, supplierId: Int) =
|
|
//// "receipt_product?id=${id}&supplierId=${supplierId}"
|
|
//// }
|
|
//
|
|
// // 添加物品
|
|
//// data object AddProduct : Screen("addProduct")
|
|
//// data object Test : Screen("Test")
|
|
//} |