gongchunyi
3 天以前 469a106cf617efd2e9fbe02937c355fa392ae7bc
src/main/java/com/ruoyi/project/system/service/impl/UnipushService.java
@@ -95,7 +95,7 @@
    /**
     * 将 Web 端分层全路径转换为 App 端组件路由
     */
    private String convertWebPathToAppPath(String webPath) {
    public String convertWebPathToAppPath(String webPath) {
        if (StringUtils.isEmpty(webPath)) {
            return DEFAULT_APP_PAGE;
        }
@@ -108,13 +108,12 @@
            queryString = webPath.substring(index);
        }
        String[] pathSegments = pathOnly.split("/");
        String lastSegment = "";
        for (int i = pathSegments.length - 1; i >= 0; i--) {
            if (StringUtils.isNotEmpty(pathSegments[i])) {
                lastSegment = pathSegments[i];
                break;
            }
        String lastSegment;
        int lastSlashIndex = pathOnly.lastIndexOf("/");
        if (lastSlashIndex != -1) {
            lastSegment = pathOnly.substring(lastSlashIndex + 1);
        } else {
            lastSegment = pathOnly;
        }
        if (StringUtils.isEmpty(lastSegment)) {
@@ -124,11 +123,14 @@
        SysMenu menu = sysMenuMapper.selectMenuByPath(lastSegment);
        if (menu != null && StringUtils.isNotEmpty(menu.getAppComponent())) {
            String appComponent = menu.getAppComponent();
            if (appComponent.startsWith("/")) {
                appComponent = appComponent.substring(1);
            String appPath = menu.getAppComponent();
            if (appPath.startsWith("/")) {
                appPath = appPath.substring(1);
            }
            return appComponent + queryString;
            //  拼接 Web 端原始参数并返回
            return appPath + queryString;
        }
        return DEFAULT_APP_PAGE;