Lin Qilong 2 månader sedan
förälder
incheckning
dec3365da6
100 ändrade filer med 789 tillägg och 1897 borttagningar
  1. 2 2
      README.md
  2. 4 4
      pom.xml
  3. 1 1
      ruoyi-admin/pom.xml
  4. 3 1
      ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
  5. 1 1
      ruoyi-admin/src/main/resources/application-dev.yml
  6. 1 1
      ruoyi-api-patform/pom.xml
  7. 1 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/ContextController.java
  8. 1 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/MdModelInfoController.java
  9. 9 10
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/MyAttentionController.java
  10. 34 232
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtServiceController.java
  11. 10 3
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtServiceReturnController.java
  12. 0 197
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtTreeCateController.java
  13. 3 6
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/TokenController.java
  14. 0 80
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtService.java
  15. 8 126
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtServiceReturn.java
  16. 58 53
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtServiceRunLog.java
  17. 2 0
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/GatewayRoutesMapper.java
  18. 1 58
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/PtServiceMapper.java
  19. 2 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/GatewayRoutesService.java
  20. 8 11
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/IMdModelInfoService.java
  21. 1 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/InterfaceTokenService.java
  22. 25 0
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/PtServiceReturnService.java
  23. 3 13
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/PtServiceService.java
  24. 5 0
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/GatewayRoutesServiceImpl.java
  25. 8 10
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/InterfaceTokenServiceImpl.java
  26. 0 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/MdFileUoloadServiceImpl.java
  27. 6 20
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/MdModelInfoServiceImpl.java
  28. 0 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/PtServiceMonitorServiceImpl.java
  29. 14 78
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/PtServiceServiceImpl.java
  30. 10 6
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/ServiceDataViewServiceImpl.java
  31. 1 1
      ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/tinyflow/node/ServiceNode.java
  32. 6 0
      ruoyi-api-patform/src/main/resources/mapper/interfaces/GatewayRoutesMapper.xml
  33. 3 3
      ruoyi-api-patform/src/main/resources/mapper/interfaces/MyAttentionMapper.xml
  34. 7 1
      ruoyi-api-patform/src/main/resources/mapper/interfaces/PtAppMapper.xml
  35. 2 4
      ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceLogMapper.xml
  36. 10 426
      ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMapper.xml
  37. 16 17
      ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMonitorMapper.xml
  38. 1 1
      ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceReturnMapper.xml
  39. 1 4
      ruoyi-api-patform/src/main/resources/mapper/interfaces/StatisticsMapper.xml
  40. 1 1
      ruoyi-common/pom.xml
  41. 21 40
      ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java
  42. 1 1
      ruoyi-framework/pom.xml
  43. 1 2
      ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
  44. 1 1
      ruoyi-generator/pom.xml
  45. 16 16
      ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm
  46. 24 24
      ruoyi-generator/src/main/resources/vm/vue/index.vue.vm
  47. 1 1
      ruoyi-quartz/pom.xml
  48. 1 1
      ruoyi-system/pom.xml
  49. 1 1
      ruoyi-ui/.env.development
  50. 1 1
      ruoyi-ui/.env.production
  51. 1 1
      ruoyi-ui/.env.staging
  52. 1 0
      ruoyi-ui/package.json
  53. 1 1
      ruoyi-ui/src/App.vue
  54. 2 2
      ruoyi-ui/src/api/dict.js
  55. 2 2
      ruoyi-ui/src/api/file.js
  56. 4 4
      ruoyi-ui/src/api/interactive/consult.js
  57. 4 4
      ruoyi-ui/src/api/interactive/helpDocument.js
  58. 9 5
      ruoyi-ui/src/api/ptApp.js
  59. 4 4
      ruoyi-ui/src/api/ptAttention.js
  60. 2 2
      ruoyi-ui/src/api/ptCate.js
  61. 6 6
      ruoyi-ui/src/api/ptServiceApply.js
  62. 6 6
      ruoyi-ui/src/api/service.js
  63. 1 1
      ruoyi-ui/src/api/service/catalog.js
  64. 3 3
      ruoyi-ui/src/api/service/info.js
  65. 3 3
      ruoyi-ui/src/api/service/return.js
  66. 6 6
      ruoyi-ui/src/api/statistics.js
  67. 2 2
      ruoyi-ui/src/api/token.js
  68. 8 8
      ruoyi-ui/src/api/user.js
  69. 2 2
      ruoyi-ui/src/api/userApplyList.js
  70. 2 2
      ruoyi-ui/src/api/view.js
  71. 31 0
      ruoyi-ui/src/assets/styles/index.scss
  72. 1 1
      ruoyi-ui/src/components/Breadcrumb.vue
  73. 12 9
      ruoyi-ui/src/components/Breadcrumb/index.vue
  74. 2 2
      ruoyi-ui/src/components/DynamicMap/index.vue
  75. 1 1
      ruoyi-ui/src/components/FileUploadbtn/index.vue
  76. 1 1
      ruoyi-ui/src/components/FileUploadbtn/index1.vue
  77. 2 2
      ruoyi-ui/src/components/ae/AeApp.vue
  78. 4 4
      ruoyi-ui/src/components/ae/AeServiceApply.vue
  79. 119 126
      ruoyi-ui/src/components/ae/Consult.vue
  80. 1 1
      ruoyi-ui/src/components/dataDetail/CommentList.vue
  81. 5 2
      ruoyi-ui/src/components/dataDetail/DataView.vue
  82. 1 1
      ruoyi-ui/src/components/dataDetail/ReplyList.vue
  83. 3 5
      ruoyi-ui/src/frontLayout/components/footer.vue
  84. 9 14
      ruoyi-ui/src/frontLayout/index.vue
  85. 2 23
      ruoyi-ui/src/layout/components/Navbar.vue
  86. 1 1
      ruoyi-ui/src/layout/components/Sidebar/index.vue
  87. 27 27
      ruoyi-ui/src/layout/components/editModel.vue
  88. 11 1
      ruoyi-ui/src/main.js
  89. 1 1
      ruoyi-ui/src/permission.js
  90. 4 4
      ruoyi-ui/src/plugins/download.js
  91. 2 91
      ruoyi-ui/src/router/index.js
  92. 88 0
      ruoyi-ui/src/utils/tools.js
  93. 1 1
      ruoyi-ui/src/views/DevelopCenter.vue
  94. 12 12
      ruoyi-ui/src/views/HelpCenter.vue
  95. 1 1
      ruoyi-ui/src/views/Interactive.vue
  96. 5 10
      ruoyi-ui/src/views/OpenData.vue
  97. 10 3
      ruoyi-ui/src/views/OpenDataDetail.vue
  98. 17 15
      ruoyi-ui/src/views/OpenDataQuery.vue
  99. 4 4
      ruoyi-ui/src/views/OpenIndex.vue
  100. 5 5
      ruoyi-ui/src/views/OrgList.vue

+ 2 - 2
README.md

@@ -1,2 +1,2 @@
-# sh-platform
-上海市水务海洋数字孪生模型服务管理系统
+# tba-gxpt
+数据服务平台

+ 4 - 4
pom.xml

@@ -5,17 +5,17 @@
     <modelVersion>4.0.0</modelVersion>
 
     <groupId>com.ruoyi</groupId>
-    <artifactId>sh-platform</artifactId>
+    <artifactId>tba-gxpt</artifactId>
     <version>3.8.89</version>
 
-    <name>sh-platform</name>
-    <description>上海水务海洋数字孪生模型平台</description>
+    <name>tba-gxpt</name>
+    <description>太湖流域管理局共享平台</description>
 
     <properties>
         <ruoyi.version>3.8.89</ruoyi.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-        <java.version>1.8</java.version>
+        <java.version>11</java.version>
         <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
         <spring-framework.version>5.3.33</spring-framework.version>
         <spring-security.version>5.7.12</spring-security.version>

+ 1 - 1
ruoyi-admin/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 3 - 1
ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java

@@ -15,9 +15,11 @@ import org.springframework.scheduling.annotation.EnableScheduling;
 @EnableScheduling
 @MapperScan("com.ruoyi.**.mapper")
 public class RuoYiApplication {
+
     public static void main(String[] args) {
         // System.setProperty("spring.devtools.restart.enabled", "false");
         SpringApplication.run(RuoYiApplication.class, args);
-        System.out.println("    启动成功    ");
+        System.out.println("--    启动成功    --");
     }
+
 }

+ 1 - 1
ruoyi-admin/src/main/resources/application-dev.yml

@@ -1,6 +1,6 @@
 ruoyi:
   # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath)
-  profile: D:/soft/sh-models/uploadPath
+  profile: /soft/gxpt/uploadPath
 sys:
   gateway:
     url: http://localhost:8081

+ 1 - 1
ruoyi-api-patform/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 1 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/ContextController.java

@@ -31,7 +31,7 @@ public class ContextController extends BaseController {
             city = city.replace("市", "");
         }
 
-        String sql = "INSERT INTO `view_log`(`ip`, `city`, `tm`) VALUES (?, ?, ?);";
+        String sql = "INSERT INTO \"VIEW_LOG\" (\"IP\", \"CITY\", \"TM\") VALUES (?, ?, ?);";
         jdbcTemplate.update(sql, ip, city, new Date());
         return AjaxResult.success();
     }

+ 1 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/MdModelInfoController.java

@@ -179,7 +179,7 @@ public class MdModelInfoController extends BaseController {
         if (modelInfo.getPublish().equals("5")){ // 5 = 更新操作,但是模型状态还需要是 已发布
             modelInfo.setPublish("1");
         }
-        return success(mdModelInfoService.publish(modelInfo));
+        return success();
     }
 
 

+ 9 - 10
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/MyAttentionController.java

@@ -1,19 +1,18 @@
 package com.ruoyi.interfaces.controller;
 
 import com.github.pagehelper.PageHelper;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.SM4Util;
 import com.ruoyi.interfaces.core.page.Page;
 import com.ruoyi.interfaces.core.page.PageParam;
 import com.ruoyi.interfaces.core.page.PageUtils;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.interfaces.domain.MyAttention;
 import com.ruoyi.interfaces.domain.PtService;
 import com.ruoyi.interfaces.mapper.MyAttentionMapper;
