jianggs 1 semana atrás
pai
commit
3e86016e9b

+ 1 - 0
web/.gitignore

@@ -31,3 +31,4 @@ components.d.ts
 auto-imports.d.ts
 dist/
 dist.zip
+*.trae

+ 1 - 1
web/docs/system-implementation.md

@@ -188,7 +188,7 @@ validateRequiredFields(params) {
 queryBusinessAttr() {
   yufp.service.request({
     url: backend.tagServer + "/api/fastapi/query",
-    method: 'get',
+    method: 'POST',
     data: {
       businessAttr: this.businessAttr
     },

+ 2 - 2
web/src/views/aiTagging/appAuthManage/index.vue

@@ -158,7 +158,7 @@ export default {
     loadAppList() {
       yufp.service.request({
         url: backend.tagServer + "/api/aitag-app/query",
-        method: 'get',
+        method: 'POST',
         data: {
           // sysId: yufp.session.logicSys.id,
           appName: this.searchForm.appName,
@@ -269,7 +269,7 @@ export default {
         url: backend.tagServer + "/api/aitag-app/reset-secret",
         method: 'post',
         data: {
-          appId: this.currentApp.appId
+          id: this.currentApp.appId
         },
         callback: (code, error, response) => {
           if (response.code == '0') {

+ 1 - 1
web/src/views/aiTagging/externalPage/externalEdit.vue

@@ -408,7 +408,7 @@ export default {
     loadTagSystems() {
       yufp.service.request({
         url: backend.tagServer + "/api/aitag-tagcategory/enablelistnoauth",
-        method: 'get',
+        method: 'POST',
         data: {},
         needToken: false,
         callback: (code, error, response) => {

+ 1 - 1
web/src/views/aiTagging/externalPage/index.vue

@@ -277,7 +277,7 @@ export default {
       
       yufp.service.request({
         url: backend.tagServer + "/api/fastapi/query",
-        method: 'get',
+        method: 'POST',
         data: {
           businessAttr: this.businessAttr
         },

+ 5 - 3
web/src/views/aiTagging/taggingDetail/index.vue

@@ -154,9 +154,11 @@ export default {
     loadDetailData(id) {
       // 调用后端接口
       yufp.service.request({
-        url: backend.tagServer + "/api/aitagtaglog/show/" + id,
-        method: 'get',
-        data: {},
+        url: backend.tagServer + "/api/aitagtaglog/show",
+        method: 'POST',
+        data: {
+          id: id
+        },
         callback: (code, error, response) => {
           if (response.code == '0') {
             const data = response.data || {};

+ 6 - 3
web/src/views/aiTagging/taggingLogs/index.vue

@@ -116,7 +116,7 @@ export default {
       
       yufp.service.request({
         url: backend.tagServer + "/api/aitag-apilog/list",
-        method: 'get',
+        method: 'POST',
         data: {
           startTime: startTime,
           endTime: endTime,
@@ -165,8 +165,11 @@ export default {
       
       // 调用后端接口获取日志详情
       yufp.service.request({
-        url: backend.tagServer + "/api/aitag-apilog/query/" + row.id,
-        method: 'get',
+        url: backend.tagServer + "/api/aitag-apilog/query",
+        method: 'POST',
+        data: {
+          id: row.id
+        },
         callback: (code, error, response) => {
           if (response.code == '0') {
             // 构建与LogDetailDrawer.vue期望结构一致的详情数据

+ 1 - 1
web/src/views/aiTagging/taggingResults/components/Detail.vue

@@ -237,7 +237,7 @@ export default {
       // 调用导出接口
       yufp.service.request({
         url: backend.tagServer + "/api/aitagtaglog/exportData",
-        method: 'get',
+        method: 'POST',
         data: exportParams,
         responseType: 'blob',
         callback: (code, error, response) => {

+ 1 - 1
web/src/views/aiTagging/taggingResults/index.vue

@@ -152,7 +152,7 @@ export default {
     loadTagSystems() {
       yufp.service.request({
         url: backend.tagServer + "/api/aitag-tagcategory/enablelist",
-        method: 'get',
+        method: 'POST',
         data: {},
         callback: (code, error, response) => {
           if (response.code == '0') {

+ 14 - 7
web/src/views/aiTagging/taggingSystemManage/TagSystemEdit.vue

@@ -154,10 +154,13 @@ export default {
     // 更新当前路由的meta.title
     this.$route.meta.title = pageTitle;
     
-    // 更新标签页标题 - 只传递必要信息,避免循环引用
+    // 更新标签页标题 - 使用 Vue.set 来避免直接修改 Vuex 状态
     this.$store.dispatch('tagsView/updateVisitedView', {
       fullPath: this.$route.fullPath,
-      meta: { ...this.$route.meta }
+      meta: { 
+        title: pageTitle,
+        icon: this.$route.meta.icon || ''
+      }
     });
     
     console.log('TagSystemEdit.vue checkCtrl(aitagTagcategoryCreate)', this.checkCtrl('aitagTagcategoryCreate'))
@@ -187,9 +190,11 @@ export default {
       
       // 调用后端接口获取标签体系详情
       yufp.service.request({
-        url: backend.tagServer + "/api/aitag-tagcategory/detail/" + systemId,
-        method: 'get',
-        data: {},
+        url: backend.tagServer + "/api/aitag-tagcategory/detail",
+        method: 'POST',
+        data: {
+          id: systemId
+        },
         callback: (code, error, response) => {
           if (response.code == '0') {
             const data = response.data || {};
@@ -344,13 +349,15 @@ export default {
         const originalStatus = this.currentSystem.state;
 
         // 根据状态调用不同的接口
-        const url = backend.tagServer + (newStatus ? "/api/aitag-tagcategory/enable?id=" + this.currentSystem.id : "/api/aitag-tagcategory/disable?id=" + this.currentSystem.id);
+        const url = backend.tagServer + (newStatus ? "/api/aitag-tagcategory/enable" : "/api/aitag-tagcategory/disable");
 
         // 调用后端接口更新状态
         yufp.service.request({
           url: url,
           method: 'post',
-          data: {},
+          data: {
+            id: this.currentSystem.id
+          },
           callback: (code, error, response) => {
             if (response && response.code == '0') {
               // 接口调用成功,更新状态

+ 5 - 3
web/src/views/aiTagging/taggingSystemManage/components/TagConfig.vue

@@ -204,9 +204,11 @@ export default {
       
       // 调用后端接口获取标签详情
       yufp.service.request({
-        url: backend.tagServer + "/api/aitagtaginfo/info/" + tagId,
-        method: 'get',
-        data: {},
+        url: backend.tagServer + "/api/aitagtaginfo/info",
+        method: 'POST',
+        data: {
+          id: tagId
+        },
         callback: (code, error, response) => {
           if (response.code == '0') {
             const tagDetail = response.data || {};

+ 1 - 1
web/src/views/aiTagging/taggingSystemManage/components/TagTest.vue

@@ -197,7 +197,7 @@ export default {
       // 调用查询接口
       yufp.service.request({
         url: backend.tagServer + "/api/fastapi/query",
-        method: 'get',
+        method: 'POST',
         data: queryParams,
         callback: (code, error, response) => {
           if (response.code == '0') {

+ 11 - 12
web/src/views/aiTagging/taggingSystemManage/components/TagTree.vue

@@ -354,22 +354,21 @@ export default {
     // 下载模板
     handleDownloadTemplate() {
       console.log('开始下载模板...');
-      // 直接使用浏览器下载,避免AJAX请求处理文件流的问题
-      const downloadUrl = backend.tagServer + "/api/aitagtaginfo/downloadFile";
       
-      // 方法1:使用window.open(简单直接)
-      // window.open(downloadUrl, '_blank');
+      // 使用 form 提交方式触发 POST 请求下载文件
+      const form = document.createElement('form');
+      form.method = 'POST';
+      form.action = backend.tagServer + "/api/aitagtaginfo/downloadFile";
+      form.style.display = 'none';
+      document.body.appendChild(form);
       
-      // 方法2:使用隐藏的iframe(不会打开新窗口,体验更好)
-      const iframe = document.createElement('iframe');
-      iframe.style.display = 'none';
-      iframe.src = downloadUrl;
-      document.body.appendChild(iframe);
+      // 提交表单触发下载
+      form.submit();
       
-      // 延迟移除iframe
+      // 延迟移除 form
       setTimeout(() => {
-        document.body.removeChild(iframe);
-      }, 5000);
+        document.body.removeChild(form);
+      }, 1000);
       
       this.$message.success('模板下载中,请查看下载文件');
     },

+ 13 - 7
web/src/views/aiTagging/taggingSystemManage/index.vue

@@ -142,7 +142,7 @@ export default {
       yufp.service.request({
         // url: backend.tagServer + "/api/aitag-tagcategory/query",
         url: backend.tagServer + "/api/aitag-tagcategory/list",
-        method: 'get',
+        method: 'POST',
         data: {
           categoryNm: this.searchForm.categoryNm,
           page: this.currentPage,
@@ -254,9 +254,11 @@ export default {
         
         // 调用后端接口启用标签体系
         yufp.service.request({
-          url: backend.tagServer + "/api/aitag-tagcategory/enable?id=" + system.id,
+          url: backend.tagServer + "/api/aitag-tagcategory/enable",
           method: 'post',
-          data: {},
+          data: {
+            id: system.id
+          },
           callback: (code, error, response) => {
             if (response.code == '0') {
               this.$message.success(`启用标签体系: ${system.categoryNm}`)
@@ -284,9 +286,11 @@ export default {
         
         // 调用后端接口停用标签体系
         yufp.service.request({
-          url: backend.tagServer + "/api/aitag-tagcategory/disable?id=" + system.id,
+          url: backend.tagServer + "/api/aitag-tagcategory/disable",
           method: 'post',
-          data: {},
+          data: {
+            id: system.id
+          },
           callback: (code, error, response) => {
             if (response.code == '0') {
               this.$message.success(`停用标签体系: ${system.categoryNm}`)
@@ -318,9 +322,11 @@ export default {
         
         // 调用后端接口删除标签体系
         yufp.service.request({
-          url: backend.tagServer + "/api/aitag-tagcategory/delete?id=" + system.id,
+          url: backend.tagServer + "/api/aitag-tagcategory/delete",
           method: 'post',
-          data: {},
+          data: {
+            id: system.id
+          },
           callback: (code, error, response) => {
             if (response.code == '0') {
               this.$message.success(`删除标签体系: ${system.categoryNm}`)

+ 2 - 2
web/src/views/aiTagging/taggingTest/taggingApply.vue

@@ -159,7 +159,7 @@ export default {
     loadTagSystems() {
       yufp.service.request({
         url: backend.tagServer + "/api/aitag-tagcategory/enablelist",
-        method: 'get',
+        method: 'POST',
         data: {},
         callback: (code, error, response) => {
           if (response.code == '0') {
@@ -263,7 +263,7 @@ export default {
       // 调用查询接口
       yufp.service.request({
         url: backend.tagServer + "/api/fastapi/query",
-        method: 'get',
+        method: 'POST',
         data: queryParams,
         callback: (code, error, response) => {
           if (response.code == '0') {