Files
yunzerwebsiteallinone/backend/src/api/crm.js
T
2026-09-11 00:22:49 +08:00

93 lines
2.9 KiB
JavaScript

import request from "@/utils/request";
/**
* CRM 接口
*
* 说明:
* - 客户 / 供应商沿用已有 ERP 接口(数据模型 TenantCrmCustomer / TenantCrmSupplier,租户隔离);
* - 联系人沿用 /backend/crm/contact 系列接口(见 api/contact.js);
* - 客户公海为 CRM 新增能力,需后端提供 /backend/crm/pool 系列接口。
*/
/* --------------------------------- 客户 --------------------------------- */
export function getCrmCustomerList(params) {
return request({ url: "/backend/erp/customer/list", method: "get", params });
}
export function getCrmCustomerDetail(id) {
return request({ url: `/backend/erp/customer/${id}`, method: "get" });
}
export function createCrmCustomer(data) {
return request({ url: "/backend/erp/customer", method: "post", data });
}
export function updateCrmCustomer(id, data) {
return request({ url: `/backend/erp/customer/${id}`, method: "put", data });
}
export function deleteCrmCustomer(id) {
return request({ url: `/backend/erp/customer/${id}`, method: "delete" });
}
export function toggleCrmCustomerStatus(id, status) {
return request({
url: `/backend/erp/customer/${id}/status`,
method: "post",
data: { status },
});
}
/* -------------------------------- 供应商 -------------------------------- */
export function getCrmSupplierList(params) {
return request({ url: "/backend/erp/supplier/list", method: "get", params });
}
export function getCrmSupplierDetail(id) {
return request({ url: `/backend/erp/supplier/${id}`, method: "get" });
}
export function createCrmSupplier(data) {
return request({ url: "/backend/erp/supplier", method: "post", data });
}
export function updateCrmSupplier(id, data) {
return request({ url: `/backend/erp/supplier/${id}`, method: "put", data });
}
export function deleteCrmSupplier(id) {
return request({ url: `/backend/erp/supplier/${id}`, method: "delete" });
}
export function toggleCrmSupplierStatus(id, status) {
return request({
url: `/backend/erp/supplier/${id}/status`,
method: "post",
data: { status },
});
}
/* ------------------------------- 客户公海 ------------------------------- */
/** 公海列表:租户内共享,所有成员可见 */
export function getPoolList(params) {
return request({ url: "/backend/crm/pool/list", method: "get", params });
}
/** 领取客户:ids 客户ID集合,领取后负责人为当前登录用户 */
export function claimPoolCustomer(data) {
return request({ url: "/backend/crm/pool/claim", method: "post", data });
}
/** 分配客户:ids 客户ID集合,owner_user_id 负责人 */
export function assignPoolCustomer(data) {
return request({ url: "/backend/crm/pool/assign", method: "post", data });
}
/** 移入公海:ids 客户ID集合,reason 移入原因 */
export function moveToPool(data) {
return request({ url: "/backend/crm/pool/move", method: "post", data });
}