1
1
<template >
2
2
<Dialog :title =" dialogTitle" v-model =" dialogVisible" :width =" 820" >
3
- <el-form ref =" formRef" :model =" formData" :rules =" formRules" label-width =" 110px" v-loading =" formLoading" >
3
+ <el-form
4
+ ref =" formRef"
5
+ :model =" formData"
6
+ :rules =" formRules"
7
+ label-width =" 110px"
8
+ v-loading =" formLoading"
9
+ >
4
10
<el-row :gutter =" 20" >
5
11
<el-col :span =" 12" >
6
12
<el-form-item label =" 姓名" prop =" name" >
9
15
</el-col >
10
16
<el-col :span =" 12" >
11
17
<el-form-item label =" 负责人" prop =" ownerUserId" >
12
- <el-select v-model =" formData.ownerUserId" placeholder =" 请选择负责人" value-key =" id" lable-key =" nickname" >
13
- <el-option v-for =" item in userList" :key =" item.id" :label =" item.nickname" :value =" item.id" />
18
+ <el-select
19
+ v-model =" formData.ownerUserId"
20
+ placeholder =" 请选择负责人"
21
+ value-key =" id"
22
+ lable-key =" nickname"
23
+ >
24
+ <el-option
25
+ v-for =" item in userList"
26
+ :key =" item.id"
27
+ :label =" item.nickname"
28
+ :value =" item.id"
29
+ />
14
30
</el-select >
15
31
</el-form-item >
16
32
</el-col >
17
33
</el-row >
18
34
<el-row >
19
35
<el-col :span =" 12" >
20
36
<el-form-item label =" 客户名称" prop =" customerName" >
21
- <el-select v-model =" formData.customerId" placeholder =" 请选择客户" value-key =" id" lable-key =" name" >
22
- <el-option v-for =" item in customerList" :key =" item.id" :label =" item.name" :value =" item.id" />
37
+ <el-select
38
+ v-model =" formData.customerId"
39
+ placeholder =" 请选择客户"
40
+ value-key =" id"
41
+ lable-key =" name"
42
+ >
43
+ <el-option
44
+ v-for =" item in customerList"
45
+ :key =" item.id"
46
+ :label =" item.name"
47
+ :value =" item.id"
48
+ />
23
49
</el-select >
24
50
</el-form-item >
25
51
</el-col >
26
- <el-col :span =" 12" ><el-form-item label =" 性别" prop =" sex" >
52
+ <el-col :span =" 12"
53
+ ><el-form-item label =" 性别" prop =" sex" >
27
54
<el-select v-model =" formData.sex" placeholder =" 请选择" >
28
55
<el-option
29
- v-for =" dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" :key =" dict.value"
30
- :label =" dict.label" :value =" dict.value" />
31
- </el-select >
32
- </el-form-item ></el-col >
56
+ v-for =" dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)"
57
+ :key =" dict.value"
58
+ :label =" dict.label"
59
+ :value =" dict.value"
60
+ />
61
+ </el-select > </el-form-item
62
+ ></el-col >
33
63
</el-row >
34
64
<el-row >
35
65
<el-col :span =" 12" >
36
66
<el-form-item label =" 手机号" prop =" mobile" >
37
- <el-input input-style =" width:190px;" v-model =" formData.mobile" placeholder =" 请输入手机号" />
67
+ <el-input
68
+ input-style =" width:190px;"
69
+ v-model =" formData.mobile"
70
+ placeholder =" 请输入手机号"
71
+ />
38
72
</el-form-item >
39
73
</el-col >
40
74
<el-col :span =" 12" >
@@ -46,7 +80,11 @@ v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" :key="dict.value"
46
80
<el-row >
47
81
<el-col :span =" 12" >
48
82
<el-form-item label =" 邮箱" prop =" email" >
49
- <el-input input-style =" width:190px;" v-model =" formData.email" placeholder =" 请输入邮箱" />
83
+ <el-input
84
+ input-style =" width:190px;"
85
+ v-model =" formData.email"
86
+ placeholder =" 请输入邮箱"
87
+ />
50
88
</el-form-item >
51
89
</el-col >
52
90
<el-col :span =" 12" >
@@ -58,55 +96,81 @@ v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" :key="dict.value"
58
96
<el-row >
59
97
<el-col :span =" 12" >
60
98
<el-form-item label =" 微信" prop =" wechat" >
61
- <el-input input-style =" width:190px;" v-model =" formData.wechat" placeholder =" 请输入微信" />
99
+ <el-input
100
+ input-style =" width:190px;"
101
+ v-model =" formData.wechat"
102
+ placeholder =" 请输入微信"
103
+ />
62
104
</el-form-item >
63
105
</el-col >
64
- <el-col :span =" 12" > <el-form-item label =" 下次联系时间" prop =" nextTime" >
65
- <el-date-picker v-model =" formData.nextTime" type =" date" value-format =" x" placeholder =" 选择下次联系时间" />
106
+ <el-col :span =" 12" >
107
+ <el-form-item label =" 下次联系时间" prop =" nextTime" >
108
+ <el-date-picker
109
+ v-model =" formData.nextTime"
110
+ type =" date"
111
+ value-format =" x"
112
+ placeholder =" 选择下次联系时间"
113
+ />
66
114
</el-form-item >
67
115
</el-col >
68
116
</el-row >
69
117
<el-row >
70
118
<el-col :span =" 12" >
71
119
<el-form-item label =" 所在地" prop =" areaId" >
72
120
<el-tree-select
73
- v-model =" formData.areaId" :data =" areaList" :props =" defaultProps"
74
- :render-after-expand =" true" />
121
+ v-model =" formData.areaId"
122
+ :data =" areaList"
123
+ :props =" defaultProps"
124
+ :render-after-expand =" true"
125
+ />
75
126
</el-form-item >
76
127
</el-col >
77
128
<el-col :span =" 12" >
78
129
<el-form-item label =" 地址" prop =" address" >
79
- <el-input input-style =" width:190px;" v-model =" formData.address" placeholder =" 请输入地址" />
130
+ <el-input
131
+ input-style =" width:190px;"
132
+ v-model =" formData.address"
133
+ placeholder =" 请输入地址"
134
+ />
80
135
</el-form-item >
81
- </el-col >
82
- </ el-row ><el-row >
136
+ </el-col > </ el-row
137
+ ><el-row >
83
138
<el-col :span =" 12" >
84
139
<el-form-item label =" 直属上级" prop =" parentId" >
85
140
<el-select v-model =" formData.parentId" placeholder =" 请选择" >
86
141
<el-option
87
- v-for =" item in allContactList" :key =" item.id" :label =" item.name" :value =" item.id"
88
- :disabled =" item.id == formData.id" />
142
+ v-for =" item in allContactList"
143
+ :key =" item.id"
144
+ :label =" item.name"
145
+ :value =" item.id"
146
+ :disabled =" item.id == formData.id"
147
+ />
89
148
</el-select >
90
149
</el-form-item >
91
150
</el-col >
92
- <el-col :span =" 12" > <el-form-item label =" 职位" prop =" post" >
151
+ <el-col :span =" 12" >
152
+ <el-form-item label =" 职位" prop =" post" >
93
153
<el-input input-style =" width:190px;" v-model =" formData.post" placeholder =" 请输入职位" />
94
154
</el-form-item >
95
- </el-col >
96
- </el-row ><el-row >
97
- <el-col :span =" 12" ><el-form-item label =" 是否关键决策人" prop =" master" style =" width : 400px " >
155
+ </el-col > </el-row
156
+ ><el-row >
157
+ <el-col :span =" 12"
158
+ ><el-form-item label =" 是否关键决策人" prop =" master" style =" width : 400px " >
98
159
<el-radio-group v-model =" formData.master" >
99
160
<el-radio
100
- v-for =" dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)" :key =" dict.value"
101
- :label =" dict.value" >
161
+ v-for =" dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
162
+ :key =" dict.value"
163
+ :label =" dict.value"
164
+ >
102
165
{{ dict.label }}
103
166
</el-radio >
104
167
</el-radio-group >
105
168
</el-form-item >
106
169
</el-col >
107
170
</el-row >
108
171
<el-row >
109
- <el-col :span =" 24" ><el-form-item label =" 备注" prop =" remark" >
172
+ <el-col :span =" 24"
173
+ ><el-form-item label =" 备注" prop =" remark" >
110
174
<el-input v-model =" formData.remark" placeholder =" 请输入备注" />
111
175
</el-form-item >
112
176
</el-col >
@@ -123,7 +187,6 @@ import * as ContactApi from '@/api/crm/contact'
123
187
import { DICT_TYPE , getIntDictOptions , getBoolDictOptions } from ' @/utils/dict'
124
188
import * as UserApi from ' @/api/system/user'
125
189
import * as CustomerApi from ' @/api/crm/customer'
126
- import { ElTable } from ' element-plus'
127
190
import * as AreaApi from ' @/api/system/area'
128
191
import { defaultProps } from ' @/utils/tree'
129
192
@@ -163,6 +226,7 @@ const formRules = reactive({
163
226
const formRef = ref () // 表单 Ref
164
227
const ownerUserList = ref <any []>([])
165
228
const userList = ref <UserApi .UserVO []>([]) // 用户列表
229
+ // TODO 芋艿:统一的客户选择面板
166
230
const customerList = ref <CustomerApi .CustomerVO []>([]) // 客户列表
167
231
const allContactList = ref ([]) // 所有联系人列表
168
232
/** 打开弹窗 */
0 commit comments