From 3d73fb33c46aada16a6060adcd4ea14bb33b6b2a Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期二, 09 四月 2024 10:39:11 +0800
Subject: [PATCH] 详情页tabs样式优化,答题添加页面退出拦截,合并代码

---
 pages/bookServices/assort/index.js |  144 +++++++++++++++++++++++++++++++++--------------
 1 files changed, 100 insertions(+), 44 deletions(-)

diff --git a/pages/bookServices/assort/index.js b/pages/bookServices/assort/index.js
index 024fe3d..ad80311 100644
--- a/pages/bookServices/assort/index.js
+++ b/pages/bookServices/assort/index.js
@@ -1,18 +1,27 @@
 // pages/bookServices/assort/index.js
+import { getPublicImage } from "../../../assets/js/middleGround/tool";
 const app = getApp();
 Page({
   /**
    * 椤甸潰鐨勫垵濮嬫暟鎹�
    */
   data: {
+    barHeight: "",
+    navBarHeight: "",
+    placeholderstyle: "font-size:28rpx",
     assortList: [],
     assortCheck: {
-      name: '',
-      code: '',
+      name: "",
+      code: "",
     },
     startList: [],
-    startCheck: '',
+
+    startCheck: {
+      id: "",
+      code: "",
+    },
     bookList: [],
+    loading: false,
     listLoding: false,
   },
 
@@ -20,8 +29,15 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
    */
   onLoad(options) {
-    // this.getAssortList()
-    console.log(options);
+    const systInfo = wx.getSystemInfoSync();
+    const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅
+    const navBarHeight =
+      (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴�
+    this.setData({
+      barHeight: systInfo.statusBarHeight,
+      navBarHeight: navBarHeight,
+    });
+    this.getAssortList();
   },
 
   /**
@@ -33,7 +49,11 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
    */
   onShow() {
-    this.getAssortList();
+    if (typeof this.getTabBar === "function" && this.getTabBar()) {
+      this.getTabBar().setData({
+        active: 1,
+      });
+    }
   },
 
   /**
@@ -63,25 +83,31 @@
 
   // 鑾峰彇渚ц竟鏍忓垪琛�
   getAssortList() {
+    this.setData({
+      loading: true,
+    });
     const query = {
-      path: '*',
+      path: "*",
       filterList: [
         {
-          value: 'Normal',
-          field: 'state',
+          value: "Normal",
+          field: "state",
         },
       ],
-      queryType: '\\',
+      queryType: "\\",
       searchList: [],
-      size: '30',
-      start: '0',
+      size: "30",
+      start: "0",
       storeRefCode: app.config.goodsStore,
-      sort: { type: 'Asc', field: 'LinkOrder' },
+      sort: { type: "Asc", field: "LinkOrder" },
     };
     app.MG.store.getStoreChannelList(query).then((res) => {
-      const list = res.datas.filter((item) => item.refCode != 'jsek_homepageBookService');
+      const list = res.datas.filter(
+        (item) => item.refCode != "jsek_homepageBookService"
+      );
       this.setData({
         assortList: list,
+        loading: false,
       });
       this.setData({
         assortCheck: {
@@ -93,14 +119,14 @@
     });
   },
   // 渚ц竟鏍忓垏鎹�
-  changeAssort(data) {
+  changeAssort(e) {
     this.setData({
       assortCheck: {
-        name: data.detail.label,
-        code: data.detail.value,
+        name: e.detail.label,
+        code: e.detail.value,
       },
     });
-    this.getStairList(data.detail.value);
+    this.getStairList(e.detail.value);
   },
   // 鑾峰彇涓�绾у垎绫�
   getStairList(path) {
@@ -109,31 +135,36 @@
     });
     const query = {
       path,
-      filterList: [],
-      queryType: '\\',
+      filterList: [
+        {
+          value: "Normal",
+          field: "state",
+        },
+      ],
+      queryType: "\\",
       searchList: [],
-      size: '30',
-      start: '0',
+      size: "30",
+      start: "0",
       storeRefCode: app.config.goodsStore,
-      sort: { type: 'Asc', field: 'LinkOrder' },
+      sort: { type: "Asc", field: "LinkOrder" },
     };
     app.MG.store.getStoreChannelList(query).then(async (res) => {
-      // 涓�绾у垎绫婚�変腑
-      this.setData({
-        startCheck: res.datas[0].refCode,
-      });
       // 鑾峰彇浜岀骇鍒嗙被
       for (let index = 0; index < res.datas.length; index++) {
         const item = res.datas[index];
+        item.icon
+          ? (item.icon = getPublicImage(item.icon, 500))
+          : (item.icon = item.icon);
         item.children = await this.getSecondList(item);
       }
+      console.log(res.datas);
       // 涓�绾у垎绫昏祴鍊�
       this.setData({
         startList: res.datas,
+        listLoding: false,
+        "startCheck.id": res.datas[0].id,
+        "startCheck..code": "",
       });
-    });
-    this.setData({
-      listLoding: false,
     });
   },
 
@@ -143,36 +174,61 @@
     let datas;
     const query = {
       path,
-      filterList: [],
-      queryType: '\\',
+      filterList: [
+        {
+          value: "Normal",
+          field: "state",
+        },
+      ],
+      coverSize: {
+        width: 500,
+      },
+      queryType: "\\",
       searchList: [],
-      size: '30',
-      start: '0',
+      size: "30",
+      start: "0",
       storeRefCode: app.config.goodsStore,
-      sort: { type: 'Asc', field: 'LinkOrder' },
+      sort: { type: "Asc", field: "LinkOrder" },
     };
     await app.MG.store.getStoreChannelList(query).then((res) => {
+      for (let index = 0; index < res.datas.length; index++) {
+        const element = res.datas[index];
+        if (element.icon) element.icon = getPublicImage(element.icon, 500);
+      }
       datas = res.datas;
     });
     return datas;
   },
-  tabClick(tabData) {
-    const data = tabData.currentTarget.dataset.tabdata;
+  tabClick(e) {
+    const data = e.currentTarget.dataset.tabdata;
     this.setData({
-      startCheck: data.refCode,
+      "startCheck.id": data.id,
+      "startCheck.code": data.refCode,
     });
+    console.log(data);
   },
   // 璺宠浆鍒楄〃椤�
-  goPageList(item) {
-    const secondCode = `${item.currentTarget.dataset.staircode.pathLinks[0].linkPath}\\${item.currentTarget.dataset.staircode.id}`;
-    wx.navigateTo({
-      url: `/pages/bookServices/list/index?assorName=${this.data.assortCheck.name}&assortCode=${this.data.assortCheck.code}&stairCode=${this.data.startCheck}&secondCode=${secondCode}`,
+  goPageList(e) {
+    const tab = e.currentTarget.dataset.tabdata;
+    const stair = e.currentTarget.dataset.stair;
+    this.setData({
+      "startCheck.id": tab.id,
+      "startCheck.code": tab.refCode,
     });
+    if (stair) {
+      const secondCode = `${stair.pathLinks[0].linkPath}\\${stair.id}`;
+      wx.navigateTo({
+        url: `/packageBookService/pages/bookServices/list/index?assorName=${this.data.assortCheck.name}&assortCode=${this.data.assortCheck.code}&stairCode=${this.data.startCheck.code}&secondCode=${secondCode}`,
+      });
+    } else {
+      wx.navigateTo({
+        url: `/packageBookService/pages/bookServices/list/index?assorName=${this.data.assortCheck.name}&assortCode=${this.data.assortCheck.code}`,
+      });
+    }
   },
   navToSearchPage(e) {
-    console.log(e.detail.value);
     wx.navigateTo({
-      url: `/pages/bookServices/list/index?assorName=${this.data.assortCheck.name}&assortCode=${this.data.assortCheck.code}&stairCode=${this.data.startCheck}&searchValue=${e.detail.value}`,
+      url: `/packageBookService/pages/bookServices/list/index?assorName=${this.data.assortCheck.name}&assortCode=${this.data.assortCheck.code}&stairCode=${this.data.startCheck.code}&searchValue=${e.detail.value}`,
     });
   },
 });

--
Gitblit v1.9.1