|
@@ -11,6 +11,7 @@
|
|
|
/>
|
|
/>
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
+
|
|
|
<el-form-item label="企微客户ID" prop="id">
|
|
<el-form-item label="企微客户ID" prop="id">
|
|
|
<el-input
|
|
<el-input
|
|
|
v-model="queryParams.id"
|
|
v-model="queryParams.id"
|
|
@@ -517,8 +518,25 @@
|
|
|
</el-tag>
|
|
</el-tag>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
+ <el-table-column label="重粉记录" align="center" width="100px" fixed="right">
|
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="mini"
|
|
|
|
|
+ type="text"
|
|
|
|
|
+ @click="showRepeatRecord(scope.row)"
|
|
|
|
|
+ >重粉记录</el-button>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </el-table-column>
|
|
|
<el-table-column label="修改" align="center" class-name="small-padding fixed-width" width="120px" fixed="right">
|
|
<el-table-column label="修改" align="center" class-name="small-padding fixed-width" width="120px" fixed="right">
|
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="mini"
|
|
|
|
|
+ type="text"
|
|
|
|
|
+ icon="el-icon-shopping-bag-2"
|
|
|
|
|
+ :disabled="!scope.row.fsUserId"
|
|
|
|
|
+ @click="handleCreateOrder(scope.row)"
|
|
|
|
|
+
|
|
|
|
|
+ >制单</el-button>
|
|
|
<el-button
|
|
<el-button
|
|
|
v-show="scope.row.status==0||scope.row.status==2"
|
|
v-show="scope.row.status==0||scope.row.status==2"
|
|
|
size="mini"
|
|
size="mini"
|
|
@@ -1021,6 +1039,52 @@
|
|
|
</div>
|
|
</div>
|
|
|
</el-drawer>
|
|
</el-drawer>
|
|
|
|
|
|
|
|
|
|
+ <!-- 重粉记录 -->
|
|
|
|
|
+ <el-drawer title="重粉记录" :visible.sync="repeatRecord.open" size="75%" append-to-body>
|
|
|
|
|
+ <div style="padding: 10px">
|
|
|
|
|
+ <el-form :model="repeatRecord.queryParams" ref="repeatRecordQueryForm" :inline="true" label-width="110px">
|
|
|
|
|
+ <el-form-item label="销售企微ID" prop="qwUserId">
|
|
|
|
|
+ <el-input
|
|
|
|
|
+ v-model="repeatRecord.queryParams.qwUserId"
|
|
|
|
|
+ placeholder="请输入销售企微ID"
|
|
|
|
|
+ clearable
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ @keyup.enter.native="handleQueryRepeatRecord"
|
|
|
|
|
+ />
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="销售企微昵称" prop="qwUserName">
|
|
|
|
|
+ <el-input
|
|
|
|
|
+ v-model="repeatRecord.queryParams.qwUserName"
|
|
|
|
|
+ placeholder="请输入销售企微昵称"
|
|
|
|
|
+ clearable
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ @keyup.enter.native="handleQueryRepeatRecord"
|
|
|
|
|
+ />
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item>
|
|
|
|
|
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQueryRepeatRecord">搜索</el-button>
|
|
|
|
|
+ <el-button icon="el-icon-refresh" size="mini" @click="resetRepeatRecordQuery">重置</el-button>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ </el-form>
|
|
|
|
|
+ <el-table v-loading="repeatRecord.loading" :data="repeatRecord.list" border>
|
|
|
|
|
+ <el-table-column label="企微客户ID" align="center" prop="externalUserId" min-width="140" />
|
|
|
|
|
+ <el-table-column label="企微客户昵称" align="center" prop="externalUserName" min-width="120" />
|
|
|
|
|
+ <el-table-column label="销售企微ID" align="center" prop="qwUserId" min-width="120" />
|
|
|
|
|
+ <el-table-column label="销售企微昵称" align="center" prop="qwUserName" min-width="120" />
|
|
|
|
|
+ <el-table-column label="企微部门" align="center" prop="deptName" min-width="120" />
|
|
|
|
|
+ <el-table-column label="添加时间" align="center" prop="createTime" width="170" />
|
|
|
|
|
+ <el-table-column label="注册时间" align="center" prop="registerTime" width="170" />
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+ <pagination
|
|
|
|
|
+ v-show="repeatRecord.total > 0"
|
|
|
|
|
+ :total="repeatRecord.total"
|
|
|
|
|
+ :page.sync="repeatRecord.queryParams.pageNum"
|
|
|
|
|
+ :limit.sync="repeatRecord.queryParams.pageSize"
|
|
|
|
|
+ @pagination="repeatRecordList"
|
|
|
|
|
+ />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </el-drawer>
|
|
|
|
|
+
|
|
|
<el-drawer
|
|
<el-drawer
|
|
|
:with-header="false"
|
|
:with-header="false"
|
|
|
size="75%"
|
|
size="75%"
|
|
@@ -1063,6 +1127,10 @@
|
|
|
<el-dialog :title="collection.title" :visible.sync="collection.open" width="1100px" append-to-body>
|
|
<el-dialog :title="collection.title" :visible.sync="collection.open" width="1100px" append-to-body>
|
|
|
<collection ref="collection" />
|
|
<collection ref="collection" />
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 制单页面组件 -->
|
|
|
|
|
+ <create-oder ref="createOder" />
|
|
|
|
|
+
|
|
|
<el-dialog title="修改客户状态" :visible.sync="statusDialog.open" width="500px" append-to-body>
|
|
<el-dialog title="修改客户状态" :visible.sync="statusDialog.open" width="500px" append-to-body>
|
|
|
<el-form ref="statusForm" :model="statusForm" :rules="statusRules" label-width="100px">
|
|
<el-form ref="statusForm" :model="statusForm" :rules="statusRules" label-width="100px">
|
|
|
<el-form-item label="状态" prop="status">
|
|
<el-form-item label="状态" prop="status">
|
|
@@ -1102,7 +1170,7 @@ import {
|
|
|
setCustomerCourseSop,
|
|
setCustomerCourseSop,
|
|
|
getCustomerCourseSop,
|
|
getCustomerCourseSop,
|
|
|
setCustomerCourseSopList,
|
|
setCustomerCourseSopList,
|
|
|
- syncMyExternalContact, unBindUserId, updateExternalContactCall,exportMyExternalContact,updateExternalContactStatus,getWatchLogList
|
|
|
|
|
|
|
+ syncMyExternalContact, unBindUserId, updateExternalContactCall,exportMyExternalContact,updateExternalContactStatus,getWatchLogList,getRepeatRecordList
|
|
|
} from '@/api/qw/externalContact'
|
|
} from '@/api/qw/externalContact'
|
|
|
import info from "@/views/qw/externalContact/info.vue";
|
|
import info from "@/views/qw/externalContact/info.vue";
|
|
|
import {getMyQwUserList, getMyQwCompanyList, handleInputAuthAppKey, updateUser} from "@/api/qw/user";
|
|
import {getMyQwUserList, getMyQwCompanyList, handleInputAuthAppKey, updateUser} from "@/api/qw/user";
|
|
@@ -1121,9 +1189,10 @@ import Collection from './collection.vue';
|
|
|
import {courseList, videoList} from "@/api/course/courseRedPacketLog";
|
|
import {courseList, videoList} from "@/api/course/courseRedPacketLog";
|
|
|
import userDetails from '@/views/store/components/userDetails.vue';
|
|
import userDetails from '@/views/store/components/userDetails.vue';
|
|
|
import customerDetail from './customerDetail.vue';
|
|
import customerDetail from './customerDetail.vue';
|
|
|
|
|
+import createOder from '@/views/components/order/createOder.vue';
|
|
|
export default {
|
|
export default {
|
|
|
name: "ExternalContact",
|
|
name: "ExternalContact",
|
|
|
- components:{PaginationMore, mycustomer,customerDetails,SopDialog,selectUser,info,Collection,userDetails,customerDetail},
|
|
|
|
|
|
|
+ components:{PaginationMore, mycustomer,customerDetails,SopDialog,selectUser,info,Collection,userDetails,customerDetail,createOder},
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
aiAnalyze: {
|
|
aiAnalyze: {
|
|
@@ -1157,6 +1226,20 @@ export default {
|
|
|
videoId: null,
|
|
videoId: null,
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
|
|
+ repeatRecord: {
|
|
|
|
|
+ open: false,
|
|
|
|
|
+ loading: false,
|
|
|
|
|
+ list: [],
|
|
|
|
|
+ total: 0,
|
|
|
|
|
+ queryParams: {
|
|
|
|
|
+ pageNum: 1,
|
|
|
|
|
+ pageSize: 10,
|
|
|
|
|
+ corpId: null,
|
|
|
|
|
+ externalUserId: null,
|
|
|
|
|
+ qwUserId: null,
|
|
|
|
|
+ qwUserName: null
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
statusDialog: {
|
|
statusDialog: {
|
|
|
open: false,
|
|
open: false,
|
|
|
title: "修改客户状态"
|
|
title: "修改客户状态"
|
|
@@ -1459,6 +1542,39 @@ export default {
|
|
|
this.log.total = e.total;
|
|
this.log.total = e.total;
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
|
|
+ handleCreateOrder(row) {
|
|
|
|
|
+ this.$refs.createOder.show(row);
|
|
|
|
|
+ },
|
|
|
|
|
+ /** 重粉记录 */
|
|
|
|
|
+ showRepeatRecord(row) {
|
|
|
|
|
+ this.repeatRecord.queryParams.corpId = row.corpId;
|
|
|
|
|
+ this.repeatRecord.queryParams.externalUserId = row.externalUserId;
|
|
|
|
|
+ this.repeatRecord.queryParams.qwUserId = null;
|
|
|
|
|
+ this.repeatRecord.queryParams.qwUserName = null;
|
|
|
|
|
+ this.repeatRecord.queryParams.pageNum = 1;
|
|
|
|
|
+ this.repeatRecord.queryParams.pageSize = 10;
|
|
|
|
|
+ this.repeatRecord.open = true;
|
|
|
|
|
+ this.repeatRecordList();
|
|
|
|
|
+ },
|
|
|
|
|
+ handleQueryRepeatRecord() {
|
|
|
|
|
+ this.repeatRecord.queryParams.pageNum = 1;
|
|
|
|
|
+ this.repeatRecordList();
|
|
|
|
|
+ },
|
|
|
|
|
+ resetRepeatRecordQuery() {
|
|
|
|
|
+ this.repeatRecord.queryParams.qwUserId = null;
|
|
|
|
|
+ this.repeatRecord.queryParams.qwUserName = null;
|
|
|
|
|
+ this.repeatRecord.queryParams.pageNum = 1;
|
|
|
|
|
+ this.repeatRecordList();
|
|
|
|
|
+ },
|
|
|
|
|
+ repeatRecordList() {
|
|
|
|
|
+ this.repeatRecord.loading = true;
|
|
|
|
|
+ getRepeatRecordList(this.repeatRecord.queryParams).then(res => {
|
|
|
|
|
+ this.repeatRecord.list = res.rows || [];
|
|
|
|
|
+ this.repeatRecord.total = res.total || 0;
|
|
|
|
|
+ }).finally(() => {
|
|
|
|
|
+ this.repeatRecord.loading = false;
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
courseChange(row) {
|
|
courseChange(row) {
|
|
|
this.log.queryParams.videoId = null;
|
|
this.log.queryParams.videoId = null;
|
|
|
if (row === '') {
|
|
if (row === '') {
|