diff --git a/.env.local b/.env.local
index 925808d83..35765584d 100644
--- a/.env.local
+++ b/.env.local
@@ -4,7 +4,7 @@ NODE_ENV=development
VITE_DEV=true
# 请求路径
-VITE_BASE_URL='http://172.22.3.6:48080'
+VITE_BASE_URL='http://localhost:48080'
# 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务
VITE_UPLOAD_TYPE=server
diff --git a/src/api/crm/customer-complaints/index.ts b/src/api/crm/customer-complaints/index.ts
new file mode 100644
index 000000000..bcbebc137
--- /dev/null
+++ b/src/api/crm/customer-complaints/index.ts
@@ -0,0 +1,39 @@
+import request from '@/config/axios'
+
+// 客户投诉 VO
+export interface CustomerComplaintsVO {
+ id:number //ID
+ customerId: number // 客户ID
+ complaintLevel: number // 投诉级别
+ complaintMethod: number // 投诉方式
+ complaintUserId: number // 投诉人ID
+ accusedComplaintUserId: number // 被投诉人ID
+ processingEfficiency: number // 处理时效:天
+ feedbackProblem: string // 事件描述
+ suggestion: string // 投诉附件
+ startUserSelectAssignees:object //发起人自选审批人 ,示例:{taskKey1:[1, 2],taskKey2:[1,2]}
+ processInstanceId:string //流程编号
+}
+
+// 客户投诉 API
+export const CustomerComplaintsApi = {
+ // 查询客户投诉分页
+ getCustomerComplaintsPage: async (params: any) => {
+ return await request.get({ url: `/crm/customer-complaints/page`, params })
+ },
+
+ // 查询客户投诉详情
+ getCustomerComplaints: async (id: number) => {
+ return await request.get({ url: `/crm/customer-complaints/get?id=` + id })
+ },
+
+ // 新增客户投诉
+ createCustomerComplaints: async (data: CustomerComplaintsVO) => {
+ return await request.post({ url: `/crm/customer-complaints/create`, data })
+ },
+
+ // 导出客户投诉 Excel
+ exportCustomerComplaints: async (params) => {
+ return await request.download({ url: `/crm/customer-complaints/export-excel`, params })
+ },
+}
diff --git a/src/components/UserSelectForm/index.vue b/src/components/UserSelectForm/index.vue
index 5ed99f86e..1c9e8bc9c 100644
--- a/src/components/UserSelectForm/index.vue
+++ b/src/components/UserSelectForm/index.vue
@@ -124,7 +124,7 @@ const filterUserList = async (deptId?: number) => {
/** 提交选择 */
const submitForm = async () => {
try {
- message.success(t('common.updateSuccess'))
+ // message.success(t('common.updateSuccess'))
dialogVisible.value = false
// 从所有用户列表中筛选出已选择的用户
const emitUserList = userList.value.filter((user: any) =>
diff --git a/src/router/modules/remaining.ts b/src/router/modules/remaining.ts
index 389094453..31c074ef7 100644
--- a/src/router/modules/remaining.ts
+++ b/src/router/modules/remaining.ts
@@ -634,6 +634,30 @@ const remainingRouter: AppRouteRecordRaw[] = [
title: '新增客户建议',
activeMenu: '/crm/customer-suggestion'
}
+ },
+ {
+ path: 'customer-complaints/detail',
+ component: () => import('@/views/crm/customer-complaints/detail.vue'),
+ name: 'CustomerComplaintsDetail',
+ meta: {
+ noCache: true,
+ hidden: true,
+ canTo: true,
+ title: '客户投诉详情',
+ activeMenu: '/crm/customer-complaints'
+ }
+ },
+ {
+ path: 'customer-complaints/create',
+ component: () => import('@/views/crm/customer-complaints/create.vue'),
+ name: 'CustomerComplaintsCreate',
+ meta: {
+ noCache: true,
+ hidden: true,
+ canTo: true,
+ title: '新增客户投诉',
+ activeMenu: '/crm/customer-complaints'
+ }
}
]
},
diff --git a/src/utils/dict.ts b/src/utils/dict.ts
index a2d9b8ae7..35c95077b 100644
--- a/src/utils/dict.ts
+++ b/src/utils/dict.ts
@@ -223,6 +223,9 @@ export enum DICT_TYPE {
CRM_COOPERATION_AREA = "crm_cooperation_area", //CRM 合作地区
CRM_CUSTOMER_STSTUS = "crm_customer_status", //CRM 客户状态
CRM_RETURN_VISIT_STSTUS = "crm_return_visit_type", //CRM 回访类型
+ CRM_COMPLAINT_METHOD = "crm_complaint_method", // 投诉方式
+ CRM_COMPLAINT_LEVEL = "crm_complaint_level", // 投诉级别
+
// ========== ERP - 企业资源计划模块 ==========
ERP_AUDIT_STATUS = 'erp_audit_status', // ERP 审批状态
diff --git a/src/views/crm/customer-complaints/create.vue b/src/views/crm/customer-complaints/create.vue
new file mode 100644
index 000000000..c9508ec48
--- /dev/null
+++ b/src/views/crm/customer-complaints/create.vue
@@ -0,0 +1,287 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 确 定
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/crm/customer-complaints/detail.vue b/src/views/crm/customer-complaints/detail.vue
new file mode 100644
index 000000000..b4c6b3430
--- /dev/null
+++ b/src/views/crm/customer-complaints/detail.vue
@@ -0,0 +1,115 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ detailData.customerName }}
+
+
+
+ {{ detailData.feedbackProblem}}
+
+
+
+
+
+
+
+ 附件{{ index + 1 }}
+
+ ,
+
+
+
+
+
+ {{ detailData.complaintUserName }}
+
+
+
+ {{ detailData.complaintDeptName }}
+
+
+
+ {{ detailData.accusedComplaintUserName }}
+
+
+
+ {{ detailData.accusedComplaintDeptName }}
+
+
+
+
+ {{ detailData.processingEfficiency}}天
+
+
+
+ {{ detailData.creatorName}}
+
+
+
+ {{ formatDate(detailData.createTime, 'YYYY-MM-DD HH:mm:ss') }}
+
+
+
+ {{ detailData.id }}
+
+
+
+ {{ detailData.processInstanceId}}
+
+
+
+
+
+
diff --git a/src/views/crm/customer-complaints/index.vue b/src/views/crm/customer-complaints/index.vue
new file mode 100644
index 000000000..188449226
--- /dev/null
+++ b/src/views/crm/customer-complaints/index.vue
@@ -0,0 +1,355 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 详情
+
+
+ 进度
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/crm/customer-suggestion/detail.vue b/src/views/crm/customer-suggestion/detail.vue
index 70d3effa5..33ede8507 100644
--- a/src/views/crm/customer-suggestion/detail.vue
+++ b/src/views/crm/customer-suggestion/detail.vue
@@ -6,11 +6,6 @@
-
- {{ detailData.id }}
-
-
-
{{ detailData.customerName }}
@@ -25,51 +20,30 @@
-
+
{{ detailData.feedbackUserName }}
-
-
-
+
{{ detailData.feedbackDeptName }}
-
- {{ detailData.processInstanceId }}
-
-
-
-
-
+
{{ detailData.creatorName }}
-
-
{{ formatDate(detailData.createTime, 'YYYY-MM-DD HH:mm:ss') }}
-
-
diff --git a/src/views/crm/customer-suggestion/index.vue b/src/views/crm/customer-suggestion/index.vue
index 33d9167f2..9168750d7 100644
--- a/src/views/crm/customer-suggestion/index.vue
+++ b/src/views/crm/customer-suggestion/index.vue
@@ -125,18 +125,17 @@
-
-
-
-
-
-
-
+
+
+
+
-
+
+
+
-
+
+
+