@@ -1,91 +1,54 @@
< template >
< ContentWrap >
<!-- 搜索工作栏 -- >
<!-- TODO zyna : 筛选项 , 按照需求简化下 -- >
< el-form
class = "-mb-15px"
: model = "queryParams"
ref = "queryFormRef"
:inline = "true"
label -width = " 68px "
>
< el-form-item label = "客户编号" prop = "customerId" >
< el-input
v-model = "queryParams.customerId"
placeholder = "请输入客户编号"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
< el-form class = "-mb-15px" :model = "queryParams" ref = "queryFormRef" :inline = "true" label -width = " 68px " >
< el-form-item label = "客户" prop = "customerId" >
< el-select
v- model= "queryParams.customerId" placeholder="请选择客户" value-key="id" lable-key="name "
@keyup.enter ="handleQuery" clearable >
< el-option v-for = "item in customerList" :key="item.id" :label="item.name" :value="item.id" / >
< / el-select >
< / el-form-item >
< el-form-item label = "姓名" prop = "name" >
< el-input
v-model = "queryParams.name"
placeholder = "请输入姓名"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
< el-input v-model = "queryParams.name" placeholder="请输入姓名" clearable @keyup.enter="handleQuery" class="!w-240px" / >
< / el-form-item >
< el-form-item label = "手机号" prop = "mobile" >
< el-input
v-model = "queryParams.mobile"
p laceholder = "请输入手机号"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
v-model = "queryParams.mobile" placeholder="请输入手机号" clearable @keyup.enter="handleQuery"
c lass = "!w-240px" / >
< / el-form-item >
< el-form-item label = "座机" prop = "telephone" >
< el-input
v-model = "queryParams.telephone"
placeholder = "请输入电话"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
v-model = "queryParams.telephone" placeholder="请输入电话" clearable @keyup.enter="handleQuery"
class = "!w-240px" / >
< / el-form-item >
< el-form-item label = "QQ" prop = "qq" >
< el-input
v-model = "queryParams.qq"
placeholder = "请输入QQ"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
< el-input v-model = "queryParams.qq" placeholder="请输入QQ" clearable @keyup.enter="handleQuery" class="!w-240px" / >
< / el-form-item >
< el-form-item label = "微信" prop = "wechat" >
< el-input
v-model = "queryParams.wechat"
placeholder = "请输入微信"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
v-model = "queryParams.wechat" placeholder="请输入微信" clearable @keyup.enter="handleQuery"
class = "!w-240px" / >
< / el-form-item >
< el-form-item label = "电子邮箱" prop = "email" >
< el-input
v-model = "queryParams.email"
p laceholder = "请输入电子邮箱"
clearable
@keyup.enter ="handleQuery"
class = "!w-240px"
/ >
v-model = "queryParams.email" placeholder="请输入电子邮箱" clearable @keyup.enter="handleQuery"
c lass = "!w-240px" / >
< / el-form-item >
< el-form-item >
< el-button @click ="handleQuery" > < Icon icon = "ep:search" class = "mr-5px" / > 搜索 < / el-button >
< el-button @click ="resetQuery" > < Icon icon = "ep:refres h" class = "mr-5px" / > 重置 < / el-button >
< el-button @click ="handleQuery" >
< Icon icon = "ep:searc h" class = "mr-5px" / > 搜索
< / el-button >
< el-button @click ="resetQuery" >
< Icon icon = "ep:refresh" class = "mr-5px" / > 重置
< / el-button >
< el-button type = "primary" @click ="openForm('create')" v-hasPermi = "['crm:contact:create']" >
< Icon icon = "ep:plus" class = "mr-5px" / > 新增
< / el-button >
< el-button
type = "success"
plain
@click ="handleExport"
:loading = "exportLoading"
v-hasPermi = "['crm:contact:export']"
>
type = "success" plain @click ="handleExport" :loading = "exportLoading"
v-hasPermi = "['crm:contact:export']" >
< Icon icon = "ep:download" class = "mr-5px" / > 导出
< / el-button >
< / el-form-item >
@@ -102,7 +65,7 @@
}} < / el -link >
< / template >
< / el-table-column >
< el-table-column label = "客户名称 " fixed = "left" align = "center" prop = "customerName" / >
< el-table-column label = "客户" fixed = "left" align = "center" prop = "customerName" / >
< el-table-column label = "性别" align = "center" prop = "sex" >
< template # default = "scope" >
< dict-tag :type = "DICT_TYPE.SYSTEM_USER_SEX" :value = "scope.row.sex" / >
@@ -114,48 +77,24 @@
< dict-tag :type = "DICT_TYPE.INFRA_BOOLEAN_STRING" :value = "scope.row.master" / >
< / template >
< / el-table-column >
< el-table-column label = "直属上级" align = "center" prop = "parentName" / >
< el-table-column label = "直属上级" align = "center" prop = "parentName" / >
< el-table-column label = "手机号" align = "center" prop = "mobile" / >
< el-table-column label = "座机" align = "center" prop = "telephone" / >
< el-table-column label = "QQ" align = "center" prop = "qq" / >
< el-table-column label = "微信" align = "center" prop = "wechat" / >
< el-table-column label = "邮箱" align = "center" prop = "email" / >
< el-table-column label = "地址" align = "center" prop = "address" / >
< el-table-column
label = "下次联系时间"
align = "center"
prop = "nextTime"
width = "180px"
:formatter = "dateFormatter"
/ >
< el-table-column label = "下次联系时间" align = "center" prop = "nextTime" width = "180px" :formatter = "dateFormatter" / >
< el-table-column label = "备注" align = "center" prop = "remark" / >
< el-table-column
label = "最后跟进时间"
align = "center"
prop = "lastTime"
:formatter = "dateFormatter"
width = "180px"
/ >
< el-table-column label = "最后跟进时间" align = "center" prop = "lastTime" :formatter = "dateFormatter" width = "180px" / >
< el-table-column label = "负责人" align = "center" prop = "ownerUserId" >
< template # default = "scope" >
{ { scope . row . ownerUserName } }
{ { scope . row . ownerUserName } }
< / template >
< / el-table-column >
<!-- < el-table-column label = "所属部门" align = "center" prop = "ownerUserId" / > -- >
< el-table-column
label = "更新 时间"
align = "center"
prop = "updateTime"
:formatter = "dateFormatter"
width = "180px"
/ >
< el-table-column
label = "创建时间"
align = "center"
prop = "createTime"
:formatter = "dateFormatter"
width = "180px"
/ >
< el-table-column label = "更新时间" align = "center" prop = "updateTime" :formatter = "dateFormatter" width = "180px" / >
< el-table-column label = "创建 时间" align = "center" prop = "createTime" :formatter = "dateFormatter" width = "180px" / >
<!-- < el-table-column
label = "创建人"
align = "center"
@@ -169,20 +108,10 @@
< / el-table-column > -- >
< el-table-column label = "操作" align = "center" fixed = "right" width = "200" >
< template # default = "scope" >
< el-button
plain
type = "primary"
@click ="openForm('update', scope.row.id)"
v-hasPermi = "['crm:contact:update']"
>
< el-button plain type = "primary" @click ="openForm('update', scope.row.id)" v-hasPermi = "['crm:contact:update']" >
编辑
< / el -button >
< el-button
plain
type = "danger"
@click ="handleDelete(scope.row.id)"
v-hasPermi = "['crm:contact:delete']"
>
< el-button plain type = "danger" @click ="handleDelete(scope.row.id)" v-hasPermi = "['crm:contact:delete']" >
删除
< / el -button >
< / template >
@@ -190,11 +119,8 @@
< / el-table >
<!-- 分页 -- >
< Pagination
:total = "total"
v -model :page = "queryParams.pageNo"
v -model :limit = "queryParams.pageSize"
@pagination ="getList"
/ >
:total = "total" v -model :page = "queryParams.pageNo" v -model :limit = "queryParams.pageSize"
@pagination ="getList" / >
< / ContentWrap >
<!-- 表单弹窗 : 添加 / 修改 -- >
@@ -207,7 +133,6 @@ import download from '@/utils/download'
import * as ContactApi from '@/api/crm/contact'
import ContactForm from './ContactForm.vue'
import { DICT _TYPE } from '@/utils/dict'
import * as UserApi from '@/api/system/user'
import * as CustomerApi from '@/api/crm/customer'
defineOptions ( { name : 'CrmContact' } )
@@ -218,6 +143,7 @@ const { t } = useI18n() // 国际化
const loading = ref ( true ) // 列表的加载中
const total = ref ( 0 ) // 列表的总页数
const list = ref ( [ ] ) // 列表的数据
const customerList = ref < CustomerApi .CustomerVO [ ] > ( [ ] ) // 客户列表
const queryParams = reactive ( {
pageNo : 1 ,
pageSize : 10 ,
@@ -282,7 +208,7 @@ const handleDelete = async (id: number) => {
message . success ( t ( 'common.delSuccess' ) )
// 刷新列表
await getList ( )
} catch { }
} catch { }
}
/** 导出按钮操作 */
@@ -310,5 +236,6 @@ const openDetail = (id: number) => {
/** 初始化 **/
onMounted ( async ( ) => {
await getList ( )
customerList . value = await CustomerApi . queryAllList ( )
} )
< / script >