新增线下收款记录和 ai 修图优化
This commit is contained in:
@@ -19,8 +19,13 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
|
||||
|
||||
AppNavigationBarAppearance.applyGlobalAppearance()
|
||||
|
||||
let debugPreviewRoot = makeAccountDeletionDebugPreviewRootIfNeeded()
|
||||
if debugPreviewRoot == nil {
|
||||
enforceAccountDeletionStateBeforeLaunch()
|
||||
}
|
||||
|
||||
let window = UIWindow(windowScene: windowScene)
|
||||
window.rootViewController = AppRouter.makeRootViewController()
|
||||
window.rootViewController = debugPreviewRoot ?? AppRouter.makeRootViewController()
|
||||
window.makeKeyAndVisible()
|
||||
self.window = window
|
||||
(UIApplication.shared.delegate as? AppDelegate)?.window = window
|
||||
@@ -86,6 +91,30 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
|
||||
)
|
||||
}
|
||||
|
||||
/// 为设计核对提供仅 Debug 生效的注销页直达入口,不影响正式启动流程。
|
||||
private func makeAccountDeletionDebugPreviewRootIfNeeded() -> UIViewController? {
|
||||
#if DEBUG
|
||||
guard ProcessInfo.processInfo.arguments.contains("--account-deletion-preview") else { return nil }
|
||||
let service = AccountDeletionMockService(responseDelayNanoseconds: 0)
|
||||
let viewModel = AccountDeletionViewModel(username: "18651857230", service: service)
|
||||
return UINavigationController(rootViewController: AccountDeletionViewController(viewModel: viewModel))
|
||||
#else
|
||||
return nil
|
||||
#endif
|
||||
}
|
||||
|
||||
/// App 冷启动时若账号已进入注销冷静期,则清除旧登录态并返回登录页。
|
||||
private func enforceAccountDeletionStateBeforeLaunch() {
|
||||
guard AppStore.shared.session.isLoggedIn,
|
||||
let username = AccountDeletionIdentity.currentUsername() else { return }
|
||||
switch AccountDeletionMockService.shared.loginState(for: username) {
|
||||
case .pending, .completed:
|
||||
AppStore.shared.logout()
|
||||
case .none:
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
@objc private func handleSessionDidExpire() {
|
||||
guard AppStore.shared.session.isLoggedIn else { return }
|
||||
guard sessionExpiredDialog == nil else { return }
|
||||
|
||||
Reference in New Issue
Block a user