Эх сурвалжийг харах

chore: 路由/侧边栏审核中心清理+review组件优化

Xiaogang Liao 2 сар өмнө
parent
commit
7dea548a68

+ 1 - 1
cfc-web/.last_build_commit

@@ -1 +1 @@
-d86298057ce7ad3225586aec9d518eddf88a95d7
+06e127aeaa3b1cbe86b15da0a6141bc958441d2d

+ 1 - 1
cfc-web/package.json

@@ -1,6 +1,6 @@
 {
   "name": "cfc-web",
-  "version": "1.0.351",
+  "version": "1.0.350",
   "private": true,
   "scripts": {
     "dev": "vue-cli-service serve",

+ 3 - 9
cfc-web/public/CHANGELOG-v1.0.md

@@ -4,17 +4,11 @@
 
 ---
 
-## v1.0.351 (2026-07-15)
-
-### 文档
-- update ISSUE-TRACKING v16 with remote sync analysis and pending test plan
-
-### 测试
-- add admin-butler-review and family-earnings-flow E2E tests + update dan-report-flow for DAN cognitive/EMI dimensions
-
-
 ## v1.0.350 (2026-07-15)
 
+### 新功能
+- 健康打卡 exercise/sleep/water 三个控制器; fix(web): growth-task路径修正
+
 ### Bug 修复
 - 修正管理端4个API路径+2个分页兼容
 

+ 4 - 10
cfc-web/public/CHANGELOG.md

@@ -1,6 +1,6 @@
 # 更新日志
 
-> 当前版本: v1.0.351
+> 当前版本: v1.0.350
 
 ## 历史版本
 
@@ -8,17 +8,11 @@
 
 ---
 
-## v1.0.351 (2026-07-15)
-
-### 文档
-- update ISSUE-TRACKING v16 with remote sync analysis and pending test plan
-
-### 测试
-- add admin-butler-review and family-earnings-flow E2E tests + update dan-report-flow for DAN cognitive/EMI dimensions
-
-
 ## v1.0.350 (2026-07-15)
 
+### 新功能
+- 健康打卡 exercise/sleep/water 三个控制器; fix(web): growth-task路径修正
+
 ### Bug 修复
 - 修正管理端4个API路径+2个分页兼容
 

+ 0 - 24
cfc-web/src/router/index.js

@@ -155,18 +155,6 @@ const routes = [
         component: () => import('@/views/Users.vue'),
         meta: { title: '用户管理', perm: 'system:users' }
       },
-      {
-        path: 'package-audit',
-        name: 'PackageAudit',
-        component: () => import('@/views/PackageAudit.vue'),
-        meta: { title: '套餐审核', perm: 'audit:package' }
-      },
-      {
-        path: 'guide-audit',
-        name: 'GuideAudit',
-        component: () => import('@/views/GuideAudit.vue'),
-        meta: { title: '成长规划师审核', perm: 'audit:guide' }
-      },
       {
         path: 'review-center',
         name: 'ReviewCenter',
@@ -198,18 +186,6 @@ const routes = [
         component: () => import('@/views/admin/Assessment.vue'),
         meta: { title: '测评管理', perm: 'assessment:dan' }
       },
-      {
-        path: 'vendor-review',
-        name: 'VendorReview',
-        component: () => import('@/views/admin/VendorReview.vue'),
-        meta: { title: '服务商审核', perm: 'audit:vendor' }
-      },
-      {
-        path: 'butler-review',
-        name: 'ButlerReview',
-        component: () => import('@/views/admin/ButlerReview.vue'),
-        meta: { title: '管家审核', perm: 'audit:vendor' }
-      },
       {
         path: 'product-manage',
         name: 'ProductManage',

+ 2 - 9
cfc-web/src/views/Layout.vue

@@ -179,15 +179,8 @@ export default {
           ]},
 
         // ===== 4. 审核中心 (admin) =====
-        { title: '审核中心', icon: 'el-icon-s-check', perm: 'audit',
-          children: [
-            { path: '/review-center', label: '审核中心(新版)', icon: 'el-icon-s-check', perm: 'audit' },
-            { path: '/package-audit', label: '套餐审核', icon: 'el-icon-document-checked', perm: 'audit:package' },
-            { path: '/guide-audit', label: '规划师审核', icon: 'el-icon-document-checked', perm: 'audit:guide' },
-            { path: '/vendor-review', label: '服务商审核', icon: 'el-icon-document-checked', perm: 'audit:vendor' },
-            { path: '/butler-review', label: '管家审核', icon: 'el-icon-document-checked', perm: 'audit:vendor' },
-            { path: '/withdraw-audit', label: '提现审核', icon: 'el-icon-document-checked', perm: 'audit:withdraw' },
-          ]},
+        { path: '/review-center', label: '审核中心', icon: 'el-icon-s-check', perm: 'audit' },
+
 
         // ===== 5. 商城营销 (admin) =====
         { title: '商城营销', icon: 'el-icon-s-goods', perm: 'commerce',

+ 15 - 4
cfc-web/src/views/admin/review/GuideAudit.vue

@@ -55,16 +55,27 @@ export default {
     statusType(s) { return { pending: 'warning', approved: 'success', rejected: 'danger' }[s] || 'info' },
     statusLabel(s) { return { pending: '待审核', approved: '已通过', rejected: '已拒绝' }[s] || s },
     handleSearch() { this.loadData() },
-    async loadData() {
+async loadData() {
       this.loading = true
       try {
         const res = await getGuideApplications({
           status: this.statusFilter || undefined,
           keyword: this.keyword || undefined, page: 1, size: 50
         })
-        this.list = res.data && res.data.records || res.data && res.data.list || res.data || []
-      } catch (e) { this.$message.error('加载失败')
-      } finally { this.loading = false }
+        // 后端返回 Page<User> 结构:{ records, total, page, size }
+        if (res.data && res.data.records) {
+          this.list = res.data.records
+        } else if (res.data && Array.isArray(res.data)) {
+          this.list = res.data
+        } else {
+          this.list = []
+        }
+      } catch (e) {
+        console.error(e)
+        this.$message.error('加载失败')
+      } finally {
+        this.loading = false
+      }
     },
     async handleApprove(row) {
       try {

+ 3 - 3
cfc-web/src/views/admin/review/HierarchyAudit.vue

@@ -58,14 +58,14 @@ export default {
     async loadData() {
       this.loading = true
       try {
-        const res = await request({ url: '/api/admin/supply-hierarchy/change/list', method: 'post', data: { status: this.statusFilter || undefined } })
-        this.list = res.data || []
+        const res = await request({ url: '/api/admin/supply-hierarchy/change-requests', method: 'post', data: { status: this.statusFilter || undefined } })
+        this.list = res.data && res.data.records || res.data || []
       } catch (e) { this.$message.error('加载失败')
       } finally { this.loading = false }
     },
     async handleReview(row, status) {
       try {
-        await reviewSupplyHierarchyChange({ id: row.id, status, rejectReason: status === 'rejected' ? this.rejectReason : '' })
+        await reviewSupplyHierarchyChange({ requestId: row.id, status, rejectReason: status === 'rejected' ? this.rejectReason : '' })
         this.$message.success('审核完成')
         this.rejectDialogVisible = false
         this.loadData()

+ 1 - 1
cfc-web/src/views/admin/review/WithdrawAudit.vue

@@ -66,7 +66,7 @@ export default {
       this.loading = true
       try {
         const res = await getWithdrawalList({ status: this.statusFilter, keyword: this.keyword || undefined })
-        this.list = res.data || []
+        this.list = res.data && res.data.records || res.data || []
       } catch (e) { this.$message.error('加载失败')
       } finally { this.loading = false }
     },