Преглед изворни кода

首页数据展示更改为小组件控制

zhaoxiaohai пре 3 година
родитељ
комит
ac192483cb
2 измењених фајлова са 34 додато и 25 уклоњено
  1. 15 7
      pages/tabbar/home/index.js
  2. 19 18
      pages/tabbar/home/index.wxml

+ 15 - 7
pages/tabbar/home/index.js

@@ -9,10 +9,10 @@ Page({
         user: {},
         annunciateList: [], //通告列表
         gridList: [],
-        showAnnunciate: false, //显示最新通告
         unreadNum: 0, //通告未读
         notice: "",
         msgCount: 1,
+        subassembly: [], //首页部件
     },
 
     /**
@@ -20,8 +20,11 @@ Page({
      */
     onLoad(options) {
         if (wx.getStorageSync('userauth').length != 0) {
-            let auth = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['营销工具'], ['通告', '推广素材', '商学院', '提报']);
-            let gridList = [];
+
+            /* 首页宫格授权查询 */
+            let auth = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['营销工具'], ['通告', '推广素材', '商学院', '提报']),
+                gridList = [],
+                subassembly = [];
             auth.forEach(v => {
                 switch (v.systemmodulename) {
                     case "通告":
@@ -31,10 +34,9 @@ Page({
                             icon: "icon-a-shouyejingangqutonggao",
                             apps: v.apps
                         });
-                        let annunciateAuthList = v.apps[0].meta.auth.map(v => v.optionname);
+                        if (v.apps[0].meta.wedgits.some(value => value.wedgit == 'homenoticelist')) subassembly.push('homenoticelist');
                         this.setData({
-                            showAnnunciate: true,
-                            annunciateAuthList
+                            annunciateAuthList: v.apps[0].meta.auth.map(v => v.optionname)
                         });
                         break;
                     case "推广素材":
@@ -63,8 +65,14 @@ Page({
                         break;
                 };
             });
+
+            /* 首页小组件查询 */
+            let home = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['通用'], ['首页'])[0].apps[0].meta.wedgits;
+            console.log("首页", home)
+            if (home.some(v => v.wedgit == 'homedatadisplay')) subassembly.push('homedatadisplay');
             this.setData({
-                gridList
+                gridList,
+                subassembly
             })
         }
         this.refreshData(wx.getStorageSync('userMsg'))

+ 19 - 18
pages/tabbar/home/index.wxml

@@ -31,26 +31,25 @@
         <text>{{item.name}}</text>
     </navigator>
 </My_card>
-
-<!-- 数据概况标题 -->
-<view class="general-situation">
-    <view class="title">
-        <text class="iconfont icon-a-shouyeshujugaikuangzhanshishuju"></text>
-        数据概况
-    </view>
-    <view class="time">更新于:2022-02-12</view>
-</view>
-
-<!-- 数据概况展示 -->
-<My_card custom-class='data-display' hover>
-    <view class="item" wx:for="{{6}}">
-        <view class="label">销售额(¥)</view>
-        <view class="nubmer">9999.99</view>
+<!-- 数据概况 -->
+<block wx:if="{{per.query(subassembly,'homedatadisplay')}}">
+    <view class="general-situation">
+        <view class="title">
+            <text class="iconfont icon-a-shouyeshujugaikuangzhanshishuju"></text>
+            数据概况
+        </view>
+        <view class="time">更新于:2022-02-12</view>
     </view>
-</My_card>
+    <My_card custom-class='data-display' hover>
+        <view class="item" wx:for="{{6}}">
+            <view class="label">销售额(¥)</view>
+            <view class="nubmer">9999.99</view>
+        </view>
+    </My_card>
+</block>
 
 <!-- 通告 -->
-<My_card wx:if="{{annunciateList.length>0 && showAnnunciate}}" title='最新通告' class="annunciate">
+<My_card wx:if="{{annunciateList.length>0 && per.query(subassembly,'homenoticelist')}}" title='最新通告' class="annunciate">
     <view class="unread" slot='title-r' bindtap="toAnnunciate">
         <block wx:if="{{unreadNum!=0}}">
             {{unreadNum}}条未读
@@ -67,4 +66,6 @@
     </block>
 </My_card>
 
-<view style="height: 140rpx;" />
+<view style="height: 140rpx;" />
+
+<wxs src='../../../utils/wxmlQueryPer.wxs' module="per" />