Просмотр исходного кода

fix: 添加 dify.callback-secret 配置 + 管理端多页面优化

- cfc-backend/config/application.yml: 添加 dify.callback-secret 用于 Dify Workflow 回调认证
- cfc-web: 多个管理页面样式和功能优化(ArticleCategory, BaziConfigs, CouponManagement, KnowledgeTag, PackageTemplates, RelationshipTypes, VirtualTeamList, ZodiacConfigs, data-source-config, dimension-config, dimension/index)
- 版本号自动更新
Xiaogang Liao 3 месяцев назад
Родитель
Сommit
36807e5506

+ 1 - 0
cfc-backend/config/application.yml

@@ -61,6 +61,7 @@ dify:
   api-key: app-rtNSAHG2NFzRsXCGkeZlVNR9
   nutrition-api-key: app-OnHzTiI6EULUfLyceCDqJkQu
   tongue-api-key: ""
+  callback-secret: dify-callback-secret
 
 # 运营配置
 admin:

+ 1 - 1
cfc-web/.last_build_commit

@@ -1 +1 @@
-23ee60bdb319d452cc65a2b6acec55bed9d795e8
+8672697d59c1b990385659a051a4a8e5f46dc7cb

+ 1 - 1
cfc-web/package.json

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

+ 55 - 0
cfc-web/public/CHANGELOG.md

@@ -1,6 +1,61 @@
 # 更新日志 (Changelog)
 
 此文件记录所有构建版本的变更。
+## v1.0.268 (2026-07-13)
+
+### 新功能
+- CartService.buildCartItemDTO builds specDesc from ProductSku.specs JSON when skuId is present
+- 五行能量配置管理
+- 增强五行雷达图可视化
+- 管理端功能优化
+- 五行相生相克前端展示
+- AI对话记忆层 - 会话摘要+关键事实+意图感知上下文注入
+- productSpecMap API + Ppoint API 重构 + 供应商管理员搜索修复
+- products/cart 表新增 SKU 规格字段
+- admin/user/search 供应商选管理员接口 + 修复 CircleService 循环依赖
+
+### 其他
+- - WuxingConfig.vue: 能量来源比例配置+每日限制概览
+- - 路由注册 /admin/energy-config
+- 
+- - 数据驱动多边形填充(familyWuxing.aggregatePercentages)
+- - 百分比标签 + 数据节点圆点
+- - 中心显示家庭名+最强/最弱元素
+- 
+- - ProductOrderService: SKU价格计算
+- - Form.vue: 标签更新
+- 
+- 
+- - 心理维度子项卡片(仅儿童用户显示)
+- - 11个新data字段 + 13个CSS状态变体
+- - loadWealthDetail读取API新字段
+- 
+- - 新增映射器: AiConversationSummaryMapper, AiUserFactMapper
+- - 新增AiContextService: 7意图路由
+- - AIService: enrichInputsWithMemory, getContext, requestSummaryAsync
+- - AIChatController: getContext()端点 + sendMessage注入记忆
+- - DatabaseInitializer: runMigration81内建表
+- - schema.sql: 同步两张新表定义
+- - WebConfig: /api/ai/context加入JWT白名单
+- - chat.vue: 简化传参(移除reportId/surveyId)
+- 
+- - admin.js: Ppoint API 重命名 (getProductPpointList/saveProductPpoint/deleteProductPpoint/byProduct)
+- - supply-system/Form.vue: searchUsers 改用 API 函数
+- 
+- - products.sku_spec_names: 规格维度名 JSON
+- - products.delivery_methods: 配送方式支持
+- - cart.sku_id: 选中 SKU ID
+- - cart.spec_option_ids: 规格选项 ID 列表 JSON
+- 
+- - CircleService: 添加 @Lazy 注解打破 CircleService ↔ CircleMatchService 循环依赖
+- - cfc-web: 新增 ProductPpointManage 积分管理页面,完善供应商体系表单
+- - cfc-frontend: product-detail 页面更新
+- 
+
+### Bug 修复
+- 修复DatabaseInitializer编译错误
+
+
 ## v1.0.267 (2026-07-13)
 
 ### Bug 修复

+ 24 - 2
cfc-web/src/views/admin/ArticleCategory.vue

