From 5364df097b23cce139befd7bf1f709030440603c Mon Sep 17 00:00:00 2001
From: liyongde <1419499670@qq.com>
Date: Wed, 18 Mar 2026 17:06:08 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E9=A1=B9=E7=9B=AE=E4=BF=A1=E6=81=AF?=
=?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
back/application/api/controller/User.php | 6 +-
front/src/api/supplier.js | 9 +
.../src/views/supplier-mgr/suppliersearch.vue | 184 +++++++++++++++++-
3 files changed, 193 insertions(+), 6 deletions(-)
diff --git a/back/application/api/controller/User.php b/back/application/api/controller/User.php
index 426b47a..2a4bc24 100644
--- a/back/application/api/controller/User.php
+++ b/back/application/api/controller/User.php
@@ -321,7 +321,7 @@ class User extends Common
$ret['company'] = "上海诺力智能科技有限公司";
}
$ret['id'] = $login_id;
- $ret['name'] = $res['user_name'];
+ // $ret['name'] = $res['user_name'];
}
//客户
if (2 == $res['user_type'])
@@ -333,9 +333,9 @@ class User extends Common
->field('i.contacts_name as name, i.contacts_idcard as idcard, c.company_name as company')
->find();
$ret['id'] = $login_id;
- $ret['name'] = $res['user_name'];
+ // $ret['name'] = $res['user_name'];
}
-
+ $ret['name'] = $res['user_name'];
}
return $ret;
diff --git a/front/src/api/supplier.js b/front/src/api/supplier.js
index 20ba988..1137dc2 100644
--- a/front/src/api/supplier.js
+++ b/front/src/api/supplier.js
@@ -56,4 +56,13 @@ export default {
data: param
})
},
+
+ // 获取供应商详细信息
+ GetPartnerInfo(param) {
+ return request({
+ url: `/Partner/GetPartnerInfo`,
+ method: 'post',
+ data: param
+ })
+ }
}
diff --git a/front/src/views/supplier-mgr/suppliersearch.vue b/front/src/views/supplier-mgr/suppliersearch.vue
index b8c8afb..e6faca1 100644
--- a/front/src/views/supplier-mgr/suppliersearch.vue
+++ b/front/src/views/supplier-mgr/suppliersearch.vue
@@ -45,7 +45,13 @@
+ min-width="200">
+
+
+ {{ scope.row.company_name }}
+
+
+
{{ scope.row.company_url || '-' }}
@@ -91,6 +97,107 @@
+
+
+
+
+
+
+
+ 公司联系人
+
+
+
+
+
+
+
+
+
+ 暂无数据
+
+
+
+
+
+
+
+ 合作项目
+
+
+
+
+
+
+
+
+ 销售
+ 采购
+
+
+
+
+
+ 编辑
+ 删除
+
+
+
+ 暂无数据
+
+
+
+
+
@@ -108,7 +215,15 @@ export default {
// 分页相关
currentPage: 1,
pageSize: 20,
- total: 0
+ total: 0,
+ // 弹窗相关
+ dialogVisible: false,
+ dialogLoading: false,
+ currentPartner: {},
+ partnerDetail: {
+ contacts: [],
+ projects: []
+ }
}
},
mounted() {
@@ -170,6 +285,69 @@ export default {
} finally {
this.loading = false
}
+ },
+ // 显示供应商详情
+ async showPartnerDetail(row) {
+ this.currentPartner = row
+ this.dialogVisible = true
+ this.dialogLoading = true
+
+ try {
+ const params = {
+ company_id: row.company_id,
+ partner_type: 2 // 2表示供应商,1表示客户
+ }
+
+ const response = await supplierApi.GetPartnerInfo(params)
+ const apiResponse = response.data || response
+
+ if (apiResponse.code === 20000) {
+ const data = apiResponse.data || {}
+ this.partnerDetail = {
+ contacts: Array.isArray(data.contacts) ? data.contacts : [],
+ projects: Array.isArray(data.projects) ? data.projects : []
+ }
+ } else {
+ this.$message.error(apiResponse.msg || '获取供应商详情失败')
+ this.partnerDetail = {
+ contacts: [],
+ projects: []
+ }
+ }
+ } catch (error) {
+ console.error('获取供应商详情失败:', error)
+ this.$message.error('获取详情失败,请稍后重试')
+ this.partnerDetail = {
+ contacts: [],
+ projects: []
+ }
+ } finally {
+ this.dialogLoading = false
+ }
+ },
+ // 添加联系人
+ addContact() {
+ this.$message.info('添加联系人功能待实现')
+ },
+ // 编辑联系人
+ editContact(row) {
+ this.$message.info('编辑联系人功能待实现')
+ },
+ // 删除联系人
+ deleteContact(row) {
+ this.$message.info('删除联系人功能待实现')
+ },
+ // 添加项目
+ addProject() {
+ this.$message.info('添加项目功能待实现')
+ },
+ // 编辑项目
+ editProject(row) {
+ this.$message.info('编辑项目功能待实现')
+ },
+ // 删除项目
+ deleteProject(row) {
+ this.$message.info('删除项目功能待实现')
}
}
}