-import com.ruoyi.interfaces.mapper.PtServiceMapper;
+import com.ruoyi.interfaces.service.PtServiceService;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -29,10 +28,10 @@ public class MyAttentionController extends BaseController {
     private MyAttentionMapper myAttentionMapper;
 
     @Autowired
-    private PtServiceMapper ptServiceMapper;
+    private PtServiceService ptServiceService;
 
     @Autowired
-    private SM4Util  sm4Util;
+    private SM4Util sm4Util;
 
     @ApiOperation("添加关注")
     @RequestMapping(value = "/insert", method = RequestMethod.POST)
@@ -41,10 +40,10 @@ public class MyAttentionController extends BaseController {
             return AjaxResult.error("传参异常【srvId】");
         }
         myAttention.setUserId(String.valueOf(getUserId()));
-        PtService ptService = ptServiceMapper.selectByPrimaryKey(myAttention.getSrvId());
-        ptService.setDevelopContacter(sm4Util.decrypt(ptService.getDevelopContacter()));
-        ptService.setMaintainContacer(sm4Util.decrypt(ptService.getMaintainContacer()));
-        ptService.setAdName(sm4Util.decrypt(ptService.getAdName()));
+        PtService ptService = ptServiceService.getById(myAttention.getSrvId());
+//        ptService.setDevelopContacter(sm4Util.decrypt(ptService.getDevelopContacter()));
+//        ptService.setMaintainContacer(sm4Util.decrypt(ptService.getMaintainContacer()));
+//        ptService.setAdName(sm4Util.decrypt(ptService.getAdName()));
         if (ptService == null) {
             return AjaxResult.error("传参异常【srvId】");
         }

+ 34 - 232
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtServiceController.java

@@ -1,44 +1,40 @@
 package com.ruoyi.interfaces.controller;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
-import com.ruoyi.common.constant.HttpStatus;
+import com.google.common.collect.Lists;
+import com.ruoyi.common.core.builder.MapBuilder;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.core.page.TableDataInfo;
-import com.ruoyi.common.utils.DateUtils;
-import com.ruoyi.common.utils.ExceptionUtil;
-import com.ruoyi.common.utils.JsonUtils;
-import com.ruoyi.common.utils.SM4Util;
-import com.ruoyi.common.utils.http.HttpUtils;
 import com.ruoyi.interfaces.core.page.Page;
 import com.ruoyi.interfaces.core.page.PageParam;
 import com.ruoyi.interfaces.core.page.PageUtils;
 import com.ruoyi.interfaces.domain.*;
-import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
-import com.ruoyi.interfaces.mapper.PtServiceMapper;
 import com.ruoyi.interfaces.mapper.PtServiceParamMapper;
-import com.ruoyi.interfaces.service.*;
+import com.ruoyi.interfaces.service.IPtServiceReturnService;
+import com.ruoyi.interfaces.service.PtServiceFileService;
+import com.ruoyi.interfaces.service.PtServiceService;
+import com.ruoyi.interfaces.service.SysCateService;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
-import java.io.IOException;
-import java.util.*;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
 
 @RestController
 @RequestMapping("/pt/service")
 public class PtServiceController extends BaseController {
 
-    @Autowired
-    private PtServiceService ptServiceService;
+    @Value("${sys.gateway.url}")
+    private String gatewayUrl;
 
     @Autowired
-    private PtServiceMapper ptServiceMapper;
+    private PtServiceService ptServiceService;
 
     @Autowired
     private PtServiceParamMapper ptServiceParamMapper;
@@ -52,62 +48,21 @@ public class PtServiceController extends BaseController {
     @Autowired
     private PtServiceFileService ptServiceFileService;
 
-    @Autowired
-    private IPtServiceRunLogService serviceRunLogService;
-
-    @Autowired
-    private IMdModelInfoService mdModelInfoService;
-
-    private static final Logger log = LoggerFactory.getLogger(PtServiceController.class);
-
-    @Autowired
-    private SM4Util sm4Util;
-
     @ApiOperation("添加数据")
     @PostMapping(value = "/save")
     public AjaxResult save(@RequestBody PtService ptService) {
-        if (ptService.getViewNum() == null) {  //viewNum不能为空
-            ptService.setViewNum(0);
-        }
-        ptService.setAudit("0");
-        ptService.setDevelopContacter(sm4Util.encrypt(ptService.getDevelopContacter()));
-        ptService.setMaintainContacer(sm4Util.encrypt(ptService.getMaintainContacer()));
-        ptService.setAdName(sm4Util.encrypt(ptService.getAdName()));
-
-        ptService.setAudit("0");
-        ptService.setPublish("0");
-        ptService.sign();
-        boolean save = ptServiceService.save(ptService);
-
-        MdModelInfo mdModelInfo = mdModelInfoService.selectMdModelInfoByMdid(ptService.getMdid());
-        if ("1".equals(mdModelInfo.getAudit())) { //模型以审核通过
-            mdModelInfo.setAudit("3");
-            mdModelInfoService.audit(mdModelInfo);
-        }
-        if ("1".equals(mdModelInfo.getPublish())) { //模型以更新通过
-            mdModelInfo.setPublish("3");
-            mdModelInfoService.publish(mdModelInfo);
-        }
-
-        if (save) {
-            return AjaxResult.success(ptService);
-
-        } else {
-            return AjaxResult.error("添加失败");
-        }
+        ptServiceService.saveOrUpdate(ptService);
+        return AjaxResult.success(ptService);
     }
 
     @ApiOperation("根据主键删除数据")
-    @DeleteMapping("/{srvId}")
-    public AjaxResult delete(@PathVariable String srvId) {
-        int ret = 0;
+    @RequestMapping(value = "/delete", method = RequestMethod.GET)
+    public AjaxResult delete(@RequestParam String srvId) {
         if (StringUtils.isNotBlank(srvId)) {
-            String[] code = srvId.split(",");
-            for (String aid : code) {
-                ret = ptServiceMapper.deleteByPrimaryKey(aid);
-            }
+            List<String> ids = Lists.newArrayList(srvId.split(","));
+            return AjaxResult.success(ptServiceService.removeBatchByIds(ids));
         }
-        return AjaxResult.success();
+        return AjaxResult.error();
     }
 
     @ApiOperation("数据列表")
@@ -118,66 +73,32 @@ public class PtServiceController extends BaseController {
         return sysCateService.findAllO(criteria);
     }
 
-    /**
-     * 获取模型关联服务列表
-     *
-     * @param par
-     * @return
-     */
-    @GetMapping("/modelService")
-    public AjaxResult modelService(MdModelInfoVo par) {
-        if (par.getMdid() == null) return error("模型id不可为空");
-        return AjaxResult.success(ptServiceService.modelService(par));
-    }
-
-
     @ApiOperation("根据主键获取数据")
     @RequestMapping(value = "/get")
     public AjaxResult get(@RequestParam String srvId) {
-        PtService ptService = ptServiceMapper.selectByPrimaryKey(srvId);
-
+        PtService ptService = ptServiceService.getById(srvId);
         ptService.setViewNum(ptService.getViewNum() + 1);
-        ptServiceMapper.updateByPrimaryKeySelective(ptService);
+        ptServiceService.updateById(ptService);
 
         List<PtServiceParam> list = ptServiceParamMapper.selectAll(srvId);
         List<PtServiceReturn> returnList = ptServiceReturnService.selectPtServiceReturnBySrvId(srvId);
         List<PtServiceFile> fileList = ptServiceFileService.selectAll(srvId);
-        String url = "/gxpt/api/service/" + ptService.getSrvId() + "/get_data";
+        String url = gatewayUrl + ptService.getProxyPath() + ptService.getUrl();
         ptService.setUrl(url);
-        ptService.setExample(url + "?accessToken='值'");
-        Map<String, Object> map = new HashMap<>(3);
-        boolean b = ptService.verifySignature();
-        if (b){
-            log.info("ptService 验签成功");
-        }else {
-            log.error("ptService 验签失败:"+ptService.toString());
-        }
-        ptService.setDevelopContacter(sm4Util.decrypt(ptService.getDevelopContacter()));
-        ptService.setMaintainContacer(sm4Util.decrypt(ptService.getMaintainContacer()));
-        ptService.setAdName(sm4Util.decrypt(ptService.getAdName()));
-
-        map.put("ptService", ptService);
-        map.put("list", list);
-        map.put("returnList", returnList);
-        map.put("fileList", fileList);
+        ptService.setExample(url + "?appId={appId}&accessToken={accessToken}");
+        Map<String, Object> map = MapBuilder.of(
+                "ptService", ptService,
+                "list", list,
+                "returnList", returnList,
+                "fileList", fileList
+        );
         return AjaxResult.success(map);
     }
 
     @ApiOperation("根据主键获取数据")
     @RequestMapping(value = "/get/{srvId}")
     public AjaxResult getById(@PathVariable String srvId) {
-        PtService ptService = ptServiceMapper.selectByPrimaryKey(srvId);
-
-        boolean b = ptService.verifySignature();
-        if (b){
-            log.info("ptService 验签成功");
-        }else {
-            log.error("ptService 验签失败:"+ptService.toString());
-        }
-        ptService.setDevelopContacter(sm4Util.decrypt(ptService.getDevelopContacter()));
-        ptService.setMaintainContacer(sm4Util.decrypt(ptService.getMaintainContacer()));
-        ptService.setAdName(sm4Util.decrypt(ptService.getAdName()));
-
+        PtService ptService = ptServiceService.getById(srvId);
         List<PtServiceParam> list = ptServiceParamMapper.selectAll(srvId);
         List<PtServiceReturn> returnList = ptServiceReturnService.selectPtServiceReturnBySrvId(srvId);
         List<PtServiceFile> fileList = ptServiceFileService.selectAll(srvId);
@@ -202,35 +123,18 @@ public class PtServiceController extends BaseController {
     @PostMapping(value = "/publicList")
     public Page publicList(@RequestBody PageParam<PtService> ptServicePage) {
         PageHelper.startPage(ptServicePage);
-        List<PtService> list = ptServiceMapper.selectAllPublic(ptServicePage.getData());
-
+        List<PtService> list = ptServiceService.selectAllPublic(ptServicePage.getData());
         PageInfo<PtService> pageInfo = new PageInfo<>(list);
         return PageUtils.convert(pageInfo);
     }
 
-    @GetMapping("/state")
-    public AjaxResult state(PtService service) {
-        return success(ptServiceService.state(service));
-    }
-
     @ApiOperation("根据主键获取数据")
     @PostMapping(value = "/list")
     public Page list(@RequestBody PageParam<PtService> ptServicePage) {
         PageHelper.startPage(ptServicePage);
         PtService service = Optional.ofNullable(ptServicePage.getData()).orElse(new PtService());
         service.setStatus("1");
-        List<PtService> list = ptServiceMapper.selectAllPublic(ptServicePage.getData());
-        list.forEach(p -> {
-            boolean b = p.verifySignature();
-            if (b){
-                log.info("ptService 验签成功");
-            }else {
-                log.error("ptService 验签失败:"+p.toString());
-            }
-            p.setDevelopContacter(sm4Util.decrypt(p.getDevelopContacter()));
-            p.setMaintainContacer(sm4Util.decrypt(p.getMaintainContacer()));
-            p.setAdName(sm4Util.decrypt(p.getAdName()));
-        });
+        List<PtService> list = ptServiceService.selectAllPublic(ptServicePage.getData());
         PageInfo<PtService> pageInfo = new PageInfo<>(list);
         return PageUtils.convert(pageInfo);
     }
@@ -240,106 +144,4 @@ public class PtServiceController extends BaseController {
         return AjaxResult.success(ptServiceService.getRankingList());
     }
 
-    @ApiOperation("查询服务列表")
-    @GetMapping(value = "/listBySuccess")
-    public AjaxResult listBySuccess(PtService ptService) {
-        QueryWrapper<PtService> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("status", "1")
-                .like(StringUtils.isNotBlank(ptService.getName()), "name", ptService.getName());
-        return AjaxResult.success(ptServiceService.list(queryWrapper));
-    }
-
-    @PutMapping()
-    public AjaxResult put(@RequestBody PtService ptService) {
-        ptService.setDevelopContacter(sm4Util.encrypt(ptService.getDevelopContacter()));
-        ptService.setMaintainContacer(sm4Util.encrypt(ptService.getMaintainContacer()));
-        ptService.setAdName(sm4Util.encrypt(ptService.getAdName()));
-
-
-        MdModelInfo mdModelInfo = mdModelInfoService.selectMdModelInfoByMdid(ptService.getMdid());
-
-
-        if ("1".equals(mdModelInfo.getAudit())) { //模型以审核通过
-            mdModelInfo.setAudit("3");
-            mdModelInfoService.audit(mdModelInfo);
-        }
-        if ("1".equals(mdModelInfo.getPublish())) { //模型以审核通过
-            mdModelInfo.setPublish("3");
-            mdModelInfoService.publish(mdModelInfo);
-        }
-
-        ptService.sign();
-        return AjaxResult.success(ptServiceService.put(ptService));
-    }
-
-
-    @PostMapping("/testRun")
-    public AjaxResult testRun(@RequestBody PtService ptService) throws IOException {
-
-        PtServiceRunLog ptServiceLog = new PtServiceRunLog(ptService);
-        Date nowDate = DateUtils.getNowDate();
-        ptServiceLog.setRunTm(nowDate);
-        ptServiceLog.setCreateBy(getUsername());
-        HashMap<String, String> map = null;
-        try {
-
-            map = ptServiceService.testRun(ptService);
-        } catch (Exception e) {
-
-            ptServiceLog.setSenState("0");
-            String errorMessage = ExceptionUtil.getRootErrorMessage(e);
-            log.error(errorMessage);
-            errorMessage = errorMessage.length() > 490 ? errorMessage.substring(0, 490) : errorMessage;
-            ptServiceLog.setErrorMessage(errorMessage);
-            serviceRunLogService.insertPtServiceRunLog(ptServiceLog);
-            return new AjaxResult(HttpStatus.HTTP_ERROR, "测试出错,请检查参数与路由");
-
-        }
-        ptServiceLog.setExecTm(
-                DateUtils.getNowDate().getTime() - nowDate.getTime());
-        ptServiceLog.setReturnData(map.get("result"));
-        ptServiceLog.setSenState("1");
-        serviceRunLogService.insertPtServiceRunLog(ptServiceLog);
-        return success(map.get("result"));
-    }
-
-    @Autowired
-    private IMdAuditService mdAuditService;
-
-    /**
-     * 服务审核接口
-     *
-     * @param service
-     * @return
-     */
-    @GetMapping("/audit")
-    public AjaxResult audit(PtService service) {
-        Date nowDate = DateUtils.getNowDate();
-        if (StringUtils.isEmpty(service.getSrvId())) {
-            return error("服务id不可为空");
-        }
-        MdAudit srv = new MdAudit(null, service.getSrvId(), "AUDIT", service.getAudit(), getUsername(), nowDate, service.getAuditRemark());
-        int i = mdAuditService.insertMdAudit(srv);
-        service.setAuditBy(getUsername());
-        service.setAuditTime(nowDate);
-        return success(ptServiceService.audit(service));
-    }
-
-    /**
-     * 服务发布接口
-     *
-     * @param service
-     * @return
-     */
-    @GetMapping("/publish")
-    public AjaxResult publish(PtService service) {
-        Date nowDate = DateUtils.getNowDate();
-        MdAudit srv = new MdAudit(null, service.getSrvId(), "PUBLISH", service.getPublish(), getUsername(), nowDate, service.getAuditRemark());
-        int i = mdAuditService.insertMdAudit(srv);
-        service.setPublishBy(getUsername());
-        service.setPublishTime(DateUtils.getNowDate());
-        return success(ptServiceService.publish(service));
-    }
-
-
 }

+ 10 - 3
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtServiceReturnController.java

@@ -5,6 +5,7 @@ import java.util.stream.Collectors;
 import javax.servlet.http.HttpServletResponse;
 
 import com.ruoyi.common.utils.StringUtils;
+import io.swagger.annotations.ApiOperation;
 import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -78,9 +79,9 @@ public class PtServiceReturnController extends BaseController {
     @PostMapping("/addList")
     public AjaxResult addList(@RequestBody List<PtServiceReturn> list) {
         List<PtServiceReturn> collect = list.stream().filter(p -> StringUtils.isNotNull(p.getSrvId()))
-                .filter(p -> StringUtils.isNotNull(p.getParentId()))
                 .filter(p -> StringUtils.isNotNull(p.getParamCode()))
-                .filter(p -> StringUtils.isNotNull(p.getParamType())).collect(Collectors.toList());
+                .filter(p -> StringUtils.isNotNull(p.getParamName()))
+                .collect(Collectors.toList());
         if (StringUtils.isEmpty(collect)) return error("数据为空");
 
         ptServiceReturnService.deletePtServiceReturnBySrvID(collect.get(0).getSrvId());
@@ -89,7 +90,7 @@ public class PtServiceReturnController extends BaseController {
             collect.get(i).setSort(i);
         }
 
-        collect.stream().forEach(ptServiceReturnService::insertPtServiceReturn);
+        collect.forEach(ptServiceReturnService::insertPtServiceReturn);
         return success();
     }
 
@@ -110,4 +111,10 @@ public class PtServiceReturnController extends BaseController {
     public AjaxResult remove(@PathVariable Long[] IDs) {
         return toAjax(ptServiceReturnService.deletePtServiceReturnByIDs(IDs));
     }
+
+    @ApiOperation("数据列表")
+    @GetMapping(value = "/list/{srvId}")
+    public AjaxResult listBysrvId(@PathVariable String srvId) {
+        return AjaxResult.success(ptServiceReturnService.selectPtServiceReturnBySrvId(srvId));
+    }
 }

+ 0 - 197
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtTreeCateController.java

@@ -1,197 +0,0 @@
-package com.ruoyi.interfaces.controller;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletResponse;
-
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.interfaces.domain.MdModelFlow;
-import com.ruoyi.interfaces.domain.MdModelInfo;
-import com.ruoyi.interfaces.domain.PtService;
-import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
-import com.ruoyi.interfaces.service.IMdModelFlowService;
-import com.ruoyi.interfaces.service.IMdModelInfoService;
-import com.ruoyi.interfaces.service.PtServiceService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.ruoyi.common.annotation.Log;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.enums.BusinessType;
-import com.ruoyi.interfaces.domain.PtTreeCate;
-import com.ruoyi.interfaces.service.IPtTreeCateService;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.page.TableDataInfo;
-
-/**
- * 树状目录Controller
- *
- * @author 朱得糠
- * @date 2025-07-29
- */
-@RestController
-@RequestMapping("/interfaces/cate")
-public class PtTreeCateController extends BaseController {
-    @Autowired
-    private IPtTreeCateService ptTreeCateService;
-
-    @Autowired
-    private PtServiceService ptServiceService;
-
-    @Autowired
-    private IMdModelInfoService mdModelInfoService;
-
-    @Autowired
-    private IMdModelFlowService mdModelFlowService;
-
-    /**
-     * 查询树状目录列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(PtTreeCate ptTreeCate) {
-        startPage();
-        List<PtTreeCate> list = ptTreeCateService.selectPtTreeCateList(ptTreeCate);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出树状目录列表
-     */
-    @Log(title = "树状目录", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, PtTreeCate ptTreeCate) {
-        List<PtTreeCate> list = ptTreeCateService.selectPtTreeCateList(ptTreeCate);
-        ExcelUtil<PtTreeCate> util = new ExcelUtil<PtTreeCate>(PtTreeCate.class);
-        util.exportExcel(response, list, "树状目录数据");
-    }
-
-    /**
-     * 获取树状目录详细信息
-     */
-    @GetMapping(value = "/{treeId}")
-    public AjaxResult getInfo(@PathVariable("treeId") String treeId) {
-        return success(ptTreeCateService.selectPtTreeCateByTreeId(treeId));
-    }
-
-    /**
-     * 构建数据项树状列表
-     *
-     * @param ptTreeCate
-     * @return
-     */
-    @GetMapping(value = "/treeselect")
-    public AjaxResult treeselect(PtTreeCate ptTreeCate) {
-        List<PtTreeCate> ptTreeCates = ptTreeCateService.selectPtTreeCateList(ptTreeCate);
-        return success(ptTreeCateService.buildDataTreeSelect(ptTreeCates));
-    }
-
-    /**
-     * 构建模型流程图树状列表
-     *
-     * @param par
-     * @return
-     */
-    @GetMapping(value = "/treeFlow")
-    public AjaxResult treeFlow(MdModelInfo par) {
-        List<PtTreeCate> ptTreeCates = new ArrayList<>();
-        List<MdModelInfo> mdModelInfos = mdModelInfoService.selectMdModelInfoList(par);
-
-        for (MdModelInfo mdModelInfo : mdModelInfos) {
-            if (StringUtils.isNotNull(mdModelInfo.getMdid()) && StringUtils.isNotNull(mdModelInfo.getCateid())
-                    && StringUtils.isNotNull(mdModelInfo.getName())) {
-                ptTreeCates.add(new PtTreeCate(mdModelInfo.getMdid(), mdModelInfo.getCateid(), mdModelInfo.getName(), "MODEL"));
-            }
-        }
-        List<MdModelFlow> mdModelFlows = mdModelFlowService.selectMdModelFlowList(new MdModelFlow());
-        for (MdModelFlow mdModelFlow : mdModelFlows) {
-            if (StringUtils.isNotNull(mdModelFlow.getMdid()) && StringUtils.isNotNull(mdModelFlow.getFlowId())
-                    && StringUtils.isNotNull(mdModelFlow.getFlowName())) {
-                ptTreeCates.add(new PtTreeCate(mdModelFlow.getFlowId().toString(), mdModelFlow.getMdid(), mdModelFlow.getFlowName(), "FLOW"));
-            }
-        }
-
-
-        return success(ptTreeCateService.buildDataTreeSelect(ptTreeCates));
-    }
-
-
-    /**
-     * 新增树状目录
-     */
-    @Log(title = "树状目录", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody PtTreeCate ptTreeCate) {
-        return toAjax(ptTreeCateService.insertPtTreeCate(ptTreeCate));
-    }
-
-    /**
-     * 修改树状目录
-     */
-    @Log(title = "树状目录", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody PtTreeCate ptTreeCate) {
-        return toAjax(ptTreeCateService.updatePtTreeCate(ptTreeCate));
-    }
-
-    /**
-     * 删除树状目录
-     */
-    @Log(title = "树状目录", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{treeIds}")
-    public AjaxResult remove(@PathVariable String[] treeIds) {
-        return toAjax(ptTreeCateService.deletePtTreeCateByTreeIds(treeIds));
-    }
-
-
-    /**
-     * 构建模型树状列表
-     *
-     * @param ptTreeCate
-     * @return
-     */
-    @GetMapping(value = "/modelTreeSelect")
-    public AjaxResult modelTreeSelect(PtTreeCate ptTreeCate) {
-        ptTreeCate.setTreeType("APP");
-        String level = StringUtils.isNull(ptTreeCate.getParams().get("level")) ? "3" : ptTreeCate.getParams().get("level").toString();
-        String devkind = StringUtils.isNull(ptTreeCate.getParams().get("devkind")) ? null : ptTreeCate.getParams().get("devkind").toString();
-        String mdAudit = StringUtils.isNull(ptTreeCate.getParams().get("mdAudit")) ? null : ptTreeCate.getParams().get("mdAudit").toString();
-
-        List<PtTreeCate> ptTreeCates = ptTreeCateService.selectPtTreeCateList(ptTreeCate).stream().peek(item -> item.setNodeType("TREE")).collect(Collectors.toList());
-        if (level.equals("2") || level.equals("3")) {
-            MdModelInfo modelPar = new MdModelInfo();
-            modelPar.setDevkind(devkind);
-            modelPar.setAudit(mdAudit);
-            List<MdModelInfo> mdModelInfos = mdModelInfoService.selectMdModelInfoList(modelPar);
-            for (MdModelInfo mdModelInfo : mdModelInfos) {
-                if (StringUtils.isNotNull(mdModelInfo.getMdid()) && StringUtils.isNotNull(mdModelInfo.getCateid())
-                        && StringUtils.isNotNull(mdModelInfo.getName())) {
-                    ptTreeCates.add(new PtTreeCate(mdModelInfo.getMdid(), mdModelInfo.getCateid(), mdModelInfo.getName(), "MODEL", null));
-                }
-            }
-        }
-        if (level.equals("3")) {
-            PtService ptService1 = new PtService();
-
-            System.out.println(ptTreeCate.getParams().get("serviceState"));
-            ptService1.setState(ptTreeCate.getParams().get("serviceState") != null ? ptTreeCate.getParams().get("serviceState").toString() : null);
-            List<PtService> ptServices = ptServiceService.selectAllColumns(ptService1);
-            for (PtService ptService : ptServices) {
-                if (StringUtils.isNotNull(ptService.getSrvId()) &&
-                        StringUtils.isNotNull(ptService.getMdid()) &&
-                        StringUtils.isNotNull(ptService.getName())) {
-                    ptTreeCates.add(new PtTreeCate(ptService.getSrvId(), ptService.getMdid(), ptService.getName(), "SERVICE", ptService));
-                }
-            }
-        }
-        return success(ptTreeCateService.buildDataTreeSelect(ptTreeCates));
-    }
-
-}

+ 3 - 6
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/TokenController.java

@@ -15,18 +15,15 @@ import java.util.Map;
  * Created by xujingfeng on 2017/4/1.
  */
 @RestController
-@RequestMapping("/service/token")
+@RequestMapping("/oauth/token")
 public class TokenController {
 
     @Autowired
     private InterfaceTokenService tokenService;
 
-//    @Value("${shenyu.client.props.contextPath}")
-//    private String gatewayContextPath;
-
     @GetMapping("")
-    public Map<String, Object> token(String grant_type, String appId, String secret) {
-        return tokenService.token(grant_type, appId, secret);
+    public Map<String, Object> token(String appId, String secret) {
+        return tokenService.token(appId, secret);
     }
 
 }

+ 0 - 80
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtService.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.common.core.domain.BaseEntity;
-import com.ruoyi.common.utils.SignUtil;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -27,9 +25,6 @@ public class PtService implements Serializable {
     @TableId(value = "SRV_ID", type = IdType.ASSIGN_UUID)
     @ApiModelProperty("srvId")
     private String srvId;
-
-    @ApiModelProperty("模型id")
-    private String mdid;
     @ApiModelProperty("目录ID")
     private String cateCode;
     @ApiModelProperty("服务名称")
@@ -81,10 +76,6 @@ public class PtService implements Serializable {
     private String proxyAddress;
     @ApiModelProperty("代理路径")
     private String proxyPath;
-    /**
-     * 网管代理id
-     */
-    private String gatewayId;
     @ApiModelProperty("示例")
     private String example;
 
@@ -115,75 +106,4 @@ public class PtService implements Serializable {
     @TableField(exist = false)
     @ApiModelProperty("请求参数列表")
     private List<PtServiceParam> params;
-
-    /**
-     * 模型状态
-     */
-    private String state;
-
-    public PtService(String mdid) {
-        this.mdid = mdid;
-    }
-
-    /**
-     * 排序
-     */
-    private Integer sort;
-
-    /**
-     * 审核状态
-     * 审核状态 0=待审核;1=已审核;2 = 驳回
-     */
-    private String audit;
-    private String auditBy;
-    private String auditRemark;
-    private Date auditTime;
-
-    private String publish;
-    private String publishBy;
-    private Date publishTime;
-    /**
-     * 测试状态
-     */
-    private Integer senState;
-
-
-
-    /**
-     * 签名字段
-     */
-    private String dataSignature;
-
-    /**
-     * 生成数据签名 - 自定义哪些字段参与签名
-     */
-    public String generateSignature() {
-        // 选择重要的业务字段参与签名
-        return SignUtil.generateSign(
-                srvId,
-                developContacter,
-                maintainContacer,
-                adName
-        );
-    }
-
-    /**
-     * 验证数据完整性
-     */
-    public boolean verifySignature() {
-        return SignUtil.verifySign(dataSignature,
-                srvId,
-                developContacter,
-                maintainContacer,
-                adName
-        );
-    }
-
-    /**
-     * 自动设置签名
-     */
-    public void sign() {
-        this.dataSignature = generateSignature();
-    }
-
 }

+ 8 - 126
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtServiceReturn.java

@@ -1,5 +1,9 @@
 package com.ruoyi.interfaces.domain;
 
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 import com.ruoyi.common.annotation.Excel;
@@ -11,6 +15,10 @@ import com.ruoyi.common.core.domain.BaseEntity;
  * @author 朱得糠
  * @date 2025-08-29
  */
+@EqualsAndHashCode(callSuper = true)
+@AllArgsConstructor
+@NoArgsConstructor
+@Data
 public class PtServiceReturn extends BaseEntity
 {
     private static final long serialVersionUID = 1L;
@@ -62,130 +70,4 @@ public class PtServiceReturn extends BaseEntity
     @Excel(name = "排序")
     private Integer sort;
 
-    public void setId(Long id)
-    {
-        this.id = id;
-    }
-
-    public Long getId()
-    {
-        return id;
-    }
-    public void setParentId(Long parentId) 
-    {
-        this.parentId = parentId;
-    }
-
-    public Long getParentId() 
-    {
-        return parentId;
-    }
-    public void setSrvId(String srvId) 
-    {
-        this.srvId = srvId;
-    }
-
-    public String getSrvId() 
-    {
-        return srvId;
-    }
-    public void setParamCode(String paramCode) 
-    {
-        this.paramCode = paramCode;
-    }
-
-    public String getParamCode() 
-    {
-        return paramCode;
-    }
-    public void setParamName(String paramName) 
-    {
-        this.paramName = paramName;
-    }
-
-    public String getParamName() 
-    {
-        return paramName;
-    }
-    public void setParamType(String paramType) 
-    {
-        this.paramType = paramType;
-    }
-
-    public String getParamType() 
-    {
-        return paramType;
-    }
-    public void setParamValue(String paramValue) 
-    {
-        this.paramValue = paramValue;
-    }
-
-    public String getParamValue() 
-    {
-        return paramValue;
-    }
-    public void setParamFormat(String paramFormat) 
-    {
-        this.paramFormat = paramFormat;
-    }
-
-    public String getParamFormat() 
-    {
-        return paramFormat;
-    }
-    public void setParamNote(String paramNote) 
-    {
-        this.paramNote = paramNote;
-    }
-
-    public String getParamNote() 
-    {
-        return paramNote;
-    }
-    public void setIsArray(String isArray) 
-    {
-        this.isArray = isArray;
-    }
-
-    public String getIsArray() 
-    {
-        return isArray;
-    }
-    public void setArrayIndex(Long arrayIndex) 
-    {
-        this.arrayIndex = arrayIndex;
-    }
-
-    public Long getArrayIndex() 
-    {
-        return arrayIndex;
-    }
-    public void setSort(Integer sort)
-    {
-        this.sort = sort;
-    }
-
-    public Integer getSort()
-    {
-        return sort;
-    }
-
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("ID", getId())
-            .append("parentId", getParentId())
-            .append("srvId", getSrvId())
-            .append("paramCode", getParamCode())
-            .append("paramName", getParamName())
-            .append("paramType", getParamType())
-            .append("paramValue", getParamValue())
-            .append("paramFormat", getParamFormat())
-            .append("paramNote", getParamNote())
-            .append("isArray", getIsArray())
-            .append("arrayIndex", getArrayIndex())
-            .append("SORT", getSort())
-            .toString();
-    }
 }

+ 58 - 53
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtServiceRunLog.java

@@ -1,49 +1,63 @@
 package com.ruoyi.interfaces.domain;
 
-import java.util.Date;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
 import com.ruoyi.common.utils.JsonUtils;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
-import com.ruoyi.common.annotation.Excel;
-import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.util.Date;
 
 /**
  * 服务运行log对象 pt_service_run_log
- * 
+ *
  * @author 朱得糠
  * @date 2025-09-23
  */
-public class PtServiceRunLog extends BaseEntity
-{
+public class PtServiceRunLog extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
-    /** id */
+    /**
+     * id
+     */
     @Excel(name = "id")
     private Long logId;
 
-    /** 服务id */
+    /**
+     * 服务id
+     */
     @Excel(name = "服务id")
     private String serId;
 
-    /** 模型id */
+    /**
+     * 模型id
+     */
     @Excel(name = "模型id")
     private String mdId;
 
-    /** 请求时间 */
+    /**
+     * 请求时间
+     */
     @JsonFormat(pattern = "yyyy-MM-dd")
     @Excel(name = "请求时间", width = 30, dateFormat = "yyyy-MM-dd")
     private Date runTm;
 
-    /** 请求参数 */
+    /**
+     * 请求参数
+     */
     @Excel(name = "请求参数")
     private String senParam;
 
-    /** 返回信息 */
+    /**
+     * 返回信息
+     */
     @Excel(name = "返回信息")
     private String returnData;
 
-    /** 请求耗时(毫秒) */
+    /**
+     * 请求耗时(毫秒)
+     */
     @Excel(name = "请求耗时", readConverterExp = "毫=秒")
     private Long execTm;
 
@@ -58,9 +72,8 @@ public class PtServiceRunLog extends BaseEntity
     private String errorMessage;
 
     public PtServiceRunLog(PtService ptService) {
-        this.serId=ptService.getSrvId();
-        this.mdId=ptService.getMdid();
-        this.senParam= JsonUtils.objectToJson(ptService.getParams());
+        this.serId = ptService.getSrvId();
+        this.senParam = JsonUtils.objectToJson(ptService.getParams());
     }
 
     public String getSenState() {
@@ -82,80 +95,72 @@ public class PtServiceRunLog extends BaseEntity
     public PtServiceRunLog() {
     }
 
-    public void setLogId(Long logId)
-    {
+    public void setLogId(Long logId) {
         this.logId = logId;
     }
 
-    public Long getLogId() 
-    {
+    public Long getLogId() {
         return logId;
     }
-    public void setSerId(String serId) 
-    {
+
+    public void setSerId(String serId) {
         this.serId = serId;
     }
 
-    public String getSerId() 
-    {
+    public String getSerId() {
         return serId;
     }
-    public void setMdId(String mdId) 
-    {
+
+    public void setMdId(String mdId) {
         this.mdId = mdId;
     }
 
-    public String getMdId() 
-    {
+    public String getMdId() {
         return mdId;
     }
-    public void setRunTm(Date runTm) 
-    {
+
+    public void setRunTm(Date runTm) {
         this.runTm = runTm;
     }
 
-    public Date getRunTm() 
-    {
+    public Date getRunTm() {
         return runTm;
     }
-    public void setSenParam(String senParam) 
-    {
+
+    public void setSenParam(String senParam) {
         this.senParam = senParam;
     }
 
-    public String getSenParam() 
-    {
+    public String getSenParam() {
         return senParam;
     }
-    public void setReturnData(String returnData) 
-    {
+
+    public void setReturnData(String returnData) {
         this.returnData = returnData;
     }
 
-    public String getReturnData() 
-    {
+    public String getReturnData() {
         return returnData;
     }
-    public void setExecTm(Long execTm) 
-    {
+
+    public void setExecTm(Long execTm) {
         this.execTm = execTm;
     }
 
-    public Long getExecTm() 
-    {
+    public Long getExecTm() {
         return execTm;
     }
 
     @Override
     public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("logId", getLogId())
-            .append("serId", getSerId())
-            .append("mdId", getMdId())
-            .append("runTm", getRunTm())
-            .append("senParam", getSenParam())
-            .append("returnData", getReturnData())
-            .append("execTm", getExecTm())
-            .toString();
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("logId", getLogId())
+                .append("serId", getSerId())
+                .append("mdId", getMdId())
+                .append("runTm", getRunTm())
+                .append("senParam", getSenParam())
+                .append("returnData", getReturnData())
+                .append("execTm", getExecTm())
+                .toString();
     }
 }

+ 2 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/GatewayRoutesMapper.java

@@ -17,6 +17,8 @@ public interface GatewayRoutesMapper {
 
     GatewayRoutes get(String id);
 
+    GatewayRoutes getByPredicates(String predicates);
+
     int delete(String id);
 
     List<GatewayRoutes> findList(GatewayRoutes entity);

+ 1 - 58
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/PtServiceMapper.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.common.annotation.DataSource;
 import com.ruoyi.common.enums.DataSourceType;
 import com.ruoyi.interfaces.domain.PtService;
+import com.ruoyi.interfaces.domain.PtServiceWithBLOBs;
 import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
 import com.ruoyi.interfaces.domain.vo.PtServiceVo;
 import org.apache.ibatis.annotations.Param;
@@ -16,20 +17,6 @@ import java.util.List;
 
 public interface PtServiceMapper extends BaseMapper<PtService> {
 
-    /**
-     * 添加数据
-     *
-     * @param record
-     * @return
-     */
-    int insert(PtService record);
-
-    /**
-     * 查询数据列表
-     *
-     * @param ptService
-     * @return
-     */
     List<PtService> selectAll(PtService ptService);
 
     List<PtServiceVo> listByUserService(PtService ptService);
@@ -38,52 +25,8 @@ public interface PtServiceMapper extends BaseMapper<PtService> {
 
     List<PtService> selectAllPublic(PtService ptService);
 
-    /**
-     * 根据主键获取数据
-     *
-     * @param srvId
-     * @return
-     */
-    PtService selectByPrimaryKey(String srvId);
-
-    /**
-     * 根据主键更新数据
-     *
-     * @param record
-     * @return
-     */
-    int updateByPrimaryKeySelective(PtService record);
-
-    /**
-     * 根据主键删除数据
-     *
-     * @param srvId
-     * @return
-     */
-    int deleteByPrimaryKey(String srvId);
-
     List<PtService> listOfCntTop10();
 
     List<PtService> listOfTmTop20();
 
-    MdModelInfoVo selectModelService(MdModelInfoVo par);
-
-    int audit(PtService service);
-
-    int updatePtServicePublish(PtService service);
-
-
-    int updatePtServicePublishByMdid(PtService service);
-
-    int updateState(PtService service);
-
- /*   int insertSelective(PtServiceWithBLOBs record);
-
-    PtServiceWithBLOBs selectByPrimaryKey(String srvId);
-
-    int updateByPrimaryKeySelective(PtServiceWithBLOBs record);
-
-    int updateByPrimaryKeyWithBLOBs(PtServiceWithBLOBs record);
-
-    int updateByPrimaryKey(PtService record);*/
 }

+ 2 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/GatewayRoutesService.java

@@ -25,7 +25,8 @@ public interface GatewayRoutesService  {
 
     List<GatewayRoutes> list(GatewayRoutes gatewayRoutes);
 
-
     void refreshRoutes();
 
+    GatewayRoutes getByPredicates(String predicates);
+
 }

+ 8 - 11
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/IMdModelInfoService.java

@@ -7,15 +7,14 @@ import java.util.List;
 
 /**
  * 模型信息Service接口
- * 
+ *
  * @author ruoyi
  * @date 2025-07-15
  */
-public interface IMdModelInfoService 
-{
+public interface IMdModelInfoService {
     /**
      * 查询模型信息
-     * 
+     *
      * @param mdid 模型信息主键
      * @return 模型信息
      */
@@ -23,7 +22,7 @@ public interface IMdModelInfoService
 
     /**
      * 查询模型信息列表
-     * 
+     *
      * @param mdModelInfo 模型信息
      * @return 模型信息集合
      */
@@ -31,7 +30,7 @@ public interface IMdModelInfoService
 
     /**
      * 新增模型信息
-     * 
+     *
      * @param mdModelInfo 模型信息
      * @return 结果
      */
@@ -39,7 +38,7 @@ public interface IMdModelInfoService
 
     /**
      * 修改模型信息
-     * 
+     *
      * @param mdModelInfo 模型信息
      * @return 结果
      */
@@ -47,7 +46,7 @@ public interface IMdModelInfoService
 
     /**
      * 批量删除模型信息
-     * 
+     *
      * @param mdids 需要删除的模型信息主键集合
      * @return 结果
      */
@@ -55,7 +54,7 @@ public interface IMdModelInfoService
 
     /**
      * 删除模型信息信息
-     * 
+     *
      * @param mdid 模型信息主键
      * @return 结果
      */
@@ -63,8 +62,6 @@ public interface IMdModelInfoService
 
     int audit(MdModelInfo mdModelInfo);
 
-    int publish(MdModelInfo mdModelInfo);
-
     int modelSetRela(MdModelSetRelaVo modelSet);
 
     int deleteModelSetRela(MdModelSetRelaVo modelSet);

+ 1 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/InterfaceTokenService.java

@@ -18,7 +18,7 @@ public interface InterfaceTokenService {
      */
     String createToken(PtApp ptApp);
 
-    Map<String, Object> token(String grantType, String appId, String secret);
+    Map<String, Object> token(String appId, String secret);
 
     /**
      * 获取 appId

+ 25 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/PtServiceReturnService.java

@@ -0,0 +1,25 @@
+package com.ruoyi.interfaces.service;
+
+import com.ruoyi.interfaces.domain.PtServiceReturn;
+import com.ruoyi.interfaces.core.page.Page;
+
+import java.util.List;
+
+/**
+ * @author LinQiLong
+ * @date 2022/1/26 11:37
+ */
+public interface PtServiceReturnService {
+
+    public int insert(PtServiceReturn ptServiceReturn);
+
+    public int update(PtServiceReturn ptServiceReturn);
+
+    public int inserts(List<PtServiceReturn> serviceParamList);
+
+    public Page list(String srvId, int page, int rows);
+
+    public List<PtServiceReturn> listBysrvId(String srvId);
+
+    public int delete(String srvId, String paramCode);
+}

+ 3 - 13
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/PtServiceService.java

@@ -1,10 +1,7 @@
 package com.ruoyi.interfaces.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.interfaces.domain.MdModelInfo;
 import com.ruoyi.interfaces.domain.PtService;
-import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
 
 import java.io.IOException;
 import java.util.HashMap;
@@ -17,6 +14,8 @@ import java.util.Map;
  */
 public interface PtServiceService extends IService<PtService> {
 
+    List<PtService> selectAllPublic(PtService ptService);
+
     /**
      * @return 申请数量Top10的数据
      */
@@ -37,19 +36,10 @@ public interface PtServiceService extends IService<PtService> {
      */
     Map<String, List<PtService>> getRankingList();
 
-    MdModelInfoVo modelService(MdModelInfoVo par);
-
     List<PtService> selectAllColumns(PtService ptService);
 
     int put(PtService ptService);
 
-    HashMap<String,String> testRun(PtService ptService) throws IOException;
-
-    int audit(PtService service);
-
-    int publish(PtService service);
-
-    int publishByMdid(PtService mdid);
+    HashMap<String, String> testRun(PtService ptService) throws IOException;
 
-    int state(PtService service);
 }

+ 5 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/GatewayRoutesServiceImpl.java

@@ -55,4 +55,9 @@ public class GatewayRoutesServiceImpl implements GatewayRoutesService {
         log.info("刷新路由");
     }
 
+    @Override
+    public GatewayRoutes getByPredicates(String predicates) {
+        return gatewayRoutesMapper.getByPredicates(predicates);
+    }
+
 }

+ 8 - 10
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/InterfaceTokenServiceImpl.java

@@ -1,14 +1,15 @@
 package com.ruoyi.interfaces.service.impl;
 
+import com.ruoyi.common.core.builder.MapBuilder;
 import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.interfaces.domain.PtApp;
 import com.ruoyi.interfaces.enums.TokenError;
 import com.ruoyi.interfaces.service.InterfaceTokenService;
 import com.ruoyi.interfaces.service.PtAppService;
-import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -66,21 +67,18 @@ public class InterfaceTokenServiceImpl implements InterfaceTokenService {
     }
 
     @Override
-    public Map<String, Object> token(String grantType, String appId, String secret) {
+    public Map<String, Object> token(String appId, String secret) {
         PtApp ptApp = ptAppService.getById(appId);
         if (ptApp == null) {
             return failResponse(TokenError.APPID_ERR);
-        } else if (!Optional.of(ptApp).map(PtApp::getAppSecret).isPresent() ||
-                !ptApp.getAppSecret().equals(secret)) {
+        } else if (!Optional.of(ptApp).map(PtApp::getAppSecret).isPresent() || !ptApp.getAppSecret().equals(secret)) {
             return failResponse(TokenError.APPSECRET_ERR);
-        } else if (!CLIENT_CREDENTIAL.equals(grantType)) {
-            return failResponse(TokenError.GRANT_TYPE_ERR);
         }
 
-        Map<String, Object> ret = new HashMap<>(2);
-        ret.put("access_token", createToken(ptApp));
-        ret.put("expires_in", expireTime);
-        return ret;
+        return MapBuilder.of(
+                "access_token", createToken(ptApp),
+                "expires_in", expireTime
+        );
     }
 
     private Map<String, Object> failResponse(int code, String msg) {

+ 0 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/MdFileUoloadServiceImpl.java

@@ -117,7 +117,6 @@ public class MdFileUoloadServiceImpl implements IMdFileUoloadService
         }
         if ("1".equals(mdModelInfo.getPublish())){ //模型以更新通过
             mdModelInfo.setPublish("3");  //4 = 代更新状态
-            mdModelInfoService.publish(mdModelInfo);
         }
 
         mdModelInfo.setMdFileId(mdFileUoload.getFileId());

+ 6 - 20
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/MdModelInfoServiceImpl.java

@@ -4,7 +4,6 @@ import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SM4Util;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
-import com.ruoyi.interfaces.controller.PtServiceController;
 import com.ruoyi.interfaces.domain.MdModelInfo;
 import com.ruoyi.interfaces.domain.PtService;
 import com.ruoyi.interfaces.domain.vo.MdModelSetRelaVo;
@@ -50,10 +49,10 @@ public class MdModelInfoServiceImpl implements IMdModelInfoService {
 
         if (StringUtils.isNotNull(mdModelInfo)) {
             boolean b = mdModelInfo.verifySignature();
-            if (b){
+            if (b) {
                 log.info("验签成功");
-            }else {
-                log.error("验签失败:"+mdModelInfo.toString());
+            } else {
+                log.error("验签失败:" + mdModelInfo.toString());
             }
             mdModelInfo.setEnname(sm4Util.decrypt(mdModelInfo.getEnname()));
             mdModelInfo.setMdContact(sm4Util.decrypt(mdModelInfo.getMdContact()));
@@ -74,10 +73,10 @@ public class MdModelInfoServiceImpl implements IMdModelInfoService {
         List<MdModelInfo> mdModelInfos = mdModelInfoMapper.selectMdModelInfoList(mdModelInfo);
         mdModelInfos.forEach(p -> {
             boolean b = p.verifySignature();
-            if (b){
+            if (b) {
                 log.info("mdModelInfo 验签成功");
-            }else {
-                log.error("mdModelInfo 验签失败:"+p.toString());
+            } else {
+                log.error("mdModelInfo 验签失败:" + p.toString());
             }
             p.setEnname(sm4Util.decrypt(p.getEnname()));
             p.setMdContact(sm4Util.decrypt(p.getMdContact()));
@@ -154,19 +153,6 @@ public class MdModelInfoServiceImpl implements IMdModelInfoService {
     @Autowired
     private PtServiceService ptServiceService;
 
-    @Override
-    public int publish(MdModelInfo mdModelInfo) {
-        int i = mdModelInfoMapper.updateMdModelInfoPublish(mdModelInfo);
-        if ("1".equals(mdModelInfo.getPublish())) {
-            PtService ptService = new PtService();
-            ptService.setMdid(mdModelInfo.getMdid());
-            ptService.setPublishBy(mdModelInfo.getPublishBy());
-            ptService.setPublishTime(DateUtils.getNowDate());
-            ptService.setPublish(mdModelInfo.getPublish());
-            ptServiceService.publishByMdid(ptService);
-        }
-        return i;
-    }
 
     @Override
     public int modelSetRela(MdModelSetRelaVo modelSet) {

+ 0 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/PtServiceMonitorServiceImpl.java

@@ -41,7 +41,6 @@ public class PtServiceMonitorServiceImpl implements IPtServiceMonitorService {
     public List<Map<String, Object>> statisticData() {
         List<Map<String, Object>> statisticData = new ArrayList<>(5);
 
-        statisticData.add(MapBuilder.of("name", "模型总数", "value", mdModelInfoService.count(), "color", "#477ACF"));
         QueryWrapper<PtService> wrapper = new QueryWrapper<>();
         wrapper.eq("status", "1");
         long count = ptServiceService.count(wrapper);

+ 14 - 78
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/PtServiceServiceImpl.java

@@ -8,19 +8,15 @@ import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.interfaces.domain.GatewayRoutes;
 import com.ruoyi.interfaces.domain.PtService;
 import com.ruoyi.interfaces.domain.PtServiceParam;
-import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
 import com.ruoyi.interfaces.mapper.PtServiceMapper;
 import com.ruoyi.interfaces.mapper.PtServiceParamMapper;
 import com.ruoyi.interfaces.service.GatewayRoutesService;
-import com.ruoyi.interfaces.service.IMdModelInfoService;
 import com.ruoyi.interfaces.service.PtServiceService;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.io.IOException;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -30,26 +26,19 @@ import java.util.Map;
  * @author LinQiLong
  * @date 2021/12/21 15:55
  */
+@Slf4j
 @Service
 public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService> implements PtServiceService {
 
-    private static final Logger log = LoggerFactory.getLogger(PtServiceServiceImpl.class);
-
-    private final PtServiceMapper ptServiceMapper;
-
     private final RedisOperator redisOperator;
 
-    @Autowired
-    private IMdModelInfoService mdModelInfoService;
-
     @Autowired
     private PtServiceParamMapper ptServiceParamMapper;
 
     @Autowired
     private SM4Util sm4Util;
 
-    public PtServiceServiceImpl(PtServiceMapper ptServiceMapper, RedisOperator redisOperator) {
-        this.ptServiceMapper = ptServiceMapper;
+    public PtServiceServiceImpl(RedisOperator redisOperator) {
         this.redisOperator = redisOperator;
     }
 
@@ -80,14 +69,19 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
         return super.updateById(entity);
     }
 
+    @Override
+    public List<PtService> selectAllPublic(PtService ptService) {
+        return this.baseMapper.selectAllPublic(ptService);
+    }
+
     @Override
     public List<PtService> listOfCntTop10() {
-        return ptServiceMapper.listOfCntTop10();
+        return this.baseMapper.listOfCntTop10();
     }
 
     @Override
     public List<PtService> listOfTmTop20() {
-        return ptServiceMapper.listOfTmTop20();
+        return this.baseMapper.listOfTmTop20();
     }
 
     @Override
@@ -110,41 +104,9 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
         return ret;
     }
 
-    /**
-     * 获取模型关联服务
-     *
-     * @param par
-     * @return
-     */
-    @Override
-    public MdModelInfoVo modelService(MdModelInfoVo par) {
-        MdModelInfoVo mdModelInfoVo = ptServiceMapper.selectModelService(par);
-        if (StringUtils.isNotNull(mdModelInfoVo)) {
-            boolean b = mdModelInfoVo.verifySignature();
-            if (b){
-                log.info("mdModelInfoVo 验签成功");
-            }else {
-                log.error("mdModelInfoVo 验签失败:"+mdModelInfoVo.toString());
-            }
-            mdModelInfoVo.setMdContact(sm4Util.decrypt(mdModelInfoVo.getMdContact()));
-            mdModelInfoVo.setEnname(sm4Util.decrypt(mdModelInfoVo.getEnname()));
-            mdModelInfoVo.setDevUnit(sm4Util.decrypt(mdModelInfoVo.getDevUnit()));
-            mdModelInfoVo.setDevContact(sm4Util.decrypt(mdModelInfoVo.getDevContact()));
-        }
-
-        if (StringUtils.isNotNull(mdModelInfoVo) && StringUtils.isNotEmpty(mdModelInfoVo.getServiceList()))
-            mdModelInfoVo.getServiceList().forEach(p -> {
-                p.setDevelopContacter(sm4Util.decrypt(p.getDevelopContacter()));
-                p.setMaintainContacer(sm4Util.decrypt(p.getMaintainContacer()));
-                p.setAdName(sm4Util.decrypt(p.getAdName()));
-
-            });
-        return mdModelInfoVo;
-    }
-
     @Override
     public List<PtService> selectAllColumns(PtService ptService) {
-        List<PtService> ptServices = ptServiceMapper.selectAllColumns(ptService);
+        List<PtService> ptServices = this.baseMapper.selectAllColumns(ptService);
         ptServices.forEach(p -> {
             p.setDevelopContacter(sm4Util.decrypt(p.getDevelopContacter()));
             p.setMaintainContacer(sm4Util.decrypt(p.getMaintainContacer()));
@@ -155,7 +117,7 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
 
     @Override
     public int put(PtService ptService) {
-        return ptServiceMapper.updateByPrimaryKeySelective(ptService);
+        return this.baseMapper.updateById(ptService);
     }
 
 
@@ -163,15 +125,12 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
     private GatewayRoutesService gatewayRoutesService;
 
     @Override
-    public HashMap<String, String> testRun(PtService ptService) throws IOException {
-
-        GatewayRoutes gatewayRoutes = gatewayRoutesService.getById(ptService.getGatewayId());
+    public HashMap<String, String> testRun(PtService ptService) {
+        GatewayRoutes gatewayRoutes = gatewayRoutesService.getByPredicates(ptService.getProxyPath());
         String url = RuoYiConfig.getGatewayUrl() + gatewayRoutes.getPredicates() + ptService.getUrl();
         System.out.println(url);
-        //String url = ptService.getUrl();
         HashMap<String, Object> headers = new HashMap<>();
         List<PtServiceParam> params = ptService.getParams();
-//        HttpUtils.setGatewayHeaders(headers);
         String paramString = "";
         HashMap<String, Object> parMap = new HashMap<>();
         for (PtServiceParam param : params) {
@@ -191,27 +150,4 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
         return result;
     }
 
-    @Override
-    public int audit(PtService service) {
-
-        return ptServiceMapper.audit(service);
-    }
-
-    @Override
-    public int publish(PtService service) {
-        return ptServiceMapper.updatePtServicePublish(service);
-    }
-
-    @Override
-    public int publishByMdid(PtService service) {
-        return ptServiceMapper.updatePtServicePublishByMdid(service);
-    }
-
-    @Override
-    public int state(PtService service) {
-        return ptServiceMapper.updateState(service);
-    }
-
-    public void senServiceLog() {
-    }
 }

+ 10 - 6
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/ServiceDataViewServiceImpl.java

@@ -9,9 +9,9 @@ import com.ruoyi.interfaces.domain.PtServiceReturn;
 import com.ruoyi.interfaces.service.IPtServiceReturnService;
 import com.ruoyi.interfaces.service.PtServiceService;
 import com.ruoyi.interfaces.service.ServiceDataViewService;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
@@ -21,10 +21,12 @@ import java.util.stream.Collectors;
  * @author LinQiLong
  * @date 2022/2/14 19:15
  */
+@Slf4j
 @Service
 public class ServiceDataViewServiceImpl implements ServiceDataViewService {
 
-    private Logger logger = LoggerFactory.getLogger(getClass());
+    @Value("${sys.gateway.url}")
+    private String gatewayUrl;
 
     public static final Map<String, String> HEADER_MAP = new HashMap<String, String>() {{
         put("Content-Type", "application/json; charset=utf-8");
@@ -44,6 +46,8 @@ public class ServiceDataViewServiceImpl implements ServiceDataViewService {
         Optional.ofNullable(ptService).orElseThrow(() -> new CheckException("url invalid"));
         List<PtServiceReturn> ptServiceReturnList = ptServiceReturnService.selectPtServiceReturnBySrvId(srvId);
 
+        String url = gatewayUrl + ptService.getProxyPath() + ptService.getUrl();
+
         //第二步:设置请求参数 ptService.getUrl()
         Map<String, Object> queryParams = new HashMap<>();
 //        for (Map.Entry<String, String[]> entry : paramMap.entrySet()) {
@@ -59,12 +63,12 @@ public class ServiceDataViewServiceImpl implements ServiceDataViewService {
         String xmlInfo = null;
         try {
             if ("get".equalsIgnoreCase(ptService.getRqtype())) {
-                xmlInfo = OkHttpUtils.getMap(ptService.getUrl(), queryParams);
+                xmlInfo = OkHttpUtils.getMap(url, queryParams);
             } else {
-                xmlInfo = OkHttpUtils.postJson(ptService.getUrl(), JSON.toJSONString(queryParams), HEADER_MAP);
+                xmlInfo = OkHttpUtils.postJson(url, JSON.toJSONString(queryParams), HEADER_MAP);
             }
         } catch (Exception e) {
-            logger.error(e.getMessage(), e);
+            log.error(e.getMessage(), e);
         }
 
         List<Object> list = getList(JSONObject.parseObject(xmlInfo));

+ 1 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/tinyflow/node/ServiceNode.java

@@ -38,7 +38,7 @@ public class ServiceNode extends BaseNode {
 
         GatewayRoutesService gatewayRoutesService = SpringUtils.getBean(GatewayRoutesService.class);
         Map<String, Object> map = new HashMap<>();
-        GatewayRoutes gatewayRoutes = gatewayRoutesService.getById(ptService.getGatewayId());
+        GatewayRoutes gatewayRoutes = gatewayRoutesService.getByPredicates(ptService.getProxyPath());
         String url = RuoYiConfig.getGatewayUrl() + gatewayRoutes.getPredicates() + ptService.getUrl();
         //String url = RuoYiConfig.getGatewayUrl() + ptService.getProxyPath() + ptService.getUrl();
         System.out.println("url:" + url);

+ 6 - 0
ruoyi-api-patform/src/main/resources/mapper/interfaces/GatewayRoutesMapper.xml

@@ -53,6 +53,12 @@
         from GATEWAY_ROUTES where ID = #{id}
     </select>
 
+    <select id="getByPredicates" resultMap="gatewayRoutesResultMap" parameterType="String">
+        select
+        <include refid="table_columns"/>
+        from GATEWAY_ROUTES where PREDICATES = #{predicates}
+    </select>
+
     <select id="getBy" resultMap="gatewayRoutesResultMap">
         select
         <include refid="table_columns"/>

+ 3 - 3
ruoyi-api-patform/src/main/resources/mapper/interfaces/MyAttentionMapper.xml

@@ -70,8 +70,8 @@
             parameterType="com.ruoyi.interfaces.domain.MyAttention">
         select count(*)
         from MY_ATTENTION
-        where URL = #{url}
-          and USER_ID = #{userId}
+        where URL = CAST(#{url} AS VARCHAR2)
+          and USER_ID = CAST(#{userId} AS VARCHAR2)
     </select>
 
     <select id="list" resultMap="BaseResultMap">
@@ -87,4 +87,4 @@
             </if>
         </where>
     </select>
-</mapper>
+</mapper>

+ 7 - 1
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtAppMapper.xml

@@ -84,7 +84,13 @@
         <include refid="page_where"/>
     </select>
     <select id="findListByIds" resultType="com.ruoyi.interfaces.domain.PtApp">
-
+        select
+        <include refid="table_columns"/>
+        from PT_APP
+        where APP_ID IN
+        <foreach collection="ids" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
     </select>
 
 

+ 2 - 4
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceLogMapper.xml

@@ -31,15 +31,13 @@
     <select id="selectPtServiceLogList" parameterType="com.ruoyi.interfaces.domain.PtServiceLog"
             resultMap="PtServiceLogResult">
         SELECT
-        a.*,b."NAME" as modelName, c.nick_name as userName
+            a.*, c.nick_name as userName
         FROM
         pt_service_log a
-        LEFT JOIN md_model_info b on a.md_id = b.MDID
-        LEFT JOIN SH_PROJECT.sys_user c on a.user_id = c.user_id
+        LEFT JOIN sys_user c on a.user_id = c.user_id
         <where>
             <if test="logId != null ">and log_id = #{logId}</if>
             <if test="serId != null  and serId != ''">and ser_id = #{serId}</if>
-            <if test="mdId != null  and mdId != ''">and md_id = #{mdId}</if>
             <if test="tm != null ">and tm = #{tm}</if>
             <if test="senText != null  and senText != ''">and sen_text = #{senText}</if>
             <if test="returnText != null  and returnText != ''">and return_text = #{returnText}</if>

+ 10 - 426
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMapper.xml

@@ -3,7 +3,6 @@
 <mapper namespace="com.ruoyi.interfaces.mapper.PtServiceMapper">
     <resultMap id="BaseResultMap" type="com.ruoyi.interfaces.domain.PtService">
         <id column="SRV_ID" jdbcType="VARCHAR" property="srvId"/>
-        <id column="MDID" jdbcType="VARCHAR" property="mdid"/>
         <result column="CATE_CODE" jdbcType="VARCHAR" property="cateCode"/>
         <result column="NAME" jdbcType="VARCHAR" property="name"/>
         <result column="TYPE" jdbcType="VARCHAR" property="type"/>
@@ -19,7 +18,6 @@
         <result column="EXAMPLE" jdbcType="CLOB" property="example"/>
         <result column="PROXY_ADDRESS" jdbcType="VARCHAR" property="proxyAddress"/>
         <result column="PROXY_PATH" jdbcType="VARCHAR" property="proxyPath"/>
-        <result column="gateway_id" jdbcType="VARCHAR" property="gatewayId"/>
         <result column="SERVICE_SOURCE" jdbcType="VARCHAR" property="serviceSource"/>
         <result property="serviceDept" column="SERVICE_DEPT" jdbcType="VARCHAR"/>
         <result property="manageName" column="MANAGE_NAME" jdbcType="VARCHAR"/>
@@ -39,21 +37,11 @@
         <result column="DATA_RANGE" property="dataRange" jdbcType="VARCHAR"/>
         <result column="APPLY_NUM" property="applyNum" jdbcType="INTEGER"/>
         <result column="DATA_NUM" property="dataNum" jdbcType="INTEGER"/>
-        <result column="SORT" property="sort" jdbcType="INTEGER"/>
-        <result column="AUDIT" property="audit" jdbcType="VARCHAR"/>
-        <result column="AUDIT_BY" property="auditBy" jdbcType="VARCHAR"/>
-        <result column="AUDIT_TIME" property="auditTime"/>
-        <result column="AUDIT_REMARK" property="auditRemark" jdbcType="VARCHAR"/>
-        <result column="PUBLISH" property="publish" jdbcType="VARCHAR"/>
-        <result column="PUBLISH_BY" property="publishBy" jdbcType="VARCHAR"/>
-        <result column="state" property="state" jdbcType="VARCHAR"/>
-        <result column="PUBLISH_TIME" property="publishTime"/>
-        <result column="data_Signature" property="dataSignature"/>
     </resultMap>
     <resultMap id="AuthVoResultMap" type="com.ruoyi.interfaces.domain.vo.PtServiceVo">
         <result property="id" jdbcType="VARCHAR" column="ID"/>
         <result property="deadline" column="DEADLINE"/>
-        <result property="gatewayId" jdbcType="VARCHAR" column="gateway_id"/>
+        <result property="appId" jdbcType="VARCHAR" column="APP_ID"/>
         <result property="srvId" jdbcType="VARCHAR" column="SRV_ID"/>
         <result property="userId" jdbcType="VARCHAR" column="USER_ID"/>
         <result column="SRV_ID" jdbcType="VARCHAR" property="srvId"/>
@@ -72,8 +60,6 @@
         <result column="EXAMPLE" jdbcType="CLOB" property="example"/>
         <result column="PROXY_ADDRESS" jdbcType="VARCHAR" property="proxyAddress"/>
         <result column="PROXY_PATH" jdbcType="VARCHAR" property="proxyPath"/>
-        <result column="gateway_id" jdbcType="VARCHAR" property="gatewayId"/>
-        <result column="state" jdbcType="VARCHAR" property="state"/>
         <result column="SERVICE_SOURCE" jdbcType="VARCHAR" property="serviceSource"/>
         <result property="serviceDept" column="SERVICE_DEPT" jdbcType="VARCHAR"/>
         <result property="manageName" column="MANAGE_NAME" jdbcType="VARCHAR"/>
@@ -92,32 +78,16 @@
         <result column="DATA_RANGE" property="dataRange" jdbcType="VARCHAR"/>
         <result column="APPLY_NUM" property="applyNum" jdbcType="INTEGER"/>
         <result column="DATA_NUM" property="dataNum" jdbcType="INTEGER"/>
-        <result column="AUDIT" property="audit" jdbcType="VARCHAR"/>
-        <result column="AUDIT_BY" property="auditBy" jdbcType="VARCHAR"/>
-        <result column="AUDIT_TIME" property="auditTime"/>
-        <result column="AUDIT_REMARK" property="auditRemark" jdbcType="VARCHAR"/>
-        <result column="PUBLISH" property="publish" jdbcType="VARCHAR"/>
-        <result column="PUBLISH_BY" property="publishBy" jdbcType="VARCHAR"/>
-        <result column="PUBLISH_TIME" property="publishTime"/>
-        <result column="data_Signature" property="dataSignature"/>
     </resultMap>
 
     <sql id="Base_Column_List">
         SRV_ID
-        ,MDID
         , CATE_CODE, NAME, TYPE, INTRO, STATUS, USER_ID,
     DEVELOP_UNIT,DEVELOP_CONTACTER,MAINTAIN_UNIT,MAINTAIN_CONTACER,
     SERVICE_SOURCE,SERVICE_DEPT, MANAGE_NAME,DATA_RANGE, OPEN_CNDTN, DATA_FIELD,
     URL, RQTYPE, RPTYPE, PROXY_ADDRESS,PROXY_PATH,
     TM, RELEASE_TIME, RLSTM, UPTM,
-    VIEW_NUM, CNT, APPLY_NUM, DATA_NUM,"AUDIT",AUDIT_BY,
-AUDIT_TIME,
-AUDIT_REMARK,
-        PUBLISH,
-PUBLISH_BY,
-PUBLISH_TIME,
-        GATEWAY_ID,
-        state,data_Signature
+    VIEW_NUM, CNT, APPLY_NUM, DATA_NUM
     </sql>
     <sql id="Blob_Column_List">
         RPCONTENT
@@ -126,19 +96,11 @@ PUBLISH_TIME,
     <sql id="SRV_INFO_List">
         SRV_ID
         , NAME, TYPE, INTRO, URL, RQTYPE, RPTYPE, STATUS, CNT, USER_ID, TM,PROXY_ADDRESS,PROXY_PATH,SERVICE_SOURCE,CATE_CODE,
-    SERVICE_DEPT, MANAGE_NAME,RELEASE_TIME,DEVELOP_UNIT,DEVELOP_CONTACTER,MAINTAIN_UNIT,MAINTAIN_CONTACER,VIEW_NUM,"AUDIT",AUDIT_BY,
-AUDIT_TIME,
-AUDIT_REMARK,
-        PUBLISH,
-PUBLISH_BY,
-PUBLISH_TIME
-        ,GATEWAY_ID,
-        state,data_Signature
+    SERVICE_DEPT, MANAGE_NAME,RELEASE_TIME,DEVELOP_UNIT,DEVELOP_CONTACTER,MAINTAIN_UNIT,MAINTAIN_CONTACER,VIEW_NUM
     </sql>
     <sql id="table_columns">
-        MDID
+        UP_CYCL
         ,
-        UP_CYCL,
             OPEN_CNDTN,
             AD_NAME,
             DATA_FIELD,
@@ -172,22 +134,11 @@ PUBLISH_TIME
             DEVELOP_CONTACTER,
             MAINTAIN_UNIT,
             MAINTAIN_CONTACER,
-            VIEW_NUM,
-            SORT,
-            "AUDIT",
-            AUDIT_BY,
-            AUDIT_TIME,
-            AUDIT_REMARK,
-            PUBLISH,
-            PUBLISH_BY,
-            PUBLISH_TIME,
-        GATEWAY_ID,
-        state,
-        DATA_SIGNATURE
+            VIEW_NUM
     </sql>
     <sql id="entity_properties">
-        #{mdid,jdbcType=VARCHAR},
-        #{upCycl,jdbcType=VARCHAR},
+        #{upCycl,jdbcType=VARCHAR}
+        ,
         #{openCndtn,jdbcType=VARCHAR},
         #{adName,jdbcType=VARCHAR},
         #{dataField,jdbcType=VARCHAR},
@@ -221,24 +172,10 @@ PUBLISH_TIME
         #{developContacter,jdbcType=VARCHAR},
         #{maintainUnit,jdbcType=VARCHAR},
         #{maintainContacer,jdbcType=VARCHAR},
-        #{viewNum,jdbcType=INTEGER},
-        #{sort,jdbcType=INTEGER},
-        #{audit,jdbcType=VARCHAR},
-        #{auditBy,jdbcType=VARCHAR},
-        #{auditTime,jdbcType=DATE},
-        #{auditRemark,jdbcType=VARCHAR},
-        #{publish,jdbcType=VARCHAR},
-        #{publishBy,jdbcType=VARCHAR},
-        #{publishTime,jdbcType=DATE},
-        #{gatewayId,jdbcType=VARCHAR},
-        #{state,jdbcType=VARCHAR},
-        #{dataSignature,jdbcType=VARCHAR}
+        #{viewNum, jdbcType=INTEGER}
     </sql>
     <sql id="page_where">
         <trim prefix="where" prefixOverrides="and | or ">
-            <if test="mdid != null and mdid != ''">
-                and MDID = #{mdid,jdbcType=VARCHAR}
-            </if>
             <if test="upCycl != null and upCycl != ''">
                 and UP_CYCL = #{upCycl,jdbcType=VARCHAR}
             </if>
@@ -317,12 +254,6 @@ PUBLISH_TIME
             <if test="proxyPath != null and proxyPath != ''">
                 and PROXY_PATH = #{proxyPath}
             </if>
-            <if test="gatewayId != null and gatewayId != ''">
-                and gateway_id = #{gatewayId}
-            </if>
-             <if test="state != null and state != ''">
-                and state = #{state}
-            </if>
             <if test="serviceSource != null and serviceSource != ''">
                 and SERVICE_SOURCE = #{serviceSource}
             </if>
@@ -350,12 +281,6 @@ PUBLISH_TIME
             <if test="viewNum != null and viewNum != ''">
                 and VIEW_NUM = #{viewNum}
             </if>
-            <if test="audit != null and audit != ''">
-                and "AUDIT" = #{audit}
-            </if>
-            <if test="publish != null and publish != ''">
-                and PUBLISH = #{publish}
-            </if>
         </trim>
     </sql>
 
@@ -369,7 +294,6 @@ PUBLISH_TIME
         <if test="cateCode !=null and cateCode !=''">
             where CATE_CODE = #{cateCode}
         </if>
-        order by SORT
     </select>
 
     <!--查询数据列表-->
@@ -378,10 +302,8 @@ PUBLISH_TIME
         <include refid="table_columns"/>
         from PT_SERVICE
         <include refid="page_where"/>
-        order by SORT
     </select>
 
-
     <select id="selectAllPublic" parameterType="com.ruoyi.interfaces.domain.PtService" resultMap="BaseResultMap">
         select
         <include refid="Base_Column_List"/>
@@ -405,108 +327,8 @@ PUBLISH_TIME
                 </foreach>
             </if>
         </where>
-        order by SORT
     </select>
 
-    <!--根据主键获取数据-->
-    <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
-        SELECT
-        <include refid="Base_Column_List"/>
-        ,
-        <include refid="Blob_Column_List"/>
-        FROM PT_SERVICE
-        where SRV_ID = #{srvId,jdbcType=VARCHAR}
-    </select>
-
-    <!--添加数据-->
-    <insert id="insert" parameterType="com.ruoyi.interfaces.domain.PtService">
-        insert into PT_SERVICE(
-        <include refid="table_columns"/>
-        )
-        values (
-        <include refid="entity_properties"/>
-        )
-    </insert>
-
-    <!--根据主键更新数据-->
-    <update id="updateByPrimaryKeySelective" parameterType="com.ruoyi.interfaces.domain.PtService">
-        update PT_SERVICE
-        <trim prefix="set" suffixOverrides=",">
-            <if test="upCycl != null and upCycl != ''">UP_CYCL = #{upCycl,jdbcType=VARCHAR},</if>
-            <if test="openCndtn != null and openCndtn != ''">OPEN_CNDTN = #{openCndtn},</if>
-            <if test="adName != null and adName != ''">AD_NAME = #{adName},</if>
-            <if test="dataField != null and dataField != ''">DATA_FIELD = #{dataField},</if>
-            <if test="dataRange != null and dataRange != ''">DATA_RANGE = #{dataRange},</if>
-            <if test="applyNum != null and applyNum != ''">APPLY_NUM = #{applyNum},</if>
-            <if test="dataNum != null and dataNum != ''">DATA_NUM = #{dataNum},</if>
-            <if test="cateCode != null and cateCode != ''">CATE_CODE = #{cateCode},</if>
-            <if test="name != null and name != ''">NAME = #{name},</if>
-            <if test="type != null and type != ''">TYPE = #{type},</if>
-            <if test="intro != null and intro != ''">INTRO = #{intro},</if>
-            <if test="url != null and url != ''">URL = #{url},</if>
-            <if test="rqtype != null and rqtype != ''">RQTYPE = #{rqtype},</if>
-            <if test="rptype != null and rptype != ''">RPTYPE = #{rptype},</if>
-            <if test="rpcontent != null and rpcontent != ''">RPCONTENT = #{rpcontent},</if>
-            <if test="note != null and note != ''">NOTE = #{note},</if>
-            <if test="example != null and example != ''">EXAMPLE = #{example},</if>
-            <if test="status != null and status != ''">STATUS = #{status},</if>
-            <if test="cnt != null and cnt != ''">CNT = #{cnt},</if>
-            <if test="userId != null and userId != ''">USER_ID = #{userId},</if>
-            <if test="proxyAddress != null and proxyAddress != ''">PROXY_ADDRESS = #{proxyAddress},</if>
-            <if test="proxyPath != null and proxyPath != ''">PROXY_PATH = #{proxyPath},</if>
-            <if test="gatewayId != null and gatewayId != ''">gateway_id = #{gatewayId},</if>
-            <if test="serviceSource != null and serviceSource != ''">SERVICE_SOURCE = #{serviceSource},</if>
-            <if test="serviceDept != null and serviceDept != ''">SERVICE_DEPT = #{serviceDept},</if>
-            <if test="manageName != null and manageName != ''">MANAGE_NAME = #{manageName},</if>
-            <if test="developUnit != null and developUnit != ''">DEVELOP_UNIT = #{developUnit},</if>
-            <if test="developContacter != null and developContacter != ''">DEVELOP_CONTACTER = #{developContacter},</if>
-            <if test="maintainUnit != null and maintainUnit != ''">MAINTAIN_UNIT = #{maintainUnit},</if>
-            <if test="maintainContacer != null and maintainContacer != ''">MAINTAIN_CONTACER = #{maintainContacer},</if>
-            <if test="viewNum != null and viewNum != ''">VIEW_NUM = #{viewNum},</if>
-            <if test="tm != null">TM = #{tm},</if>
-            <if test="releaseTime != null">RELEASE_TIME = #{releaseTime},</if>
-            <if test="uptm != null">UPTM = #{uptm},</if>
-            <if test="rlstm != null">RLSTM = #{rlstm},</if>
-            <if test="sort != null">SORT = #{sort},</if>
-            <if test="dataSignature != null">data_Signature = #{dataSignature},</if>
-        </trim>
-        where SRV_ID = #{srvId,jdbcType=VARCHAR}
-    </update>
-    <update id="audit">
-        update PT_SERVICE
-        set "AUDIT"        = #{audit},
-            AUDIT_BY     = #{auditBy},
-            AUDIT_TIME   = #{auditTime},
-            AUDIT_REMARK = #{auditRemark}
-        where SRV_ID = #{srvId}
-    </update>
-    <update id="updatePtServicePublish">
-        update PT_SERVICE
-        set PUBLISH      = #{publish},
-            PUBLISH_BY   = #{publishBy},
-            PUBLISH_TIME = #{publishTime}
-        where SRV_ID = #{srvId}
-    </update>
-    <update id="updatePtServicePublishByMdid">
-        update PT_SERVICE
-        set PUBLISH      = #{publish},
-            PUBLISH_BY   = #{publishBy},
-            PUBLISH_TIME = #{publishTime}
-        where mdid = #{mdid}
-    </update>
-    <update id="updateState">
-        update PT_SERVICE
-        set state = #{state}
-        where SRV_ID = #{srvId}
-    </update>
-
-    <!--根据主键删除数据-->
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
-        delete
-        from PT_SERVICE
-        where SRV_ID = #{srvId,jdbcType=VARCHAR}
-    </delete>
-
     <select id="listOfCntTop10" parameterType="java.lang.String" resultMap="BaseResultMap">
         SELECT * FROM (
         SELECT
@@ -528,6 +350,7 @@ PUBLISH_TIME
     <select id="listByUserService" resultMap="AuthVoResultMap">
         SELECT A.ID,
                A.DEADLINE,
+               A.APP_ID,
                A.USER_ID,
                P.UP_CYCL,
                P.OPEN_CNDTN,
@@ -561,249 +384,10 @@ PUBLISH_TIME
                P.DEVELOP_CONTACTER,
                P.MAINTAIN_UNIT,
                P.MAINTAIN_CONTACER,
-               P.VIEW_NUM,
-               P.state,
-               P.data_Signature,
-               P.gateway_id,
+               P.VIEW_NUM
         FROM PT_SERVICE P
                  JOIN PT_SERVICE_AUTH A ON P.SRV_ID = A.SRV_ID
         WHERE A.USER_ID = #{userId}
         ORDER BY RLSTM DESC
     </select>
-    <resultMap id="MdModelInfoVoMap" type="com.ruoyi.interfaces.domain.vo.MdModelInfoVo">
-        <result property="mdid" column="MDID"/>
-        <result property="name" column="M_NAME"/>
-        <result property="enname" column="ENNAME"/>
-        <result property="cateid" column="CATEID"/>
-        <result property="devlang" column="DEVLANG"/>
-        <result property="version" column="VERSION"/>
-        <result property="intro" column="M_INTRO"/>
-        <result property="type" column="M_TYPE"/>
-        <result property="tags" column="TAGS"/>
-        <result property="kind" column="KIND"/>
-        <result property="purpose" column="PURPOSE"/>
-        <result property="israte" column="ISRATE"/>
-        <result property="weight" column="WEIGHT"/>
-        <result property="devkind" column="DEVKIND"/>
-        <result property="author" column="AUTHOR"/>
-        <result property="ispublic" column="ISPUBLIC"/>
-        <result property="isapproved" column="ISAPPROVED"/>
-        <result property="status" column="M_STATUS"/>
-        <result property="classname" column="CLASSNAME"/>
-        <result property="mdRunCmd" column="MD_RUN_CMD"/>
-        <result property="mdUrl" column="MD_URL"/>
-        <result property="mdAuth" column="MD_AUTH"/>
-        <result property="mdHeader" column="MD_HEADER"/>
-        <result property="mdSecret" column="MD_SECRET"/>
-        <result property="mdUnit" column="MD_UNIT"/>
-        <result property="mdContact" column="MD_CONTACT"/>
-        <result property="devUnit" column="DEV_UNIT"/>
-        <result property="devContact" column="DEV_CONTACT"/>
-        <result property="whFlag" column="WH_FLAG"/>
-        <result property="whUrl" column="WH_URL"/>
-        <result property="whMethod" column="WH_METHOD"/>
-        <result property="whAuth" column="WH_AUTH"/>
-        <result property="whHeader" column="WH_HEADER"/>
-        <result property="whSecret" column="WH_SECRET"/>
-        <result property="envOs" column="ENV_OS"/>
-        <result property="evnArmX86" column="EVN_ARM_X86"/>
-        <result property="envCpu" column="ENV_CPU"/>
-        <result property="envGpuType" column="ENV_GPU_TYPE"/>
-        <result property="envGpuNum" column="ENV_GPU_NUM"/>
-        <result property="envGpuMem" column="ENV_GPU_MEM"/>
-        <result property="envDisk" column="ENV_DISK"/>
-        <result property="envMem" column="ENV_MEM"/>
-        <result property="deployIp" column="DEPLOY_IP"/>
-        <result property="deployDir" column="DEPLOY_DIR"/>
-        <result property="deployPort" column="DEPLOY_PORT"/>
-        <result property="deployNote" column="DEPLOY_NOTE"/>
-        <result property="mdInName" column="MD_IN_NAME"/>
-        <result property="mdInFile" column="MD_IN_FILE"/>
-        <result property="mdInNote" column="MD_IN_NOTE"/>
-        <result property="mdOutName" column="MD_OUT_NAME"/>
-        <result property="mdOutFile" column="MD_OUT_FILE"/>
-        <result property="mdOutNote" column="MD_OUT_NOTE"/>
-        <result property="mirrorImageName" column="MIRROR_IMAGE_NAME"/>
-        <result property="mirrorImageUrl" column="MIRROR_IMAGE_URL"/>
-        <result property="mirrorImageDesc" column="MIRROR_IMAGE_DESC"/>
-        <result property="mdAuthUrl" column="MD_AUTH_URL"/>
-        <result property="createby" column="CREATEBY"/>
-        <result property="modifyby" column="MODIFYBY"/>
-        <result property="regUser" column="REG_USER"/>
-        <result property="sort" column="SORT"/>
-        <result property="audit" column="AUDIT"/>
-        <collection property="serviceList" ofType="com.ruoyi.interfaces.domain.PtService" resultMap="PtServiceVoMap"/>
-    </resultMap>
-    <resultMap id="PtServiceVoMap" type="com.ruoyi.interfaces.domain.PtService">
-        <id column="SRV_ID" jdbcType="VARCHAR" property="srvId"/>
-        <result column="CATE_CODE" jdbcType="VARCHAR" property="cateCode"/>
-        <result column="s_name" jdbcType="VARCHAR" property="name"/>
-        <result column="s_type" jdbcType="VARCHAR" property="type"/>
-        <result column="s_intro" jdbcType="VARCHAR" property="intro"/>
-        <result column="URL" jdbcType="VARCHAR" property="url"/>
-        <result column="RQTYPE" jdbcType="VARCHAR" property="rqtype"/>
-        <result column="RPTYPE" jdbcType="VARCHAR" property="rptype"/>
-        <result column="S_STATUS" jdbcType="VARCHAR" property="status"/>
-        <result column="CNT" jdbcType="DECIMAL" property="cnt"/>
-        <result column="USER_ID" jdbcType="VARCHAR" property="userId"/>
-        <result column="RPCONTENT" jdbcType="CLOB" property="rpcontent"/>
-        <result column="NOTE" jdbcType="CLOB" property="note"/>
-        <result column="EXAMPLE" jdbcType="CLOB" property="example"/>
-        <result column="PROXY_ADDRESS" jdbcType="VARCHAR" property="proxyAddress"/>
-        <result column="PROXY_PATH" jdbcType="VARCHAR" property="proxyPath"/>
-        <result column="gateway_id" jdbcType="VARCHAR" property="gatewayId"/>
-        <result column="state" jdbcType="VARCHAR" property="state"/>
-        <result column="SERVICE_SOURCE" jdbcType="VARCHAR" property="serviceSource"/>
-        <result property="serviceDept" column="SERVICE_DEPT" jdbcType="VARCHAR"/>
-        <result property="manageName" column="MANAGE_NAME" jdbcType="VARCHAR"/>
-        <result property="releaseTime" column="RELEASE_TIME" jdbcType="TIMESTAMP"/>
-        <result property="developUnit" column="DEVELOP_UNIT" jdbcType="VARCHAR"/>
-        <result property="developContacter" column="DEVELOP_CONTACTER" jdbcType="VARCHAR"/>
-        <result property="maintainUnit" column="MAINTAIN_UNIT" jdbcType="VARCHAR"/>
-        <result property="maintainContacer" column="MAINTAIN_CONTACER" jdbcType="VARCHAR"/>
-        <result column="VIEW_NUM" jdbcType="DECIMAL" property="viewNum"/>
-        <result column="UP_CYCL" property="upCycl" jdbcType="VARCHAR"/>
-        <result column="OPEN_CNDTN" property="openCndtn" jdbcType="VARCHAR"/>
-        <result column="AD_NAME" property="adName" jdbcType="VARCHAR"/>
-        <result column="DATA_FIELD" property="dataField" jdbcType="VARCHAR"/>
-        <result column="TM" jdbcType="DATE" property="tm"/>
-        <result column="UPTM" property="uptm" jdbcType="DATE"/>
-        <result column="RLSTM" property="rlstm" jdbcType="DATE"/>
-        <result column="DATA_RANGE" property="dataRange" jdbcType="VARCHAR"/>
-        <result column="APPLY_NUM" property="applyNum" jdbcType="INTEGER"/>
-        <result column="DATA_NUM" property="dataNum" jdbcType="INTEGER"/>
-        <result column="SEN_STATE" property="senState" jdbcType="INTEGER"/>
-        <result column="S_AUDIT" property="audit" jdbcType="VARCHAR"/>
-        <result column="S_AUDIT_BY" property="auditBy" jdbcType="VARCHAR"/>
-        <result column="S_AUDIT_TIME" property="auditTime"/>
-        <result column="S_AUDIT_REMARK" property="auditRemark" jdbcType="VARCHAR"/>
-        <result column="S_PUBLISH" property="publish" jdbcType="VARCHAR"/>
-        <result column="S_PUBLISH_BY" property="publishBy" jdbcType="VARCHAR"/>
-        <result column="S_PUBLISH_TIME" property="publishTime"/>
-        <result column="data_Signature" property="dataSignature"/>
-    </resultMap>
-
-
-    <select id="selectModelService" resultMap="MdModelInfoVoMap">
-        select
-        m.MDID,
-        m.NAME as M_NAME,
-        m.ENNAME,
-        m.CATEID,
-        m.DEVLANG,
-        m.VERSION,
-        m.INTRO as M_INTRO,
-        m.TYPE AS M_TYPE,
-        m.TAGS,
-        m.KIND,
-        m.PURPOSE,
-        m.ISRATE,
-        m.WEIGHT,
-        m.DEVKIND,
-        m.AUTHOR,
-        m.ISPUBLIC,
-        m.ISAPPROVED,
-        m.STATUS AS M_STATUS,
-        m.CLASSNAME,
-        m.MD_RUN_CMD,
-        m.MD_URL,
-        m.MD_AUTH,
-        m.MD_HEADER,
-        m.MD_SECRET,
-        m.MD_UNIT,
-        m.MD_CONTACT,
-        m.DEV_UNIT,
-        m.DEV_CONTACT,
-        m.WH_FLAG,
-        m.WH_URL,
-        m.WH_METHOD,
-        m.WH_AUTH,
-        m.WH_HEADER,
-        m.WH_SECRET,
-        m.ENV_OS,
-        m.EVN_ARM_X86,
-        m.ENV_CPU,
-        m.ENV_GPU_TYPE,
-        m.ENV_GPU_NUM,
-        m.ENV_GPU_MEM,
-        m.ENV_DISK,
-        m.ENV_MEM,
-        m.DEPLOY_IP,
-        m.DEPLOY_DIR,
-        m.DEPLOY_PORT,
-        m.DEPLOY_NOTE,
-        m.MD_IN_NAME,
-        m.MD_IN_FILE,
-        m.MD_IN_NOTE,
-        m.MD_OUT_NAME,
-        m.MD_OUT_FILE,
-        m.MD_OUT_NOTE,
-        m.MIRROR_IMAGE_NAME,
-        m.MIRROR_IMAGE_URL,
-        m.MIRROR_IMAGE_DESC,
-        m.MD_AUTH_URL,
-        m.CREATEBY,
-        m.MODIFYBY,
-        m.REG_USER,
-        m.SORT,
-        m."AUDIT",
-        s.UP_CYCL,
-        s.OPEN_CNDTN,
-        s.AD_NAME,
-        s.DATA_FIELD,
-        s.UPTM,
-        s.RLSTM,
-        s.DATA_RANGE,
-        s.APPLY_NUM,
-        s.DATA_NUM,
-        s.SRV_ID,
-        s.CATE_CODE,
-        s.NAME as s_name,
-        s.TYPE s_type,
-        s.INTRO s_intro,
-        s.URL,
-        s.RQTYPE,
-        s.RPTYPE,
-        s.RPCONTENT,
-        s.NOTE,
-        s.EXAMPLE,
-        s.STATUS S_STATUS,
-        s.CNT,
-        s.USER_ID,
-        s.TM,
-        s.PROXY_ADDRESS,
-        s.PROXY_PATH,
-        s.SERVICE_SOURCE,
-        s.SERVICE_DEPT,
-        s.MANAGE_NAME,
-        s.RELEASE_TIME,
-        s.DEVELOP_UNIT,
-        s.DEVELOP_CONTACTER,
-        s.MAINTAIN_UNIT,
-        s.MAINTAIN_CONTACER,
-        s.VIEW_NUM,
-        s."AUDIT" as S_AUDIT,
-        s.AUDIT_BY AS S_AUDIT_BY,
-        s.AUDIT_TIME AS S_AUDIT_TIME,
-        s.AUDIT_REMARK AS S_AUDIT_REMARK,
-        s.PUBLISH AS S_PUBLISH,
-        s.PUBLISH_BY AS S_PUBLISH_BY,
-        s.PUBLISH_TIME AS S_PUBLISH_TIME,
-        s.state,
-        s.data_Signature,
-        r.SEN_STATE
-        from md_model_info m left join pt_service s on m.mdid = s.MDID
-        LEFT JOIN (
-        SELECT ser_id, sen_state FROM (
-        SELECT t.* ,
-        ROW_NUMBER () OVER (PARTITION BY ser_id ORDER BY run_tm DESC ) rn
-        FROM pt_service_run_log t
-        ) WHERE rn = 1
-        ) r ON s.SRV_ID =
-        r.ser_id
-        <where>
-            <if test="mdid != null ">and m.mdid = #{mdid}</if>
-        </where>
-        order by s.sort
-    </select>
 </mapper>

+ 16 - 17
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMonitorMapper.xml

@@ -47,10 +47,10 @@
         GROUP BY b.service_name
     </select>
     <select id="getModelTypeCallCount" resultType="java.util.Map">
-        SELECT a.name as NAME,
+        SELECT a.SERVICE_NAME as NAME,
                count(*) as TOTAL
-        FROM md_model_info a
-                 JOIN pt_service_log b ON a.MDID = b.md_id
+        FROM GATEWAY_ROUTES a
+                 JOIN pt_service_log b ON a.PREDICATES = b.MD_ID
         <where>
             <if test="startTime != null and startTime != ''">
                 AND b.tm &gt;= #{startTime}
@@ -59,41 +59,40 @@
                 AND b.tm &lt; #{endTime}
             </if>
         </where>
-        GROUP BY a.name
+        GROUP BY a.SERVICE_NAME
     </select>
     <select id="getMonthModelCallMaxCount" resultType="java.util.Map">
-        SELECT a.md_id,
-               b."NAME",
+        SELECT a.MD_ID AS ID,
+               a.SERVICE_NAME AS NAME,
                COUNT(*) AS call_count
         FROM pt_service_log a
-                 JOIN md_model_info b ON a.md_id = b.MDID
         WHERE DATE_FORMAT(a.tm, '%Y-%m') = DATE_FORMAT(CURDATE(), '%Y-%m') -- 动态匹配当前年月
-        GROUP BY a.md_id, b."NAME"
+        GROUP BY a.MD_ID, a.SERVICE_NAME
         HAVING COUNT(*) = (SELECT COUNT(*) AS cnt
                            FROM pt_service_log
                            WHERE DATE_FORMAT(tm, '%Y-%m') = DATE_FORMAT(CURDATE(), '%Y-%m')
-                           GROUP BY md_id
+                           GROUP BY MD_ID
                            ORDER BY cnt DESC
             LIMIT 1 -- 获取最高调用次数
             )
         ORDER BY call_count DESC;
     </select>
     <select id="getModelServiceCount" resultType="java.util.Map">
-        SELECT a.NAME   NAME,
+        SELECT a.SERVICE_NAME   NAME,
                count(*) TOTAL
-        FROM md_model_info a
-                 JOIN pt_service b ON a.MDID = b.MDID
-        GROUP BY a.NAME
+        FROM GATEWAY_ROUTES a
+                 JOIN pt_service b ON a.PREDICATES = b.PROXY_PATH
+        GROUP BY a.SERVICE_NAME
     </select>
     <select id="getModelServiceSuccessCount" resultType="java.util.Map">
         SELECT
-            a.NAME AS NAME,
+            a.SERVICE_NAME AS NAME,
             COUNT(*) AS TOTAL,
             SUM(CASE WHEN b.status_code = 200 THEN 1 ELSE 0 END) AS SUCCESS,
             SUM(CASE WHEN b.status_code != 200 THEN 1 ELSE 0 END) AS FAIL
         FROM
-            md_model_info a
-                JOIN pt_service_log b ON a.MDID = b.md_id
+        GATEWAY_ROUTES a
+                JOIN pt_service_log b ON a.PREDICATES = b.MD_ID
         <where>
             <if test="startTime != null and startTime != ''">
                 AND b.tm &gt;= #{startTime}
@@ -102,6 +101,6 @@
                 AND b.tm &lt; #{endTime}
             </if>
         </where>
-        GROUP BY a.NAME;
+        GROUP BY a.SERVICE_NAME;
     </select>
 </mapper>

+ 1 - 1
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceReturnMapper.xml

@@ -45,7 +45,7 @@
         where ID = #{ID}
     </select>
 
-    <insert id="insertPtServiceReturn" parameterType="com.ruoyi.interfaces.domain.PtServiceReturn" useGeneratedKeys="true" keyProperty="ID">
+    <insert id="insertPtServiceReturn" parameterType="com.ruoyi.interfaces.domain.PtServiceReturn" useGeneratedKeys="true" keyProperty="id">
         insert into pt_service_return
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="id != null">ID,</if>

+ 1 - 4
ruoyi-api-patform/src/main/resources/mapper/interfaces/StatisticsMapper.xml

@@ -19,10 +19,7 @@
         <result column="DATA_NUM" property="dataNum" jdbcType="INTEGER"/>
     </resultMap>
     <sql id="table_columns">
-        P
-        .
-        UP_CYCL
-        ,
+            P.UP_CYCL,
             P.OPEN_CNDTN,
             P.AD_NAME,
             P.DATA_FIELD,

+ 1 - 1
ruoyi-common/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 21 - 40
ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java

@@ -1,22 +1,8 @@
 package com.ruoyi.common.utils.http;
 
-import java.io.*;
-import java.net.ConnectException;
-import java.net.SocketTimeoutException;
-import java.net.URL;
-import java.net.URLConnection;
-import java.net.URLEncoder;
-import java.nio.charset.StandardCharsets;
-import java.security.cert.X509Certificate;
-import java.util.*;
-import javax.net.ssl.HostnameVerifier;
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.SSLSession;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.X509TrustManager;
-
+import com.ruoyi.common.constant.Constants;
 import com.ruoyi.common.utils.JsonUtils;
+import com.ruoyi.common.utils.StringUtils;
 import org.apache.http.HttpEntity;
 import org.apache.http.NameValuePair;
 import org.apache.http.client.methods.CloseableHttpResponse;
@@ -30,23 +16,18 @@ import org.apache.http.message.BasicNameValuePair;
 import org.apache.http.util.EntityUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import com.ruoyi.common.constant.Constants;
-import com.ruoyi.common.utils.StringUtils;
-import sun.net.www.protocol.http.HttpURLConnection;
 
-
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.X509TrustManager;
+import javax.net.ssl.*;
 import java.io.*;
 import java.net.*;
 import java.nio.charset.StandardCharsets;
 import java.security.KeyManagementException;
 import java.security.NoSuchAlgorithmException;
-import java.security.SecureRandom;
 import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.Base64;
 import java.util.HashMap;
+import java.util.List;
 
 /**
  * 通用http发送方法
@@ -174,14 +155,14 @@ public class HttpUtils {
 
     public static HashMap<String, String> sendHttpGet(String url, String param, HashMap<String, String> headers) throws IOException {
 
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
-        log.info("get方法, url=" + url );
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
+        log.info("get方法, url=" + url);
 
         String urlNameString = StringUtils.isNotBlank(param) ? url + "?" + param : url;
 
@@ -218,7 +199,7 @@ public class HttpUtils {
                     result.append(line);
                 }
             }
-        }  finally {
+        } finally {
             if (conn != null) {
                 conn.disconnect();
             }
@@ -335,13 +316,13 @@ public class HttpUtils {
     }
 
     public static HashMap<String, String> sendBodyPost(String url, Object body, HashMap<String, String> headers) throws IOException {
-        log.info("post方法, url=" + url );
-        log.info("post方法, url=" + url );
-        log.info("post方法, url=" + url );
+        log.info("post方法, url=" + url);
+        log.info("post方法, url=" + url);
+        log.info("post方法, url=" + url);
         String bodyJson = JsonUtils.objectToJson(body);
-        log.info("post方法, body=" + bodyJson );
-        log.info("post方法, body=" + bodyJson );
-        log.info("post方法, body=" + bodyJson );
+        log.info("post方法, body=" + bodyJson);
+        log.info("post方法, body=" + bodyJson);
+        log.info("post方法, body=" + bodyJson);
         return sendBodyPostTest(url, bodyJson, headers);
     }
 

+ 1 - 1
ruoyi-framework/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 1 - 2
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java

@@ -171,8 +171,7 @@ public class SecurityConfig {
                             .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
                             .antMatchers("/workflows/**").permitAll()
                             .antMatchers("/websocket/**").permitAll()
-                            // 沿海风暴潮自定义接口
-                            .antMatchers("/SCSSFM/**").permitAll()
+                            .antMatchers("/oauth/token").permitAll()
 
                             // 除上面外的所有请求全部需要鉴权认证
                             .anyRequest().authenticated();

+ 1 - 1
ruoyi-generator/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 16 - 16
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm

@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+    <el-form :model="queryParams" ref="queryForm"  :inline="true" v-show="showSearch" label-width="68px">
 #foreach($column in $columns)
 #if($column.query)
 #set($dictType=$column.dictType)
@@ -62,8 +62,8 @@
 #end
 #end
       <el-form-item>
-	    <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+	    <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
 
@@ -73,7 +73,7 @@
           type="primary"
           plain
           icon="el-icon-plus"
-          size="mini"
+
           @click="handleAdd"
           v-hasPermi="['${moduleName}:${businessName}:add']"
         >新增</el-button>
@@ -83,7 +83,7 @@
           type="info"
           plain
           icon="el-icon-sort"
-          size="mini"
+
           @click="toggleExpandAll"
         >展开/折叠</el-button>
       </el-col>
@@ -109,19 +109,19 @@
 #if($column.pk)
 #elseif($column.list && $column.htmlType == "datetime")
       <el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
-        <template slot-scope="scope">
+        <template #default="scope">
           <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
 #elseif($column.list && $column.htmlType == "imageUpload")
       <el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
-        <template slot-scope="scope">
+        <template #default="scope">
           <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
         </template>
       </el-table-column>
 #elseif($column.list && "" != $column.dictType)
       <el-table-column label="${comment}" align="center" prop="${javaField}">
-        <template slot-scope="scope">
+        <template #default="scope">
 #if($column.htmlType == "checkbox")
           <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
 #else
@@ -138,24 +138,24 @@
 #end
 #end
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
+        <template #default="scope">
           <el-button
-            size="mini"
-            type="text"
+
+            type="primary" link
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['${moduleName}:${businessName}:edit']"
           >修改</el-button>
           <el-button
-            size="mini"
-            type="text"
+
+            type="primary" link
             icon="el-icon-plus"
             @click="handleAdd(scope.row)"
             v-hasPermi="['${moduleName}:${businessName}:add']"
           >新增</el-button>
           <el-button
-            size="mini"
-            type="text"
+
+            type="primary" link
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['${moduleName}:${businessName}:remove']"
@@ -165,7 +165,7 @@
     </el-table>
 
     <!-- 添加或修改${functionName}对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
 #foreach($column in $columns)
 #set($field=$column.javaField)

+ 24 - 24
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm

@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+    <el-form :model="queryParams" ref="queryForm"  :inline="true" v-show="showSearch" label-width="68px">
 #foreach($column in $columns)
 #if($column.query)
 #set($dictType=$column.dictType)
@@ -62,8 +62,8 @@
 #end
 #end
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
 
@@ -73,7 +73,7 @@
           type="primary"
           plain
           icon="el-icon-plus"
-          size="mini"
+
           @click="handleAdd"
           v-hasPermi="['${moduleName}:${businessName}:add']"
         >新增</el-button>
@@ -83,7 +83,7 @@
           type="success"
           plain
           icon="el-icon-edit"
-          size="mini"
+
           :disabled="single"
           @click="handleUpdate"
           v-hasPermi="['${moduleName}:${businessName}:edit']"
@@ -94,7 +94,7 @@
           type="danger"
           plain
           icon="el-icon-delete"
-          size="mini"
+
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['${moduleName}:${businessName}:remove']"
@@ -105,7 +105,7 @@
           type="warning"
           plain
           icon="el-icon-download"
-          size="mini"
+
           @click="handleExport"
           v-hasPermi="['${moduleName}:${businessName}:export']"
         >导出</el-button>
@@ -127,19 +127,19 @@
       <el-table-column label="${comment}" align="center" prop="${javaField}" />
 #elseif($column.list && $column.htmlType == "datetime")
       <el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
-        <template slot-scope="scope">
+        <template #default="scope">
           <span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
 #elseif($column.list && $column.htmlType == "imageUpload")
       <el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
-        <template slot-scope="scope">
+        <template #default="scope">
           <image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
         </template>
       </el-table-column>
 #elseif($column.list && "" != $column.dictType)
       <el-table-column label="${comment}" align="center" prop="${javaField}">
-        <template slot-scope="scope">
+        <template #default="scope">
 #if($column.htmlType == "checkbox")
           <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
 #else
@@ -152,17 +152,17 @@
 #end
 #end
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
+        <template #default="scope">
           <el-button
-            size="mini"
-            type="text"
+
+            type="primary" link
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['${moduleName}:${businessName}:edit']"
           >修改</el-button>
           <el-button
-            size="mini"
-            type="text"
+
+            type="primary" link
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['${moduleName}:${businessName}:remove']"
@@ -174,13 +174,13 @@
     <pagination
       v-show="total>0"
       :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
+      v-model:page="queryParams.pageNum"
+      v-model:limit="queryParams.pageSize"
       @pagination="getList"
     />
 
     <!-- 添加或修改${functionName}对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
 #foreach($column in $columns)
 #set($field=$column.javaField)
@@ -288,10 +288,10 @@
         <el-divider content-position="center">${subTable.functionName}信息</el-divider>
         <el-row :gutter="10" class="mb8">
           <el-col :span="1.5">
-            <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd${subClassName}">添加</el-button>
+            <el-button type="primary" icon="el-icon-plus" @click="handleAdd${subClassName}">添加</el-button>
           </el-col>
           <el-col :span="1.5">
-            <el-button type="danger" icon="el-icon-delete" size="mini" @click="handleDelete${subClassName}">删除</el-button>
+            <el-button type="danger" icon="el-icon-delete" @click="handleDelete${subClassName}">删除</el-button>
           </el-col>
         </el-row>
         <el-table :data="${subclassName}List" :row-class-name="row${subClassName}Index" @selection-change="handle${subClassName}SelectionChange" ref="${subclassName}">
@@ -308,19 +308,19 @@
 #if($column.pk || $javaField == ${subTableFkclassName})
 #elseif($column.list && $column.htmlType == "input")
           <el-table-column label="$comment" prop="${javaField}" width="150">
-            <template slot-scope="scope">
+            <template #default="scope">
               <el-input v-model="scope.row.$javaField" placeholder="请输入$comment" />
             </template>
           </el-table-column>
 #elseif($column.list && $column.htmlType == "datetime")
           <el-table-column label="$comment" prop="${javaField}" width="240">
-            <template slot-scope="scope">
+            <template #default="scope">
               <el-date-picker clearable v-model="scope.row.$javaField" type="date" value-format="yyyy-MM-dd" placeholder="请选择$comment" />
             </template>
           </el-table-column>
 #elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType)
           <el-table-column label="$comment" prop="${javaField}" width="150">
-            <template slot-scope="scope">
+            <template #default="scope">
               <el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
                 <el-option
                   v-for="dict in dict.type.$column.dictType"
@@ -333,7 +333,7 @@
           </el-table-column>
 #elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType)
           <el-table-column label="$comment" prop="${javaField}" width="150">
-            <template slot-scope="scope">
+            <template #default="scope">
               <el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
                 <el-option label="请选择字典生成" value="" />
               </el-select>

+ 1 - 1
ruoyi-quartz/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 1 - 1
ruoyi-system/pom.xml

@@ -3,7 +3,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>sh-platform</artifactId>
+        <artifactId>tba-gxpt</artifactId>
         <groupId>com.ruoyi</groupId>
         <version>3.8.89</version>
     </parent>

+ 1 - 1
ruoyi-ui/.env.development

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = 上海市水务海洋数字孪生模型服务管理系统
+VITE_APP_TITLE = 数据服务平台
 
 VITE_PORT = 9002
 

+ 1 - 1
ruoyi-ui/.env.production

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = 上海市水务海洋数字孪生模型服务管理系统
+VITE_APP_TITLE = 数据服务平台
 
 VITE_PORT = 9002
 

+ 1 - 1
ruoyi-ui/.env.staging

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = 上海市水务海洋数字孪生模型服务管理系统
+VITE_APP_TITLE = 数据服务平台
 
 VITE_PORT = 9002
 

+ 1 - 0
ruoyi-ui/package.json

@@ -37,6 +37,7 @@
     "codemirror-editor-vue3": "^2.8.0",
     "cronstrue": "^3.3.0",
     "echarts": "^5.5.1",
+    "echarts-wordcloud": "^2.1.0",
     "element-plus": "2.7.6",
     "file-saver": "2.0.5",
     "fuse.js": "6.6.2",

+ 1 - 1
ruoyi-ui/src/App.vue

@@ -1,5 +1,5 @@
 <template>
-  <el-config-provider style="font-size: 20px;">
+  <el-config-provider>
     <router-view :key="route.fullPath"/>
   </el-config-provider>
 </template>

+ 2 - 2
ruoyi-ui/src/api/dict.js

@@ -1,6 +1,6 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 根据字典类型查询字典数据信息
 export function getDicts(dictType) {
-    return axios.get(`/system/dict/data/type/${dictType}`)
+    return request.get(`/system/dict/data/type/${dictType}`)
 }

+ 2 - 2
ruoyi-ui/src/api/file.js

@@ -1,4 +1,4 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 查询服务
 // export function getServiceFile(data, srvId) {
@@ -12,5 +12,5 @@ import axios from '@/utils/axios.js'
 
 // 删除服务参数
 export function deleteFile(key) {
-    return axios.get(`/pt/file/delete/${key}`);
+    return request.get(`/pt/file/delete/${key}`);
 }

+ 4 - 4
ruoyi-ui/src/api/interactive/consult.js

@@ -1,16 +1,16 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 添加/修改 咨询
 export function saveConsult(data) {
-    return axios.post('/pt/consult', data)
+    return request.post('/pt/consult', data)
 }
 
 // 查看咨询列表
 export function listOfConsult(data) {
-    return axios.post('/pt/consult/pageList', data)
+    return request.post('/pt/consult/pageList', data)
 }
 
 // 删除咨询列表
 export function delConsult(id) {
-    return axios.get(`/pt/consult/delete/${id}`)
+    return request.get(`/pt/consult/delete/${id}`)
 }

+ 4 - 4
ruoyi-ui/src/api/interactive/helpDocument.js

@@ -1,16 +1,16 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 添加/修改 咨询
 export function addHelpDocument(data) {
-    return axios.post('/pt/helpFile', data)
+    return request.post('/pt/helpFile', data)
 }
 
 // 查看咨询列表
 export function listOfHelpDocument(data) {
-    return axios.post('/pt/helpFile/pageList', data)
+    return request.post('/pt/helpFile/pageList', data)
 }
 
 // 删除咨询列表
 export function delHelpDocument(id) {
-    return axios.get(`/pt/helpFile/delete/${id}`)
+    return request.get(`/pt/helpFile/delete/${id}`)
 }

+ 9 - 5
ruoyi-ui/src/api/ptApp.js

@@ -1,23 +1,27 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取服务列表
 export function getServiceList(data) {
-    return axios.post('/pt/service/publicList', data)
+    return request.post('/pt/service/publicList', data)
 }
 
 // 获取用户所有应用
 export function getPtApps() {
-    return axios.post('/pt/app/lists')
+    return request.post('/pt/app/lists')
 }
 
 // 获取用户应用(分页)
 export function getPtApp(data) {
-    return axios.post('/pt/app/list', data)
+    return request({
+        url: '/pt/app/list',
+        method: 'get',
+        params: data
+    })
 }
 
 // 删除应用
 export function deletePtApp(data) {
-    return axios.get('/pt/app/delete', data)
+    return request.get('/pt/app/delete', data)
 }
 
 /** 应用名称格式转换 */

+ 4 - 4
ruoyi-ui/src/api/ptAttention.js

@@ -1,18 +1,18 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取服务列表
 export function getAttentionList(data) {
-    return axios.post('/my/my/attention/list', data)
+    return request.post('/my/my/attention/list', data)
 }
 
 // 获取用户所有应用
 export function deleteAttention(data) {
-    return axios.get('/my/my/attention/delete', data)
+    return request.get('/my/my/attention/delete', data)
 }
 
 // 添加收藏
 export function addAttentionBySrvId(srvId) {
-    return axios({
+    return request({
         url: '/my/my/attention/insert',
         method: 'post',
         data: {srvId: srvId},

+ 2 - 2
ruoyi-ui/src/api/ptCate.js

@@ -1,6 +1,6 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取服务列表
 export function getPtCateList(data) {
-    return axios.get('/pt/cate/listWithCount', data)
+    return request.get('/pt/cate/listWithCount', data)
 }

+ 6 - 6
ruoyi-ui/src/api/ptServiceApply.js

@@ -1,26 +1,26 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 /** 获取服务申请信息列表 */
 export function getServiceApplyList(data) {
-    return axios.post('/pt/service/apply/list', data)
+    return request.post('/pt/service/apply/list', data)
 }
 
 /** 删除应用 */
 export function deleteServiceApply(data) {
-    return axios.get('/pt/service/apply/delete', data)
+    return request.get('/pt/service/apply/delete', data)
 }
 
 /** 添加服务申请 */
 export function addServiceApply(data) {
-    return axios.post('/pt/service/apply/request', data)
+    return request.post('/pt/service/apply/request', data)
 }
 
 /** 审核服务申请 */
 export function auditServiceApply(data) {
-    return axios.post('/pt/service/apply/update', data)
+    return request.post('/pt/service/apply/update', data)
 }
 
 // 审核服务申请
 export function getServiceApply(id) {
-    return axios.get(`/pt/service/apply/${id}`);
+    return request.get(`/pt/service/apply/${id}`);
 }

+ 6 - 6
ruoyi-ui/src/api/service.js

@@ -1,26 +1,26 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取公共服务列表
 export function getPublicServiceList(data) {
-    return axios.post('/pt/service/publicList', data)
+    return request.post('/pt/service/publicList', data)
 }
 
 // 获取服务列表
 export function getServiceList(data) {
-    return axios.post('/pt/service/list', data)
+    return request.post('/pt/service/list', data)
 }
 
 // ID获取服务
 export function getServiceById(data) {
-    return axios.get('/pt/service/get', data)
+    return request.get('/pt/service/get', data)
 }
 
 // 添加服务评论
 export function saveServiceComment(data) {
-    return axios.post('/pt/service/comment', data)
+    return request.post('/pt/service/comment', data)
 }
 
 // 添加服务评论
 export function listOfServiceComment(data) {
-    return axios.post('/pt/service/comment/list', data)
+    return request.post('/pt/service/comment/list', data)
 }

+ 1 - 1
ruoyi-ui/src/api/service/catalog.js

@@ -2,5 +2,5 @@ import request from "@/utils/request";
 
 // 添加服务申请
 export function getCatalog() {
-  return request.get("/pt/map/countNum");
+  return request.get("/pt/catalog/countNum");
 }

+ 3 - 3
ruoyi-ui/src/api/service/info.js

@@ -30,9 +30,9 @@ export function delServiceParam(query) {
 }
 export function getServiceInfo(query) {
   return request({
-    url: "/pt/service/modelService",
-    method: "get",
-    params: query,
+    url: "/pt/service/publicList",
+    method: "post",
+    data: query,
   });
 }
 // export function getServiceInfo(id) {

+ 3 - 3
ruoyi-ui/src/api/service/return.js

@@ -2,18 +2,18 @@ import request from "@/utils/request";
 
 // 添加服务申请
 export function getServiceAllReturn(id) {
-  return request.get(`/pt/service/return/list/${id}`);
+  return request.get(`/service/return/list/${id}`);
 }
 
 // 添加服务参数
 export function addServiceReturn(data) {
-  return request.post("/pt/service/return/addList", data);
+  return request.post("/service/return/addList", data);
 }
 
 // 删除服务参数
 export function delServiceReturn(query) {
   return request({
-    url: "/pt/service/return/delete",
+    url: "/service/return/delete",
     method: "get",
     params: query,
   });

+ 6 - 6
ruoyi-ui/src/api/statistics.js

@@ -1,26 +1,26 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取目录访问量的数据
 export function getCntByCatalog() {
-    return axios.get('/statistics/cntByCatalog')
+    return request.get('/statistics/cntByCatalog')
 }
 
 // 获取目录访问量的数据
 export function getStatisticsData() {
-    return axios.get('/statistics/total')
+    return request.get('/statistics/total')
 }
 
 // 获取目录访问量的数据
 export function getViewNumByCity() {
-    return axios.get('/statistics/viewNumByCity')
+    return request.get('/statistics/viewNumByCity')
 }
 
 // 获取目录访问量的数据
 export function getKeywords() {
-    return axios.get('/statistics/keywords')
+    return request.get('/statistics/keywords')
 }
 
 // 获取目录访问量的数据
 export function getServiceByCnt() {
-    return axios.get('/statistics/serviceByCnt')
+    return request.get('/statistics/serviceByCnt')
 }

+ 2 - 2
ruoyi-ui/src/api/token.js

@@ -1,6 +1,6 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 删除应用
 export function getTokenUrl() {
-    return axios.get('/service/token/url')
+    return request.get('/oauth/token/url')
 }

+ 8 - 8
ruoyi-ui/src/api/user.js

@@ -1,7 +1,7 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 import {getToken} from '@/utils/auth'
 import {addAttentionBySrvId} from '@/api/ptAttention.js'
-import router from '@/route'
+import router from '@/router'
 import store from '@/store'
 import {ElMessage} from 'element-plus'
 
@@ -16,7 +16,7 @@ export function addApp(data, fun) {
         }
     }
 
-    return axios.post('/pt/app/add', data).then(() => {
+    return request.post('/pt/app/add', data).then(() => {
         ElMessage({
             onClose: fun(),
             showClose: true,
@@ -37,7 +37,7 @@ export function updateApp(data, fun) {
         }
     }
 
-    return axios.post('/pt/app/update', data).then(() => {
+    return request.post('/pt/app/update', data).then(() => {
         ElMessage({
             onClose: fun(),
             showClose: true,
@@ -57,7 +57,7 @@ export function addAttention(srvId) {
 
 // 注册方法
 export function register(data) {
-    return axios({
+    return request({
         url: '/register',
         headers: {
             isToken: false,
@@ -72,7 +72,7 @@ export function getInfo() {
     if (!isLogin()) {
         return
     }
-    return axios({
+    return request({
         url: '/getInfo',
         method: 'get',
     })
@@ -80,7 +80,7 @@ export function getInfo() {
 
 // 退出方法
 export function logout() {
-    return axios({
+    return request({
         url: '/logout',
         method: 'post',
     })
@@ -88,7 +88,7 @@ export function logout() {
 
 // 获取验证码
 export function getCodeImg() {
-    return axios({
+    return request({
         url: '/captchaImage',
         headers: {
             isToken: false,

+ 2 - 2
ruoyi-ui/src/api/userApplyList.js

@@ -1,6 +1,6 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 获取用户已申请的服务列表
 export function getUserApplyServiceList(data) {
-    return axios.post('/pt/service/apply/user/list', data)
+    return request.post('/pt/service/apply/user/list', data)
 }

+ 2 - 2
ruoyi-ui/src/api/view.js

@@ -1,8 +1,8 @@
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
 
 // 发送点击量
 export function loadClickNum() {
     let ip = localStorage.ip
     let city = localStorage.city
-    axios.get(`/context/clickNum?ip=${ip}&city=${city}`)
+    request.get(`/context/clickNum?ip=${ip}&city=${city}`)
 }

+ 31 - 0
ruoyi-ui/src/assets/styles/index.scss

@@ -28,6 +28,37 @@ html {
   height: 100%;
 }
 
+
+body,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+hr,
+p,
+blockquote,
+dl,
+dt,
+dd,
+ul,
+ol,
+li,
+pre,
+form,
+fieldset,
+legend,
+button,
+input,
+textarea,
+th,
+td,
+span {
+  margin: 0;
+  padding: 0;
+}
+
 *,
 *:before,
 *:after {

+ 1 - 1
ruoyi-ui/src/components/Breadcrumb.vue

@@ -15,7 +15,7 @@
 </template>
 
 <script>
-import {ArrowRight, LocationFilled} from '@element-plus/icons'
+import {ArrowRight, LocationFilled} from '@element-plus/icons-vue'
 import {reactive, ref, watch} from 'vue'
 import {useRoute} from 'vue-router'
 

+ 12 - 9
ruoyi-ui/src/components/Breadcrumb/index.vue

@@ -1,11 +1,11 @@
 <template>
-  <el-breadcrumb class="app-breadcrumb" separator="/">
+  <el-breadcrumb separator="/">
     <transition-group name="breadcrumb">
       <el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path">
         <span
-          v-if="item.redirect === 'noRedirect' || index == levelList.length - 1"
-          class="no-redirect"
-          >{{ item.meta.title }}</span
+            v-if="item.redirect === 'noRedirect' || index == levelList.length - 1"
+            class="no-redirect"
+        >{{ item.meta.title }}</span
         >
         <a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a>
       </el-breadcrumb-item>
@@ -27,9 +27,10 @@ function getBreadcrumb() {
     // matched = [{ path: "/index", meta: { title: "首页" } }].concat(matched);
   }
   levelList.value = matched.filter(
-    (item) => item.meta && item.meta.title && item.meta.breadcrumb !== false
+      (item) => item.meta && item.meta.title && item.meta.breadcrumb !== false
   );
 }
+
 function isDashboard(route) {
   const name = route && route.name;
   if (!name) {
@@ -37,8 +38,9 @@ function isDashboard(route) {
   }
   return name.trim() === "Index";
 }
+
 function handleLink(item) {
-  const { redirect, path } = item;
+  const {redirect, path} = item;
   if (redirect) {
     router.push(redirect);
     return;
@@ -56,9 +58,10 @@ watchEffect(() => {
 getBreadcrumb();
 </script>
 
-<style lang="scss" scoped>
-.app-breadcrumb.el-breadcrumb {
-  display: inline-block;
+<style lang="scss">
+.breadcrumb-container .el-breadcrumb {
+  display: flex;
+  align-items: center;
   font-size: 14px;
   line-height: 50px;
   margin-left: 8px;

+ 2 - 2
ruoyi-ui/src/components/DynamicMap/index.vue

@@ -24,9 +24,9 @@
           <!-- 数组值的输入框 -->
           <div v-for="(val, valIndex) in item.value" :key="valIndex" style="margin-bottom: 5px;display: flex;align-items: center;">
             <el-input placeholder="请输入值" v-model="item.value[valIndex]" @input="debouncedEmitUpdate"/>
-            <el-button v-if="valIndex !== 0" type="danger" icon="Delete" size="small" @click="removeArrayValue(item, valIndex)"/>
+            <el-button v-if="valIndex !== 0" type="danger" icon="Delete"  @click="removeArrayValue(item, valIndex)"/>
           </div>
-          <el-button type="primary" size="small" @click="addArrayValue(item)">添加值</el-button>
+          <el-button type="primary"  @click="addArrayValue(item)">添加值</el-button>
         </div>
         <el-input
             v-else

+ 1 - 1
ruoyi-ui/src/components/FileUploadbtn/index.vue

@@ -4,7 +4,7 @@
       :on-error="handleUploadError" :on-exceed="handleExceed" :on-success="handleUploadSuccess" :headers="headers"
       class="upload-file-uploader" ref="fileUpload" :data="uploadData" :drag="dragFlag"
       :accept="fileType.map((ext) => '.' + ext).join(',')" :on-remove="handleRemove">
-      <el-button type="primary" size="small" icon="Upload" plain>
+      <el-button type="primary"  icon="Upload" plain>
         选择文件
       </el-button>
     </el-upload>

+ 1 - 1
ruoyi-ui/src/components/FileUploadbtn/index1.vue

@@ -4,7 +4,7 @@
             :on-success="handleUploadSuccess" :on-error="handleUploadError" :on-exceed="handleExceed" :headers="headers"
             :data="uploadData" :drag="dragFlag" :file-list="fileList"
             :accept="fileType.map((ext) => '.' + ext).join(',')" :show-file-list="false" :on-remove="handleRemove">
-            <el-button type="primary" size="small" icon="Upload" plain>
+            <el-button type="primary"  icon="Upload" plain>
                 选择文件
             </el-button>
         </el-upload>

+ 2 - 2
ruoyi-ui/src/components/ae/AeApp.vue

@@ -1,6 +1,6 @@
 <template>
   <el-dialog
-      :model-value="dialogVisible"
+      v-model="dialogVisible"
       title="添加应用"
       center
       @close="closeDialog"
@@ -48,7 +48,7 @@
 
 <script>
 import {defineComponent, ref, reactive, watch, toRefs} from 'vue'
-import {ArrowLeft, ArrowRight} from '@element-plus/icons'
+import {ArrowLeft, ArrowRight} from '@element-plus/icons-vue'
 import {addApp, updateApp} from '@/api/user.js'
 import {getDicts} from '@/api/dict.js'
 

+ 4 - 4
ruoyi-ui/src/components/ae/AeServiceApply.vue

@@ -2,7 +2,7 @@
   <el-dialog
       destroy-on-close
       title="申请服务"
-      :model-value="dialogVisible"
+      v-model="dialogVisible"
       @close="closeDialog"
   >
     <el-form ref="formRef" :model="form" :rules="rules" label-width="120px">
@@ -67,7 +67,7 @@
             type="info"
             plain
             :icon="Upload"
-            size="mini"
+
             @click="handleImport"
         >
           导入附件
@@ -239,7 +239,7 @@ export default defineComponent({
       // 设置上传的请求头部
       headers: {Authorization: 'Bearer ' + getToken()},
       // 上传的地址
-      url: process.env.BASE_API + '/pt/file/upload',
+      url: import.meta.env.VITE_APP_BASE_API + '/pt/file/upload',
     })
 
     const getAppIdOptions = () => {
@@ -351,7 +351,7 @@ export default defineComponent({
     }
 
     function getUrl(path) {
-      return process.env.BASE_API + path
+      return import.meta.env.VITE_APP_BASE_API + path
     }
 
     function delFile(id, index) {

+ 119 - 126
ruoyi-ui/src/components/ae/Consult.vue

@@ -1,7 +1,7 @@
 <template>
-  <el-dialog title="咨询" :model-value="dialogVis" @close="closeDialog">
+  <el-dialog title="咨询" v-model="visible" @close="closeDialog">
     <el-form ref="formRef" :model="form" :rules="rules" label-width="120px">
-      <el-form-item v-if="type == 'view'" label="咨询类型">
+      <el-form-item v-if="type === 'view'" label="咨询类型">
         <span>
           {{ formatType(form.type) }}
         </span>
@@ -18,11 +18,11 @@
         </el-select>
       </el-form-item>
       <el-form-item label="咨询标题" prop="title">
-        <span v-if="type == 'view'">{{ form.title }}</span>
+        <span v-if="type === 'view'">{{ form.title }}</span>
         <el-input v-model="form.title" v-else></el-input>
       </el-form-item>
       <el-form-item label="咨询内容" prop="content">
-        <span v-if="type == 'view'">{{ form.content }}</span>
+        <span v-if="type === 'view'">{{ form.content }}</span>
         <el-input
             v-model="form.content"
             maxlength="500"
@@ -33,15 +33,15 @@
         />
       </el-form-item>
       <el-form-item label="咨询时间">
-        <span v-if="type == 'view'">{{ form.intm }}</span>
+        <span v-if="type === 'view'">{{ form.intm }}</span>
         <span v-else> {{ $filters.fmt(new Date()) }} </span>
       </el-form-item>
-      <el-form-item v-if="type != 'view'" label="咨询人">
-        <span v-if="type == 'view'">{{ form.userName }}</span>
+      <el-form-item v-if="type !== 'view'" label="咨询人">
+        <span v-if="type === 'view'">{{ form.userName }}</span>
         <span v-else>{{ store.getters.nickname }}</span>
       </el-form-item>
-      <el-form-item v-if="type == 'view'" label="回复内容" prop="replyContent">
-        <span v-if="type == 'view'">{{ form.replyContent }}</span>
+      <el-form-item v-if="type === 'view'" label="回复内容" prop="replyContent">
+        <span v-if="type === 'view'">{{ form.replyContent }}</span>
         <el-input
             v-model="form.replyContent"
             maxlength="500"
@@ -51,145 +51,138 @@
             v-else
         />
       </el-form-item>
-      <el-form-item v-if="type == 'view'" label="回复时间">
-        <span v-if="type == 'view'">{{ form.rplytm }}</span>
+      <el-form-item v-if="type === 'view'" label="回复时间">
+        <span v-if="type === 'view'">{{ form.rplytm }}</span>
         <span v-else> {{ $filters.fmt(new Date()) }} </span>
       </el-form-item>
     </el-form>
     <el-row justify="center">
-      <el-button v-if="type != 'view'" type="primary" @click="onSubmit">
+      <el-button v-if="type !== 'view'" type="primary" @click="onSubmit">
         保存
       </el-button>
-      <el-button @click="closeDialog">{{
-          type == 'view' ? '退出' : '取消'
-        }}
+      <el-button @click="closeDialog">
+        {{ type === 'view' ? '退出' : '取消' }}
       </el-button>
     </el-row>
   </el-dialog>
 </template>
 
-<script>
-import {defineComponent, ref, reactive, watch, toRefs} from 'vue'
+<script setup>
+import {reactive, ref, watch} from 'vue'
 import {useStore} from 'vuex'
 import {saveConsult} from '@/api/interactive/consult.js'
 
-export default defineComponent({
-  emits: {
-    'close-dialog': null,
-  },
-  props: ['service', 'dialogVis', 'type'],
-  setup(props, {emit}) {
-    const {store, formRef, rules, types} = toRefs(
-        reactive({
-          store: useStore(),
-          formRef: null,
-          rules: {
-            title: [
-              {
-                required: true,
-                message: '请填写信息,该属性为必填项',
-                trigger: 'blur',
-              },
-            ],
-            type: [
-              {
-                required: true,
-                message: '请填写信息,该属性为必填项',
-                trigger: 'blur',
-              },
-            ],
-            content: [
-              {
-                required: true,
-                message: '请填写信息,该属性为必填项',
-                trigger: 'blur',
-              },
-            ],
-          },
-          types: [
-            {label: '使用方法', value: '1'},
-            {label: '缺陷反馈', value: '2'},
-            {label: '权益保护', value: '3'},
-            {label: '功能建议', value: '4'},
-            {label: '其他', value: '9'},
-          ],
-        })
-    )
-
-    let {dialogVis, type} = toRefs(props)
-    let form = ref({
-      title: '',
-      type: '1',
-      content: '',
-      replyContent: '',
-      userId: '',
-      rplytm: '',
-    })
-
-    watch(
-        () => props.service,
-        (val) => {
-          if (val) {
-            form.value = val
-          } else {
-            form.value = {
-              title: '',
-              type: '1',
-              content: '',
-              replyContent: '',
-              userId: '',
-              rplytm: '',
-            }
-          }
-        }
-    )
-
-    /** 咨询类型转换 */
-    function formatType(type) {
-      for (let i = 0, len = types.value.length; i < len; i++) {
-        let e = types.value[i]
-        if (e.value == type) {
-          return e.label
+// 定义 props
+const props = defineProps(['service', 'dialogVis', 'type'])
+
+// 定义 emits
+const emit = defineEmits(['close-dialog'])
+
+// 使用 store
+const store = useStore()
+
+// 表单引用
+const formRef = ref(null)
+const visible = ref(false)
+
+// 表单数据
+const form = ref({
+  title: '',
+  type: '1',
+  content: '',
+  replyContent: '',
+  userId: '',
+  rplytm: '',
+})
+
+// 验证规则
+const rules = reactive({
+  title: [
+    {
+      required: true,
+      message: '请填写信息,该属性为必填项',
+      trigger: 'blur',
+    },
+  ],
+  type: [
+    {
+      required: true,
+      message: '请填写信息,该属性为必填项',
+      trigger: 'blur',
+    },
+  ],
+  content: [
+    {
+      required: true,
+      message: '请填写信息,该属性为必填项',
+      trigger: 'blur',
+    },
+  ],
+})
+
+// 咨询类型选项
+const types = reactive([
+  {label: '使用方法', value: '1'},
+  {label: '缺陷反馈', value: '2'},
+  {label: '权益保护', value: '3'},
+  {label: '功能建议', value: '4'},
+  {label: '其他', value: '9'},
+])
+
+// 监听 service 变化
+watch(
+    () => props.service,
+    (val) => {
+      if (val) {
+        form.value = val
+      } else {
+        form.value = {
+          title: '',
+          type: '1',
+          content: '',
+          replyContent: '',
+          userId: '',
+          rplytm: '',
         }
       }
-      return ''
     }
+)
 
-    /** 关闭对话框 */
-    const closeDialog = (value) => {
-      emit('close-dialog')
-    }
+watch(() => props.dialogVis, (val) => {
+  visible.value = val
+}, {immediate: true})
 
-    /** 提交表单 */
-    const onSubmit = () => {
-      formRef.value.validate((valid) => {
-        if (valid) {
-          saveConsult(form).then((r) => {
-            closeDialog(true)
-          })
-          return true
-        } else {
-          return false
-        }
-      })
+// 获取 props 中的值
+const {dialogVis, type} = props
+
+/** 咨询类型转换 */
+function formatType(type) {
+  for (let i = 0, len = types.length; i < len; i++) {
+    let e = types[i]
+    if (e.value == type) {
+      return e.label
     }
+  }
+  return ''
+}
+
+/** 关闭对话框 */
+const closeDialog = (value) => {
+  emit('close-dialog')
+}
 
-    return {
-      dialogVis,
-      type,
-
-      form,
-      store,
-      rules,
-      types,
-      formRef,
-      onSubmit,
-      closeDialog,
-      formatType,
+/** 提交表单 */
+const onSubmit = () => {
+  formRef.value.validate((valid) => {
+    if (valid) {
+      saveConsult(form.value).then((r) => {
+        closeDialog(true)
+      })
     }
-  },
-})
+  })
+}
 </script>
+
 <style scoped>
 .box {
   border: 1px solid #ebeef5;
@@ -200,4 +193,4 @@ export default defineComponent({
 :deep(.el-main) {
   padding: 0 10px;
 }
-</style>
+</style>

+ 1 - 1
ruoyi-ui/src/components/dataDetail/CommentList.vue

@@ -44,7 +44,7 @@
                 shape="square"
                 src="/src/assets/images/default-user-img.jpg"
                 class="reply-face"
-                size="small"
+
             ></el-avatar>
             <div class="reply-con">
               <div class="user">

+ 5 - 2
ruoyi-ui/src/components/dataDetail/DataView.vue

@@ -21,7 +21,10 @@
 
 <script>
 import {defineComponent, reactive, watch} from 'vue'
-import axios from '@/utils/axios.js'
+import request from "@/utils/request.js";
+
+
+
 
 export default defineComponent({
   name: 'dataView',
@@ -33,7 +36,7 @@ export default defineComponent({
     })
 
     const getDataView = (srvId) => {
-      axios.get(`/pt/service/dataView/${srvId}`).then((r) => {
+      request.get(`/pt/service/dataView/${srvId}`).then((r) => {
         dataList.list = r.data.list
         dataList.paramList = r.data.return
       })

+ 1 - 1
ruoyi-ui/src/components/dataDetail/ReplyList.vue

@@ -9,7 +9,7 @@
           shape="square"
           src="/src/assets/images/default-user-img.jpg"
           class="reply-face"
-          size="small"
+
       ></el-avatar>
       <div class="reply-con">
         <div class="user">

+ 3 - 5
ruoyi-ui/src/frontLayout/components/footer.vue

@@ -18,9 +18,7 @@
         <i>|</i>
         <a href="javascript:;">联系方式</a>
       </div>
-      <!-- <p class="other">上海太华科技有限公司</p> -->
-      <p class="other">苏州管理局</p>
-      <!-- <p class="other">太湖流域管理局</p> -->
+       <p class="other">太湖流域管理局</p>
       <p class="other">支撑单位:北京金水信息技术发展有限公司</p>
       <!-- <p>
         <a href="http://beian.miit.gov.cn" target="_blank">
@@ -106,7 +104,7 @@ export default {
   left: 0px;
   width: 56px;
   height: 68px;
-  background: url(assets/dzjg.png) no-repeat;
+  background: url(@/assets/dzjg.png) no-repeat;
 }
 
 .footer .jiucuo {
@@ -115,6 +113,6 @@ export default {
   left: 90px;
   width: 110px;
   height: 55px;
-  background: url(assets/jiucuo.png) no-repeat;
+  background: url(@/assets/jiucuo.png) no-repeat;
 }
 </style>

+ 9 - 14
ruoyi-ui/src/frontLayout/index.vue

@@ -7,32 +7,24 @@
             <div class="index_logo"></div>
           </el-col>
           <el-col :span="19" style="display:flex;align-items: center;">
-            <!-- <div class="index_title">太华数据服务平台</div> -->
-            <!-- <div class="index_title">苏州管理局<br />数据服务平台</div> -->
-            <!-- <div class="index_title">太湖流域管理局信息中心<br />数据服务平台</div> -->
-            <div class="index_title">数字孪生太浦闸<br/>模型与数据服务平台</div>
+             <div class="index_title">太湖流域管理局信息中心<br />数据服务平台</div>
           </el-col>
         </el-row>
-        <div></div>
-        <h2 style=""></h2>
       </el-col>
       <el-col class="menu" :span="14">
         <el-row class="top" justify="end">
-          <!-- <div class="button">
-            <el-button size="mini" type="text">无障碍浏览</el-button>
-          </div> -->
           <div class="button">
-            <el-button size="mini" type="text">使用手册</el-button>
+            <el-button type="primary" link>使用手册</el-button>
           </div>
           <div class="button">
-            <el-button size="mini" type="text">开放协议</el-button>
+            <el-button type="primary" link>开放协议</el-button>
           </div>
           <div class="button">
             <el-divider direction="vertical" content-position="center" style="height: 100%"></el-divider>
           </div>
           <div class="button">
             <el-dropdown v-if="isLogin">
-              <el-button size="mini" type="primary" round>
+              <el-button type="primary" round>
                 欢迎您!
                 <strong class="login_user_name">
                   {{ store.getters.nickname }}
@@ -40,6 +32,9 @@
               </el-button>
               <template #dropdown>
                 <el-dropdown-menu>
+                  <el-dropdown-item @click="router.push('/datamonitor/monitorservice')">
+                    后台服务
+                  </el-dropdown-item>
                   <el-dropdown-item @click="router.push('/userCenter/appInfo')">
                     个人中心
                   </el-dropdown-item>
@@ -49,12 +44,12 @@
                 </el-dropdown-menu>
               </template>
             </el-dropdown>
-            <el-button v-if="!isLogin" round size="mini" type="primary" @click="router.push('/login')">
+            <el-button v-if="!isLogin" round type="primary" @click="router.push('/login')">
               登录
             </el-button>
           </div>
           <div class="button" v-if="!isLogin">
-            <el-button size="mini" type="text" @click="router.push('/register')">
+            <el-button type="primary" link @click="router.push('/register')">
               注册
             </el-button>
           </div>

+ 2 - 23
ruoyi-ui/src/layout/components/Navbar.vue

@@ -1,27 +1,7 @@
 <template>
   <div class="navbar">
     <hamburger id="hamburger-container" :is-active="appStore.sidebar.opened" class="hamburger-container"  />
-    <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!settingsStore.topNav" />
-    <div style="margin-left: 47%;font-size: 16px;align-items: center;height: 100%;display: flex;font-weight: bold;">
-      <div style="color: #409EFF;" v-if="route.params.id=='20'">
-        温带风暴潮预报模型
-      </div>
-      <div style="color: #409EFF;" v-if="route.params.id=='25'">
-        上海沿海风暴潮预报模型
-      </div>
-      <div style="color: #409EFF;" v-if="route.params.id=='26'">
-        上海市城区洪涝仿真模型
-      </div>
-      <div style="color: #409EFF;" v-if="route.params.id=='28'">
-        苏州河水系水情预报模型
-      </div>
-      <div style="color: #409EFF;" v-if="route.params.id=='30'">
-        上海市中心城区排水系统模型
-      </div>
-      <div style="color: #409EFF;" v-if="route.params.id=='42'">
-        模型测试
-      </div>
-    </div>
+    <breadcrumb class="breadcrumb-container" v-if="!settingsStore.topNav" />
     <top-nav id="topmenu-container" class="topmenu-container" v-if="settingsStore.topNav" />
     <!-- <div class="right-menu">
       <template v-if="appStore.device !== 'mobile'">
@@ -108,7 +88,7 @@ function logout() {
     type: 'warning'
   }).then(() => {
     userStore.logOut().then(() => {
-      location.href = '/index';
+      location.href = 'sh/index';
     })
   }).catch(() => { });
 }
@@ -141,7 +121,6 @@ function setLayout() {
   }
 
   .breadcrumb-container {
-    float: left;
     font-size: 17px;
   }
 

+ 1 - 1
ruoyi-ui/src/layout/components/Sidebar/index.vue

@@ -8,7 +8,7 @@
           <!-- <img src="@/assets/images/top.png" alt=""/> -->
         </div>
         <div class="line-left-name" style="margin-left: 4%;">
-          <span>上海市水务海洋数字孪生模型服务管理系统</span>
+          <span>数据服务平台</span>
         </div>
       </el-col>
       <el-col :span="17">

+ 27 - 27
ruoyi-ui/src/layout/components/editModel.vue

@@ -72,8 +72,8 @@
                 <div style="display: flex;align-items: center;justify-content: space-between;">
                     <div style="margin-left:1%;">{{detail.name}}</div>
                     <div style="display: flex;">
-                        <!-- <el-button type="primary" size="mini" :icon="Promotion" @click="fetchData">运行</el-button>
-                        <el-button type="" size="mini">删除</el-button> -->
+                        <!-- <el-button type="primary" :icon="Promotion" @click="fetchData">运行</el-button>
+                        <el-button type="">删除</el-button> -->
                     </div>
                 </div>
                 <div style="display: flex;align-items: center;margin-left:1%;margin-top: 1%;">
@@ -181,7 +181,7 @@
                                                 content="必填"
                                                 placement="top-start"
                                             >
-                                                <el-button style="transform: scale(0.5);transform-origin: center;margin-left: 5%; " type="success" :icon="Check" circle size="mini" plain/>
+                                                <el-button style="transform: scale(0.5);transform-origin: center;margin-left: 5%; " type="success" :icon="Check" circle plain/>
                                             </el-tooltip>
                                         </span>
                                     </span>
@@ -235,7 +235,7 @@
                     <el-button type="primary" @click="saveEditService" style="margin-left: 80%;z-index: 1000;" :disabled="isEdit">提交</el-button>
                     <el-button type="danger" @click="delSer" style="margin-left: 1%;z-index: 1000;" :disabled="isEdit">删除</el-button>
                   </div>
-                    <el-form size="mini" :key="tableKey" style="margin-top: -2%;width: 98%;"  :model="formJi" label-position="right" ref="formRefJi" label-width="120px" :rules="rulesJi">
+                    <el-form :key="tableKey" style="margin-top: -2%;width: 98%;"  :model="formJi" label-position="right" ref="formRefJi" label-width="120px" :rules="rulesJi">
                       <el-row :gutter="48">
                             <el-col :span="10">
                               <el-form-item label="服务名称:" prop="name" style="">
@@ -350,7 +350,7 @@
                             请求参数
                           </div>
                           <div style="display: flex;justify-content: flex-end;margin-right: 2%;">
-                            <el-button  @click="addPa" style="margin-top: 1%;" type="success" size="mini" plain>新增参数</el-button>
+                            <el-button  @click="addPa" style="margin-top: 1%;" type="success" plain>新增参数</el-button>
                           </div>
                         </div>
                         <div>
@@ -364,14 +364,14 @@
                                 <el-table-column prop="itemName" label="参数字段">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input  placeholder="请填写参数编码" type="primary" class="noBor" v-model="scope.row.paramCode" size="mini" text style="margin-left: 0%;border: transparent;"></el-input>
+                                            <el-input  placeholder="请填写参数编码" type="primary" class="noBor" v-model="scope.row.paramCode" text style="margin-left: 0%;border: transparent;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
                                 <el-table-column prop="itemName" label="参数名称">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input placeholder="请填写参数名称" type="primary" class="noBor" v-model="scope.row.itemName" size="mini" text style="margin-left: 0%;"></el-input>
+                                            <el-input placeholder="请填写参数名称" type="primary" class="noBor" v-model="scope.row.itemName" text style="margin-left: 0%;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
@@ -397,14 +397,14 @@
                                 <el-table-column prop="itemName" label="参数说明" >
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input type="primary" class="noBor" v-model="scope.row.paramNote" size="mini" text style="margin-left: 0%;"></el-input>
+                                            <el-input type="primary" class="noBor" v-model="scope.row.paramNote" text style="margin-left: 0%;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
                                 <el-table-column prop="address" label="操作" width="100">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-button type="danger" @click="delCan(scope.$index)" size="mini" text style="margin-left: 0%;">删除</el-button>
+                                            <el-button type="danger" @click="delCan(scope.$index)" text style="margin-left: 0%;">删除</el-button>
                                         </div>
                                     </template>
                                 </el-table-column>
@@ -421,7 +421,7 @@
                                     <!-- <el-tree  :data="data" :props="defaultProps" @node-click="handleNodeClick" style="margin-top: 1%;margin-left: 2%;background-color: #F7F7F7;background-color: transparent;width: 15%;" default-expand-all>
                                         <template #default="{ node, data }">
                                             <span style="display: flex;justify-content: space-between;width: 100%;align-items: center;">
-                                                <span><el-input v-model="node.label" size="mini"/></span>
+                                                <span><el-input v-model="node.label"/></span>
                                                 <span style="display: flex;align-items: center;">
                                                     <el-tooltip
                                                         class="box-item"
@@ -472,7 +472,7 @@
                             }"
                             lang="zh"
                           /> -->
-                          <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="dataJsonXiang" size="mini" text style="margin-top: 0%;width: 98%;" ></el-input>
+                          <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="dataJsonXiang" text style="margin-top: 0%;width: 98%;" ></el-input>
                         </div>
                     </div>
                     <div style="margin-top: 2.5%;margin-left: 0%;padding-bottom: 1%;">
@@ -482,14 +482,14 @@
                              
                         </el-tab-pane>
                     </el-tabs>
-                    <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="example" size="mini" text style="margin-top: -1%;width: 98%;" ></el-input>
+                    <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="example" text style="margin-top: -1%;width: 98%;" ></el-input>
                 </div>
                 </div>
             </el-tab-pane>
         </el-tabs>
         <el-dialog @close="clearAdd" v-model="dialogVisible" title="新增节点" width="70%" destroy-on-close :key="tableKey">
           <div style="overflow: auto;height: 80vh;">
-                    <el-form size="mini" :key="tableKey" style="margin-top: 1%;width: 98%;"  :model="formAdd" label-position="right" ref="formRefAdd" label-width="120px" :rules="rulesAdd">
+                    <el-form :key="tableKey" style="margin-top: 1%;width: 98%;"  :model="formAdd" label-position="right" ref="formRefAdd" label-width="120px" :rules="rulesAdd">
                       <el-row :gutter="48">
                             <el-col :span="10">
                               <el-form-item label="服务名称:" prop="name" style="">
@@ -627,7 +627,7 @@
                             请求参数
                           </div>
                           <div style="display: flex;justify-content: flex-end;margin-right: 2%;">
-                            <el-button  @click="addCanAdd" style="margin-top: 1%;" type="success" size="mini" plain>新增参数</el-button>
+                            <el-button  @click="addCanAdd" style="margin-top: 1%;" type="success" plain>新增参数</el-button>
                           </div>
                         </div>
                         <div>
@@ -641,14 +641,14 @@
                                 <el-table-column prop="itemName" label="参数字段">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input placeholder="请填写参数编码" type="primary" class="noBor" v-model="scope.row.paramCode" size="mini" text style="margin-left: 0%;border: transparent;"></el-input>
+                                            <el-input placeholder="请填写参数编码" type="primary" class="noBor" v-model="scope.row.paramCode" text style="margin-left: 0%;border: transparent;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
                                 <el-table-column prop="itemName" label="参数名称">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input placeholder="请填写参数名称" type="primary" class="noBor" v-model="scope.row.paramName" size="mini" text style="margin-left: 0%;"></el-input>
+                                            <el-input placeholder="请填写参数名称" type="primary" class="noBor" v-model="scope.row.paramName" text style="margin-left: 0%;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
@@ -674,21 +674,21 @@
                                 <el-table-column prop="itemName" label="参数示例">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input placeholder="请填写参数示例" type="primary" class="noBor" v-model="scope.row.paramValue" size="mini" text style="margin-left: 0%;"></el-input>
+                                            <el-input placeholder="请填写参数示例" type="primary" class="noBor" v-model="scope.row.paramValue" text style="margin-left: 0%;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
                                 <el-table-column prop="itemName" label="参数说明" >
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-input type="primary" class="noBor" v-model="scope.row.paramNote" size="mini" text style="margin-left: 0%;"></el-input>
+                                            <el-input type="primary" class="noBor" v-model="scope.row.paramNote" text style="margin-left: 0%;"></el-input>
                                         </div>
                                     </template>
                                 </el-table-column>
                                 <el-table-column prop="address" label="操作" width="100">
                                     <template #default="scope">
                                         <div style="width: 100%;">
-                                            <el-button type="danger" @click="delCanAdd(scope.$index)" size="mini" text style="margin-left: 0%;">删除</el-button>
+                                            <el-button type="danger" @click="delCanAdd(scope.$index)" text style="margin-left: 0%;">删除</el-button>
                                         </div>
                                     </template>
                                 </el-table-column>
@@ -706,7 +706,7 @@
                             </el-tab-pane>
                         </el-tabs>
                         <div style="overflow: auto;height: 20vh;margin-top: -1%;">
-                          <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="JsonAdd" size="mini" text style="margin-top: 0%;width: 98%;" ></el-input>
+                          <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="JsonAdd" text style="margin-top: 0%;width: 98%;" ></el-input>
                         </div>
                     </div>
                     <div style="margin-top: 2.5%;margin-left: 0%;padding-bottom: 1%;">
@@ -716,20 +716,20 @@
                              
                         </el-tab-pane>
                     </el-tabs>
-                    <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="exampleAdd" size="mini" text style="margin-top: -1%;width: 98%;" ></el-input>
+                    <el-input placeholder="请输入示例" :rows="8" type="textarea" v-model="exampleAdd" text style="margin-top: -1%;width: 98%;" ></el-input>
                 </div>
                 </div>
                 <template #footer>
                   <span class="dialog-footer">
-                    <el-button size="mini" @click="dialogVisible = false">取消</el-button>
-                    <el-button type="primary" @click="addSer" size="mini">
+                    <el-button @click="dialogVisible = false">取消</el-button>
+                    <el-button type="primary" @click="addSer">
                       提交
                     </el-button>
                 </span>
               </template>
         </el-dialog>
         <el-dialog @close="clearFromLev" title="添加目录" v-model="dialogVisibleLevel" width="30%" destroy-on-close :key="tableKey">
-          <el-form size="mini" :key="tableKey" style="margin-top: 1%;width: 90%;"  :model="formLev" label-position="right" ref="formRefLev" label-width="120px" :rules="rulesLev">
+          <el-form :key="tableKey" style="margin-top: 1%;width: 90%;"  :model="formLev" label-position="right" ref="formRefLev" label-width="120px" :rules="rulesLev">
             <el-form-item label="名称:" prop="itemName" style="">
               <el-input v-model="formLev.itemName" style="width: 100%;"/>
             </el-form-item>
@@ -742,11 +742,11 @@
           </el-form>
           <template #footer>
               <span class="dialog-footer">
-                <el-button size="mini" @click="dialogVisibleLevel = false">取消</el-button>
-                <el-button type="primary" @click="saveAdd1Level" size="mini" v-if="show1Lev">
+                <el-button @click="dialogVisibleLevel = false">取消</el-button>
+                <el-button type="primary" @click="saveAdd1Level" v-if="show1Lev">
                   提交
                 </el-button>
-                <el-button type="primary" @click="saveAddNextLevel" size="mini" v-if="!show1Lev">
+                <el-button type="primary" @click="saveAddNextLevel" v-if="!show1Lev">
                   提交
                 </el-button>
             </span>

+ 11 - 1
ruoyi-ui/src/main.js

@@ -24,6 +24,7 @@ import SvgIcon from "@/components/SvgIcon";
 import elementIcons from "@/components/SvgIcon/svgicon";
 
 import "./permission"; // permission control
+import tools from './utils/tools.js'
 
 import { useDict } from "@/utils/dict";
 import {
@@ -56,6 +57,7 @@ import JsonViewer from 'vue-json-viewer'
 import 'vue-json-viewer/style.css'
 // 字体
 import './assets/styles/css/font.css'
+import moment from "moment";
 
 const pinia = createPinia()
 const app = createApp(App);
@@ -70,7 +72,14 @@ app.config.globalProperties.handleTree = handleTree;
 app.config.globalProperties.addDateRange = addDateRange;
 app.config.globalProperties.selectDictLabel = selectDictLabel;
 app.config.globalProperties.selectDictLabels = selectDictLabels;
-
+app.config.globalProperties.$filters = {
+  timeAgo(date) {
+    return moment(date).fromNow()
+  },
+  fmt(date, pattern = 'YYYY-MM-DD HH:mm:ss') {
+    return moment(date).format(pattern)
+  },
+}
 // 全局组件挂载
 app.component("DictTag", DictTag);
 app.component("Pagination", Pagination);
@@ -98,4 +107,5 @@ app.use(ElementPlus, {
   size: Cookies.get("size") || "default",
 });
 
+app.config.globalProperties.$tools = tools
 app.mount("#app");

+ 1 - 1
ruoyi-ui/src/permission.js

@@ -11,7 +11,7 @@ import usePermissionStore from "@/store/modules/permission";
 
 NProgress.configure({ showSpinner: false });
 
-const whiteList = ["/login", "/register", "/forceResetPwd", "index",'/shouye'];
+const whiteList = ["/login", "/register", "/forceResetPwd", "index"];
 
 router.beforeEach((to, from, next) => {
   NProgress.start();

+ 4 - 4
ruoyi-ui/src/plugins/download.js

@@ -1,4 +1,4 @@
-import axios from 'axios'
+import require from '@/utils/request.js'
 import { ElLoading, ElMessage } from 'element-plus'
 import { saveAs } from 'file-saver'
 import { getToken } from '@/utils/auth'
@@ -11,7 +11,7 @@ let downloadLoadingInstance;
 export default {
   name(name, isDelete = true) {
     var url = baseURL + "/common/download?fileName=" + encodeURIComponent(name) + "&delete=" + isDelete
-    axios({
+    require({
       method: 'get',
       url: url,
       responseType: 'blob',
@@ -28,7 +28,7 @@ export default {
   },
   resource(resource) {
     var url = baseURL + "/common/download/resource?resource=" + encodeURIComponent(resource);
-    axios({
+    require({
       method: 'get',
       url: url,
       responseType: 'blob',
@@ -46,7 +46,7 @@ export default {
   zip(url, name) {
     var url = baseURL + url
     downloadLoadingInstance = ElLoading.service({ text: "正在下载数据,请稍候", background: "rgba(0, 0, 0, 0.7)", })
-    axios({
+    require({
       method: 'get',
       url: url,
       responseType: 'blob',

+ 2 - 91
ruoyi-ui/src/router/index.js

@@ -31,11 +31,6 @@ const openDataQuery = () => import('@/views/OpenDataQuery.vue')
 
 // 公共路由
 export const constantRoutes = [
-    {
-        path: '/shouye',
-        component: () => import('@/views/shouye'),
-        hidden: true,
-    },
     {
         path: '/redirect',
         component: Layout,
@@ -67,22 +62,11 @@ export const constantRoutes = [
         component: () => import('@/views/error/401'),
         hidden: true
     },
-    {
-        path: '',
-        component: Layout,
-        redirect: '/shouye',
-        // children: [
-        //     {
-        //         path: '/index',
-        //         component: () => import('@/views/shouye'),
-        //         name: 'Index',
-        //         meta: {title: '首页', icon: 'dashboard', affix: true}
-        //     }
-        // ]
-    },
     {
         path: '',
         component: layout,
+        redirect: '/openIndex',
+        hidden: true,
         children: [
             {path: '', name: 'app', component: openIndex},
             {path: 'openIndex', name: 'openIndex', component: openIndex},
@@ -232,79 +216,6 @@ export const constantRoutes = [
             }
         ]
     },
-    {
-        path: '/system/docker-detail',
-        component: Layout,
-        hidden: true,
-        children: [
-            {
-                path: ':id',
-                component: () => import('@/views/docker/detail/index.vue'),
-                name: 'DockerDetail',
-                meta: {title: '服务详情', activeMenu: '/docker/detail'}
-            }
-        ]
-    },
-    {
-        path: '/standardization/modeling/bizDataShowConfig',
-        component: Layout,
-        hidden: true,
-        children: [
-            {
-                path: ':id',
-                component: () => import('@/views/standardization/bizDataShowConfig/index.vue'),
-                name: 'BizDataShowConfig',
-                meta: {title: '业务数据展示', activeMenu: '/standardization/bizDataShowConfig'}
-            }
-        ]
-    },
-    {
-        path: '/standardization',
-        component: Layout,
-        hidden: true,
-        children: [
-            {
-                path: 'map/:id',
-                component: () => import('@/views/map/index.vue'),
-                name: 'standardizationMap',
-                meta: {title: '成果展示', activeMenu: '/standardization/map/show'}
-            }
-        ]
-    },
-   {
-    path: '/system/workSpace',
-    component:Layout,
-    hidden: true,
-        children: [
-            {
-                path: '/index',
-                name: 'workSpace',
-                component: () => import('@/views/developer/workSpace/index.vue'),
-                children: [
-                    {
-                        path: '/workSpace',
-                        component: () => import('@/views/developer/workSpace/workSpace.vue'),
-                    },
-                    {
-                        path: '/shenqing',
-                        component: () => import('@/views/developer/workSpace/shenqing.vue'),
-                    },
-                    {
-                        path: '/ziyuan',
-                        component: () => import('@/views/developer/workSpace/ziyuan.vue'),
-                    },
-                    {
-                        path: '/fankui',
-                        component: () => import('@/views/developer/workSpace/fankui.vue'),
-                    },
-                    {
-                        path: '/yingyong',
-                        component: () => import('@/views/developer/workSpace/yingyong.vue'),
-                    }
-                ]
-            }
-        ]
-    }
 ]
 
 // 动态路由,基于用户权限动态去加载

+ 88 - 0
ruoyi-ui/src/utils/tools.js

@@ -0,0 +1,88 @@
+const tools = {
+    isNotEmpty: (val) => {
+        return typeof val !== 'undefined' && val !== null ? true : false
+    },
+    isEmpty: (val) => {
+        return val === null && typeof val === 'undefined' ? true : false
+    },
+    isBlack: (val) => {
+        let regular = new RegExp('^[ ]+$')
+        return (
+            val == null || typeof val == 'undefined' || val == '' || regular.test(val)
+        )
+    },
+    data2Tree: (list, topValue, pName, name) => {
+        if (tools.isEmpty(list) || list.length === 0) {
+            return list
+        }
+        if (tools.isBlack(topValue)) {
+            topValue = '0'
+        }
+        if (tools.isBlack(pName)) {
+            pName = 'pid'
+        }
+        if (tools.isBlack(name)) {
+            name = 'id'
+        }
+
+        return tools.createTree(list, topValue, pName, name)
+    },
+    createTree: (list, pid, pName, name) => {
+        let tree = []
+        for (let num = 0; num < list.length; num++) {
+            let data = list[num]
+            if (data[pName] === pid) {
+                data['children'] = tools.createTree(list, data[name], pName, name)
+                tree.push(data)
+            }
+        }
+        return tree
+    },
+    /**
+     * map 排序对 map 的 key 值进行排序
+     * @param obj
+     */
+    sortMap: (obj) => {
+        // 1.根据数组中的对象,得到排序后的 key,return key2-key1 表示降序
+        let newkey = Object.keys(obj).sort((key1, key2) => {
+            return obj[key2] - obj[key1]
+        })
+        // 2.用排序后的key构建新的对象数组
+        let newObj = {}
+        // 创建一个新的对象,用于存放排好序的键值对
+        for (var i = 0; i < newkey.length; i++) {
+            // 遍历 newkey 数组, 向新创建的对象中按照排好的顺序依次增加键值对
+            newObj[newkey[i]] = obj[newkey[i]]
+        }
+
+        return newObj //返回排好序的新对象
+    },
+    findKey: (data, value) => {
+        let compare = (a, b) => a === b
+        return Object.keys(data).find((k) => compare(data[k], value))
+    },
+    /** 数组拷贝 */
+    newObjectArrayWithDeepCopy: (items) => {
+        var newObjectArray = new Array()
+        for (var itemIndex = 0; itemIndex < items.length; itemIndex++) {
+            newObjectArray[itemIndex] = deepCopy(items[itemIndex])
+        }
+
+        return newObjectArray
+    },
+    /** 对象拷贝 */
+    newObjectWithDeepCopy: (object) => {
+        let newObject = {}
+        newObject = JSON.parse(JSON.stringify(object))
+        // for (attribute in object) {
+        //   if (typeof object.attribute === 'object' && object.attribute != null) {
+        //     newObject.attribute = deepCopy(object.attribute)
+        //   } else {
+        //     newObject.attribute = object.attribute
+        //   }
+        // }
+        return newObject
+    },
+}
+
+export default tools

+ 1 - 1
ruoyi-ui/src/views/DevelopCenter.vue

@@ -4,7 +4,7 @@
       <breadcrumb></breadcrumb>
     </el-col>
   </el-row>
-  <el-row :gutter="20" class="user-center" style="margin: 0">
+  <el-row :gutter="20" class="user-center" style="margin: 20px 0">
     <el-col :span="4" :offset="2">
       <el-card>
         <h4 class="menu_title">开发者中心</h4>

+ 12 - 12
ruoyi-ui/src/views/HelpCenter.vue

@@ -92,22 +92,22 @@ export default {
 
 #developer_center .steps_w {
   height: 180px;
-  background: url(assets/images/steps_bg.jpg) no-repeat;
+  background: url(@/assets/images/steps_bg.jpg) no-repeat;
   background-size: 100% 100%;
 }
 
 #developer_center .steps {
-  background: url(assets/images/steps_bg_line.png) no-repeat;
+  background: url(@/assets/images/steps_bg_line.png) no-repeat;
   background-position: top center;
 }
 
 #developer_center .register_step {
-  background: #46cf32 url(assets/images/steps.png) no-repeat;
+  background: #46cf32 url(@/assets/images/steps.png) no-repeat;
   background-position: 0 18px;
 }
 
 #developer_center .create_step {
-  background: #ffb638 url(assets/images/steps.png) no-repeat;
+  background: #ffb638 url(@/assets/images/steps.png) no-repeat;
   background-position: 0 -82px;
 }
 
@@ -153,12 +153,12 @@ export default {
 }
 
 #developer_center .apply_step {
-  background: #ff5e39 url(assets/images/steps.png) no-repeat;
+  background: #ff5e39 url(@/assets/images/steps.png) no-repeat;
   background-position: 0 -180px;
 }
 
 #developer_center .development_step {
-  background: #0065bb url(assets/images/steps.png) no-repeat;
+  background: #0065bb url(@/assets/images/steps.png) no-repeat;
   background-position: 0 -278px;
 }
 
@@ -229,27 +229,27 @@ export default {
 }
 
 #developer_center .applications_access_tab .top_img {
-  background: url(assets/images/1.png) no-repeat;
+  background: url(@/assets/images/1.png) no-repeat;
   background-size: 100% 100%;
 }
 
 #developer_center .developer_center_tab .top_img {
-  background: url(assets/images/2.png) no-repeat;
+  background: url(@/assets/images/2.png) no-repeat;
   background-size: 100% 100%;
 }
 
 #developer_center .app_store_tab .top_img {
-  background: url(assets/images/3.png) no-repeat;
+  background: url(@/assets/images/3.png) no-repeat;
   background-size: 100% 100%;
 }
 
 #developer_center .open_data_tab .top_img {
-  background: url(assets/images/4.png) no-repeat;
+  background: url(@/assets/images/4.png) no-repeat;
   background-size: 100% 100%;
 }
 
 #developer_center .limit_data_tab .top_img {
-  background: url(assets/images/5.png) no-repeat;
+  background: url(@/assets/images/5.png) no-repeat;
   background-size: 100% 100%;
 }
 
@@ -261,7 +261,7 @@ export default {
 #developer_center .foot_links_w .foot_links_w {
   width: 1200px;
   margin: 0 auto;
-  /* background: url(assets/images/foot_bg.png) no-repeat; */
+  /* background: url(@/assets/images/foot_bg.png) no-repeat; */
   padding-left: 436px;
   box-sizing: border-box;
   padding-top: 40px;

+ 1 - 1
ruoyi-ui/src/views/Interactive.vue

@@ -11,7 +11,7 @@
       <breadcrumb></breadcrumb>
     </el-col>
   </el-row>
-  <el-row :gutter="20" class="user-center" style="margin: 0">
+  <el-row :gutter="20" class="user-center" style="margin: 20px 0">
     <el-col :span="4" :offset="2">
       <el-card>
         <h4 class="menu_title">互动交流</h4>

+ 5 - 10
ruoyi-ui/src/views/OpenData.vue

@@ -13,23 +13,18 @@
   </el-row>
   <el-row :gutter="20" style="margin: 0">
     <el-col :span="5" :offset="2">
-      <router-view name="left"/>
+      <OrgList/>
     </el-col>
     <el-col :span="15">
-      <router-view name="rigth"/>
+      <OpenDataQuery/>
     </el-col>
   </el-row>
 </template>
 
-<script>
+<script setup name="openData">
 import Breadcrumb from '../components/Breadcrumb.vue'
-
-export default {
-  name: 'openData',
-  components: {
-    Breadcrumb,
-  },
-}
+import OrgList from "@/views/OrgList.vue";
+import OpenDataQuery from "@/views/OpenDataQuery.vue";
 </script>
 <style scoped>
 .index_head {

+ 10 - 3
ruoyi-ui/src/views/OpenDataDetail.vue

@@ -92,7 +92,6 @@ import {useRoute} from 'vue-router'
 import {addAttention} from '@/api/user.js'
 import {getServiceById} from '@/api/service.js'
 import {getDicts} from '@/api/dict.js'
-import $ from 'jquery'
 import AeServiceApply from '@/components/ae/AeServiceApply.vue'
 import tabs from '@/components/Tabs.vue'
 import commentAndScore from '@/components/dataDetail/CommentAndScore.vue'
@@ -140,8 +139,14 @@ export default {
 
     /** 点击评分按钮 */
     const scrollTo = (id) => {
-      var h = $('#' + id).offset().top
-      $('html,body').animate({scrollTop: h - 100}, 300)
+      const element = document.getElementById(id)
+      if (element) {
+        const offsetTop = element.offsetTop
+        window.scrollTo({
+          top: offsetTop - 100,
+          behavior: 'smooth'
+        })
+      }
     }
 
     /** 点击报错按钮 */
@@ -220,6 +225,8 @@ export default {
   height: 22px;
   line-height: 22px;
   margin: 10px 0 0;
+  display: flex;
+  align-items: center;
 }
 
 .title_box i.green {

+ 17 - 15
ruoyi-ui/src/views/OpenDataQuery.vue

@@ -76,7 +76,7 @@
                   {{ d.applyNum }}次
                 </el-descriptions-item>
                 <el-descriptions-item label="访问量&#58;">
-                  <el-tag size="small">{{ d.viewNum }}次</el-tag>
+                  <el-tag >{{ d.viewNum }}次</el-tag>
                 </el-descriptions-item>
               </el-descriptions>
               <div class="btn_wrap">
@@ -98,12 +98,8 @@
           </div>
         </div>
         <div class="pagination_w">
-          <el-pagination
-              v-model:currentPage="data.query.pageNum"
-              :page-size="data.query.pageSize"
-              layout="total, prev, pager, next, jumper"
-              :total="data.dataTotal"
-          />
+          <pagination v-show="data.dataTotal > 0" :total="data.dataTotal" v-model:page="data.query.pageNum"
+                      v-model:limit="data.query.pageSize" @pagination="getOpenDataList" />
         </div>
       </div>
     </el-col>
@@ -133,7 +129,7 @@ import {
   ref,
   watch,
 } from 'vue'
-import {CaretBottom, Star, List} from '@element-plus/icons'
+import {CaretBottom, Star, List} from '@element-plus/icons-vue'
 import {useRoute, useRouter} from 'vue-router'
 import {getServiceList} from '@/api/service.js'
 import {addAttention, isLogin} from '@/api/user.js'
@@ -188,15 +184,21 @@ export default defineComponent({
       ],
     })
 
-    watch(
-        () => route.params,
-        () => {
-          data.query.data.cateCode = route.params.cateCode
-          getOpenDataList()
-        }
-    )
+    // watch(
+    //     () => route.query,
+    //     (newQuery, oldQuery) => {
+    //       if (newQuery.cateCode && newQuery.cateCode !== oldQuery.cateCode) {
+    //         data.query.data.cateCode = newQuery.cateCode
+    //         getOpenDataList()
+    //       }
+    //     },
+    //     { deep: true }
+    // )
 
     onMounted(() => {
+      if (route.query.cateCode) {
+        data.query.data.cateCode = route.query.cateCode
+      }
       getOpenDataList()
     })
 

+ 4 - 4
ruoyi-ui/src/views/OpenIndex.vue

@@ -527,7 +527,7 @@ export default {
         chart.setOption(option)
       }
 
-      maskImage.src = '/src/assets/chart_background.png'
+      maskImage.src = '@/assets/chart_background.png'
     }
 
     onMounted(() => {
@@ -551,7 +551,7 @@ export default {
   width: 100%;
   min-height: 600px;
   overflow: hidden;
-  background: url(assets/images/open_index_bg.jpg) center top no-repeat;
+  background: url(@/assets/images/open_index_bg.jpg) center top no-repeat;
   background-size: 100% 320px;
 }
 
@@ -628,8 +628,8 @@ li {
 }
 
 .open_index .data_bar dl {
-  position: relative;
-  float: right;
+  position: absolute;
+  right: 0;
   width: 65%;
   height: 90px;
   margin: 15px 0;

+ 5 - 5
ruoyi-ui/src/views/OrgList.vue

@@ -69,10 +69,10 @@ export default defineComponent({
     }
     fetchData()
     onMounted(() => {
-      if (route.query.cateCode) {
+      if (route.query.cateCode || route.params.cateCode) {
         nextTick(() => {
           let ref = treeRef.value
-          data.currentKey = route.query.cateCode
+          data.currentKey = route.query.cateCode || route.params.cateCode
           ref.setCurrentKey(data.currentKey)
           // let node = ref.getNode(data.currentKey)
           // if (node) {
@@ -83,11 +83,11 @@ export default defineComponent({
     })
 
     const handleNodeClick = (node) => {
-      let params = {cateCode: node.cateCode}
+      let query = {cateCode: node.cateCode}
       //  树状节点点击事件
       router.push({
-        name: 'dataQuery',
-        params: params,
+        path: '/openData/dataQuery',
+        query: query,
       })
     }
 

Vissa filer visades inte eftersom för många filer har ändrats