zhaoxiaohai há 3 anos atrás
pai
commit
8031075dbe
2 ficheiros alterados com 52 adições e 33 exclusões
  1. 49 30
      pages/tabbar/home/index.js
  2. 3 3
      pages/tabbar/home/index.wxml

+ 49 - 30
pages/tabbar/home/index.js

@@ -7,32 +7,58 @@ Page({
     data: {
         user: {},
         annunciateList: [], //通告列表
-        gridList: [{
-            name: "通告",
-            path: "/pages/annunciate/index",
-            icon: "icon-a-shouyejingangqutonggao",
-        }, {
-            name: "推广素材",
-            path: "/pages/promotional/index",
-            icon: "icon-a-shouyejingangqutuiguangsucai",
-        }, {
-            name: "商学院",
-            path: "/pages/college/index",
-            icon: "icon-a-shangxueyuanxuexi",
-        }, {
-            name: "提报",
-            path: "/pages/submission/index",
-            icon: "icon-a-tibaoguanlitibao",
-        }]
+        gridList: [],
+        showAnnunciate: false, //显示最新通告
     },
 
     /**
      * 生命周期函数--监听页面加载
      */
     onLoad(options) {
-        console.log("12312", wx.getStorageSync('userauth'))
         let auth = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['营销工具'], ['通告', '推广素材', '商学院', '提报']);
-        console.log(auth)
+        let gridList = [];
+        auth.forEach(v => {
+            switch (v.systemmodulename) {
+                case "通告":
+                    gridList.push({
+                        name: "通告",
+                        path: "/pages/annunciate/index",
+                        icon: "icon-a-shouyejingangqutonggao",
+                        apps: v.apps
+                    });
+                    this.setData({
+                        showAnnunciate: true
+                    });
+                    break;
+                case "推广素材":
+                    gridList.push({
+                        name: "推广素材",
+                        path: "/pages/promotional/index",
+                        icon: "icon-a-shouyejingangqutuiguangsucai",
+                        apps: v.apps
+                    })
+                    break;
+                case "商学院":
+                    gridList.push({
+                        name: "商学院",
+                        path: "/pages/college/index",
+                        icon: "icon-a-shangxueyuanxuexi",
+                        apps: v.apps
+                    })
+                    break;
+                case "提报":
+                    gridList.push({
+                        name: "提报",
+                        path: "/pages/submission/index",
+                        icon: "icon-a-tibaoguanlitibao",
+                        apps: v.apps
+                    })
+                    break;
+            };
+        });
+        this.setData({
+            gridList
+        })
         this.refreshData(wx.getStorageSync('userMsg'))
         this.setData({ //获取胶囊位置信息
             capsule: wx.getMenuButtonBoundingClientRect()
@@ -75,18 +101,11 @@ Page({
     /* 宫格区域应用程序 */
     applications(e) {
         const {
-            name
+            item
         } = e.currentTarget.dataset;
-        /* switch (name) {
-            case "通告":
-                wx.navigateTo({
-                    url: '/pages/annunciate/index'
-                })
-                break;
-
-            default:
-                break;
-        } */
+        wx.navigateTo({
+            url: `${item.path}?auth=${JSON.stringify(item.apps)}`,
+        });
     },
     /* 去通告 */
     toAnnunciate() {

+ 3 - 3
pages/tabbar/home/index.wxml

@@ -4,7 +4,7 @@
 <view style="position: fixed;top: 0; z-index: 999999999;">
     <view style="width: 100vw;height: {{capsule.top-6+'px'}};background-color:#085CDF;" />
     <view class="header">
-        <navigator url="/pages/login/selectSite"  open-type="reLaunch" class="header_title">
+        <navigator url="/pages/login/selectSite" open-type="reLaunch" class="header_title">
             {{user.sitename}}
             <van-icon name="arrow-down" />
         </navigator>
@@ -26,7 +26,7 @@
 
 <!-- 宫格区域 -->
 <My_card custom-class='grld'>
-    <navigator url="{{item.path}}" class="item" wx:for="{{gridList}}" wx:key="{{index}}" data-name="{{item.name}}" bindtap="applications">
+    <navigator url="#" class="item" wx:for="{{gridList}}" wx:key="{{index}}" data-item="{{item}}" catchtap="applications">
         <view class="iconfont {{item.icon}}" />
         <text>{{item.name}}</text>
     </navigator>
@@ -50,7 +50,7 @@
 </My_card>
 
 <!-- 通告 -->
-<My_card wx:if="{{annunciateList.length>0}}" title='最新通告' class="annunciate">
+<My_card wx:if="{{annunciateList.length>0 && showAnnunciate}}" title='最新通告' class="annunciate">
     <view class="unread" slot='title-r' bindtap="toAnnunciate">
         12条未读
         <view class="circle" />