wlzboy
4 天以前 c098f1e3a3e052aa3d65584aae6dc003a70d75ad
feat: 停止轮询 uncount
6个文件已修改
76 ■■■■ 已修改文件
app/App.vue 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/pagesTask/detail.vue 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/permission.js 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/utils/wechat.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TaskStatusSyncServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/App.vue
@@ -68,7 +68,7 @@
        this.updateUnreadMessageBadge()
        // 重新启动轮询(如果之前已停止)
        if (!this.messagePollingTimer) {
          this.startMessagePolling()
          // this.startMessagePolling()
        }
      }
    },
@@ -99,6 +99,28 @@
        try {
          if (!getToken()) {
            console.log('用户未登录,准备跳转到登录页面')
            // 保存目标页面用于登录后跳转
            if (options && options.path &&
                options.path !== 'pages/login' &&
                options.path !== 'pages/qylogin') {
              // 构造完整的路径和查询参数
              let fullPath = '/' + options.path;
              if (options.query) {
                const queryString = Object.keys(options.query).map(key =>
                  `${key}=${encodeURIComponent(options.query[key])}`).join('&');
                if (queryString) {
                  fullPath += '?' + queryString;
                }
              }
              // 保存目标URL到本地存储
              try {
                uni.setStorageSync('targetUrl', fullPath);
              } catch (e) {
                console.error('保存目标URL失败:', e);
              }
            }
            // 使用工具类根据环境自动跳转到合适的登录页面
            redirectToLoginByEnvironment(options, this.$tab);
          } else {
app/pagesTask/detail.vue
@@ -702,7 +702,16 @@
      
      // 返回上一页
      goBack() {
        uni.navigateBack()
        // 检查是否有页面可以返回
        uni.navigateBack({
          delta: 1,
          fail: () => {
            // 如果无法返回,则跳转到任务列表页面
            uni.switchTab({
              url: '/pages/task/index'
            })
          }
        })
      },
      
      // 处理编辑按钮
app/permission.js
@@ -22,7 +22,10 @@
// 保存目标页面URL,用于登录后跳转
function saveTargetUrl(url) {
  try {
    uni.setStorageSync('targetUrl', url)
    // 如果URL已经是/pages/login或/pages/qylogin,则不保存
    if (url && !url.startsWith('/pages/login') && !url.startsWith('/pages/qylogin')) {
      uni.setStorageSync('targetUrl', url)
    }
  } catch (e) {
    console.error('保存目标URL失败:', e)
  }
app/utils/wechat.js
@@ -18,8 +18,18 @@
      resolve(isWxWork);
    } catch (e) {
      console.error('获取系统信息失败:', e);
      // fallback检测
      resolve(false);
      // fallback检测:尝试使用wx.qy对象判断
      try {
        if (typeof wx !== 'undefined' && wx.qy) {
          console.log('通过wx.qy对象检测到企业微信环境');
          resolve(true);
        } else {
          resolve(false);
        }
      } catch (e2) {
        console.error('fallback检测也失败:', e2);
        resolve(false);
      }
    }
    // #endif
    
@@ -87,9 +97,25 @@
export function redirectToQyLogin(options, tab) {
  try {
    let url = '/pages/qylogin';
    if (options && options.query) {
    // 保存目标URL用于登录后跳转
    if (options && options.path && options.path !== 'pages/qylogin') {
      // 构造完整的路径和查询参数
      let fullPath = '/' + options.path;
      if (options.query) {
        const queryString = Object.keys(options.query).map(key =>
          `${key}=${encodeURIComponent(options.query[key])}`).join('&');
        if (queryString) {
          fullPath += '?' + queryString;
        }
      }
      // 添加redirect参数
      const separator = fullPath.includes('?') ? '&' : '?';
      url += `${separator}redirect=${encodeURIComponent(fullPath)}`;
    } else if (options && options.query) {
      url = buildUrlWithParams(url, options.query);
    }
    console.log('跳转到企业微信登录页面:', url);
    tab.reLaunch(url);
  } catch (e) {
ruoyi-admin/src/main/resources/application.yml
@@ -58,7 +58,7 @@
    basename: i18n/messages
  profiles:
    # 环境 dev|test|prod
    active: dev
    active: prod
  # 文件上传
  servlet:
    multipart:
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TaskStatusSyncServiceImpl.java
@@ -114,7 +114,7 @@
        
        try {
            int totalSuccessCount = 0;
            int pageSize = 200; // 每页200条
            int pageSize = 10; // 每页200条
            int offset = 0;
            
            while (true) {