From 2d145793b4278daafdd3496eeb0eee60f8850a1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E5=91=98=E5=B0=8F=E5=A2=A8?= <2291200076@qq.com> Date: Wed, 26 Apr 2023 01:01:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=AB=AF=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E9=9A=90=E8=97=8F=E5=8A=9F=E8=83=BD=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E4=BC=A0=E5=8F=82=E6=8C=87=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ..._Gateway__epp_miniprogram_config_hide_.xml | 19 ++ .../epp/gateway/controller/Controller.java | 17 +- .../src/main/resources/application.yml | 6 + .../custom-tab-bar/toggleCustomTabBar.js | 194 +++++++++--------- 4 files changed, 138 insertions(+), 98 deletions(-) create mode 100644 backend/.idea/runConfigurations/Dev_Gateway__epp_miniprogram_config_hide_.xml diff --git a/backend/.idea/runConfigurations/Dev_Gateway__epp_miniprogram_config_hide_.xml b/backend/.idea/runConfigurations/Dev_Gateway__epp_miniprogram_config_hide_.xml new file mode 100644 index 0000000..736d9ea --- /dev/null +++ b/backend/.idea/runConfigurations/Dev_Gateway__epp_miniprogram_config_hide_.xml @@ -0,0 +1,19 @@ + + + + + + + + \ No newline at end of file diff --git a/backend/microservice-gateway/src/main/java/com/cxyxiaomo/epp/gateway/controller/Controller.java b/backend/microservice-gateway/src/main/java/com/cxyxiaomo/epp/gateway/controller/Controller.java index c2ef4ce..9840ba8 100644 --- a/backend/microservice-gateway/src/main/java/com/cxyxiaomo/epp/gateway/controller/Controller.java +++ b/backend/microservice-gateway/src/main/java/com/cxyxiaomo/epp/gateway/controller/Controller.java @@ -1,10 +1,13 @@ package com.cxyxiaomo.epp.gateway.controller; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.LinkedList; +import java.util.Objects; @RestController public class Controller { @@ -14,17 +17,29 @@ public class Controller { return "[ERROR] 500 Internal Server Error"; } + @Value("${epp.miniprogram.config}") + private String miniprogramConfig; + /** * 为了通过微信的小程序审核所特别处理的 * * @return */ @RequestMapping("/getConfig") - public HashMap WxMiniProgramAuditSpecialHandle() { + public HashMap WxMiniProgramAuditSpecialHandle(@RequestParam(value = "v", required = false) String version) { boolean showCode = true; boolean showShop = true; boolean showReport = true; + // 第一版提审,已通过,在线上 version == null + if (version.equals("2")) { + // 第一版提审,按照配置文件中的配置来 + if (Objects.equals(miniprogramConfig, "hide")) { + showCode = false; + showShop = false; + } + } + // 底部 tabbar LinkedList tabbarItem = new LinkedList<>(); tabbarItem.push("pages/index/index"); diff --git a/backend/microservice-gateway/src/main/resources/application.yml b/backend/microservice-gateway/src/main/resources/application.yml index 60c5f09..a4ea6b0 100644 --- a/backend/microservice-gateway/src/main/resources/application.yml +++ b/backend/microservice-gateway/src/main/resources/application.yml @@ -97,3 +97,9 @@ spring: args: status: 302 url: https://www.baidu.com/?wd= + +epp: + miniprogram: + # 为了通过微信的小程序审核所特别处理的 + # show / hide + config: show diff --git a/weixin-miniprogram/custom-tab-bar/toggleCustomTabBar.js b/weixin-miniprogram/custom-tab-bar/toggleCustomTabBar.js index e0b8370..9feaeca 100644 --- a/weixin-miniprogram/custom-tab-bar/toggleCustomTabBar.js +++ b/weixin-miniprogram/custom-tab-bar/toggleCustomTabBar.js @@ -1,97 +1,97 @@ -var defaultTabbarItem = [ - "pages/person/person", - "pages/residents/report", - "pages/index/index" -] - -export function toggle(that) { - let pages = getCurrentPages() - let route = pages[pages.length - 1].route - console.log("[CustomTabBar] route", route) - - if (!typeof that.getTabBar === 'function' || !that.getTabBar()) { - // wx.showModal({ - // title: '版本太旧', - // content: '您的微信版本太旧,无法使用本小程序', - // showCancel: false, - // complete: (res) => { - // wx.exitMiniProgram() - // } - // }) - return - } - - // 找出要选择哪一项 - let tabBar = that.getTabBar() - console.log("[CustomTabBar] tabBar", tabBar) - - let data = tabBar.data - console.log("[CustomTabBar] data", data) - - let showPagePathList = wx.getStorageSync('tabbarItem') || defaultTabbarItem - console.log("[CustomTabBar] showPagePathList", showPagePathList) - - let list = tabBar.data.rawList.filter((page) => showPagePathList.includes(page.pagePath)) - console.log("[CustomTabBar] tabBarList", list) - - let selected = list ? list.indexOf(list.find(p => p.pagePath == route)) : -1 - console.log("[CustomTabBar] selected", selected) - - console.log("更新tabbar") - - // 选中这一项 - tabBar.setData({ - selected: selected, - list: list - }) -} - -export function updateConfig(baseUrl) { - // 请求配置文件(用于审核时隐藏部分功能) - wx.request({ - url: baseUrl + '/getConfig', - success(result) { - let data = result.data - if (data.tabbarItem) { - console.log("[CustomTabBar] tabbar数据拉取完毕") - wx.setStorageSync('tabbarItem', data.tabbarItem) - wx.setStorageSync('indexItem', data.indexItem) - - const pages = getCurrentPages(); - const indexPage = pages[0] - const currentPage = pages[pages.length - 1] - console.log("[CustomTabBar] indexPage", indexPage) - console.log("[CustomTabBar] currentPage", currentPage) - - // // 更新tabbar - // toggle(currentPage) - // 刷新首页中包含了触发 toggle 的代码 此处不重复触发 - - // 刷新首页 - indexPage && indexPage.onLoad() - - // let tabBar = currentPage.getTabBar() - // tabBar.setData({ - // list: tabBar.data.rawList.filter((page) => itemList.includes(page.pagePath)) - // }) - } - }, - fail() { - wx.showModal({ - title: '小程序启动失败', - content: '点击确认重试,若多次失败请检查网络连接', - complete: (res) => { - if (res.cancel) { - wx.exitMiniProgram() - } - - if (res.confirm) { - wx.reLaunch({ - url: 'pages/index/index', - }) - } - } - }) - } - }) -} \ No newline at end of file +var defaultTabbarItem = [ + "pages/person/person", + "pages/residents/report", + "pages/index/index" +] + +export function toggle(that) { + let pages = getCurrentPages() + let route = pages[pages.length - 1].route + console.log("[CustomTabBar] route", route) + + if (!typeof that.getTabBar === 'function' || !that.getTabBar()) { + // wx.showModal({ + // title: '版本太旧', + // content: '您的微信版本太旧,无法使用本小程序', + // showCancel: false, + // complete: (res) => { + // wx.exitMiniProgram() + // } + // }) + return + } + + // 找出要选择哪一项 + let tabBar = that.getTabBar() + console.log("[CustomTabBar] tabBar", tabBar) + + let data = tabBar.data + console.log("[CustomTabBar] data", data) + + let showPagePathList = wx.getStorageSync('tabbarItem') || defaultTabbarItem + console.log("[CustomTabBar] showPagePathList", showPagePathList) + + let list = tabBar.data.rawList.filter((page) => showPagePathList.includes(page.pagePath)) + console.log("[CustomTabBar] tabBarList", list) + + let selected = list ? list.indexOf(list.find(p => p.pagePath == route)) : -1 + console.log("[CustomTabBar] selected", selected) + + console.log("更新tabbar") + + // 选中这一项 + tabBar.setData({ + selected: selected, + list: list + }) +} + +export function updateConfig(baseUrl) { + // 请求配置文件(用于审核时隐藏部分功能) + wx.request({ + url: baseUrl + '/getConfig?v=2', + success(result) { + let data = result.data + if (data.tabbarItem) { + console.log("[CustomTabBar] tabbar数据拉取完毕") + wx.setStorageSync('tabbarItem', data.tabbarItem) + wx.setStorageSync('indexItem', data.indexItem) + + const pages = getCurrentPages(); + const indexPage = pages[0] + const currentPage = pages[pages.length - 1] + console.log("[CustomTabBar] indexPage", indexPage) + console.log("[CustomTabBar] currentPage", currentPage) + + // // 更新tabbar + // toggle(currentPage) + // 刷新首页中包含了触发 toggle 的代码 此处不重复触发 + + // 刷新首页 + indexPage && indexPage.onLoad() + + // let tabBar = currentPage.getTabBar() + // tabBar.setData({ + // list: tabBar.data.rawList.filter((page) => itemList.includes(page.pagePath)) + // }) + } + }, + fail() { + wx.showModal({ + title: '小程序启动失败', + content: '点击确认重试,若多次失败请检查网络连接', + complete: (res) => { + if (res.cancel) { + wx.exitMiniProgram() + } + + if (res.confirm) { + wx.reLaunch({ + url: 'pages/index/index', + }) + } + } + }) + } + }) +}