14
14
</el-form-item >
15
15
</el-col >
16
16
<el-col :span =" 12" >
17
- <el-form-item label =" 所属行业 " prop =" industryId " >
18
- <el-select v-model =" formData.industryId " placeholder =" 请选择所属行业 " >
17
+ <el-form-item label =" 客户来源 " prop =" source " >
18
+ <el-select v-model =" formData.source " placeholder =" 请选择客户来源 " class = " w-1/1 " >
19
19
<el-option
20
- v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_INDUSTRY )"
20
+ v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_SOURCE )"
21
21
:key =" dict.value"
22
22
:label =" dict.label"
23
23
:value =" dict.value"
28
28
</el-row >
29
29
<el-row >
30
30
<el-col :span =" 12" >
31
- <el-form-item label =" 客户来源" prop =" source" >
32
- <el-select v-model =" formData.source" placeholder =" 请选择客户来源" >
33
- <el-option
34
- v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_SOURCE)"
35
- :key =" dict.value"
36
- :label =" dict.label"
37
- :value =" dict.value"
38
- />
39
- </el-select >
31
+ <el-form-item label =" 手机" prop =" mobile" >
32
+ <el-input v-model =" formData.mobile" placeholder =" 请输入手机" />
40
33
</el-form-item >
41
34
</el-col >
42
35
<el-col :span =" 12" >
43
- <el-form-item label =" 客户级别" prop =" level" >
44
- <el-select v-model =" formData.level" placeholder =" 请选择客户级别" >
36
+ <el-form-item label =" 负责人" prop =" ownerUserId" >
37
+ <el-select
38
+ v-model =" formData.ownerUserId"
39
+ :disabled =" formType !== 'create'"
40
+ class =" w-1/1"
41
+ >
45
42
<el-option
46
- v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_LEVEL) "
47
- :key =" dict.value "
48
- :label =" dict.label "
49
- :value =" dict.value "
43
+ v-for =" item in userOptions "
44
+ :key =" item.id "
45
+ :label =" item.nickname "
46
+ :value =" item.id "
50
47
/>
51
48
</el-select >
52
49
</el-form-item >
53
50
</el-col >
54
51
</el-row >
55
52
<el-row >
56
53
<el-col :span =" 12" >
57
- <el-form-item label =" 手机 " prop =" mobile " >
58
- <el-input v-model =" formData.mobile " placeholder =" 请输入手机 " />
54
+ <el-form-item label =" 电话 " prop =" telephone " >
55
+ <el-input v-model =" formData.telephone " placeholder =" 请输入电话 " />
59
56
</el-form-item >
60
57
</el-col >
61
58
<el-col :span =" 12" >
62
- <el-form-item label =" 电话 " prop =" telephone " >
63
- <el-input v-model =" formData.telephone " placeholder =" 请输入电话 " />
59
+ <el-form-item label =" 邮箱 " prop =" email " >
60
+ <el-input v-model =" formData.email " placeholder =" 请输入邮箱 " />
64
61
</el-form-item >
65
62
</el-col >
66
63
</el-row >
67
64
<el-row >
68
65
<el-col :span =" 12" >
69
- <el-form-item label =" 邮箱 " prop =" email " >
70
- <el-input v-model =" formData.email " placeholder =" 请输入邮箱 " />
66
+ <el-form-item label =" 微信 " prop =" wechat " >
67
+ <el-input v-model =" formData.wechat " placeholder =" 请输入微信 " />
71
68
</el-form-item >
72
69
</el-col >
73
70
<el-col :span =" 12" >
74
71
<el-form-item label =" QQ" prop =" qq" >
75
- <el-input v-model =" formData.qq" placeholder =" 请输入QQ " />
72
+ <el-input v-model =" formData.qq" placeholder =" 请输入 QQ " />
76
73
</el-form-item >
77
74
</el-col >
78
75
</el-row >
79
76
<el-row >
80
77
<el-col :span =" 12" >
81
- <el-form-item label =" 微信" prop =" wechat" >
82
- <el-input v-model =" formData.wechat" placeholder =" 请输入微信" />
78
+ <el-form-item label =" 客户行业" prop =" industryId" >
79
+ <el-select v-model =" formData.industryId" placeholder =" 请选择客户行业" class =" w-1/1" >
80
+ <el-option
81
+ v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_INDUSTRY)"
82
+ :key =" dict.value"
83
+ :label =" dict.label"
84
+ :value =" dict.value"
85
+ />
86
+ </el-select >
83
87
</el-form-item >
84
88
</el-col >
85
89
<el-col :span =" 12" >
86
- <el-form-item label =" 网址" prop =" website" >
87
- <el-input v-model =" formData.website" placeholder =" 请输入网址" />
90
+ <el-form-item label =" 客户级别" prop =" level" >
91
+ <el-select v-model =" formData.level" placeholder =" 请选择客户级别" class =" w-1/1" >
92
+ <el-option
93
+ v-for =" dict in getIntDictOptions(DICT_TYPE.CRM_CUSTOMER_LEVEL)"
94
+ :key =" dict.value"
95
+ :label =" dict.label"
96
+ :value =" dict.value"
97
+ />
98
+ </el-select >
88
99
</el-form-item >
89
100
</el-col >
90
101
</el-row >
91
102
<el-row >
92
103
<el-col :span =" 12" >
93
- <el-form-item label =" 所在地 " prop =" areaId" >
104
+ <el-form-item label =" 地址 " prop =" areaId" >
94
105
<el-tree-select
95
106
v-model =" formData.areaId"
96
107
:data =" areaList"
97
108
:props =" defaultProps"
98
109
:render-after-expand =" true"
110
+ class =" w-1/1"
99
111
/>
100
112
</el-form-item >
101
113
</el-col >
105
117
</el-form-item >
106
118
</el-col >
107
119
</el-row >
108
- <el-form-item v-if =" formType === 'create'" label =" 负责人" prop =" userIds" span =" 24" >
109
- <el-select v-model =" formData.ownerUserId" >
110
- <el-option
111
- v-for =" item in userOptions"
112
- :key =" parseInt(item.id)"
113
- :label =" item.nickname"
114
- :value =" parseInt(item.id)"
115
- />
116
- </el-select >
117
- </el-form-item >
120
+ <!-- TODO 芋艿:待整理 -->
118
121
<el-row >
119
122
<el-col :span =" 12" >
120
123
<el-form-item label =" 下次联系时间" prop =" contactNextTime" >
126
129
/>
127
130
</el-form-item >
128
131
</el-col >
132
+ <el-col :span =" 12" >
133
+ <el-form-item label =" 备注" prop =" remark" >
134
+ <el-input type =" textarea" v-model =" formData.remark" placeholder =" 请输入备注" />
135
+ </el-form-item >
136
+ </el-col >
129
137
</el-row >
130
- <el-col :span =" 24" >
131
- <el-form-item label =" 客户描述" prop =" description" >
132
- <el-input v-model =" formData.description" placeholder =" 请输入客户描述" />
133
- </el-form-item >
134
- </el-col >
135
- <el-col :span =" 24" >
136
- <el-form-item label =" 备注" prop =" remark" >
137
- <el-input v-model =" formData.remark" placeholder =" 请输入备注" />
138
- </el-form-item >
139
- </el-col >
140
138
</el-form >
141
139
<template #footer >
142
140
<el-button :disabled =" formLoading" type =" primary" @click =" submitForm" >确 定</el-button >
@@ -150,7 +148,7 @@ import * as CustomerApi from '@/api/crm/customer'
150
148
import * as AreaApi from ' @/api/system/area'
151
149
import { defaultProps } from ' @/utils/tree'
152
150
import * as UserApi from ' @/api/system/user'
153
- import { CACHE_KEY , useCache } from ' @/hooks/web/useCache '
151
+ import { useUserStore } from ' @/store/modules/user '
154
152
155
153
const { t } = useI18n () // 国际化
156
154
const message = useMessage () // 消息弹窗
@@ -164,21 +162,19 @@ const userOptions = ref<UserApi.UserVO[]>([]) // 用户列表
164
162
const formData = ref ({
165
163
id: undefined ,
166
164
name: undefined ,
165
+ contactNextTime: undefined ,
166
+ ownerUserId: 0 ,
167
167
mobile: undefined ,
168
- industryId: undefined ,
169
- level: undefined ,
170
- source: undefined ,
171
168
telephone: undefined ,
172
- website: undefined ,
173
169
qq: undefined ,
174
170
wechat: undefined ,
175
171
email: undefined ,
176
- description: undefined ,
177
- remark: undefined ,
178
172
areaId: undefined ,
179
173
detailAddress: undefined ,
180
- contactNextTime: undefined ,
181
- ownerUserId: undefined
174
+ industryId: undefined ,
175
+ level: undefined ,
176
+ source: undefined ,
177
+ remark: undefined
182
178
})
183
179
const formRules = reactive ({
184
180
name: [{ required: true , message: ' 客户名称不能为空' , trigger: ' blur' }],
@@ -207,9 +203,7 @@ const open = async (type: string, id?: number) => {
207
203
userOptions .value = await UserApi .getSimpleUserList ()
208
204
// 默认新建时选中自己
209
205
if (formType .value === ' create' ) {
210
- const { wsCache } = useCache ()
211
- const user = wsCache .get (CACHE_KEY .USER ).user
212
- formData .value .ownerUserId = user .id
206
+ formData .value .ownerUserId = useUserStore ().getUser .id
213
207
}
214
208
}
215
209
defineExpose ({ open }) // 提供 open 方法,用于打开弹窗
@@ -245,21 +239,19 @@ const resetForm = () => {
245
239
formData .value = {
246
240
id: undefined ,
247
241
name: undefined ,
242
+ contactNextTime: undefined ,
243
+ ownerUserId: 0 ,
248
244
mobile: undefined ,
249
- industryId: undefined ,
250
- level: undefined ,
251
- source: undefined ,
252
245
telephone: undefined ,
253
- website: undefined ,
254
246
qq: undefined ,
255
247
wechat: undefined ,
256
248
email: undefined ,
257
- description: undefined ,
258
- remark: undefined ,
259
249
areaId: undefined ,
260
250
detailAddress: undefined ,
261
- contactNextTime: undefined ,
262
- ownerUserId: undefined
251
+ industryId: undefined ,
252
+ level: undefined ,
253
+ source: undefined ,
254
+ remark: undefined
263
255
}
264
256
formRef .value ?.resetFields ()
265
257
}
0 commit comments