@@ -68,6 +68,17 @@
         <el-button type="primary" @click="handleSubmit" :loading="submitting">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -87,6 +98,7 @@ export default {
       submitting: false,
       categories: [],
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       keyword: '',
       form: {
@@ -162,8 +174,7 @@ export default {
           await adminArticleCategoryCreate(data)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error(e.message || '保存失败')
       } finally {
@@ -191,6 +202,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = { id: null, name: '', icon: '', color: '', sortOrder: 0, statusBool: true }
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 24 - 2
cfc-web/src/views/admin/BaziConfigs.vue

@@ -86,6 +86,17 @@
         <el-button type="primary" @click="handleSubmit">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -99,6 +110,7 @@ export default {
       configs: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.getEmptyForm()
     }
@@ -168,8 +180,7 @@ export default {
           await createBaziConfig(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }
@@ -180,6 +191,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.getEmptyForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 2 - 2
cfc-web/src/views/admin/BloodTypeConfigs.vue

@@ -77,6 +77,7 @@ export default {
       configs: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.getEmptyForm()
     }
@@ -144,8 +145,7 @@ export default {
           await createBloodTypeConfig(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }

+ 24 - 2
cfc-web/src/views/admin/CouponManagement.vue

@@ -108,6 +108,17 @@
       </div>
     </el-dialog>
 
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
+
     <el-dialog title="批量发放优惠券" :visible.sync="batchDialogVisible" width="500px">
       <el-form label-width="120px">
         <el-form-item label="选择优惠券" required>
@@ -140,6 +151,7 @@ export default {
       size: 20,
       total: 0,
       formDialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       submitting: false,
       form: this.getEmptyForm(),
@@ -248,8 +260,7 @@ export default {
           await createCoupon(payload)
         }
         this.$message.success('保存成功')
-        this.formDialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       } finally {
@@ -295,6 +306,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.getEmptyForm()
+      this.formDialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.formDialogVisible = false
+      this.loadData()
     }
   }
 }

+ 2 - 2
cfc-web/src/views/admin/EducationSystems.vue

@@ -70,6 +70,7 @@ export default {
       systems: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: {
         id: null,
@@ -130,8 +131,7 @@ export default {
           await createEducationSystem(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }

+ 24 - 2
cfc-web/src/views/admin/KnowledgeTag.vue

@@ -52,6 +52,17 @@
         <el-button type="primary" @click="handleSubmit" :loading="submitting">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -67,6 +78,7 @@ export default {
       tags: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: {
         id: null,
@@ -118,8 +130,7 @@ export default {
       try {
         await saveTag(this.form)
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error(e.message || '保存失败')
       } finally {
@@ -147,6 +158,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = { id: null, tagName: '', tagType: 'general' }
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 21 - 2
cfc-web/src/views/admin/PackageTemplates.vue

@@ -198,13 +198,32 @@ export default {
         this.$message.error('保存失败')
       }
     },
-    handleActionCmd(row, cmd) {
+      handleActionCmd(row, cmd) {
       switch (cmd) {
         case 'viewServices': this.handleViewServices(row); break
         case 'toggleStatus': this.toggleStatus(row); break
       }
     },
-    handleSearch() {}
+    handleSearch() {},
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = {
+        id: null,
+        name: '',
+        validityMonths: 12,
+        referencePrice: 0,
+        minPrice: 0,
+        description: '',
+        status: 'ACTIVE'
+      }
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
+    }
   }
 }
 </script>

+ 24 - 2
cfc-web/src/views/admin/RelationshipTypes.vue

@@ -70,6 +70,17 @@
         <el-button type="primary" @click="handleSubmit">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -82,6 +93,7 @@ export default {
     return {
       types: [],
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.getEmptyForm(),
       keyword: ''
@@ -147,8 +159,7 @@ export default {
       try {
         await saveRelationshipType(this.form)
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }
@@ -159,6 +170,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.getEmptyForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 1 - 2
cfc-web/src/views/admin/ServiceContents.vue

@@ -241,8 +241,7 @@ export default {
           await createServiceContent(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }

+ 2 - 2
cfc-web/src/views/admin/ServiceTypes.vue

@@ -74,6 +74,7 @@ export default {
     return {
       types: [],
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: {
         id: null,
@@ -138,8 +139,7 @@ export default {
           await createServiceType(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }

+ 27 - 2
cfc-web/src/views/admin/VirtualTeamList.vue

@@ -87,6 +87,17 @@
         <el-button type="primary" :loading="submitting" @click="handleSubmit">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -109,6 +120,7 @@ export default {
       currentPage: 1,
       pageSize: 15,
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.getEmptyForm(),
       formRules: {
@@ -203,13 +215,26 @@ export default {
           await createVirtualTeam(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       } finally {
         this.submitting = false
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.getEmptyForm()
+      this.dialogVisible = true
+      this.$nextTick(function() {
+        if (this.$refs.teamForm) this.$refs.teamForm.clearValidate()
+      }.bind(this))
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 24 - 2
cfc-web/src/views/admin/ZodiacConfigs.vue

@@ -83,6 +83,17 @@
         <el-button type="primary" @click="handleSubmit">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -96,6 +107,7 @@ export default {
       configs: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.getEmptyForm()
     }
@@ -168,8 +180,7 @@ export default {
           await createZodiacConfig(this.form)
         }
         this.$message.success('保存成功')
-        this.dialogVisible = false
-        this.loadData()
+        this.successDialogVisible = true
       } catch (e) {
         this.$message.error('保存失败')
       }
@@ -180,6 +191,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.getEmptyForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.loadData()
     }
   }
 }

+ 24 - 2
cfc-web/src/views/admin/data-source-config.vue

@@ -90,6 +90,17 @@
         <el-button type="primary" @click="handleSubmit" :loading="submitting">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -105,6 +116,7 @@ export default {
       page: 1,
       size: 20,
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.emptyForm(),
       keyword: ''
@@ -157,9 +169,8 @@ export default {
       this.submitting = true
       this.$axios.post('/api/admin/dimension/data-source/save', this.form).then(res => {
         if (res.data.code === 200) {
-          this.dialogVisible = false
-          this.fetchRecords()
           this.$message.success('保存成功')
+          this.successDialogVisible = true
         } else {
           this.$message.error(res.data.message || '保存失败')
         }
@@ -183,6 +194,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.emptyForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.fetchRecords()
     }
   }
 }

+ 24 - 2
cfc-web/src/views/admin/dimension-config.vue

@@ -116,6 +116,17 @@
         <el-button type="primary" @click="handleSubmit" :loading="submitting">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -129,6 +140,7 @@ export default {
       norms: [],
       keyword: '',
       dialogVisible: false,
+      successDialogVisible: false,
       isEdit: false,
       form: this.emptyForm()
     }
@@ -191,9 +203,8 @@ export default {
       this.submitting = true
       this.$axios.post('/api/admin/dimension/norm/save', this.form).then(res => {
         if (res.data.code === 200) {
-          this.dialogVisible = false
-          this.fetchNorms()
           this.$message.success('保存成功')
+          this.successDialogVisible = true
         } else {
           this.$message.error(res.data.message || '保存失败')
         }
@@ -217,6 +228,17 @@ export default {
           this.handleDelete(row)
           break
       }
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.emptyForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.fetchNorms()
     }
   }
 }

+ 24 - 2
cfc-web/src/views/admin/dimension/index.vue

@@ -77,6 +77,17 @@
         <el-button type="primary" :loading="submitting" @click="handleSubmit">保存</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color:#67C23A;font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color:#303133">保存成功</p>
+      </div>
+      <div slot="footer">
+        <el-button type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">关闭</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -92,6 +103,7 @@ export default {
     return {
       loading: false,
       dialogVisible: false,
+      successDialogVisible: false,
       submitting: false,
       isEdit: false,
       form: this.initForm(),
@@ -168,8 +180,7 @@ export default {
         const res = await saveDimension(this.form)
         if (res.code === 200) {
           this.$message.success('保存成功')
-          this.dialogVisible = false
-          await this.fetchList()
+          this.successDialogVisible = true
         } else {
           this.$message.error(res.message || '保存失败')
         }
@@ -187,6 +198,17 @@ export default {
           this.$message.error(res.message || '删除失败')
         }
       }).catch(() => {})
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.isEdit = false
+      this.form = this.initForm()
+      this.dialogVisible = true
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.dialogVisible = false
+      this.fetchList()
     }
   }
 }

+ 3 - 2
cfc-web/src/views/admin/supply-manage/Form.vue

@@ -68,7 +68,8 @@ export default {
           { required: true, message: '请输入昵称', trigger: 'blur' }
         ]
       },
-      saving: false
+      saving: false,
+      successDialogVisible: false
     }
   },
   computed: {
@@ -110,7 +111,7 @@ export default {
             await createSupplyManage(this.form)
           }
           this.$message.success(this.isEdit ? '保存成功' : '创建成功')
-          this.$router.push('/supply-manage')
+          this.successDialogVisible = true
         } catch (e) {
           this.$message.error('操作失败')
         } finally {

+ 2 - 1
cfc-web/src/views/admin/supply-system/Form.vue

@@ -75,6 +75,7 @@ export default {
         platformProfitRate: [{ required: true, message: '请输入平台留利比例', trigger: 'blur' }]
       },
       saving: false,
+      successDialogVisible: false,
       userOptions: [],
       searchingUser: false
     }
@@ -132,7 +133,7 @@ export default {
             await createSupplySystem(this.form)
           }
           this.$message.success(this.isEdit ? '保存成功' : '创建成功')
-          this.$router.push('/supply-system')
+          this.successDialogVisible = true
         } catch (e) {
           this.$message.error('操作失败')
         } finally {