<template>
  <view :class="['app-container', `theme-${themeStore.currentTheme}`]">
    <router-view />
  </view>
</template>

<script>
import config from './config'
import { getToken } from '@/utils/auth'
import { onLaunch, onShow } from '@dcloudio/uni-app'
import { useThemeStore } from '@/store/theme'  // 修正路径
import { useUserStore } from '@/store/user'    // 修正路径
import { useVipStore } from '@/store/vip'      // 修正路径
import { useReminder } from '@/utils/reminder'
import { readingService } from '@/services/readingService'

export default {
  data() {
    return {
      themeStore: useThemeStore(),
      userStore: useUserStore(),
      vipStore: useVipStore()
    }
  },
  onLaunch() {
    // 初始化主题
    this.themeStore.initTheme()
    // 检查登录状态
    this.checkLogin()
    // 初始化用户
    this.userStore.initUser()
    // 初始化签到提醒
    useReminder.init()
    
    // 登录成功后同步进度
    // uni.$on('loginSuccess', async () => {
    //   await readingService.syncAllLocalProgress()
    //   uni.showToast({ title: '阅读进度已同步', icon: 'success' })
    // })
    
    // 检查登录状态
    //this.checkLogin()
  },
  onShow() {
    // 加载用户和VIP状态
    this.loadUserData()
  },
  methods: {
    // 初始化应用配置
    initConfig() {
      this.globalData.config = config
    },
    
    // 检查用户登录状态
    checkLogin() {
      if (!getToken()) {
        this.$tab.reLaunch('/pages/login') 
      }
    },
        // 同步阅读进度（需要实现）
        async syncReadingProgress() {
          // 实现阅读进度同步逻辑
          console.log('阅读进度同步逻辑待实现')
        },
    // 加载用户数据
    async loadUserData() {
      // 检查登录状态
      if (uni.getStorageSync('token')) {
        // 加载用户信息
        await this.userStore.initUser()
        
        // 加载VIP状态
        if (this.userStore.userId) {
          await this.vipStore.loadVipStatus(this.userStore.userId)
        }
      }
    }
  }
}
</script>

<style lang="scss">
	  /* 确保所有页面有基本样式 */
	  page {
	    height: 100%;
	    background-color: #ffffff;
	    font-size: 28rpx;
	    color: #333;
	  }
	    /* 解决部分设备显示问题 */
	    body, html {
	      height: 100%;
	      background-color: #ffffff;
	    }
		  /* 容器样式 */
		  .container {
		    min-height: 100%;
		    padding: 20rpx;
		    box-sizing: border-box;
		  }
/* 修正：每个 @import 语句末尾添加分号 */
@import '@/static/scss/index.scss';
//@import '@/styles/themes/default.scss';
//@import '@/styles/themes/aydz-blue.scss';

.app-container {
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
  height: 100vh;
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* 全局主题变量 */
:root {
  --primary-color: #1890ff;
  --bg-color: #f8f9fa;
  --text-color: #333;
  --card-bg: #ffffff;
  --header-bg: #ffffff;
  
  /* 确保所有页面继承主题 */
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* 哎呀科技蓝主题变量覆盖 */
.theme-aydzBlue {
  --primary-color: #2a5caa;
  --bg-color: #e6f7ff;
  --text-color: #1a3353;
  --card-bg: #d0e8ff;
  --header-bg: #2a5caa;
}

/* 深色模式主题变量覆盖 */
.theme-darkMode {
  --primary-color: #52c41a;
  --bg-color: #1a1a1a;
  --text-color: #e6e6e6;
  --card-bg: #2a2a2a;
  --header-bg: #1a1a1a;
}

/* 公共组件样式 */
.card {
  background-color: var(--card-bg);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.primary-button {
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 24px;
  padding: 10px 20px;
  font-weight: bold;
}

/* 全局样式 */
page {
  background-color: var(--bg-color);
  color: var(--text-color);
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
}
</style>